Jump to content


Photo

Use manual Custom PID's

Enigma2

  • Please log in to reply
23 replies to this topic

#1 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 10 October 2010 - 22:17

When using channel editor - Dreamset etc - you can enter manually the PID's.

Can PLi be forced to use Custom PID's?
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #2 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 11 October 2010 - 09:40

you mean this doesn't work? (I would expect it to work)

Re: Use manual Custom PID's #3 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 11 October 2010 - 22:23

Well no.

I manually type in my custom PID's

FTP to box type E2 and Reload settings.

But nothing.

ANy ideas?

Tried Dreambox Edit and Dreamset.

How do I reload setting maually?
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #4 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 11 October 2010 - 22:37

init 4, edit settings, init 3

Re: Use manual Custom PID's #5 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 12 October 2010 - 20:59

Thanks Pieterg, that helped

Now I have my custom PID's BUT the service wont decode....

I cant enter PMT PID anywhere.

Does anyone know how to edit lamedb manually to and it in?

f:000d,c:00080d,c:01080c,c:03080d what do I add for PMT (080e)
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #6 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 12 October 2010 - 22:20

OK so I see you don't add in PMT

Here's info for those interested

0 VIDEO_PID
1 AUDIO_PID
2 TXT_PID
3 PCR_PID
4 AC3_PID
5 VIDEOTYPE
6 AUDIOCHANNEL
7 AC3_DELAY
8 PCM_DELAY
9 SUBTITLE_PID

But service still won't run aaaarrrgh
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #7 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 12 October 2010 - 22:30

I guess you can force the correct vpid/apid to be used, but if it's a crypted channel, the ecm pids will remain unknown (because the pmt is missing)

Re: Use manual Custom PID's #8 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 13 October 2010 - 07:27

Yes Pieterg,

That is exactly what I thought this morning on my way to work.

The PMT contains a PID for ECM stream , so no ECM flow.

I saw this last night when I zap to the channel I dont get "PMT Timeout error" anymore just a black screen.

Telnet showed CCcam stopped and no ECM requests.

SO , How do I tell it the PID for ECM??? Is there anyway ?
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #9 Erik Slagter

  • PLi® Core member
  • 46,957 posts

+541
Excellent

Posted 17 October 2010 - 16:13

Here's info for those interested

0 VIDEO_PID
1 AUDIO_PID
2 TXT_PID
3 PCR_PID
4 AC3_PID
5 VIDEOTYPE
6 AUDIOCHANNEL
7 AC3_DELAY
8 PCM_DELAY
9 SUBTITLE_PID


So this is interesting, is this actually the layout of a lamedb entry
(with the colons removed)?

* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Use manual Custom PID's #10 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 17 October 2010 - 18:55

yes

p:PROV,c:00080d,c:01080c,c:03080d,c:050001,f:d

f at the end is the Flag bits

so each group of gytes start with 2 bytes from table above

c:01080c 01 = AUDIO_PID


BUT lamedb should have a ECM PID also - this is missing - unless it is written elsewhere
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #11 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 17 October 2010 - 18:58

makes no sense to put ecm pids in lamedb, e2 is not using them

Re: Use manual Custom PID's #12 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 18 October 2010 - 12:30

Yes , so this only helps on FTA then?

Is there any other way of feeding E2 with the ECM PID?

It would help where there is no/corrupt PMT.
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #13 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 18 October 2010 - 12:35

Is there any other way of feeding E2 with the ECM PID?


it makes no sense, e2 does not/can not use ecm pids

Re: Use manual Custom PID's #14 junglejake

  • Member
  • 6 posts

0
Neutral

Posted 19 October 2010 - 14:43

I have done the changes in the PMT.CPP file, but am really stuck as to how to force a local compile on the DM800 and DM8000. I can successfully compile online images. I could really do with an idiots guide as to a local compile then I can test these changes and inform you.

