private static SosHeaderComponentInfo ReadSosHeaderComponentInfo(byte[] bytes, UInt32 offset)
        {
            byte[]     componentBytes = RawReader.ReadBytes(bytes, offset, 2);
            HalvedByte halvedByte     = new HalvedByte(componentBytes[1]);

            return(new SosHeaderComponentInfo()
            {
                ComponentNumber = componentBytes[0],
                DCtable = halvedByte.High,
                ACtable = halvedByte.Low
            });
        }
        private static Sof3HeaderComponentInfo ReadSof3HeaderComponentInfo(byte[] bytes, UInt32 offset)
        {
            byte[]     componentBytes = RawReader.ReadBytes(bytes, offset, 3);
            HalvedByte halvedByte     = new HalvedByte(componentBytes[1]);

            return(new Sof3HeaderComponentInfo()
            {
                ComponentNumber = componentBytes[0],
                HorizontalSamplingFactor = halvedByte.High,
                VerticalSamplingFactor = halvedByte.Low,
                QuantizationTable = componentBytes[2]
            });
        }