From c4584ad8a1bce5be54c84cc8eb8b98260e9c029d Mon Sep 17 00:00:00 2001 From: hbeham Date: Sun, 5 May 2013 03:39:11 +0200 Subject: [PATCH] - added support for LG 2013 LA series DVB-C/T lists - fixed LG's LH series channel ordering (requires physical record reordering) - fixed LG's LH3000 2nd program number - disabled LG TV-data cleanup --- .../ChanSort.Loader.LG.ini | 28 +++++++++++++++++++ ChanSort.Loader.TllFile/TllFileSerializer.cs | 8 +++--- ChanSort/MainForm.Designer.cs | 1 + ChanSort/MainForm.cs | 11 +++++++- ChanSort/MainForm.de.resx | 12 ++++---- ChanSort/MainForm.resx | 2 +- readme.txt | 20 ++++--------- 7 files changed, 56 insertions(+), 26 deletions(-) diff --git a/ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini b/ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini index 49db60b..ecd92b5 100644 --- a/ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini +++ b/ChanSort.Loader.TllFile/ChanSort.Loader.LG.ini @@ -1,6 +1,33 @@ ; FileConfigurationX: overall file and DVB-S data layout ; ACTChannelDataMappingX: analog, DVB-C and DVB-T channel data mapping for data length X +[ACTChannelDataMapping:256] + ; LA 2013 series + reorderChannelData = 0 + lenName = 40 + offChannelTransponder = 10, 122, 170, 176 + offProgramNr = 12, 172 + offFavorites = 20 + offPcrPid = 24, 236 + offAudioPid = 26 + offVideoPid = 36 + offName = 40, 184 + offNameLength = 80, 183 + offServiceId = 82, 180 + offFrequencyLong = 124 + offOriginalNetworkId = 134 + offTransportStreamId = 136 + offFavorites2 = 178 + offDeleted = 178 + maskDeleted = 0x42 + offLock = 179 + maskLock = 0x01 + offSkip = 179 + maskSkip = 0x02 + offHide = 179 + maskHide = 0x04 + offServiceType = 182 + offAudioPid2 = 238 [ACTChannelDataMapping:192] ; LM series with Firmware 4.x (all except LM611S and LM340S) @@ -190,6 +217,7 @@ offOriginalNetworkId = 86 offTransportStreamId = 88 offFrequencyLong = 96 + offProgramNr2 = 104 offFavorites2 = 109 offDeleted = 109 maskDeleted = 0x42 diff --git a/ChanSort.Loader.TllFile/TllFileSerializer.cs b/ChanSort.Loader.TllFile/TllFileSerializer.cs index 1484dbd..b30e585 100644 --- a/ChanSort.Loader.TllFile/TllFileSerializer.cs +++ b/ChanSort.Loader.TllFile/TllFileSerializer.cs @@ -1,5 +1,4 @@ -//#define SYMBOL_RATE_ROUNDING -//#define STORE_DVBS_CHANNELS_IN_DATABASE +//#define STORE_DVBS_CHANNELS_IN_DATABASE //#define TESTING_LM640T_HACK using System; @@ -10,7 +9,6 @@ using System.Reflection; using System.Text; using System.Windows.Forms; using ChanSort.Api; -using DevExpress.XtraEditors; namespace ChanSort.Loader.LG { @@ -806,7 +804,9 @@ namespace ChanSort.Loader.LG { this.ReorderChannelData(this.analogBlockOffset + 8, this.actChannelSize, this.analogChannelCount, this.atvChannels.Channels); - var dvbCt = this.dtvChannels.Channels.Union(this.radioChannels.Channels).ToList(); + var tv = this.dtvChannels.Channels.OrderBy(c => c.NewProgramNr); + var radio = this.radioChannels.Channels.OrderBy(c => c.NewProgramNr); + var dvbCt = tv.Union(radio).ToList(); this.ReorderChannelData(this.dvbctBlockOffset + 8, this.actChannelSize, this.dvbctChannelCount, dvbCt); } #endregion diff --git a/ChanSort/MainForm.Designer.cs b/ChanSort/MainForm.Designer.cs index 10418bc..fedf7fe 100644 --- a/ChanSort/MainForm.Designer.cs +++ b/ChanSort/MainForm.Designer.cs @@ -1243,6 +1243,7 @@ this.miEraseDuplicateChannels.Checked = true; this.miEraseDuplicateChannels.Id = 53; this.miEraseDuplicateChannels.Name = "miEraseDuplicateChannels"; + this.miEraseDuplicateChannels.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; // // mnuHelp // diff --git a/ChanSort/MainForm.cs b/ChanSort/MainForm.cs index d3b7f44..324e272 100644 --- a/ChanSort/MainForm.cs +++ b/ChanSort/MainForm.cs @@ -1,4 +1,5 @@ -using System; +//#define ENABLE_TV_FILE_CLEANUP +using System; using System.Collections.Generic; using System.Drawing; using System.Globalization; @@ -329,7 +330,9 @@ namespace ChanSort.Ui #region LoadTvDataFile() private bool LoadTvDataFile() { +#if ENABLE_TV_FILE_CLEANUP this.currentTvSerializer.EraseDuplicateChannels = this.miEraseDuplicateChannels.Checked; +#endif this.currentTvSerializer.Load(); this.dataRoot = this.currentTvSerializer.DataRoot; return true; @@ -1106,8 +1109,14 @@ namespace ChanSort.Ui this.miMoveUp.Enabled = channel != null && channel.NewProgramNr > 1; this.miTvSettings.Enabled = this.currentTvSerializer != null; +#if ENABLE_TV_FILE_CLEANUP this.miCleanupChannels.Visibility = this.currentTvSerializer != null && this.currentTvSerializer.Features.CleanUpChannelData ? BarItemVisibility.Always : BarItemVisibility.Never; +#else + this.miCleanupChannels.Visibility = BarItemVisibility.Never; + this.miEraseDuplicateChannels.Visibility = BarItemVisibility.Never; + this.miEraseDuplicateChannels.Checked = false; +#endif } #endregion diff --git a/ChanSort/MainForm.de.resx b/ChanSort/MainForm.de.resx index 353fc2e..8ecef17 100644 --- a/ChanSort/MainForm.de.resx +++ b/ChanSort/MainForm.de.resx @@ -235,9 +235,6 @@ Eventuelle Warnungen nach dem Laden einer TV-Datei automatisch anzeigen - - Referenzliste automatisch laden - TV-Datei automatisch bereinigen @@ -315,9 +312,6 @@ Wenn aktiv, werden folgende Programmnummer automatisch vorgerückt - - Unsortierte Sender beim Speichern automatisch anhängen - 71, 13 @@ -423,6 +417,12 @@ Sender aus sortierter Liste entfernen + + << Alle hinzufügen + + + Aller derzeit nicht sortierten Sender ans Ende der Liste anhängen + Filter entfernen diff --git a/ChanSort/MainForm.resx b/ChanSort/MainForm.resx index b751067..1c299ec 100644 --- a/ChanSort/MainForm.resx +++ b/ChanSort/MainForm.resx @@ -1398,7 +1398,7 @@ DevExpress.XtraEditors.XtraForm, DevExpress.Utils.v12.2, Version=12.2.8.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a - 05/03/2013 17:24:18 + 05/05/2013 03:22:01 16, 16 diff --git a/readme.txt b/readme.txt index f4d44de..66fc31a 100644 --- a/readme.txt +++ b/readme.txt @@ -1,19 +1,10 @@ -Version v2013-05-03 ======================================================= +Version v2013-05-05 ======================================================= Changes: -- Added Assistants for loading and saving files -- Added support for LG's 2013 LA-series DVB-S channel lists. - Due to a lack of test files containing analog or DVB-C/T channels, these - lists are not supported yet. If you have a TLL file with such channels - please send it to horst@beham.biz. -- Added support for LG's LH3000 model -- Improved clean-up of LG channel lists. This should solve problems with - program numbers changing randomly or inability to change them at all. -- Fixed: Program number and channel name can be edited again by directly - typing the number or name on the keyboard. -- Fixed: Sorting and column layout is now preserved when switching lists -- Fixed: Missing channels from a reference list appeared as valid channels - in the UI after saving a TLL file. +- Fixed: Saving reordered list for LG xxLH3000. +- Removed "Cleanup TV data file" option due to a report of a bricked LG TV. + (The cleanup no longer works since firmware 4.40.19 when a preset + satellite channel list was used to setup the TV) The complete change log can be found at the end of this document @@ -112,6 +103,7 @@ OTHER DEALINGS IN THE SOFTWARE. Change log ================================================================ 2013-05-03 +- Added Assistants for loading and saving files - Added support for LG's 2013 LA-series DVB-S channel lists. Due to a lack of test files containing analog or DVB-C/T channels, these lists are not supported yet. If you have a TLL file with such channels