# HG changeset patch # User aurel # Date 1218662115 0 # Node ID f65dc584662d4b1f86591283fa625128d4f45747 # Parent 2ca19db359bd7abf9ebdb2ace0278a9cf81e3199 matroskadec: list some more ebml IDs found in the wild and that we ignore This avoid printing some warnings about unknow IDs while we in fact know the IDs but just want to knowingly ignore them. diff -r 2ca19db359bd -r f65dc584662d matroska.h --- a/matroska.h Wed Aug 13 19:29:35 2008 +0000 +++ b/matroska.h Wed Aug 13 21:15:15 2008 +0000 @@ -41,6 +41,7 @@ /* general EBML types */ #define EBML_ID_VOID 0xEC +#define EBML_ID_CRC32 0xBF /* * Matroska element IDs, max. 32 bits @@ -95,6 +96,7 @@ #define MATROSKA_ID_TRACKCONTENTENCODINGS 0x6D80 #define MATROSKA_ID_TRACKCONTENTENCODING 0x6240 #define MATROSKA_ID_TRACKTIMECODESCALE 0x23314F +#define MATROSKA_ID_TRACKMAXBLKADDID 0x55EE /* IDs in the trackvideo master */ #define MATROSKA_ID_VIDEOFRAMERATE 0x2383E3 @@ -102,6 +104,11 @@ #define MATROSKA_ID_VIDEODISPLAYHEIGHT 0x54BA #define MATROSKA_ID_VIDEOPIXELWIDTH 0xB0 #define MATROSKA_ID_VIDEOPIXELHEIGHT 0xBA +#define MATROSKA_ID_VIDEOPIXELCROPB 0x54AA +#define MATROSKA_ID_VIDEOPIXELCROPT 0x54BB +#define MATROSKA_ID_VIDEOPIXELCROPL 0x54CC +#define MATROSKA_ID_VIDEOPIXELCROPR 0x54DD +#define MATROSKA_ID_VIDEODISPLAYUNIT 0x54B2 #define MATROSKA_ID_VIDEOFLAGINTERLACED 0x9A #define MATROSKA_ID_VIDEOSTEREOMODE 0x53B9 #define MATROSKA_ID_VIDEOASPECTRATIO 0x54B3 @@ -115,6 +122,7 @@ #define MATROSKA_ID_AUDIOCHANNELS 0x9F /* IDs in the content encoding master */ +#define MATROSKA_ID_ENCODINGORDER 0x5031 #define MATROSKA_ID_ENCODINGSCOPE 0x5032 #define MATROSKA_ID_ENCODINGTYPE 0x5033 #define MATROSKA_ID_ENCODINGCOMPRESSION 0x5034 @@ -131,6 +139,7 @@ /* IDs in the cuetrackposition master */ #define MATROSKA_ID_CUETRACK 0xF7 #define MATROSKA_ID_CUECLUSTERPOSITION 0xF1 +#define MATROSKA_ID_CUEBLOCKNUMBER 0x5378 /* IDs in the tags master */ #define MATROSKA_ID_TAG 0x7373 @@ -150,6 +159,8 @@ /* IDs in the cluster master */ #define MATROSKA_ID_CLUSTERTIMECODE 0xE7 +#define MATROSKA_ID_CLUSTERPOSITION 0xA7 +#define MATROSKA_ID_CLUSTERPREVSIZE 0xAB #define MATROSKA_ID_BLOCKGROUP 0xA0 #define MATROSKA_ID_SIMPLEBLOCK 0xA3 @@ -160,6 +171,7 @@ /* IDs in the attachments master */ #define MATROSKA_ID_ATTACHEDFILE 0x61A7 +#define MATROSKA_ID_FILEDESC 0x467E #define MATROSKA_ID_FILENAME 0x466E #define MATROSKA_ID_FILEMIMETYPE 0x4660 #define MATROSKA_ID_FILEDATA 0x465C @@ -172,11 +184,15 @@ #define MATROSKA_ID_CHAPTERTIMEEND 0x92 #define MATROSKA_ID_CHAPTERDISPLAY 0x80 #define MATROSKA_ID_CHAPSTRING 0x85 +#define MATROSKA_ID_CHAPLANG 0x437C #define MATROSKA_ID_EDITIONUID 0x45BC #define MATROSKA_ID_EDITIONFLAGHIDDEN 0x45BD #define MATROSKA_ID_EDITIONFLAGDEFAULT 0x45DB +#define MATROSKA_ID_EDITIONFLAGORDERED 0x45DD #define MATROSKA_ID_CHAPTERUID 0x73C4 #define MATROSKA_ID_CHAPTERFLAGHIDDEN 0x98 +#define MATROSKA_ID_CHAPTERFLAGENABLED 0x4598 +#define MATROSKA_ID_CHAPTERPHYSEQUIV 0x63C3 typedef enum { MATROSKA_TRACK_TYPE_NONE = 0x0, diff -r 2ca19db359bd -r f65dc584662d matroskadec.c --- a/matroskadec.c Wed Aug 13 19:29:35 2008 +0000 +++ b/matroskadec.c Wed Aug 13 21:15:15 2008 +0000 @@ -250,6 +250,7 @@ { MATROSKA_ID_MUXINGAPP, EBML_NONE }, { MATROSKA_ID_DATEUTC, EBML_NONE }, { MATROSKA_ID_SEGMENTUID, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -261,6 +262,11 @@ { MATROSKA_ID_VIDEOPIXELWIDTH, EBML_UINT, 0, offsetof(MatroskaTrackVideo,pixel_width) }, { MATROSKA_ID_VIDEOPIXELHEIGHT, EBML_UINT, 0, offsetof(MatroskaTrackVideo,pixel_height) }, { MATROSKA_ID_VIDEOCOLORSPACE, EBML_UINT, 0, offsetof(MatroskaTrackVideo,fourcc) }, + { MATROSKA_ID_VIDEOPIXELCROPB, EBML_NONE }, + { MATROSKA_ID_VIDEOPIXELCROPT, EBML_NONE }, + { MATROSKA_ID_VIDEOPIXELCROPL, EBML_NONE }, + { MATROSKA_ID_VIDEOPIXELCROPR, EBML_NONE }, + { MATROSKA_ID_VIDEODISPLAYUNIT, EBML_NONE }, { MATROSKA_ID_VIDEOFLAGINTERLACED,EBML_NONE }, { MATROSKA_ID_VIDEOSTEREOMODE, EBML_NONE }, { MATROSKA_ID_VIDEOASPECTRATIO, EBML_NONE }, @@ -288,6 +294,7 @@ { MATROSKA_ID_ENCODINGSCOPE, EBML_UINT, 0, offsetof(MatroskaTrackEncoding,scope), {.u=1} }, { MATROSKA_ID_ENCODINGTYPE, EBML_UINT, 0, offsetof(MatroskaTrackEncoding,type), {.u=0} }, { MATROSKA_ID_ENCODINGCOMPRESSION,EBML_NEST, 0, offsetof(MatroskaTrackEncoding,compression), {.n=matroska_track_encoding_compression} }, + { MATROSKA_ID_ENCODINGORDER, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -321,12 +328,15 @@ { MATROSKA_ID_CODECDOWNLOADURL, EBML_NONE }, { MATROSKA_ID_TRACKMINCACHE, EBML_NONE }, { MATROSKA_ID_TRACKMAXCACHE, EBML_NONE }, + { MATROSKA_ID_TRACKMAXBLKADDID, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; static EbmlSyntax matroska_tracks[] = { { MATROSKA_ID_TRACKENTRY, EBML_NEST, sizeof(MatroskaTrack), offsetof(MatroskaDemuxContext,tracks), {.n=matroska_track} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -335,6 +345,7 @@ { MATROSKA_ID_FILENAME, EBML_UTF8, 0, offsetof(MatroskaAttachement,filename) }, { MATROSKA_ID_FILEMIMETYPE, EBML_STR, 0, offsetof(MatroskaAttachement,mime) }, { MATROSKA_ID_FILEDATA, EBML_BIN, 0, offsetof(MatroskaAttachement,bin) }, + { MATROSKA_ID_FILEDESC, EBML_NONE }, { MATROSKA_ID_FILEUID, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } @@ -342,12 +353,14 @@ static EbmlSyntax matroska_attachments[] = { { MATROSKA_ID_ATTACHEDFILE, EBML_NEST, sizeof(MatroskaAttachement), offsetof(MatroskaDemuxContext,attachments), {.n=matroska_attachment} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; static EbmlSyntax matroska_chapter_display[] = { { MATROSKA_ID_CHAPSTRING, EBML_UTF8, 0, offsetof(MatroskaChapter,title) }, + { MATROSKA_ID_CHAPLANG, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -358,6 +371,10 @@ { MATROSKA_ID_CHAPTERUID, EBML_UINT, 0, offsetof(MatroskaChapter,uid) }, { MATROSKA_ID_CHAPTERDISPLAY, EBML_NEST, 0, 0, {.n=matroska_chapter_display} }, { MATROSKA_ID_CHAPTERFLAGHIDDEN, EBML_NONE }, + { MATROSKA_ID_CHAPTERFLAGENABLED, EBML_NONE }, + { MATROSKA_ID_CHAPTERPHYSEQUIV, EBML_NONE }, + { MATROSKA_ID_CHAPTERATOM, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -367,12 +384,15 @@ { MATROSKA_ID_EDITIONUID, EBML_NONE }, { MATROSKA_ID_EDITIONFLAGHIDDEN, EBML_NONE }, { MATROSKA_ID_EDITIONFLAGDEFAULT, EBML_NONE }, + { MATROSKA_ID_EDITIONFLAGORDERED, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; static EbmlSyntax matroska_chapters[] = { { MATROSKA_ID_EDITIONENTRY, EBML_NEST, 0, 0, {.n=matroska_chapter} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -380,6 +400,7 @@ static EbmlSyntax matroska_index_pos[] = { { MATROSKA_ID_CUETRACK, EBML_UINT, 0, offsetof(MatroskaIndexPos,track) }, { MATROSKA_ID_CUECLUSTERPOSITION, EBML_UINT, 0, offsetof(MatroskaIndexPos,pos) }, + { MATROSKA_ID_CUEBLOCKNUMBER, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -393,6 +414,7 @@ static EbmlSyntax matroska_index[] = { { MATROSKA_ID_POINTENTRY, EBML_NEST, sizeof(MatroskaIndex), offsetof(MatroskaDemuxContext,index), {.n=matroska_index_entry} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -403,6 +425,7 @@ { MATROSKA_ID_SIMPLETAG, EBML_NEST, sizeof(MatroskaTag), offsetof(MatroskaTag,sub), {.n=matroska_simpletag} }, { MATROSKA_ID_TAGLANG, EBML_NONE }, { MATROSKA_ID_TAGDEFAULT, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -410,12 +433,14 @@ static EbmlSyntax matroska_tag[] = { { MATROSKA_ID_SIMPLETAG, EBML_NEST, sizeof(MatroskaTag), 0, {.n=matroska_simpletag} }, { MATROSKA_ID_TAGTARGETS, EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; static EbmlSyntax matroska_tags[] = { { MATROSKA_ID_TAG, EBML_NEST, 0, offsetof(MatroskaDemuxContext,tags), {.n=matroska_tag} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -429,6 +454,7 @@ static EbmlSyntax matroska_seekhead[] = { { MATROSKA_ID_SEEKENTRY, EBML_NEST, sizeof(MatroskaSeekhead), offsetof(MatroskaDemuxContext,seekhead), {.n=matroska_seekhead_entry} }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; @@ -464,12 +490,19 @@ { MATROSKA_ID_CLUSTERTIMECODE,EBML_UINT,0, offsetof(MatroskaCluster,timecode) }, { MATROSKA_ID_BLOCKGROUP, EBML_NEST, sizeof(MatroskaBlock), offsetof(MatroskaCluster,blocks), {.n=matroska_blockgroup} }, { MATROSKA_ID_SIMPLEBLOCK, EBML_PASS, sizeof(MatroskaBlock), offsetof(MatroskaCluster,blocks), {.n=matroska_blockgroup} }, + { MATROSKA_ID_CLUSTERPOSITION,EBML_NONE }, + { MATROSKA_ID_CLUSTERPREVSIZE,EBML_NONE }, + { EBML_ID_CRC32, EBML_NONE }, { EBML_ID_VOID, EBML_NONE }, { 0 } }; static EbmlSyntax matroska_clusters[] = { { MATROSKA_ID_CLUSTER, EBML_NEST, 0, 0, {.n=matroska_cluster} }, + { MATROSKA_ID_INFO, EBML_NONE }, + { MATROSKA_ID_CUES, EBML_NONE }, + { MATROSKA_ID_TAGS, EBML_NONE }, + { MATROSKA_ID_SEEKHEAD, EBML_NONE }, { 0 } };