Mailing List Archive

DVB - "Unable to find channel in database"
I've run into a situation (can't figure out how) where a null value
gets entered into the startup / pretune value on the DVB card. I can
change it in SQL, and it changes itself back to null.

When you head for LiveTV, it fails to change the channel, and you're stuck.

Which gives you this:

2005-03-07 15:35:43.422 DVB#0 DVB SI Table Parser Started
2005-03-07 15:35:43.423 DVB#0 Using DVB card 0, with frontend Nextwave
nxt2002 VSB/QAM frontend.
2005-03-07 15:35:43.424 DVB#0 DVB Signal Monitor Starting
2005-03-07 15:35:43.425 DVB#0 Trying to tune to channel .
2005-03-07 15:35:43.430 DVB#0 ERROR - Unable to find channel in database.
2005-03-07 15:35:43.431 DVB#0 ERROR - Failed to get channel options
for channel .
2005-03-07 15:35:43.432 DVB#0 Recorder: Card opened successfully
(using PS mode).
2005-03-07 15:35:43.434 DVB#0 AutoPID Complete - PAT/PMT Loaded for service
2005-03-07 15:35:43.435 DVB#0 Service is FTA
2005-03-07 15:35:43.436 DVB#0 ERROR - No PIDS set, please correct your
channel setup.
2005-03-07 15:35:44.440 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:45.442 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:46.445 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:47.448 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:48.450 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:49.453 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:50.457 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:51.460 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:52.463 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:53.465 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:54.468 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:55.471 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:56.474 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:57.477 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:58.462 Couldn't read data from the capture card in 15
seconds. Stopping.
2005-03-07 15:35:58.480 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:58.489 Changing from WatchingLiveTV to None
2005-03-07 15:35:59.481 DVB#0 WARNING - No data from card in 1 second.
2005-03-07 15:35:59.484 Closing DVB recorder
2005-03-07 15:35:59.485 Closing DVB channel
2005-03-07 15:35:59.616 DVB#0 DVB Signal Monitor Stopped

The channels DB is full of working channels.. Been working fine for a while.

This doesn't strike me as the right way{tm}.

more data when I get home. CVS as of 2/27
Re: DVB - "Unable to find channel in database" [ In reply to ]
On Mon, 7 Mar 2005 15:39:26 -0700, Blammo <blammo.doh@gmail.com> wrote:
> I've run into a situation (can't figure out how) where a null value
> gets entered into the startup / pretune value on the DVB card. I can
> change it in SQL, and it changes itself back to null.

Ok, service stop, make the change in SQL, service start.. it's fixed..

So the issue appears to be the backend somehow getting a null value in
startup channel, then refusing to believe what SQL has.

So to recap:

-- LiveTV won't work, null value in SQL:cardinput:starchan
-- change SQL value, attempt liveTV, still fails, Null re-written to
SQL by backend
-- stop backend, change SQL value, start backend, everything ok.

The symptom appears as so:

2005-03-07 16:21:50.747 DVB#0 Trying to tune to channel .
2005-03-07 16:21:50.752 DVB#0 ERROR - Unable to find channel in database.
2005-03-07 16:21:50.753 DVB#0 ERROR - Failed to get channel options
for channel .

Logic to fix this would be something like (forgive my terrible
psuedo-code, mix of bash and sql, it's been a long time since college
C/C++ classes)

if (card(startchan) == null or card(startchan) = '.') and cardtype
like '%dvb%' then set card(startchan) = (first valid channel for my
input type)

Hope this is enough to help find a solution for this problem.
Re: Re: DVB - "Unable to find channel in database" [ In reply to ]
----- Original Message -----
From: "Blammo" <blammo.doh@gmail.com>
To: "Development of mythtv" <mythtv-dev@mythtv.org>
Sent: Tuesday, March 08, 2005 1:29 AM
Subject: [mythtv] Re: DVB - "Unable to find channel in database"


> On Mon, 7 Mar 2005 15:39:26 -0700, Blammo <blammo.doh@gmail.com> wrote:
> > I've run into a situation (can't figure out how) where a null value
> > gets entered into the startup / pretune value on the DVB card. I can
> > change it in SQL, and it changes itself back to null.
>
> Ok, service stop, make the change in SQL, service start.. it's fixed..
>
> So the issue appears to be the backend somehow getting a null value in
> startup channel, then refusing to believe what SQL has.
>
> So to recap:
>
> -- LiveTV won't work, null value in SQL:cardinput:starchan
> -- change SQL value, attempt liveTV, still fails, Null re-written to
> SQL by backend
> -- stop backend, change SQL value, start backend, everything ok.
>
> The symptom appears as so:
>
> 2005-03-07 16:21:50.747 DVB#0 Trying to tune to channel .
> 2005-03-07 16:21:50.752 DVB#0 ERROR - Unable to find channel in database.
> 2005-03-07 16:21:50.753 DVB#0 ERROR - Failed to get channel options
> for channel .
>
> Logic to fix this would be something like (forgive my terrible
> psuedo-code, mix of bash and sql, it's been a long time since college
> C/C++ classes)
>
> if (card(startchan) == null or card(startchan) = '.') and cardtype
> like '%dvb%' then set card(startchan) = (first valid channel for my
> input type)
>
> Hope this is enough to help find a solution for this problem.


Unfortunately this is not enough. When mythbackend is tuned on a channel, it
remains tuned until mythfrontend asks to change channel. Database is read
only on startup. It is not read switching from None to LiveTV.

Leandro



_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
Re: Re: DVB - "Unable to find channel in database" [ In reply to ]
Quoting Blammo <blammo.doh@gmail.com>:
> > I've run into a situation (can't figure out how) where a null value
> > gets entered into the startup / pretune value on the DVB card. I can
> > change it in SQL, and it changes itself back to null.

