Opened 5 months ago

Last modified 4 months ago

#6294 open defect

gif frame delay dropped from last frame when scale filter is used

Reported by: okor Owned by:
Priority: normal Component: avfilter
Version: git-master Keywords: fps
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:
When converting a gif to an mp4 the delay is not honored when the scale filter is used. If the scale filter is removed from the command options the output is perfect.

In my case, the input gif has only two frames. Each frame has an asis delay duration of 2 seconds, so the full loop should be 4 seconds long. The output video is 2 seconds long, where the first frame shows for nearly 2 seconds the second frame is shown for ... idk, just the last tick.

Input: https://cdn0.vox-cdn.com/uploads/chorus_asset/file/8251197/7GPW_LivingRoom.gif

Output: https://cdn0.vox-cdn.com/thumbor/BbnJ1AHcTSqqFdPKSVuyJgf_yr8=/0x0:2432x1556/1720x0/filters:focal(0x0:2432x1556):gifv():no_upscale()/cdn0.vox-cdn.com/uploads/chorus_asset/file/8251197/7GPW_LivingRoom.gif

Simple reproduce:

ffmpeg -i input.gif -vf "scale=-2:-2" output.mp4

Log:

$ ffmpeg -v 9 -loglevel 99 -report -y -f gif -i imagefromIO.gif -an -movflags faststart -f mp4 -pix_fmt yuv420p -profile:v baseline -level 4.0 -qmin 10 -qmax 42 -crf 23 -maxrate 500k -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" imagefromIO.mp4
ffmpeg started on 2017-04-07 at 00:09:46
Report written to "ffmpeg-20170407-000946.log"
ffmpeg version N-85306-ge7ec8c1 Copyright (c) 2000-2017 the FFmpeg developers
  built with Apple LLVM version 8.0.0 (clang-800.0.42.1)
  configuration: --enable-gpl --enable-libx264 --enable-libfdk-aac --enable-libvpx --enable-libmp3lame --enable-nonfree
  libavutil      55. 60.100 / 55. 60.100
  libavcodec     57. 92.100 / 57. 92.100
  libavformat    57. 72.100 / 57. 72.100
  libavdevice    57.  7.100 / 57.  7.100
  libavfilter     6. 84.100 /  6. 84.100
  libswscale      4.  7.100 /  4.  7.100
  libswresample   2.  8.100 /  2.  8.100
  libpostproc    54.  6.100 / 54.  6.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 '-report' ... matched as option 'report' (generate a report) with argument '1'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'gif'.
Reading option '-i' ... matched as input url with argument 'imagefromIO.gif'.
Reading option '-an' ... matched as option 'an' (disable audio) with argument '1'.
Reading option '-movflags' ... matched as AVOption 'movflags' with argument 'faststart'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'mp4'.
Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel format) with argument 'yuv420p'.
Reading option '-profile:v' ... matched as option 'profile' (set profile) with argument 'baseline'.
Reading option '-level' ... matched as AVOption 'level' with argument '4.0'.
Reading option '-qmin' ... matched as AVOption 'qmin' with argument '10'.
Reading option '-qmax' ... matched as AVOption 'qmax' with argument '42'.
Reading option '-crf' ... matched as AVOption 'crf' with argument '23'.
Reading option '-maxrate' ... matched as AVOption 'maxrate' with argument '500k'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'scale=trunc(iw/2)*2:trunc(ih/2)*2'.
Reading option 'imagefromIO.mp4' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option report (generate a report) with argument 1.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url imagefromIO.gif.
Applying option f (force format) with argument gif.
Successfully parsed a group of options.
Opening an input file: imagefromIO.gif.
[file @ 0x7fcf184172a0] Setting default whitelist 'file,crypto'
[gif @ 0x7fcf18814200] Before avformat_find_stream_info() pos: 0 bytes read:32768 seeks:0 nb_streams:1
[gif @ 0x7fcf18814200] stream 0: start_time: -92233720368547760.000 duration: -92233720368547760.000
[gif @ 0x7fcf18814200] format: start_time: -9223372036854.775 duration: -9223372036854.775 bitrate=0 kb/s
[gif @ 0x7fcf18814200] After avformat_find_stream_info() pos: 3316873 bytes read:6650772 seeks:2 frames:2
Input #0, gif, from 'imagefromIO.gif':
  Duration: N/A, bitrate: N/A
    Stream #0:0, 2, 1/100: Video: gif, 1 reference frame, bgra, 2432x1556, 0/1, 100 tbr, 100 tbn, 100 tbc
Successfully opened the file.
Parsing a group of options: output url imagefromIO.mp4.
Applying option an (disable audio) with argument 1.
Applying option f (force format) with argument mp4.
Applying option pix_fmt (set pixel format) with argument yuv420p.
Applying option profile:v (set profile) with argument baseline.
Applying option vf (set video filters) with argument scale=trunc(iw/2)*2:trunc(ih/2)*2.
Successfully parsed a group of options.
Opening an output file: imagefromIO.mp4.
[file @ 0x7fcf18419500] Setting default whitelist 'file,crypto'
Successfully opened the file.
Stream mapping:
  Stream #0:0 -> #0:0 (gif (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)
[gif @ 0x7fcf1881d400] code=21 '!'
    Last message repeated 1 times
[gif @ 0x7fcf1881d400] code=2c ','
detected 8 logical cores
[Parsed_scale_0 @ 0x7fcf18600000] Setting 'w' to value 'trunc(iw/2)*2'
[Parsed_scale_0 @ 0x7fcf18600000] Setting 'h' to value 'trunc(ih/2)*2'
[Parsed_scale_0 @ 0x7fcf18600000] Setting 'flags' to value 'bicubic'
[Parsed_scale_0 @ 0x7fcf18600000] w:trunc(iw/2)*2 h:trunc(ih/2)*2 flags:'bicubic' interl:0
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'video_size' to value '2432x1556'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'pix_fmt' to value '30'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'time_base' to value '1/100'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'pixel_aspect' to value '0/1'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] Setting 'frame_rate' to value '100/1'
[graph 0 input from stream 0:0 @ 0x7fcf185001c0] w:2432 h:1556 pixfmt:bgra tb:1/100 fr:100/1 sar:0/1 sws_param:flags=2
[format @ 0x7fcf1841a660] compat: called with args=[yuv420p]
[format @ 0x7fcf1841a660] Setting 'pix_fmts' to value 'yuv420p'
[AVFilterGraph @ 0x7fcf1841a1a0] query_formats: 4 queried, 3 merged, 0 already done, 0 delayed
[Parsed_scale_0 @ 0x7fcf18600000] w:2432 h:1556 fmt:bgra sar:0/1 -> w:2432 h:1556 fmt:yuv420p sar:0/1 flags:0x4
[libx264 @ 0x7fcf1881f600] VBV maxrate specified, but no bufsize, ignored
[libx264 @ 0x7fcf1881f600] using mv_range_thread = 56
[libx264 @ 0x7fcf1881f600] frame MB size (152x98) > level limit (8192)
[libx264 @ 0x7fcf1881f600] MB rate (1489600) > level limit (245760)
[libx264 @ 0x7fcf1881f600] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 AVX2 LZCNT BMI2
[libx264 @ 0x7fcf1881f600] profile Constrained Baseline, level 4.0
[libx264 @ 0x7fcf1881f600] 264 - core 148 r2748 97eaef2 - H.264/MPEG-4 AVC codec - Copyleft 2003-2016 - http://www.videolan.org/x264.html - options: cabac=0 ref=2 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=-2 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=10 qpmax=42 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'imagefromIO.mp4':
  Metadata:
    encoder         : Lavf57.72.100
    Stream #0:0, 0, 1/12800: Video: h264 (libx264), 1 reference frame ([33][0][0][0] / 0x0021), yuv420p, 2432x1556, 0/1, q=10-42, 100 fps, 12800 tbn, 100 tbc
    Metadata:
      encoder         : Lavc57.92.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 500000/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)
[gif @ 0x7fcf1881d400] code=21 '!'
[gif @ 0x7fcf1881d400] code=2c ','
*** 199 dup!
[libx264 @ 0x7fcf1881f600] frame=   0 QP=21.36 NAL=3 Slice:I Poc:0   I:14896 P:0    SKIP:0    size=419387 bytes
[libx264 @ 0x7fcf1881f600] frame=   1 QP=20.76 NAL=2 Slice:P Poc:2   I:319  P:2646 SKIP:11931 size=9935 bytes
[libx264 @ 0x7fcf1881f600] frame=   2 QP=20.37 NAL=2 Slice:P Poc:4   I:248  P:1273 SKIP:13375 size=6085 bytes
[libx264 @ 0x7fcf1881f600] frame=   3 QP=20.70 NAL=2 Slice:P Poc:6   I:185  P:1292 SKIP:13419 size=4747 bytes
[libx264 @ 0x7fcf1881f600] frame=   4 QP=20.60 NAL=2 Slice:P Poc:8   I:153  P:1202 SKIP:13541 size=3888 bytes
[libx264 @ 0x7fcf1881f600] frame=   5 QP=20.78 NAL=2 Slice:P Poc:10  I:131  P:1145 SKIP:13620 size=3399 bytes
[libx264 @ 0x7fcf1881f600] frame=   6 QP=20.91 NAL=2 Slice:P Poc:12  I:107  P:1163 SKIP:13626 size=3033 bytes
[libx264 @ 0x7fcf1881f600] frame=   7 QP=20.74 NAL=2 Slice:P Poc:14  I:116  P:1087 SKIP:13693 size=3044 bytes
[libx264 @ 0x7fcf1881f600] frame=   8 QP=20.65 NAL=2 Slice:P Poc:16  I:123  P:978  SKIP:13795 size=2905 bytes
[libx264 @ 0x7fcf1881f600] frame=   9 QP=20.96 NAL=2 Slice:P Poc:18  I:98   P:948  SKIP:13850 size=2534 bytes
[libx264 @ 0x7fcf1881f600] frame=  10 QP=20.56 NAL=2 Slice:P Poc:20  I:93   P:954  SKIP:13849 size=2784 bytes
[libx264 @ 0x7fcf1881f600] frame=  11 QP=20.79 NAL=2 Slice:P Poc:22  I:118  P:836  SKIP:13942 size=2658 bytes
[libx264 @ 0x7fcf1881f600] frame=  12 QP=20.41 NAL=2 Slice:P Poc:24  I:84   P:795  SKIP:14017 size=2245 bytes
[libx264 @ 0x7fcf1881f600] frame=  13 QP=20.48 NAL=2 Slice:P Poc:26  I:113  P:740  SKIP:14043 size=2357 bytes
[libx264 @ 0x7fcf1881f600] frame=  14 QP=20.45 NAL=2 Slice:P Poc:28  I:82   P:670  SKIP:14144 size=1981 bytes
[libx264 @ 0x7fcf1881f600] frame=  15 QP=20.64 NAL=2 Slice:P Poc:30  I:78   P:604  SKIP:14214 size=1779 bytes
[libx264 @ 0x7fcf1881f600] frame=  16 QP=20.65 NAL=2 Slice:P Poc:32  I:88   P:556  SKIP:14252 size=1821 bytes
[libx264 @ 0x7fcf1881f600] frame=  17 QP=20.54 NAL=2 Slice:P Poc:34  I:105  P:547  SKIP:14244 size=1948 bytes
[libx264 @ 0x7fcf1881f600] frame=  18 QP=20.44 NAL=2 Slice:P Poc:36  I:84   P:546  SKIP:14266 size=1720 bytes
[libx264 @ 0x7fcf1881f600] frame=  19 QP=20.68 NAL=2 Slice:P Poc:38  I:84   P:525  SKIP:14287 size=1654 bytes
[libx264 @ 0x7fcf1881f600] frame=  20 QP=20.44 NAL=2 Slice:P Poc:40  I:95   P:472  SKIP:14329 size=1654 bytes
[libx264 @ 0x7fcf1881f600] frame=  21 QP=20.39 NAL=2 Slice:P Poc:42  I:104  P:458  SKIP:14334 size=1698 bytes
[libx264 @ 0x7fcf1881f600] frame=  22 QP=20.36 NAL=2 Slice:P Poc:44  I:101  P:444  SKIP:14351 size=1607 bytes
[libx264 @ 0x7fcf1881f600] frame=  23 QP=20.15 NAL=2 Slice:P Poc:46  I:86   P:490  SKIP:14320 size=1814 bytes
[libx264 @ 0x7fcf1881f600] frame=  24 QP=20.26 NAL=2 Slice:P Poc:48  I:81   P:450  SKIP:14365 size=1476 bytes
[libx264 @ 0x7fcf1881f600] frame=  25 QP=20.60 NAL=2 Slice:P Poc:50  I:81   P:474  SKIP:14341 size=1499 bytes
[libx264 @ 0x7fcf1881f600] frame=  26 QP=20.30 NAL=2 Slice:P Poc:52  I:99   P:429  SKIP:14368 size=1534 bytes
[libx264 @ 0x7fcf1881f600] frame=  27 QP=20.25 NAL=2 Slice:P Poc:54  I:93   P:437  SKIP:14366 size=1509 bytes
[libx264 @ 0x7fcf1881f600] frame=  28 QP=20.23 NAL=2 Slice:P Poc:56  I:99   P:431  SKIP:14366 size=1523 bytes
[libx264 @ 0x7fcf1881f600] frame=  29 QP=20.24 NAL=2 Slice:P Poc:58  I:97   P:419  SKIP:14380 size=1487 bytes
[libx264 @ 0x7fcf1881f600] frame=  30 QP=20.23 NAL=2 Slice:P Poc:60  I:98   P:415  SKIP:14383 size=1503 bytes
[libx264 @ 0x7fcf1881f600] frame=  31 QP=20.24 NAL=2 Slice:P Poc:62  I:96   P:408  SKIP:14392 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame=  32 QP=20.23 NAL=2 Slice:P Poc:64  I:100  P:394  SKIP:14402 size=1461 bytes
[libx264 @ 0x7fcf1881f600] frame=  33 QP=20.25 NAL=2 Slice:P Poc:66  I:95   P:398  SKIP:14403 size=1436 bytes
[libx264 @ 0x7fcf1881f600] frame=  34 QP=20.25 NAL=2 Slice:P Poc:68  I:99   P:392  SKIP:14405 size=1447 bytes
[libx264 @ 0x7fcf1881f600] frame=  35 QP=20.39 NAL=2 Slice:P Poc:70  I:97   P:389  SKIP:14410 size=1420 bytes
[libx264 @ 0x7fcf1881f600] frame=  36 QP=20.23 NAL=2 Slice:P Poc:72  I:98   P:396  SKIP:14402 size=1453 bytes
[libx264 @ 0x7fcf1881f600] frame=  37 QP=20.24 NAL=2 Slice:P Poc:74  I:96   P:396  SKIP:14404 size=1435 bytes
[libx264 @ 0x7fcf1881f600] frame=  38 QP=20.23 NAL=2 Slice:P Poc:76  I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame=  39 QP=20.24 NAL=2 Slice:P Poc:78  I:95   P:394  SKIP:14407 size=1423 bytes
[libx264 @ 0x7fcf1881f600] frame=  40 QP=20.23 NAL=2 Slice:P Poc:80  I:99   P:391  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  41 QP=20.24 NAL=2 Slice:P Poc:82  I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame=  42 QP=20.23 NAL=2 Slice:P Poc:84  I:98   P:395  SKIP:14403 size=1450 bytes
[libx264 @ 0x7fcf1881f600] frame=  43 QP=20.24 NAL=2 Slice:P Poc:86  I:96   P:395  SKIP:14405 size=1424 bytes
[libx264 @ 0x7fcf1881f600] frame=  44 QP=20.23 NAL=2 Slice:P Poc:88  I:100  P:389  SKIP:14407 size=1446 bytes
[libx264 @ 0x7fcf1881f600] frame=  45 QP=20.24 NAL=2 Slice:P Poc:90  I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  46 QP=20.23 NAL=2 Slice:P Poc:92  I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  47 QP=20.24 NAL=2 Slice:P Poc:94  I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame=  48 QP=20.23 NAL=2 Slice:P Poc:96  I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  49 QP=20.24 NAL=2 Slice:P Poc:98  I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  50 QP=20.23 NAL=2 Slice:P Poc:100 I:100  P:388  SKIP:14408 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  51 QP=20.24 NAL=2 Slice:P Poc:102 I:95   P:395  SKIP:14406 size=1422 bytes
[libx264 @ 0x7fcf1881f600] frame=  52 QP=20.23 NAL=2 Slice:P Poc:104 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame=  53 QP=20.24 NAL=2 Slice:P Poc:106 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame=  54 QP=20.23 NAL=2 Slice:P Poc:108 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  55 QP=20.24 NAL=2 Slice:P Poc:110 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame=  56 QP=20.23 NAL=2 Slice:P Poc:112 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame=  57 QP=20.24 NAL=2 Slice:P Poc:114 I:95   P:398  SKIP:14403 size=1434 bytes
[libx264 @ 0x7fcf1881f600] frame=  58 QP=20.23 NAL=2 Slice:P Poc:116 I:99   P:394  SKIP:14403 size=1450 bytes
[libx264 @ 0x7fcf1881f600] frame=  59 QP=20.24 NAL=2 Slice:P Poc:118 I:97   P:388  SKIP:14411 size=1416 bytes
[libx264 @ 0x7fcf1881f600] frame=  60 QP=20.23 NAL=2 Slice:P Poc:120 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  61 QP=20.24 NAL=2 Slice:P Poc:122 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  62 QP=20.23 NAL=2 Slice:P Poc:124 I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame=  63 QP=20.24 NAL=2 Slice:P Poc:126 I:95   P:393  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame=  64 QP=20.23 NAL=2 Slice:P Poc:128 I:99   P:393  SKIP:14404 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame=  65 QP=20.24 NAL=2 Slice:P Poc:130 I:97   P:389  SKIP:14410 size=1425 bytes
[libx264 @ 0x7fcf1881f600] frame=  66 QP=20.23 NAL=2 Slice:P Poc:132 I:98   P:394  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame=  67 QP=20.24 NAL=2 Slice:P Poc:134 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame=  68 QP=20.23 NAL=2 Slice:P Poc:136 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame=  69 QP=20.24 NAL=2 Slice:P Poc:138 I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  70 QP=20.23 NAL=2 Slice:P Poc:140 I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  71 QP=20.24 NAL=2 Slice:P Poc:142 I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame=  72 QP=20.23 NAL=2 Slice:P Poc:144 I:98   P:394  SKIP:14404 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame=  73 QP=20.24 NAL=2 Slice:P Poc:146 I:96   P:396  SKIP:14404 size=1433 bytes
[libx264 @ 0x7fcf1881f600] frame=  74 QP=20.23 NAL=2 Slice:P Poc:148 I:100  P:388  SKIP:14408 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  75 QP=20.24 NAL=2 Slice:P Poc:150 I:95   P:393  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame=  76 QP=20.23 NAL=2 Slice:P Poc:152 I:99   P:391  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  77 QP=20.24 NAL=2 Slice:P Poc:154 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame=  78 QP=20.23 NAL=2 Slice:P Poc:156 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  79 QP=20.24 NAL=2 Slice:P Poc:158 I:96   P:394  SKIP:14406 size=1422 bytes
[libx264 @ 0x7fcf1881f600] frame=  80 QP=20.23 NAL=2 Slice:P Poc:160 I:100  P:388  SKIP:14408 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  81 QP=20.24 NAL=2 Slice:P Poc:162 I:95   P:397  SKIP:14404 size=1432 bytes
[libx264 @ 0x7fcf1881f600] frame=  82 QP=20.23 NAL=2 Slice:P Poc:164 I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  83 QP=20.24 NAL=2 Slice:P Poc:166 I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame=  84 QP=20.23 NAL=2 Slice:P Poc:168 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  85 QP=20.24 NAL=2 Slice:P Poc:170 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  86 QP=20.23 NAL=2 Slice:P Poc:172 I:100  P:388  SKIP:14408 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame=  87 QP=20.24 NAL=2 Slice:P Poc:174 I:95   P:395  SKIP:14406 size=1422 bytes
[libx264 @ 0x7fcf1881f600] frame=  88 QP=20.23 NAL=2 Slice:P Poc:176 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame=  89 QP=20.24 NAL=2 Slice:P Poc:178 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame=  90 QP=20.23 NAL=2 Slice:P Poc:180 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame=  91 QP=20.24 NAL=2 Slice:P Poc:182 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame=  92 QP=20.23 NAL=2 Slice:P Poc:184 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame=  93 QP=20.24 NAL=2 Slice:P Poc:186 I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  94 QP=20.23 NAL=2 Slice:P Poc:188 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame=  95 QP=20.24 NAL=2 Slice:P Poc:190 I:97   P:387  SKIP:14412 size=1415 bytes
[libx264 @ 0x7fcf1881f600] frame=  96 QP=20.23 NAL=2 Slice:P Poc:192 I:98   P:394  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame=  97 QP=20.24 NAL=2 Slice:P Poc:194 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame=  98 QP=20.23 NAL=2 Slice:P Poc:196 I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame=  99 QP=20.24 NAL=2 Slice:P Poc:198 I:95   P:393  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 100 QP=20.23 NAL=2 Slice:P Poc:200 I:99   P:391  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 101 QP=20.24 NAL=2 Slice:P Poc:202 I:97   P:389  SKIP:14410 size=1425 bytes
[libx264 @ 0x7fcf1881f600] frame= 102 QP=20.23 NAL=2 Slice:P Poc:204 I:98   P:394  SKIP:14404 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame= 103 QP=20.24 NAL=2 Slice:P Poc:206 I:96   P:394  SKIP:14406 size=1422 bytes
[libx264 @ 0x7fcf1881f600] frame= 104 QP=20.23 NAL=2 Slice:P Poc:208 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame= 105 QP=20.24 NAL=2 Slice:P Poc:210 I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 106 QP=20.23 NAL=2 Slice:P Poc:212 I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame= 107 QP=20.24 NAL=2 Slice:P Poc:214 I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame= 108 QP=20.23 NAL=2 Slice:P Poc:216 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 109 QP=20.24 NAL=2 Slice:P Poc:218 I:96   P:396  SKIP:14404 size=1433 bytes
[libx264 @ 0x7fcf1881f600] frame= 110 QP=20.23 NAL=2 Slice:P Poc:220 I:100  P:388  SKIP:14408 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame= 111 QP=20.24 NAL=2 Slice:P Poc:222 I:95   P:395  SKIP:14406 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame= 112 QP=20.23 NAL=2 Slice:P Poc:224 I:99   P:391  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 113 QP=20.24 NAL=2 Slice:P Poc:226 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame= 114 QP=20.23 NAL=2 Slice:P Poc:228 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 115 QP=20.24 NAL=2 Slice:P Poc:230 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 116 QP=20.23 NAL=2 Slice:P Poc:232 I:100  P:388  SKIP:14408 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 117 QP=20.24 NAL=2 Slice:P Poc:234 I:95   P:397  SKIP:14404 size=1433 bytes
[libx264 @ 0x7fcf1881f600] frame= 118 QP=20.23 NAL=2 Slice:P Poc:236 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame= 119 QP=20.24 NAL=2 Slice:P Poc:238 I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame= 120 QP=20.23 NAL=2 Slice:P Poc:240 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 121 QP=20.24 NAL=2 Slice:P Poc:242 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 122 QP=20.23 NAL=2 Slice:P Poc:244 I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame= 123 QP=20.24 NAL=2 Slice:P Poc:246 I:95   P:393  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 124 QP=20.23 NAL=2 Slice:P Poc:248 I:99   P:393  SKIP:14404 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame= 125 QP=20.24 NAL=2 Slice:P Poc:250 I:97   P:389  SKIP:14410 size=1425 bytes
[libx264 @ 0x7fcf1881f600] frame= 126 QP=20.23 NAL=2 Slice:P Poc:252 I:98   P:394  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame= 127 QP=20.24 NAL=2 Slice:P Poc:254 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 128 QP=20.23 NAL=2 Slice:P Poc:256 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame= 129 QP=20.24 NAL=2 Slice:P Poc:258 I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 130 QP=20.23 NAL=2 Slice:P Poc:260 I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame= 131 QP=20.24 NAL=2 Slice:P Poc:262 I:97   P:387  SKIP:14412 size=1415 bytes
[libx264 @ 0x7fcf1881f600] frame= 132 QP=20.23 NAL=2 Slice:P Poc:264 I:98   P:394  SKIP:14404 size=1449 bytes
[libx264 @ 0x7fcf1881f600] frame= 133 QP=20.24 NAL=2 Slice:P Poc:266 I:96   P:396  SKIP:14404 size=1432 bytes
[libx264 @ 0x7fcf1881f600] frame= 134 QP=20.23 NAL=2 Slice:P Poc:268 I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame= 135 QP=20.24 NAL=2 Slice:P Poc:270 I:95   P:393  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 136 QP=20.23 NAL=2 Slice:P Poc:272 I:99   P:391  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 137 QP=20.24 NAL=2 Slice:P Poc:274 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame= 138 QP=20.23 NAL=2 Slice:P Poc:276 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 139 QP=20.24 NAL=2 Slice:P Poc:278 I:96   P:394  SKIP:14406 size=1422 bytes
[libx264 @ 0x7fcf1881f600] frame= 140 QP=20.23 NAL=2 Slice:P Poc:280 I:100  P:388  SKIP:14408 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 141 QP=20.24 NAL=2 Slice:P Poc:282 I:95   P:397  SKIP:14404 size=1432 bytes
[libx264 @ 0x7fcf1881f600] frame= 142 QP=20.23 NAL=2 Slice:P Poc:284 I:99   P:391  SKIP:14406 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame= 143 QP=20.24 NAL=2 Slice:P Poc:286 I:97   P:385  SKIP:14414 size=1411 bytes
[libx264 @ 0x7fcf1881f600] frame= 144 QP=20.23 NAL=2 Slice:P Poc:288 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 145 QP=20.24 NAL=2 Slice:P Poc:290 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 146 QP=20.23 NAL=2 Slice:P Poc:292 I:100  P:388  SKIP:14408 size=1444 bytes
[libx264 @ 0x7fcf1881f600] frame= 147 QP=20.24 NAL=2 Slice:P Poc:294 I:95   P:395  SKIP:14406 size=1422 bytes
No more output streams to write to, finishing.e=00:00:01.47 bitrate=3622.7kbits/s dup=199 drop=0 speed=0.603x
[libx264 @ 0x7fcf1881f600] frame= 148 QP=20.23 NAL=2 Slice:P Poc:296 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame= 149 QP=20.24 NAL=2 Slice:P Poc:298 I:97   P:387  SKIP:14412 size=1421 bytes
[libx264 @ 0x7fcf1881f600] frame= 150 QP=20.23 NAL=2 Slice:P Poc:300 I:98   P:392  SKIP:14406 size=1445 bytes
[libx264 @ 0x7fcf1881f600] frame= 151 QP=20.24 NAL=2 Slice:P Poc:302 I:96   P:392  SKIP:14408 size=1418 bytes
[libx264 @ 0x7fcf1881f600] frame= 152 QP=20.23 NAL=2 Slice:P Poc:304 I:100  P:386  SKIP:14410 size=1441 bytes
[libx264 @ 0x7fcf1881f600] frame= 153 QP=20.24 NAL=2 Slice:P Poc:306 I:95   P:395  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 154 QP=20.23 NAL=2 Slice:P Poc:308 I:99   P:393  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] scene cut at 199 Icost:2032865 Pcost:2025211 ratio:0.0038 bias:0.3320 gop:199 (imb:14323 pmb:77)
[libx264 @ 0x7fcf1881f600] frame= 155 QP=20.24 NAL=2 Slice:P Poc:310 I:97   P:387  SKIP:14412 size=1415 bytes
[libx264 @ 0x7fcf1881f600] frame= 156 QP=20.23 NAL=2 Slice:P Poc:312 I:98   P:394  SKIP:14404 size=1448 bytes
[libx264 @ 0x7fcf1881f600] frame= 157 QP=20.24 NAL=2 Slice:P Poc:314 I:96   P:394  SKIP:14406 size=1429 bytes
[libx264 @ 0x7fcf1881f600] frame= 158 QP=20.23 NAL=2 Slice:P Poc:316 I:100  P:386  SKIP:14410 size=1440 bytes
[libx264 @ 0x7fcf1881f600] frame= 159 QP=20.32 NAL=2 Slice:P Poc:318 I:90   P:379  SKIP:14427 size=1361 bytes
[libx264 @ 0x7fcf1881f600] frame= 160 QP=20.31 NAL=2 Slice:P Poc:320 I:90   P:368  SKIP:14438 size=1341 bytes
[libx264 @ 0x7fcf1881f600] frame= 161 QP=20.41 NAL=2 Slice:P Poc:322 I:88   P:340  SKIP:14468 size=1226 bytes
[libx264 @ 0x7fcf1881f600] frame= 162 QP=20.49 NAL=2 Slice:P Poc:324 I:87   P:330  SKIP:14479 size=1198 bytes
[libx264 @ 0x7fcf1881f600] frame= 163 QP=20.51 NAL=2 Slice:P Poc:326 I:82   P:316  SKIP:14498 size=1126 bytes
[libx264 @ 0x7fcf1881f600] frame= 164 QP=20.54 NAL=2 Slice:P Poc:328 I:83   P:303  SKIP:14510 size=1098 bytes
[libx264 @ 0x7fcf1881f600] frame= 165 QP=20.57 NAL=2 Slice:P Poc:330 I:75   P:293  SKIP:14528 size=1026 bytes
[libx264 @ 0x7fcf1881f600] frame= 166 QP=20.59 NAL=2 Slice:P Poc:332 I:82   P:282  SKIP:14532 size=1024 bytes
[libx264 @ 0x7fcf1881f600] frame= 167 QP=20.63 NAL=2 Slice:P Poc:334 I:70   P:276  SKIP:14550 size=947 bytes
[libx264 @ 0x7fcf1881f600] frame= 168 QP=20.13 NAL=2 Slice:P Poc:336 I:74   P:295  SKIP:14527 size=1084 bytes
[libx264 @ 0x7fcf1881f600] frame= 169 QP=20.23 NAL=2 Slice:P Poc:338 I:70   P:280  SKIP:14546 size=1002 bytes
[libx264 @ 0x7fcf1881f600] frame= 170 QP=20.68 NAL=2 Slice:P Poc:340 I:71   P:265  SKIP:14560 size=983 bytes
[libx264 @ 0x7fcf1881f600] frame= 171 QP=20.26 NAL=2 Slice:P Poc:342 I:71   P:262  SKIP:14563 size=950 bytes
[libx264 @ 0x7fcf1881f600] frame= 172 QP=20.16 NAL=2 Slice:P Poc:344 I:68   P:280  SKIP:14548 size=1032 bytes
[libx264 @ 0x7fcf1881f600] frame= 173 QP=20.64 NAL=2 Slice:P Poc:346 I:73   P:256  SKIP:14567 size=972 bytes
[libx264 @ 0x7fcf1881f600] frame= 174 QP=20.26 NAL=2 Slice:P Poc:348 I:67   P:254  SKIP:14575 size=922 bytes
[libx264 @ 0x7fcf1881f600] frame= 175 QP=20.40 NAL=2 Slice:P Poc:350 I:71   P:248  SKIP:14577 size=901 bytes
[libx264 @ 0x7fcf1881f600] frame= 176 QP=20.58 NAL=2 Slice:P Poc:352 I:68   P:235  SKIP:14593 size=818 bytes
[libx264 @ 0x7fcf1881f600] frame= 177 QP=21.19 NAL=2 Slice:P Poc:354 I:67   P:236  SKIP:14593 size=776 bytes
[libx264 @ 0x7fcf1881f600] frame= 178 QP=20.74 NAL=2 Slice:P Poc:356 I:66   P:237  SKIP:14593 size=782 bytes
[libx264 @ 0x7fcf1881f600] frame= 179 QP=21.43 NAL=2 Slice:P Poc:358 I:63   P:237  SKIP:14596 size=743 bytes
[libx264 @ 0x7fcf1881f600] frame= 180 QP=21.66 NAL=2 Slice:P Poc:360 I:58   P:234  SKIP:14604 size=709 bytes
[libx264 @ 0x7fcf1881f600] frame= 181 QP=21.74 NAL=2 Slice:P Poc:362 I:56   P:241  SKIP:14599 size=699 bytes
[libx264 @ 0x7fcf1881f600] frame= 182 QP=21.05 NAL=2 Slice:P Poc:364 I:63   P:259  SKIP:14574 size=811 bytes
[libx264 @ 0x7fcf1881f600] frame= 183 QP=21.19 NAL=2 Slice:P Poc:366 I:59   P:248  SKIP:14589 size=741 bytes
[libx264 @ 0x7fcf1881f600] frame= 184 QP=21.21 NAL=2 Slice:P Poc:368 I:54   P:254  SKIP:14588 size=738 bytes
[libx264 @ 0x7fcf1881f600] frame= 185 QP=21.21 NAL=2 Slice:P Poc:370 I:55   P:257  SKIP:14584 size=730 bytes
[libx264 @ 0x7fcf1881f600] frame= 186 QP=21.21 NAL=2 Slice:P Poc:372 I:54   P:254  SKIP:14588 size=723 bytes
[libx264 @ 0x7fcf1881f600] frame= 187 QP=22.17 NAL=2 Slice:P Poc:374 I:54   P:262  SKIP:14580 size=729 bytes
[libx264 @ 0x7fcf1881f600] frame= 188 QP=22.17 NAL=2 Slice:P Poc:376 I:51   P:267  SKIP:14578 size=711 bytes
[libx264 @ 0x7fcf1881f600] frame= 189 QP=22.17 NAL=2 Slice:P Poc:378 I:51   P:259  SKIP:14586 size=689 bytes
[libx264 @ 0x7fcf1881f600] frame= 190 QP=22.21 NAL=2 Slice:P Poc:380 I:52   P:252  SKIP:14592 size=666 bytes
[libx264 @ 0x7fcf1881f600] frame= 191 QP=23.17 NAL=2 Slice:P Poc:382 I:48   P:201  SKIP:14647 size=523 bytes
[libx264 @ 0x7fcf1881f600] frame= 192 QP=23.19 NAL=2 Slice:P Poc:384 I:41   P:197  SKIP:14658 size=497 bytes
[libx264 @ 0x7fcf1881f600] frame= 193 QP=23.21 NAL=2 Slice:P Poc:386 I:44   P:193  SKIP:14659 size=489 bytes
[libx264 @ 0x7fcf1881f600] frame= 194 QP=24.19 NAL=2 Slice:P Poc:388 I:46   P:185  SKIP:14665 size=464 bytes
[libx264 @ 0x7fcf1881f600] frame= 195 QP=24.21 NAL=2 Slice:P Poc:390 I:45   P:181  SKIP:14670 size=444 bytes
[libx264 @ 0x7fcf1881f600] frame= 196 QP=25.19 NAL=2 Slice:P Poc:392 I:43   P:177  SKIP:14676 size=439 bytes
[libx264 @ 0x7fcf1881f600] frame= 197 QP=26.19 NAL=2 Slice:P Poc:394 I:39   P:143  SKIP:14714 size=349 bytes
[libx264 @ 0x7fcf1881f600] frame= 198 QP=28.21 NAL=2 Slice:P Poc:396 I:26   P:92   SKIP:14778 size=250 bytes
[libx264 @ 0x7fcf1881f600] frame= 199 QP=24.97 NAL=3 Slice:I Poc:0   I:14896 P:0    SKIP:0    size=73782 bytes
[libx264 @ 0x7fcf1881f600] frame= 200 QP=27.48 NAL=2 Slice:P Poc:2   I:2    P:36   SKIP:14858 size=115 bytes
[mp4 @ 0x7fcf1881e400] Starting second pass: moving the moov atom to the beginning of the file
[file @ 0x7fcf1841ab60] Setting default whitelist 'file,crypto'
[AVIOContext @ 0x7fcf1841ade0] Statistics: 788092 bytes read, 0 seeks
frame=  201 fps= 69 q=-1.0 Lsize=     771kB time=00:00:02.00 bitrate=3158.6kbits/s dup=199 drop=0 speed=0.69x
video:770kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.206461%
Input file #0 (imagefromIO.gif):
  Input stream #0:0 (video): 2 packets read (3316872 bytes); 2 frames decoded;
  Total: 2 packets (3316872 bytes) demuxed
Output file #0 (imagefromIO.mp4):
  Output stream #0:0 (video): 201 frames encoded; 201 packets muxed (788043 bytes);
  Total: 201 packets (788043 bytes) muxed
2 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x7fcf18419640] Statistics: 36 seeks, 266 writeouts
[libx264 @ 0x7fcf1881f600] frame I:2     Avg QP:23.17  size:246584
[libx264 @ 0x7fcf1881f600] frame P:199   Avg QP:20.60  size:  1479
[libx264 @ 0x7fcf1881f600] mb I  I16..4: 60.8%  0.0% 39.2%
[libx264 @ 0x7fcf1881f600] mb P  I16..4:  0.5%  0.0%  0.1%  P16..4:  1.7%  0.4%  0.7%  0.0%  0.0%    skip:96.6%
[libx264 @ 0x7fcf1881f600] coded y,uvDC,uvAC intra: 42.4% 59.6% 8.2% inter: 0.0% 1.5% 0.0%
[libx264 @ 0x7fcf1881f600] i16 v,h,dc,p: 48% 28% 14%  9%
[libx264 @ 0x7fcf1881f600] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 17% 31% 28%  5%  4%  2%  4%  2%  5%
[libx264 @ 0x7fcf1881f600] i8c dc,h,v,p: 73% 12% 13%  1%
[libx264 @ 0x7fcf1881f600] ref P L0: 67.5% 32.5%
[libx264 @ 0x7fcf1881f600] kb/s:3133.98
[AVIOContext @ 0x7fcf18417a40] Statistics: 6650772 bytes read, 2 seeks

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Change History (9)

