Matlab, как поменять аудиоустройство на выход - PullRequest
0 голосов
/ 13 сентября 2018

Я хочу иметь возможность указать, с какого аудио выводится звук для воспроизведения.Используя audioDeviceWriter, я могу получить информацию об устройстве, но я не знаю, как изменить вывод на конкретное устройство.Я пытаюсь .Device (индекс), но это не работает.Пожалуйста помоги.

fs = 44100;
T = 1/fs;
t = [0:T:2];

f1 = 250;
omega1 = 2*pi*f1;

phi = 2*pi *0.75;
x1 = cos(omega1*t +phi);

deviceWriter = audioDeviceWriter(fs);
devices = getAudioDevices(deviceWriter);
% I wish to change the audio device here between built-in and my sound card.
deviceWriter.Device(3)

sound(0.9*x1, fs)

1 Ответ

0 голосов
/ 03 октября 2018

Мне удалось заставить ваш код работать, установив для свойства 'Device' значение devices{3}, для свойства 'SupportVariableSizeInput' значение true и преобразовав аудиосигнал x1 в вектор-столбец (с помощью оператора двоеточия ) перед передачей его в deviceWriter obj для воспроизведения:

% Data same as above...

deviceWriter = audioDeviceWriter(fs);
devices = getAudioDevices(deviceWriter);
deviceWriter.Device = devices{3};
deviceWriter.SupportVariableSizeInput = true;

deviceWriter(x1(:));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...