Opened 10 months ago

Last modified 10 months ago

#6951 new enhancement

sendcmd does not work with drawbox

Reported by: enzanki_ars Owned by:
Priority: wish Component: avfilter
Version: git-master Keywords: drawbox
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

When using sendcmd with drawbox, none of the values seem to be able to be modified, such as the width. sendcmd with drawtext works as expected and documented.

Below is an condensed version of the full log attached. Attached is are all of the files used in this example, plus the output that is failing.

How to reproduce:

> ffmpeg -loglevel debug -loop 1 -i player-data-drive.png -t 361.0234846000001 -vf "sendcmd=f=frames-frame_num-cars-2-throttle.txt,drawbox@frames-frame_num-cars-2-throttle=x=180:y=77:h=15:w=10:thickness=fill:color=green" -r 30 -y render-test-2.mp4

ffmpeg version N-89674-g57d0c24132 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 7.2.0 (GCC)
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-amf --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
  libavutil      56.  7.100 / 56.  7.100
  libavcodec     58.  9.100 / 58.  9.100
  libavformat    58.  3.100 / 58.  3.100
  libavdevice    58.  0.100 / 58.  0.100
  libavfilter     7.  8.100 /  7.  8.100
  libswscale      5.  0.101 /  5.  0.101
  libswresample   3.  0.101 /  3.  0.101
  libpostproc    55.  0.100 / 55.  0.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.
Reading option '-loop' ... matched as AVOption 'loop' with argument '1'.
Reading option '-i' ... matched as input url with argument 'player-data-drive.png'.
Reading option '-t' ... matched as option 't' (record or transcode "duration" seconds of audio/video) with argument '361.0234846000001'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'sendcmd=f=frames-frame_num-cars-2-throttle.txt,drawbox@frames-frame_num-cars-2-throttle=x=180:y=77:h=15:w=10:thickness=fill:color=green'.
Reading option '-r' ... matched as option 'r' (set frame rate (Hz value, fraction or abbreviation)) with argument '30'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'render-test-2.mp4' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option loglevel (set logging level) with argument debug.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url player-data-drive.png.
Successfully parsed a group of options.
Opening an input file: player-data-drive.png.
[NULL @ 00000183406ba4c0] Opening 'player-data-drive.png' for reading
[file @ 00000183406bb580] Setting default whitelist 'file,crypto'
[png_pipe @ 00000183406ba4c0] Format png_pipe probed with size=2048 and score=99
[png_pipe @ 00000183406ba4c0] Before avformat_find_stream_info() pos: 0 bytes read:5220 seeks:0 nb_streams:1
[png_pipe @ 00000183406ba4c0] max_analyze_duration 5000000 reached at 5000000 microseconds st:0
[png_pipe @ 00000183406ba4c0] After avformat_find_stream_info() pos: 5220 bytes read:5220 seeks:0 frames:127
Input #0, png_pipe, from 'player-data-drive.png':
  Duration: N/A, bitrate: N/A
    Stream #0:0, 127, 1/25: Video: png, 1 reference frame, rgba(pc), 362x124 [SAR 3779:3779 DAR 181:62], 0/1, 25 fps, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
Parsing a group of options: output url render-test-2.mp4.
Applying option t (record or transcode "duration" seconds of audio/video) with argument 361.0234846000001.
Applying option vf (set video filters) with argument sendcmd=f=frames-frame_num-cars-2-throttle.txt,drawbox@frames-frame_num-cars-2-throttle=x=180:y=77:h=15:w=10:thickness=fill:color=green.
Applying option r (set frame rate (Hz value, fraction or abbreviation)) with argument 30.
Successfully parsed a group of options.
Opening an output file: render-test-2.mp4.
[file @ 0000018340747fc0] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 8 logical cores
Stream mapping:
  Stream #0:0 -> #0:0 (png (native) -> h264 (libx264))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 8 times
[Parsed_sendcmd_0 @ 00000183406c3280] Setting 'f' to value 'frames-frame_num-cars-2-throttle.txt'
[Parsed_sendcmd_0 @ 00000183406c3280] Parsed commands:
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:0.000000 end_time:9223372036854.775391 index:0
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:54 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:4.040361 end_time:9223372036854.775391 index:1
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:6 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:4.080366 end_time:9223372036854.775391 index:2
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:0 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:5.000490 end_time:9223372036854.775391 index:3
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:40 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:5.040502 end_time:9223372036854.775391 index:4
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:54 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:5.120503 end_time:9223372036854.775391 index:5
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:66 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:5.160530 end_time:9223372036854.775391 index:6
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:108 index:0
[Parsed_sendcmd_0 @ 00000183406c3280] start_time:8.500671 end_time:9223372036854.775391 index:7
[Parsed_sendcmd_0 @ 00000183406c3280]     [enter] target:drawbox@frames-frame_num-cars-2-throttle command:w arg:102 