comment:1 Changed 5 months ago by okor

  • Priority changed from normal to important

comment:2 Changed 4 months ago by cehoyos

  • Component changed from ffmpeg to avfilter
  • Keywords fps added; gif removed
  • Priority changed from important to normal
  • Reproduced by developer set
  • Status changed from new to open

Not a regression afaict.

comment:3 Changed 4 months ago by okor

Would it help to start a bounty or donate? I really appreciate all the help.

comment:4 Changed 4 months ago by Gyan

Works if you call scale from within a filter_complex.

λ ffmpeg -i 7GPW_LivingRoom.gif -filter_complex scale=-2:-2 fc-out.mp4
ffmpeg version N-85457-g8378466507 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 6.3.0 (Rev2, Built by MSYS2 project)
  configuration:  --enable-avisynth --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-cuda --enable-cuvid --enable-schannel --enable-decklink --enable-fontconfig --enable-frei0r --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libilbc --enable-libmfx --enable-libmodplug --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libwavpack --enable-libwebp --enable-libxavs --enable-libxvid --enable-libzimg --enable-openssl --enable-libsnappy --enable-gpl --enable-opencl --enable-opengl --enable-libcdio --enable-libfdk-aac --enable-libkvazaar --enable-librubberband --enable-libssh --enable-libtesseract --enable-libzvbi --enable-chromaprint --enable-libopenh264 --enable-libopenmpt --enable-netcdf --enable-sdl2 --enable-libzmq --extra-cflags=-DLIBTWOLAME_STATIC --extra-cflags=-fopenmp --extra-libs=-lgomp --extra-libs=-lstdc++ --extra-cflags=-DLIBSSH_STATIC --extra-ldflags='-Wl,--allow-multiple-definition' --extra-cflags=-DCACA_STATIC --extra-cflags=-DMODPLUG_STATIC --extra-cflags=-DCHROMAPRINT_NODLL --extra-libs=-lstdc++ --extra-cflags=-DZMQ_STATIC --disable-w32threads --extra-cflags=-DPTW32_STATIC_LIB --extra-libs=-lpthread --extra-libs=-lwsock32 --extra-cflags=-DKVZ_STATIC_LIB --enable-version3 --enable-nonfree --enable-filter=frei0r --disable-debug
  libavutil      55. 61.100 / 55. 61.100
  libavcodec     57. 92.100 / 57. 92.100
  libavformat    57. 72.100 / 57. 72.100
  libavdevice    57.  7.100 / 57.  7.100
  libavfilter     6. 84.101 /  6. 84.101
  libswscale      4.  7.100 /  4.  7.100
  libswresample   2.  8.100 /  2.  8.100
  libpostproc    54.  6.100 / 54.  6.100
