Hi Florian,
To execute the code you provided, it requires the '1mDyn440Hz.wav' file. However, in the absence of this file, I've used a dummy simulated 8-channel audio signal as follows:
% Simulated audio signal parameters
Fs = 44100; % Sample rate in Hz
t = 0:1/Fs:1-1/Fs; % Time vector for 1 second
f1 = 440; % Frequency of the first tone in Hz
f2 = 880; % Frequency of the second tone in Hz
% Frequencies for the 8 channels (can be the same or different)
frequencies = [440, 880, 500, 750, 1000, 1250, 1500, 1750]; % Example frequencies for each channel
% Generating the 8-channel audio signal
pRaw = zeros(length(t), 8); % Initialize the matrix to store the 8-channel signal
for i = 1:8
pRaw(:, i) = sin(2*pi*frequencies(i)*t)'; % Each channel with its own frequency
end
Then I ran the script and as you described, I received similar output as you shared in the query.
To ensure that the figure used for displaying the animation does not have an extra axis, you can explicitly control the figure and axes properties when displaying the animation. Here's how you can modify your code to remove any extra axes from the last figure:
% Display the animation
figAnimation = figure;
% Set figure to fullscreen or a specific size as needed
% set(figAnimation, 'Position', get(0, 'Screensize')); % Uncomment to make fullscreen
% Create axes in the figure for the movie, ensuring it fills the entire figure
axesAnimation = axes('Parent', figAnimation, 'Position', [0 0 1 1]);
% Remove axis ticks and labels
axis off;
% Play the movie in the axes created
movie(axesAnimation, Mframe, 1, fps);
By controlling the figure and axes properties like this, you can ensure that your animation display is as intended, without extra or unwanted graphical elements.
Here's what I received after running the program successfully:
Hope it helps!