Ошибка «Нет виртуальной машины Java была зарегистрирована» при использовании «mediacodec» - PullRequest
0 голосов
/ 12 сентября 2018

Я успешно кросс-скомпилировал FFmpeg с библиотекой «mediacodec» (разработанной на Java) для архитектуры ARM aarch64 под ОС Android. Когда я пытаюсь запустить FFmpeg на Android без «mediacodec», он работает просто отлично. Однако, когда я запускаю его с опцией «mediacodec», я получаю сообщение об ошибке: «Виртуальная машина Java не была зарегистрирована» Вот командная строка, которую я использовал: ./ffmpeg -vcodec hevc_mediacodec -i медуза-20-mbps-hd-hevc.mkv -f null out.null

1) это проблема JRE?
2) если да, может ли кто-нибудь подсказать мне включить JRE на Android или сделать кросс-компиляцию?

На самом деле, я много раз пытался кросс-компилировать "openjdk" для aarch64, но ни один не работает.

1 Ответ

0 голосов
/ 12 сентября 2018

MediaCodec может работать только в контексте приложения для Android.Это означает, что ваш код должен быть скомпилирован в разделяемую библиотеку JNI.Вы не можете использовать его из командной строки.

...