Patch for handing off SIS data to the UI.
Some checks failed
🚀 Pack skyscraper8 / make-zip (push) Failing after 1m48s
Some checks failed
🚀 Pack skyscraper8 / make-zip (push) Failing after 1m48s
This commit is contained in:
parent
a97535e17c
commit
68cd0799bd
@ -18,9 +18,11 @@ using skyscraper5.Skyscraper.Equipment;
|
||||
using skyscraper5.Skyscraper.IO.CrazycatStreamReader;
|
||||
using skyscraper5.Skyscraper.Net;
|
||||
using skyscraper5.src.Skyscraper.FrequencyListGenerator;
|
||||
using skyscraper5.T2MI.Packets;
|
||||
using skyscraper5.Teletext.Wss;
|
||||
using skyscraper8.DvbNip;
|
||||
using skyscraper8.DvbNip.UiIntegration;
|
||||
using skyscraper8.DvbSis;
|
||||
using skyscraper8.GSE;
|
||||
using skyscraper8.GSE.GSE;
|
||||
using skyscraper8.Ietf.FLUTE;
|
||||
@ -28,6 +30,7 @@ using skyscraper8.Ses;
|
||||
using skyscraper8.Skyscraper.Drawing;
|
||||
using skyscraper8.Skyscraper.FrequencyListGenerator;
|
||||
using skyscraper8.Skyscraper.Scraper;
|
||||
using skyscraper8.T2MI.Packets;
|
||||
|
||||
namespace skyscraper5.Skyscraper.Scraper
|
||||
{
|
||||
@ -218,6 +221,12 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
void OnAstraSgtList(SgtList list);
|
||||
void OnAstraSgtService(SgtService child);
|
||||
void NotifyTransportStreamId(int tsid, int nid);
|
||||
void OnDvbSisCat(int sourcePid, SisCatContainer catContainer);
|
||||
void OnDvbSisEit(int sourcePid, SisEitContainer eitContainer);
|
||||
void OnDvbSisFti(int relatedPid, _0xF0_FramingTimingInformation fti);
|
||||
void OnDvbSisTimestamp(int pid, _0x20_DvbT2Timestamp t2Timestamp);
|
||||
void OnDvbSisPat(int sourcePid, SisPatContainer patContainer);
|
||||
void OnDvbSisSdt(int sourcePid, SisSdtContainer sdtContainer);
|
||||
|
||||
TaskQueue Tasks { get; set; }
|
||||
|
||||
|
||||
@ -3399,6 +3399,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
|
||||
public void OnSisCat(int sourcePid, ushort sourceProgram, SisCatContainer catContainer)
|
||||
{
|
||||
UiJunction?.OnDvbSisCat(sourcePid, catContainer);
|
||||
if (catContainer.CaDescriptors.Count > 0)
|
||||
{
|
||||
SkyscraperContext skyscraperContext = GetSisContext(sourceProgram);
|
||||
@ -3428,15 +3429,18 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
{
|
||||
dsaci = new GZipStream(dsaci, CompressionMode.Decompress);
|
||||
}
|
||||
MemoryStream ms = new MemoryStream();
|
||||
dsaci.CopyTo(ms);
|
||||
|
||||
LogEvent(SkyscraperContextEvent.DvbSisDaughterSiteAdapterConfiguration, String.Format("Group ID = {0}, Version = {1}", currentDsaGroupId, versionNumber));
|
||||
ObjectStorage.StoreSisDsaci(CurrentNetworkId.Value, CurrentTransportStreamId.Value, currentDsaGroupId, versionNumber, dsaci);
|
||||
ObjectStorage.StoreSisDsaci(CurrentNetworkId.Value, CurrentTransportStreamId.Value, currentDsaGroupId, versionNumber, ms);
|
||||
dsaci.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public void OnSisEit(int sourcePid, ushort sourceProgram, SisEitContainer eitContainer)
|
||||
{
|
||||
UiJunction?.OnDvbSisEit(sourcePid, eitContainer);
|
||||
SkyscraperContext skyscraperContext = GetSisContext(sourceProgram);
|
||||
if (eitContainer.NetworkId.HasValue)
|
||||
skyscraperContext.SetNetworkId(eitContainer.NetworkId.Value);
|
||||
@ -3453,6 +3457,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
private _0xF0_FramingTimingInformation.Plp[][] _sisFtiData;
|
||||
public void OnSisFti(int relatedPid, _0xF0_FramingTimingInformation fti)
|
||||
{
|
||||
UiJunction?.OnDvbSisFti(relatedPid, fti);
|
||||
if (_sisFtiFlags == null)
|
||||
{
|
||||
_sisFtiFlags = new bool[0x1fff];
|
||||
@ -3485,6 +3490,8 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
|
||||
public void OnSisPat(int sourcePid, ushort sourceProgram, SisPatContainer patContainer)
|
||||
{
|
||||
UiJunction?.OnDvbSisPat(sourcePid, patContainer);
|
||||
|
||||
SkyscraperContext skyscraperContext = GetSisContext(sourceProgram);
|
||||
if (patContainer.NetworkPid.HasValue)
|
||||
skyscraperContext.NetworkPidFromPat(patContainer.NetworkPid.Value);
|
||||
@ -3506,6 +3513,7 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
|
||||
public void OnSisSdt(int sourcePid, ushort sourceProgram, SisSdtContainer sdtContainer)
|
||||
{
|
||||
UiJunction?.OnDvbSisSdt(sourcePid, sdtContainer);
|
||||
SkyscraperContext context = GetSisContext(sourceProgram);
|
||||
|
||||
if (sdtContainer.NetworkId.HasValue)
|
||||
@ -3534,6 +3542,8 @@ namespace skyscraper5.Skyscraper.Scraper
|
||||
private bool[] _sisTimestampFlags;
|
||||
public void OnSisTimestamp(int pid, _0x20_DvbT2Timestamp t2Timestamp)
|
||||
{
|
||||
UiJunction?.OnDvbSisTimestamp(pid, t2Timestamp);
|
||||
|
||||
if (!CurrentNetworkId.HasValue)
|
||||
return;
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user