[...]

[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'x' to value '180'
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'y' to value '77'
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'h' to value '15'
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'w' to value '10'
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'thickness' to value 'fill'
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] Setting 'color' to value 'green'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'video_size' to value '362x124'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'pix_fmt' to value '26'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'time_base' to value '1/25'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'pixel_aspect' to value '3779/3779'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 00000183406c2f40] Setting 'frame_rate' to value '25/1'
[graph 0 input from stream 0:0 @ 00000183406c2f40] w:362 h:124 pixfmt:rgba tb:1/25 fr:25/1 sar:3779/3779 sws_param:flags=2
[format @ 0000018340e30a00] Setting 'pix_fmts' to value 'yuv420p|yuvj420p|yuv422p|yuvj422p|yuv444p|yuvj444p|nv12|nv16|nv21'
[auto_scaler_0 @ 0000018340e311c0] Setting 'flags' to value 'bicubic'
[auto_scaler_0 @ 0000018340e311c0] w:iw h:ih flags:'bicubic' interl:0
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] auto-inserting filter 'auto_scaler_0' between the filter 'Parsed_sendcmd_0' and the filter 'drawbox@frames-frame_num-cars-2-throttle'
[AVFilterGraph @ 0000018340bc2740] query_formats: 6 queried, 4 merged, 1 already done, 0 delayed
[auto_scaler_0 @ 0000018340e311c0] picking yuv444p out of 6 ref:rgba alpha:1
[auto_scaler_0 @ 0000018340e311c0] w:362 h:124 fmt:rgba sar:3779/3779 -> w:362 h:124 fmt:yuv444p sar:1/1 flags:0x4
[drawbox@frames-frame_num-cars-2-throttle @ 00000183406bc340] x:180 y:77 w:10 h:15 color:0x515B51FF
[Parsed_sendcmd_0 @ 00000183406c3280] [enter] interval #0 start_ts:0.000000 end_ts:9223372036854.775391 ts:0.000000
[Parsed_sendcmd_0 @ 00000183406c3280] Processing command #0 target:drawbox@frames-frame_num-cars-2-throttle command:w arg:54
[Parsed_sendcmd_0 @ 00000183406c3280] Command reply for command #0: ret:Function not implemented res:
[libx264 @ 0000018340747040] using mv_range_thread = 24
[libx264 @ 0000018340747040] using SAR=1/1
[libx264 @ 0000018340747040] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
[libx264 @ 0000018340747040] profile High 4:4:4 Predictive, level 1.2, 4:4:4 8-bit
[libx264 @ 0000018340747040] 264 - core 152 r2851 ba24899 - H.264/MPEG-4 AVC codec - Copyleft 2003-2017 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'render-test-2.mp4':
  Metadata:
    encoder         : Lavf58.3.100
    Stream #0:0, 0, 1/15360: Video: h264 (libx264), 1 reference frame (avc1 / 0x31637661), yuv444p, 362x124 [SAR 1:1 DAR 181:62], 0/1, q=-1--1, 30 fps, 15360 tbn, 30 tbc
    Metadata:
      encoder         : Lavc58.9.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
Clipping frame in rate conversion by 0.000008
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 1 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
    Last message repeated 2 times
