36#define MATROSKA_ID_SEGMENT 0x18538067
39#define MATROSKA_ID_SEEKHEAD 0x114D9B74
40#define MATROSKA_ID_S_ENTRY 0x4DBB
41#define MATROSKA_ID_S_ID 0x53AB
42#define MATROSKA_ID_S_POSITION 0x53AC
45#define MATROSKA_ID_INFO 0x1549A966
46#define MATROSKA_ID_I_SEGMENTUID 0x73A4
47#define MATROSKA_ID_I_FILENAME 0x7384
48#define MATROSKA_ID_I_PREVUID 0x3CB923
49#define MATROSKA_ID_I_PREVFILENAME 0x3C83AB
50#define MATROSKA_ID_I_NEXTUID 0x3EB923
51#define MATROSKA_ID_I_NEXTFILENAME 0x3E83BB
52#define MATROSKA_ID_I_TIMECODESCALE 0x2AD7B1
53#define MATROSKA_ID_I_DURATION 0x4489
54#define MATROSKA_ID_I_DATEUTC 0x4461
55#define MATROSKA_ID_I_TITLE 0x7BA9
56#define MATROSKA_ID_I_MUXINGAPP 0x4D80
57#define MATROSKA_ID_I_WRITINGAPP 0x5741
60#define MATROSKA_ID_CLUSTER 0x1F43B675
61#define MATROSKA_ID_CL_TIMECODE 0xE7
62#define MATROSKA_ID_CL_POSITION 0xA7
63#define MATROSKA_ID_CL_PREVSIZE 0xAB
64#define MATROSKA_ID_CL_BLOCKGROUP 0xA0
65#define MATROSKA_ID_CL_BLOCK 0xA1
66#define MATROSKA_ID_CL_BLOCKVIRTUAL 0xA2
67#define MATROSKA_ID_CL_SIMPLEBLOCK 0xA3
68#define MATROSKA_ID_CL_BLOCKADDITIONS 0x75A1
69#define MATROSKA_ID_CL_BLOCKMORE 0xA6
70#define MATROSKA_ID_CL_BLOCKADDID 0xEE
71#define MATROSKA_ID_CL_BLOCKADDITIONAL 0xA5
72#define MATROSKA_ID_CL_BLOCKDURATION 0x9B
73#define MATROSKA_ID_CL_REFERENCEPRIORITY 0xFA
74#define MATROSKA_ID_CL_REFERENCEBLOCK 0xFB
75#define MATROSKA_ID_CL_REFERENCEVIRTUAL 0xFD
76#define MATROSKA_ID_CL_CODECSTATE 0xA4
77#define MATROSKA_ID_CL_SLICES 0x8E
78#define MATROSKA_ID_CL_TIMESLICE 0xE8
79#define MATROSKA_ID_CL_LACENUMBER 0xCC
80#define MATROSKA_ID_CL_FRAMENUMBER 0xCD
81#define MATROSKA_ID_CL_BLOCKADDITIONID 0xCB
82#define MATROSKA_ID_CL_DELAY 0xCE
83#define MATROSKA_ID_CL_DURATION 0xCF
86#define MATROSKA_ID_TRACKS 0x1654AE6B
87#define MATROSKA_ID_TR_ENTRY 0xAE
88#define MATROSKA_ID_TR_NUMBER 0xD7
89#define MATROSKA_ID_TR_UID 0x73C5
90#define MATROSKA_ID_TR_TYPE 0x83
91#define MATROSKA_ID_TR_FLAGENABLED 0xB9
92#define MATROSKA_ID_TR_FLAGDEFAULT 0x88
93#define MATROSKA_ID_TR_FLAGLACING 0x9C
94#define MATROSKA_ID_TR_MINCACHE 0x6DE7
95#define MATROSKA_ID_TR_MAXCACHE 0x6DF8
96#define MATROSKA_ID_TR_DEFAULTDURATION 0x23E383
97#define MATROSKA_ID_TR_TIMECODESCALE 0x23314F
98#define MATROSKA_ID_TR_NAME 0x536E
99#define MATROSKA_ID_TR_LANGUAGE 0x22B59C
100#define MATROSKA_ID_TR_CODECID 0x86
101#define MATROSKA_ID_TR_CODECPRIVATE 0x63A2
102#define MATROSKA_ID_TR_CODECNAME 0x258688
103#define MATROSKA_ID_TR_CODECSETTINGS 0x3A9697
104#define MATROSKA_ID_TR_CODECINFOURL 0x3B4040
105#define MATROSKA_ID_TR_CODECDOWNLOADURL 0x26B240
106#define MATROSKA_ID_TR_CODECDECODEALL 0xAA
107#define MATROSKA_ID_TR_OVERLAY 0x6FAB
110#define MATROSKA_ID_TV 0xE0
111#define MATROSKA_ID_TV_FLAGINTERLACED 0x9A
112#define MATROSKA_ID_TV_STEREOMODE 0x53B9
113#define MATROSKA_ID_TV_PIXELWIDTH 0xB0
114#define MATROSKA_ID_TV_PIXELHEIGHT 0xBA
115#define MATROSKA_ID_TV_VIDEODISPLAYWIDTH 0x54B0
116#define MATROSKA_ID_TV_VIDEODISPLAYHEIGHT 0x54BA
117#define MATROSKA_ID_TV_VIDEOUNIT 0x54B2
118#define MATROSKA_ID_TV_ASPECTRATIOTYPE 0x54B3
119#define MATROSKA_ID_TV_COLOURSPACE 0x2EB524
120#define MATROSKA_ID_TV_GAMMAVALUE 0x2FB523
123#define MATROSKA_ID_TA 0xE1
124#define MATROSKA_ID_TA_SAMPLINGFREQUENCY 0xB5
125#define MATROSKA_ID_TA_OUTPUTSAMPLINGFREQUENCY 0x78B5
126#define MATROSKA_ID_TA_CHANNELS 0x9F
127#define MATROSKA_ID_TA_CHANNELPOSITIONS 0x9F
128#define MATROSKA_ID_TA_BITDEPTH 0x6264
131#define MATROSKA_ID_CONTENTENCODINGS 0x6D80
132#define MATROSKA_ID_CONTENTENCODING 0x6240
133#define MATROSKA_ID_CE_ORDER 0x5031
134#define MATROSKA_ID_CE_SCOPE 0x5032
135#define MATROSKA_ID_CE_TYPE 0x5033
136#define MATROSKA_ID_CE_COMPRESSION 0x5034
137#define MATROSKA_ID_CE_COMPALGO 0x4254
138#define MATROSKA_ID_CE_COMPSETTINGS 0x4255
139#define MATROSKA_ID_CE_ENCRYPTION 0x5035
140#define MATROSKA_ID_CE_ENCALGO 0x47E1
141#define MATROSKA_ID_CE_ENCKEYID 0x47E2
142#define MATROSKA_ID_CE_SIGNATURE 0x47E3
143#define MATROSKA_ID_CE_SIGKEYID 0x47E4
144#define MATROSKA_ID_CE_SIGALGO 0x47E5
145#define MATROSKA_ID_CE_SIGHASHALGO 0x47E6
148#define MATROSKA_ID_CUES 0x1C53BB6B
149#define MATROSKA_ID_CU_POINT 0xBB
150#define MATROSKA_ID_CU_TIME 0xB3
151#define MATROSKA_ID_CU_TRACKPOSITION 0xB7
152#define MATROSKA_ID_CU_TRACK 0xF7
153#define MATROSKA_ID_CU_CLUSTERPOSITION 0xF1
154#define MATROSKA_ID_CU_BLOCKNUMBER 0x5387
155#define MATROSKA_ID_CU_CODECSTATE 0xEA
156#define MATROSKA_ID_CU_REFERENCE 0xDB
157#define MATROSKA_ID_CU_REFTIME 0x96
158#define MATROSKA_ID_CU_REFCLUSTER 0x97
159#define MATROSKA_ID_CU_REFNUMBER 0x535F
160#define MATROSKA_ID_CU_REFCODECSTATE 0xEB
163#define MATROSKA_ID_ATTACHMENTS 0x1941A469
164#define MATROSKA_ID_AT_FILE 0x61A7
165#define MATROSKA_ID_AT_FILEDESCRIPTION 0x467E
166#define MATROSKA_ID_AT_FILENAME 0x466E
167#define MATROSKA_ID_AT_FILEMIMETYPE 0x4660
168#define MATROSKA_ID_AT_FILEDATA 0x465C
169#define MATROSKA_ID_AT_FILEUID 0x46AE
172#define MATROSKA_ID_CHAPTERS 0x1043A770
173#define MATROSKA_ID_CH_EDITIONENTRY 0x45B9
174#define MATROSKA_ID_CH_ED_UID 0x45BC
175#define MATROSKA_ID_CH_ED_HIDDEN 0x45BD
176#define MATROSKA_ID_CH_ED_DEFAULT 0x45DB
177#define MATROSKA_ID_CH_ED_ORDERED 0x45DD
178#define MATROSKA_ID_CH_ATOM 0xB6
179#define MATROSKA_ID_CH_UID 0x73C4
180#define MATROSKA_ID_CH_TIMESTART 0x91
181#define MATROSKA_ID_CH_TIMEEND 0x92
182#define MATROSKA_ID_CH_HIDDEN 0x98
183#define MATROSKA_ID_CH_ENABLED 0x4598
184#define MATROSKA_ID_CH_TRACK 0x8F
185#define MATROSKA_ID_CH_TRACKNUMBER 0x89
186#define MATROSKA_ID_CH_DISPLAY 0x80
187#define MATROSKA_ID_CH_STRING 0x85
188#define MATROSKA_ID_CH_LANGUAGE 0x437C
189#define MATROSKA_ID_CH_COUNTRY 0x437E
192#define MATROSKA_ID_TAGS 0x1254C367
256 uint32_t palette[16];
291 uint8_t *data,
size_t data_len,
292 int64_t data_pts,
int data_duration,
293 int input_normpos,
int input_time);
302#define MATROSKA_CODEC_ID_V_VFW_FOURCC "V_MS/VFW/FOURCC"
303#define MATROSKA_CODEC_ID_V_UNCOMPRESSED "V_UNCOMPRESSED"
304#define MATROSKA_CODEC_ID_V_MPEG4_SP "V_MPEG4/ISO/SP"
305#define MATROSKA_CODEC_ID_V_MPEG4_ASP "V_MPEG4/ISO/ASP"
306#define MATROSKA_CODEC_ID_V_MPEG4_AP "V_MPEG4/ISO/AP"
307#define MATROSKA_CODEC_ID_V_MPEG4_AVC "V_MPEG4/ISO/AVC"
308#define MATROSKA_CODEC_ID_V_MSMPEG4V3 "V_MPEG4/MS/V3"
309#define MATROSKA_CODEC_ID_V_MPEG1 "V_MPEG1"
310#define MATROSKA_CODEC_ID_V_MPEG2 "V_MPEG2"
311#define MATROSKA_CODEC_ID_V_MPEG2 "V_MPEG2"
312#define MATROSKA_CODEC_ID_V_REAL_RV10 "V_REAL/RV10"
313#define MATROSKA_CODEC_ID_V_REAL_RV20 "V_REAL/RV20"
314#define MATROSKA_CODEC_ID_V_REAL_RV30 "V_REAL/RV30"
315#define MATROSKA_CODEC_ID_V_REAL_RV40 "V_REAL/RV40"
316#define MATROSKA_CODEC_ID_V_MJPEG "V_MJPEG"
317#define MATROSKA_CODEC_ID_V_THEORA "V_THEORA"
318#define MATROSKA_CODEC_ID_V_VP8 "V_VP8"
319#define MATROSKA_CODEC_ID_V_VP9 "V_VP9"
320#define MATROSKA_CODEC_ID_V_HEVC "V_MPEGH/ISO/HEVC"
321#define MATROSKA_CODEC_ID_V_AV1 "V_AV1"
323#define MATROSKA_CODEC_ID_A_MPEG1_L1 "A_MPEG/L1"
324#define MATROSKA_CODEC_ID_A_MPEG1_L2 "A_MPEG/L2"
325#define MATROSKA_CODEC_ID_A_MPEG1_L3 "A_MPEG/L3"
326#define MATROSKA_CODEC_ID_A_PCM_INT_BE "A_PCM/INT/BIG"
327#define MATROSKA_CODEC_ID_A_PCM_INT_LE "A_PCM/INT/LIT"
328#define MATROSKA_CODEC_ID_A_PCM_FLOAT "A_PCM/FLOAT/IEEE"
329#define MATROSKA_CODEC_ID_A_AC3 "A_AC3"
330#define MATROSKA_CODEC_ID_A_EAC3 "A_EAC3"
331#define MATROSKA_CODEC_ID_A_DTS "A_DTS"
332#define MATROSKA_CODEC_ID_A_VORBIS "A_VORBIS"
333#define MATROSKA_CODEC_ID_A_ACM "A_MS/ACM"
334#define MATROSKA_CODEC_ID_A_AAC "A_AAC"
335#define MATROSKA_CODEC_ID_A_REAL_14_4 "A_REAL/14_4"
336#define MATROSKA_CODEC_ID_A_REAL_28_8 "A_REAL/28_8"
337#define MATROSKA_CODEC_ID_A_REAL_COOK "A_REAL/COOK"
338#define MATROSKA_CODEC_ID_A_REAL_SIPR "A_REAL/SIPR"
339#define MATROSKA_CODEC_ID_A_REAL_RALF "A_REAL/RALF"
340#define MATROSKA_CODEC_ID_A_REAL_ATRC "A_REAL/ATRC"
341#define MATROSKA_CODEC_ID_A_FLAC "A_FLAC"
342#define MATROSKA_CODEC_ID_A_OPUS "A_OPUS"
343#define MATROSKA_CODEC_ID_A_TRUEHD "A_TRUEHD"
345#define MATROSKA_CODEC_ID_S_TEXT_UTF8 "S_TEXT/UTF8"
346#define MATROSKA_CODEC_ID_S_TEXT_SSA "S_TEXT/SSA"
347#define MATROSKA_CODEC_ID_S_TEXT_ASS "S_TEXT/ASS"
348#define MATROSKA_CODEC_ID_S_TEXT_USF "S_TEXT/USF"
349#define MATROSKA_CODEC_ID_S_UTF8 "S_UTF8"
350#define MATROSKA_CODEC_ID_S_SSA "S_SSA"
351#define MATROSKA_CODEC_ID_S_ASS "S_ASS"
352#define MATROSKA_CODEC_ID_S_DVBSUB "S_DVBSUB"
353#define MATROSKA_CODEC_ID_S_VOBSUB "S_VOBSUB"
354#define MATROSKA_CODEC_ID_S_HDMV_PGS "S_HDMV/PGS"
355#define MATROSKA_CODEC_ID_S_HDMV_TEXTST "S_HDMV/TEXTST"
358#define MATROSKA_NO_LACING 0x0
359#define MATROSKA_XIPH_LACING 0x1
360#define MATROSKA_FIXED_SIZE_LACING 0x2
361#define MATROSKA_EBML_LACING 0x3
364#define MATROSKA_TRACK_VIDEO 0x01
365#define MATROSKA_TRACK_AUDIO 0x02
366#define MATROSKA_TRACK_COMPLEX 0x03
367#define MATROSKA_TRACK_LOGO 0x10
368#define MATROSKA_TRACK_SUBTITLE 0x11
369#define MATROSKA_TRACK_CONTROL 0x20
372#define MATROSKA_COMPRESS_ZLIB 0x00
373#define MATROSKA_COMPRESS_BZLIB 0x01
374#define MATROSKA_COMPRESS_LZO1X 0x02
375#define MATROSKA_COMPRESS_HEADER_STRIP 0x03
376#define MATROSKA_COMPRESS_UNKNOWN 0xFFFFFFFE
377#define MATROSKA_COMPRESS_NONE 0xFFFFFFFF
Definition matroska.h:243
int channels
Definition matroska.h:246
int sampling_freq
Definition matroska.h:244
int output_sampling_freq
Definition matroska.h:245
int bits_per_sample
Definition matroska.h:247
Definition matroska.h:195
uint64_t time_start
Definition matroska.h:197
uint64_t uid
Definition matroska.h:196
int enabled
Definition matroska.h:204
char * country
Definition matroska.h:220
char * title
Definition matroska.h:218
int hidden
Definition matroska.h:201
char * language
Definition matroska.h:219
uint64_t time_end
Definition matroska.h:198
Definition matroska.h:224
unsigned int ordered
Definition matroska.h:228
int cap_chapters
Definition matroska.h:230
uint64_t uid
Definition matroska.h:225
unsigned int is_default
Definition matroska.h:227
unsigned int hidden
Definition matroska.h:226
matroska_chapter_t ** chapters
Definition matroska.h:231
Definition matroska.h:250
int custom_colors
Definition matroska.h:257
int width
Definition matroska.h:254
int height
Definition matroska.h:255
char type
Definition matroska.h:251
int forced_subs_only
Definition matroska.h:259
Definition matroska.h:263
int track_num
Definition matroska.h:264
uint32_t compress_algo
Definition matroska.h:274
void(* handle_content)(demux_plugin_t *this_gen, matroska_track_t *track, int decoder_flags, uint8_t *data, size_t data_len, int64_t data_pts, int data_duration, int input_normpos, int input_time)
Definition matroska.h:288
int64_t last_pts
Definition matroska.h:285
matroska_video_track_t * video_track
Definition matroska.h:281
char * compress_settings
Definition matroska.h:276
fifo_buffer_t * fifo
Definition matroska.h:279
int64_t delayed_pts
Definition matroska.h:286
char * codec_id
Definition matroska.h:270
uint64_t uid
Definition matroska.h:265
matroska_sub_track_t * sub_track
Definition matroska.h:283
uint32_t compress_len
Definition matroska.h:275
uint8_t * codec_private
Definition matroska.h:271
int default_flag
Definition matroska.h:273
uint64_t default_duration
Definition matroska.h:268
uint32_t codec_private_len
Definition matroska.h:272
uint32_t buf_type
Definition matroska.h:278
matroska_audio_track_t * audio_track
Definition matroska.h:282
char * language
Definition matroska.h:269
uint32_t track_type
Definition matroska.h:267
Definition matroska.h:235
int flag_interlaced
Definition matroska.h:236
int display_height
Definition matroska.h:240
int pixel_width
Definition matroska.h:237
int display_width
Definition matroska.h:239
int pixel_height
Definition matroska.h:238