mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-09 08:14:58 +01:00
Propagate Latency to backend/system ports
Set accumulated capture-latency for physical-outputs and accumulated playback-latency for physical-inputs after Ardour is done setting all non-physical port latencies. This will be needed for latency-compensation of the complete graph.
This commit is contained in:
parent
25f45022db
commit
ab3889fff8
6 changed files with 175 additions and 36 deletions
|
|
@ -96,17 +96,9 @@ class CoreBackendPort {
|
|||
return for_playback ? _playback_latency_range : _capture_latency_range;
|
||||
}
|
||||
|
||||
void set_latency_range (const LatencyRange &latency_range, bool for_playback)
|
||||
{
|
||||
if (for_playback)
|
||||
{
|
||||
_playback_latency_range = latency_range;
|
||||
}
|
||||
else
|
||||
{
|
||||
_capture_latency_range = latency_range;
|
||||
}
|
||||
}
|
||||
void set_latency_range (const LatencyRange &latency_range, bool for_playback);
|
||||
|
||||
void update_connected_latency (bool for_playback);
|
||||
|
||||
private:
|
||||
CoreAudioBackend &_osx_backend;
|
||||
|
|
@ -463,6 +455,7 @@ class CoreAudioBackend : public AudioBackend {
|
|||
PortHandle add_port (const std::string& shortname, ARDOUR::DataType, ARDOUR::PortFlags);
|
||||
int register_system_audio_ports ();
|
||||
void unregister_ports (bool system_only = false);
|
||||
void update_system_port_latecies ();
|
||||
|
||||
std::vector<CoreBackendPort *> _system_inputs;
|
||||
std::vector<CoreBackendPort *> _system_outputs;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue