-
- _odd = !_odd;
-}
-
-/** Called by subclasses when a subtitle is ready.
- * s may be 0 to say that there is no current subtitle.
- * @param s New current subtitle, or 0.
- */
-void
-VideoDecoder::subtitle (shared_ptr<TimedSubtitle> s)
-{
- _timed_subtitle = s;
-
- if (_timed_subtitle) {
- Position const p = _timed_subtitle->subtitle()->position ();
- _timed_subtitle->subtitle()->set_position (Position (p.x - _video_content->crop().left, p.y - _video_content->crop().top));
+ case VideoFrameType::THREE_D_LEFT_RIGHT:
+ Data(ContentVideo(image, time, Eyes::LEFT, Part::LEFT_HALF));
+ Data(ContentVideo(image, time, Eyes::RIGHT, Part::RIGHT_HALF));
+ break;
+ case VideoFrameType::THREE_D_TOP_BOTTOM:
+ Data(ContentVideo(image, time, Eyes::LEFT, Part::TOP_HALF));
+ Data(ContentVideo(image, time, Eyes::RIGHT, Part::BOTTOM_HALF));
+ break;
+ case VideoFrameType::THREE_D_LEFT:
+ Data(ContentVideo(image, time, Eyes::LEFT, Part::WHOLE));
+ break;
+ case VideoFrameType::THREE_D_RIGHT:
+ Data(ContentVideo(image, time, Eyes::RIGHT, Part::WHOLE));
+ break;
+ default:
+ DCPOMATIC_ASSERT (false);