Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Reading Avid DNxHD mxf files

Help
Richard3
2013-09-11
2013-09-12
  • Richard3
    Richard3
    2013-09-11

    Hi, my company uses MediaInfo in their product to extract data from media at various broadcasters. This week I have been reading in Avid DNxHD MXF files and found that no where in the data does it state it is a DNxHD file. However, when I use an different vendors SDK for wrapper information it does properly list the codec as DNxHD.

    From searching around the forms on 'DNxHD' MediaInfo should be able to list DNxHD - right?

    MediaInfo (from program, version 7.64)
    <track type="Video">
    <ID_String>2</ID_String>
    <Format>VC-3</Format>
    <Format_Settings_Wrapping>Frame</Format_Settings_Wrapping>
    <Duration_String>24mn 1s</Duration_String>
    <BitRate_Mode_String>Constant</BitRate_Mode_String>
    <BitRate_String>145 Mbps</BitRate_String>
    <Width_String>1 920 pixels</Width_String>
    <Height_String>1 080 pixels</Height_String>
    <DisplayAspectRatio_String>16:9</DisplayAspectRatio_String>
    <ActiveFormatDescription_String>Letterbox 16:9 image</ActiveFormatDescription_String>
    <FrameRate_String>29.970 fps</FrameRate_String>
    <ColorSpace>YUV</ColorSpace>
    <ChromaSubsampling>4:2:2</ChromaSubsampling>
    <BitDepth_String>8 bits</BitDepth_String>
    <ScanType_String>Interlaced</ScanType_String>
    <ScanOrder_String>Top Field First</ScanOrder_String>
    <Bits_Pixel_Frame_>2.339</Bits_Pixel_Frame_>
    <StreamSize_String>24.4 GiB (92%)</StreamSize_String>
    </track>

    Other SDK
    <VideoTrack>
    <Filename>138177.013_PGM_ASIA.mxf</Filename>
    <MediaType>Dnxhd</MediaType>
    <Bitrate>145344575</Bitrate>
    <SampleType>4:2:2</SampleType>
    <AspectRatio>16:9</AspectRatio>
    <BitsPerSample>0</BitsPerSample>
    <GopLength>0</GopLength>
    <SubGopLength>0</SubGopLength>
    <LanguageTag></LanguageTag>
    </VideoTrack>

     
  • Hi, my company uses MediaInfo in their product to extract data from media at various broadcasters.

    Side note: it would be great if I can add your company name to my testimonial page.

    However, when I use an different vendors SDK for wrapper information it does properly list the codec as DNxHD.

    In which field is displayed this information? I try to avoid this name, and I don't see it in my code. Having a sample file would be great (I can provide private FTP access and NDA if needed, contact me at info@mediaarea.net).

    This week I have been reading in Avid DNxHD MXF files and found that no where in the data does it state it is a DNxHD file.

    It is with this field: "VC-3".
    Check DNxHD definition, DNxHD is an implementation of VC-3 format. I try to avoid as much as possible marketing names and I use technical names when I can. So when another compagny implements VC-3, you will see "VC-3" too even if they call it something else, because they are compatible.

     
  • Richard3
    Richard3
    2013-09-11

    I'll request our Developer to write a testimonial - he'll be better write something up I think.

    In their XML it shows as -MediaType -Dnxhd -MediaType>

    This customer also has DHxHD QuickTime wrapped files and that does list DHxHD in MediaInfo.

    -track type="Video">
    -ID_String>1</ID_String>
    -Format>VC-3</Format>
    -CodecID>AVdn</CodecID>
    -CodecID_Info>Avid</CodecID_Info>
    -CodecID_Hint>DNxHD</CodecID_Hint>

    Would like to take a Signiant MX Download package?

     
    Last edit: Richard3 2013-09-11
  • This customer also has DHxHD QuickTime wrapped files and that does list DHxHD in MediaInfo.

    OK, I see: I put an hint when it is from QuickTime, because the Codec identifier ("AVdn" in this case) is written by a DNxHD compressor. The "CodecID_Hint" field is an hint about the Codec identifier, not about the raw stream format.
    But in MXF, the only data I have is the UUID (128-bit Identifier) of the format (i.e. VC-3), I can not know which compressor was used (DNxHD or something else).

    In your case, consider VC-3 as what you are looking for (as indicated in the Wikipedia page, DNxHD is only an implementation of the compressor, the resulting raw stream is VC-3, defined by SMPTE ST 2019 specifications), because you are not looking for DNxHD, your are looking for VC-3 compliant streams.
    If you really want "DNxHD" name in your output, your need to change yourself the "VC-3" format to the marketing name you want, MediaInfo policy is to avoid marketing names in the important fields (here, the "Format" field).
    If you want to know if a DNxHD compressor has written this stream, it is impossible to know such piece of information (any other VC-3 compliant compressor could have written it, nothing is indicated in the stream)

    Would like to take a Signiant MX Download package?

    I take any sample I can.

     
  • Got it, thank you.
    I confirm I can see the VC-3 "Essence Container" identifier and "Identifier if the Picture Compression Scheme" from MXF, I can see the writing application, but no way to know if this VC-3 stream is Avid (DNxHD) implementation.
    Trace (Hex Dump) of your file with SMPTE definitions:
    00002298 EssenceContainer (20 bytes)
    00002298 Header (4 bytes)
    00002298 Code: 12292 (0x3004)
    0000229A Length: 16 (0x0010)
    00002348 Data (16 bytes)
    00002348 Start (0x06): 6 (0x06)
    00002349 Length of the remaining key (0x0E): 14 (0x0E)
    0000234A ISO, ORG (0x2B): 43 (0x2B)
    0000234B SMPTE (0x34): 52 (0x34)
    0000234C Category: 4 (0x04) - Value
    0000234D Registry: 1 (0x01) - Fixed
    0000234E Structure: 1 (0x01) -
    0000234F Version: 8 (0x08) - Labels
    00002350 Item Designator: 13 (0x0D) - User Organisation Registered For Public Use
    00002351 Organization: 1 (0x01) - AAF
    00002352 Application: 3 (0x03) - Essence Container Application
    00002353 Structure Version: 1 (0x01) - MXF EC Structure Version 1
    00002354 Essence container Kind: 2 (0x02) - Essence Container Kind
    00002355 Code (6): 17 (0x11) - VC-3 Picture Element
    00002356 Content Kind: 1 (0x01) - Frame
    00002357 Reserved: 0 (0x00)
    (...)
    000023BA Identifier of the Picture Compression Scheme (20 bytes)
    000023BA Header (4 bytes)
    000023BA Code: 12801 (0x3201)
    000023BC Length: 16 (0x0010)
    000023BE Data (16 bytes)
    000023BE Start (0x06): 6 (0x06)
    000023BF Length of the remaining key (0x0E): 14 (0x0E)
    000023C0 ISO, ORG (0x2B): 43 (0x2B)
    000023C1 SMPTE (0x34): 52 (0x34)
    000023C2 Category: 4 (0x04) - Value
    000023C3 Registry: 1 (0x01) - Fixed
    000023C4 Structure: 1 (0x01) -
    000023C5 Version: 1 (0x01) - Labels
    000023C6 Item Designator: 4 (0x04) - Parametric
    000023C7 Code (2): 1 (0x01) - Picture essence
    000023C8 Code (3): 2 (0x02) - Picture Coding Characteristics
    000023C9 Code (4): 2 (0x02) - Compressed Picture Coding
    000023CA Code (5): 113 (0x71) - VC-3
    000023CB Variant: 8 (0x08)
    000023CC Unused: 0 (0x00)
    000023CD Unused: 0 (0x00)

    If you want DNxHD a synonym of VC-3, the quickest way is to modify any "VC-3" occurrence to "DNxHD" in the XML output.
    Again, one of the goals of MediaInfo is to avoid marketing names and to display technical information, and in any cases I must choose a name for a specific format (for example, some people would prefer "H.264" or "H.624/AVC" instead of "AVC", I have chosen "AVC", some years ago some people wanted "DivX" or "Xvid" instead of "MPEG-4 Visual"...).

     
  • Richard3
    Richard3
    2013-09-11

    I completely understand where you are coming from now on VC-3 vs DNxHD (before your first reply I had read up on it in Wiki). I am sure we can force VC-3 to be displayed in our application - I was just confused between the different readers we use.

    Thank you very much for all your replies! BTW, I am not sure what my contact sent you but it is likely copy-righted content in some form - please do not share it outside your personal testing.

     
  • I was just confused between the different readers we use.

    This is something we will always have, thanks to marketing departments ;-).
    FYI, lot of MediaInfo users rename some formats names (never to the same name, it would be too easy to have only one mapping between my format names and user format names :) ), this is a personal choice.

    please do not share it outside your personal testing.

    No worry, I use to work with companies like yours and I respect the license of any content I receive (in that case, no license = no sharing).