[mythtv] Assistance debugging a DVB/PMT tuning problem

Tom Dexter digitalaudiorock at gmail.com
Wed Jan 23 20:36:12 UTC 2008


On Jan 23, 2008 3:21 PM, Janne Grunau <janne-mythtv at grunau.be> wrote:
> On Wednesday 23 January 2008 21:06:29 Tom Dexter wrote:
> > I'm getting OTA broadcasts using HD-5500 tuners.  A local PBS channel
> > near me appears to have made some sort of change to their broadcast
> > stream that's preventing mythtv from getting a PTM from it.  I've
> > deleted and rescanned the channel and that didn't help.  I actually
> > didn't expect it to, as I had already tried creating a channels.conf
> > file with dvbscan and the frequency and all serviceid data in the
> > database where correct to begin with.  Here's the pertinent part of
> > the channels.conf file:
> >
> > WNJB-DT:183028615:8VSB:49:52:3
> > NJN-3:183028615:8VSB:81:84:5
> > NJN-4:183028615:8VSB:97:100:6
> >
> > Those service ids (3, 5, 6) match what's in my channels table (even
> > after the rescan).  I can actually tune those with mplayer using that
> > channels.conf file.  I'm not sure, but I think the two fields above
> > before the programid actually identify the audio/video streams, which
> > would seem to indicate that dvbscan found a PMT(??).
>
> Yes
>
> > Mythtv gets a lock on the channel but simply can't get a PMT.  On the
> > frontend I get (LA_VG).  Here's the "-v channel" verbose output
>
> to be useful it needs be a -v channel,record,siparser log.
>
> Janne
>

Ahh...thanks.  Here it is:

2008-01-23 15:32:03.371 TVRec(3): SetChannel() -- begin
2008-01-23 15:32:03.374 TVRec(3): ClearFlags(RingBufferReady,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,RecorderRunning,
2008-01-23 15:32:03.375 TVRec(3): Request: Program(no) channel(58.1)
input() flags(LiveTV,)
2008-01-23 15:32:03.381 TVRec(3): ClearFlags(PENDINGACTIONS,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,RecorderRunning,
2008-01-23 15:32:03.381 TVRec(3): SetFlags(WaitingForRecPause,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForRecPause,RecorderRunning,
2008-01-23 15:32:03.389 TVRec(3): ClearFlags(WaitingForRecPause,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,RecorderRunning,
2008-01-23 15:32:03.389 DVBRec(2): Close() fd(25) -- begin
2008-01-23 15:32:03.707 DVBRec(2): Close() fd(-1) -- end
2008-01-23 15:32:03.707 RecBase(2): SetRingBuffer(0)
2008-01-23 15:32:03.708 DVBChan(2): Opening DVB channel
2008-01-23 15:32:03.708 DVBChan(2): SetChannelByString(58.1):
2008-01-23 15:32:03.712 DVBChan(2) Warning: Symbol Rate setting (0) is
out of range (min/max:5056941/10762000)
2008-01-23 15:32:03.713 DVBChan(2): Frequency: 183000000 Modulation: QPSK
2008-01-23 15:32:03.713 DVBChan(2): Old Params: Frequency: 725000000
Modulation: QPSK
                        DVBChan(2): New Params: Frequency: 183000000
Modulation: QPSK
2008-01-23 15:32:03.714 DVBChan(2): Tune(): Tuning to 183000000Hz
2008-01-23 15:32:03.714 dvbchannel.cpp:wait_for_backend: Status:
2008-01-23 15:32:03.716 DVBChan(2): Tune(): Frequency tuning successful.
2008-01-23 15:32:03.717 DVBChan(2): SetChannelByString(58.1): Tuned to
frequency.
2008-01-23 15:32:03.717 TVRec(3): SwitchLiveTVRingBuffer(discont 1, set_rec 0)
2008-01-23 15:32:03.718 TVRec(3): GetProgramRingBufferForLiveTV()
2008-01-23 15:32:03.754 TVRec(3): StartedRecording(0x820d260)
fn(/video/recordings/1581_20080123153203.mpg)
2008-01-23 15:32:03.765 TVRec(3): FinishedRecording(Dr. Phil) in
recgroup: LiveTV
2008-01-23 15:32:03.766 Chain: Updated endtime for
'1021_20080123153134' to 20080123153203
2008-01-23 15:32:03.779 Finished recording Dr. Phil: channel 1021
2008-01-23 15:32:03.780 Preview:
'myth://192.168.1.51:6543/1021_20080123153134.mpg' is not local,
                        replacing with
'/video/recordings/1021_20080123153134.mpg', which is local.
2008-01-23 15:32:03.790 Chain: Appended at 2 '1581_20080123153203'
2008-01-23 15:32:03.816 TVRec(3): Starting Signal Monitor
2008-01-23 15:32:03.817 TVRec(3): SetupSignalMonitor(1, 1)
2008-01-23 15:32:03.818 DVBChan(2): Opening DVB channel
2008-01-23 15:32:03.823 SM(2)::AddFlags: Seen() Match() Wait(Sig,SNR,BER,UB,)
2008-01-23 15:32:03.824 DVBSM(2)::constructor(): initial flags 0x7400000
2008-01-23 15:32:03.825 TVRec(3): Signal monitor successfully created
2008-01-23 15:32:03.825 TVRec(3): Setting up table monitoring.
2008-01-23 15:32:03.827 TVRec(3): ATSC channel: 58_1
2008-01-23 15:32:03.828 DTVSM(2)::SetChannel(58, 1):
2008-01-23 15:32:03.828 SM(2)::RemoveFlags: Seen(PAT,PMT,VCT,)
Match(PAT,PMT,VCT,) Wait()
2008-01-23 15:32:03.829 SM(2)::AddFlags: Seen() Match() Wait(PAT,VCT,)
2008-01-23 15:32:03.831 SM(2)::AddFlags: Seen() Match() Wait(MGT,)
2008-01-23 15:32:03.831 TVRec(3): Successfully set up ATSC table monitoring.
2008-01-23 15:32:03.832 SM(2)::Start: begin
2008-01-23 15:32:03.838 DVBSM(2)::UpdateValues: Signal Locked
2008-01-23 15:32:03.838 SM(2)::Start: end
2008-01-23 15:32:03.842 TVRec(3): SetFlags(SignalMonitorRunning,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,SignalMonitorRunning,RecorderRunning,
2008-01-23 15:32:03.843 TVRec(3): ClearFlags(WaitingForSignal,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,SignalMonitorRunning,RecorderRunning,
2008-01-23 15:32:03.844 TVRec(3): SetFlags(WaitingForSignal,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForSignal,SignalMonitorRunning,RecorderRunn
ing,
2008-01-23 15:32:03.844 RecBase(2): SetRingBuffer(0)
2008-01-23 15:32:03.845 TVRec(3): SetFlags(DummyRecorderRunning,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForSignal,SignalMonitorRunning,ANYRECRU
NNING,
2008-01-23 15:32:03.845 DummyDTVRecorder -- started
2008-01-23 15:32:03.846 TVRec(3): SetFlags(RingBufferReady,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForSignal,SignalMonitorRunning,ANYRECRUNNING
,RingBufferReady,
2008-01-23 15:32:03.846 TVRec(3): ClearFlags(NeedToStartRecorder,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForSignal,SignalMonitorRunning,ANYRECR
UNNING,RingBufferReady,
2008-01-23 15:32:03.847 TVRec(3): SetFlags(NeedToStartRecorder,) ->
FrontendReady,RunMainLoop,CancelNextRecording,AskAllowRecording,WaitingForSignal,NeedToStartRecorder,SignalMoni
torRunning,ANYRECRUNNING,RingBufferReady,
2008-01-23 15:32:03.848 TVRec(3): SetChannel() -- end
2008-01-23 15:32:03.844 DVBSM(2)::UpdateValues: Waiting for table
monitor to start
2008-01-23 15:32:03.855 DVBSM(2)::UpdateValues: Table monitor started
2008-01-23 15:32:03.844 DVBSM(2): RunTableMonitorTS(): begin (# of pids 2)
2008-01-23 15:32:03.858 DVBSM(2)::AddPIDFilter(0x0):
2008-01-23 15:32:03.859 DVBSM(2)::AddPIDFilter(0x1ffb):
0: start_time: 3710.083 duration: 2.535
1: start_time: 3710.050 duration: 2.546
stream: start_time: 41222.775 duration: 28.529 bitrate=17049 kb/s
2008-01-23 15:32:03.919 AFD: Opened codec 0x8230140, id(MPEG2VIDEO) type(Video)
2008-01-23 15:32:03.923 AFD: Opened codec 0x81df7e0, id(AC3) type(Audio)
2008-01-23 15:32:03.967 SM(2)::AddFlags: Seen(MGT,) Match() Wait()
2008-01-23 15:32:03.970 SM(2)::AddFlags: Seen() Match(MGT,) Wait()
2008-01-23 15:32:03.971 DVBRec(2): SetPAT(): Ignoring PAT not
containing our desired program...
2008-01-23 15:32:03.972 SM(2)::AddFlags: Seen(PAT,) Match() Wait()
[mpeg2video @ 0xb73814a8]00 motion_type at 100 63
[mpeg2video @ 0xb73814a8]00 motion_type at 50 64
[mpeg2video @ 0xb73814a8]00 motion_type at 60 64
[mpeg2video @ 0xb73814a8]ac-tex damaged at 81 64
[mpeg2video @ 0xb73814a8]ac-tex damaged at 1 65
[mpeg2video @ 0xb73814a8]invalid mb type in P Frame at 45 65
[mpeg2video @ 0xb73814a8]00 motion_type at 102 65
[mpeg2video @ 0xb73814a8]00 motion_type at 5 66
[mpeg2video @ 0xb73814a8]00 motion_type at 44 66
[mpeg2video @ 0xb73814a8]00 motion_type at 83 66
[mpeg2video @ 0xb73814a8]00 motion_type at 16 67
[mpeg2video @ 0xb73814a8]invalid mb type in P Frame at 57 67
[mpeg2video @ 0xb73814a8]mb incr damaged
2008-01-23 15:32:04.238 SM(2)::AddFlags: Seen(VCT,TVCT,) Match() Wait()
2008-01-23 15:32:04.242 DTVSM(2)::SetVCT(): tvct->ProgramNumber(idx
0): prog num 3
2008-01-23 15:32:04.243 DTVSM(2)::SetProgramNumber(3):
2008-01-23 15:32:04.244 SM(2)::RemoveFlags: Seen(PMT,) Match(PMT,) Wait()
2008-01-23 15:32:04.244 DVBRec(2): SetPAT(3 on 0x30)
2008-01-23 15:32:04.245 SM(2)::AddFlags: Seen(PAT,) Match() Wait()
2008-01-23 15:32:04.245 SM(2)::AddFlags: Seen() Match(PAT,) Wait()
2008-01-23 15:32:04.246 CreatePATSingleProgram()
2008-01-23 15:32:04.247 PAT in input stream
2008-01-23 15:32:04.247 Program Association Table
 PSIP tableID(0x0) length(21) extension(0x7d9)
      version(4) current(1) section(0) last_section(0)
         tsid: 2009
 programCount: 3
  program number 3 has PID 0x  30   data  0x0 0x3 0x224 0x48
  program number 5 has PID 0x  50   data  0x0 0x5 0x224 0x80
  program number 6 has PID 0x  60   data  0x0 0x6 0x224 0x96

2008-01-23 15:32:04.248 desired_program(3) pid(0x30)
2008-01-23 15:32:04.249 pmt_pid(0x30)
2008-01-23 15:32:04.249 PAT for output stream
2008-01-23 15:32:04.250 Program Association Table
 PSIP tableID(0x0) length(13) extension(0x7d9)
      version(4) current(1) section(0) last_section(0)
         tsid: 2009
 programCount: 1
  program number 1 has PID 0x  30   data  0x0 0x1 0x224 0x48

2008-01-23 15:32:04.250 SM(2)::AddFlags: Seen() Match() Wait(PMT,)
2008-01-23 15:32:04.251 SM(2)::AddFlags: Seen() Match(VCT,TVCT,) Wait()
2008-01-23 15:32:04.252 DVBSM(2)::AddPIDFilter(0x30):
2008-01-23 15:32:04.302 DTVSM(2)::GetStatusList: WaitForPMT seen(0) matching(0)
2008-01-23 15:32:24.408 StopLiveTV(void) curRec: 0x820d260 pseudoRec: 0
2008-01-23 15:32:24.414 TVRec(3): Changing from WatchingLiveTV to None
2008-01-23 15:32:24.417 TVRec(3):
ClearFlags(FrontendReady,CancelNextRecording,) ->
RunMainLoop,AskAllowRecording,WaitingForSignal,NeedToStartRecorder,SignalMonitorRunning,ANYRECR
UNNING,RingBufferReady,
2008-01-23 15:32:24.417 TVRec(3): SetFlags(AskAllowRecording,) ->
RunMainLoop,AskAllowRecording,WaitingForSignal,NeedToStartRecorder,SignalMonitorRunning,ANYRECRUNNING,RingBufferR
eady,
2008-01-23 15:32:24.417 TVRec(3): Request: Program(no) channel()
input() flags(KillRec,KillRingBuffer,)
2008-01-23 15:32:24.418 TVRec(3): TeardownSignalMonitor() -- begin
2008-01-23 15:32:24.424 DVBSM(2)::Stop: begin
2008-01-23 15:32:24.425 SM(2)::Stop: begin
2008-01-23 15:32:24.480 SM(2)::Stop: end
2008-01-23 15:32:24.516 DVBSM(2): RunTableMonitorTS(): shutdown
2008-01-23 15:32:24.520 DVBSM(2)::RemovePIDFilter(0x0):
2008-01-23 15:32:24.521 DVBSM(2)::RemovePIDFilter(0x30):
2008-01-23 15:32:24.521 DVBSM(2)::RemovePIDFilter(0x1ffb):
2008-01-23 15:32:24.830 DVBSM(2): RunTableMonitorTS(): end
2008-01-23 15:32:24.831 DVBSM(2)::Stop: end
2008-01-23 15:32:24.832 TVRec(3): TeardownSignalMonitor() -- end
2008-01-23 15:32:24.832 TVRec(3): ClearFlags(SignalMonitorRunning,) ->
RunMainLoop,AskAllowRecording,WaitingForSignal,NeedToStartRecorder,ANYRECRUNNING,RingBufferReady,
2008-01-23 15:32:24.833 TVRec(3): ClearFlags(WaitingForSignal,) ->
RunMainLoop,AskAllowRecording,NeedToStartRecorder,ANYRECRUNNING,RingBufferReady,
2008-01-23 15:32:24.833 TVRec(3): ClearFlags(DummyRecorderRunning,) ->
RunMainLoop,AskAllowRecording,NeedToStartRecorder,RecorderRunning,RingBufferReady,
2008-01-23 15:32:24.836 TVRec(3): FinishedRecording(Clifford the Big
Red Dog) in recgroup: LiveTV
2008-01-23 15:32:24.837 Chain: Updated endtime for
'1581_20080123153203' to 20080123153224
2008-01-23 15:32:24.839 Finished recording Clifford the Big Red Dog
"Who Moved My Bone?; Clifford the Pirate King": channel 1581
2008-01-23 15:32:24.916 DVBRec(2): Close() fd(-1) -- begin
2008-01-23 15:32:24.920 DVBRec(2): Close() fd(-1) -- end
2008-01-23 15:32:24.924 TVRec(3): ClearFlags(RecorderRunning,) ->
RunMainLoop,AskAllowRecording,NeedToStartRecorder,RingBufferReady,
2008-01-23 15:32:24.929 DVBRec(2): SetOutputPAT(NULL)
2008-01-23 15:32:24.930 DVBRec(2): SetOutputPMT(NULL)
2008-01-23 15:32:24.933 TVRec(3): FinishedRecording(Clifford the Big
Red Dog) in recgroup: LiveTV
2008-01-23 15:32:24.934 Chain: Updated endtime for
'1581_20080123153203' to 20080123153224
2008-01-23 15:32:24.936 Finished recording Clifford the Big Red Dog
"Who Moved My Bone?; Clifford the Pirate King": channel 1581
2008-01-23 15:32:24.938 TVRec(3): ClearFlags(RecorderRunning,) ->
RunMainLoop,AskAllowRecording,NeedToStartRecorder,RingBufferReady,
2008-01-23 15:32:24.939 TVRec(3): Tearing down RingBuffer
2008-01-23 15:32:24.940 TVRec(3): ClearFlags(PENDINGACTIONS,) ->
RunMainLoop,AskAllowRecording,RingBufferReady,

Tom


More information about the mythtv-dev mailing list