9 #include "../../CodecRegistry.h"
10 #include "../../Stream.h"
21 using namespace Audio::__impl::OpenAL;
53 SharedPtr<Stream> stream = getStream();
57 Format targetFormat = stream->getFormat();
66 size_t bufferCapacity =
70 std::list<SoundBuffer> buffers;
77 buffer.
reserve(bufferCapacity, targetFormat);
105 if (buffers.size() > 1) {
108 unsigned int finalBytes = 0;
109 for (std::list<SoundBuffer>::const_iterator it = buffers.begin(); it != buffers.end(); ++it)
110 finalBytes += it->getUsedBytes();
116 for (std::list<SoundBuffer>::const_iterator it = buffers.begin(); it != buffers.end(); ++it) {
117 memcpy(buf, it->getBuffer(), it->getUsedBytes());
118 buf += it->getUsedBytes();
122 }
else if (buffers.size() > 0) {
123 buffer.
swap(buffers.back());
137 alGenBuffers(1,&bufferHandle);
140 alBufferData(bufferHandle,
159 alDeleteBuffers(1, &bufferHandle);