[FFmpeg-trac] #7264(avfilter:new): libvmaf segmentation fault at ffmpeg 4.0
FFmpeg
trac at avcodec.org
Wed Jun 20 17:11:05 EEST 2018
#7264: libvmaf segmentation fault at ffmpeg 4.0
------------------------------------+------------------------------------
Reporter: gstoyanov | Owner:
Type: defect | Status: new
Priority: important | Component: avfilter
Version: git-master | Resolution:
Keywords: libvmaf | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
------------------------------------+------------------------------------
Comment (by gstoyanov):
I have edit my comment. On top of that ffmpeg libvmaf filter is calcuating
the PSNR, SSIM, MS-SSIM differently so the average scores when using
libvmaf are:
{{{
ADM2: 0.9828
Motion2: 0.0464
VIF Scale0: 0.6618
VIF Scale1: 0.9437
VIF Scale2: 0.9708
VIF Scale3: 0.9815
VMAF: 91.0795
PSNR: 40.7593dB
SSIM: 0.9919
MS-SSIM: 0.9919
}}}
while if I run ffmpeg:
{{{
ffmpeg -i distcut.nut -i refcut.nut -lavfi "ssim;[0:v][1:v]psnr" -f null –
ffmpeg version N-91330-ga990184 Copyright (c) 2000-2018 the FFmpeg
developers
built with gcc 5.4.0 (Ubuntu 5.4.0-6ubuntu1~16.04.9) 20160609
configuration: --pkg-config-flags=--static --extra-libs='-lpthread -lm'
--toolchain=hardened --enable-gpl --enable-nonfree --enable-version3
--disable-stripping --enable-avisynth --enable-libass --enable-
libfontconfig --enable-libfreetype --enable-libvmaf --enable-libfribidi
--enable-libgme --enable-libgsm --enable-librubberband --enable-libshine
--enable-libsnappy --enable-libssh --enable-libtwolame --enable-libwavpack
--enable-libzvbi --enable-openal --enable-sdl2 --enable-libdrm --enable-
frei0r --enable-ladspa --enable-libpulse --enable-libsoxr --enable-
libspeex --enable-avfilter --enable-postproc --enable-pthreads --enable-
libfdk-aac --enable-libmp3lame --enable-libopus --enable-libtheora
--enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265
--disable-ffplay --enable-libopenjpeg --enable-libsrt --enable-libwebp
--enable-libxvid --enable-libvidstab --enable-libopenh264 --enable-zlib
--enable-openssl
libavutil 56. 18.102 / 56. 18.102
libavcodec 58. 20.103 / 58. 20.103
libavformat 58. 17.100 / 58. 17.100
libavdevice 58. 4.101 / 58. 4.101
libavfilter 7. 25.100 / 7. 25.100
libswscale 5. 2.100 / 5. 2.100
libswresample 3. 2.100 / 3. 2.100
libpostproc 55. 2.100 / 55. 2.100
Input #0, nut, from 'distcut.nut':
Metadata:
encoder : Lavf58.12.100
Duration: 00:00:39.98, start: 0.000000, bitrate: 553250 kb/s
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1280x720,
SAR 1:1 DAR 16:9, 50 fps, 50 tbr, 51200 tbn, 51200 tbc
Metadata:
encoder : Lavc58.18.100 rawvideo
Input #1, nut, from 'refcut.nut':
Metadata:
encoder : Lavf58.12.100
Duration: 00:00:39.98, start: 0.000000, bitrate: 553250 kb/s
Stream #1:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1280x720,
SAR 1:1 DAR 16:9, 50 fps, 50 tbr, 51200 tbn, 51200 tbc
Metadata:
encoder : Lavc58.18.100 rawvideo
Stream mapping:
Stream #0:0 (rawvideo) -> ssim:main
Stream #0:0 (rawvideo) -> psnr:main
Stream #1:0 (rawvideo) -> ssim:reference
Stream #1:0 (rawvideo) -> psnr:reference
ssim -> Stream #0:0 (wrapped_avframe)
psnr -> Stream #0:1 (wrapped_avframe)
Press [q] to stop, [?] for help
Output #0, null, to '–':
Metadata:
encoder : Lavf58.17.100
Stream #0:0: Video: wrapped_avframe, yuv420p(progressive), 1280x720
[SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 50 fps, 50 tbn, 50 tbc
Metadata:
encoder : Lavc58.20.103 wrapped_avframe
Stream #0:1: Video: wrapped_avframe, yuv420p, 1280x720 [SAR 1:1 DAR
16:9], q=2-31, 200 kb/s, 50 fps, 50 tbn, 50 tbc
Metadata:
encoder : Lavc58.20.103 wrapped_avframe
frame= 2000 fps=764 q=-0.0 Lq=-0.0 size=N/A time=00:00:40.00 bitrate=N/A
speed=15.3x
video:2094kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
[Parsed_ssim_0 @ 0x55ffa5e9f8c0] SSIM Y:0.969197 (15.114140) U:0.973418
(15.754072) V:0.974990 (16.018821) All:0.970866 (15.356039)
[Parsed_psnr_1 @ 0x55ffa5e81700] PSNR y:38.856330 u:43.963544 v:43.765811
average:39.980715 min:27.518272 max:50.428166
}}}
So as you can see there is a difference between the average PSNR and SSIM
while using the built-in PSNR and SSIM filters and libvmaf.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/7264#comment:15>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list