The Metadata in Matroska files(Under Construction)

What is Matroska?

Matroska is open source, open standard Multimedia container. Matroska is usually found as .MKV files (matroska video), .MKA files (matroska audio) and .MKS files (subtitles) and .MK3D files (stereoscopic/3D video). It is also the basis for .webm (WebM) files.

Why Matroska?

Its a OpenSource standard multimedia container which is backward compatible,and has ability to support ever changing future multimedia technology with lot of advantages.For more information refer
http://www.matroska.org/technical/whatis/index.html.

How It is Structured?

Matroska uses EBML Keeping future in mind.Following picture summarises overview of Matroska structure.Its designed to the need to modern video standards,which contain multiple Video chapters,tracks and comprehensive details required for a Subject/s.

Metadata Tag Description Metadata Tag Description Metadata Tag Description Metadata Tag Description
0x0000 ChapterDisplay 0x0023 SimpleBlock? 0x05bc EditionUID? 0x1741 WritingApp
0x0003 TrackType 0x0024 CodecState? 0x05bd EditionFlagHidden? 0x1854 SilentTracks
0x0005 ChapterString 0x0025 BlockAdditional? 0x05db EditionFlagDefault? 0x18d7 SilentTrackNumber
0x0006 "VideoCodecID 
AudioCodecID 
CodecID"
0x0026 BlockMore 0x05dd EditionFlagOrdered? 0x21a7 AttachedFile
0x0008 TrackDefault 0x0027 Position 0x065c AttachedFileData 0x2240 ContentEncoding
0x0009 ChapterTrackNumber 0x002a CodecDecodeAll 0x0660 AttachedFileMIMEType 0x2264 AudioBitsPerSample
0x000e Slices 0x002b PrevSize 0x066e AttachedFileName 0x23a2 CodecPrivate?
0x000f ChapterTrack 0x002e TrackEntry 0x0675 AttachedFileReferral? 0x23c0 Targets
0x0011 ChapterTimeStart 0x002f EncryptedBlock? 0x067e AttachedFileDescription 0x23c3 ChapterPhysicalEquivalent
0x0012 ChapterTimeEnd 0x0030 ImageWidth 0x06ae AttachedFileUID 0x23c4 TagChapterUID?
0x0016 CueRefTime? 0x0033 CueTime? 0x07e1 ContentEncryptionAlgorithm 0x23c5 TagTrackUID?
0x0017 CueRefCluster 0x0035 AudioSampleRate 0x07e2 ContentEncryptionKeyID? 0x23c6 TagAttachmentUID?
0x0018 ChapterFlagHidden 0x0036 ChapterAtom 0x07e3 ContentSignature? 0x23c9 TagEditionUID?
0x001a VideoScanType 0x0037 CueTrackPositions 0x07e4 ContentSignatureKeyID? 0x23ca TargetType
0x001b BlockDuration? 0x0039 TrackUsed 0x07e5 ContentSignatureAlgorithm 0x2532 SignedElement?
0x001c TrackLacing? 0x003a ImageHeight 0x07e6 ContentSignatureHashAlgorithm 0x2624 TrackTranslate
0x001f AudioChannels 0x003b CuePoint 0x0d80 MuxingApp 0x26a5 TrackTranslateTrackID?
0x0020 BlockGroup 0x003f CRC-32? 0x0dbb Seek 0x26bf TrackTranslateCodec
0x0021 Block? 0x004b BlockAdditionalID? 0x1031 ContentEncodingOrder? 0x26fc TrackTranslateEditionUID?
0x0022 BlockVirtual? 0x004c LaceNumber? 0x1032 ContentEncodingScope? 0x27c8 SimpleTag
0x004d FrameNumber? 0x0282 DocType 0x1033 ContentEncodingType 0x33c5 TrackUID?
0x004e Delay? 0x0285 DocTypeReadVersion 0x1034 ContentCompression 0x3446 TrackAttachmentUID
0x004f ClusterDuration? 0x0286 EBMLVersion 0x1035 ContentEncryption 0x35a1 BlockAdditions
0x0057 TrackNumber 0x0287 DocTypeVersion 0x135f CueRefNumber? 0x38b5 OutputAudioSampleRate
0x005b CueReference 0x02f2 EBMLMaxIDLength? 0x136e TrackName 0x3ba9 Title
0x0060 Video 0x02f3 EBMLMaxSizeLength? 0x1378 CueBlockNumber? 0x3d7b ChannelPositions?
0x0061 Audio 0x02f7 EBMLReadVersion 0x137f TrackOffset? 0x3e5b SignatureElements
0x0067 Timecode? 0x037c ChapterLanguage 0x13ab SeekID? 0x3e7b SignatureElementList
0x0068 TimeSlice 0x037e ChapterCountry 0x13ac SeekPosition? 0x3e8a SignatureAlgo
0x006a CueCodecState? 0x0444 SegmentFamily? 0x13b8 Stereo3DMode 0x3e9a SignatureHash
0x006b CueRefCodecState? 0x0461 DateTimeOriginal 0x14aa CropBottom 0x3ea5 SignaturePublicKey?
0x006c Void? 0x047a TagLanguage 0x14b0 DisplayWidth 0x3eb5 Signature?
0x006e BlockAddID? 0x0484 TagDefault 0x14b2 DisplayUnit 0x2b59c TrackLanguage
0x0071 CueClusterPosition? 0x0485 TagBinary 0x14b3 AspectRatioType 0x3314f TrackTimecodeScale
0x0077 CueTrack? 0x0487 TagString 0x14ba DisplayHeight 0x383e3 FrameRate
0x007a ReferencePriority? 0x0489 Duration 0x14bb CropTop 0x3e383 "VideoFrameRate 
DefaultDuration"
0x007b ReferenceBlock? 0x050d ChapterProcessPrivate? 0x14cc CropLeft 0x58688 "VideoCodecName 
AudioCodecName 
CodecName"
0x007d ReferenceVirtual? 0x0598 ChapterFlagEnabled? 0x14dd CropRight 0x6b240 CodecDownloadURL
0x0254 ContentCompressionAlgorithm 0x05a3 TagName 0x15aa TrackForced 0xad7b1 TimecodeScale
0x0255 ContentCompressionSettings? 0x05b9 EditionEntry 0x15ee MaxBlockAdditionID? 0xeb524 ColorSpace?
0x28ca TargetTypeValue 0xfb523 Gamma 0x2d80 ContentEncodings 0x549a966 Info
0x2911 ChapterProcessCommand 0x1a9697 CodecSettings 0x2de7 MinCache? 0x654ae6b Tracks
0x2922 ChapterProcessTime? 0x1b4040 CodecInfoURL 0x2df8 MaxCache? 0x8538067 SegmentHeader
0x2924 ChapterTranslate 0x1c83ab PrevFileName 0x2e67 ChapterSegmentUID? 0x941a469 Attachments
0x2933 ChapterProcessData? 0x1cb923 PrevUID? 0x2ebc ChapterSegmentEditionUID? 0xa45dfa3 EBMLHeader
0x2944 ChapterProcess 0x1e83bb NextFileName 0x2fab TrackOverlay? 0xb538667 SignatureSlot
0x2955 ChapterProcessCodecID? 0x1eb923 NextUID? 0x3373 Tag 0xc53bb6b Cues
0x29a5 ChapterTranslateID? 0x43a770 Chapters 0x3384 SegmentFileName 0xf43b675 Cluster
0x29bf ChapterTranslateCodec 0x14d9b74 SeekHead 0x33a4 SegmentUID? 0x33c4 ChapterUID?
0x29fc ChapterTranslateEditionUID? 0x254c367 Tags

Matroska Read/Write In Exiv2 Procedure is described as below

matroska_container_structure.jpeg (24.5 KB) Mahesh Hegde, 03 Oct 2013 12:35

matroska_read_write_procedure.jpg (54.4 KB) Mahesh Hegde, 03 Oct 2013 12:46

matroska.dia (6.29 KB) Mahesh Hegde, 03 Oct 2013 12:51

Redmine Appliance - Powered by TurnKey Linux