X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fdvb%2Fpmt.cpp;h=ee89a3a43a93a55133f838c2d1aa34e27fdc2798;hp=a4fa212d5cc2f3d32605e1fc206c0f65aa6bc4a9;hb=c352487661e7927d0068ef8fa69765055ff488d8;hpb=cbfa5ce869fed89e2ac9d2ec762ca6210317add2 diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp index a4fa212..ee89a3a 100644 --- a/lib/dvb/pmt.cpp +++ b/lib/dvb/pmt.cpp @@ -75,6 +75,9 @@ void eDVBServicePMTHandler::channelEvent(iDVBChannel *channel, int event) { switch (event) { + case iDVBChannel::evtPreStart: + serviceEvent(eventPreStart); + break; case iDVBChannel::evtEOF: serviceEvent(eventEOF); break; @@ -184,7 +187,6 @@ int eDVBServicePMTHandler::getProgramInfo(struct program &program) int first_ac3 = -1; program.defaultAudioStream = 0; - int rdsPid = -1; audioStream *prev_audio = 0; if ( m_service && !m_service->cacheEmpty() ) @@ -698,10 +700,7 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, eDVBCIInterfaces::getInstance()->addPMTHandler(this); } else if (!simulate) // no simulation of playback services { - eDVBMetaParser parser; - - int ret=parser.parseFile(ref.path); - if (ret || !parser.m_ref.getServiceID().get() /* incorrect sid in meta file or recordings.epl*/ ) + if (!ref.getServiceID().get() /* incorrect sid in meta file or recordings.epl*/ ) { eWarning("no .meta file found, trying to find PMT pid"); eDVBTSTools tstools; @@ -717,9 +716,7 @@ int eDVBServicePMTHandler::tune(eServiceReferenceDVB &ref, int use_decode_demux, m_pmt_pid = pmt_pid; } } - } else - m_reference = parser.m_ref; - + } eDebug("alloc PVR"); /* allocate PVR */ res = m_resourceManager->allocatePVRChannel(m_pvr_channel);