the changes I have done are as follows
void eDVBServicePMTHandler::PATready(int)
{


ePtr<eTable<ProgramAssociationSection> > ptr;
if (!m_PAT.getCurrent(ptr))
{


int pmtpid = -1;
std::vector<ProgramAssociationSection*>::const_iterator i;
[highlight=#5f497a]f[highlight=#5f497a]or[/highlight] (i = ptr->getSections().begin(); i != ptr->getSections().end()&&pmtpid == -1; ++i)
[/highlight]
{


const ProgramAssociationSection &pat = i;
ProgramAssociationConstIterator program;
[highlight=#8064a2]for (program = pat.getPrograms()->begin(); program != pat.getPrograms()->end()&&pmtpid == -1;++program) [/highlight]



if (eServiceID((*program)->getProgramNumber()) == m_reference.getServiceID())


pmtpid = (*program)->getProgramMapPid();


}
if (pmtpid == -1)


serviceEvent(eventNoPATEntry);


else


m_PMT.begin(eApp, eDVBPMTSpec(pmtpid, m_reference.getServiceID().get()), m_demux);


} else


serviceEvent(eventNoPAT);


}

Re: Use manual Custom PID's #15 AVR-rulez

  • Senior Member
  • 54 posts

0
Neutral

Posted 20 October 2010 - 19:31

Can someone please explain how to do a local compile so he can incorporate the above code change and produce a beta for testing?
Proud owner of a DM8000 HD PVR DVD/WR

Re: Use manual Custom PID's #16 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 20 October 2010 - 19:42

your 'diff' is not really readable, could you please post a real diff? Then I can probably tell you whether it'll work or not (and if it's not too ugly, we might just put it in the image)

compiling your own version is straightforward, you just clone the local e2 repository, and point the bb file to it.
But if you do not understand what I mean with that, I'm afraid it will take a huge amount of explaining.

Re: Use manual Custom PID's #17 Erik Slagter

  • PLi® Core member
  • 46,957 posts

+541
Excellent

Posted 20 October 2010 - 19:43

Can someone please explain how to do a local compile so he can incorporate the above code change and produce a beta for testing?


If you mean: produce a self-compiled enigma, then the easiest way is to
compile a complete image and get enigma from there. It may take a few
hours to compile but is 95% safe that it works. The directions can be
found in the wiki of openpli.

If you really want to compile enigma only, then you either should git
pull it from the openpli server and set up the complete building
environment around it, you probably do not want it. It's easier to
isolate enigma out of the image tree and replace the source by source
that you git pull'ed.

Anyway, I think option 1 is most feasible for you.

Attached Files


* Wavefrontier T90 with 28E/23E/19E/13E via SCR switches 2 x 2 x 6 user bands
I don't read PM -> if you have something to ask or to report, do it in the forum so others can benefit. I don't take freelance jobs.
Ik lees geen PM -> als je iets te vragen of te melden hebt, doe het op het forum, zodat anderen er ook wat aan hebben.


Re: Use manual Custom PID's #18 junglejake

  • Member
  • 6 posts

0
Neutral

Posted 21 October 2010 - 05:54

The modification is in the pmt.cpp which we are trying to implement. The change is as follows.

void eDVBServicePMTHandler::PATready(int)
{
    ePtr<eTable<ProgramAssociationSection> > ptr;
    if (!m_PAT.getCurrent(ptr))
    {
	   int pmtpid = -1;
	   std::vector<ProgramAssociationSection*>::const_iterator i;
	   for (i = ptr->getSections().begin(); i != ptr->getSections().end()&&pmtpid == -1; ++i)
	   //for (i = ptr->getSections().begin(); i != ptr->getSections().end(); ++i)	   
	   {
		  const ProgramAssociationSection &pat = **i;
		  ProgramAssociationConstIterator program;
		  for (program = pat.getPrograms()->begin(); program != pat.getPrograms()->end()&&pmtpid == -1;++program)		  
		  //for (program = pat.getPrograms()->begin(); program != pat.getPrograms()->end(); ++program)
			 if (eServiceID((*program)->getProgramNumber()) == m_reference.getServiceID())
				pmtpid = (*program)->getProgramMapPid();
	   }
	   if (pmtpid == -1)
		  serviceEvent(eventNoPATEntry);
	   else
		  m_PMT.begin(eApp, eDVBPMTSpec(pmtpid, m_reference.getServiceID().get()), m_demux);
    } else
	   serviceEvent(eventNoPAT);
}


I have commented out to the 2 original lines

Re: Use manual Custom PID's #19 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 21 October 2010 - 09:08

ok, that looks like it should work; just use the first pmtpid in the PAT.
Should make it a tiny bit faster as well ;)

I'll commit it.
Not sure how stable our current e2 is after the recent huge merges, but you might want to give it a try with the next daily build.

Re: Use manual Custom PID's #20 junglejake

  • Member
  • 6 posts

0
Neutral

Posted 21 October 2010 - 10:31

Thanks, much appreciated.



1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users