Filter löschen
Filter löschen

frequency shift slider in real time

4 Ansichten (letzte 30 Tage)
Mohamed Turkmani
Mohamed Turkmani am 8 Sep. 2022
Kommentiert: rumin diao am 9 Sep. 2022
i have the following code that reads an audio file, adds a frequency (the bold line) to the file and plots it , my question is the value of the added frequency comes from a slider (changingvalue), after changing the value the plot is plotted , how can i plot as im changing the value kinda like in real time.
changingValue = event.Value;
app.RPMGauge_2.Value = changingValue;
sample = 44100;
[y,Fs] = audioread("Sound and 1000 new.wav");
dt = 1/sample;
StopTime = 20;
Nsamps = length(y);
t = (1/sample)*(1:Nsamps);
A = 0.017;
xfreq = A*sin(2*pi*changingValue*t);
xfreq(t>StopTime) = 0;
xfreq = xfreq';
mix = y + xfreq;
y_fft = abs(fft(mix));
y_fft = y_fft(1:Nsamps/2);
f = Fs*(0:Nsamps/2-1)/Nsamps;
axes(app.axes3);
plot(f, y_fft)
xlim([0 5000])
ylim([0 9000])

Antworten (1)

rumin diao
rumin diao am 8 Sep. 2022
if you add a slider in appdesigner:
you can get the current slider number by "app.Slider.Value" . "app.Slider" is the name and "Value" is the property.
you can see: Slider Properties for more information.
  2 Kommentare
Mohamed Turkmani
Mohamed Turkmani am 8 Sep. 2022
you clearly didint read my question, i dont have any problems with slider my problem is when changing its value i want the plot to change in real time
rumin diao
rumin diao am 9 Sep. 2022
same, add a plot in the callback function:
% Value changed function: aSlider
function aSliderValueChanged(app, event)
value = app.aSlider.Value;
plot(app.UIAxes,value);%app.UIAxes is where you want to plot, in your code is app.axes3 maybe.
end

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

Community Treasure Hunt

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

Start Hunting!

Translated by