audioplayer TimerFcn behavior when busy
Show older comments
Hello there. Does an audioplayer object have an option to cancel calls of TimerFcn when system busy ?
(Like "BusyAction" for graphic objects or "BusyMode" for timer objects)
5 Comments
Guillaume
on 23 Feb 2023
Mario Malic
on 23 Feb 2023
Why would system even be busy? Maybe it takes longer time to update plot (because of frequent updates) than the TimerFcn update.
Try increasing the TimerPeriod, you can also check the play and playblocking functions to ensure the proper update.
Guillaume
on 24 Feb 2023
Jan
on 24 Feb 2023
@Guillaume: Which behaviour do you want to achieve?
Mario Malic
on 24 Feb 2023
Edited: Mario Malic
on 24 Feb 2023
One thing that may be possible, however I am not sure how it would affect the performance of the compiled app. When you use plot, you add line objects, instead you could alter the XData and the YData of the first plotted line object. Example is below
function PlotDataAvailable(src, event)
[data, timestamps, ~] = read(src, src.ScansAvailableFcnCount, "OutputFormat", "Matrix");
persistent init fig ax hPlot;
if isempty(init)
init = true;
fig = figure();
ax = axes(fig);
end
if isempty(hPlot)
hPlot = plot(ax, timestamps, data);
else
hold(ax, "on");
set(hPlot, "XData", [hPlot.XData, timestamps'], "YData", [hPlot.YData, data'])
end
end
Otherwise, you should find a way to debug the compiled application, and figure out why does it happen.
Accepted Answer
More Answers (0)
Categories
Find more on Convert Image Type in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!