---
libavcodec/avcodec.h | 1 +
libavutil/Makefile | 1 +
libavutil/frame.h | 4 ++++
libavutil/stereoscopy.h | 54 +++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 60 insertions(+)
create mode 100644 libavutil/stereoscopy.h
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index bd9a80c..549982f 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -803,6 +803,7 @@ typedef struct AVPanScan{
int16_t position[3][2];
}AVPanScan;
+
#define FF_QSCALE_TYPE_MPEG1 0
#define FF_QSCALE_TYPE_MPEG2 1
#define FF_QSCALE_TYPE_H264 2
diff --git a/libavutil/Makefile b/libavutil/Makefile
index 910f6f0..db33ff7 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -41,6 +41,7 @@ HEADERS = adler32.h
\
rational.h \
samplefmt.h \
sha.h \
+ stereoscopy.h \
time.h \
version.h \
xtea.h \
diff --git a/libavutil/frame.h b/libavutil/frame.h
index adc23b2..708b80d 100644
--- a/libavutil/frame.h
+++ b/libavutil/frame.h
@@ -35,6 +35,10 @@ enum AVFrameSideDataType {
* The data is the AVPanScan struct defined in libavcodec.
*/
AV_FRAME_DATA_PANSCAN,
+ /**
+ * The data is the AVStereo3D struct defined in libavcodec.
+ */
+ AV_FRAME_DATA_STEREO3D,
};
typedef struct AVFrameSideData {
diff --git a/libavutil/stereoscopy.h b/libavutil/stereoscopy.h
new file mode 100644
index 0000000..2f8c222
--- /dev/null
+++ b/libavutil/stereoscopy.h
@@ -0,0 +1,54 @@
+/*
+ * Copyright (c) 2013 Vittorio Giovara <[email protected]>
+ *
+ * This file is part of Libav.
+ *
+ * Libav is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * Libav is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with Libav; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+
+/* How views are packed within the frame or container*/
+enum AVStereo3DType {
+ AV_STEREO3D_NONE = 0x00000000,
+ AV_STEREO3D_CHECKERS = 0x00000001,
+ AV_STEREO3D_LINES = 0x00000002,
+ AV_STEREO3D_COLUMNS = 0x00000004,
+ AV_STEREO3D_FRAMESEQUENCE = 0x00000008,
+ AV_STEREO3D_SIDEBYSIDE = 0x00000010,
+ AV_STEREO3D_TOPBOTTOM = 0x00000020,
+
+ AV_STEREO3D_ANAGLYPH = 0x00100000,
+ AV_STEREO3D_ANAGLYPH_RED_CYAN = 0x00200000,
+ AV_STEREO3D_ANAGLYPH_GREEN_MAGENTA = 0x00400000,
+ AV_STEREO3D_ANAGLYPH_AMBER_BLUE = 0x00800000,
+ AV_STEREO3D_ANAGLYPH_RED_GREEN = 0x01000000,
+ AV_STEREO3D_ANAGLYPH_RED_BLUE = 0x02000000,
+ AV_STEREO3D_ANAGLYPH_MAGENTA_CYAN = 0x04000000,
+};
+
+enum AVStereo3DInfo {
+ /* Views are at full res or should be rescaled */
+ AV_STEREO3D_SIZE_FULL = 0x00000000,
+ AV_STEREO3D_SIZE_HALF = 0x10000000,
+
+ /* Left/Rigth or Right/Left */
+ AV_STEREO3D_ORDER_LR = 0x20000000,
+ AV_STEREO3D_ORDER_RL = 0x40000000,
+
+ /* Video surface also contains a depth map */
+ AV_STEREO3D_DEPTH = 0x80000000,
+};
+
+
--
1.7.9.5
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel