Opened 13 years ago

Closed 13 years ago

#2033 closed defect (fixed)

DVB-S scanning ticket

Reported by: yeasah@… Owned by: Stuart Auchterlonie
Priority: minor Milestone: 0.20
Component: dvb Version: head
Severity: medium Keywords:
Cc: Ticket locked: no

Description

As has been noted before, DVB-S scanning is not really functional right now. I have been slowly putting together a few patches that get things minimally going, but I don't have much so far (most of my available mythtv energy has been focused on the diseqc rework)

The patch contains three one-liners, to wit:

  • HandleDVBDBInsertion would complete if either the SDT *or* the NIT was found, so quite often the NIT would show up first, and the scan would terminate before any SDTs were found. The patch changes it to wait for both the SDT and the NIT before completing the DB insertion.
  • The SetRotorTarget?() call is not strictly needed right now, but it's better to be explicit and someday if live scanning is put back in it will be needed. Better safe than sorry.
  • The atsc_major_chan and atsc_minor_chan are strangely NOT NULL fields and default to zero, and the call to GetChanID found in UpdateSDTinDB sets the ATSC matching arguments to 0, 0 -- so it will always match the first non-ATSC channel, and only one non-ATSC channel will ever be inserted. The change goes for the simple approach and simply calls GetChanID with -1, -1 for the atsc major/minor, but perhaps a better approach would be just to change GetChanID to add a "dtv_multiplex.sistandard = 'atsc'" clause (and dtv_multiplex join where necessary) to the ATSC queries.

Attachments (3)

siscan.patch (1.1 KB) - added by yeasah@… 13 years ago.
siscan-qpsk.patch (1.2 KB) - added by yeasah@… 13 years ago.
qpsk-specific multiplex
siscan.2.patch (810 bytes) - added by yeasah@… 13 years ago.
original patch with part that has already been applied removed

Download all attachments as: .zip

Change History (12)

Changed 13 years ago by yeasah@…

Attachment: siscan.patch added

comment:1 Changed 13 years ago by anonymous

Owner: changed from Isaac Richards to Stuart Auchterlonie

comment:2 Changed 13 years ago by anonymous

Component: mythtvdvb

comment:3 Changed 13 years ago by danielk

(In [10469]) Refs #1966. Refs #2033. Applies the atsc_major_chan,atsc_minor_chan part of the siscan patch on #2033. This should allow DVB-T/DVB-C channel insertions to work again.

comment:4 Changed 13 years ago by Stuart Auchterlonie

Milestone: 0.20
Status: newassigned
Version: head

Changed 13 years ago by yeasah@…

Attachment: siscan-qpsk.patch added

qpsk-specific multiplex

comment:5 Changed 13 years ago by yeasah@…

Added a patch for QPSK scanning -- it fills out the QPSK-specific multiplex fields, and turns off the code to use the IF read from the card for now (LOFs are a little more complex now that there are so many LNB types possible, so translating IF -> RF will require some added methods to the diseqc classes before that feature can work again.)

Please also note that the other patch file here (siscan.patch) has only been partially applied (the final out of the 3 changed lines), but they are valuable changes.

Changed 13 years ago by yeasah@…

Attachment: siscan.2.patch added

original patch with part that has already been applied removed

comment:6 Changed 13 years ago by Stuart Auchterlonie

(In [10754]) Refs #2033. Adds dvb-s (QPSK) specific CreateMultiplex?.

Add the CreateMultiplex? call for QPSK multiplexes.

comment:7 in reply to:  5 ; Changed 13 years ago by Stuart Auchterlonie

Replying to yeasah@schwide.net:

Please also note that the other patch file here (siscan.patch) has only been partially applied (the final out of the 3 changed lines), but they are valuable changes.

The changes to make the scanner require either the NIT or the SDT aren't quite correct. Some places (ie. the UK) require the NIT and SDT for complete information. Most DVB-S installations should be able to get away with just the SDT, iff the drivers for the card being used are capable of returning all the required information about the current tuning parameters.

comment:8 in reply to:  7 Changed 13 years ago by anonymous

Replying to stuarta:

Replying to yeasah@schwide.net:

Please also note that the other patch file here (siscan.patch) has only been partially applied (the final out of the 3 changed lines), but they are valuable changes.

The changes to make the scanner require either the NIT or the SDT aren't quite correct. Some places (ie. the UK) require the NIT and SDT for complete information. Most DVB-S installations should be able to get away with just the SDT, iff the drivers for the card being used are capable of returning all the required information about the current tuning parameters.

Please look carefully at the patch, that's not what it does. From my earlier mail on 7/12 to you:

"Incidentally, the first part of the siscan.patch I submitted in #2033 fixes the logic behind the "if (processed SDT & NIT)" -- the if expression previously waited only for NIT or SDT, so it generally finished without any SDTs. The patch fixes it, though the expression should probably be rewritten so that the logic is more clear in the first place (currently it reads as "don't complete the scan if waiting for tables before completion, and a full SDT set hasn't been received, and a full NIT set hasn't been received", which is a little too double-negative to be easily readable) "

comment:9 Changed 13 years ago by Stuart Auchterlonie

Resolution: fixed
Status: assignedclosed

(In [10755]) Closes #2033, Refs #1866. Fixes siscan to correctly wait for both NIT & SDT. Correctly set rotor target information.

Note: See TracTickets for help on using tickets.