2 Sounds Cards and 5.1 speakers

2 Ansichten (letzte 30 Tage)
Chloooo
Chloooo am 11 Okt. 2019
Kommentiert: Jimmy Lapierre am 18 Okt. 2019
Hello, I want to manage two sound cards through Matlab. One that sends sound: it is connected to an amplifier by an optical socket and is supposed to handle 5 speakers. One that receives sound output from two microphones (right/left) by BNC cable. I don’t know how in Matlab, handled these sound cards. that is, I don’t know how to tell Matlab to select this card to do this action and this card to do this action. How to select the speakers that send the sounds? And the analysis of either output ?
I know the function AudioDeviceWritter, AudioDeviceReader but only for the use of devices defaulted manually in computer-specific settings.
thanks for your help.

Antworten (1)

Jimmy Lapierre
Jimmy Lapierre am 16 Okt. 2019
The audioDeviceReader and audioDeviceWriter objects have "Driver" and "Device" properties. For example, if the output device supports 5.1 (6 channels), you could play this:
adw = audioDeviceWriter(48000,"Device","5.1 audio device");
% Play 6 channels of random noise (number of columns when calling adw)
for ii = 1:20
adw(randn(1024,6)/20);
end
Note that pressing tab after "Device"," will bring up a list of devices in your system.
Same with the reader, except you specify the number of channels when creating it:
adr = audioDeviceReader(48e3,adw.BufferSize,"Device","Dual Microphone Device","NumChannels",2);
Calling adr() will return a buffer-long matrix with 2 columns.
Note that two different devices will have independant sampling clocks that differ ever so slightly (one slightly faster than the other), so if you use the writer and reader with different devices in a loop for a very long time without taking this into account, one device might underrun every once in a while (maybe after several minutes).
  6 Kommentare
Walter Roberson
Walter Roberson am 18 Okt. 2019
I seem to recall that sound and audioplayer can only handle 2 channels on Windows because they use OS interface routines that only support 2 channels??
Jimmy Lapierre
Jimmy Lapierre am 18 Okt. 2019
Walter is correct, the OP asked for multichannel so that will limit us to audioDeviceWriter.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Audio I/O and Waveform Generation finden Sie in Help Center und File Exchange

Produkte


Version

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by