Springen naar inhoud


Foto

Decoding not work on most UPC channels

bug

  • Please log in to reply
Er zijn 10 reacties in dit onderwerp

#1 skyjet

  • Member
  • 20 berichten

0
Neutral

Geplaatst op 23 november 2016 - 20:26

I have VU+ Solo SE v2 and after commit https://github.com/O...ccd3097a7d5eb91 most UPC Direct channels on 0,8W doesn't decode. Here is oscam log from 19.11.2016 image - channel stays black.

2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 0 CAID: 1815 ECM_PID: 1FFF PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 1 CAID: 0D97 ECM_PID: 1FFF PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 2 CAID: 0B02 ECM_PID: 1FFF PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 3 CAID: 0653 ECM_PID: 1FFF PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Videostream (MPEG-2)(type: 02 pid: 00c9 length: 25)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 4 CAID: 1815 ECM_PID: 138A PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 5 CAID: 0B02 ECM_PID: 15E2 PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 6 CAID: 0D97 ECM_PID: 170E PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 ecmpid 7 CAID: 0653 ECM_PID: 183A PROVID: 000000
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d2 length: 25)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d3 length: 25)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d4 length: 25)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 found 8 ECMpids and 4 STREAMpids in caPMT
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 serving srvid 78B7 (Discovery Channel) on adapter 0000 camask 0001 index 0000 pmtpid 00C8
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Videostream (MPEG-2)(type: 02 pid: 00c9 length: 27)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d2 length: 33)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d3 length: 33)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d4 length: 33)
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 found 8 ECMpids and 4 STREAMpids in PMT
2016/11/23 20:02:03 20834EA7 c (dvbapi) Demuxer 0 serving srvid 78B7 (Discovery Channel) on adapter 0000 camask 0001 index 0000 pmtpid 00C8
2016/11/23 20:02:06 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:06 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 continue decoding of SRVID 78B7
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 stream Videostream (MPEG-2)(type: 02 pid: 00c9 length: 25)
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d2 length: 25)
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d3 length: 25)
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d4 length: 25)
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 found 8 ECMpids and 4 STREAMpids in caPMT
2016/11/23 20:02:07 20834EA7 c (dvbapi) Demuxer 0 serving srvid 78B7 (Discovery Channel) on adapter 0000 camask 0001 index 0000 pmtpid 00C8
2016/11/23 20:02:09 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:09 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:12 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:12 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:15 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:15 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:18 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:18 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:18 20834EA7 c (dvbapi) sdt-info (provider: UPC Direct - channel: Discovery Channel)
2016/11/23 20:02:21 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:21 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:24 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 16 ms with 1 enabled and 7 disabled ecmpids!
2016/11/23 20:02:24 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 1 CAID 0D97 PROVID 000000 ECMPID 1FFF ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:02:27 20834EA7 c (dvbapi) Demuxer 0 restarting decodingrequests after 15 ms with 1 enabled and 7 disabled ecmpids!

And here is oscam log from 15.11.2016 image (everything works).

2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Videostream (MPEG-2)(type: 02 pid: 00c9 length: 25)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 ecmpid 0 CAID: 1815 ECM_PID: 138A PROVID: 000000
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 ecmpid 1 CAID: 0B02 ECM_PID: 15E2 PROVID: 000000
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 ecmpid 2 CAID: 0D97 ECM_PID: 170E PROVID: 000000
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 ecmpid 3 CAID: 0653 ECM_PID: 183A PROVID: 000000
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d2 length: 25)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d3 length: 25)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d4 length: 25)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 found 4 ECMpids and 4 STREAMpids in caPMT
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 serving srvid 78B7 (Discovery Channel) on adapter 0000 camask 0001 index 0000 pmtpid 00C8
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 trying to descramble PID 2 CAID 0D97 PROVID 000000 ECMPID 170E ANY CHID PMTPID 00C8 VPID 00C9
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Videostream (MPEG-2)(type: 02 pid: 00c9 length: 27)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d2 length: 33)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d3 length: 33)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 stream Audiostream (MPEG-1)(type: 03 pid: 00d4 length: 33)
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 found 4 ECMpids and 4 STREAMpids in PMT
2016/11/23 20:07:31 20834EA7 c (dvbapi) Demuxer 0 serving srvid 78B7 (Discovery Channel) on adapter 0000 camask 0001 index 0000 pmtpid 00C8
2016/11/23 20:07:31 20834EA7 c (ecm) dvbapiau (0D97@000004/0000/78B7/B8:75863BB91B4BAAB37A7E73F1CD05D21C): found (163 ms) by rdr_internal - Discovery Channel
2016/11/23 20:07:37 20834EA7 c (ecm) dvbapiau (0D97@000004/0000/78B7/B8:DD56BAB8375A1FFAD1453F4E50D94110): found (143 ms) by rdr_internal - Discovery Channel

