Borrar filtros
Borrar filtros

How can i do the real time sound volume change in GUI?

4 visualizaciones (últimos 30 días)
HS Kim
HS Kim el 29 de Nov. de 2016
Comentada: Mohamed Turkmani el 6 de Sept. de 2022
%
A = get(handles.Volume_Slider,'Value');
TempSound = TempFft;
RestoredAudio = real(ifft(TempSound));
sound(A*RestoredAudio,fs/2)
%
I used slider Bar in Gui
If i want to change the volumn of sound, then I have to press play button again after chaning slider bar
How can I change in real time?
I want to change the volumn by just moving of slider bar
Like this equalizer

Respuesta aceptada

Walter Roberson
Walter Roberson el 30 de Nov. de 2016
1) Use audioplayer:
Divide the sound up into chunks. For each chunk, multiply the contents of the chunk by the current volume settting, create an audioplayer object, set the StopFcn of the audioplayer, and play() the audioplayer. The StopFcn, when triggered, should do the same thing for the next chunk (looking at the then-current volume level) and then delete the current audioplayer.
2) Use dsp.AudioPlayer or audioDeviceWriter() from DSP toolbox. You need to queue multiple samples at a time, but you do not need to keep deleting and creating new players.
  4 comentarios
HS Kim
HS Kim el 3 de Dic. de 2016
I found CurrentSample by player = audioplayer(y,fs) and get(player) and i did!!!!
Thanks a lot:D
Mohamed Turkmani
Mohamed Turkmani el 6 de Sept. de 2022
@HS Kim can you please explain how did you do it?

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by