*** 1 dup!
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.399986
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.199989
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[libx264 @ 0000018340747040] frame=   0 QP=20.37 NAL=3 Slice:I Poc:0   I:184  P:0    SKIP:0    size=2235 bytes
[libx264 @ 0000018340747040] frame=   1 QP=26.04 NAL=2 Slice:P Poc:8   I:1    P:9    SKIP:174  size=86 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=   2 QP=34.00 NAL=2 Slice:B Poc:4   I:0    P:7    SKIP:177  size=20 bytes
[libx264 @ 0000018340747040] frame=   3 QP=36.00 NAL=0 Slice:B Poc:2   I:0    P:3    SKIP:181  size=17 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=   4 QP=36.00 NAL=0 Slice:B Poc:6   I:0    P:1    SKIP:183  size=15 bytes
Clipping frame in rate conversion by 0.199989me=00:00:00.06 bitrate=   5.8kbits/s dup=9 drop=0 speed=0.132x
[libx264 @ 0000018340747040] frame=   5 QP=28.00 NAL=2 Slice:P Poc:16  I:0    P:2    SKIP:182  size=25 bytes
[libx264 @ 0000018340747040] frame=   6 QP=34.00 NAL=2 Slice:B Poc:12  I:0    P:1    SKIP:183  size=17 bytes
[libx264 @ 0000018340747040] frame=   7 QP=36.00 NAL=0 Slice:B Poc:10  I:0    P:1    SKIP:183  size=14 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=   8 QP=36.00 NAL=0 Slice:B Poc:14  I:0    P:1    SKIP:183  size=14 bytes
[libx264 @ 0000018340747040] frame=   9 QP=28.00 NAL=2 Slice:P Poc:24  I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  10 QP=34.00 NAL=2 Slice:B Poc:20  I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  11 QP=36.00 NAL=0 Slice:B Poc:18  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  12 QP=36.00 NAL=0 Slice:B Poc:22  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  13 QP=28.00 NAL=2 Slice:P Poc:32  I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  14 QP=34.00 NAL=2 Slice:B Poc:28  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  15 QP=36.00 NAL=0 Slice:B Poc:26  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  16 QP=36.00 NAL=0 Slice:B Poc:30  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  17 QP=28.00 NAL=2 Slice:P Poc:40  I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  18 QP=34.00 NAL=2 Slice:B Poc:36  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  19 QP=36.00 NAL=0 Slice:B Poc:34  I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  20 QP=36.00 NAL=0 Slice:B Poc:38  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  21 QP=28.00 NAL=2 Slice:P Poc:48  I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  22 QP=34.00 NAL=2 Slice:B Poc:44  I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  23 QP=36.00 NAL=0 Slice:B Poc:42  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  24 QP=36.00 NAL=0 Slice:B Poc:46  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  25 QP=28.00 NAL=2 Slice:P Poc:56  I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  26 QP=34.00 NAL=2 Slice:B Poc:52  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  27 QP=36.00 NAL=0 Slice:B Poc:50  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  28 QP=36.00 NAL=0 Slice:B Poc:54  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  29 QP=28.00 NAL=2 Slice:P Poc:64  I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  30 QP=34.00 NAL=2 Slice:B Poc:60  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  31 QP=36.00 NAL=0 Slice:B Poc:58  I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  32 QP=36.00 NAL=0 Slice:B Poc:62  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  33 QP=28.00 NAL=2 Slice:P Poc:72  I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  34 QP=34.00 NAL=2 Slice:B Poc:68  I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  35 QP=36.00 NAL=0 Slice:B Poc:66  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  36 QP=36.00 NAL=0 Slice:B Poc:70  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  37 QP=28.00 NAL=2 Slice:P Poc:80  I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  38 QP=34.00 NAL=2 Slice:B Poc:76  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  39 QP=36.00 NAL=0 Slice:B Poc:74  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  40 QP=36.00 NAL=0 Slice:B Poc:78  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  41 QP=28.00 NAL=2 Slice:P Poc:88  I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  42 QP=34.00 NAL=2 Slice:B Poc:84  I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  43 QP=36.00 NAL=0 Slice:B Poc:82  I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  44 QP=36.00 NAL=0 Slice:B Poc:86  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  45 QP=28.00 NAL=2 Slice:P Poc:96  I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  46 QP=34.00 NAL=2 Slice:B Poc:92  I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  47 QP=36.00 NAL=0 Slice:B Poc:90  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  48 QP=36.00 NAL=0 Slice:B Poc:94  I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  49 QP=28.00 NAL=2 Slice:P Poc:104 I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  50 QP=34.00 NAL=2 Slice:B Poc:100 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  51 QP=36.00 NAL=0 Slice:B Poc:98  I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  52 QP=36.00 NAL=0 Slice:B Poc:102 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  53 QP=28.00 NAL=2 Slice:P Poc:112 I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  54 QP=34.00 NAL=2 Slice:B Poc:108 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  55 QP=36.00 NAL=0 Slice:B Poc:106 I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  56 QP=36.00 NAL=0 Slice:B Poc:110 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  57 QP=28.00 NAL=2 Slice:P Poc:120 I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  58 QP=34.00 NAL=2 Slice:B Poc:116 I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  59 QP=36.00 NAL=0 Slice:B Poc:114 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  60 QP=36.00 NAL=0 Slice:B Poc:118 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  61 QP=28.00 NAL=2 Slice:P Poc:128 I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  62 QP=34.00 NAL=2 Slice:B Poc:124 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  63 QP=36.00 NAL=0 Slice:B Poc:122 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  64 QP=36.00 NAL=0 Slice:B Poc:126 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  65 QP=28.00 NAL=2 Slice:P Poc:136 I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  66 QP=34.00 NAL=2 Slice:B Poc:132 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  67 QP=36.00 NAL=0 Slice:B Poc:130 I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  68 QP=36.00 NAL=0 Slice:B Poc:134 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  69 QP=28.00 NAL=2 Slice:P Poc:144 I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  70 QP=34.00 NAL=2 Slice:B Poc:140 I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  71 QP=36.00 NAL=0 Slice:B Poc:138 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  72 QP=36.00 NAL=0 Slice:B Poc:142 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  73 QP=28.00 NAL=2 Slice:P Poc:152 I:0    P:0    SKIP:184  size=18 bytes
[Parsed_sendcmd_0 @ 00000183406c3280] [enter] interval #1 start_ts:4.040361 end_ts:9223372036854.775391 ts:4.080000
[Parsed_sendcmd_0 @ 00000183406c3280] Processing command #0 target:drawbox@frames-frame_num-cars-2-throttle command:w arg:6
[Parsed_sendcmd_0 @ 00000183406c3280] Command reply for command #0: ret:Function not implemented res:
*** 1 dup!
[libx264 @ 0000018340747040] frame=  74 QP=34.00 NAL=2 Slice:B Poc:148 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  75 QP=36.00 NAL=0 Slice:B Poc:146 I:0    P:0    SKIP:184  size=12 bytes
[Parsed_sendcmd_0 @ 00000183406c3280] [enter] interval #2 start_ts:4.080366 end_ts:9223372036854.775391 ts:4.120000
[Parsed_sendcmd_0 @ 00000183406c3280] Processing command #0 target:drawbox@frames-frame_num-cars-2-throttle command:w arg:0
[Parsed_sendcmd_0 @ 00000183406c3280] Command reply for command #0: ret:Function not implemented res:
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  76 QP=36.00 NAL=0 Slice:B Poc:150 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  77 QP=28.00 NAL=2 Slice:P Poc:160 I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  78 QP=34.00 NAL=2 Slice:B Poc:156 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  79 QP=36.00 NAL=0 Slice:B Poc:154 I:0    P:0    SKIP:184  size=12 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  80 QP=36.00 NAL=0 Slice:B Poc:158 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  81 QP=28.00 NAL=2 Slice:P Poc:168 I:0    P:0    SKIP:184  size=18 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  82 QP=34.00 NAL=2 Slice:B Poc:164 I:0    P:1    SKIP:183  size=16 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  83 QP=36.00 NAL=0 Slice:B Poc:162 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  84 QP=36.00 NAL=0 Slice:B Poc:166 I:0    P:0    SKIP:184  size=12 bytes
[libx264 @ 0000018340747040] frame=  85 QP=28.00 NAL=2 Slice:P Poc:176 I:0    P:0    SKIP:184  size=18 bytes
*** 1 dup!
[libx264 @ 0000018340747040] frame=  86 QP=34.00 NAL=2 Slice:B Poc:172 I:0    P:1    SKIP:183  size=16 bytes
[libx264 @ 0000018340747040] frame=  87 QP=36.00 NAL=0 Slice:B Poc:170 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.399986
[libx264 @ 0000018340747040] frame=  88 QP=36.00 NAL=0 Slice:B Poc:174 I:0    P:0    SKIP:184  size=12 bytes
Clipping frame in rate conversion by 0.199989
[libx264 @ 0000018340747040] frame=  89 QP=28.00 NAL=2 Slice:P Poc:184 I:0    P:0    SKIP:184  size=18 bytes
[libx264 @ 0000018340747040] frame=  90 QP=34.00 NAL=2 Slice:B Poc:180 I:0    P:1    SKIP:183  size=16 bytes

