Opened 10 years ago

Closed 10 years ago

#1159 closed defect (fixed)

framecrc documentation is out of date

Reported by: dave rice Owned by:
Priority: minor Component: documentation
Version: git-master Keywords: framecrc
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: yes

Description

From http://ffmpeg.org/ffmpeg.html#framecrc: "The output of the muxer consists of a line for each audio and video frame of the form: stream_index, frame_dts, frame_size, 0xCRC, where CRC is a hexadecimal number 0-padded to 8 digits containing the CRC of the decoded frame."

To create a framecrc output I used this source file, http://archive.org/download/SoundieF/SoundieF.mpeg, and this command:

ffmpeg started on 2012-04-02 at 00:17:48
Report written to "ffmpeg-20120402-001748.log"
Command line:
ffmpeg -report -t 0.1 -i SoundieF.mpeg -f framecrc SoundieF.framecrc
ffmpeg version N-35765-gf9143d2 Copyright (c) 2000-2012 the FFmpeg developers
  built on Mar 31 2012 12:44:33 with llvm_gcc 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
  configuration: --prefix=/usr/local/Cellar/ffmpeg/HEAD --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-libfreetype --cc=/usr/bin/llvm-gcc --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libxvid --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libass --disable-ffplay
  libavutil      51. 44.100 / 51. 44.100
  libavcodec     54. 12.100 / 54. 12.100
  libavformat    54.  3.100 / 54.  3.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 66.101 /  2. 66.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 10.100 /  0. 10.100
  libpostproc    52.  0.100 / 52.  0.100
[mpeg @ 0x7f9eea84b400] Format mpeg probed with size=4096 and score=52
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2500
[mpeg @ 0x7f9eea84b400] Probe with size=794, packets=1 detected mpegvideo with score=25
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2499
[mpeg @ 0x7f9eea84b400] Probe with size=2809, packets=2 detected mpegvideo with score=25
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2498
[mpeg @ 0x7f9eea84b400] Probe with size=4824, packets=3 detected mpegvideo with score=25
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2497
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2496
[mpeg @ 0x7f9eea84b400] Probe with size=8854, packets=5 detected mpegvideo with score=25
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2495
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2494
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2493
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2492
[mpeg @ 0x7f9eea84b400] Probe with size=16914, packets=9 detected mpegvideo with score=25
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2491
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2490
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2489
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2488
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2487
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2486
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2485
[mpeg @ 0x7f9eea84b400] probing stream 0 pp:2484
[mpeg @ 0x7f9eea84b400] Probe with size=33034, packets=17 detected mpegvideo with score=51
[mpeg @ 0x7f9eea84b400] probed stream 0
[mpeg @ 0x7f9eea84b400] max_analyze_duration 5000000 reached at 5005000
Input #0, mpeg, from 'SoundieF.mpeg':
  Duration: 00:02:24.10, start: 839.378778, bitrate: 3786 kb/s
    Stream #0:0[0x1e0], 152, 1/90000: Video: mpeg2video (Main), yuv420p, 352x480 [SAR 20:11 DAR 4:3], 3500 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x1c0], 193, 1/90000: Audio: mp2, 48000 Hz, 2 channels, s16, 224 kb/s
[buffer @ 0x7f9eea41a920] w:352 h:480 pixfmt:yuv420p tb:1/1000000 sar:20/11 sws_param:flags=2
[mpeg2video @ 0x7f9eea853a00] detected 2 logical cores
Output #0, framecrc, to 'SoundieF.framecrc':
  Metadata:
    encoder         : Lavf54.3.100
    Stream #0:0, 0, 1001/30000: Video: rawvideo (I420 / 0x30323449), yuv420p, 352x480 [SAR 20:11 DAR 4:3], q=2-31, 200 kb/s, 29.97 tbn, 29.97 tbc
    Stream #0:1, 0, 1/48000: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video -> rawvideo)
  Stream #0:1 -> #0:1 (mp2 -> pcm_s16le)
Press [q] to stop, [?] for help
timestamp discontinuity 0, new offset= -839378778
frame=    2 fps=0.0 q=0.0 Lsize=       0kB time=00:00:00.12 bitrate=  29.3kbits/s    
video:495kB audio:22kB global headers:0kB muxing overhead -99.917157%

The output file SoundieF.framecrc contained:

#tb 0: 1001/30000
#tb 1: 1/48000
1,          0,          0,     1152,     4608, 0xb9620c2a
1,       1152,       1152,     1152,     4608, 0xf005c83b
1,       2304,       2304,     1152,     4608, 0x721c4ffb
0,          2,          2,        1,   253440, 0x1b2dfe2f
1,       3456,       3456,     1152,     4608, 0x01f6156b
1,       4608,       4608,     1152,     4608, 0x6abc95fe
0,          3,          3,        1,   253440, 0x98dca937

The output contains 6 columns where the documentation only refers to 4. Are columns 2 and 3 duplicates? pts and dts? I presume column 4 is the number of samples used? Also the commented timebase is useful but undocumented.

If relevant I put a similar ticket about framemd5 here: http://ffmpeg.org/trac/ffmpeg/ticket/1153
thanks

Change History (2)

comment:1 by Carl Eugen Hoyos, 10 years ago

Component: undetermineddocumentation
Priority: normalminor
Reproduced by developer: set
Status: newopen

comment:2 by Stefano Sabatini, 10 years ago

Analyzed by developer: set
Resolution: fixed
Status: openclosed

Should be fixed in:

commit fd00662d5a700d4e319be45d2bc60ddb579655ea
Author: Stefano Sabatini <stefasab@gmail.com>
Date:   Sat Apr 7 10:16:27 2012 +0200

    doc/muxers: update documentation for the framecrc muxer
    
    Add mention to the pts and duration log fields, added in
    d2afbd9a56e4e863bad01923006dd9b77f747035.
    
    Fix trac ticket #1159.

Note: See TracTickets for help on using tickets.