Ejemplo n.º 1
0
        private bool checkServiceInfo(ServiceDescription serviceDescription)
        {
            if (serviceDescription.ServiceType == 0)
                return (false);

            if (RunParameters.Instance.Options.Contains("PROCESSALLSTATIONS"))
                return (true);

            return (serviceDescription.ServiceType != 0x0c);
        }
        /// <summary>
        /// Parse the section.
        /// </summary>
        /// <param name="byteData">The MPEG2 section containing the section.</param>
        /// <param name="mpeg2Header">The MPEG2 header that preceedes the section.</param>
        internal void Process(byte[] byteData, Mpeg2ExtendedHeader mpeg2Header)
        {
            lastIndex = mpeg2Header.Index;
            transportStreamID = mpeg2Header.TableIDExtension;
            sectionNumber = mpeg2Header.SectionNumber;

            originalNetworkID = Utils.Convert2BytesToInt(byteData, lastIndex);
            lastIndex += 2;

            reserved1 = (int)byteData[lastIndex];
            lastIndex++;

            while (lastIndex < byteData.Length - 4)
            {
                ServiceDescription serviceDescription = new ServiceDescription();
                serviceDescription.Process(byteData, lastIndex);
                serviceDescriptions.Add(serviceDescription);

                lastIndex = serviceDescription.Index;
            }
        }