33 lines
901 B
C#
33 lines
901 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using skyscraper5.Dvb.Psi.Model;
|
|
using skyscraper5.Mpeg2;
|
|
using skyscraper5.Nordig.Descriptor;
|
|
using skyscraper5.Skyscraper;
|
|
using skyscraper5.Skyscraper.Plugins;
|
|
|
|
namespace skyscraper5.PrivateDataSpecifiers.Nordig
|
|
{
|
|
internal class NordigBatHook : DescriptorPluginBatHandler
|
|
{
|
|
public void HandleBat(BatTransportStream outputTs, TsDescriptor unpackedDescriptor)
|
|
{
|
|
byte descId = unpackedDescriptor.GetDescriptorId();
|
|
switch (descId)
|
|
{
|
|
case 0x83:
|
|
LogicalChannelDescriptor lcd = (LogicalChannelDescriptor)unpackedDescriptor;
|
|
if (outputTs.LCNs == null)
|
|
outputTs.LCNs = new List<BaseLcn>();
|
|
outputTs.LCNs.AddRange(lcd.LogicalChannels);
|
|
break;
|
|
default:
|
|
throw new NotImplementedException(String.Format("{0:X2}", descId));
|
|
}
|
|
}
|
|
}
|
|
}
|