aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartijn Kaijser <martijn@xbmc.org>2018-12-16 09:31:04 +0100
committerGitHub <noreply@github.com>2018-12-16 09:31:04 +0100
commit0bbeefdadbc243a39d3f73124278d37e060836b7 (patch)
treeaee805a3bb9b5f7c54095ebe3ccf068b3ed28243
parent70f833ff49c5944774d26b553aa85a7f7189d4b4 (diff)
parent86cc708ec2caa924be9176201188cc05d6b0407c (diff)
Merge pull request #15054 from popcornmix/omx3d
OMXPlayerVideo: Send PLAYER_AVCHANGE message when stereo mode changes
-rw-r--r--xbmc/cores/omxplayer/OMXPlayerVideo.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp
index c3bb5377c1..93f41e7491 100644
--- a/xbmc/cores/omxplayer/OMXPlayerVideo.cpp
+++ b/xbmc/cores/omxplayer/OMXPlayerVideo.cpp
@@ -310,6 +310,13 @@ void OMXPlayerVideo::Output(double pts, bool bDropPacket)
omvb->m_state = MMAL::MMALStateBypass;
picture.videoBuffer = omvb;
+ if (m_processInfo.GetVideoStereoMode() != GetStereoMode())
+ {
+ m_processInfo.SetVideoStereoMode(picture.stereoMode);
+ // signal about changes in video parameters
+ m_messageParent.Put(new CDVDMsg(CDVDMsg::PLAYER_AVCHANGE));
+ }
+
m_renderManager.AddVideoPicture(picture, m_bAbortOutput, EINTERLACEMETHOD::VS_INTERLACEMETHOD_NONE, (m_syncState == ESyncState::SYNC_STARTING));
}
@@ -662,20 +669,20 @@ void OMXPlayerVideo::SetVideoRect(const CRect &InSrcRect, const CRect &InDestRec
if (stereoMode == "left_right")
{
- video_stereo_mode = RENDER_STEREO_MODE_SPLIT_HORIZONTAL;
+ video_stereo_mode = RENDER_STEREO_MODE_SPLIT_VERTICAL;
}
else if (stereoMode == "right_left")
{
- video_stereo_mode = RENDER_STEREO_MODE_SPLIT_HORIZONTAL;
+ video_stereo_mode = RENDER_STEREO_MODE_SPLIT_VERTICAL;
stereo_invert = true;
}
else if (stereoMode == "top_bottom")
{
- video_stereo_mode = RENDER_STEREO_MODE_SPLIT_VERTICAL;
+ video_stereo_mode = RENDER_STEREO_MODE_SPLIT_HORIZONTAL;
}
else if (stereoMode == "bottom_top")
{
- video_stereo_mode = RENDER_STEREO_MODE_SPLIT_VERTICAL;
+ video_stereo_mode = RENDER_STEREO_MODE_SPLIT_HORIZONTAL;
stereo_invert = true;
}