If you look at comment by this problematic commit then someone has the same problem as I. Please look at it or revert this commit. If you need more info, then let me know. In enigma2 log I don't see anything interesting.

Thanks!


Veranderd door skyjet, 23 november 2016 - 20:28


Re: Decoding not work on most UPC channels #2 Dimmie

  • Senior Member
  • 2338 berichten

+33
Good

Geplaatst op 24 november 2016 - 01:36

Compile latest oscam and put it in your receiver. When problem is still there go to oscam streamboard and make a ticket about this so the oscam developers can investigate and solve it.



Re: Decoding not work on most UPC channels #3 Tech

  • Forum Moderator
    PLi® Core member
  • 14598 berichten

+458
Excellent

Geplaatst op 24 november 2016 - 15:45

yesterday I updated the oscam feed to rev.11281, so the latest version is available in the feeds.

Aan de rand van de afgrond is een stap voorwaarts niet altijd vooruitgang....

 

On the edge of the abyss, a step forward is not always progress....


Re: Decoding not work on most UPC channels #4 skyjet

  • Member
  • 20 berichten

0
Neutral

Geplaatst op 24 november 2016 - 20:17

I tried latest oscam with no result. But if you look at oscam logs I posted, then you see the difference. In the first log (when it doesn't decode) there are 8 ecm pids and all CAIDs are doubled. For first 4, ECM_PID is set to 1FFF. In the second log only 4 ecm pids are set with correct ECM_PID field. So it's not oscam's but enigma's bug. Enigma adds caid's doubled entries to caPMT. Hope it helps someone to investigate it. In the first post is already link to conflicting commit so I hope it shouldn't be so difficult.



Re: Decoding not work on most UPC channels #5 athoik

  • PLi® Core member
  • 8458 berichten

+327
Excellent

Geplaatst op 24 november 2016 - 21:51

It shoud not use the cached caids if there are caids present, ok but why the following part doesn't work?

Anyone has a clue?

	bool scrambled = false;
	for (std::vector<ProgramMapSection*>::const_iterator pmt = ptr->getSections().begin();
		pmt != ptr->getSections().end() && !scrambled; ++pmt)
	{
		for (DescriptorConstIterator desc = (*pmt)->getDescriptors()->begin();
			desc != (*pmt)->getDescriptors()->end() && !scrambled; ++desc)
		{
			if ((*desc)->getTag() == CA_DESCRIPTOR)
				scrambled = true;
		}
	}
We can revert it, or search for a solution.

A posible solution is to use cached caids only when instructed by the service! (&& service->m_flags & useCache)
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: Decoding not work on most UPC channels #6 athoik

  • PLi® Core member
  • 8458 berichten

+327
Excellent

Geplaatst op 24 november 2016 - 22:14

The following part is from libdvbsi++-0.3.7 (src/ca_program_map_section.cpp).

bool CaProgramMapSection::append(const ProgramMapSection * const pmt)
{
        if (pmt->tableIdExtension != programNumber ||
            pmt->versionNumber != versionNumber ||
            currentNextIndicator != pmt->currentNextIndicator)
                return false;

        for (DescriptorConstIterator i = pmt->getDescriptors()->begin(); i != pmt->getDescriptors()->end(); ++i)
                if ((*i)->getTag() == CA_DESCRIPTOR) {
                        uint16_t caid = ((CaDescriptor*)(*i))->getCaSystemId();
                        CaIdVectorConstIterator it = std::lower_bound(caids.begin(), caids.end(), caid);
                        if (caids.empty() || (it != caids.end() && *it == caid)) {
                                descriptorList.push_back(new CaDescriptor(*(CaDescriptor *)*i));
                                programInfoLength += (*i)->getLength() + 2;
                                length += (*i)->getLength() + 2;
                        }
                }

        for (ElementaryStreamInfoConstIterator i = pmt->esInfo.begin(); i != pmt->esInfo.end(); ++i) {
                CaElementaryStreamInfo *info = new CaElementaryStreamInfo(*i, caPmtCmdId, caids);
                esInfo.push_back(info);
                length += info->getLength();
        }

        return true;
}


CaElementaryStreamInfo::CaElementaryStreamInfo(const ElementaryStreamInfo * const info, const uint8_t cmdId, const CaIdVector &caids)
{
        streamType = info->streamType;
        elementaryPid = info->elementaryPid;
        esInfoLength = 0;

        for (DescriptorConstIterator i = info->getDescriptors()->begin(); i != info->getDescriptors()->end(); ++i)
                if ((*i)->getTag() == CA_DESCRIPTOR) {
                        uint16_t caid = ((CaDescriptor*)(*i))->getCaSystemId();
                        CaIdVectorConstIterator it = std::lower_bound(caids.begin(), caids.end(), caid);
                        if ( caids.empty() || (it != caids.end() && *it == caid) )
                        {
                                descriptors.push_back(new CaDescriptor(*(CaDescriptor *)*i));
                                esInfoLength += (*i)->getLength() + 2;
                        }
                }

        if (esInfoLength) {
                caPmtCmdId = cmdId;
                esInfoLength++;
        }
}

So there is CA_DESCRIPTOR in PMT descriptors and in Elementary Stream Info.

I guess if libdvbsi++ had a function isScrambled() would be easier instead of trying to get that info from PMT.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: Decoding not work on most UPC channels #7 skyjet

  • Member
  • 20 berichten

0
Neutral

Geplaatst op 25 november 2016 - 22:35

I tested for athoik a fix and UPC channels can be decoded again. So if anybody has the same problem as I, then wait until the fix will be in master.

Thanks to athoik for fast reaction!



Re: Decoding not work on most UPC channels #8 athoik

  • PLi® Core member
  • 8458 berichten

+327
Excellent

Geplaatst op 25 november 2016 - 23:23

Patches are available for merge.

Sorry for the confusion, hope it works now.
Wavefield T90: 0.8W - 1.9E - 4.8E - 13E - 16E - 19.2E - 23.5E - 26E - 33E - 39E - 42E - 45E on EMP Centauri DiseqC 16/1
Unamed: 13E Quattro - 9E Quattro on IKUSI MS-0916

Re: Decoding not work on most UPC channels #9 WanWizard

  • PLi® Core member
  • 68309 berichten

+1719
Excellent

Geplaatst op 25 november 2016 - 23:45

Both PR's merged.


Currently in use: VU+ Duo 4K (2xFBC S2), VU+ Solo 4K (1xFBC S2), uClan Usytm 4K Pro (S2+T2), Octagon SF8008 (S2+T2), Zgemma H9.2H (S2+T2)

Due to my bad health, I will not be very active at times and may be slow to respond. I will not read the forum or PM on a regular basis.

Many answers to your question can be found in our new and improved wiki.


Re: Decoding not work on most UPC channels #10 Robinson

  • Senior Member
  • 2614 berichten

+30
Good

Geplaatst op 27 november 2016 - 11:54

Is this fix already included if I run an online update, please?


ET9000, OpenPLi 4.0, 13E, 19E

HD51, OpenPLi 6.2, 75E - 30W


Re: Decoding not work on most UPC channels #11 Abu Baniaz

  • PLi® Contributor
  • 2414 berichten

+61
Good

Geplaatst op 27 november 2016 - 17:47

Is this fix already included if I run an online update, please?

The commit is here
https://github.com/O...82cc685ae6c0d51

Was merged on 25/11/2016



Also tagged with one or more of these keywords: bug

2 gebruiker(s) lezen dit onderwerp

0 leden, 2 bezoekers, 0 anonieme gebruikers