diff options
| author | ghost <andreas.monzner@multimedia-labs.de> | 2010-11-23 13:58:30 +0100 |
|---|---|---|
| committer | ghost <andreas.monzner@multimedia-labs.de> | 2010-11-23 13:58:30 +0100 |
| commit | 7b2960a205f3c3e3b421d1664cd38644b3ffb679 (patch) | |
| tree | d57819fb0ff1eb5e64638bc584c54ae18816043f /lib/dvb/pmt.cpp | |
| parent | fc83dfbe60f36712953498b20a1c2f10737e7685 (diff) | |
| parent | 7199d3c37e7e7065bd6943702b5864fa5186b9a8 (diff) | |
| download | enigma2-7b2960a205f3c3e3b421d1664cd38644b3ffb679.tar.gz enigma2-7b2960a205f3c3e3b421d1664cd38644b3ffb679.zip | |
Merge branch 'bug_615_replace_rawfile'
Diffstat (limited to 'lib/dvb/pmt.cpp')
| -rw-r--r-- | lib/dvb/pmt.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp index ea4b96c5..7b799662 100644 --- a/lib/dvb/pmt.cpp +++ b/lib/dvb/pmt.cpp @@ -675,6 +675,12 @@ void eDVBServicePMTHandler::SDTScanEvent(int event) int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, eCueSheet *cue, bool simulate, eDVBService *service) { + ePtr<iDataSource> s; + return tuneExt(ref, use_decode_demux, s, NULL, cue, simulate, service); +} + +int eDVBServicePMTHandler::tuneExt(eServiceReferenceDVB &ref, int use_decode_demux, ePtr<iDataSource> &source, const char *streaminfo_file, eCueSheet *cue, bool simulate, eDVBService *service) +{ RESULT res=0; m_reference = ref; @@ -704,7 +710,9 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, { eWarning("no .meta file found, trying to find PMT pid"); eDVBTSTools tstools; - if (tstools.openFile(ref.path.c_str())) + if (source) + tstools.setSource(source, streaminfo_file ? streaminfo_file : ref.path.c_str()); + else if (tstools.openFile(ref.path.c_str())) eWarning("failed to open file"); else { @@ -757,7 +765,10 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, if (m_pvr_channel) { m_pvr_channel->setCueSheet(cue); - m_pvr_channel->playFile(ref.path.c_str()); + if (source) + m_pvr_channel->playSource(source, streaminfo_file); + else + m_pvr_channel->playFile(ref.path.c_str()); } } |
