diff --git a/skyscraper8/GS/GSE-BFBS/BfbsGseReader.cs b/skyscraper8/GS/GSE-BFBS/BfbsGseReader.cs index dfc4da8..de21294 100644 --- a/skyscraper8/GS/GSE-BFBS/BfbsGseReader.cs +++ b/skyscraper8/GS/GSE-BFBS/BfbsGseReader.cs @@ -25,6 +25,19 @@ namespace skyscraper8.GS.GSE_BFBS { this.Context = context; } + + private bool CheckAllZeroes(ReadOnlySpan span) + { + for (int i = 0; i < span.Length - 4; i++) + { + if (span[i] != 0) + { + return false; + } + } + + return true; + } public void PushFrame(BBHeader bbHeader, ReadOnlySpan readOnlySpan) { @@ -34,7 +47,16 @@ namespace skyscraper8.GS.GSE_BFBS return; if (readOnlySpan[0] == 0 && readOnlySpan[1] == 0 && readOnlySpan[2] == 0 && readOnlySpan[3] == 0) - return; + { + if (CheckAllZeroes(readOnlySpan)) + { + return; + } + else + { + throw new NotImplementedException("A BBFrame with data offset not at 0 was found. This not supported yet, please share a sample of this."); + } + } StreamlikeSpan span = new StreamlikeSpan(readOnlySpan); diff --git a/skyscraper8/Program.cs b/skyscraper8/Program.cs index 65133f9..0f5607f 100644 --- a/skyscraper8/Program.cs +++ b/skyscraper8/Program.cs @@ -42,7 +42,7 @@ namespace skyscraper5 class Program { private static readonly ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.Name); - private const int PUBLIC_RELEASE = 12; + private const int PUBLIC_RELEASE = 13; private static void IntegrationTest() { /*List ssdpDevices = SsdpClient.GetSsdpDevices(1000).ToList(); diff --git a/skyscraper8/Properties/launchSettings.json b/skyscraper8/Properties/launchSettings.json index 84087f8..07c01ef 100644 --- a/skyscraper8/Properties/launchSettings.json +++ b/skyscraper8/Properties/launchSettings.json @@ -2,7 +2,7 @@ "profiles": { "skyscraper8": { "commandName": "Project", - "commandLineArgs": "\"E:\\638951188146456482.ts\"", + "commandLineArgs": "\"C:\\devel\\skyscraper8\\skyscraper8\\bin\\Debug\\net8.0\\samples\\skyscraper_20251029_1201_0150W_12596_V_44995.ts\"", "remoteDebugEnabled": false }, "Container (Dockerfile)": { diff --git a/skyscraper8/Skyscraper/MpeEjectBfbs.cs b/skyscraper8/Skyscraper/MpeEjectBfbs.cs index add86b3..0a294a5 100644 --- a/skyscraper8/Skyscraper/MpeEjectBfbs.cs +++ b/skyscraper8/Skyscraper/MpeEjectBfbs.cs @@ -60,6 +60,7 @@ namespace skyscraper8.Skyscraper else { ContinuityCounter = 0; + SessionCounter = nextValue; } } diff --git a/skyscraper8/bin/Debug/skyscraper5.ini b/skyscraper8/bin/Debug/skyscraper5.ini index a06b98e..f8efa58 100644 --- a/skyscraper8/bin/Debug/skyscraper5.ini +++ b/skyscraper8/bin/Debug/skyscraper5.ini @@ -6,6 +6,7 @@ objectStorage=1 postgresql=C:\devel\skyscraper8\DataTableStorages\skyscraper5.Data.PostgreSql\bin\Debug\net8.0\skyscraper5.Data.PostgreSql.dll minio=C:\devel\skyscraper8\BlobStorages\skyscraper5.Data.Minio\bin\Debug\net8.0\skyscraper5.Data.Minio.dll epgcollector=C:\devel\skyscraper8\PrivateDataSpecifiers\skyscraper8.EPGCollectorPort\bin\Debug\net8.0\skyscraper8.EPGCollectorPort.dll +dns=C:\devel\skyscraper8\MpePlugins\skyscraper5.DNS\bin\Debug\net8.0\skyscraper5.DNS.dll [objectStorage1] Bucket=skyscraper5