/// <summary> /// Process an MPEG2 section from the Open TV Title table. /// </summary> /// <param name="byteData">The MPEG2 section.</param> public static MediaHighway1CategorySection ProcessMediaHighwayCategoryTable(byte[] byteData) { if (RunParameters.Instance.DebugIDs.Contains("MHW1CATEGORYSECTIONS")) Logger.Instance.Dump("MHW1 Category Section", byteData, byteData.Length); Mpeg2BasicHeader mpeg2Header = new Mpeg2BasicHeader(); try { mpeg2Header.Process(byteData); MediaHighway1CategorySection categorySection = new MediaHighway1CategorySection(); categorySection.Process(byteData, mpeg2Header.Index); categorySection.LogMessage(); return (categorySection); } catch (ArgumentOutOfRangeException e) { Logger.Instance.Write("<e> Category section parsing failed: " + e.Message); return (null); } }