MPEG4 质量保存在 MATLAB 中



我需要从我加载到 matlab 中并编辑(逐帧(的原始 mpeg4 视频中获取一个 mpeg4 文件以在另一个应用程序中使用。 为此,我尝试使用VideoWriter,将质量设置为100%:

newVid = VideoWriter(outputfilename, 'MPEG-4');
newVid.FrameRate = fps;
newVid.Quality = 100;

但是,我得到的结果非常差,如果原始未经编辑的视频大小为 ~50MB,我在 matlab 中进行后期编辑的视频大小约为 ~20MB,我不知道如何保持质量和大小不变。 我还尝试另存为 .avi 并使用 ffmpeg 转换为 mpeg4,但它给出的结果更差。 有什么想法吗?

MPEG-4是一种压缩格式,因此当您以这种格式保存它时,信息会丢失。质量是压缩的质量,但您不希望任何压缩。为了迫使 Matlab 不使用压缩,我的猜测是使用以下语句,因为默认值为 H.264

newVid.VideoCompressionMethod = 'none'

最新更新