Я читаю видео файл filename.mp4 в MATLAB. Я хочу редактировать изображения, но хочу сохранить звук в целости и сохранности. Использование VideoReader
и VideoWriter
только разделяет изображения. Я использовал vision.VideoFileReader
и 'vision.VideoFileWriter'. Я читаю видео и аудио файлы, затем беру изображение и добавляю изображение рядом с ним. Затем напишите кадр и звук, связанный с ним. Финальное видео показывает изображение, которое я добавил, но не оригинальное изображение. Любая помощь приветствуется.
v = VideoReader('movie.mp4');
nfr = v.NumberofFrames;
clear v;
vR = vision.VideoFileReader('movie.mp4','AudioOutputPort',1);
fr = vR.info.VideoFrameRate;
vW = vision.VideoFileWriter('filename.avi','AudioInputPort',1,'FrameRate',fr);
pic = imread('picture.png');%read picture
[a1,b1,~] = size(pic);% get picture size to be resized.
for i = 1:nfr
[I,audio] = vR();
I = permute(I,[2,1,3]);%rotate 90 degrees
if i == 1%resize the picture
[a,b,~] = size(I);
pic = imresize(pic,[a,a/a1*b1]);
end
I = [I pic];%combine picture and movie frame
vW(I,audio);%write frame and audio
end
release(vR);
release(vW);