[rbp/omxplayer] fixed channel switching while pvr playback
authorgimli <ebsi4711@gmail.com>
Fri, 14 Dec 2012 17:57:58 +0000 (18:57 +0100)
committergimli <ebsi4711@gmail.com>
Fri, 14 Dec 2012 18:05:39 +0000 (19:05 +0100)
xbmc/cores/omxplayer/OMXAudio.cpp
xbmc/cores/omxplayer/OMXVideo.cpp

index 5e6c0df..5399b10 100644 (file)
@@ -583,10 +583,10 @@ bool COMXAudio::Deinitialize()
   m_omx_decoder.FlushInput();
 
   if(m_omx_render)
-    m_omx_render->Deinitialize();
+    m_omx_render->Deinitialize(true);
   if(!m_Passthrough)
-    m_omx_mixer.Deinitialize();
-  m_omx_decoder.Deinitialize();
+    m_omx_mixer.Deinitialize(true);
+  m_omx_decoder.Deinitialize(true);
 
   m_BytesPerSec = 0;
   m_BufferLen   = 0;
index 6de0ee9..9071492 100644 (file)
@@ -650,9 +650,6 @@ bool COMXVideo::Open(CDVDStreamInfo &hints, OMXClock *clock, bool deinterlace, b
 
 void COMXVideo::Close()
 {
-  if(!m_is_open)
-    return;
-
   m_omx_tunnel_decoder.Flush();
   if(m_deinterlace)
     m_omx_tunnel_image_fx.Flush();
@@ -667,11 +664,11 @@ void COMXVideo::Close()
 
   m_omx_decoder.FlushInput();
 
-  m_omx_sched.Deinitialize();
+  m_omx_sched.Deinitialize(true);
   if(m_deinterlace)
-    m_omx_image_fx.Deinitialize();
-  m_omx_decoder.Deinitialize();
-  m_omx_render.Deinitialize();
+    m_omx_image_fx.Deinitialize(true);
+  m_omx_decoder.Deinitialize(true);
+  m_omx_render.Deinitialize(true);
 
   m_is_open       = false;