Input #0, gif, from '7GPW_LivingRoom.gif':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: gif, bgra, 2432x1556, 100 tbr, 100 tbn, 100 tbc
Stream mapping:
  Stream #0:0 (gif) -> scale
  scale -> Stream #0:0 (libx264)
Press [q] to stop, [?] for help
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 00000000004bc800] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 AVX2 LZCNT BMI2
[libx264 @ 00000000004bc800] profile High 4:4:4 Predictive, level 5.2, 4:4:4 8-bit
[libx264 @ 00000000004bc800] 264 - core 148 r2762 90a61ec - 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=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=6 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 'fc-out.mp4':
  Metadata:
    encoder         : Lavf57.72.100
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv444p, 2432x1556, q=-1--1, 100 fps, 12800 tbn, 100 tbc
    Metadata:
      encoder         : Lavc57.92.100 libx264
    Side data:
      cpb: bitrate max/min/avg: 0/0/0 buffer size: 0 vbv_delay: -1
frame=  400 fps= 33 q=-1.0 Lsize=     937kB time=00:00:03.97 bitrate=1932.9kbits/s dup=398 drop=0 speed=0.324x
video:931kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.589860%
[libx264 @ 00000000004bc800] frame I:2     Avg QP:19.71  size:443142
[libx264 @ 00000000004bc800] frame P:100   Avg QP:22.09  size:   292
[libx264 @ 00000000004bc800] frame B:298   Avg QP:30.84  size:   126
[libx264 @ 00000000004bc800] consecutive B-frames:  0.5%  0.0%  1.5% 98.0%
[libx264 @ 00000000004bc800] mb I  I16..4:  8.8% 87.2%  4.1%
[libx264 @ 00000000004bc800] mb P  I16..4:  0.0%  0.0%  0.0%  P16..4:  0.1%  0.1%  0.7%  0.0%  0.0%    skip:99.1%
[libx264 @ 00000000004bc800] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  0.1%  0.0%  0.0%  direct: 0.0%  skip:99.9%  L0:30.3% L1:69.7% BI: 0.0%

