Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#4945 closed defect (needs_more_info)

potential regression on drawtext timecode

Reported by: lorenzo.angeli Owned by:
Priority: important Component: undetermined
Version: git-master Keywords: crash
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
How to reproduce:

efesto@hdd-XPS-15-9530 ffmpeg-git-20151017-64bit-static $ ./ffmpeg -thread_queue_size 512 -hwaccel auto -threads 0 -y -r 25.0 -start_number 1 -i "/usr/tmp/tmpyCJaTB.%4d.png" -c:v libx264 -crf 18 -preset slow -strict -2 -movflags faststart -pix_fmt yuv420p -filter_complex "[0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v]" -map [v] -v debug /home/efesto/Desktop/foobar.mov 
ffmpeg version N-50577-g777b305-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (Debian 4.9.3-5)
  configuration: --enable-gpl --enable-version3 --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi --cc=gcc-4.9
  libavutil      55.  4.100 / 55.  4.100
  libavcodec     57.  7.100 / 57.  7.100
  libavformat    57.  8.100 / 57.  8.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 11.100 /  6. 11.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-thread_queue_size' ... matched as option 'thread_queue_size' (set the maximum number of queued packets from the demuxer) with argument '512'.
Reading option '-hwaccel' ... matched as option 'hwaccel' (use HW accelerated decoding) with argument 'auto'.
Reading option '-threads' ... matched as AVOption 'threads' with argument '0'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '25.0'.
Reading option '-start_number' ... matched as AVOption 'start_number' with argument '1'.
Reading option '-i' ... matched as input file with argument '/usr/tmp/tmpyCJaTB.%4d.png'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'libx264'.
Reading option '-crf' ... matched as AVOption 'crf' with argument '18'.
Reading option '-preset' ... matched as AVOption 'preset' with argument 'slow'.
Reading option '-strict' ...Routing option strict to both codec and muxer layer
 matched as AVOption 'strict' with argument '-2'.
Reading option '-movflags' ... matched as AVOption 'movflags' with argument 'faststart'.
Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'yuv420p'.
Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v]'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '[v]'.
Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'.
Reading option '/home/efesto/Desktop/foobar.mov' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option filter_complex (create a complex filtergraph) with argument [0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v].
Applying option v (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file /usr/tmp/tmpyCJaTB.%4d.png.
Applying option thread_queue_size (set the maximum number of queued packets from the demuxer) with argument 512.
Applying option hwaccel (use HW accelerated decoding) with argument auto.
Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 25.0.
Successfully parsed a group of options.
Opening an input file: /usr/tmp/tmpyCJaTB.%4d.png.
[AVIOContext @ 0x45312c0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x45291a0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529300] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529560] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529440] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529620] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529780] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529820] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529a00] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529b60] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529cc0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529e20] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4529f80] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a0e0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a240] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a3a0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a500] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a660] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a7c0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452a920] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452aa80] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452ac80] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4539ba0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x452ade0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4539c60] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4539d20] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x4539ea0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a000] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a160] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a2c0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a420] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a580] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a6e0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a840] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453a9a0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453ab00] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453ac60] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453adc0] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453af20] Statistics: 11318 bytes read, 0 seeks
[AVIOContext @ 0x453b080] Statistics: 11318 bytes read, 0 seeks
Input #0, image2, from '/usr/tmp/tmpyCJaTB.%4d.png':
  Duration: 00:00:01.60, start: 0.000000, bitrate: N/A
    Stream #0:0, 40, 1/25: Video: png, 1 reference frame, rgba(pc), 1920x1080 (0x0), 1/25, 25 fps, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
detected 8 logical cores
[Parsed_scale_1 @ 0x4534360] Setting 'w' to value '1920'
[Parsed_scale_1 @ 0x4534360] Setting 'h' to value '1080'
[Parsed_scale_1 @ 0x4534360] w:1920 h:1080 flags:'bilinear' interl:0
[Parsed_drawtext_2 @ 0x4534d00] Setting 'timecode' to value '00:00:00:00'
[Parsed_drawtext_2 @ 0x4534d00] Setting 'r' to value '25.0'
[Parsed_drawtext_2 @ 0x4534d00] Setting 'fontcolor' to value 'white@1'
[Parsed_drawtext_2 @ 0x4534d00] Setting 'fontsize' to value '28'
[Parsed_drawtext_2 @ 0x4534d00] Setting 'x' to value '50'
[Parsed_drawtext_2 @ 0x4534d00] Setting 'y' to value '50-text_h'
Segmentation fault

