Fix a bug in the detection of BBC News in the BFBS Stream.
Some checks failed
🚀 Pack skyscraper8 / make-zip (push) Failing after 1m7s

This commit is contained in:
feyris-tan 2025-11-14 22:25:51 +01:00
parent eb2ceb5f72
commit 92f787bbd4
5 changed files with 27 additions and 3 deletions

View File

@ -25,6 +25,19 @@ namespace skyscraper8.GS.GSE_BFBS
{
this.Context = context;
}
private bool CheckAllZeroes(ReadOnlySpan<byte> span)
{
for (int i = 0; i < span.Length - 4; i++)
{
if (span[i] != 0)
{
return false;
}
}
return true;
}
public void PushFrame(BBHeader bbHeader, ReadOnlySpan<byte> 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);

View File

@ -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<SsdpDevice> ssdpDevices = SsdpClient.GetSsdpDevices(1000).ToList();

View File

@ -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)": {

View File

@ -60,6 +60,7 @@ namespace skyscraper8.Skyscraper
else
{
ContinuityCounter = 0;
SessionCounter = nextValue;
}
}

View File

@ -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