Merge tag 'v0.23.6'

release v0.23.6
This commit is contained in:
Max Kellermann
2022-03-14 18:58:47 +01:00
11 changed files with 114 additions and 49 deletions

View File

@@ -336,6 +336,8 @@ PipeWireOutput::Enable()
throw MakeErrno("pw_thread_loop_new() failed");
pw_thread_loop_start(thread_loop);
stream = nullptr;
}
void

View File

@@ -471,6 +471,16 @@ try {
}
UINT32 write_in_frames = buffer_size_in_frames;
DWORD mode = 0;
AtScopeExit(&) {
render_client->ReleaseBuffer(write_in_frames, mode);
if (!started) {
Start(client);
started = true;
}
};
if (!is_exclusive) {
UINT32 data_in_frames =
GetCurrentPaddingFrames(client);
@@ -481,7 +491,6 @@ try {
}
BYTE *data;
DWORD mode = 0;
if (HRESULT result =
render_client->GetBuffer(write_in_frames, &data);
@@ -489,15 +498,6 @@ try {
throw MakeHResultError(result, "Failed to get buffer");
}
AtScopeExit(&) {
render_client->ReleaseBuffer(write_in_frames, mode);
if (!started) {
Start(client);
started = true;
}
};
const UINT32 write_size = write_in_frames * frame_size;
UINT32 new_data_size = 0;
new_data_size = spsc_buffer.pop(data, write_size);