I'm seeking for a Mathworks tool or interface that supports audio codec performance.
SNR, Total harmonic distortion, cross-talk, ISI, and other DAC and ADC performance characteristics for audio codecs
Any assistance would be greatly appreciated.
Thanks

 채택된 답변

Jimmy Lapierre
Jimmy Lapierre 2022년 5월 25일

0 개 추천

Hi, I think the Spectrum Analyzer could help. Here is an example:
https://www.mathworks.com/help/dsp/ug/spectrum-analyzer-measurements.html

댓글 수: 7

How to you perform loopback ? I don't see in your example.
Jimmy Lapierre
Jimmy Lapierre 2022년 5월 27일
I'm not sure of the details of what you are measuring, but if your device shows up as an audio device, could you replace the amplifier block in the example by an audio device writer block and audio device reader block, then physically loop back that device. That way, you would measure the effect of the DAC followed by the ADC.
I believe I'm on the right track here.
Exactly, your plan appears to be a fantastic fit for the path I'm thinking.
What this would do for me is allow me to test whether audio device read and write operations can be performed without causing any loss [ very low distortion case, almost linear model]. And this makes sense in terms of accurate measurement.
Another issue to consider is that I am not very skilled with simulink. If this is in the form of a matlab script, could you kindly tell me how to test and replace the amplifier block?
I can provide faster feedback and work as a result of my observations.
Thank you so much for your assistance!!
Jimmy Lapierre
Jimmy Lapierre 2022년 5월 27일
편집: Jimmy Lapierre 2022년 5월 27일
In MATLAB, you can consider using the audioPlayerRecorder to simultaniously play a test tone and record the result (you could feed it with dsp.SineWave for example). You can then monitor in real time with the Spectrum Analyzer, or record (maybe with dsp.AsyncBuffer set with a sufficient capacity) and analyze the recording at the end using functions like thd.
Thanks a lot.
Are you using Windows? If so then it is possible to get a loopback driver that can copy output to input without going through hardware. You would use that to test what the actual digital signal is. When you create a hardware loopback as a patch between output and input you are also implicitly testing the quality of the output hardware, and the cable, and the input hardware.
You're looking at things from the right angle for my setup needs.
For Windows, ASIO4ALL works well, but I'm not sure how to proceed with Linux.
Unfortunately, Linux is my preferred operating system, and I need a hardware loopback with DAC [playback] and ADC [recording] capabilities.
A target device that supports audio/video resolutions of 8, 16, 24, and 32 bits is what I'd like to use for this.
Sending and receiving signals to and from the target are the responsibility of the host.
I measure the back using AsyncBuffer for a sine signal with data type range from 8 to 32 bits ( Indata = A * sin (2 * pi *f* t + noise), as proposed by @Jimmy Lapierre.

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Audio I/O and Waveform Generation에 대해 자세히 알아보기

제품

릴리스

R2021b

태그

Community Treasure Hunt

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

Start Hunting!

Translated by