summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Reufer <thomas@reufer.ch>2015-06-22 16:24:04 +0200
committerThomas Reufer <thomas@reufer.ch>2015-06-22 16:24:04 +0200
commita87df97d3c5c29ee6c294085f52acb0978b5585a (patch)
treef290b3e2cb2515f2032aa7e81a2de52c2fe64af7
parentaa5f04260d0d2ecac5070a38122b3446898993e4 (diff)
downloadvdr-plugin-rpihddevice-a87df97d3c5c29ee6c294085f52acb0978b5585a.tar.gz
vdr-plugin-rpihddevice-a87df97d3c5c29ee6c294085f52acb0978b5585a.tar.bz2
fixed stream reset in HandleBufferStall() and StillPicture()
-rw-r--r--omxdevice.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/omxdevice.c b/omxdevice.c
index 80fa0f3..a48c1f7 100644
--- a/omxdevice.c
+++ b/omxdevice.c
@@ -217,6 +217,7 @@ void cOmxDevice::StillPicture(const uchar *Data, int Length)
m_mutex->Lock();
m_playbackSpeed = eNormal;
m_direction = eForward;
+ m_hasVideo = false;
m_omx->StopClock();
// to get a picture displayed, PlayVideo() needs to be called
@@ -640,9 +641,12 @@ void cOmxDevice::HandleBufferStall()
ELOG("buffer stall!");
m_mutex->Lock();
- FlushStreams();
+ FlushStreams(true);
+ m_omx->StopVideo();
+
m_hasAudio = false;
m_hasVideo = false;
+ m_videoCodec = cVideoCodec::eInvalid;
m_mutex->Unlock();
}