mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-14 20:40:03 +02:00
Also cache audioMasterGetCurrentProcessLevel()
Melda plugins seem to call this during every processing cycle.
This commit is contained in:
@@ -559,11 +559,16 @@ struct AudioBuffers {
|
||||
* We'll send the current transport information as part of an audio
|
||||
* processing call. This lets us a void an unnecessary callback (or in some
|
||||
* cases, more than one) during every processing cycle.
|
||||
*
|
||||
* TODO: Do the same thing for the current process level
|
||||
*/
|
||||
std::optional<VstTimeInfo> current_time_info;
|
||||
|
||||
/**
|
||||
* Some plugins will also ask for the current process level during audio
|
||||
* processing. To prevent unnecessary expensive callbacks, we'll send this
|
||||
* information along with the processing call.
|
||||
*/
|
||||
int current_process_level;
|
||||
|
||||
/**
|
||||
* We'll periodically synchronize the realtime priority setting of the
|
||||
* host's audio thread with the Wine plugin host. We'll do this
|
||||
@@ -592,6 +597,8 @@ struct AudioBuffers {
|
||||
s.value4b(sample_frames);
|
||||
|
||||
s.ext(current_time_info, bitsery::ext::StdOptional{});
|
||||
s.value4b(current_process_level);
|
||||
|
||||
s.ext(new_realtime_priority, bitsery::ext::StdOptional{},
|
||||
[](S& s, int& priority) { s.value4b(priority); });
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user