Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

#6444 closed defect (worksforme)

Cannot lock onto HD channels using trunk

Reported by: patstew@… Owned by: Isaac Richards
Priority: minor Milestone: 0.22
Component: MythTV - Video Playback Version: head
Severity: low Keywords:
Cc: Ticket locked: no

Description

Whenever I try to tune into HD channels mythtv cannot lock onto them, it only shows LM_ partial lock. I've been mainly trying bbc hd and itv hd (with the itvhdfix patch). When I try to change to an hd channel, my mythbackend log becomes filled with

2009-04-09 19:08:21.522 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54203) desired(54206)
2009-04-09 19:08:21.550 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54204) desired(54206)
2009-04-09 19:08:21.575 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54205) desired(54206)
2009-04-09 19:08:21.601 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54207) desired(54206)                 
2009-04-09 19:08:21.676 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54208) desired(54206)                 
2009-04-09 19:08:21.701 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54209) desired(54206)                 
2009-04-09 19:08:21.734 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(55115) desired(54206)                 
2009-04-09 19:08:21.768 DTVSM(/dev/dvb/adapter0/frontend0) Error: Wrong PMT; pmt->pn(54201) desired(54206)

followed by thousands of "DTVRec(1) Error: FindH264Keyframes: No ringbuffer" messages. I also get

DVBSM(/dev/dvb/adapter0/frontend0), Warning: Can not count Uncorrected Blocks                               
                        eno: Function not implemented (38)

but I get that with normal channels too. This is with a build of trunk r20321. My tuners are DVB-S, and work fine on all other channels in mythtv and on the HD channels as well using other programs.

Change History (6)

comment:1 Changed 11 years ago by patstew@…

Replacing

if (isKeySlice(slice_type) && (!wait_for_IDR || seen_IDR))

with

if (isKeySlice(slice_type))

in libs/libmythtv/mpeg/H264Parser.cpp fixes this for me. From looking about on trac, I guess that the problem is that at some point wait_for_IDR should be set to false (or not set to true) and it's not. It seems to work fine for me with the IDR test removed anyway.

comment:2 in reply to:  1 Changed 11 years ago by patstew@…

The relevant changesets I saw were 19640, 19140 and 19094. Also Ticket #6243 sounds similar, though I haven't tested that patch since its working fine with the simple hack.

comment:3 Changed 10 years ago by stuartm

Component: MythTV - GeneralMythTV - Video Playback

comment:4 Changed 10 years ago by stuartm

Resolution: worksforme
Status: newclosed

I can't reproduce this with current trunk.

comment:5 Changed 10 years ago by einstein@…

Hi,

i can reproduce it all the time, all DVB-S channels work good. DVB-S2 channels all throw the error "TVRec(21) Error: FindH264Keyframes: No ringbuffer" many times.

i have two Hauppauge WinTv? NOVA HD-S2 cards. Kernel 2.6.30.

if you need any logs, i can uplaod it.

greets st0ne

comment:6 Changed 10 years ago by krizze@…

I can also reproduce this - exceptionally annoying ;) H264 HD-channels only (DVB-C). It takes 20 seconds or so to get playback after I change the channel - playback is totally fine afterwards. Channels worked fine in 0.21.

Example:

2009-09-11 02:59:53.476 [h264 @ 0x7f7988bd3820]number of reference frames exceeds max (probably corrupt input), discarding one 2009-09-11 02:59:53.494 [h264 @ 0x7f7988bd3820]number of reference frames exceeds max (probably corrupt input), discarding one 2009-09-11 02:59:53.512 [h264 @ 0x7f7988bd3820]number of reference frames exceeds max (probably corrupt input), discarding one 2009-09-11 02:59:53.307 DTVRec(1) Error: FindH264Keyframes: No ringbuffer 2009-09-11 02:59:53.530 DTVRec(1) Error: FindH264Keyframes: No ringbuffer

Harddrive spinning as there's no tomorrow when it's going on (naturally).

Note: See TracTickets for help on using tickets.