필터 지우기
필터 지우기

How do I get sound data from a speaker?

조회 수: 11 (최근 30일)
John Hackett
John Hackett 2018년 3월 6일
답변: Anan Yaghmour 2020년 7월 4일
I googled it, but all I could find was how to send data to a speaker. I want to Analyse the sound the speaker is outputting. I thought I could perhaps use the same method that I used for my microphone, which is:
d = daq.getDevices;
dev = d(2);
s = daq.createSession('directsound');
ch = addAudioInputChannel(s, dev.ID, 1);
s.IsContinuous = true;
lh = addlistener(s,'DataAvailable', @(src, event) analyze_bandpower(event.Data));
startBackground(s);
But, when I changed the device to a speaker it didn't work. Is there a way to do this with a speaker instead of a microphone?
Edit: I think I need to change how I am saying what I need. Basically I want to be able to analyze system sounds. Like I have some music from pandora playing on my desktop, and I want to analyze the frequencies in it. Would that be any different?
  댓글 수: 4
John Hackett
John Hackett 2018년 3월 9일
Wow, that is a lot. However, is there no way to at least let someone know, 'Hey we are busy right now, we'll get back to you in x time'?
Walter Roberson
Walter Roberson 2018년 3월 9일
There is no roster of volunteers, no deliberate division of effort, no queuing of questions to particular people. Each of the volunteers visits whenever they feel like it, wanders off whenever they want, and responds to whatever strikes their interest.
Some of the volunteers only answer questions they already know the answer to (perhaps because it is somewhat fast and doesn't require much thinking); some of them prefer questions that are within areas they have studied but do not already know the answer to (perhaps in order to expand their expertise in their chosen areas); some volunteers enjoy questions that are further out from their existing knowledge (perhaps in order to expand their areas of knowledge, that moving out of comfort zones can also present the greatest learning opportunities.)
The audio driver specialist volunteers tend to wander by about every 4 to 6 months. You typically won't see one of them responding unless you start working with at least 8 channels -- or start needing very low latency.
Myself, I have not done audio work for about 35 years, back on a PDP-11/23 device (I think it was.) There were no audio drivers back then; we programmed everything in assembly language.

댓글을 달려면 로그인하십시오.

답변 (2개)

Walter Roberson
Walter Roberson 2018년 3월 8일
"Is there a way to do this with a speaker instead of a microphone?"
No.
If you want to analyze the sound a speaker is putting out then you need to do one of the following:
  1. add one or more microphones listening to the speakers; Or
  2. add an analog to digital convertor on a tap of the inputs going to the speaker and extensively calibrate how input signals are converted to sound by the speaker so that the input signal can serve as a proxy for the speaker output; Or
  3. loop-back the signal being output in the direction of the speakers and extensively calibrate how the signals being emitted at that point are converted to sound by the speaker so that the signal can serve as a proxy for the speaker output. The differences between this and the previous option is: (A) that the system output being measured in this case might be pre-amp, pre-equalizer and so on whereas the direct measurement of the signal to the speaker would be after all manipulations including amplifier; and (B) there is a possibility that you might be able to loop back the digital version of the signal before it is converted to output
As I scan around the 'net it appears that DirectSound does not have the capability of doing loopback, but that some other audio drivers do. One of the ones suggested appears to be https://www.vb-audio.com/Cable/
  댓글 수: 4
John Hackett
John Hackett 2018년 3월 9일
I've added an edit to my question, please let me know if that changes anything.
Walter Roberson
Walter Roberson 2018년 3월 9일
I think my first attempt at this point would be to try the Virtual Cable driver I linked to above and see if a device shows up for the data acquisition toolbox or (more likely I guess) the Audio System Toolbox.

댓글을 달려면 로그인하십시오.


Anan Yaghmour
Anan Yaghmour 2020년 7월 4일
hello,
Have you tried to activate stereo mix mode , in order to enable direct recording from speakers?

카테고리

Help CenterFile Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by