summaryrefslogtreecommitdiff
path: root/lib/dvb/decoder.cpp
diff options
context:
space:
mode:
authorFelix Domke <tmbinc@elitedvb.net>2009-05-10 12:04:19 (GMT)
committerFelix Domke <tmbinc@elitedvb.net>2009-05-10 12:04:19 (GMT)
commita012dfc95def3f4043f5b0bb319f1f4073592543 (patch)
tree860e0126f891f6fcfadbb2b6b9e43d51d0f22ad0 /lib/dvb/decoder.cpp
parentcf0b25ad8660eb00d4c6a018d7cff29de801e6fa (diff)
fix pid change unfreeze
Diffstat (limited to 'lib/dvb/decoder.cpp')
-rw-r--r--lib/dvb/decoder.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp
index eb5258d..0280fe5 100644
--- a/lib/dvb/decoder.cpp
+++ b/lib/dvb/decoder.cpp
@@ -1000,7 +1000,7 @@ int eTSMPEGDecoder::setState()
}
#endif
- if (m_changed & changeState)
+ if (m_changed & (changeState|changeVideo|changeAudio))
{
/* play, slowmotion, fast-forward */
int state_table[6][4] =
@@ -1013,7 +1013,7 @@ int eTSMPEGDecoder::setState()
/* [stateSlowMotion] = */ {1, m_ff_sm_ratio, 0}
};
int *s = state_table[m_state];
- if (m_video)
+ if (m_changed & (changeState|changeVideo) && m_video)
{
m_video->setSlowMotion(s[1]);
m_video->setFastForward(s[2]);
@@ -1022,7 +1022,7 @@ int eTSMPEGDecoder::setState()
else
m_video->freeze();
}
- if (m_audio)
+ if (m_changed & (changeState|changeAudio) && m_audio)
{
if (s[0])
m_audio->unfreeze();