使用“ mediacodec”时出现“未注册Java虚拟机”错误

时间:2018-09-12 11:41:45

标签: android ffmpeg mediacodec arm64

我成功地将FFmpeg与“ mediacodec”(用Java开发)库交叉编译,用于Android OS下的aarch64 ARM体系结构。 当我尝试在没有“ mediacodec”的Android上运行FFmpeg时,效果很好。 但是,当我使用“ mediacodec”选项运行它时,出现错误: “尚未注册Java虚拟机” 这是我使用的命令行:  ./ffmpeg -vcodec hevc_mediacodec -i jellyfish-20-mbps-hd-hevc.mkv -f null out.null

1)是JRE的问题吗?
2)如果是这样,有人可以指导我在Android上启用JRE或对其进行交叉编译吗?

实际上,我尝试过多次为aarch64交叉编译“ openjdk”,但没有任何效果。

1 个答案:

答案 0 :(得分:0)

MediaCodec只能在Android应用程序的上下文中运行。这意味着您的代码应编译为JNI共享库。您不能从命令行使用它。