Re: [FFmpeg-devel] [PATCH 10/16] lavfi/vf_libvmaf: convert to framesync2.

2017-08-30 Thread Ronald S. Bultje
Hi,

On Sun, Aug 20, 2017 at 5:52 AM, Nicolas George  wrote:

> Le tridi 23 thermidor, an CCXXV, Nicolas George a écrit :
> > After this commit, the code compiles, but on my setup it
> > segfaults before and after. It also prints the very worrying
> > warning:
> >
> > src/libavfilter/vf_libvmaf.c:161:66: warning: passing argument 4 of
> ‘compute_vmaf’ from incompatible pointer type [-Wincompatible-pointer-types]
> > /tmp/i/include/libvmaf.h:26:8: note: expected ‘int (*)(float *, float *,
> float *, int,  void *)’ but argument is of type ‘int (*)(float *, float *,
> float *, int,  double *, void *)’
> >
> > ==12116== Thread 6:
> > ==12116== Conditional jump or move depends on uninitialised value(s)
> > ==12116==at 0x526D432: cons_ (ocval.h:1188)
> > ==12116==by 0x526D432: GenericIT (ocval.h:1119)
> > ==12116==by 0x526D432: OC::TranslateForNumPyClassesToArray(OC::Val&)
> (pickleloader.h:92)
> > ==12116==by 0x5211F5D: loads (pickleloader.h:566)
> > ==12116==by 0x5211F5D: LoadValFromArray (chooseser.h:290)
> > ==12116==by 0x5211F5D: LoadValFromFile (chooseser.h:405)
> > ==12116==by 0x5211F5D: _read_and_assert_model(char const*, OC::Val&,
> OC::Val&, OC::Val&, OC::Val&, OC::Val&, OC::Val&) (vmaf.cpp:77)
> > ==12116==by 0x5212B0F: VmafRunner::run(Asset, int (*)(float*,
> float*, float*, int, void*), void*, bool, bool, bool, bool, bool)
> (vmaf.cpp:149)
> > ==12116==by 0x52165B6: RunVmaf(char const*, int, int, int
> (*)(float*, float*, float*, int, void*), void*, char const*, char const*,
> char const*, bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
> > ==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
> > ==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
> > ==12116==by 0x7967493: start_thread (pthread_create.c:333)
> > ==12116==by 0x7F69A8E: clone (clone.S:97)
> 
>
> Without confirmation it is fixed, I will push as is, with the dump in
> the commit message. Please test and report.


Sorry, that was my fault, Ashish had submitted a patch and I had not merged
it. Fixed now, all works correctly. Thanks for the framesync2 conversion.

Ronald
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


Re: [FFmpeg-devel] [PATCH 10/16] lavfi/vf_libvmaf: convert to framesync2.

2017-08-20 Thread Nicolas George
Le tridi 23 thermidor, an CCXXV, Nicolas George a écrit :
> After this commit, the code compiles, but on my setup it
> segfaults before and after. It also prints the very worrying
> warning:
> 
> src/libavfilter/vf_libvmaf.c:161:66: warning: passing argument 4 of 
> ‘compute_vmaf’ from incompatible pointer type [-Wincompatible-pointer-types]
> /tmp/i/include/libvmaf.h:26:8: note: expected ‘int (*)(float *, float *, 
> float *, int,  void *)’ but argument is of type ‘int (*)(float *, float *, 
> float *, int,  double *, void *)’
> 
> ==12116== Thread 6:
> ==12116== Conditional jump or move depends on uninitialised value(s)
> ==12116==at 0x526D432: cons_ (ocval.h:1188)
> ==12116==by 0x526D432: GenericIT (ocval.h:1119)
> ==12116==by 0x526D432: OC::TranslateForNumPyClassesToArray(OC::Val&) 
> (pickleloader.h:92)
> ==12116==by 0x5211F5D: loads (pickleloader.h:566)
> ==12116==by 0x5211F5D: LoadValFromArray (chooseser.h:290)
> ==12116==by 0x5211F5D: LoadValFromFile (chooseser.h:405)
> ==12116==by 0x5211F5D: _read_and_assert_model(char const*, OC::Val&, 
> OC::Val&, OC::Val&, OC::Val&, OC::Val&, OC::Val&) (vmaf.cpp:77)
> ==12116==by 0x5212B0F: VmafRunner::run(Asset, int (*)(float*, float*, 
> float*, int, void*), void*, bool, bool, bool, bool, bool) (vmaf.cpp:149)
> ==12116==by 0x52165B6: RunVmaf(char const*, int, int, int (*)(float*, 
> float*, float*, int, void*), void*, char const*, char const*, char const*, 
> bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
> ==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
> ==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
> ==12116==by 0x7967493: start_thread (pthread_create.c:333)
> ==12116==by 0x7F69A8E: clone (clone.S:97)


Without confirmation it is fixed, I will push as is, with the dump in
the commit message. Please test and report.

Regards,

-- 
  Nicolas George


signature.asc
Description: Digital signature
___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 10/16] lavfi/vf_libvmaf: convert to framesync2.

2017-08-10 Thread Nicolas George
After this commit, the code compiles, but on my setup it
segfaults before and after. It also prints the very worrying
warning:

src/libavfilter/vf_libvmaf.c:161:66: warning: passing argument 4 of 
‘compute_vmaf’ from incompatible pointer type [-Wincompatible-pointer-types]
/tmp/i/include/libvmaf.h:26:8: note: expected ‘int (*)(float *, float *, float 
*, int,  void *)’ but argument is of type ‘int (*)(float *, float *, float *, 
int,  double *, void *)’

==12116== Thread 6:
==12116== Conditional jump or move depends on uninitialised value(s)
==12116==at 0x526D432: cons_ (ocval.h:1188)
==12116==by 0x526D432: GenericIT (ocval.h:1119)
==12116==by 0x526D432: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:92)
==12116==by 0x5211F5D: loads (pickleloader.h:566)
==12116==by 0x5211F5D: LoadValFromArray (chooseser.h:290)
==12116==by 0x5211F5D: LoadValFromFile (chooseser.h:405)
==12116==by 0x5211F5D: _read_and_assert_model(char const*, OC::Val&, 
OC::Val&, OC::Val&, OC::Val&, OC::Val&, OC::Val&) (vmaf.cpp:77)
==12116==by 0x5212B0F: VmafRunner::run(Asset, int (*)(float*, float*, 
float*, int, void*), void*, bool, bool, bool, bool, bool) (vmaf.cpp:149)
==12116==by 0x52165B6: RunVmaf(char const*, int, int, int (*)(float*, 
float*, float*, int, void*), void*, char const*, char const*, char const*, 
bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
==12116==by 0x7967493: start_thread (pthread_create.c:333)
==12116==by 0x7F69A8E: clone (clone.S:97)
==12116==
==12116== Conditional jump or move depends on uninitialised value(s)
==12116==at 0x526D432: cons_ (ocval.h:1188)
==12116==by 0x526D432: GenericIT (ocval.h:1119)
==12116==by 0x526D432: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:92)
==12116==by 0x526D50D: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:94)
==12116==by 0x5211F5D: loads (pickleloader.h:566)
==12116==by 0x5211F5D: LoadValFromArray (chooseser.h:290)
==12116==by 0x5211F5D: LoadValFromFile (chooseser.h:405)
==12116==by 0x5211F5D: _read_and_assert_model(char const*, OC::Val&, 
OC::Val&, OC::Val&, OC::Val&, OC::Val&, OC::Val&) (vmaf.cpp:77)
==12116==by 0x5212B0F: VmafRunner::run(Asset, int (*)(float*, float*, 
float*, int, void*), void*, bool, bool, bool, bool, bool) (vmaf.cpp:149)
==12116==by 0x52165B6: RunVmaf(char const*, int, int, int (*)(float*, 
float*, float*, int, void*), void*, char const*, char const*, char const*, 
bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
==12116==by 0x7967493: start_thread (pthread_create.c:333)
==12116==by 0x7F69A8E: clone (clone.S:97)
==12116==
==12116== Conditional jump or move depends on uninitialised value(s)
==12116==at 0x526D432: cons_ (ocval.h:1188)
==12116==by 0x526D432: GenericIT (ocval.h:1119)
==12116==by 0x526D432: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:92)
==12116==by 0x526D50D: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:94)
==12116==by 0x526D50D: OC::TranslateForNumPyClassesToArray(OC::Val&) 
(pickleloader.h:94)
==12116==by 0x5211F5D: loads (pickleloader.h:566)
==12116==by 0x5211F5D: LoadValFromArray (chooseser.h:290)
==12116==by 0x5211F5D: LoadValFromFile (chooseser.h:405)
==12116==by 0x5211F5D: _read_and_assert_model(char const*, OC::Val&, 
OC::Val&, OC::Val&, OC::Val&, OC::Val&, OC::Val&) (vmaf.cpp:77)
==12116==by 0x5212B0F: VmafRunner::run(Asset, int (*)(float*, float*, 
float*, int, void*), void*, bool, bool, bool, bool, bool) (vmaf.cpp:149)
==12116==by 0x52165B6: RunVmaf(char const*, int, int, int (*)(float*, 
float*, float*, int, void*), void*, char const*, char const*, char const*, 
bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
==12116==by 0x7967493: start_thread (pthread_create.c:333)
==12116==by 0x7F69A8E: clone (clone.S:97)
==12116==
==12116== Use of uninitialised value of size 8
==12116==at 0x518AC79: read_frame_8bit (vf_libvmaf.c:147)
==12116==by 0x52AB5E8: combo (combo.c:149)
==12116==by 0x5212E95: VmafRunner::run(Asset, int (*)(float*, float*, 
float*, int, void*), void*, bool, bool, bool, bool, bool) (vmaf.cpp:278)
==12116==by 0x52165B6: RunVmaf(char const*, int, int, int (*)(float*, 
float*, float*, int, void*), void*, char const*, char const*, char const*, 
bool, bool, bool, bool, bool, char const*) (vmaf.cpp:645)
==12116==by 0x518AFFF: compute_vmaf_score (vf_libvmaf.c:161)
==12116==by 0x518AFFF: call_vmaf (vf_libvmaf.c:170)
==12116==by 0x7967493: start_thread (pthread_create.c:333)
==12116==by