On Sun, Feb 04, 2018 at 07:04:39PM +0000, Mironov, Mikhail wrote:
> I have a developer who will cover AMF integration on regular basis (together 
> with me). He starts tomorrow and will be up to date soon. 
> I will ask him to cleanup the things you mentioned if you will not submit the 
> changes first.
> He is on BCC for now.

It seems a bit more cleanup is needed on your side as well:

/home/libav/libs/include/AMF/core/Platform.h:431:16: error: implicit 
declaration of function ‘memcmp’ [-Werror=implicit-function-declaration]

Indeed that header is missing a string.h #include and things break on one of my 
systems.

Also, there are a bunch of warnings:

~/src/build/amf $ make libavcodec/amfenc.o
CC      libavcodec/amfenc.o
/home/diego/src/libav.vanilla/libavcodec/amfenc.c: In function 
‘amf_init_context’:
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:159:51: warning: passing 
argument 2 of ‘ctx->trace->pVtbl->RegisterWriter’ from incompatible pointer 
type [-Wincompatible-pointer-types]
     ctx->trace->pVtbl->RegisterWriter(ctx->trace, ctx->writer_id, 
(AMFTraceWriter *)&ctx->tracer, 1);
                                                   ^~~
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:159:51: note: expected ‘const 
wchar_t * {aka const int *}’ but argument is of type ‘char *’
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:160:51: warning: passing 
argument 2 of ‘ctx->trace->pVtbl->SetWriterLevel’ from incompatible pointer 
type [-Wincompatible-pointer-types]
     ctx->trace->pVtbl->SetWriterLevel(ctx->trace, ctx->writer_id, 
AMF_TRACE_TRACE);
                                                   ^~~
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:160:51: note: expected ‘const 
wchar_t * {aka const int *}’ but argument is of type ‘char *’
/home/diego/src/libav.vanilla/libavcodec/amfenc.c: In function 
‘ff_amf_encode_close’:
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:265:57: warning: passing 
argument 2 of ‘ctx->trace->pVtbl->UnregisterWriter’ from incompatible pointer 
type [-Wincompatible-pointer-types]
         ctx->trace->pVtbl->UnregisterWriter(ctx->trace, ctx->writer_id);
                                                         ^~~
/home/diego/src/libav.vanilla/libavcodec/amfenc.c:265:57: note: expected ‘const 
wchar_t * {aka const int *}’ but argument is of type ‘char *’

One could just cast them away, but probably it's better to ajust the types.


Also, I noticed two issues in your headers (at a glance):

1) You recreate parts of inttypes.h, i.e.

   #define AMFPRId64    "lld"

   and similar - why, oh, why? What ass-backwards systems are you trying to
   support there?

2) You are invading system namespace:

   #ifndef __AMFPlatform_h__

   Identifiers starting with __ (or _ and an uppercase letter) are reserved
   for the system. Should be easy enough to replace these with

   #ifndef AMF_Platform_h

   and similar.

Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to