summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/dvb/decoder.cpp7
-rw-r--r--lib/service/servicedvb.cpp14
2 files changed, 12 insertions, 9 deletions
diff --git a/lib/dvb/decoder.cpp b/lib/dvb/decoder.cpp
index edefd76..ebe3ce2 100644
--- a/lib/dvb/decoder.cpp
+++ b/lib/dvb/decoder.cpp
@@ -1290,15 +1290,18 @@ RESULT eTSMPEGDecoder::showSinglePic(const char *filename)
unsigned char seq_end[] = { 0x00, 0x00, 0x01, 0xB7 };
unsigned char iframe[s.st_size];
unsigned char stuffing[8192];
+ int streamtype = VIDEO_STREAMTYPE_MPEG2;
memset(stuffing, 0, 8192);
read(f, iframe, s.st_size);
if (ioctl(m_video_clip_fd, VIDEO_SELECT_SOURCE, VIDEO_SOURCE_MEMORY) < 0)
eDebug("VIDEO_SELECT_SOURCE MEMORY failed (%m)");
+ if (ioctl(m_video_clip_fd, VIDEO_SET_STREAMTYPE, streamtype) < 0)
+ eDebug("VIDEO_SET_STREAMTYPE failed(%m)");
if (ioctl(m_video_clip_fd, VIDEO_PLAY) < 0)
eDebug("VIDEO_PLAY failed (%m)");
- if (::ioctl(m_video_clip_fd, VIDEO_CONTINUE) < 0)
+ if (ioctl(m_video_clip_fd, VIDEO_CONTINUE) < 0)
eDebug("video: VIDEO_CONTINUE: %m");
- if (::ioctl(m_video_clip_fd, VIDEO_CLEAR_BUFFER) < 0)
+ if (ioctl(m_video_clip_fd, VIDEO_CLEAR_BUFFER) < 0)
eDebug("video: VIDEO_CLEAR_BUFFER: %m");
while(pos <= (s.st_size-4) && !(seq_end_avail = (!iframe[pos] && !iframe[pos+1] && iframe[pos+2] == 1 && iframe[pos+3] == 0xB7)))
++pos;
diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp
index 7292e6d..b92965d 100644
--- a/lib/service/servicedvb.cpp
+++ b/lib/service/servicedvb.cpp
@@ -2316,13 +2316,6 @@ void eDVBServicePlay::updateDecoder()
m_teletext_parser->start(program.textPid);
-/* if (!m_is_primary)
- m_decoder->setTrickmode();
- else */ if (m_is_paused)
- m_decoder->pause();
- else
- m_decoder->play();
-
if (vpid > 0 && vpid < 0x2000)
;
else
@@ -2332,6 +2325,13 @@ void eDVBServicePlay::updateDecoder()
m_decoder->setRadioPic(radio_pic);
}
+/* if (!m_is_primary)
+ m_decoder->setTrickmode();
+ else */ if (m_is_paused)
+ m_decoder->pause();
+ else
+ m_decoder->play();
+
m_decoder->setAudioChannel(achannel);
/* don't worry about non-existing services, nor pvr services */