[mythtv] DVB channel scanner
Stuart Auchterlonie
stuarta at squashedfrog.net
Wed May 3 13:08:58 UTC 2006
On Wed, May 03, 2006 at 12:53:37PM +0000, Einar Bjarni Halldórsson wrote:
> > Could you please attach a copy of the logfile generated from
> >
> > mythtv-setup --verbose siparser,record,channel
> >
> > to http://svn.mythtv.org/trac/ticket/1485
> >
> > and also the output of
> >
> > dvbsnoop -n 1 -nph 0x10
> >
> > to the ticket. You will need to use tzap to tune to a channel before
> > using dvbsnoop.
> >
> >
> > I'm actively looking at this area at the moment, so the info you
> > provide will help.
> >
> >
> > Stuart
>
> I've attached the ouput from dvbsnoop and mythtv-setup to ticket #1485
> as you requested. I hope it helps.
>
Could you try the attached patch, applies to svn (eit-branch)
Stuart
-------------- next part --------------
Index: libs/libmythtv/siscan.cpp
=================================--- libs/libmythtv/siscan.cpp (revision 9849)
+++ libs/libmythtv/siscan.cpp (working copy)
@@ -1324,6 +1324,7 @@
#ifdef USING_DVB
if (GetDVBChannel())
{
+ DVBSignalMonitor *sm // Try to read the actual values back from the card
DVBTuning tuning;
if (!GetDVBChannel()->GetTuningParams(tuning))
@@ -1334,7 +1335,8 @@
mplexid (*transport).SourceID, (*transport).standard,
tuning.Frequency(), tuning.ModulationDB(),
- -1 /* transport id */, -1 /* network id */,
+ sm->GetCurrentTransportID(),
+ sm->GetCurrentNetworkID(),
-1 /* symbol rate */, tuning.BandwidthChar(),
-1 /* polarity */, tuning.InversionChar(),
tuning.TransmissionModeChar(),
@@ -1345,7 +1347,8 @@
mplexid (*transport).SourceID, (*transport).standard,
tuning.Frequency(), (*transport).ModulationDB(),
- -1 /* transport id */, -1 /* network id */);
+ sm->GetCurrentTransportID(),
+ sm->GetCurrentNetworkID());
}
#endif // USING_DVB
Index: libs/libmythtv/channelutil.cpp
=================================--- libs/libmythtv/channelutil.cpp (revision 9849)
+++ libs/libmythtv/channelutil.cpp (working copy)
@@ -194,7 +194,8 @@
{
QString modulation;
uint mux - freq + if (mux !+ freq }
uint mux Index: libs/libmythtv/dtvsignalmonitor.h
=================================--- libs/libmythtv/dtvsignalmonitor.h (revision 9849)
+++ libs/libmythtv/dtvsignalmonitor.h (working copy)
@@ -42,6 +42,9 @@
uint GetNetworkID(void) const { return networkID; }
int GetServiceID(void) const { return programNumber; }
+ uint GetCurrentNetworkID(void) const { return currentNetworkID; }
+ uint GetCurrentTransportID(void) const { return currentTransportID; }
+
void SetFTAOnly(bool fta) { ignoreEncrypted bool GetFTAOnly() const { return ignoreEncrypted; }
@@ -118,6 +121,8 @@
uint networkID;
uint transportID;
int programNumber;
+ uint currentNetworkID;
+ uint currentTransportID;
bool ignoreEncrypted;
QString error;
};
Index: libs/libmythtv/dtvsignalmonitor.cpp
=================================--- libs/libmythtv/dtvsignalmonitor.cpp (revision 9849)
+++ libs/libmythtv/dtvsignalmonitor.cpp (working copy)
@@ -38,6 +38,7 @@
majorChannel(-1), minorChannel(-1),
networkID(0), transportID(0),
programNumber(-1),
+ currentNetworkID(0), currentTransportID(0),
ignoreEncrypted(true),
error("")
{
@@ -403,6 +404,8 @@
void DTVSignalMonitor::HandleSDT(uint, const ServiceDescriptionTable *sdt)
{
AddFlags(kDTVSigMon_SDTSeen);
+ currentNetworkID + currentTransportID
if (sdt->OriginalNetworkID() ! {
More information about the mythtv-dev
mailing list