[...]

frame=10831 fps=2389 q=-1.0 Lsize=     383kB time=00:06:00.93 bitrate=   8.7kbits/s dup=1805 drop=0 speed=79.6x    

video:256kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 49.874409%


Input file #0 (player-data-drive.png):

  Input stream #0:0 (video): 
9035 packets read (47162700 bytes); 
9028 frames decoded; 


  Total: 9035 packets (47162700 bytes) demuxed

Output file #0 (render-test-2.mp4):

  Output stream #0:0 (video): 
10831 frames encoded
; 
10831 packets muxed (261960 bytes); 


  Total: 10831 packets (261960 bytes) muxed

9028 frames successfully decoded, 0 decoding errors

[AVIOContext @ 0000020e97a9dd80]
 Statistics: 2 seeks, 4 writeouts

[libx264 @ 0000020e97b17040]
 frame I:44    Avg QP:17.77  size:  2463
[libx264 @ 0000020e97b17040] frame P:2729  Avg QP:28.11  size:    19
[libx264 @ 0000020e97b17040] frame B:8058  Avg QP:35.33  size:    13
[libx264 @ 0000020e97b17040] 
consecutive B-frames:  0.8%  0.0%  0.0% 99.2%
[libx264 @ 0000020e97b17040]
 
mb I  I16..4: 70.7%  0.0% 29.3%

