private static void DefaultProgramStreamsHandler(IProgramStreams pss) { bool flag1 = false; bool flag2 = false; foreach (IProgramStream programStream in (IEnumerable <IProgramStream>)pss.Streams) { switch (programStream.StreamType.Contents) { case TsStreamType.StreamContents.Audio: if (flag1) { programStream.BlockStream = true; break; } flag1 = true; break; case TsStreamType.StreamContents.Video: if (flag2) { programStream.BlockStream = true; break; } flag2 = true; break; default: programStream.BlockStream = true; break; } } }
static void ProgramStreamsHandler(IProgramStreams programStreams) { Console.WriteLine("Program: " + programStreams.ProgramNumber); foreach (var s in programStreams.Streams) Console.WriteLine(" {0}({1}): {2}", s.StreamType.Contents, s.Pid, s.StreamType.Description); }
static void DefaultProgramStreamsHandler(IProgramStreams pss) { var hasAudio = false; var hasVideo = false; foreach (var stream in pss.Streams) { switch (stream.StreamType.Contents) { case TsStreamType.StreamContents.Audio: if (hasAudio) stream.BlockStream = true; else hasAudio = true; break; case TsStreamType.StreamContents.Video: if (hasVideo) stream.BlockStream = true; else hasVideo = true; break; default: stream.BlockStream = true; break; } } }