Opened 11 years ago

Closed 9 years ago

#2089 closed defect (fixed)

negative bitrates reported when transcoding a 4k v210 file

Reported by: Steve Swanson Owned by:
Priority: minor Component: undetermined
Version: git-master Keywords: v210
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug: when I transcode a 3840x2160 v210 clip to MP4, FFmpeg reports negative bitrates. Output seems to be fine.

How to reproduce:

./ffmpeg -i ~/videosequences/raw/Foreman_10bitYUV.mov -s 320x180 thumb.mp4

Detailed log:

ffmpeg version N-48355-g6e8df25 Copyright (c) 2000-2012 the FFmpeg developers
  built on Dec 31 2012 14:12:24 with llvm-gcc 4.2.1 (LLVM build 2336.1.00)
  configuration: 
  libavutil      52. 13.100 / 52. 13.100
  libavcodec     54. 85.100 / 54. 85.100
  libavformat    54. 58.100 / 54. 58.100
  libavdevice    54.  3.102 / 54.  3.102
  libavfilter     3. 30.102 /  3. 30.102
  libswscale      2.  1.103 /  2.  1.103
  libswresample   0. 17.102 /  0. 17.102
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set libav* logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set libav* logging level) with argument '99'.
Reading option '-i' ... matched as input file with argument '/Users/steves/videosequences/raw/Foreman_10bitYUV.mov'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set libav* logging level) with argument 9.
Successfully parsed a group of options.
Parsing a group of options: input file /Users/steves/videosequences/raw/Foreman_10bitYUV.mov.
Successfully parsed a group of options.
Opening an input file: /Users/steves/videosequences/raw/Foreman_10bitYUV.mov.
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff6c083d800] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff6c083d800] ISO: File Type Major Brand: qt  
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff6c083d800] File position before avformat_find_stream_info() is 5971982083
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff6c083d800] All info found
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff6c083d800] File position after avformat_find_stream_info() is 22118448
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/Users/steves/videosequences/raw/Foreman_10bitYUV.mov':
  Metadata:
    major_brand     : qt  
    minor_version   : 537199360
    compatible_brands: qt  
    creation_time   : 2012-12-18 06:27:34
  Duration: 00:00:11.26, start: 0.000000, bitrate: -2147483 kb/s
    Stream #0:0(eng), 1, 1/24000: Video: v210 (v210 / 0x30313276), yuv422p10le, 3840x2160, 1/24000, -52476 kb/s, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 24k tbn, 24k tbc
    Metadata:
      creation_time   : 2012-12-18 06:27:34
      handler_name    : Apple Alias Data Handler
      timecode        : 00:00:00:00
    Stream #0:1(eng), 0, 1/24000: Data: none (tmcd / 0x64636D74)
    Metadata:
      creation_time   : 2012-12-18 06:38:06
      handler_name    : Apple Alias Data Handler
      timecode        : 00:00:00:00
Successfully openened the file.
At least one output file must be specified
Statistics: 22165203 bytes read, 2 seeks

Note, in particular bitrate: -2147483 kb/s and -52476 kb/s.

This 11 second clip is 5.6Gb. I suggest you synthesize a local clip for testing rather than have me upload it.

Attachments (1)

fix_negative_bitrates.patch (12.2 KB ) - added by Steve Swanson 11 years ago.
reasonably straightforward conversion from int to int64_t

Download all attachments as: .zip

Change History (10)

comment:1 by Steve Swanson, 11 years ago

I have made local changes to correct these values, but am just now learning git.

comment:2 by Carl Eugen Hoyos, 11 years ago

Please provide a (short) sample.

comment:3 by Steve Swanson, 11 years ago

I uploaded Foreman_10bitYUV_1frame.mov to incoming at upload.ffmpeg.org.

comment:4 by Carl Eugen Hoyos, 11 years ago

Reproduced by developer: set
Status: newopen

comment:5 by Carl Eugen Hoyos, 11 years ago

Priority: normalminor

by Steve Swanson, 11 years ago

Attachment: fix_negative_bitrates.patch added

reasonably straightforward conversion from int to int64_t

comment:6 by Hendrik, 11 years ago

Sadly such a conversion breaks at least the ABI and possibly even the API, so its really not that straight forward to add without a major version bump.

comment:7 by Michael Niedermayer, 11 years ago

the negative bitrate is fixed though its N/A now, a complete fix will require a ABI/API change

comment:8 by Carl Eugen Hoyos, 10 years ago

This was unfortunately forgotten at the time of the version bump=-(

comment:9 by Carl Eugen Hoyos, 9 years ago

Keywords: v210 added
Resolution: fixed
Status: openclosed

The container bitrate is correctly shown since c311713ca99cb0556609972ba60d3634dc96c7a0 and I fixed the codec bitrate in 040ddd27bfca5c0427a0bb68ac1b45dc374cd699

Note: See TracTickets for help on using tickets.