Video Reader: Failed to initialize internal resources

82 次查看(过去 30 天)
I am trying to read an MP4 video file from a GoPro camera.
The following error shows up when using VideoReader...
v = VideoReader(fullfile(files(ia).folder,files(ia).name));
Error using VideoReader/initReader
Failed to initialize internal resources.
Error in audiovideo.internal.IVideoReader (line 136)
initReader(obj, fileName, currentTime);
Error in VideoReader (line 104)
obj@audiovideo.internal.IVideoReader(varargin{:});
The video codec is MPEG-H Part2/HEVC (H.265) (hcv1)
The audio codec is MPEG AAC Audio (mp4a)
I looked at the supported formats and notice that they mention "MPEG-4, including H.264".
My guess is that H.265 unsupported? Can anyone confirm?
The audio codec appears to be supported.
The video plays on VLC so I assume I have the codec installed.
I am using Windows 10 Enterprise 22H2, Matlab 2022a
Is there anything that can be done to get VideoReader to work with this file?

采纳的回答

Deep
Deep 2023-7-10
Yeah, it seems that H.265 is unsupported for this. You can use ffmpeg to convert it to H.264 for your task.
ffmpeg -i input.mp4 -vcodec libx264 output.mp4
If you want to do it from MATLAB, there's ffmpeg toolbox. I'd suggest looking into its usage and then using VideoReader on the converted file.
  1 个评论
Robert Daly
Robert Daly 2023-7-11
@Deep thanks for the tip about ffmpeg for changing the codec.
I gave it a test and the file it produced worked as expected with VideoReader.
I had a look at the matlab toolbox but since it seemed I had to download the .exe anyway I just cobbled together a powershell script to run through all of the files.
cd "V:\Video Drops\2023-07-03\GoPro"
$Files = Get-ChildItem -path ".\" -filter *.mp4 -file -ErrorAction silentlycontinue -recurse
foreach ($f in $Files){
& "V:\Instrument Software\Video\ffmpeg-6.0-essentials_build\bin\ffmpeg.exe" -i $f -vcodec libx264 (".\Matlab\"+$f)
}
So far so good...

请先登录,再进行评论。

更多回答(0 个)

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by