changing timecode with text, doesn't trigger the segfault.

Change History (7)

comment:1 Changed 4 years ago by lorenzo.angeli

  • Summary changed from potential regressio on drawtext timecode to potential regression on drawtext timecode
  • Version changed from unspecified to git-master

comment:2 Changed 4 years ago by cehoyos

  • Keywords crash added
  • Priority changed from normal to important

Is an external library like x264 necessary to reproduce the issue or is it also reproducible with -vcodec mpeg4 -qscale 2?
Is a specific input necessary or is the issue also reproducible with -f lavfi -i testsrc?

comment:3 Changed 4 years ago by lorenzo.angeli

Hi , sorry for the delay.

the external x264 is not needed and I can reproduce with the other flags.
Here is a command which uses both and segfault.

./ffmpeg -y -r 25.0 -f lavfi -i testsrc -vcodec mpeg4 -qscale 2 -filter_complex "[0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v]" -map [v] -v debug /home/efesto/Desktop/foobar.mov 

ffmpeg version N-50577-g777b305-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (Debian 4.9.3-5)
  configuration: --enable-gpl --enable-version3 --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi --cc=gcc-4.9
  libavutil      55.  4.100 / 55.  4.100
  libavcodec     57.  7.100 / 57.  7.100
  libavformat    57.  8.100 / 57.  8.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 11.100 /  6. 11.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '25.0'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'lavfi'.
Reading option '-i' ... matched as input file with argument 'testsrc'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'mpeg4'.
Reading option '-qscale' ... matched as option 'qscale' (use fixed quality scale (VBR)) with argument '2'.
Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v]'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '[v]'.
Reading option '-v' ... matched as option 'v' (set logging level) with argument 'debug'.
Reading option '/home/efesto/Desktop/foobar.mov' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option y (overwrite output files) with argument 1.
Applying option filter_complex (create a complex filtergraph) with argument [0:v]null,scale=1920:1080,
drawtext=timecode=\'00:00:00:00\':r=25.0:fontcolor=white@1:fontsize=28:x=50:y=50-text_h[clip];[clip]scale=1920:1080, fps=25.0, setdar=16:9[v].
Applying option v (set logging level) with argument debug.
Successfully parsed a group of options.
Parsing a group of options: input file testsrc.
Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 25.0.
Applying option f (force format) with argument lavfi.
Successfully parsed a group of options.
Opening an input file: testsrc.
detected 8 logical cores
[Parsed_testsrc_0 @ 0x36311c0] size:320x240 rate:25/1 duration:-1.000000 sar:1/1
[AVFilterGraph @ 0x362fda0] query_formats: 2 queried, 1 merged, 0 already done, 0 delayed
[lavfi @ 0x362f6c0] All info found
Input #0, lavfi, from 'testsrc':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0, 1, 1/25: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 1/25, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
[Parsed_scale_1 @ 0x3634280] Setting 'w' to value '1920'
[Parsed_scale_1 @ 0x3634280] Setting 'h' to value '1080'
[Parsed_scale_1 @ 0x3634280] w:1920 h:1080 flags:'bilinear' interl:0
[Parsed_drawtext_2 @ 0x3634c00] Setting 'timecode' to value '00:00:00:00'
[Parsed_drawtext_2 @ 0x3634c00] Setting 'r' to value '25.0'
[Parsed_drawtext_2 @ 0x3634c00] Setting 'fontcolor' to value 'white@1'
[Parsed_drawtext_2 @ 0x3634c00] Setting 'fontsize' to value '28'
[Parsed_drawtext_2 @ 0x3634c00] Setting 'x' to value '50'
[Parsed_drawtext_2 @ 0x3634c00] Setting 'y' to value '50-text_h'
Segmentation fault

comment:4 Changed 4 years ago by cehoyos

  • Resolution set to needs_more_info
  • Status changed from new to closed

