[FFmpeg-trac] #4000(undetermined:new): mpeg4: Magenta color shift in first GOP

FFmpeg trac at avcodec.org
Fri Oct 3 11:19:11 CEST 2014


#4000: mpeg4: Magenta color shift in first GOP
-------------------------------------+-------------------------------------
             Reporter:               |                    Owner:
  ErikCJohansson                     |                   Status:  new
                 Type:  defect       |                Component:
             Priority:  normal       |  undetermined
              Version:  unspecified  |               Resolution:
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by ErikCJohansson):

 If I understand correctly, I've extracted the output of the libswscale
 conversion as per below. Will attach the histogram which has a distinct
 magenta shift, it's a bit rough around the edges since it uses a naive
 reconstruction from 420 to 444. Now I'm intrigued how the codec can
 perform so well on frames 0,12-

 {{{
 ffmpeg started on 2014-10-03 at 11:11:41
 Report written to "ffmpeg-20141003-111141.log"
 Command line:
 ./ffmpeg -i /mnt/pickles/media/images1/dpx/legal0.dpx -vcodec rawvideo
 -pix_fmt yuv420p -report ../testyuv420p.yuv
 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 '-i' ... matched as input file with argument
 '/mnt/pickles/media/images1/dpx/legal0.dpx'.
 Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
 ('copy' to copy stream)) with argument 'rawvideo'.
 Reading option '-pix_fmt' ... matched as option 'pix_fmt' (set pixel
 format) with argument 'yuv420p'.
 Reading option '-report' ... matched as option 'report' (generate a
 report) with argument '1'.
 Reading option '../testyuv420p.yuv' ... matched as output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 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/legal0.dpx.
 Successfully parsed a group of options.
 Opening an input file: /mnt/pickles/media/images1/dpx/legal0.dpx.
 [dpx_pipe @ 0x327b4e0] Format dpx_pipe probed with size=2048 and score=51
 [dpx_pipe @ 0x327b4e0] Before avformat_find_stream_info() pos: 0 bytes
 read:32768 seeks:0
 [dpx_pipe @ 0x327b4e0] Probe buffer size limit of 5000000 bytes reached
 [dpx_pipe @ 0x327b4e0] Stream #0: not enough frames to estimate rate;
 consider increasing probesize
 [dpx_pipe @ 0x327b4e0] After avformat_find_stream_info() pos: 8296448
 bytes read:8296448 seeks:0 frames:1
 Input #0, dpx_pipe, from '/mnt/pickles/media/images1/dpx/legal0.dpx':
   Duration: N/A, bitrate: N/A
     Stream #0:0, 1, 1/25: Video: dpx, gbrp10le, 1920x1080, 23.98 tbr, 25
 tbn, 23.98 tbc
 Successfully opened the file.
 Parsing a group of options: output file ../testyuv420p.yuv.
 Applying option vcodec (force video codec ('copy' to copy stream)) with
 argument rawvideo.
 Applying option pix_fmt (set pixel format) with argument yuv420p.
 Successfully parsed a group of options.
 Opening an output file: ../testyuv420p.yuv.
 Successfully opened the file.
 detected 2 logical cores
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'video_size' to value
 '1920x1080'
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'pix_fmt' to value
 '86'
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'time_base' to value
 '1/25'
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'pixel_aspect' to
 value '0/1'
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'sws_param' to value
 'flags=2'
 [graph 0 input from stream 0:0 @ 0x327aec0] Setting 'frame_rate' to value
 '2997/125'
 [graph 0 input from stream 0:0 @ 0x327aec0] w:1920 h:1080 pixfmt:gbrp10le
 tb:1/25 fr:2997/125 sar:0/1 sws_param:flags=2
 [format @ 0x327e440] compat: called with args=[yuv420p]
 [format @ 0x327e440] Setting 'pix_fmts' to value 'yuv420p'
 [auto-inserted scaler 0 @ 0x327efc0] Setting 'flags' to value '0x4'
 [auto-inserted scaler 0 @ 0x327efc0] w:iw h:ih flags:'0x4' interl:0
 [format @ 0x327e440] auto-inserting filter 'auto-inserted scaler 0'
 between the filter 'Parsed_null_0' and the filter 'format'
 [AVFilterGraph @ 0x326a5c0] query_formats: 4 queried, 2 merged, 1 already
 done, 0 delayed
 [auto-inserted scaler 0 @ 0x327efc0] w:1920 h:1080 fmt:gbrp10le sar:0/1 ->
 w:1920 h:1080 fmt:yuv420p sar:0/1 flags:0x4
 Output #0, rawvideo, to '../testyuv420p.yuv':
   Metadata:
     encoder         : Lavf56.7.102
     Stream #0:0, 0, 125/2997: Video: rawvideo (I420 / 0x30323449),
 yuv420p, 1920x1080, q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc
     Metadata:
       encoder         : Lavc56.2.101 rawvideo
 Stream mapping:
   Stream #0:0 -> #0:0 (dpx (native) -> rawvideo (native))
 Press [q] to stop, [?] for help
 [output stream 0:0 @ 0x326a3c0] EOF on sink link output stream
 0:0:default.
 No more output streams to write to, finishing.
 frame=    1 fps=0.0 q=0.0 Lsize=    3038kB time=00:00:00.04
 bitrate=596605.0kbits/s
 video:3038kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB
 muxing overhead: 0.000000%
 Input file #0 (/mnt/pickles/media/images1/dpx/legal0.dpx):
   Input stream #0:0 (video): 1 packets read (8296448 bytes); 1 frames
 decoded;
   Total: 1 packets (8296448 bytes) demuxed
 Output file #0 (../testyuv420p.yuv):
   Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (3110400
 bytes);
   Total: 1 packets (3110400 bytes) muxed
 1 frames successfully decoded, 0 decoding errors
 [AVIOContext @ 0x327e260] Statistics: 0 seeks, 95 writeouts
 [AVIOContext @ 0x327a720] Statistics: 8296448 bytes read, 0 seeks
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4000#comment:7>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list