[mythtv] What units of SNR is returned by FE_GET_SNR
Mac Michaels
wmichaels1 at earthlink.net
Mon Jun 6 20:35:33 UTC 2005
On Monday 06 June 2005 02:53 pm, Taylor Jacob wrote:
> Quoting Mac Michaels <wmichaels1 at earthlink.net>:
> > I send this to both linux-dvb and myth-dev lists
> > because SNR is generated by a linux-dvb driver and
> > displayed by the mythtv application while doing a
> > tuning scan.
> >
> > I have searched the DVB documentation for the units of
> > signal-to-noise ratio and found only that is is an
> > int16_t. Not much help. SNR is usually specified in db
> > and defined as:
>
> Each DVB driver does it differently. There are no units
> because on many demods that have been reverse engineered
> no one knows what the units really are.
>
> Here is one example. The value can be 0-0xFFFF. I did
> some checking and found that 32DB is very very high for
> ATSC reception and so I made the SNR value for the
> Nxt2002 go from 0 (0db) - 0xFFFF (32db).
>
> The Hd2k/3k cards report the value as just the actual
> unit so 32db would be 0x0020.
>
> Great system right? There really isn't much of a way to
> fix this other than hope the drivers return some
> reasonable value..
Maybe there should be an addition to the info structure to
indicate how SNR and signal strength are being reported so
the application knows how to interpret the value.
For example:
enum snr_type { DB, DB_TENTHS, FULLRANGE, ... }
int snr_min
int snr_max
where:
DB means snr_min and snr_max are in db
DB_TENTHS means snr_min and snr_max are in tenths of a db (a
value of 20 means 2 db)
FULLRANGE means value of 0 is for snr_min db and value of
0xFFFF if for snr_max db.
-- Mac
More information about the mythtv-dev
mailing list