Your command line does not crash here, please reopen this ticket if you can provide the missing information for crash reports as explained on https://ffmpeg.org/bugreports.html
Or report this issue to http://johnvansickle.com/ffmpeg

comment:5 follow-up: Changed 4 years ago by lorenzo.angeli

Hi, where can I get the ffmpeg_g to provide gdb informations ?

system : Linux hdd-XPS-15-9530 3.16.0-45-generic #60~14.04.1-Ubuntu SMP Fri Jul 24 21:16:23 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

here the bare minimum I can provide in order to reproduce:

./ffmpeg -v 9 -loglevel 99 -y -f lavfi -i testsrc -vcodec mpeg4 -qscale 2 -filter_complex "[0:v] drawtext=timecode=\'00:00:00:00\':r=25.0[v]" -map [v]  /home/efesto/Desktop/foobar.mov 

here is the output

ffmpeg version N-50577-g777b305-static http://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.3 (Debian 4.9.3-5)
  configuration: --enable-gpl --enable-version3 --disable-shared --disable-debug --enable-runtime-cpudetect --enable-libmp3lame --enable-libx264 --enable-libx265 --enable-libwebp --enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype --enable-fontconfig --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-gray --enable-libopenjpeg --enable-libopus --enable-libass --enable-gnutls --enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi --cc=gcc-4.9
  libavutil      55.  4.100 / 55.  4.100
  libavcodec     57.  7.100 / 57.  7.100
  libavformat    57.  8.100 / 57.  8.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 11.100 /  6. 11.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'lavfi'.
Reading option '-i' ... matched as input file with argument 'testsrc'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'mpeg4'.
Reading option '-qscale' ... matched as option 'qscale' (use fixed quality scale (VBR)) with argument '2'.
Reading option '-filter_complex' ... matched as option 'filter_complex' (create a complex filtergraph) with argument '[0:v] drawtext=timecode=\'00:00:00:00\':r=25.0[v]'.
Reading option '-map' ... matched as option 'map' (set input stream mapping) with argument '[v]'.
Reading option '/home/efesto/Desktop/foobar.mov' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Applying option filter_complex (create a complex filtergraph) with argument [0:v] drawtext=timecode=\'00:00:00:00\':r=25.0[v].
Successfully parsed a group of options.
Parsing a group of options: input file testsrc.
Applying option f (force format) with argument lavfi.
Successfully parsed a group of options.
Opening an input file: testsrc.
detected 8 logical cores
[Parsed_testsrc_0 @ 0x4dbb040] size:320x240 rate:25/1 duration:-1.000000 sar:1/1
[AVFilterGraph @ 0x4db9c40] query_formats: 2 queried, 1 merged, 0 already done, 0 delayed
[lavfi @ 0x4db9580] All info found
[lavfi @ 0x4db9580] 0: start_time: 0.000 duration: -9223372036854.775
[lavfi @ 0x4db9580] stream: start_time: 0.000 duration: -9223372036854.775 bitrate=0 kb/s
Input #0, lavfi, from 'testsrc':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0, 1, 1/25: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24, 320x240 [SAR 1:1 DAR 4:3], 1/25, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
[Parsed_drawtext_0 @ 0x4dbdc00] Setting 'timecode' to value '00:00:00:00'
[Parsed_drawtext_0 @ 0x4dbdc00] Setting 'r' to value '25.0'
Segmentation fault

comment:6 in reply to: ↑ 5 Changed 4 years ago by cehoyos

Replying to lorenzo.angeli:

Hi, where can I get the ffmpeg_g to provide gdb informations ?

You will have to compile yourself with --enable-libfreetype (or report the issue to where you downloaded the binary from, remember that the FFmpeg project only provides source code, no binaries).

Last edited 4 years ago by cehoyos (previous) (diff)

comment:7 Changed 4 years ago by lorenzo.angeli

Oh sorry, here is where I get it from:

http://johnvansickle.com/ffmpeg/builds/ffmpeg-git-64bit-static.tar.xz

I'll try to understand how to report it there.
Cheers.
L.

Note: See TracTickets for help on using tickets.