[libx264 @ 00000000004bc800] 8x8 transform intra:86.8% inter:91.3%
[libx264 @ 00000000004bc800] coded y,u,v intra: 95.9% 46.8% 42.9% inter: 0.0% 0.0% 0.0%
[libx264 @ 00000000004bc800] i16 v,h,dc,p: 12% 41% 38%  9%
[libx264 @ 00000000004bc800] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu: 14% 35% 29%  5%  4%  2%  3%  2%  7%
[libx264 @ 00000000004bc800] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 39% 17% 15%  6%  5%  3%  5%  3%  7%
[libx264 @ 00000000004bc800] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 00000000004bc800] ref P L0: 92.0%  0.6%  4.6%  2.8%
[libx264 @ 00000000004bc800] ref B L0: 61.0% 37.9%  1.1%
[libx264 @ 00000000004bc800] ref B L1: 66.0% 34.0%
[libx264 @ 00000000004bc800] kb/s:1905.86

comment:5 Changed 4 months ago by okor

Ah, so it does. The other filter I'm using with gifs creates a canvas to set the background color for transparent regions in gifs: ffmpeg -f lavfi -i color=000000 -i livingroom.gif -filter_complex "[0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1, scale=-2:-2" livingroom.mp4

And that results in a 2 second video yet again.

