| ... | ... |
@@ -77,8 +77,8 @@ |
| 77 | 77 |
#define MATROSKA_ID_TRACKNUMBER 0xD7 |
| 78 | 78 |
#define MATROSKA_ID_TRACKUID 0x73C5 |
| 79 | 79 |
#define MATROSKA_ID_TRACKTYPE 0x83 |
| 80 |
-#define MATROSKA_ID_TRACKAUDIO 0xE1 |
|
| 81 |
-#define MATROSKA_ID_TRACKVIDEO 0xE0 |
|
| 80 |
+#define MATROSKA_ID_TRACKVIDEO 0xE0 |
|
| 81 |
+#define MATROSKA_ID_TRACKAUDIO 0xE1 |
|
| 82 | 82 |
#define MATROSKA_ID_CODECID 0x86 |
| 83 | 83 |
#define MATROSKA_ID_CODECPRIVATE 0x63A2 |
| 84 | 84 |
#define MATROSKA_ID_CODECNAME 0x258688 |
| ... | ... |
@@ -219,21 +219,21 @@ typedef enum {
|
| 219 | 219 |
} MatroskaTrackEncodingCompAlgo; |
| 220 | 220 |
|
| 221 | 221 |
typedef enum {
|
| 222 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_MONO = 0, |
|
| 223 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_LEFT_RIGHT = 1, |
|
| 224 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_BOTTOM_TOP = 2, |
|
| 225 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_TOP_BOTTOM = 3, |
|
| 226 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_RL = 4, |
|
| 227 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_LR = 5, |
|
| 228 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_RL = 6, |
|
| 229 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_LR = 7, |
|
| 230 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_RL = 8, |
|
| 231 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_LR = 9, |
|
| 232 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_ANAGLYPH_CYAN_RED = 10, |
|
| 233 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_RIGHT_LEFT = 11, |
|
| 234 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_ANAGLYPH_GREEN_MAG = 12, |
|
| 235 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_LR = 13, |
|
| 236 |
- MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_RL = 14, |
|
| 222 |
+ MATROSKA_VIDEO_STEREOMODE_MONO = 0, |
|
| 223 |
+ MATROSKA_VIDEO_STEREOMODE_LEFT_RIGHT = 1, |
|
| 224 |
+ MATROSKA_VIDEO_STEREOMODE_BOTTOM_TOP = 2, |
|
| 225 |
+ MATROSKA_VIDEO_STEREOMODE_TOP_BOTTOM = 3, |
|
| 226 |
+ MATROSKA_VIDEO_STEREOMODE_CHECKERBOARD_RL = 4, |
|
| 227 |
+ MATROSKA_VIDEO_STEREOMODE_CHECKERBOARD_LR = 5, |
|
| 228 |
+ MATROSKA_VIDEO_STEREOMODE_ROW_INTERLEAVED_RL = 6, |
|
| 229 |
+ MATROSKA_VIDEO_STEREOMODE_ROW_INTERLEAVED_LR = 7, |
|
| 230 |
+ MATROSKA_VIDEO_STEREOMODE_COL_INTERLEAVED_RL = 8, |
|
| 231 |
+ MATROSKA_VIDEO_STEREOMODE_COL_INTERLEAVED_LR = 9, |
|
| 232 |
+ MATROSKA_VIDEO_STEREOMODE_ANAGLYPH_CYAN_RED = 10, |
|
| 233 |
+ MATROSKA_VIDEO_STEREOMODE_RIGHT_LEFT = 11, |
|
| 234 |
+ MATROSKA_VIDEO_STEREOMODE_ANAGLYPH_GREEN_MAG = 12, |
|
| 235 |
+ MATROSKA_VIDEO_STEREOMODE_BOTH_EYES_BLOCK_LR = 13, |
|
| 236 |
+ MATROSKA_VIDEO_STEREOMODE_BOTH_EYES_BLOCK_RL = 14, |
|
| 237 | 237 |
} MatroskaVideoStereoModeType; |
| 238 | 238 |
|
| 239 | 239 |
/* |
| ... | ... |
@@ -591,20 +591,21 @@ static int mkv_write_tracks(AVFormatContext *s) |
| 591 | 591 |
int valid_fmt = 0; |
| 592 | 592 |
|
| 593 | 593 |
switch (mkv->mode) {
|
| 594 |
- case MODE_WEBM: |
|
| 595 |
- if (stereo_fmt <= MATROSKA_VIDEO_STEREOMODE_TYPE_TOP_BOTTOM |
|
| 596 |
- || stereo_fmt == MATROSKA_VIDEO_STEREOMODE_TYPE_RIGHT_LEFT) |
|
| 594 |
+ case MODE_WEBM: |
|
| 595 |
+ if (stereo_fmt <= MATROSKA_VIDEO_STEREOMODE_TOP_BOTTOM |
|
| 596 |
+ || stereo_fmt == MATROSKA_VIDEO_STEREOMODE_RIGHT_LEFT) |
|
| 597 | 597 |
valid_fmt = 1; |
| 598 |
- break; |
|
| 599 |
- case MODE_MATROSKAv2: |
|
| 600 |
- if (stereo_fmt <= MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_RL) |
|
| 601 |
- valid_fmt = 1; |
|
| 602 |
- break; |
|
| 598 |
+ break; |
|
| 599 |
+ case MODE_MATROSKAv2: |
|
| 600 |
+ if (stereo_fmt <= MATROSKA_VIDEO_STEREOMODE_BOTH_EYES_BLOCK_RL) |
|
| 601 |
+ valid_fmt = 1; |
|
| 602 |
+ break; |
|
| 603 | 603 |
} |
| 604 | 604 |
|
| 605 | 605 |
if (valid_fmt) |
| 606 | 606 |
put_ebml_uint (pb, MATROSKA_ID_VIDEOSTEREOMODE, stereo_fmt); |
| 607 | 607 |
} |
| 608 |
+ |
|
| 608 | 609 |
if (st->sample_aspect_ratio.num) {
|
| 609 | 610 |
int d_width = codec->width*av_q2d(st->sample_aspect_ratio); |
| 610 | 611 |
put_ebml_uint(pb, MATROSKA_ID_VIDEODISPLAYWIDTH , d_width); |