mirror of https://github.com/odrling/Aegisub
Add hidden option 'Audio PortAudio Device' to set the default portaudio output device.
Originally committed to SVN as r2797.
This commit is contained in:
parent
aa85b2eb01
commit
b63c2ea27c
|
@ -43,6 +43,7 @@
|
||||||
// Headers
|
// Headers
|
||||||
#include "audio_player_portaudio2.h"
|
#include "audio_player_portaudio2.h"
|
||||||
#include "audio_provider_manager.h"
|
#include "audio_provider_manager.h"
|
||||||
|
#include "options.h"
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
|
||||||
|
|
||||||
|
@ -192,7 +193,16 @@ void PortAudioPlayer::OpenStream() {
|
||||||
// Open stream
|
// Open stream
|
||||||
PaStreamParameters pa_output_p;
|
PaStreamParameters pa_output_p;
|
||||||
|
|
||||||
PaDeviceIndex pa_device = Pa_GetDefaultOutputDevice();
|
int pa_config_default = Options.AsInt(_T("Audio PortAudio Device"));
|
||||||
|
PaDeviceIndex pa_device;
|
||||||
|
|
||||||
|
if (pa_config_default < 0) {
|
||||||
|
pa_device = Pa_GetDefaultOutputDevice();
|
||||||
|
wxLogDebug(_T("PortAudioPlayer::OpenStream Using Default Output Device: %d"), pa_device);
|
||||||
|
} else {
|
||||||
|
pa_device = pa_config_default;
|
||||||
|
wxLogDebug(_T("PortAudioPlayer::OpenStream Using Config Device: %d"), pa_device);
|
||||||
|
}
|
||||||
|
|
||||||
pa_output_p.device = pa_device;
|
pa_output_p.device = pa_device;
|
||||||
pa_output_p.channelCount = provider->GetChannels();
|
pa_output_p.channelCount = provider->GetChannels();
|
||||||
|
@ -200,8 +210,8 @@ void PortAudioPlayer::OpenStream() {
|
||||||
pa_output_p.suggestedLatency = Pa_GetDeviceInfo(pa_device)->defaultLowOutputLatency;
|
pa_output_p.suggestedLatency = Pa_GetDeviceInfo(pa_device)->defaultLowOutputLatency;
|
||||||
pa_output_p.hostApiSpecificStreamInfo = NULL;
|
pa_output_p.hostApiSpecificStreamInfo = NULL;
|
||||||
|
|
||||||
wxLogDebug(_T("PortAudioPlayer::OpenStream Output Device: %d, Output channels: %d, Latency: %f Sample Rate: %ld\n"),
|
wxLogDebug(_T("PortAudioPlayer::OpenStream Output channels: %d, Latency: %f Sample Rate: %ld\n"),
|
||||||
pa_device, pa_output_p.channelCount, pa_output_p.suggestedLatency, pa_output_p.sampleFormat);
|
pa_output_p.channelCount, pa_output_p.suggestedLatency, pa_output_p.sampleFormat);
|
||||||
|
|
||||||
PaError err = Pa_OpenStream(&stream, NULL, &pa_output_p, provider->GetSampleRate(), 256, paNoFlag, paCallback, this);
|
PaError err = Pa_OpenStream(&stream, NULL, &pa_output_p, provider->GetSampleRate(), 256, paNoFlag, paCallback, this);
|
||||||
|
|
||||||
|
|
|
@ -213,6 +213,7 @@ void OptionsManager::LoadDefaults(bool onlyDefaults,bool doOverride) {
|
||||||
#endif
|
#endif
|
||||||
SetText(_T("Audio Downmixer"),_T("ConvertToMono"),1700);
|
SetText(_T("Audio Downmixer"),_T("ConvertToMono"),1700);
|
||||||
SetText(_T("Audio Alsa Device"), _T("default"));
|
SetText(_T("Audio Alsa Device"), _T("default"));
|
||||||
|
SetInt(_T("Audio PortAudio Device"), -1);
|
||||||
SetText(_T("Audio HD Cache Location"),_T("default"),1700);
|
SetText(_T("Audio HD Cache Location"),_T("default"),1700);
|
||||||
SetText(_T("Audio HD Cache Name"),_T("audio%02i.tmp"),1700);
|
SetText(_T("Audio HD Cache Name"),_T("audio%02i.tmp"),1700);
|
||||||
SetBool(_T("Audio Disable PCM Provider"), false);
|
SetBool(_T("Audio Disable PCM Provider"), false);
|
||||||
|
|
Loading…
Reference in New Issue