diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-05-16 14:58:11 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-05-16 14:58:11 +0000 |
| commit | 4e8cae716ad3fdf29a7b2a45e5eec0a530f93277 (patch) | |
| tree | 33cc04ae9577a5dd03dd4a52c9205fcc957236ee /lib/dvb/pmt.cpp | |
| parent | 193333b7bc72ab13d4dee5750b31c3c33041c696 (diff) | |
| download | enigma2-4e8cae716ad3fdf29a7b2a45e5eec0a530f93277.tar.gz enigma2-4e8cae716ad3fdf29a7b2a45e5eec0a530f93277.zip | |
add ability to selecte the audio channel (mono left, stereo, mono right) from python
store the current selected audio channel then per service in servicelist
TODO: extend the audio track selection screen to make audio channel selection usable :)
Diffstat (limited to 'lib/dvb/pmt.cpp')
| -rw-r--r-- | lib/dvb/pmt.cpp | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/lib/dvb/pmt.cpp b/lib/dvb/pmt.cpp index 11cda125..1032267d 100644 --- a/lib/dvb/pmt.cpp +++ b/lib/dvb/pmt.cpp @@ -216,6 +216,7 @@ int eDVBServicePMTHandler::getProgramInfo(struct program &program) program.isCrypted = false; program.pmtPid = -1; program.textPid = -1; + program.audioChannel = m_service ? m_service->getCacheEntry(eDVBService::cACHANNEL) : -1; if ( ((m_service && m_service->usePMT()) || !m_service) && !m_PMT.getCurrent(ptr)) { @@ -225,10 +226,10 @@ int eDVBServicePMTHandler::getProgramInfo(struct program &program) int cached_tpid = -1; if ( m_service && !m_service->cacheEmpty() ) { - cached_vpid = m_service->getCachePID(eDVBService::cVPID); - cached_apid_mpeg = m_service->getCachePID(eDVBService::cAC3PID); - cached_apid_ac3 = m_service->getCachePID(eDVBService::cAPID); - cached_tpid = m_service->getCachePID(eDVBService::cTPID); + cached_vpid = m_service->getCacheEntry(eDVBService::cVPID); + cached_apid_mpeg = m_service->getCacheEntry(eDVBService::cAC3PID); + cached_apid_ac3 = m_service->getCacheEntry(eDVBService::cAPID); + cached_tpid = m_service->getCacheEntry(eDVBService::cTPID); } eDVBTableSpec table_spec; ptr->getSpec(table_spec); @@ -359,12 +360,12 @@ int eDVBServicePMTHandler::getProgramInfo(struct program &program) return 0; } else if ( m_service && !m_service->cacheEmpty() ) { - int vpid = m_service->getCachePID(eDVBService::cVPID), - apid_ac3 = m_service->getCachePID(eDVBService::cAC3PID), - apid_mpeg = m_service->getCachePID(eDVBService::cAPID), - pcrpid = m_service->getCachePID(eDVBService::cPCRPID), - tpid = m_service->getCachePID(eDVBService::cTPID), - vpidtype = m_service->getCachePID(eDVBService::cVTYPE), + int vpid = m_service->getCacheEntry(eDVBService::cVPID), + apid_ac3 = m_service->getCacheEntry(eDVBService::cAC3PID), + apid_mpeg = m_service->getCacheEntry(eDVBService::cAPID), + pcrpid = m_service->getCacheEntry(eDVBService::cPCRPID), + tpid = m_service->getCacheEntry(eDVBService::cTPID), + vpidtype = m_service->getCacheEntry(eDVBService::cVTYPE), cnt=0; if ( vpidtype == -1 ) vpidtype = videoStream::vtMPEG2; |
