Opened 13 years ago

Closed 13 years ago

#1520 closed patch (fixed)

Don't automatically add new channels in mythfilldatabase

Reported by: dwilga@… Owned by: danielk
Priority: minor Milestone: 0.20
Component: mythtv Version: head
Severity: medium Keywords:
Cc: Ticket locked: no


DataDirect? likes to automatically add new channels added by the provider to one's lineup. When it comes to satellite providers, these are almost always channels you don't subscribe to. It's a pain to have to go to DD to unflag the channels and then delete them in mythtv-setup every time this happens.

This new commandline option to mythfilldatabase, "--no-new-channels", makes it ignore any channels DD adds without your knowledge. It has the side-effect that you have to manually run mythfilldatabase without this option whenever you really want to add new channels to your listings in Myth.

Attachments (2)

filldata-diff.txt (12.7 KB) - added by dwilga@… 13 years ago.
mythtv-mythfilldatabase-remove_new_channels.patch (2.2 KB) - added by sphery <mtdean@…> 13 years ago.

Download all attachments as: .zip

Change History (9)

Changed 13 years ago by dwilga@…

Attachment: filldata-diff.txt added

comment:1 Changed 13 years ago by cpinkham

Resolution: wontfix
Status: newclosed

I've been debating committing this patch but am going to agree with the current discussion on the -dev list that this is not a good idea and reject it. We want to minimize our impact on Zap2It's servers. I believe Myth was the first Open Source DVR/PVR to honor their "next suggested download time" and this patch would be a big step backwards towards the Myth software cooperating nice with their _free_ service. It may be a pain to go to Zap2It's website and delete new channels when they start appearing in your guide, but we'd rather you spend 2 minutes going to the website to delete the channel than have Myth download guide data for that channel and hide it from you every day for as long as you continue to use Myth. Over time for one user it adds up to quite a bit of data and horsepower on Zap2It's end, but if you multiply that times the Myth userbase that would take the easy way out and use this feature rather than updating their channel listing at Zap2It, then it adds up even quicker.

comment:2 Changed 13 years ago by anonymous

Resolution: wontfix
Status: closedreopened

I understand your reasoning, but I think the current behaviour for dvb is fundamentally broken, as when new channels are added, untunable channels get created in mythtv. I'm not sure how that is a good thing. Would you accept the patch if it was dvb specific (so only people using dvb/atsc wouldn't have new channels added automatically)?

comment:3 Changed 13 years ago by danielk

Resolution: wontfix
Status: reopenedclosed

see discussion in mythtv-dev

comment:4 Changed 13 years ago by sphery <mtdean@…>

Resolution: wontfix
Status: closedreopened

Attached patch ( mythtv-mythfilldatabase-remove_new_channels.patch ) adds a command-line option (--remove-new-channels) to mythfilldatabase (mfdb) to allow users of analog cards to specify that new channels appearing in the DataDirect (DD) lineup should be removed from the lineup and should not be added to the MythTV database. I used dashes in the option name since all other options (except --do_channel_updates) use dashes (see also #1731).

The --remove-new-channels option is ignored if the user also specifies --do_channel_updates. Also, if the videosource is digital, the option is ignored (since it specifies the default behavior for digital sources).

If the user specifies --remove-new-channels, the user's DD lineup is always updated once per mfdb run--regardless of whether the lineup contains additional channels or not. The same is true for users with DVB or ATSC sources (whether they specify --remove-new-channels or not). Later, I may look at adding code to prevent the lineup update when the lineup is already correct.

Updating the DD lineups requires wget version 1.10+ (for the --keep-session-cookies option). Any user with wget 1.9.x or below will get a wget failure in DataDirectProcessor?'s GrabLoginCookiesAndLineups?(), which will cause mfdb to abort the attempt to update the lineup. However, because DataDirectProcessor::UpdateChannelsSafe?() was already called and told not to add the new channels, they will not appear in the MythTV database but all future downloads of DD data will include the additional channel(s). Since most users will probably be using wget 1.10.x, I didn't think it was worth working out a way to add the channels to the database if the lineup update fails, thereby forcing them to notice and fix/ask about the failure. (So, it works the same way as the digital videosource code that was previously there). Therefore, I hope affected users will notice the wget error message:

Usage: wget [OPTION]... [URL]...

Try `wget --help' for more options.

in their mfdb log file and ask about it on the lists... :)

I also noticed that in the event a provider has multiple channel numbers for the same channel in the DD lineup, updating the lineup will select both channels. For example, DISH network puts "local" channels in the 8xxx range--providing unique channel numbers for all channels--but also creates "aliases" for those channels in the < 100 (probably < 70) range using the same channel number as OTA broadcasts--i.e. channels 2 and 8272 are both WESH on my subscription. I previously had 13 channels in my lineup--12 of which had duplicates in the 8xxx range. After the update, I had 25 channels in my lineup. However, the total increase in data size was only 700 bytes since DD only has to provide the extra channel information, where both channels will use the same ID to reference the program data. And, the code that does the station updates sees the channel as already existing (since it has the same xmltvid as another channel), so the additional channel is not added to the MythTV database. Therefore, I didn't feel it was worth changing the behavior.

(I'm assigning to danielk because he wrote the code to make this possible.) Daniel, it looks to me like the only reason you disabled updating the lineup for analog sources was because you wanted it to be an option (perhaps with a different default) and, possibly, because you didn't have time to do the associated testing. If that's not the case and you would like me to do this differently, please let me know how you want the analog side to work.

comment:5 Changed 13 years ago by sphery <mtdean@…>

Owner: changed from Isaac Richards to danielk
Status: reopenednew

Changed 13 years ago by sphery <mtdean@…>

comment:6 Changed 13 years ago by danielk

Milestone: 0.20
Status: newassigned
Version: head

comment:7 Changed 13 years ago by danielk

Resolution: fixed
Status: assignedclosed

(In [9803]) Closes #1520. Adds a new option to mythfilldatabase called --no-new-channels which ignores new channels in the lineup.

This actually removes the new channels from your lineup, as if you had gone to the zap2it website and removed them manually.

Note: See TracTickets for help on using tickets.