[mythtv] Help: where to find info on channel encryption status

Emmanuel eallaud at gmail.com
Wed Feb 3 12:57:08 UTC 2010


Nigel Pearson a écrit :
>> how mythtv decides if the channel is encrypted.
>>     
>
>
>
> % find . -name \*.cpp -exec egrep crypt {} \; -print
> ...
>       seenCrypt(QObject::tr("Seen")+" Crypt", "seen_crypt", 1, true, 0, 1, 0),
>       matchingCrypt(QObject::tr("Matching")+" Crypt", "matching_crypt",
>       ignore_encrypted(false)
>     if (pmt->IsEncrypted())
>         GetStreamData()->TestDecryption(pmt);
>         if (pmt->IsEncrypted() && !ignore_encrypted)
> void DTVSignalMonitor::HandleEncryptionStatus(uint, bool enc_status)
> ./libs/libmythtv/dtvsignalmonitor.cpp
> ...
>     QMutexLocker locker(&_encryption_lock);
>     //        QString("Setting up decryption monitoring "
>     bool encrypted = pmt->IsProgramEncrypted();
>         if (!encrypted && !pmt->IsStreamEncrypted(i))
>             AddEncryptionTestPID(
> void MPEGStreamData::ResetDecryptionMonitoringState(void)
>     QMutexLocker locker(&_encryption_lock);
>     _encryption_pid_to_info.clear();
>     _encryption_pid_to_pnums.clear();
>     _encryption_pnum_to_pids.clear();
> bool MPEGStreamData::IsProgramDecrypted(uint pnum) const
>     QMutexLocker locker(&_encryption_lock);
>     return _encryption_pnum_to_status[pnum] == kEncDecrypted;
> bool MPEGStreamData::IsProgramEncrypted(uint pnum) const
>     QMutexLocker locker(&_encryption_lock);
>     return _encryption_pnum_to_status[pnum] == kEncEncrypted;
>     if (kEncDecrypted == status)
>         return "Decrypted";
>     else if (kEncEncrypted == status)
>         return "Encrypted";
> ...
> ./libs/libmythtv/mpeg/mpegstreamdata.cpp
>   
Thanks Nigel, I already tried this approach but well I guess I was 
hoping someone with the knowledge could give me some pointers to the 
good places to speed things up abit.
I am already in the process of spreading VERBOSES's everywhere to see 
what is happening...
Bye
Manu


More information about the mythtv-dev mailing list