Commit Graph

58 Commits

Author SHA1 Message Date
Horst Beham
b89f5fc22a - fixed loading of tv.db / idtvChannels.bin lists containing DVB-T2 channels (error about mismatching symbol rate) 2023-12-18 09:45:20 +01:00
Horst Beham
ecac26b2bc - Philips format 120 uses lowercase hex digits for DVB*.xml files (TV shows wrong chars when using uppercase)
- upgrade to DX 23.1.6 (with a hotfix)
2023-12-12 19:07:57 +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
5476e1f40e - Panasonic LS500/LX700 idtvChannel.bin loader now uses .ini file based mapping instead of hardcoded structure to support different binary file layouts 2023-10-28 16:51:42 +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
68d3fc4963 - Panasonic LS 500 / LX 700 series: support for new firmware which doesn't export a hotel.bin file.
- Loewe servicelist.xml (and maybe some other .xml files) larger than 2 000 000 bytes were
  not loaded.
- Enigma/Linux lists can now also be opened by selecting a .tv or .radio file (not just lamedb)
2023-06-01 11:11:33 +02:00
Horst Beham
61a25ae913 cleaning up dependencies 2023-01-03 20:43:15 +01:00
Horst Beham
e40a12bb31 cleaning up dependencies 2023-01-03 20:05:07 +01:00
Horst Beham
80fc264bd0 - converted from VisualStudio build system to MSBuild 2023-01-03 11:19:07 +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
6f3df7044e - updated nuget packages
- fixed issues where SQLite database files didn't get unlocked after saving
- fixed quirks with missing e_sqlite3.dll when running unit tests with Resharper
2022-11-29 18:21:52 +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
954b44ed7a - fixed "Export to Excel" (copies the list as tab-separated text into clipboard)
- included latest translation to Polish (thanks to J.D.)
- reorganized File menu and tool bar
- allow renaming channels in SatcoDX channel lists (\*.sdx)
- improved support for Panasonic LS 500 / LX 700 series
2022-11-22 21:36:01 +01:00
Horst Beham
25486ce5a0 - some text updates 2022-10-06 17:53:28 +02:00
Horst Beham
074a4c38bb - Panasonic LS/LX seems to mess up the "skip" Flag when running a new scan, so no longer throw an error when the flag differs between the two data files 2022-10-06 17:34:16 +02:00
Horst Beham
e582cb95b7 - function to remove backup files (so that a new backup will be generated)
- remember last directory in FileOpenDialog, even when opening the file failed
- HDD Hex Editor Neo file structure definition
- improvements for Panasonic LS/LX serializer
2022-10-05 18:03:12 +02:00
Horst Beham
391a9f3872 - physically reordering Panasonic idtvChannels (required for proper order in the TV's menu) 2022-10-03 17:27:02 +02:00
Horst Beham
3b996f94e5 - improved experimental support for Panasonic LS 500 / LX 700 file format 2022-10-03 10:28:41 +02:00
Horst Beham
17460c1039 - ref list dialog uses TabControl to fit on tiny screen with scaled up fonts
- incomplete loader for Panasonic LS 500, LX 700 Android devices (/mnt/vendor/.../tv.db and idtvChannel.bin files)
2022-10-03 10:28:41 +02: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
1b90ebcc78 - LG webOS 5/6: setting userEditChNumber and userSelCHNo (just like the TV does) to prevent DVB-C lists (and maybe others too) for changing channel numbers after import
- m3u: support for extended header and a couple more columns
- fixed exception when the Favorites column is added manually for lists that don't support favorites
2021-10-24 22:35:32 +02:00
Horst Beham
c035c8539e - Panasonic: improved symbol rate and satellite position detection
- startup window location and size are adjusted to fit on screen
2021-09-23 20:25:30 +02:00
Horst Beham
bdd255a940 Panasonic: fixed byte-order detection for symbol rate and satellite orbital position 2021-09-23 15:24:21 +02:00
Horst Beham
4df90ca7bf - improved per-monitor DPI scaling (i.e. moving the window from a Full-HD to a 4K display with 100% and 200% scale)
- improved "column auto width" (right clicking a column header) by forcing line breaks in the column captions
- Philips: improved and re-enabled favorite list editing for FLASH\_\*/\*.db lists
- Panasonic: fixed display of symbol ra
2021-09-23 14:58:42 +02:00
Horst Beham
063ed165d2 - Philips: added support for CM\_*.xml variant that uses a <ECSM> root element around the <ChannelMap>
- Philips: ability to read/write broken CM\_*.xml files that contain channel names with an unescaped & character
- Philips: enabled write mode for Repair\\FLASH\_\*/\*.db file format (one variant was confirmed to work)
  Favorite lists for this format are disabled for now (TV ignored them).
- Panasonic: importing a modified svl.bin file caused the TV to use case-sensitive sorting when using the
  function to list the names sorted alphabetically. This is now fixed.
2021-09-22 23:46:03 +02:00
Horst Beham
d9f9b490e5 - Panasonic: added exerimental support for channel\_list.xml lists (Panasonic Android TVs, 2019 and later)
Unfortunately the only information included in this format is the channel number and a truncated channel name.
2021-09-19 23:32:38 +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
5a6e8d9082 - using AnyCPU to support x64 and ARM based CPUs (e.g. running on Win10-arm on a Mac Pro with M1 CPU)
- upgraded to latest Sqlite libraries to support ARM
- finished implementation for Hisense Vidaa U5.2 file format (using servicelist.db with renamed tables and columns)
2021-07-18 12:24:51 +02:00
Horst Beham
cc1cebcacd - switched to AnyCPU build
- updated to latest nuget packages (stable)
2021-07-12 14:36:18 +02:00
Horst Beham
35111daeda 2021-05-01
- added "Settings / Reset to defaults and restart" function to delete the stored customized settings in case something
  went wrong (like massively oversized column widths)
- Philips ChannelMap\_30: fixed error when trying to save this type of list
- Upgraded to DevExpress WinForms 20.2.7 user interface library
2021-05-01 11:41:33 +02:00
Horst Beham
5a07d36f56 removed DependencyChecker code that was used to ensure VC2010 Redist x86 is installed 2021-04-25 18:41:53 +02:00
Horst Beham
8b956ed364 - replaced System.Data.SQLite with Microsoft.Data.Sqlite because MS removed the required VC2010 Redist x86 from their website
- updated bunch of other Nuget packages
2021-04-25 18:31:05 +02: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
f85ff02a92 - Panasonic: fixed error reading lists with channels that refer to non-existing transponders
- Philips ChannelMap_45: incrementing fav list version number when saving and setting the last_watched_channel_id to
  the first channel in the fav list (ensuring that the channel is actually present in the list)
2021-02-17 09:41:06 +01:00
Horst Beham
086d4683fd - merged projects so that there is one loader for each manufacturer 2021-01-23 14:22:18 +01:00
Horst Beham
eaa09181cf - Panasonic: channel name editing is now supported when all channels implicitly use valid utf-8 encoding 2020-12-26 18:16:01 +01:00
Horst Beham
e7bb88c554 2020-12-26
- LG WebOS 5: added warning that support is only experimental.
- Panasonic: Channel name editing is now supported for svl.bin files (unless there is no indicator what encoding to use)
- Hungarian translation: added missing files to .zip
2020-12-26 16:51:33 +01:00
Horst Beham
dc810b0a12 - added Turkish translation (thanks to Ali Haykir)
- Philips: combined DVB-C and DVB-T into a single list with a common number domain
- added exprimental support for Samsung "iptv" list
- added Suiss reference lists with Astra 19.2E + Hotbird 13.0E channels
- fixed "System.ArgumentOutOfRangeException..." when opening a file which supports mixed-source favorite lists
  (Sony, Philips, Hisense, ...)
- System requirements changed: .NET Framework 4.8
- added high-DPI support
- added Accessibility menu options to change the UI font size
2020-05-02 19:04:43 +02: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
5cdf9d0995 - Sony Android (E-Format) now supports independent favorite list ordering
- fixed issue when saving Sony Android list with high program numbers (causing negative int32 values due to bit shift)
- for unknown DVB service types the UI now shows the number instead of an empty string
- loaders are now setting the OldFavIndex (to be consistent with the use OldProgramNr)
- Form shows full file path in title bar
- no longer defaulting to "swap" mode when opening a file and using "current order"
- show "Source" column in the left list when editing a mixed source favorite list
2019-11-10 20:09:27 +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
1e26ef9cd4 Generalized Crc32 implementation so it can be used for LG (TLL), Panasonic (.bin and .db) and Sony (sdb.xml) 2019-07-20 02:08:51 +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
98acb03b52 - upgraded to DevExpress 18.2
- hide VPID and APID columns for Panasonic (no data provided)
- Samsung J lists could have a \0 character at the end of a unicode16 string, which caused "Copy to Excel" to truncate the text
- Fixed new-version check to work with github (only supports TLS 1.2 and newer now, not SSL 3.0)
- added pull-request with GB Sky reference channel list
2019-02-05 19:30:47 +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