[FFmpeg-user] Misdetected color info for h264 mov file

Robert Krüger krueger at lesspain.de
Wed Aug 19 18:47:32 CEST 2015


Hi,

I have a case where ffprobe does not detect color information (matrix,
primaries) that is in the mov file. I have checked that in the file the
respective values of the indices in the colr atom are correctly set to
ITU-R BT.709 but ffprobe does not detect that.

./ffprobe -show_format -show_streams ~/tmp/colortest/h264-pipeline-out.mov
| grep color
ffprobe version N-74034-gce46627 Copyright (c) 2007-2015 the FFmpeg
developers
  built with Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM
3.6.0svn)
  configuration: --enable-gpl --enable-libx264
  libavutil      54. 29.100 / 54. 29.100
  libavcodec     56. 55.100 / 56. 55.100
  libavformat    56. 40.101 / 56. 40.101
  libavdevice    56.  4.100 / 56.  4.100
  libavfilter     5. 29.100 /  5. 29.100
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  2.101 /  1.  2.101
  libpostproc    53.  3.100 / 53.  3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'/Users/krueger/tmp/colortest/h264-pipeline-out.mov':
  Metadata:
    major_brand     : qt
    minor_version   : 512
    compatible_brands: qt
    creation_time   : 2015-08-06 16:31:40
    encoder         : Lavf56.23.100
  Duration: 00:00:01.00, start: 0.000000, bitrate: 10549 kb/s
    Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv),
1920x1080 [SAR 1:1 DAR 16:9], 10485 kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc
(default)
    Metadata:
      creation_time   : 2015-08-06 16:31:40
      handler_name    : DataHandler
      timecode        : 01:00:00:00
    Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz,
stereo, fltp, 74 kb/s (default)
    Metadata:
      creation_time   : 2015-08-06 16:31:40
      handler_name    : DataHandler
    Stream #0:2(eng): Data: none (tmcd / 0x64636D74), 0 kb/s
    Metadata:
      creation_time   : 2015-08-06 16:31:40
      handler_name    : DataHandler
      timecode        : 01:00:00:00
Unsupported codec with id 0 for input stream 2
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown

(BTW, I get the same result when retrieving the info via libav api)

Does avformat_find_stream_info maybe use bitstream info over container info
for h.264?

What could be wrong in the file to trigger that behaviour? I have other
h264 mov files with the same colr atom values that are detected correctly.

Thanks for any insights and best regards,

Robert


More information about the ffmpeg-user mailing list