RESULT eDVBServicePlay::setSlowMotion(int ratio)
{
- assert(ratio); /* The API changed: instead of calling setSlowMotion(0), call play! */
+ ASSERT(ratio); /* The API changed: instead of calling setSlowMotion(0), call play! */
eDebug("eDVBServicePlay::setSlowMotion(%d)", ratio);
setFastForward_internal(0);
if (m_decoder)
RESULT eDVBServicePlay::setFastForward(int ratio)
{
eDebug("eDVBServicePlay::setFastForward(%d)", ratio);
- assert(ratio);
+ ASSERT(ratio);
return setFastForward_internal(ratio);
}
return -1;
if (ffratio == 0)
- ; /* return m_decoder->play(); is done in caller*/
+ return 0; /* return m_decoder->play(); is done in caller*/
else if (ffratio != 1)
return m_decoder->setFastForward(ffratio);
else
eDebug("set audio pid failed");
return -4;
}
+
+ m_decoder->set();
/* if we are not in PVR mode, timeshift is not active and we are not in pip mode, check if we need to enable the rds reader */
if (!(m_is_pvr || m_timeshift_active || !m_is_primary))
std::multiset<cueEntry>::iterator i(m_cue_entries.begin());
+ int have_any_span = 0;
+
while (1)
{
if (i == m_cue_entries.end())
+ {
+ if (!have_any_span)
+ break;
out = length;
- else {
+ } else {
if (i->what == 0) /* in */
{
in = i++->where;
out = length;
if (in < out)
+ {
+ have_any_span = 1;
m_cue->addSourceSpan(in, out);
+ }
in = length;