Opened 11 years ago

Closed 9 years ago

#2406 closed defect (fixed)

ffmpeg cache protocol bug?

Reported by: testn Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: cache
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:

It looks like the duration is incorrect if cache protocol is used. (cache 00:00:03.71 vs file 00:02:25.68 )

How to reproduce:

$ ffprobe "file:///Users/xxxx/Downloads/Videos/Hellboy.ts" 
[mpeg2video @ 0x7fc6e9015600] 0x0 is invalid
    Last message repeated 29 times
[mpegts @ 0x7fc6e900d000] PES packet size mismatch
Input #0, mpegts, from 'file:///Users/xxxx/Downloads/Videos/Hellboy.ts':
  Duration: 00:02:25.68, start: 41174.341300, bitrate: 10882 kb/s
  Program 1 
    Stream #0:0[0x10]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.42 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x11](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 384 kb/s

$ cat ~/Downloads/Videos/Hellboy.ts |  ffprobe "cache:pipe:0"  
[mpeg2video @ 0x7fd4f9815600] 0x0 is invalid
    Last message repeated 29 times
Input #0, mpegts, from 'cache:pipe:0':
  Duration: 00:00:03.71, start: 41174.341300, bitrate: 11763 kb/s
  Program 1 
    Stream #0:0[0x10]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.42 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x11](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 384 kb/s

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

Change History (6)

comment:1 by Carl Eugen Hoyos, 11 years ago

Is this only reproducible with ffprobe of also with ffmpeg -i ?

comment:2 by testn, 11 years ago

Yes, it's reproducible on both ffprobe and ffmpeg

comment:3 by Carl Eugen Hoyos, 11 years ago

Then please provide the failing ffmpeg command line together with the complete, uncut console output (only report problems against ffprobe if they are not reproducible with ffmpeg).

comment:4 by testn, 11 years ago

The input file can be retrieved from http://samples.mplayerhq.hu/HDTV/Hellboy.ts
Here is the output from ffprobe

$ cat  Videos/Hellboy.ts| ffprobe -i "cache:pipe:0"   
ffprobe version 1.2 Copyright (c) 2007-2013 the FFmpeg developers
  built on Mar 19 2013 10:25:50 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfdk-aac
  libavutil      52. 18.100 / 52. 18.100
  libavcodec     54. 92.100 / 54. 92.100
  libavformat    54. 63.104 / 54. 63.104
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 42.103 /  3. 42.103
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[mpeg2video @ 0x7fe7f4015600] 0x0 is invalid
    Last message repeated 29 times
Input #0, mpegts, from 'cache:pipe:0':
  Duration: 00:00:03.71, start: 41174.341300, bitrate: 11763 kb/s
  Program 1 
    Stream #0:0[0x10]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.42 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x11](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 384 kb/s

and from ffmpeg

$ cat  Videos/Hellboy.ts| ffmpeg -i "cache:pipe:0"   /tmp/test4.mp4
ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
  built on Mar 19 2013 10:25:50 with Apple clang version 4.1 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/1.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --cc=cc --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfdk-aac
  libavutil      52. 18.100 / 52. 18.100
  libavcodec     54. 92.100 / 54. 92.100
  libavformat    54. 63.104 / 54. 63.104
  libavdevice    54.  3.103 / 54.  3.103
  libavfilter     3. 42.103 /  3. 42.103
  libswscale      2.  2.100 /  2.  2.100
  libswresample   0. 17.102 /  0. 17.102
  libpostproc    52.  2.100 / 52.  2.100
[mpeg2video @ 0x7fec9c021400] 0x0 is invalid
    Last message repeated 29 times
Input #0, mpegts, from 'cache:pipe:0':
  Duration: 00:00:03.71, start: 41174.341300, bitrate: 11763 kb/s
  Program 1 
    Stream #0:0[0x10]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 29.42 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x11](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 384 kb/s