[libx264 @ 0000020e97b17040] 
mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:100.0%

[libx264 @ 0000020e97b17040]
 mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.0%  0.0%  0.0%  direct: 0.0%  skip:100.0%  L0:87.8% L1:12.2% BI: 0.0%

[libx264 @ 0000020e97b17040] 
coded y,u,v intra: 13.1% 2.0% 0.7% inter: 0.0% 0.0% 0.0%

[libx264 @ 0000020e97b17040] 
i16 v,h,dc,p: 22% 78%  0%  0%

[libx264 @ 0000020e97b17040]
 
i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 48% 37%  5%  1%  1%  2%  2%  1%  3%
[libx264 @ 0000020e97b17040] Weighted P-Frames: Y:0.0% UV:0.0%

[libx264 @ 0000020e97b17040] 
ref P L0: 98.9%  0.0%  0.7%  0.4%

[libx264 @ 0000020e97b17040] 
ref B L0:  4.6% 93.8%  1.5%

[libx264 @ 0000020e97b17040] kb/s:5.79

[AVIOContext @ 0000020e97a93740]
 Statistics: 5220 bytes read, 0 seeks

Attachments (1)

ffmpeg-sendcmd-drawbox-error.zip (144.1 KB) - added by enzanki_ars 10 months ago.

Download all attachments as: .zip

Change History (7)

Changed 10 months ago by enzanki_ars

comment:1 Changed 10 months ago by llogan

  • Component changed from undetermined to avfilter
  • Keywords drawbox added
  • Priority changed from normal to wish
  • Type changed from defect to enhancement

Only filters that have "command" support can be used with sendcmd. Refer to the output of ffmpeg -filters to see a list of which filters support this. With filters that do support it you may be limited to specific options that are available for use with sendcmd.

comment:2 Changed 10 months ago by enzanki_ars

Note: The above report is from Windows.

I also forgot to provide a sample of the sendcmd file.

0 drawbox@frames-frame_num-cars-2-throttle w 54;
4.040361399999998 drawbox@frames-frame_num-cars-2-throttle w 6;
4.0803662 drawbox@frames-frame_num-cars-2-throttle w 0;
5.000490199999998 drawbox@frames-frame_num-cars-2-throttle w 40;
5.0405026 drawbox@frames-frame_num-cars-2-throttle w 54;
5.120503599999999 drawbox@frames-frame_num-cars-2-throttle w 66;
5.160530099999999 drawbox@frames-frame_num-cars-2-throttle w 108;
8.500671399999998 drawbox@frames-frame_num-cars-2-throttle w 102;
8.537380199999998 drawbox@frames-frame_num-cars-2-throttle w 54;
15.3083362 drawbox@frames-frame_num-cars-2-throttle w 31;
15.3483333 drawbox@frames-frame_num-cars-2-throttle w 0;

Testing on linux, but a recompile is needed on my end.

comment:3 Changed 10 months ago by enzanki_ars

Replying to llogan:

Only filters that have "command" support can be used with sendcmd. Refer to the output of ffmpeg -filters to see a list of which filters support this. With filters that do support it you may be limited to specific options that are available for use with sendcmd.

Thank you for the info. Did not realize that, as the documentation can be a little confusing. Would it be possible to edit the ffmpeg-filters documentation for sendcmd to document that better?

Last edited 10 months ago by enzanki_ars (previous) (diff)

comment:4 Changed 10 months ago by llogan

Yes, the documentation should be more clear. I may address that in a few days, but if not then it will have to wait a few weeks due to travel plans unless someone else submits a patch.

comment:5 Changed 10 months ago by Gyan

Will a single patch do, that notes for _each_ filter whether they accept commands? (And another one, for timeline editing?)

comment:6 Changed 10 months ago by llogan

Sounds good to me. I was planning on adding a new chapter explaining commands, like the timeline editing chapter, but feel free to do so in the same patch if you are interested.

Note: See TracTickets for help on using tickets.