[FFmpeg-trac] #4000(undetermined:new): mpeg4: Magenta color shift in first GOP
FFmpeg
trac at avcodec.org
Fri Oct 3 08:41:16 CEST 2014
#4000: mpeg4: Magenta color shift in first GOP
-------------------------------------+-------------------------------------
Reporter: | Type: defect
ErikCJohansson | Priority: normal
Status: new | Version:
Component: | unspecified
undetermined | Blocked By:
Keywords: | Reproduced by developer: 0
Blocking: |
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
I am encoding a specific repeated DPX still frame to mpeg4 in a MOV
container. The first frame, frame 0, looks ok. Frames 1-11 have a slight
magenta color shift. Frame 12 onwards looks good again. It appears as
though the encoder does a poor job of the first GOP compared to subsequent
GOPs.
The problem seems to be triggered by the attached frame, other input
images work ok.
{{{
ffmpeg started on 2014-10-03 at 08:21:02
Report written to "ffmpeg-20141003-082102.log"
Command line:
./ffmpeg -v 9 -loglevel 99 -i
"/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx" -vcodec
mpeg4 -frames 30 -report ../first_gop_mangenta.mov
ffmpeg version N-66581-g105654e Copyright (c) 2000-2014 the FFmpeg
developers
built on Oct 3 2014 08:07:25 with gcc 4.4.7 (GCC) 20120313 (Red Hat
4.4.7-3)
configuration:
libavutil 54. 9.100 / 54. 9.100
libavcodec 56. 2.101 / 56. 2.101
libavformat 56. 7.102 / 56. 7.102
libavdevice 56. 1.100 / 56. 1.100
libavfilter 5. 1.102 / 5. 1.102
libswscale 3. 1.100 / 3. 1.100
libswresample 1. 1.100 / 1. 1.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 '-i' ... matched as input file with argument
'/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx'.
Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'mpeg4'.
Reading option '-frames' ... matched as option 'frames' (set the number of
frames to record) with argument '30'.
Reading option '-report' ... matched as option 'report' (generate a
report) with argument '1'.
Reading option '../first_gop_mangenta.mov' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option loglevel (set logging level) with argument 99.
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input file
/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx.
Successfully parsed a group of options.
Opening an input file:
/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx.
[AVIOContext @ 0x2532960] Statistics: 8296448 bytes read, 0 seeks
[image2 @ 0x253b4c0] Probe buffer size limit of 5000000 bytes reached
Input #0, image2, from
'/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx':
Duration: 00:00:12.00, start: 0.000000, bitrate: N/A
Stream #0:0, 1, 1/25: Video: dpx, gbrp10le, 1920x1080, 125/2997, 23.98
tbr, 25 tbn, 23.98 tbc
Successfully opened the file.
Parsing a group of options: output file ../first_gop_mangenta.mov.
Applying option vcodec (force video codec ('copy' to copy stream)) with
argument mpeg4.
Applying option frames (set the number of frames to record) with argument
30.
Successfully parsed a group of options.
Opening an output file: ../first_gop_mangenta.mov.
Successfully opened the file.
detected 2 logical cores
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'video_size' to value
'1920x1080'
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'pix_fmt' to value
'86'
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'time_base' to value
'1/25'
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'pixel_aspect' to
value '0/1'
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'sws_param' to value
'flags=2'
[graph 0 input from stream 0:0 @ 0x2532700] Setting 'frame_rate' to value
'2997/125'
[graph 0 input from stream 0:0 @ 0x2532700] w:1920 h:1080 pixfmt:gbrp10le
tb:1/25 fr:2997/125 sar:0/1 sws_param:flags=2
[format @ 0x2532ca0] compat: called with args=[yuv420p]
[format @ 0x2532ca0] Setting 'pix_fmts' to value 'yuv420p'
[auto-inserted scaler 0 @ 0x2523040] Setting 'flags' to value '0x4'
[auto-inserted scaler 0 @ 0x2523040] w:iw h:ih flags:'0x4' interl:0
[format @ 0x2532ca0] auto-inserting filter 'auto-inserted scaler 0'
between the filter 'Parsed_null_0' and the filter 'format'
[AVFilterGraph @ 0x25327e0] query_formats: 4 queried, 2 merged, 1 already
done, 0 delayed
[auto-inserted scaler 0 @ 0x2523040] w:1920 h:1080 fmt:gbrp10le sar:0/1 ->
w:1920 h:1080 fmt:yuv420p sar:0/1 flags:0x4
[mpeg4 @ 0x253e360] intra_quant_bias = 0 inter_quant_bias = -64
Output #0, mov, to '../first_gop_mangenta.mov':
Metadata:
encoder : Lavf56.7.102
Stream #0:0, 0, 1/11988: Video: mpeg4 (mp4v / 0x7634706D), yuv420p,
1920x1080, 125/2997, q=2-31, 200 kb/s, 23.98 fps, 11988 tbn, 23.98 tbc
Metadata:
encoder : Lavc56.2.101 mpeg4
Stream mapping:
Stream #0:0 -> #0:0 (dpx (native) -> mpeg4 (native))
Press [q] to stop, [?] for help
[AVIOContext @ 0x3ffbbe0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e62de0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffccc0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e638a0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffcbe0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b10320] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffd020] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b10360] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e631a0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b0fc80] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc880] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b10600] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b106e0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e63420] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b0fd20] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc8a0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e63580] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc520] Statistics: 8296448 bytes read, 0 seeks
frame= 19 fps=0.0 q=2.3 size= 146kB time=00:00:00.79
bitrate=1504.5kbits/s
[AVIOContext @ 0x3e634c0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffcde0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc7c0] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e63820] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc840] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e63140] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e63000] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b10380] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x2b10460] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3ffc960] Statistics: 8296448 bytes read, 0 seeks
[AVIOContext @ 0x3e62fe0] Statistics: 8296448 bytes read, 0 seeks
No more output streams to write to, finishing.
frame= 30 fps=0.0 q=4.6 Lsize= 220kB time=00:00:01.25
bitrate=1438.6kbits/s
video:219kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
muxing overhead: 0.427581%
Input file #0
(/mnt/pickles/media/images1/dpx/still_sequence/legal%03d.dpx):
Input stream #0:0 (video): 30 packets read (248893440 bytes); 30 frames
decoded;
Total: 30 packets (248893440 bytes) demuxed
Output file #0 (../first_gop_mangenta.mov):
Output stream #0:0 (video): 30 frames encoded; 30 packets muxed (224051
bytes);
Total: 30 packets (224051 bytes) muxed
30 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x253ad20] Statistics: 36 seeks, 61 writeouts
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4000>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list