[libx264 @ 0x7fec9c019a00] using SAR=1/1
[libx264 @ 0x7fec9c019a00] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2 AVX
[libx264 @ 0x7fec9c019a00] profile High, level 4.0
[libx264 @ 0x7fec9c019a00] 264 - core 125 - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - 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=-2 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 '/tmp/test4.mp4':
  Metadata:
    encoder         : Lavf54.63.104
    Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=-1--1, 30k tbn, 29.97 tbc
    Stream #0:1(eng): Audio: aac ([64][0][0][0] / 0x0040), 48000 Hz, stereo, s16, 128 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video -> libx264)
  Stream #0:1 -> #0:1 (ac3 -> libfaac)
Press [q] to stop, [?] for help
[ac3 @ 0x7fec9c019400] frame sync error
Error while decoding stream #0:1: Operation not permitted
Input stream #0:1 frame changed from rate:48000 fmt:fltp ch:2 chl:stereo to rate:48000 fmt:fltp ch:6 chl:5.1(side)
[libfaac @ 0x7fec9c01a800] Queue input is backward in time
[mp4 @ 0x7fec9c03c600] st:0 PTS: 2048 DTS: 2048 < 2561 invalid, clipping
frame=   24 fps=0.0 q=-1.0 Lsize=      78kB time=00:00:00.73 bitrate= 868.5kbits/s dup=23 drop=0    
video:74kB audio:2kB subtitle:0 global headers:0kB muxing overhead 2.188826%
[libx264 @ 0x7fec9c019a00] frame I:1     Avg QP:27.48  size: 68520
[libx264 @ 0x7fec9c019a00] frame P:6     Avg QP:30.70  size:   570
[libx264 @ 0x7fec9c019a00] frame B:17    Avg QP:29.35  size:   168
[libx264 @ 0x7fec9c019a00] consecutive B-frames:  4.2%  0.0% 12.5% 83.3%
[libx264 @ 0x7fec9c019a00] mb I  I16..4: 63.5%  2.1% 34.3%
[libx264 @ 0x7fec9c019a00] mb P  I16..4:  1.2%  0.0%  0.0%  P16..4:  1.1%  0.1%  0.3%  0.0%  0.0%    skip:97.2%
[libx264 @ 0x7fec9c019a00] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  2.0%  0.0%  0.0%  direct: 0.0%  skip:98.0%  L0:39.0% L1:61.0% BI: 0.0%
[libx264 @ 0x7fec9c019a00] 8x8 transform intra:2.0% inter:96.6%
[libx264 @ 0x7fec9c019a00] coded y,uvDC,uvAC intra: 39.6% 53.6% 26.6% inter: 0.1% 0.1% 0.0%
[libx264 @ 0x7fec9c019a00] i16 v,h,dc,p:  4% 95%  0%  0%
[libx264 @ 0x7fec9c019a00] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu:  1% 71% 20%  0%  0%  0%  0%  0%  7%
[libx264 @ 0x7fec9c019a00] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu:  0% 99%  1%  0%  0%  0%  0%  0%  0%
[libx264 @ 0x7fec9c019a00] i8c dc,h,v,p: 37% 52% 10%  1%
[libx264 @ 0x7fec9c019a00] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 0x7fec9c019a00] ref P L0: 81.7%  2.9% 11.9%  3.4%
[libx264 @ 0x7fec9c019a00] ref B L0: 45.6% 53.9%  0.5%
[libx264 @ 0x7fec9c019a00] ref B L1: 88.4% 11.6%
[libx264 @ 0x7fec9c019a00] kb/s:747.23

comment:5 by Michael Niedermayer, 9 years ago

Keywords: cache added
Version: 1.2git-master

comment:6 by Michael Niedermayer, 9 years ago

Resolution: fixed
Status: newclosed

Fixed in 8706910c4c051dbc7377a702aff11424585d4778
Needs -read_ahead_limit -1

Note: See TracTickets for help on using tickets.