FFmpeg移植到Android(版本10)后,播放手机上的MP4,avformat_open_input(&formatContext, videoPath, NULL, NULL)返回-13的问题

背景:

移植FFmpeg到Android上,自定义一个播放器。打开手机MP4 文件时,

avformat_open_input(&formatContext, videoPath, NULL, NULL)返回-13

MP4 文件在路径:/sdcard/DCIM/Camera/killer.mp4

添加了读写权限。

处理:

1、尝试用Android自带的mediaplayer播放,依旧无法播放

2、在手机手动创建一个文件夹:/sdcard/aatest,放在这个目录下,用mediaplayer可以播放;videoPath=/sdcard/aatest/killer.mp4,用FFmpeg解码后可以播放

3、在路径下:/storage/emulated/0/DCIM/Camera/killer.mp4,也就是手机的相册目录下。想要播放的话,除了读写权限,针对Android10,还需要在manifest文件的application中添加

android:requestLegacyExternalStorage="true";这样就可以播放了。

你可能感兴趣的:(FFmpeg,android,音视频)