51 Commits

Author SHA1 Message Date
Horst Beham
8480fcf5c2 - experimental support for Philips channel list format 125 (with automatic sync to MtkChannelList.xml)
- experimental support for MtkChannelList.xml (which is part of several MediaTek based Google TVs, e.g. Philips formats 120 and 125)
- Philips formats 100-125: improved decoding of non-latin characters (turkish, cyrillic, ...)
2024-10-01 10:05:48 +02:00
Horst Beham
7f8e73fd05 - WIP support for Philips channel list format version 120 2023-11-03 17:40:43 +01:00
Horst Beham
6134eb3eb5 - improved tv.db/idtvChannel.bin support (e.g. Panasonic LSW500, LXW700)
- fixed error when changing "Auto hide/unhide columns" option while no list is loaded
- added "Feature" to serializers so they can enforce that all TV channels must come before Radio and Data (but share a common number sequence)
2023-10-28 21:28:02 +02:00
Horst Beham
8ac45d5729 - fixed loading .txt reference lists
- added support for HB\_DATABASE\_\*.DBM channel lists with file size 74303  (e.g. Renkforce 1510 C HD, Telestar digiHD TC 7)
- added support for dtv_cmdb_2.bin files with file size 2731173  (e.g. Dijitsu Android TV with LD-M538 board)
- improved experimental support for amdb\*.db Android STB channel lists  (now grouped by TV and radio for each satellite)
- combined HHD Hex Editor Neo structure definition files for HB_DATABASE.DBM file formats
2023-10-22 21:43:46 +02:00
Horst Beham
3139f3d9f4 Various changes and refactorings to integrate the suggested changes from pull-request https://github.com/PredatH0r/ChanSort/pull/358 to handle the distinction between IP-antenna, IP-cable, IP-sat and DVB-T, DVB-C, DVB-S for Panasonic TVs.
- SignalSource.IP is now treated as a broadcast system (distinguishing Analog/Dvb/Ip) and no longer a broadcast medium (like antenna/cable/sat).
- SignalSource.Digital was renamed to DVB
2023-06-03 10:38:11 +02:00
Horst Beham
072d9b2502 - upgrade to DX 22.2.4
- added support for Medion Android UHD "senderliste.txt" JSON format
2023-02-20 09:34:45 +01:00
Horst Beham
e27087e6e4 - TCL/Thomson: improved file detection (.tar file or directory containing DtvData.db, satellite.db, cloneCRC.bin)
- m3u: #EXTINF tag data is displayed in "Short Name" column and can be edited
- m3u: fixed saving #EXTINF lines containing tag data
- m3u: readded "File / Save as" menu item (but not for other types of lists)
2023-01-04 13:31:46 +01:00
Horst Beham
d361d51b8b - removed superfluous parameter from SerializerBase.Save()
- added "Pooling=False" parameter to all Sqlite connection strings to prevent open file locks after closing the connection and to avoid extreme delays when using CloseAllPools()
- C# code refactoring "using var" instead of "using ( ) { }" where possible
2022-11-29 22:00:16 +01:00
Horst Beham
a39d8f7d18 - added function to mark a channel for swapping + swap with current channel
- replaced misuse of "FileLoadException" with a custom LoaderException to handle file loading issues with better continue/fail logic
- removed "Save As" and replaced it with "Convert list" menu item that shows information on how to use a reference list instead of direct conversion
2022-11-29 14:58:00 +01:00
Horst Beham
4a1a39b1e7 - added function to mark a channel for swapping + swap with current channel
- replaced misuse of "FileLoadException" with a custom LoaderException to handle file loading issues with better continue/fail logic
- removed "Save As" and replaced it with "Convert list" menu item that shows information on how to use a reference list instead of direct conversion
2022-11-29 14:56:23 +01:00
Horst Beham
76d88c63cc - added support for Orsay .zip files which contain a Clone/map-AirD and other files similar to Samsung .scm
- Reference list dialog is now resizable
- Grundig dvb\*_config.xml lists are now separated into TV and Radio lists with individual ordering
- ability to load Grundig dvb\*\_config.xml files containing invalid XML characters (e.g. 0x10)
2022-04-19 10:36:52 +02:00
Horst Beham
9c2a7b9195 - Philips: fixes for ChannelMap_100, 105 and 110 formats
- Philips: support for FLASH/*.bin DVB-T/C and preset DVB-S lists (mgr_chan_s_pkg.db)
- Toshiba: lists with chmgt_type001\\chmgt.bin can now be opened without zipping them
- Toshiba: selecting the hotelopt_type001.bin will now also load the list (if the type is supported)
- Alden: added support for "Alden" Android SmartTV channel list format (dvr_rtk_tv.db)
2021-09-06 20:42:45 +02:00
Horst Beham
39f2c59f94 - Philips loaders will show model and file format version under File / File information... 2021-09-05 18:20:39 +02:00
Horst Beham
1b250b2a18 - ChanSort didn't work properly for Turkish (and other system locales) that don't translate ".bin" to uppercase
".BIN" and ".BIN" to lowercase ".bin".
- Philips: Removing a channel from a list is no longer possible (because it is not supported by the TV's import).
  When saving a file, all unsorted channels will be placed at the end of the list.
- support for Philips Repair\mgr_chan_s_fta.db lists is now read-only. Files can be used as a reference list,
  but modifying them won't be possible.
2021-08-31 22:13:28 +02:00
Horst Beham
36ce58ea15 massive UI overhaul:
- user interface can now be toggled between
   - **split view**: classic ChanSort UI with new/ordered and old/full list side-by-side
   - **single-table**: simplified and more intuitive UI, but not quite as powerful
  When you choose to "Modify current list", the single-table view is used by default,
  otherwise the split view. But you can always toggle between them.
- added option to select a color theme. The UI now uses the "Office 2019 Colorful" theme by default,
  the old theme was "Office 2016 Blue".
- improved many keyboard shortcuts (open the drop-down menus to see the shortcuts)
- improved some icons to work better with dark themes
2021-07-26 00:14:21 +02:00
Horst Beham
0890c0f2c7 - fixed application of .txt reference lists (which had no effect at all on philips lists)
- improved support for Vidaa 5.1 Hisense format
2021-07-08 22:13:08 +02:00
Horst Beham
2124346be0 - when deleted and non-deleted channels match a reference item, prefer the non-deleted
- upgrade to DX 21.1.3
- improved high-dpi-support (mixed DPI screens or VM/remote desktop with high-dpi only)
2021-06-13 04:03:12 +02:00
Horst Beham
9387fb19c1 - fixed issue where indistinguishable channels were reassigned a number during application of a reference list 2021-03-17 17:46:11 +01:00
Horst Beham
1f809bd571 - bugfix for Sharp/Dyon/... .csv file formats with less than 52 colums
- improved reference list channel matching: if multiple channels match the same name, then the candidates are narrowed
  down by service type (TV/radio/data - if known), case sensitivity (upper/lowercase), encryption (unencrypted first)
2021-03-17 07:01:05 +01:00
Horst Beham
09beaf5e80 - added support for *.csv channel lists from various manufacturers (Sharp, Dyon, Blaupunkt, Hisense, ...)
- updated readme with system requirement (including Linux) and TV models
2021-03-15 20:53:45 +01:00
Horst Beham
5705a435b4 - added unit tests for Enigma2 and Grundig loaders
- added round-trip unit test for all loaders to check reordering channels and favorites, saving and reloading
- internal code clean-up regarding different favorite list modes (none vs. flags vs. ordered per source vs. mixed source)
2021-03-14 22:13:22 +01:00
Horst Beham
f5010439cb - W.I.P: Enigma2 lamedb / bouquets support for Linux based Set-Top-Boxes (Dreambox, VU+, Octagon, ...)
- Toshiba settingsDB.db: support for lists without analog tuner data (missing TADTunerDataTable)
- Grunding: failed to load lists where the <Digital> element did not contain a <channels> child element
- W.I.P: reworking the reference list system so that a simple list of channels can be applied to the main channel numbers or a particular favorite list.
  (The "Automatically reorder all lists" options currently does not work)
2021-03-13 18:11:30 +01:00
Horst Beham
9d4467c868 more changes for enigma2 list with 64+ favorite lists (bouquets) 2021-03-07 20:48:31 +01:00
Horst Beham
53b27e277a - added unit test project for m3u lists
- fixed handling of reference lists (matching sat/cable/antenna, digital/analog, tv/radio/data criteria), especially for m3u lists which don't contain ONID-TSID-SID to identify channels
2021-01-24 11:57:06 +01:00
Horst Beham
7fc413e64d - Grundig: added support for dvb*_config.xml channel lists
- experimental feature to allow editing Audio-PID (but turned out to have no effect for webOS 5)
2021-01-02 13:18:37 +01:00
Horst Beham
f42483de23 - check for updates can now handle multiple updates on a specific day
- fixed applying favorites from a reference list (it showed fav letters on the channels, but the fav lists were empty)
- added Polish translation (thanks to Jakub Driver!)
- potential fix for Samsung 1352.0 format, which can contain channels marked as deleted
2020-03-14 16:54:42 +01:00
Horst Beham
40f36c58c6 fixed: removing channels from a favorite list caused incorrect reordering 2020-02-11 23:25:32 +01:00
Horst Beham
bd19d94686 - Philips: show and edit customized titles of favorite lists
- fixed non-unique numbers in mixed-source favorite lists when using "Add to Fav A" (Panasonic, Hisense, Sony, Philips)
- function to reorder channels from 1-x is now reordering all channels when only a single one was selected
- function to sort channels by name is now reordering all channels when only a single one was selected
2020-02-11 21:06:37 +01:00
hbeham
9ba8a357ed - LG GlobalClone: Favorites were not loaded correctly into ChanSort
- LG GlobalClone: some changes that might fix problems where the TV didn't work properly
  with an importet list (ChanSort now modifies less data in the file)
- Menu items for hide/unhide, skip/unskip, lock/unlock are now disabled when these features are not supported by the
  channel list file format
- Applying a .txt reference list (which doesn't contain information about skip/lock/hide) will no longer clear these
  flags in the current channel list
2019-11-24 20:00:48 +01:00
hbeham
0e7f810dd5 Philips: Improved support for ChannelMap_xxx channel lists directory structure.
Selecting any .xml or .bin file in the folder will now load all DVB\*.xml files from the
channellib and s2channellib sub folders.

The Loader can now return multiple file names to the MainForm that it will use for backup/restore.
2019-11-17 14:56:19 +01:00
hbeham
737ce9d344 fixed: Philips DVBC.XML files with frequency values in Hz instead of MHz caused an overflow exception 2019-11-11 19:22:00 +01:00
hbeham
65600756da some more code cleanup and a few minor fixes 2019-11-08 19:35:59 +01:00
hbeham
34b281f5fc - unified handling for deleting channels (action based on file format support either mark-as-deleted, remove-from-file, append-at-end)
- added unit tests
- internal code cleanup
2019-11-08 02:31:44 +01:00
hbeham
0cf97fe76c - UHD channels using ServiceType 0x9F are now recognized as TV channels (fixes an issue with Panasonic lists where these channels did not show up and their numbers were assigned multiple times)
- ChannelList.SignalSource and DataRoot.GetChannelList(SignalSource) are now handled so that if all bits of a given Mask are left 0, the list will accept anything.
  i.e. if Tv/Radio/Data is left 0, the list can contain all of them as well as channels that have neither of the 3 bits set.
- added basic unit tests for each loader to ensure test files have the expected numbers of channels in the various sub lists
2019-08-29 16:57:20 +02:00
hbeham
0c348ed151 - Sony: DVB-T and DVB-C lists are now separated into "TV", "Radio" and "Other" lists, each with their own unique numbering
- Samsung ZIP: deleting a channel now really deletes it from the file, instead of marking it as deleted
  and assigning -1 as channel number (which appears as 65535 on some models)
2019-08-11 17:27:07 +02:00
hbeham
8aee8a75d0 - various improvements for Sony 1.1.0e format (handling deleted channels that need a unique number)
- DX upgrade to 19.1.5
2019-08-11 10:04:29 +02:00
hbeham
e4c51d12fa - fixed "delete channels", which were added at the end regardless of the user selection
- changed logic how channel lists can control which columns are visible in the UI
- added column for PcrPid
- removed column AudioPid from SCM lists
- added handling for SCM lists where the value of the "hidden" flag is 255. (Guessing the hidden-status based on another field)
2019-02-10 15:56:03 +01:00
hbeham
6379920331 fixed handling of program numbers for deleted channels:
- after loading a list it is now ensures that if IsDeleted => OldProgramNr =-1 and for fixing bad files: if OldProgramNr == -1 => IsDeleted = true
- while saving a list, if NewProgramNr == -1, the channel will be set to IsDeleted=true and temporarily gets a sequential NewProgramNr assigned, so that no "-1" or duplicate numbers end up in the file. Afterwards for deleted channels the NewProgramNr will be set back to -1.
- GlobalClone files now set IsDeleted and IsDisabled if a channel was removed
2017-11-30 14:50:22 +01:00
hbeham
6776b21454 - update to DX 17.1.7
- added a "DllName" property to all loaders (set automatically in the main app) for improved error output
- added a "View" class that lets loaders show a dialog prompt without adding direct references to DX assemblies
- Samsung SCM loader now prompts for TV series if it can't be auto-detected uniquely
- added fixes for Samsung .zip format from 288adf7bd2
- added popup to open download page for VC2010 x86 redist if not installed (needed to open SQLite files)
- added hack to work around a problem in the SharpZipLib when Windows returns an invalid code page
2017-10-28 13:20:39 +02:00
hbeham
6cf02f4f90 - added experimental support for Loewe / Hisense 2017 servicelist.db
file format
- show error message when trying to open a .zip file that doen't contain
  the expected files of a Samsung J series or Toshiba .zip channel list
- show error message when trying to open a broken .zip file, which is
  most likely caused by exporting to a USB stick formatted with NTFS
- allow changing the "crypt" flag for Samsung .scm lists
- iterating through loaders supporting a file extension till one can read the file
2017-06-08 20:01:42 +02:00
hbeham
3cfe7b3626 improved reference list functions, translated dialog to german 2016-05-06 02:30:46 +02:00
hbeham
0a71f34639 CsvFileSerializer and RefSerializer are now back in the .Api project. CSV, TXT and CHL files can now be loaded and edited like any other supported channel list.
Eleminated redundant code that was used for loading/applying reference lists in CSV or TXT/CHL format.
2016-05-05 03:06:11 +02:00
hbeham
7b7e7bef99 ChlFileSerializer converted to a SerializerBase subclass so it can use the same reference list logic as TV data files 2016-05-05 00:12:06 +02:00
hbeham
aaba300f2d improved usability 2016-04-27 19:03:50 +02:00
hbeham
a879a4c1fe - fixed bugs in saving Hisense channels.db file format (EPG and program info didn't work after import)
- improved reference list import
2016-04-27 01:58:38 +02:00
hbeham
a439026931 adding a new Form for advanced reference list application 2016-04-20 00:33:47 +02:00
hbeham
2b938edd88 - added support for 2016 Hisense channels.db SQLite file format
- DevExpress upgrade
2016-04-16 20:01:51 +02:00
hbeham
845c1c44c1 - fixed channel names turning from bad-byte-order-UTF16-varchar to BLOB when saving (probably the cause of Samsung J errors)
- Samsung E,F,H,J .scm file format: allow independant reordering of each favorites list (with editable numbers)
- Samsung J .zip file format: predefined lists can be edited again, allow independant reordering of each favorites list (sequential numbers), allow deleting channels
2015-11-29 20:36:56 +01:00
hbeham
893579d615 - switched to Hisense SQLite file format 2015-11-21 19:34:30 +01:00
hbeham
43cfca4d0b - when appending unsorted channels during save, they are now set to
"hidden" and "skipped/unselectable"
- reference lists: the satellite orbital position is no longer used
  to match channels. (Samsung J series does not provide that info).
- Samsung J series: favorite lists are no longer individually sortable.
  (The same Pr# is used for all favorite lists).
- Samsung J series: deleting channels now physically removes them from
  the file. (The TV might automatically append them again when it finds
  them in the DVB data stream).
- Samsung J series: editing of channel names is now enabled.
- Samsung J series: favorite E is now also available
2015-06-13 18:37:59 +02:00