#ifndef FFMPEG_MATROSKA_H
#define FFMPEG_MATROSKA_H
-#include "avcodec.h"
+#include "libavcodec/avcodec.h"
/* EBML version supported */
#define EBML_VERSION 1
#define MATROSKA_ID_SEEKHEAD 0x114D9B74
#define MATROSKA_ID_ATTACHMENTS 0x1941A469
#define MATROSKA_ID_CLUSTER 0x1F43B675
+#define MATROSKA_ID_CHAPTERS 0x1043A770
/* IDs in the info master */
#define MATROSKA_ID_TIMECODESCALE 0x2AD7B1
#define MATROSKA_ID_CODECNAME 0x258688
#define MATROSKA_ID_CODECINFOURL 0x3B4040
#define MATROSKA_ID_CODECDOWNLOADURL 0x26B240
+#define MATROSKA_ID_CODECDECODEALL 0xAA
#define MATROSKA_ID_TRACKNAME 0x536E
#define MATROSKA_ID_TRACKLANGUAGE 0x22B59C
#define MATROSKA_ID_TRACKFLAGENABLED 0xB9
#define MATROSKA_ID_TRACKFLAGDEFAULT 0x88
+#define MATROSKA_ID_TRACKFLAGFORCED 0x55AA
#define MATROSKA_ID_TRACKFLAGLACING 0x9C
#define MATROSKA_ID_TRACKMINCACHE 0x6DE7
#define MATROSKA_ID_TRACKMAXCACHE 0x6DF8
#define MATROSKA_ID_TRACKDEFAULTDURATION 0x23E383
#define MATROSKA_ID_TRACKCONTENTENCODINGS 0x6D80
#define MATROSKA_ID_TRACKCONTENTENCODING 0x6240
+#define MATROSKA_ID_TRACKTIMECODESCALE 0x23314F
/* IDs in the trackvideo master */
#define MATROSKA_ID_VIDEOFRAMERATE 0x2383E3
#define MATROSKA_ID_FILEDATA 0x465C
#define MATROSKA_ID_FILEUID 0x46AE
+/* IDs in the chapters master */
+#define MATROSKA_ID_EDITIONENTRY 0x45B9
+#define MATROSKA_ID_CHAPTERATOM 0xB6
+#define MATROSKA_ID_CHAPTERTIMESTART 0x91
+#define MATROSKA_ID_CHAPTERTIMEEND 0x92
+#define MATROSKA_ID_CHAPTERDISPLAY 0x80
+#define MATROSKA_ID_CHAPSTRING 0x85
+#define MATROSKA_ID_EDITIONUID 0x45BC
+#define MATROSKA_ID_EDITIONFLAGHIDDEN 0x45BD
+#define MATROSKA_ID_EDITIONFLAGDEFAULT 0x45DB
+#define MATROSKA_ID_CHAPTERUID 0x73C4
+#define MATROSKA_ID_CHAPTERFLAGHIDDEN 0x98
+
typedef enum {
+ MATROSKA_TRACK_TYPE_NONE = 0x0,
MATROSKA_TRACK_TYPE_VIDEO = 0x1,
MATROSKA_TRACK_TYPE_AUDIO = 0x2,
MATROSKA_TRACK_TYPE_COMPLEX = 0x3,
MATROSKA_TRACK_TYPE_CONTROL = 0x20,
} MatroskaTrackType;
-typedef enum {
- MATROSKA_EYE_MODE_MONO = 0x0,
- MATROSKA_EYE_MODE_RIGHT = 0x1,
- MATROSKA_EYE_MODE_LEFT = 0x2,
- MATROSKA_EYE_MODE_BOTH = 0x3,
-} MatroskaEyeMode;
-
-typedef enum {
- MATROSKA_ASPECT_RATIO_MODE_FREE = 0x0,
- MATROSKA_ASPECT_RATIO_MODE_KEEP = 0x1,
- MATROSKA_ASPECT_RATIO_MODE_FIXED = 0x2,
-} MatroskaAspectRatioMode;
-
typedef enum {
MATROSKA_TRACK_ENCODING_COMP_ZLIB = 0,
MATROSKA_TRACK_ENCODING_COMP_BZLIB = 1,