Shift in lines when creating videos using VideoWriter
Ältere Kommentare anzeigen
I'm using VideoReader to read a mp4 video, insert a few shapes and annotations, then use VideoWriter to write a new video file. The script was working fine with matlab 2023a on an intel macbook pro. After I switch to matlab 2023b on a macbook with m3 chip, the script stop working. The video geneerated shows weird shift in lines below:

I did notice if I change the file type for VideoWriter from 'MPEG-4' to 'Uncompressed AVI", it can work. But the file size is gigantic.
Can someone help please? Thank you so much!
Antworten (4)
Amsal
am 16 Sep. 2024
2 Stimmen
Ensuring that the video frame dimensions (width and height) were multiples of 8 fixed the issue for me.
2 Kommentare
Zheng
am 16 Sep. 2024
Allison Ho
am 17 Sep. 2024
Thanks so much for commenting this, fixed my issues. I just had to make sure that the video dimensions were integer numbers and then my video rendered correctly.
Joseph Slivka
am 10 Mai 2024
1 Stimme
I was also experiencing the same problem in r2023b running on macbook pro apple silicon. I fixed it randomly by adding text to the figure, even if it is just a blank string.
text(0.99*ax.XLim(2),0.99*ax.YLim(1),'','HorizontalAlignment','right','VerticalAlignment','bottom','FontSize',40,'FontName','Arial')
I believe all the options are unnecessary but just citing exactly what I did. Maybe this will help provide a temporary solution.
Walter Roberson
am 13 Mär. 2024
0 Stimmen
This is a known problem in R2023b for the Apple Silicon
Possibly it only happens when you only write a single frame to the movie; I am not sure about that.
2 Kommentare
Zheng
am 16 Mär. 2024
Walter Roberson
am 16 Mär. 2024
Sorry, I have no information as to when the problem will be solved.
亦可
am 11 Mär. 2025
0 Stimmen
This issue also happens on my Apple silicon Macbook when the figure size is larger than the screen. It seems like when the figure is too large, it get compressed in size and results in the distortion.
TO FIX IT, chosing an appropriate size within the screen works for me.
1 Kommentar
亦可
am 11 Mär. 2025
or just turn off the resize function of the figure by
set(gcf,"Units","centimeters","Position",[5,5,25,40], 'Resize', 'off')
Kategorien
Mehr zu Video Formats and Interfaces finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!