The real problem is the frontend can't handle running out of data.. I have
started doing some research into this, but I haven't gotten very far with it at
yet.. The database issue I was worried about at one point but it only happens
when you get "stuck" as you are describing so it may be a non-issue when the
frontend gets fixed to deal with data running out and allowing you to change to
a valid channel..

Taylor

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
Re: Re: DVB - "Unable to find channel in database" [ In reply to ]
On Tue, 8 Mar 2005 06:40:27 +0100, Leandro Dardini <ldardini@tiscali.it> wrote:
> Unfortunately this is not enough. When mythbackend is tuned on a channel, it
> remains tuned until mythfrontend asks to change channel. Database is read
> only on startup. It is not read switching from None to LiveTV.

At least when it comes to DVB cards, it doesn't appear that way. The
backend opens and closes the card, setting the Startup Channel each
time, IE:

2005-03-08 00:11:45.293 Changing from None to WatchingLiveTV
2005-03-08 00:11:45.410 Using profile 'Live TV' to record
2005-03-08 00:11:45.419 DVB#0 DVB SI Table Parser Started
2005-03-08 00:11:45.421 DVB#0 Using DVB card 0, with frontend Nextwave
nxt2002 VSB/QAM frontend.
2005-03-08 00:11:45.423 DVB#0 DVB Signal Monitor Starting
2005-03-08 00:11:45.495 DVB#0 Trying to tune to channel 15_1.
2005-03-08 00:11:45.503 DVB#0 Signal Locked
2005-03-08 00:11:45.569 DVB#0 Mod:
2005-03-08 00:11:45.831 DVB#0 Signal Lost
2005-03-08 00:11:46.086 DVB#0 Signal Locked
2005-03-08 00:11:46.423 DVB#0 Waiting for frontend event after tune.
2005-03-08 00:11:46.427 DVB#0 DVB signal fd50 | snr e18c | ber 0 | unc 0
2005-03-08 00:11:46.428 DVB#0 Status: LOCK.
2005-03-08 00:11:46.430 DVB#0 Multiplex Locked
2005-03-08 00:11:47.634 DVB#0 Successfully tuned to channel 15_1.
2005-03-08 00:11:47.636 DVB#0 Recorder: Card opened successfully
(using PS mode).
2005-03-08 00:11:47.638 DVB#0 AutoPID selecting PID 49, MPEG-2 Video
2005-03-08 00:11:47.640 DVB#0 AutoPID selecting PID 52, AC3 Audio
2005-03-08 00:11:47.641 DVB#0 AutoPID Complete - PAT/PMT Loaded for service
2005-03-08 00:11:47.642 DVB#0 Service is FTA
2005-03-08 00:11:47.643 DVB#0 Adding pid 49
2005-03-08 00:11:47.645 DVB#0 Adding pid 52
2005-03-08 00:11:47.783 DVB#0 Data read from DMX - This is for
debugging with transform.c
2005-03-08 00:11:53.122 Changing from WatchingLiveTV to None
2005-03-08 00:11:53.170 Closing DVB recorder
2005-03-08 00:11:53.172 Closing DVB channel
2005-03-08 00:11:53.425 DVB#0 DVB Signal Monitor Stopped

It appears to be partially a backend problem (can't open an invalid
channel, null or .) and partially a front end issue, as Taylor alludes
to (frontend can't function without a feed). I'm not sure which end
needs the fix, I could see where fixing either side could solve the
root.
Re: Re: DVB - "Unable to find channel in database" [ In reply to ]
Quoting Blammo <blammo.doh@gmail.com>:
> It appears to be partially a backend problem (can't open an invalid
> channel, null or .) and partially a front end issue, as Taylor alludes
> to (frontend can't function without a feed). I'm not sure which end
> needs the fix, I could see where fixing either side could solve the
> root.

The backend is perfectly fine. It tunes to a channel and attempts to get data..
Fixing the backend really won't help much when you have stations that the PMT
claims its on the air, but no data comes since its realyl off the air.. It
works when you re-tune for a recording, so I don't see the backend as a
problem. Its the frontend that currently doesn't:

1. Handle running out of video in an elegant way
2. Allow you to send a new channel to the backend to re-tune

Taylor

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
Re: Re: DVB - "Unable to find channel in database" [ In reply to ]
On Tue, 8 Mar 2005 09:55:59 -0500, Taylor Jacob <rtjacob@earthlink.net> wrote:
> Quoting Blammo <blammo.doh@gmail.com>:
> > It appears to be partially a backend problem (can't open an invalid
> > channel, null or .) and partially a front end issue, as Taylor alludes
> > to (frontend can't function without a feed). I'm not sure which end
> > needs the fix, I could see where fixing either side could solve the
> > root.
>
> The backend is perfectly fine. It tunes to a channel and attempts to get data..
> Fixing the backend really won't help much when you have stations that the PMT
> claims its on the air, but no data comes since its realyl off the air.. It
> works when you re-tune for a recording, so I don't see the backend as a
> problem. Its the frontend that currently doesn't:
>
> 1. Handle running out of video in an elegant way
> 2. Allow you to send a new channel to the backend to re-tune

Assuming that the backend was trying to tune to channel considered
valid by the database, you'd be correct.

I do agree; it would be nice if the frontend was more aware of what
was causing the failure, and could recover, or at least prompt the
user to choose something else.

However, in this specific instance it wasn't the backend tuning to a
channel that had gone away, rather the backend tuning to a NULL or
invalid channel, when compared against the valid channels database.

There should be a way to catch that failure, while not incorrectly
catching the "channel has gone away" issue.