Browse Source

device_session: Convert for loop into ranged for in AppendBuffers

Simplifies the indexing code a little bit.
nce_cpp
Lioncash 3 years ago
parent
commit
f726bcbf56
  1. 10
      src/audio_core/device/device_session.cpp

10
src/audio_core/device/device_session.cpp

@ -74,11 +74,11 @@ void DeviceSession::Stop() {
} }
void DeviceSession::AppendBuffers(std::span<const AudioBuffer> buffers) const { void DeviceSession::AppendBuffers(std::span<const AudioBuffer> buffers) const {
for (size_t i = 0; i < buffers.size(); i++) {
for (const auto& buffer : buffers) {
Sink::SinkBuffer new_buffer{ Sink::SinkBuffer new_buffer{
.frames = buffers[i].size / (channel_count * sizeof(s16)),
.frames = buffer.size / (channel_count * sizeof(s16)),
.frames_played = 0, .frames_played = 0,
.tag = buffers[i].tag,
.tag = buffer.tag,
.consumed = false, .consumed = false,
}; };
@ -86,8 +86,8 @@ void DeviceSession::AppendBuffers(std::span<const AudioBuffer> buffers) const {
std::vector<s16> samples{}; std::vector<s16> samples{};
stream->AppendBuffer(new_buffer, samples); stream->AppendBuffer(new_buffer, samples);
} else { } else {
std::vector<s16> samples(buffers[i].size / sizeof(s16));
system.Memory().ReadBlockUnsafe(buffers[i].samples, samples.data(), buffers[i].size);
std::vector<s16> samples(buffer.size / sizeof(s16));
system.Memory().ReadBlockUnsafe(buffer.samples, samples.data(), buffer.size);
stream->AppendBuffer(new_buffer, samples); stream->AppendBuffer(new_buffer, samples);
} }
} }

Loading…
Cancel
Save