Or just with the canvas filter: ffmpeg -f lavfi -i color=000000 -i livingroom.gif -filter_complex "[0][1]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1, scale=-2:-2" livingroom.mp4

Same thing, a 2 second video where I'd expect a 4 second video.

So maybe some filters break the gif timings and others do not? And possibly all simple filters.

comment:6 Changed 4 months ago by Gyan

There's a hack method which works if you use a build from earlier than 23rd Dec 2016.

ffmpeg -f lavfi -i color=000000 -i 7GPW_LivingRoom.gif -filter_complex "[1]reverse,trim=end_frame=1[t];[1][t]concat[g];[0][g]scale2ref[bg][gif];[bg]setsar=1[bg];[bg][gif]overlay=shortest=1,scale=-2:-2" livingroom.mp4

The idea is to duplicate the last frame of the GIF and append it to itself, and use that going forward. The reason for the 23 Dec 2016 cutoff is because there's a bug (#6292) with some video filters at present, involving the shortest option.

comment:7 follow-up: Changed 4 months ago by okor

A command so intuitive it almost writes itself : D

But really, thank you very much Gyan, I appreciate in the workaround. I'll probably run with this in the mean time. I'll leave this ticket open though since it's still valid.

Would it be safe to assume that this "hack" would work with later stable versions of ffmpeg? Works well with 3.2.4 which I believe is what is considered stable.

comment:8 Changed 4 months ago by Gyan

As long as shortest=1 works, it should work.

comment:9 in reply to: ↑ 7 Changed 4 months ago by cehoyos

Replying to okor:

Works well with 3.2.4 which I believe is what is considered stable.

The release branch 3.2 is neither more stable nor less stable than any other branch including the development branch but all release branches and all releases are known to contain more bugs and less features than the development branch.
Distributors have to ship releases, users have the advantage that they can use current FFmpeg.

Note: See TracTickets for help on using tickets.