search for: streamarray

Displaying 5 results from an estimated 5 matches for "streamarray".

2010 Jun 23
1
FLAC StreamInfo Parsing
...for the new bits. When pulling values out of > the accumulator, you do that based upon the number of bits > requested. The accumulator will have to be (long long) because you > will sometimes request more than 32 bits. > > In other words, instead of: > > GetEndianBytes(streamArray, streamOffset, numBytes); > > ... you should implement: > > (long long)GetBigEndianStreamBits(streamHandle, (unsigned)numBits); > > The return value will have to be 64-bit to handle totalSamples. > The nice thing is that you won't need any indexing or bit shifting, &gt...
2010 Jun 23
3
FLAC StreamInfo Parsing
Thank you very much! But how to deal with endianness in the case of bit stream? Some blocks (for example MinBlockSize) require 16bits (simply swap first and second), some block (e.g.MinFrameSize) require 3 byte-array to be reverted. Finally totalSamples is stored in 5 bytes ( only last 4 bits from first one byte are used). It was a real issue to make it little-endian (here is how I did it:
2010 Jun 23
0
FLAC StreamInfo Parsing
...32 bits. Each time you read a byte, add 8 to your bit count, and shift any existing bits in your accumulator around to make room for the new bits. When pulling values out of the accumulator, you do that based upon the number of bits requested. In other words, instead of: GetEndianBytes(streamArray, streamOffset, numBytes); ... you should implement: (long long)GetBigEndianStreamBits(streamHandle, outputAddressPointer, (unsigned)numBits); The return value will have to be 64-bit to handle totalSamples. The nice thing is that you won't need any indexing or bit shifting, because Get...
2017 Feb 19
5
RFC: Adding llvm::ThinStream
.... If you want to look at the existing implementation, the following files are relevant: // Files that would move up to Support include/DebugInfo/MSF/ByteStream.h include/DebugInfo/MSF/StreamInterface.h include/DebugInfo/MSF/StreamReader.h include/DebugInfo/MSF/StreamWriter.h include/DebugInfo/MSF/StreamArray.h include/DebugInfo/MSF/StreamRef.h lib/DebugInfo/MSF/StreamReader.cpp lib/DebugInfo/MSF/StreamWriter.cpp lib/DebugInfo/MSF/StreamRef.cpp // Files that would remain PDB specific include/DebugInfo/MSF/MappedBlockStream.h lib/DebugInfo/MSF/MappedBlockStream.cpp (In the existing implementation, Thin...
2017 Feb 22
2
RFC: Adding llvm::ThinStream
...> implementation, the following files are relevant: > > // Files that would move up to Support > include/DebugInfo/MSF/ByteStream.h > include/DebugInfo/MSF/StreamInterface.h > include/DebugInfo/MSF/StreamReader.h > include/DebugInfo/MSF/StreamWriter.h > include/DebugInfo/MSF/StreamArray.h > include/DebugInfo/MSF/StreamRef.h > lib/DebugInfo/MSF/StreamReader.cpp > lib/DebugInfo/MSF/StreamWriter.cpp > lib/DebugInfo/MSF/StreamRef.cpp > > // Files that would remain PDB specific > include/DebugInfo/MSF/MappedBlockStream.h > lib/DebugInfo/MSF/MappedBlockStream.cpp...