FFmpeg
matroska.c
Go to the documentation of this file.
1 /*
2  * Matroska common data
3  * Copyright (c) 2003-2004 The FFmpeg project
4  *
5  * This file is part of FFmpeg.
6  *
7  * FFmpeg is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2.1 of the License, or (at your option) any later version.
11  *
12  * FFmpeg is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with FFmpeg; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20  */
21 
22 #include "libavutil/stereo3d.h"
23 
24 #include "matroska.h"
25 
26 /* If you add a tag here that is not in ff_codec_bmp_tags[]
27  or ff_codec_wav_tags[], add it also to additional_audio_tags[]
28  or additional_video_tags[] in matroskaenc.c */
30  {"A_AAC" , AV_CODEC_ID_AAC},
31  {"A_AC3" , AV_CODEC_ID_AC3},
32  {"A_ALAC" , AV_CODEC_ID_ALAC},
33  {"A_DTS" , AV_CODEC_ID_DTS},
34  {"A_EAC3" , AV_CODEC_ID_EAC3},
35  {"A_FLAC" , AV_CODEC_ID_FLAC},
36  {"A_MLP" , AV_CODEC_ID_MLP},
37  {"A_MPEG/L2" , AV_CODEC_ID_MP2},
38  {"A_MPEG/L1" , AV_CODEC_ID_MP1},
39  {"A_MPEG/L3" , AV_CODEC_ID_MP3},
40  {"A_OPUS" , AV_CODEC_ID_OPUS},
41  {"A_OPUS/EXPERIMENTAL",AV_CODEC_ID_OPUS},
42  {"A_PCM/FLOAT/IEEE" , AV_CODEC_ID_PCM_F32LE},
43  {"A_PCM/FLOAT/IEEE" , AV_CODEC_ID_PCM_F64LE},
44  {"A_PCM/INT/BIG" , AV_CODEC_ID_PCM_S16BE},
45  {"A_PCM/INT/BIG" , AV_CODEC_ID_PCM_S24BE},
46  {"A_PCM/INT/BIG" , AV_CODEC_ID_PCM_S32BE},
47  {"A_PCM/INT/LIT" , AV_CODEC_ID_PCM_S16LE},
48  {"A_PCM/INT/LIT" , AV_CODEC_ID_PCM_S24LE},
49  {"A_PCM/INT/LIT" , AV_CODEC_ID_PCM_S32LE},
50  {"A_PCM/INT/LIT" , AV_CODEC_ID_PCM_U8},
51  {"A_QUICKTIME/QDMC" , AV_CODEC_ID_QDMC},
52  {"A_QUICKTIME/QDM2" , AV_CODEC_ID_QDM2},
53  {"A_REAL/14_4" , AV_CODEC_ID_RA_144},
54  {"A_REAL/28_8" , AV_CODEC_ID_RA_288},
55  {"A_REAL/ATRC" , AV_CODEC_ID_ATRAC3},
56  {"A_REAL/COOK" , AV_CODEC_ID_COOK},
57  {"A_REAL/SIPR" , AV_CODEC_ID_SIPR},
58  {"A_TRUEHD" , AV_CODEC_ID_TRUEHD},
59  {"A_TTA1" , AV_CODEC_ID_TTA},
60  {"A_VORBIS" , AV_CODEC_ID_VORBIS},
61  {"A_WAVPACK4" , AV_CODEC_ID_WAVPACK},
62 
63  {"D_WEBVTT/SUBTITLES" , AV_CODEC_ID_WEBVTT},
64  {"D_WEBVTT/CAPTIONS" , AV_CODEC_ID_WEBVTT},
65  {"D_WEBVTT/DESCRIPTIONS", AV_CODEC_ID_WEBVTT},
66  {"D_WEBVTT/METADATA" , AV_CODEC_ID_WEBVTT},
67 
68  {"S_TEXT/UTF8" , AV_CODEC_ID_SUBRIP},
69  {"S_TEXT/UTF8" , AV_CODEC_ID_TEXT},
70  {"S_TEXT/ASCII" , AV_CODEC_ID_TEXT},
71  {"S_TEXT/ASS" , AV_CODEC_ID_ASS},
72  {"S_TEXT/SSA" , AV_CODEC_ID_ASS},
73  {"S_ASS" , AV_CODEC_ID_ASS},
74  {"S_SSA" , AV_CODEC_ID_ASS},
75  {"S_VOBSUB" , AV_CODEC_ID_DVD_SUBTITLE},
76  {"S_DVBSUB" , AV_CODEC_ID_DVB_SUBTITLE},
77  {"S_HDMV/PGS" , AV_CODEC_ID_HDMV_PGS_SUBTITLE},
78  {"S_HDMV/TEXTST" , AV_CODEC_ID_HDMV_TEXT_SUBTITLE},
79  {"S_ARIBSUB" , AV_CODEC_ID_ARIB_CAPTION},
80 
81  {"V_AV1" , AV_CODEC_ID_AV1},
82  {"V_AVS2" , AV_CODEC_ID_AVS2},
83  {"V_AVS3" , AV_CODEC_ID_AVS3},
84  {"V_DIRAC" , AV_CODEC_ID_DIRAC},
85  {"V_FFV1" , AV_CODEC_ID_FFV1},
86  {"V_MJPEG" , AV_CODEC_ID_MJPEG},
87  {"V_MPEG1" , AV_CODEC_ID_MPEG1VIDEO},
88  {"V_MPEG2" , AV_CODEC_ID_MPEG2VIDEO},
89  {"V_MPEG4/ISO/ASP" , AV_CODEC_ID_MPEG4},
90  {"V_MPEG4/ISO/AP" , AV_CODEC_ID_MPEG4},
91  {"V_MPEG4/ISO/SP" , AV_CODEC_ID_MPEG4},
92  {"V_MPEG4/ISO/AVC" , AV_CODEC_ID_H264},
93  {"V_MPEGH/ISO/HEVC" , AV_CODEC_ID_HEVC},
94  {"V_MPEG4/MS/V3" , AV_CODEC_ID_MSMPEG4V3},
95  {"V_PRORES" , AV_CODEC_ID_PRORES},
96  {"V_REAL/RV10" , AV_CODEC_ID_RV10},
97  {"V_REAL/RV20" , AV_CODEC_ID_RV20},
98  {"V_REAL/RV30" , AV_CODEC_ID_RV30},
99  {"V_REAL/RV40" , AV_CODEC_ID_RV40},
100  {"V_SNOW" , AV_CODEC_ID_SNOW},
101  {"V_THEORA" , AV_CODEC_ID_THEORA},
102  {"V_UNCOMPRESSED" , AV_CODEC_ID_RAWVIDEO},
103  {"V_VP8" , AV_CODEC_ID_VP8},
104  {"V_VP9" , AV_CODEC_ID_VP9},
105 
106  {"" , AV_CODEC_ID_NONE}
107 };
108 
110  {"V_VP8" , AV_CODEC_ID_VP8},
111  {"V_VP9" , AV_CODEC_ID_VP9},
112  {"V_AV1" , AV_CODEC_ID_AV1},
113 
114  {"A_VORBIS" , AV_CODEC_ID_VORBIS},
115  {"A_OPUS" , AV_CODEC_ID_OPUS},
116 
117  {"D_WEBVTT/SUBTITLES" , AV_CODEC_ID_WEBVTT},
118  {"D_WEBVTT/CAPTIONS" , AV_CODEC_ID_WEBVTT},
119  {"D_WEBVTT/DESCRIPTIONS", AV_CODEC_ID_WEBVTT},
120  {"D_WEBVTT/METADATA" , AV_CODEC_ID_WEBVTT},
121 
122  {"" , AV_CODEC_ID_NONE}
123 };
124 
126  { "LEAD_PERFORMER", "performer" },
127  { "PART_NUMBER" , "track" },
128  { 0 }
129 };
130 
132  "mono",
133  "left_right",
134  "bottom_top",
135  "top_bottom",
136  "checkerboard_rl",
137  "checkerboard_lr",
138  "row_interleaved_rl",
139  "row_interleaved_lr",
140  "col_interleaved_rl",
141  "col_interleaved_lr",
142  "anaglyph_cyan_red",
143  "right_left",
144  "anaglyph_green_magenta",
145  "block_lr",
146  "block_rl",
147 };
148 
150  "left",
151  "right",
152  "background",
153 };
154 
156 {
157  AVStereo3D *stereo;
158  int ret;
159 
160  stereo = av_stereo3d_alloc();
161  if (!stereo)
162  return AVERROR(ENOMEM);
163 
164  // note: the missing breaks are intentional
165  switch (stereo_mode) {
167  stereo->type = AV_STEREO3D_2D;
168  break;
170  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
172  stereo->type = AV_STEREO3D_SIDEBYSIDE;
173  break;
175  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
177  stereo->type = AV_STEREO3D_TOPBOTTOM;
178  break;
180  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
182  stereo->type = AV_STEREO3D_CHECKERBOARD;
183  break;
185  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
187  stereo->type = AV_STEREO3D_LINES;
188  break;
190  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
192  stereo->type = AV_STEREO3D_COLUMNS;
193  break;
195  stereo->flags |= AV_STEREO3D_FLAG_INVERT;
198  break;
199  }
200 
201  ret = av_stream_add_side_data(st, AV_PKT_DATA_STEREO3D, (uint8_t *)stereo,
202  sizeof(*stereo));
203  if (ret < 0) {
204  av_freep(&stereo);
205  return ret;
206  }
207 
208  return 0;
209 }
AV_CODEC_ID_PCM_S16LE
@ AV_CODEC_ID_PCM_S16LE
Definition: codec_id.h:329
MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_RL
@ MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_RL
Definition: matroska.h:320
AV_CODEC_ID_AC3
@ AV_CODEC_ID_AC3
Definition: codec_id.h:444
AVERROR
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a all references to both lists are replaced with a reference to the intersection And when a single format is eventually chosen for a link amongst the remaining all references to the list are updated That means that if a filter requires that its input and output have the same format amongst a supported all it has to do is use a reference to the same list of formats query_formats can leave some formats unset and return AVERROR(EAGAIN) to cause the negotiation mechanism toagain later. That can be used by filters with complex requirements to use the format negotiated on one link to set the formats supported on another. Frame references ownership and permissions
MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_LR
@ MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_LR
Definition: matroska.h:319
AV_CODEC_ID_DIRAC
@ AV_CODEC_ID_DIRAC
Definition: codec_id.h:168
AV_CODEC_ID_RAWVIDEO
@ AV_CODEC_ID_RAWVIDEO
Definition: codec_id.h:65
AV_CODEC_ID_MPEG4
@ AV_CODEC_ID_MPEG4
Definition: codec_id.h:64
AV_CODEC_ID_RA_144
@ AV_CODEC_ID_RA_144
Definition: codec_id.h:426
AV_CODEC_ID_AVS2
@ AV_CODEC_ID_AVS2
Definition: codec_id.h:246
AV_CODEC_ID_ALAC
@ AV_CODEC_ID_ALAC
Definition: codec_id.h:457
MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_LR
@ MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_LR
Definition: matroska.h:327
matroska.h
AVMetadataConv
Definition: metadata.h:34
AV_CODEC_ID_FLAC
@ AV_CODEC_ID_FLAC
Definition: codec_id.h:453
AV_CODEC_ID_HDMV_PGS_SUBTITLE
@ AV_CODEC_ID_HDMV_PGS_SUBTITLE
Definition: codec_id.h:553
AV_CODEC_ID_TRUEHD
@ AV_CODEC_ID_TRUEHD
Definition: codec_id.h:485
MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_LR
@ MATROSKA_VIDEO_STEREOMODE_TYPE_ROW_INTERLEAVED_LR
Definition: matroska.h:321
AV_STEREO3D_SIDEBYSIDE
@ AV_STEREO3D_SIDEBYSIDE
Views are next to each other.
Definition: stereo3d.h:64
AV_CODEC_ID_ASS
@ AV_CODEC_ID_ASS
Definition: codec_id.h:569
AV_CODEC_ID_PCM_S16BE
@ AV_CODEC_ID_PCM_S16BE
Definition: codec_id.h:330
MATROSKA_VIDEO_STEREOMODE_TYPE_MONO
@ MATROSKA_VIDEO_STEREOMODE_TYPE_MONO
Definition: matroska.h:314
AV_STEREO3D_2D
@ AV_STEREO3D_2D
Video is not stereoscopic (and metadata has to be there).
Definition: stereo3d.h:52
ff_matroska_video_stereo_mode
const char *const ff_matroska_video_stereo_mode[MATROSKA_VIDEO_STEREOMODE_TYPE_NB]
Definition: matroska.c:131
MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_RL
@ MATROSKA_VIDEO_STEREOMODE_TYPE_CHECKERBOARD_RL
Definition: matroska.h:318
AV_CODEC_ID_MP3
@ AV_CODEC_ID_MP3
preferred ID for decoding MPEG audio layer 1, 2 or 3
Definition: codec_id.h:442
AV_CODEC_ID_ATRAC3
@ AV_CODEC_ID_ATRAC3
Definition: codec_id.h:472
AV_CODEC_ID_DVB_SUBTITLE
@ AV_CODEC_ID_DVB_SUBTITLE
Definition: codec_id.h:548
MatroskaVideoStereoModeType
MatroskaVideoStereoModeType
Definition: matroska.h:313
AV_CODEC_ID_SIPR
@ AV_CODEC_ID_SIPR
Definition: codec_id.h:482
AV_STEREO3D_FRAMESEQUENCE
@ AV_STEREO3D_FRAMESEQUENCE
Views are alternated temporally.
Definition: stereo3d.h:89
AV_CODEC_ID_TTA
@ AV_CODEC_ID_TTA
Definition: codec_id.h:463
AV_STEREO3D_LINES
@ AV_STEREO3D_LINES
Views are packed per line, as if interlaced.
Definition: stereo3d.h:126
stereo3d.h
AV_PKT_DATA_STEREO3D
@ AV_PKT_DATA_STEREO3D
This side data should be associated with a video stream and contains Stereoscopic 3D information in f...
Definition: packet.h:115
AV_CODEC_ID_VP9
@ AV_CODEC_ID_VP9
Definition: codec_id.h:220
AV_CODEC_ID_MP2
@ AV_CODEC_ID_MP2
Definition: codec_id.h:441
MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_LR
@ MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_LR
Definition: matroska.h:323
AV_CODEC_ID_H264
@ AV_CODEC_ID_H264
Definition: codec_id.h:79
ff_webm_codec_tags
const CodecTags ff_webm_codec_tags[]
Definition: matroska.c:109
AV_CODEC_ID_ARIB_CAPTION
@ AV_CODEC_ID_ARIB_CAPTION
Definition: codec_id.h:572
AVStereo3D::flags
int flags
Additional information about the frame packing.
Definition: stereo3d.h:182
AV_CODEC_ID_WEBVTT
@ AV_CODEC_ID_WEBVTT
Definition: codec_id.h:565
AV_CODEC_ID_AVS3
@ AV_CODEC_ID_AVS3
Definition: codec_id.h:248
MATROSKA_VIDEO_STEREOMODE_TYPE_TOP_BOTTOM
@ MATROSKA_VIDEO_STEREOMODE_TYPE_TOP_BOTTOM
Definition: matroska.h:317
AV_CODEC_ID_AV1
@ AV_CODEC_ID_AV1
Definition: codec_id.h:283
av_stream_add_side_data
int av_stream_add_side_data(AVStream *st, enum AVPacketSideDataType type, uint8_t *data, size_t size)
Wrap an existing array as stream side data.
Definition: avformat.c:156
MATROSKA_VIDEO_STEREOMODE_TYPE_BOTTOM_TOP
@ MATROSKA_VIDEO_STEREOMODE_TYPE_BOTTOM_TOP
Definition: matroska.h:316
AV_CODEC_ID_DVD_SUBTITLE
@ AV_CODEC_ID_DVD_SUBTITLE
Definition: codec_id.h:547
ff_matroska_video_stereo_plane
const char *const ff_matroska_video_stereo_plane[MATROSKA_VIDEO_STEREO_PLANE_COUNT]
Definition: matroska.c:149
AV_CODEC_ID_QDM2
@ AV_CODEC_ID_QDM2
Definition: codec_id.h:460
AV_CODEC_ID_MPEG1VIDEO
@ AV_CODEC_ID_MPEG1VIDEO
Definition: codec_id.h:53
AV_CODEC_ID_EAC3
@ AV_CODEC_ID_EAC3
Definition: codec_id.h:481
AV_CODEC_ID_AAC
@ AV_CODEC_ID_AAC
Definition: codec_id.h:443
AV_CODEC_ID_FFV1
@ AV_CODEC_ID_FFV1
Definition: codec_id.h:85
MATROSKA_VIDEO_STEREOMODE_TYPE_LEFT_RIGHT
@ MATROSKA_VIDEO_STEREOMODE_TYPE_LEFT_RIGHT
Definition: matroska.h:315
AV_CODEC_ID_PCM_S24LE
@ AV_CODEC_ID_PCM_S24LE
Definition: codec_id.h:341
AV_STEREO3D_CHECKERBOARD
@ AV_STEREO3D_CHECKERBOARD
Views are packed in a checkerboard-like structure per pixel.
Definition: stereo3d.h:101
AV_CODEC_ID_DTS
@ AV_CODEC_ID_DTS
Definition: codec_id.h:445
AV_CODEC_ID_QDMC
@ AV_CODEC_ID_QDMC
Definition: codec_id.h:491
AV_CODEC_ID_OPUS
@ AV_CODEC_ID_OPUS
Definition: codec_id.h:501
AV_CODEC_ID_RV30
@ AV_CODEC_ID_RV30
Definition: codec_id.h:120
AV_STEREO3D_FLAG_INVERT
#define AV_STEREO3D_FLAG_INVERT
Inverted views, Right/Bottom represents the left view.
Definition: stereo3d.h:164
AV_CODEC_ID_MJPEG
@ AV_CODEC_ID_MJPEG
Definition: codec_id.h:59
AV_CODEC_ID_RA_288
@ AV_CODEC_ID_RA_288
Definition: codec_id.h:427
AV_CODEC_ID_RV40
@ AV_CODEC_ID_RV40
Definition: codec_id.h:121
AV_CODEC_ID_RV10
@ AV_CODEC_ID_RV10
Definition: codec_id.h:57
AV_CODEC_ID_NONE
@ AV_CODEC_ID_NONE
Definition: codec_id.h:50
CodecTags
Definition: matroska.h:376
AV_CODEC_ID_THEORA
@ AV_CODEC_ID_THEORA
Definition: codec_id.h:82
AV_CODEC_ID_SUBRIP
@ AV_CODEC_ID_SUBRIP
Definition: codec_id.h:564
AV_STEREO3D_TOPBOTTOM
@ AV_STEREO3D_TOPBOTTOM
Views are on top of each other.
Definition: stereo3d.h:76
AV_CODEC_ID_RV20
@ AV_CODEC_ID_RV20
Definition: codec_id.h:58
AV_CODEC_ID_HEVC
@ AV_CODEC_ID_HEVC
Definition: codec_id.h:226
AV_CODEC_ID_PCM_S32BE
@ AV_CODEC_ID_PCM_S32BE
Definition: codec_id.h:338
ff_mkv_metadata_conv
const AVMetadataConv ff_mkv_metadata_conv[]
Definition: matroska.c:125
MATROSKA_VIDEO_STEREOMODE_TYPE_RIGHT_LEFT
@ MATROSKA_VIDEO_STEREOMODE_TYPE_RIGHT_LEFT
Definition: matroska.h:325
ret
ret
Definition: filter_design.txt:187
AVStream
Stream structure.
Definition: avformat.h:838
av_stereo3d_alloc
AVStereo3D * av_stereo3d_alloc(void)
Allocate an AVStereo3D structure and set its fields to default values.
Definition: stereo3d.c:29
AV_STEREO3D_COLUMNS
@ AV_STEREO3D_COLUMNS
Views are packed per column.
Definition: stereo3d.h:138
AVStereo3D::type
enum AVStereo3DType type
How views are packed within the video.
Definition: stereo3d.h:177
AV_CODEC_ID_TEXT
@ AV_CODEC_ID_TEXT
raw UTF-8 text
Definition: codec_id.h:549
MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_RL
@ MATROSKA_VIDEO_STEREOMODE_TYPE_COL_INTERLEAVED_RL
Definition: matroska.h:322
AV_CODEC_ID_SNOW
@ AV_CODEC_ID_SNOW
Definition: codec_id.h:266
MATROSKA_VIDEO_STEREO_PLANE_COUNT
#define MATROSKA_VIDEO_STEREO_PLANE_COUNT
Definition: matroska.h:384
AV_CODEC_ID_PCM_S32LE
@ AV_CODEC_ID_PCM_S32LE
Definition: codec_id.h:337
AV_CODEC_ID_PCM_U8
@ AV_CODEC_ID_PCM_U8
Definition: codec_id.h:334
ff_mkv_stereo3d_conv
int ff_mkv_stereo3d_conv(AVStream *st, MatroskaVideoStereoModeType stereo_mode)
Definition: matroska.c:155
MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_RL
@ MATROSKA_VIDEO_STEREOMODE_TYPE_BOTH_EYES_BLOCK_RL
Definition: matroska.h:328
ff_mkv_codec_tags
const CodecTags ff_mkv_codec_tags[]
Definition: matroska.c:29
AV_CODEC_ID_PCM_F64LE
@ AV_CODEC_ID_PCM_F64LE
Definition: codec_id.h:352
MATROSKA_VIDEO_STEREOMODE_TYPE_NB
@ MATROSKA_VIDEO_STEREOMODE_TYPE_NB
Definition: matroska.h:329
av_freep
#define av_freep(p)
Definition: tableprint_vlc.h:34
AV_CODEC_ID_VP8
@ AV_CODEC_ID_VP8
Definition: codec_id.h:192
AV_CODEC_ID_PCM_F32LE
@ AV_CODEC_ID_PCM_F32LE
Definition: codec_id.h:350
AV_CODEC_ID_WAVPACK
@ AV_CODEC_ID_WAVPACK
Definition: codec_id.h:466
AV_CODEC_ID_COOK
@ AV_CODEC_ID_COOK
Definition: codec_id.h:461
AV_CODEC_ID_MSMPEG4V3
@ AV_CODEC_ID_MSMPEG4V3
Definition: codec_id.h:68
AV_CODEC_ID_HDMV_TEXT_SUBTITLE
@ AV_CODEC_ID_HDMV_TEXT_SUBTITLE
Definition: codec_id.h:570
AV_CODEC_ID_VORBIS
@ AV_CODEC_ID_VORBIS
Definition: codec_id.h:446
AVStereo3D
Stereo 3D type: this structure describes how two videos are packed within a single video surface,...
Definition: stereo3d.h:173
AV_CODEC_ID_MPEG2VIDEO
@ AV_CODEC_ID_MPEG2VIDEO
preferred ID for MPEG-1/2 video decoding
Definition: codec_id.h:54
AV_CODEC_ID_MP1
@ AV_CODEC_ID_MP1
Definition: codec_id.h:483
AV_CODEC_ID_PCM_S24BE
@ AV_CODEC_ID_PCM_S24BE
Definition: codec_id.h:342
AV_CODEC_ID_MLP
@ AV_CODEC_ID_MLP
Definition: codec_id.h:470
AV_CODEC_ID_PRORES
@ AV_CODEC_ID_PRORES
Definition: codec_id.h:200