Opened 18 years ago
Closed 18 years ago
#2425 closed defect (invalid)
DVB tuning failure
Reported by: | Owned by: | Stuart Auchterlonie | |
---|---|---|---|
Priority: | minor | Milestone: | 0.21 |
Component: | dvb | Version: | 0.20 |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
I'm having trouble getting myth 0.2 (release) to play ball with my DVB-C cable feed. I think the problem is down to the way myth interprets the PAT/PMT tables.
For example, there is a program number 8102 on a particular mux. When myth tunes it I get:
2006-09-19 13:21:17.906 PAT in input stream 2006-09-19 13:21:17.906 Program Association Table PSIP tableID(0x0) length(49) extension(0x51) version(6) current(1) section(0) last_section(0) tsid: 81 programCount: 10 program number 0 has PID 0x 10 data 0x0 0x0 0x224 0x16 program number 8101 has PID 0x 20 data 0x31 0x165 0x224 0x32 program number 8102 has PID 0x 20 data 0x31 0x166 0x224 0x32 program number 8104 has PID 0x 20 data 0x31 0x168 0x224 0x32 program number 8105 has PID 0x 20 data 0x31 0x169 0x224 0x32 program number 8106 has PID 0x 20 data 0x31 0x170 0x224 0x32 program number 8107 has PID 0x 20 data 0x31 0x171 0x224 0x32 program number 8108 has PID 0x 20 data 0x31 0x172 0x224 0x32 program number 8109 has PID 0x 20 data 0x31 0x173 0x224 0x32 program number 8110 has PID 0x 20 data 0x31 0x174 0x224 0x32 2006-09-19 13:21:17.907 desired_program(8102) pid(0x20) 2006-09-19 13:21:17.907 pmt_pid(0x20) 2006-09-19 13:21:17.907 PAT for output stream 2006-09-19 13:21:17.907 Program Association Table PSIP tableID(0x0) length(13) extension(0x51) version(6) current(1) section(0) last_section(0) tsid: 81 programCount: 1 program number 1 has PID 0x 20 data 0x0 0x1 0x224 0x32 2006-09-19 13:21:17.907 DVBSM(0)::AddPIDFilter(0x20): 2006-09-19 13:21:17.958 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:17.958 DTVSM(0) Error: Wrong PMT; pmt->pn(8101) desired(8102) 2006-09-19 13:21:17.958 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:17.958 DTVSM(0) Error: Wrong PMT; pmt->pn(8107) desired(8102) 2006-09-19 13:21:18.009 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:18.010 DTVSM(0) Error: Wrong PMT; pmt->pn(8106) desired(8102) 2006-09-19 13:21:18.010 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:18.010 DTVSM(0) Error: Wrong PMT; pmt->pn(8104) desired(8102) 2006-09-19 13:21:18.010 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:18.010 DTVSM(0) Error: Wrong PMT; pmt->pn(8105) desired(8102) 2006-09-19 13:21:18.010 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:18.010 SM(0)::AddFlags: Seen() Match(PMT,) Wait() 2006-09-19 13:21:18.011 CreatePMTSingleProgram() 2006-09-19 13:21:18.011 PMT in input stream 2006-09-19 13:21:18.011 Program Map Table ver(24) pid(0x20) pnum(8102) len(29) Stream #0 pid(0xda2) type(audio-mp2-layer[1,2,3] 0x4) ISO-639 Language: code(eng) canonical(eng) eng(English) Stream #1 pid(0xd02) type(video-mpeg2 0x2) 2006-09-19 13:21:18.011 PMT for output stream 2006-09-19 13:21:18.011 Program Map Table ver(24) pid(0x20) pnum(1) len(23) Stream #0 pid(0xd02) type(video-mpeg2 0x2) Stream #1 pid(0xda2) type(audio-mp2-layer[1,2,3] 0x4) 2006-09-19 13:21:18.011 SM(0)::AddFlags: Seen(PMT,) Match() Wait() 2006-09-19 13:21:18.011 DTVSM(0) Error: Wrong PMT; pmt->pn(8108) desired(8102)
To me, this suggests that all the PMTs are on PID 0x20. Myth seems to be getting confused that it is seeing PMTs for more than one program on the same PID. It does see the correct PMT after reading all the unexpected ones and appears to proceed, but then again sees the unexpected PMTs and gets stuck in a loop. This contrasts with my DVB-T feed, where I find that the PMTs are all on separate PIDS equal to the program number, and this works ok.
Is this is myth getting confused, or is this stream is non-compliant? Should all the PMTs be on separate PIDs? Regardless, would a plausable fix be to have myth filter out any PMTs that it is not expecting to see, and only generate an error state if it does not see the one that it is expecting?
Regards,
Rob
Attachments (1)
Change History (12)
comment:1 Changed 18 years ago by
comment:3 Changed 18 years ago by
I think the comment is actually a joke about your use of 0.2 rather than 0.20!
It's not a decimal, it's a version number, and therefore needs the trailing zero.
comment:4 Changed 18 years ago by
Quite right - it's been a long day!
Anyway, apparently, yes it is legal to have more than one PMT per PID.
comment:6 Changed 18 years ago by
Component: | mythtv → dvb |
---|---|
Milestone: | unknown → 0.21 |
Owner: | changed from Isaac Richards to Stuart Auchterlonie |
Priority: | major → minor |
comment:7 Changed 18 years ago by
Summary: | Error tuning dvb when more than one PMT on a PID → DVB tuning failure |
---|
MythTV has no problem with more than one PMT on one PID. The tuning failure is somewhere else.
Please attach further parts from your log. The part you posted looks fine.
comment:8 Changed 18 years ago by
Lets see the whole log file please.
And can you be a little more specific than "having trouble getting myth to play ball"
what do you see when you try to tune to the channel? etc etc
Changed 18 years ago by
Attachment: | si_error.log added |
---|
comment:9 Changed 18 years ago by
ok, added the log.
The item of issue is the recording on dvb encoder 0. As far as I can see, it gets as far as PSI/SI parsing, and sees the PMT for the service, but never gets as far as recording; there is no mpeg data written to disk. The recording was started as a manual recording, remotely, from mythweb. Recordings attempted in the same way on encoders 2/3 (DVB-T cards) are successful.
Hope that helps,
Rob
comment:10 Changed 18 years ago by
Sorry, please close this ticket - not a fault. I saw that the message:
2006-09-19 13:21:18.011 SM(0)::AddFlags?: Seen(SDT,) Match() Wait()
kept recurring - this pointed me to look whether the correct network/transport ids were set for the channel. They were not, hence the parser kept looking for them.
comment:11 Changed 18 years ago by
Resolution: | → invalid |
---|---|
Status: | new → closed |
Closing, incorrect setup.
Replying to rob@robjones.org:
I'd suggest upgrading to a more recent version. :)