mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-11 00:56:33 +01:00
Con't work on ALSA nperiod selection (see also d3d120fa)
This commit is contained in:
parent
d3d120fa28
commit
8e482ef0fb
7 changed files with 12 additions and 8 deletions
|
|
@ -1552,7 +1552,11 @@ EngineControl::set_nperiods_popdown_strings ()
|
||||||
vector<string> s;
|
vector<string> s;
|
||||||
|
|
||||||
if (backend->can_set_period_size()) {
|
if (backend->can_set_period_size()) {
|
||||||
np = backend->available_period_sizes (get_driver());
|
if (backend->use_separate_input_and_output_devices ()) {
|
||||||
|
np = backend->available_period_sizes (get_driver(), get_output_device_name ());
|
||||||
|
} else {
|
||||||
|
np = backend->available_period_sizes (get_driver(), get_device_name ());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (vector<uint32_t>::const_iterator x = np.begin(); x != np.end(); ++x) {
|
for (vector<uint32_t>::const_iterator x = np.begin(); x != np.end(); ++x) {
|
||||||
|
|
|
||||||
|
|
@ -280,7 +280,7 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Returns a vector of supported period-sizes for the given driver */
|
/** Returns a vector of supported period-sizes for the given driver */
|
||||||
virtual std::vector<uint32_t> available_period_sizes (const std::string& driver) const
|
virtual std::vector<uint32_t> available_period_sizes (const std::string& driver, const std::string& device) const
|
||||||
{
|
{
|
||||||
return std::vector<uint32_t> ();
|
return std::vector<uint32_t> ();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ namespace ARDOUR {
|
||||||
struct ALSADeviceInfo {
|
struct ALSADeviceInfo {
|
||||||
unsigned int max_channels;
|
unsigned int max_channels;
|
||||||
unsigned int min_rate, max_rate;
|
unsigned int min_rate, max_rate;
|
||||||
unsigned int min_nper, min_nper;
|
unsigned int min_nper, max_nper;
|
||||||
unsigned long min_size, max_size;
|
unsigned long min_size, max_size;
|
||||||
bool valid;
|
bool valid;
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -267,11 +267,11 @@ AlsaAudioBackend::available_output_channel_count (const std::string& device) con
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<uint32_t>
|
std::vector<uint32_t>
|
||||||
AlsaAudioBackend::available_period_sizes (const std::string& driver) const
|
AlsaAudioBackend::available_period_sizes (const std::string& driver, const std::string& device) const
|
||||||
{
|
{
|
||||||
std::vector<uint32_t> ps;
|
std::vector<uint32_t> ps;
|
||||||
|
|
||||||
ALSADeviceInfo *nfo = NULL;
|
ALSADeviceInfo* nfo = NULL;
|
||||||
if (device == get_standard_device_name(DeviceNone)) {
|
if (device == get_standard_device_name(DeviceNone)) {
|
||||||
return ps;
|
return ps;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -140,7 +140,7 @@ class AlsaAudioBackend : public AudioBackend, public PortEngineSharedImpl
|
||||||
std::vector<float> available_sample_rates2 (const std::string&, const std::string&) const;
|
std::vector<float> available_sample_rates2 (const std::string&, const std::string&) const;
|
||||||
std::vector<uint32_t> available_buffer_sizes (const std::string& device) const;
|
std::vector<uint32_t> available_buffer_sizes (const std::string& device) const;
|
||||||
std::vector<uint32_t> available_buffer_sizes2 (const std::string&, const std::string&) const;
|
std::vector<uint32_t> available_buffer_sizes2 (const std::string&, const std::string&) const;
|
||||||
std::vector<uint32_t> available_period_sizes (const std::string& driver) const;
|
std::vector<uint32_t> available_period_sizes (const std::string& driver, const std::string& device) const;
|
||||||
uint32_t available_input_channel_count (const std::string& device) const;
|
uint32_t available_input_channel_count (const std::string& device) const;
|
||||||
uint32_t available_output_channel_count (const std::string& device) const;
|
uint32_t available_output_channel_count (const std::string& device) const;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -215,7 +215,7 @@ JACKAudioBackend::available_buffer_sizes (const string& device) const
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<uint32_t>
|
std::vector<uint32_t>
|
||||||
JACKAudioBackend::available_period_sizes (const std::string& driver) const
|
JACKAudioBackend::available_period_sizes (const std::string& driver, const std::string&) const
|
||||||
{
|
{
|
||||||
vector<uint32_t> s;
|
vector<uint32_t> s;
|
||||||
if (ARDOUR::get_jack_audio_driver_supports_setting_period_count (driver)) {
|
if (ARDOUR::get_jack_audio_driver_supports_setting_period_count (driver)) {
|
||||||
|
|
|
||||||
|
|
@ -71,7 +71,7 @@ class JACKAudioBackend : public AudioBackend {
|
||||||
|
|
||||||
std::vector<float> available_sample_rates (const std::string& device) const;
|
std::vector<float> available_sample_rates (const std::string& device) const;
|
||||||
std::vector<uint32_t> available_buffer_sizes (const std::string& device) const;
|
std::vector<uint32_t> available_buffer_sizes (const std::string& device) const;
|
||||||
std::vector<uint32_t> available_period_sizes (const std::string& driver) const;
|
std::vector<uint32_t> available_period_sizes (const std::string& driver, const std::string& device) const;
|
||||||
uint32_t available_input_channel_count (const std::string& device) const;
|
uint32_t available_input_channel_count (const std::string& device) const;
|
||||||
uint32_t available_output_channel_count (const std::string& device) const;
|
uint32_t available_output_channel_count (const std::string& device) const;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue