Ogg support fixed and re-added. Squash of various commits made by Wouter Spruit.

This commit is contained in:
Thulinma 2014-12-23 13:05:41 +01:00
parent 689e1d714e
commit 4d9f4da3f1
11 changed files with 1238 additions and 465 deletions

View file

@ -158,10 +158,11 @@ namespace Utils {
}
void bitstreamLSBF::append(char * input, size_t bytes) {
append(std::string(input, bytes));
data.append(input, bytes);
fixData();
}
void bitstreamLSBF::append(std::string input) {
void bitstreamLSBF::append(std::string & input) {
data += input;
fixData();
}
@ -203,11 +204,12 @@ namespace Utils {
}
void bitstreamLSBF::fixData() {
unsigned int pos=0;
while (readBufferOffset <= 32 && data.size() != 0) {
//readBuffer = readBuffer & ((1 << readBufferOffset) - 1) | (data[0] << readBufferOffset);
readBuffer |= (((long long unsigned int)data[0]) << readBufferOffset);
data = data.substr(1);
readBuffer |= (((long long unsigned int)data[pos]) << readBufferOffset);
pos++;
readBufferOffset += 8;
}
data.erase(0, pos);
}
}