[pull] master from oe-alliance:master#232
Merged
Merged
Conversation
Eutelsat Hot Bird 13G (13°E) tp. 110 (10,719 GHz, pol. V, SR: 27500, FEC: 5/6; DVB-S2/8PSK) 1 → 1/2 2 → 2/3 3 → 3/4 4 → 5/6 5 → 7/8
Sky Deutschland does not publish Logical Channel Numbers in any DVB standard SI table on 19.2E. The BAT on PID 0x11 is just a linkage stub (bouquet "Sky Service Config" with zero transport_stream_loop entries, private_data_specifier 0x000000BE pointing to a different transponder); NIT carries no LCN descriptors. The channel list is instead delivered as a proprietary NDS-ARCHIVE container on PID 0x08AE, table 0x9E, section filter variable_id 0x0055. The archive holds a nested NDS-ARCHIVE of per-package text files, each line encoding LCN = channel_id = dvb://ONID.TSID.SID ; flag ; flag which is exactly what ABM needs after a tiny bit of deserialisation. This adds a new "skyde" protocol built around that carousel: - dvbreader.c: new ss_read_skyq() returning one section's raw payload at a time (header + bytes 13..section_length-2, i.e. the chunk after the 5-byte NDS sub-header and before the CRC32). - dvbscanner.py: module-level NDS-ARCHIVE parser (two nested archives; each entry carries a 22-byte record with file offset and size followed by a length-prefixed filename) plus readSkyQArchive() which reassembles all sections of one version_number and updateAndReadServicesSKYDE() which extracts the configured bouquet_file, parses the LCN lines and delegates to the existing updateAndReadServicesLCN() path. Uses its own 60s SKYQ_TIMEOUT because the live carousel is currently at 78 sections and 20s is too tight. - providers.py: new "skyde" protocol plus transponder attributes skyq_pid / skyq_table_id / skyq_variable_id and a configuration attribute bouquet_file naming the .txt entry to use. - manager.py: new protocol branch that wires the setters and calls updateAndReadServicesSKYDE with bouquet_file from the selected configuration. - sat_192_sky_deutschland.xml: switched from nolcn to skyde with the satellite package (Q-skyHDTVchannels-4.txt, the scheme that matches Sky's public receiver channel list). Adds a servicehack filter for Sky-internal STEST1/STEST2 test services which sit in the Marktplatz range (LCN 1070/1071) in the live feed; uses a substring check because Sky DE often wraps names in DVB emphasis bytes 0x86/0x87 and the SDT parser in dvbreader.c only strips the leading charset indicator byte. - custom/hd_sat_192_sky_deutschland_CustomLCN.xml removed. It was a hardcoded LCN list introduced in commit f84cf00 with the note "until more robust implemenation is applied". With the carousel-based reader in place it is obsolete and would otherwise override the freshly scanned numbers. Co-Authored-By: AbuBaniaz <AbuBaniaz@users.noreply.github.com>
Sky sometimes re-allocates channels to different transponders without
updating the corresponding entry in the Sky Q carousel channel-list files
for a while. Services in that state are present in the SDT and tunable
but have no LCN and get dropped by the scanner.
Recent cases seen on the live feed (April 2026) for satellite HD:
Sky Showcase HD ONID 0x85 TSID 0x0B SID 0x8E -> LCN 100
HISTORY Channel ONID 0x85 TSID 0x0B SID 0x71 -> LCN 122
Both services show up in the SDT but neither appears in the live
Q-skyHDTVchannels-4.txt / -256.txt / -120.txt package files.
This adds a new provider-XML block:
<lcn_overrides>
<override onid="0x85" tsid="0x0b" sid="0x8e" lcn="100">
Sky Showcase HD
</override>
</lcn_overrides>
Each <override> is applied in updateAndReadServicesSKYDE only when the
carousel itself has no LCN for the same (ONID, TSID, SID) triplet, so the
entry becomes a no-op as soon as Sky corrects its package file. Remove an
override once Sky restores it.
The mechanism is opt-in per provider; non-skyde providers get an empty
list by default.
Co-Authored-By: AbuBaniaz <AbuBaniaz@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )