Add 3D video frame type for, e.g. 3D DCP inputs (part of #806).
authorCarl Hetherington <cth@carlh.net>
Mon, 13 Jun 2016 15:08:22 +0000 (16:08 +0100)
committerCarl Hetherington <cth@carlh.net>
Mon, 13 Jun 2016 15:08:22 +0000 (16:08 +0100)
ChangeLog
src/lib/types.cc
src/lib/types.h
src/lib/video_content.cc
src/wx/video_panel.cc

index 44b857dfc552ca04826234fe61b2ab59f61adcef..f6f3bc83ac0b64eeac69be18d2d40b33747a18fb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
 2016-06-13  c.hetherington  <cth@carlh.net>
 
+       * Add 3D video frame type for 3D DCP inputs (#806).
+
        * Add button to move things to the start of reels (#798).
 
 2016-06-08  Carl Hetherington  <cth@carlh.net>
index ce50814644de70bd866d6a3d6bd11803f80d8cf7..f31e7a3ec3854f9c1fee5d27592897e20a52628a 100644 (file)
@@ -95,6 +95,8 @@ video_frame_type_to_string (VideoFrameType t)
        switch (t) {
        case VIDEO_FRAME_TYPE_2D:
                return "2d";
+       case VIDEO_FRAME_TYPE_3D:
+               return "3d";
        case VIDEO_FRAME_TYPE_3D_LEFT_RIGHT:
                return "3d-left-right";
        case VIDEO_FRAME_TYPE_3D_TOP_BOTTOM:
@@ -117,6 +119,8 @@ string_to_video_frame_type (string s)
 {
        if (s == "2d") {
                return VIDEO_FRAME_TYPE_2D;
+       } else if (s == "3d") {
+               return VIDEO_FRAME_TYPE_3D;
        } else if (s == "3d-left-right") {
                return VIDEO_FRAME_TYPE_3D_LEFT_RIGHT;
        } else if (s == "3d-top-bottom") {
index 8513fde519efac8b9a1d2dbd4b372e957949c29f..041db1786ea6c2653eba64c97161898b530a76c7 100644 (file)
@@ -78,6 +78,8 @@ typedef int64_t Frame;
 enum VideoFrameType
 {
        VIDEO_FRAME_TYPE_2D,
+       /** `True' 3D content, e.g. 3D DCPs */
+       VIDEO_FRAME_TYPE_3D,
        VIDEO_FRAME_TYPE_3D_LEFT_RIGHT,
        VIDEO_FRAME_TYPE_3D_TOP_BOTTOM,
        VIDEO_FRAME_TYPE_3D_ALTERNATE,
index 66c63961e8142bb90c3778fe3fdefdf17d8ae281..a59e9669d62de990b6f4b9359476ee17bededcb4 100644 (file)
@@ -303,6 +303,7 @@ VideoContent::size_after_3d_split () const
        dcp::Size const s = size ();
        switch (frame_type ()) {
        case VIDEO_FRAME_TYPE_2D:
+       case VIDEO_FRAME_TYPE_3D:
        case VIDEO_FRAME_TYPE_3D_ALTERNATE:
        case VIDEO_FRAME_TYPE_3D_LEFT:
        case VIDEO_FRAME_TYPE_3D_RIGHT:
index 8a8dbd181609e5c15734cc2fc4770bcdb5fd5c20..18d5894830f0a57fa5cf70eb26c4535cb8d82eff 100644 (file)
@@ -232,6 +232,7 @@ VideoPanel::VideoPanel (ContentPanel* p)
        }
 
        _frame_type->wrapped()->Append (_("2D"));
+       _frame_type->wrapped()->Append (_("3D"));
        _frame_type->wrapped()->Append (_("3D left/right"));
        _frame_type->wrapped()->Append (_("3D top/bottom"));
        _frame_type->wrapped()->Append (_("3D alternate"));