public uint GetZeroByteStuffing <T>(T attributeName)
        {
            long position = _dataReader.Position;

            // Find start code within MaxZeroPadding bytes
            _dataReader.ByteAlign();

            for (uint byteCount = 0; byteCount < _maxZeroByteStuffingLength; byteCount++)
            {
                if (IsStartCode())
                {
                    // Start code found: Zero padding is part of the header
                    if (byteCount > 0)
                    {
                        Result.AddAttribute(attributeName, byteCount);
                    }
                    return(byteCount);
                }
                if (GetBits(8) != 0)
                {
                    break;
                }
            }

            // No start code found, rewind ...
            _dataReader.Position = position;

            return(0);
        }