[FFmpeg-trac] #5048(undetermined:new): -map 0:v causes segfaults on 2pass libvpx-vp9 on multi video-track file
FFmpeg
trac at avcodec.org
Mon Nov 30 16:35:52 CET 2015
#5048: -map 0:v causes segfaults on 2pass libvpx-vp9 on multi video-track file
-------------------------------------+-------------------------------------
Reporter: kagami | Type: defect
Status: new | Priority: normal
Component: | Version: git-
undetermined | master
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
If file has multiple video tracks, -map 0:v causes segfault in case of
2pass libvpx-vp9 encode (probably other 2pass encoders will segfault too):
{{{
$ ffmpeg -i test.mp4 -map 0:v -c:v libvpx-vp9 -pass 1 -f null -
ffmpeg version N-76952-g6b978da Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.9.3 (Gentoo 4.9.3 p1.4, pie-0.6.4)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64
--mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc
--cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --optflags=' '
--disable-static --enable-avfilter --enable-avresample --disable-stripping
--enable-nonfree --enable-version3 --disable-indev=v4l2 --disable-
outdev=v4l2 --disable-indev=oss --disable-indev=jack --disable-outdev=oss
--enable-bzlib --enable-runtime-cpudetect --disable-debug --disable-doc
--disable-gnutls --enable-gpl --enable-hardcoded-tables --enable-iconv
--disable-lzma --enable-network --enable-openssl --enable-postproc
--disable-libsmbclient --enable-ffplay --disable-vaapi --enable-vdpau
--enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes
--enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394
--disable-libcaca --disable-openal --disable-opengl --disable-libv4l2
--disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb
--disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-
libcelt --disable-libgme --disable-libgsm --disable-libmodplug --enable-
libopus --disable-libquvi --disable-librtmp --disable-libssh --disable-
libschroedinger --disable-libspeex --enable-libvorbis --enable-libvpx
--disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-
libflite --disable-frei0r --disable-libfribidi --enable-fontconfig
--disable-ladspa --enable-libass --enable-libfreetype --disable-
librubberband --disable-libzimg --disable-libsoxr --enable-pthreads
--enable-libvo-aacenc --disable-libvo-amrwbenc --enable-libmp3lame
--disable-libaacplus --disable-libfaac --disable-libkvazaar --disable-
nvenc --disable-libopenh264 --disable-libsnappy --disable-libtheora
--disable-libtwolame --disable-libwavpack --disable-libwebp --enable-
libx264 --enable-libx265 --disable-libxvid --disable-amd3dnow --disable-
amd3dnowext --disable-aesni --disable-avx2 --disable-fma3 --disable-fma4
--disable-xop --cpu=corei7-avx
libavutil 55. 9.100 / 55. 9.100
libavcodec 57. 16.101 / 57. 16.101
libavformat 57. 19.100 / 57. 19.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 17.100 / 6. 17.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
[mjpeg @ 0x17967e0] Changing bps to 8
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
title : Keep Drawing
artist : Shelter Studio
date : 2011-11-27T00:00:00+04:00
encoder : Lavf57.19.100
comment : Anime: Original animation
: Music: Park Taejoon - Keep Drawing
: More at AMVNews.ru
genre : Original Animation, Instrumental, Sentimental
description : В ожидании новых AMV посмотрим немного оригинальной
анимации. Короткометражка Keep Drawing от независимой корейской
анимационной студии Shelter Studio
network : http://amvnews.ru/index.php?go=Files&in=view&id=7237
media_type : 6
Duration: 00:00:06.00, start: 0.000000, bitrate: 2419 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
1280x720 [SAR 1:1 DAR 16:9], 2355 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc
(default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Video: mjpeg (mp4v / 0x7634706D), yuvj420p(pc,
bt470bg/unknown/unknown), 500x281 [SAR 1:1 DAR 500:281], 90k tbn, 90k tbc
Metadata:
handler_name : VideoHandler
[swscaler @ 0x17adc60] deprecated pixel format used, make sure you did set
range correctly
[libvpx-vp9 @ 0x1794900] v1.5.0-154-g610b413
[libvpx-vp9 @ 0x1833760] v1.5.0-154-g610b413
Output #0, null, to 'pipe:':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
title : Keep Drawing
artist : Shelter Studio
date : 2011-11-27T00:00:00+04:00
media_type : 6
comment : Anime: Original animation
: Music: Park Taejoon - Keep Drawing
: More at AMVNews.ru
genre : Original Animation, Instrumental, Sentimental
description : В ожидании новых AMV посмотрим немного оригинальной
анимации. Короткометражка Keep Drawing от независимой корейской
анимационной студии Shelter Studio
network : http://amvnews.ru/index.php?go=Files&in=view&id=7237
encoder : Lavf57.19.100
Stream #0:0(und): Video: vp9 (libvpx-vp9), yuv420p, 1280x720 [SAR 1:1
DAR 16:9], q=-1--1, pass 1, 200 kb/s, 24 fps, 24 tbn, 24 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc57.16.101 libvpx-vp9
Stream #0:1(und): Video: vp9 (libvpx-vp9), yuv420p, 500x281 [SAR 1:1
DAR 500:281], q=-1--1, pass 1, 200 kb/s, 90k tbn, 90k tbc
Metadata:
handler_name : VideoHandler
encoder : Lavc57.16.101 libvpx-vp9
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> vp9 (libvpx-vp9))
Stream #0:1 -> #0:1 (mjpeg (native) -> vp9 (libvpx-vp9))
Press [q] to stop, [?] for help
frame= 144 fps= 42 q=0.0 Lq=0.0 size=N/A time=00:00:00.00 bitrate=N/A
video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: unknown
Output file is empty, nothing was encoded
$ gdb --args ffmpeg -i test.mp4 -map 0:v -c:v libvpx-vp9 -pass 2 -f null -
GNU gdb (Gentoo 7.9.1 vanilla) 7.9.1
Copyright (C) 2015 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://bugs.gentoo.org/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ffmpeg...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/ffmpeg -i test.mp4 -map 0:v -c:v libvpx-vp9
-pass 2 -f null -
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
ffmpeg version N-76952-g6b978da Copyright (c) 2000-2015 the FFmpeg
developers
built with gcc 4.9.3 (Gentoo 4.9.3 p1.4, pie-0.6.4)
configuration: --prefix=/usr --libdir=/usr/lib64 --shlibdir=/usr/lib64
--mandir=/usr/share/man --enable-shared --cc=x86_64-pc-linux-gnu-gcc
--cxx=x86_64-pc-linux-gnu-g++ --ar=x86_64-pc-linux-gnu-ar --optflags=' '
--disable-static --enable-avfilter --enable-avresample --disable-stripping
--enable-nonfree --enable-version3 --disable-indev=v4l2 --disable-
outdev=v4l2 --disable-indev=oss --disable-indev=jack --disable-outdev=oss
--enable-bzlib --enable-runtime-cpudetect --disable-debug --disable-doc
--disable-gnutls --enable-gpl --enable-hardcoded-tables --enable-iconv
--disable-lzma --enable-network --enable-openssl --enable-postproc
--disable-libsmbclient --enable-ffplay --disable-vaapi --enable-vdpau
--enable-xlib --enable-libxcb --enable-libxcb-shm --enable-libxcb-xfixes
--enable-zlib --disable-libcdio --disable-libiec61883 --disable-libdc1394
--disable-libcaca --disable-openal --disable-opengl --disable-libv4l2
--disable-libpulse --disable-libopencore-amrwb --disable-libopencore-amrnb
--disable-libfdk-aac --disable-libopenjpeg --disable-libbluray --disable-
libcelt --disable-libgme --disable-libgsm --disable-libmodplug --enable-
libopus --disable-libquvi --disable-librtmp --disable-libssh --disable-
libschroedinger --disable-libspeex --enable-libvorbis --enable-libvpx
--disable-libzvbi --disable-libbs2b --disable-chromaprint --disable-
libflite --disable-frei0r --disable-libfribidi --enable-fontconfig
--disable-ladspa --enable-libass --enable-libfreetype --disable-
librubberband --disable-libzimg --disable-libsoxr --enable-pthreads
--enable-libvo-aacenc --disable-libvo-amrwbenc --enable-libmp3lame
--disable-libaacplus --disable-libfaac --disable-libkvazaar --disable-
nvenc --disable-libopenh264 --disable-libsnappy --disable-libtheora
--disable-libtwolame --disable-libwavpack --disable-libwebp --enable-
libx264 --enable-libx265 --disable-libxvid --disable-amd3dnow --disable-
amd3dnowext --disable-aesni --disable-avx2 --disable-fma3 --disable-fma4
--disable-xop --cpu=corei7-avx
libavutil 55. 9.100 / 55. 9.100
libavcodec 57. 16.101 / 57. 16.101
libavformat 57. 19.100 / 57. 19.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 17.100 / 6. 17.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
[mjpeg @ 0x6587e0] Changing bps to 8
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'test.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
title : Keep Drawing
artist : Shelter Studio
date : 2011-11-27T00:00:00+04:00
encoder : Lavf57.19.100
comment : Anime: Original animation
: Music: Park Taejoon - Keep Drawing
: More at AMVNews.ru
genre : Original Animation, Instrumental, Sentimental
description : В ожидании новых AMV посмотрим немного оригинальной
анимации. Короткометражка Keep Drawing от независимой корейской
анимационной студии Shelter Studio
network : http://amvnews.ru/index.php?go=Files&in=view&id=7237
media_type : 6
Duration: 00:00:06.00, start: 0.000000, bitrate: 2419 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
1280x720 [SAR 1:1 DAR 16:9], 2355 kb/s, 24 fps, 24 tbr, 24k tbn, 48 tbc
(default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Video: mjpeg (mp4v / 0x7634706D), yuvj420p(pc,
bt470bg/unknown/unknown), 500x281 [SAR 1:1 DAR 500:281], 90k tbn, 90k tbc
Metadata:
handler_name : VideoHandler
[swscaler @ 0x6d70a0] deprecated pixel format used, make sure you did set
range correctly
[libvpx-vp9 @ 0x656900] v1.5.0-154-g610b413
[libvpx-vp9 @ 0x6f52e0] v1.5.0-154-g610b413
Output #0, null, to 'pipe:':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
title : Keep Drawing
artist : Shelter Studio
date : 2011-11-27T00:00:00+04:00
media_type : 6
comment : Anime: Original animation
: Music: Park Taejoon - Keep Drawing
: More at AMVNews.ru
genre : Original Animation, Instrumental, Sentimental
description : В ожидании новых AMV посмотрим немного оригинальной
анимации. Короткометражка Keep Drawing от независимой корейской
анимационной студии Shelter Studio
network : http://amvnews.ru/index.php?go=Files&in=view&id=7237
encoder : Lavf57.19.100
Stream #0:0(und): Video: vp9 (libvpx-vp9), yuv420p, 1280x720 [SAR 1:1
DAR 16:9], q=-1--1, pass 2, 200 kb/s, 24 fps, 24 tbn, 24 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc57.16.101 libvpx-vp9
Stream #0:1(und): Video: vp9 (libvpx-vp9), yuv420p, 500x281 [SAR 1:1
DAR 500:281], q=-1--1, pass 2, 200 kb/s, 90k tbn, 90k tbc
Metadata:
handler_name : VideoHandler
encoder : Lavc57.16.101 libvpx-vp9
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> vp9 (libvpx-vp9))
Stream #0:1 -> #0:1 (mjpeg (native) -> vp9 (libvpx-vp9))
Press [q] to stop, [?] for help
[New Thread 0x7fffde746700 (LWP 5641)]/A time=00:00:05.08 bitrate=N/A
[New Thread 0x7fffdef47700 (LWP 5640)]
[New Thread 0x7fffdf748700 (LWP 5639)]
[New Thread 0x7fffdff49700 (LWP 5638)]
[New Thread 0x7fffe074a700 (LWP 5637)]
[New Thread 0x7fffe0f4b700 (LWP 5636)]
[New Thread 0x7fffe174c700 (LWP 5634)]
[New Thread 0x7fffe1f4d700 (LWP 5633)]
[New Thread 0x7fffe274e700 (LWP 5632)]
[New Thread 0x7fffe6194700 (LWP 5631)]
[New Thread 0x7fffe6995700 (LWP 5630)]
[New Thread 0x7fffe7196700 (LWP 5629)]
[New Thread 0x7fffe7997700 (LWP 5628)]
[New Thread 0x7fffe8198700 (LWP 5627)]
[New Thread 0x7fffe8999700 (LWP 5626)]
[New Thread 0x7fffe919a700 (LWP 5625)]
[New Thread 0x7fffe999b700 (LWP 5624)]
[New Thread 0x7fffea19c700 (LWP 5623)]
[New Thread 0x7fffea99d700 (LWP 5622)]
[New Thread 0x7fffeb19e700 (LWP 5621)]
[New Thread 0x7fffeb99f700 (LWP 5620)]
[New Thread 0x7fffec1a0700 (LWP 5619)]
[New Thread 0x7fffec9a1700 (LWP 5618)]
[New Thread 0x7fffed1a2700 (LWP 5617)]
[New Thread 0x7fffed9a3700 (LWP 5616)]
[New Thread 0x7fffee1a4700 (LWP 5615)]
[New Thread 0x7fffee9a5700 (LWP 5614)]
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff15ee0e7 in vp9_frame_type_qdelta () from /usr/lib64/libvpx.so.3
(gdb) bt full
#0 0x00007ffff15ee0e7 in vp9_frame_type_qdelta () from
/usr/lib64/libvpx.so.3
No symbol table info available.
#1 0x00007ffff15ee414 in vp9_rc_pick_q_and_bounds () from
/usr/lib64/libvpx.so.3
No symbol table info available.
#2 0x00007ffff15e5369 in set_size_dependent_vars () from
/usr/lib64/libvpx.so.3
No symbol table info available.
#3 0x00007ffff15e92cc in encode_frame_to_data_rate () from
/usr/lib64/libvpx.so.3
No symbol table info available.
#4 0x00007ffff15ea7be in vp9_get_compressed_data () from
/usr/lib64/libvpx.so.3
No symbol table info available.
#5 0x00007ffff15a931a in encoder_encode () from /usr/lib64/libvpx.so.3
No symbol table info available.
#6 0x00007ffff14f62c8 in vpx_codec_encode () from /usr/lib64/libvpx.so.3
No symbol table info available.
#7 0x00007ffff6529d92 in vp8_encode () from /usr/lib64/libavcodec.so.57
No symbol table info available.
#8 0x00007ffff6682f66 in avcodec_encode_video2 () from
/usr/lib64/libavcodec.so.57
No symbol table info available.
#9 0x000000000040867c in main ()
No symbol table info available.
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/5048>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list