Opened 17 years ago
Closed 15 years ago
#2695 closed task (fixed)
Channel Scanner cleanup
Reported by: | danielk | Owned by: | danielk |
---|---|---|---|
Priority: | minor | Milestone: | 0.22 |
Component: | channelscan | Version: | head |
Severity: | low | Keywords: | |
Cc: | Stuart Auchterlonie | Ticket locked: | yes |
Description (last modified by )
I'm working on making the Channel Scanner more maintainable and fixing some lingering bugs. This ticket is just to track the progress.
DONE
- It is possible to start the scanner before you set the video source in input connections pane. [fixed in patch]
- It is possible to start the scanner from the channel editor, even if no scannable sources exist. [fixed in patch].
- The scan wizard does not prefer the current card and card input if you launch it from the input connections pane [fixed in patch].
- The scan wizard does not prefer the current source if you launch it from the channel editor pane [fixed in patch].
- The scan wizard does not show always you which card and input it will use when scanning [fixed in patch].
- The scan wizard does not handle multiple input cards correctly. [DONE]
- We should make the Analog scanner work more like the normal channel scanners; at the moment it uses a completely different and mostly unmaintained class for scanning which does not play well with XMLTV or DataDirect? channel insertion, does not handle inputs correctly, etc. [DONE]
TODO
- The scan wizard classes interact in strange ways: functional classes access private portions of the UI classes, the ScanWizard? fires off events just to run functions it could call directly, etc. [partially fixed in patch]
- #2600 Channel scanner stops scanning after finding (C)VCT
- We need to separate finding channels and inserting them [DONE]
- We should report channels which are in a channels.conf import, but were not found by the scanner (and perhaps allow these to be inserted anyway).
- We should report channels which are in the PAT and have a PMT, but do not show up in a VCT and allow the user to insert these. [DONE]
- We should optionally allow the user to wait for the PAT and PMTs even after a VCT has been found.
- #1866 DVB Scanning - Remaining Issues
- Tuned Scan does not use the information found in the NIT to find other transports to scan, as it did in previous releases.
- Other????
Attachments (8)
Change History (121)
Changed 17 years ago by
Attachment: | 2695-v1.patch added |
---|
comment:1 Changed 17 years ago by
Owner: | changed from Isaac Richards to danielk |
---|---|
Severity: | medium → low |
Status: | new → assigned |
Version: | 0.20 → head |
comment:2 Changed 17 years ago by
(In [11772]) Refs #2695. Fixes a few minor problems with the channel scanner UI and improves the UI/scanner interface.
The problems fixed are:
- It is possible to start the scanner before you set the video source in input connections pane.
- It is possible to start the scanner from the channel editor, even if no scannable sources exist.
- The scan wizard does not prefer the current card and card input if you launch it from the input connections pane.
- The scan wizard does not prefer the current source if you launch it from the channel editor pane.
- The scan wizard does not show always you which card and input it will use when scanning.
The SIScan class itself hasn't been touched in this changeset, I will be fixing some of the functional problems separately.
Changed 17 years ago by
Attachment: | setup-channels.log added |
---|
log of setup import of /etc/channels.conf
comment:3 Changed 17 years ago by
Plus answer these questions (in the ticket):
- Are you using DiSEqC?
no
- How many cards is this source connected to?
only one
comment:4 Changed 17 years ago by
Commit [11816] should have referenced this ticket: Reworks analog channel scanner to use the standard classes and makes it compatible with datadirect channel updates.
comment:5 Changed 17 years ago by
(In [12183]) Fixes #2756. Refs #2695. Allows scanner to work properly when DiSEqC input is connected to a source which is also connected to another DiSEqC input.
Before the refactors in #2695 we did not know which input we were scanning so each input had to be connected to a different source, even if the two sources contained the same channels. Now we pass the inputname to the scanner so that it knows which input it should scan if a source is connected to multiple inputs.
comment:7 Changed 17 years ago by
(In [12419]) Refs #2695. Removes some unused parameters in DiSEqC setup.
These were added to try to simplify DiSEqC setup, but it turned out that fine tuning a DiSEqC setup is a common operation for FTA hobbists so I removed the simplifying code. This removes the paramaters that were used to enable and disable the simple input connections panel but are now unused.
comment:8 Changed 17 years ago by
I have some problems concerning the scanner too: In my case mythtv is not able to find the some channels even if they were first imported correctly from a channels.conf file (and after that deleted so that mythtv can do the scanning again to make EPG working on these channels): A scan on all known transponders does not give some "special" channles: The "Premiere Direkt" (and other pay per view) channels are missing.
Maybe there is a workaround to fix the database manualy to get EPG working with these few imported channels which the mythtv scanner does not find. I looked into the mythconverg database and found that the cause for the missing EPG maybe lies in the table "dtv_multiplex". For channels which are impoted from a channels.conf file, the "transportid" and "netwokid" in the corresponding entry of the "dtv_multiplex" seems to be alway NULL in comparison to the entries that were made when mythtv does the scanning. Is it possible to fix the EPG on theses channels by fixing this table? Or which other information is missing in the database to get EPG working? And how can this be fixed by hand?
comment:9 Changed 17 years ago by
comment:10 Changed 17 years ago by
(In [13257]) Refs #2695. Applies channel scanner patch to channel scanner branch.
This is not a working scanner, it will not insert any channels into the DB. What it does is put all the channels it finds into a data structure which can be processed to insert channels into the DB. The idea is to have all the information we can get before we start inserting the channels, this allows us to address problems such as #3119 where all the channels have the same major and minor channel numbers according to the info in the streams and so that info should be ignored.
comment:11 Changed 17 years ago by
Cc: | Stuart Auchterlonie added |
---|
comment:12 Changed 17 years ago by
(In [13397]) Refs #2695. Merges -r13256:13396 from svn head to mythtv-channel-scanner
comment:13 Changed 17 years ago by
(In [13401]) Refs #2695. Refs #2053. Adds facility for saving newly scanned channels to the DB before processing them for DB insertion. This allows for debugging scans that don't resemble the developer's setup and also should allow for interactive processing in the frontend of automated channel scans in the future.
comment:14 Changed 17 years ago by
Component: | mythtv → channelscan |
---|
comment:15 Changed 17 years ago by
comment:16 Changed 17 years ago by
(In [14288]) Refs #3326. Merges r13396:14286 from trunk to mythtv-channel-scanner.
comment:17 Changed 17 years ago by
(In [14613]) Refs #2695. Merges r14286:14612 from trunk to mythtv-channel-scanner
comment:18 Changed 17 years ago by
comment:19 Changed 17 years ago by
(In [14752]) Refs #2695. Merges r14612:14749 from trunk to mythtv-channel-scanner
comment:20 Changed 16 years ago by
(In [14910]) Refs #2695 Merges r14855:14908 from svn trunk to mythtv-channel-scan.
comment:21 Changed 16 years ago by
(In [14928]) Refs #2695. Merges r14908:14926 from trunk to mythtv-channel-scan
comment:22 Changed 16 years ago by
Milestone: | 0.21 → 0.22 |
---|
comment:23 Changed 16 years ago by
(In [17055]) Refs #2695. Partial merge to mythtv-channel-scan from trunk r14926:16500
comment:24 Changed 16 years ago by
(In [17056]) Refs #2695. Partial merge to mythtv-channel-scan from trunk r16000:16500
comment:25 Changed 16 years ago by
(In [17057]) Refs #2695. Partial merge to mythtv-channel-scan from trunk r16500:17056
comment:26 Changed 16 years ago by
(In [17103]) Refs #2695. Fixes some things missed in the merge from from trunk r14926:17056
comment:27 Changed 16 years ago by
(In [17104]) Refs #2695. Finshes merge of files from trunk r14926:17056
comment:28 Changed 16 years ago by
comment:29 Changed 16 years ago by
comment:30 Changed 16 years ago by
comment:31 Changed 16 years ago by
comment:32 Changed 16 years ago by
comment:33 Changed 16 years ago by
(In [17173]) Refs #2695. Merges r17120:17172 from trunk to channel scanner branch.
comment:34 Changed 16 years ago by
comment:35 Changed 16 years ago by
comment:36 Changed 16 years ago by
comment:37 Changed 16 years ago by
comment:38 Changed 16 years ago by
(In [17601]) Refs #2695. Merges r17172:17300 from trunk to channel scanner branch.
comment:39 Changed 16 years ago by
(In [17605]) Refs #2695. Merges r17300:17400 from trunk to channel scanner branch.
comment:40 Changed 16 years ago by
(In [17606]) Refs #2695. Merges r17500:17605 from trunk to channel scanner branch.
comment:41 Changed 16 years ago by
comment:42 Changed 16 years ago by
comment:43 Changed 16 years ago by
comment:44 Changed 16 years ago by
comment:45 Changed 16 years ago by
comment:46 Changed 16 years ago by
comment:47 Changed 16 years ago by
comment:48 Changed 16 years ago by
comment:49 Changed 16 years ago by
comment:50 Changed 16 years ago by
comment:51 Changed 16 years ago by
comment:52 Changed 16 years ago by
comment:53 Changed 16 years ago by
comment:54 Changed 16 years ago by
(In [17776]) Refs #2695. Merges r17605:17771 from head to mythtv-channel-scanner.
Changed 16 years ago by
Attachment: | setup-cs-branch2.log.bz2 added |
---|
Log of --verbose channelscan,siparser,channel,record from the branch doing a full scan
Changed 16 years ago by
Attachment: | setup-svn-head.log.bz2 added |
---|
Log of setup with --verbose siparser,channel,record against head 17783
Changed 16 years ago by
Attachment: | channel-cs.sql added |
---|
Channel table after scanning with the branch
Changed 16 years ago by
Attachment: | channel-head.sql added |
---|
channel table after scanning with head 17783
comment:55 Changed 16 years ago by
Regressions noted in the channel scanner branch against head.
- UK LCNs are not picked up nor used.
- UK default authority descriptors are not retrieved from the SDT anymore
- Masses of duplicated channels. Total found = 264(branch) vs 82(head)
- Found some SCTE channels apparently.
- Takes *way* longer to run in the branch.
It appears that it's sitting on each frequency until it hits a timeout while in head it finds all the tables it needs and then proceeds.
Are we hitting a fallback case for broken providers even though we aren't broken?
Stuart
comment:56 Changed 16 years ago by
Forgot to mention, i've attached logs of both head & branch performing the same full scan.
I've also attached the resulting channel table for each run.
Stuart
comment:57 Changed 16 years ago by
(In [17795]) Refs #2695. Merges r17771:17794 from trunk to mythtv-channel-scanner.
comment:58 Changed 16 years ago by
(In [17943]) Refs #2695. Merges r17794:17942 from trunk to mythtv-channel-scanner.
comment:59 Changed 16 years ago by
Is it possible while working on the channelscanner to include a option to import channels without MythTV checking if the channels are correct? I'm basicly suggesting a "raw import" function besides the existing "checked imported function".
I'm asking because currently MythTV is checking the imported DVB channels following the DVB standard stricly and with this it's not possible to import correct channels when your cableprovider is using a single network id to broadcast channel information.
Of course it would be great if the import function can be fixed to make automaticly scanning work as well, but this is propably a lot more work. I can setup up a test machine if needed for this.
I'm currently adding new chapters about DVB-s/c/t to the official en wiki based manual. Can you let me know if any of this will be build/fixed? I like to include it in the manual. (you can post it on my personal page or discuss it on the myth-dev mailing list). At this moment i'm importing the channel information directly into the database, but this is not something i'm willing to suggest in a manual.
Related topics:
comment:60 Changed 15 years ago by
Loki, with the new scanner it is really just a matter of writing the UI for it, it keeps all the channel information throughout, including the channels in the channels.conf it did not find any additional info for.
comment:61 Changed 15 years ago by
(In [19421]) Refs #2695. Merges r17942:18000 from trunk to mythtv-channel-scan
comment:62 Changed 15 years ago by
(In [19422]) Refs #2695. Merges r18000:19416 from trunk to mythtv-channel-scan
comment:63 Changed 15 years ago by
(In [19423]) Refs #2695. Merges r19416:19422 from trunk to mythtv-channel-scan
comment:64 Changed 15 years ago by
(In [19892]) Refs #2695. Merges r19422:19887 from trunk to mythtv-channel-scan
comment:65 Changed 15 years ago by
comment:66 Changed 15 years ago by
comment:67 Changed 15 years ago by
comment:68 Changed 15 years ago by
comment:69 Changed 15 years ago by
comment:70 Changed 15 years ago by
comment:71 Changed 15 years ago by
comment:72 Changed 15 years ago by
comment:73 Changed 15 years ago by
comment:76 Changed 15 years ago by
comment:77 Changed 15 years ago by
comment:78 Changed 15 years ago by
Description: | modified (diff) |
---|
comment:79 Changed 15 years ago by
comment:81 Changed 15 years ago by
comment:82 Changed 15 years ago by
comment:83 Changed 15 years ago by
(In [19949]) modify TestNextProgramEncryption? to avoid a endless loop. Refs #2695
comment:84 Changed 15 years ago by
(In [20290]) Refs #2695. Merges r19887:20288 from trunk to mythtv-channel-scan
comment:85 Changed 15 years ago by
comment:86 Changed 15 years ago by
Changed 15 years ago by
Attachment: | 2695-merge-v1.patch added |
---|
patch to merge channel-scan branch to trunk
comment:87 Changed 15 years ago by
I've attached a patch that merges the channel scanning branch to trunk. After some re-testing I plan to apply it and delete the channel scanning branch so that the remaining issues can be tackled more quickly in trunk. If you see any show-stoppers please speak up...
comment:88 Changed 15 years ago by
comment:89 Changed 15 years ago by
(In [20416]) Refs #2695. Adds extra debug info to NetworkInformationTable?. Prints out the table section number, last section number and IsCurrent? flag.
comment:90 Changed 15 years ago by
comment:91 Changed 15 years ago by
comment:92 Changed 15 years ago by
comment:93 Changed 15 years ago by
(In [20420]) Refs #5562, Refs #2695. A bunch of dvbdescriptor updates.
Creates a ServiceDescriptorMapping? class to provide a single point to convert service descriptors.
Make ServiceDescriptor? use the ServiceDescriptorMapping? class.
Make the BouquetNameDescriptor? toString useful.
Enhance the CountryAvailabilityDescriptor? to print out country codes.
Finish off ServiceListDescriptor? toString. Uses ServiceDescriptorMapping? class.
Adds DefaultAuthorityDescriptor?.
Add plumbing to print out DefaultAuthorityDescriptor?, BouquetNameDescriptor?, CountryAvailabilityDescriptor?, ServiceListDescriptor? when present in the broadcast stream.
comment:94 Changed 15 years ago by
I'm just noting these for the record, in case i don't get to them before the branch is merged.
Regressions to previous versions of the channel scanner.
UK LCNs (Logical Channel Numbers) The LCN isn't found correctly if the transport being scanned is in the 2nd received part of a multi part NIT. The _received_ is important here. If you get part 2/2 first and it contains your mux then it'll work, it'll also work if you get part 1/2 first and it contains your mux. If it's in the part received 2nd, it doesn't work.
UK Default Authorities. The Default authorities are no longer picked up from the SDT. Technically they are picked up, they just don't make it to the database. However #5562 is about extending the default authority support so it can be retrieved from the BAT, so i'll address the lack of default authority in the database while working on that ticket.
Stuart
comment:95 follow-up: 96 Changed 15 years ago by
comment:96 Changed 15 years ago by
comment:97 Changed 15 years ago by
(In [20423]) Refs #2695. Don't emit ATSCStreamData::HandleTables?(): Unknown table messages for tables that we know are DVB tables. Cleans up the debugging output significantly for DVB users.
comment:98 Changed 15 years ago by
comment:100 Changed 15 years ago by
Since the merge, the current patch for dvb-s2 ( ticket 5882 ) does not apply anylonger. This is quite an issue for those using dvb-s2. Would it be possible to obtain a new updated patch for dvb-s2
comment:101 Changed 15 years ago by
The following files were "deleted" as part of the merge:
/libs/libmythtv/scanwizardhelpers.cpp /libs/libmythtv/scanwizardhelpers.h /libs/libmythtv/scanwizardscanner.cpp /libs/libmythtv/scanwizardscanner.h /libs/libmythtv/siscan.cpp /libs/libmythtv/siscan.h
It is probaly a stupid question, buyt I need to know where did the corresponding code in these 6 files go after the merge ? In other words, what are the file names that include the corresponding code after the merge. Unless I am mistaken, it is not very clear from the ticket. This info is needed for future developement and toa daot ticket 5882 ( s2api) after the merge.
comment:102 Changed 15 years ago by
Ticket locked: | set |
---|
Trac is not a support forum, especially not for legally dubious external patch sets.
comment:103 Changed 15 years ago by
comment:104 Changed 15 years ago by
(In [21549]) revert [21040] except channelscan/channelscanner.cpp part. Refs #2695
no need to play tricks with the timeout since UpdateChannelInfo? can now correctly signal that the transport is finished.
comment:105 Changed 15 years ago by
comment:106 Changed 15 years ago by
(In [21640]) Refs #2695. Move free to air only setting and replace radio services setting with more general service requirements setting. This also drops support for these being specified in the input connection table where it is ambiguous since multiple connections can be made to the same lineup and multiple scans can result in a lineup inconsistent with these settings even if the lineup is only connected to one input.
A later commit will add channel deletion prompting using these settings as a guide.
comment:107 Changed 15 years ago by
comment:108 Changed 15 years ago by
comment:110 Changed 15 years ago by
comment:111 Changed 15 years ago by
comment:112 Changed 15 years ago by
comment:113 Changed 15 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Problems remain in channel scanning but the original problems identified in this task ticket should be fixed now. Please open new tickets for any scanning problems not described in other existing tickets.
Initial patch