Need help with Volume Slider GUI

조회 수: 15 (최근 30일)
Nikos Korobos
Nikos Korobos 2022년 4월 3일
편집: Mohamed Turkmani 2022년 9월 7일
Hello everyone, I've been trying to code an audio player for wav files throught the Matlab GUI (App Designer).
Currently stuck on the volume slider function.
When I choose another volume level, the sound file restarts instead of continuing from the point I used the slider to adjust the volume level.
Any ideas?
My code so far:
Sample code I found online:
Thanks in advance!
  댓글 수: 1
Nikos Korobos
Nikos Korobos 2022년 4월 9일
I have also created an audio file player on μatlab, with Upload file and Play/Stop buttons.
Interested to code a display timer to show how long is the audio file while being played.
Can I use disp.AudioFileReader to count its length?
Need to count seconds in every loop.
Any suggestions appreciated.

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

채택된 답변

jibrahim
jibrahim 2022년 4월 4일
Hi Nikos,
Consider using audioDeviceWriter to play the audio, and dsp.AudioFileReader to read from the audio file. You do not need to restart these objects when you tune the volume gain.
% EXAMPLE: Read in an audio file and play it back using the standard
% audio device writer.
AFR = dsp.AudioFileReader('speech_dft.mp3');
ADW = audioDeviceWriter(AFR.SampleRate);
gain = 1;
while ~isDone(AFR)
audio = AFR();
ADW(gain*audio);
end
release(AFR); % close the input file
release(ADW); % close the audio output device
At a high level, you create AFR and ADW once in your app (at setup time). You feed the audio signal to ADW. Use the latest and greatest gain to scale the audio.
  댓글 수: 8
Raja Palanimurugan
Raja Palanimurugan 2022년 4월 12일
Yes, that is correct.
Mohamed Turkmani
Mohamed Turkmani 2022년 9월 7일
편집: Mohamed Turkmani 2022년 9월 7일
@Raja Palanimurugan the volume still doesnt work even when i add the drawnow limitrate. can you please explain how to use it more? when i change the value for the first time it works , for the second time it gives this error
Error using audioDeviceWriter/setupImpl
A given audio device may only be opened once.
drawnow limitrate

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

추가 답변 (0개)

카테고리

Help CenterFile 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