Я реализую функциональность видеоплеера в приложении Flutter, но я не понимаю, какой видеоформат лучший, который работает в обеих системах (IOS и Android).
Я использую video_player 0.10.0+2 и chewie 0.9.6.
На самом деле мы используем H264 с контейнером MKV и H265 с контейнером MP4 (HEVC), но на IOS (реальном устройстве) не работает, а в Android работает, но с некоторыми ошибками.
Некоторая часть кода ...
// Declaration
VideoPlayerController _playerController;
// Initialization
if (_playerController == null) {
_playerController = VideoPlayerController.network(_myVideoUrl)
..setVolume(0.0)
..setLooping(true)
..initialize();
}
//Play
_playerController.play();
//Stop
if (_playerController != null) {
_playerController.pause();
}
@override
void deactivate() {
super.deactivate();
if (_playerController != null) {
_playerController.pause();
}
}
@override
void dispose() {
super.dispose();
if (_playerController != null) {
_playerController.pause();
}
_playerController = null;
}
В IOS на реальных устройствах видео не воспроизводится без сообщения об ошибке.
В Android видео воспроизводится, но с этимипроблемы:
1) Ошибка журнала:
2019-03-24 15:30:49.468 1739-1817/? E/OMXNodeInstance: getExtensionIndex(0xf411c240:google.h264.decoder, OMX.google.android.index.enableAndroidNativeBuffers) ERROR: UnsupportedIndex(0x8000101a)
2019-03-24 15:30:49.468 16136-16335/it.itasoft.moc E/ACodec: [OMX.google.h264.decoder] setPortMode on output to DynamicANWBuffer failed w/ err -1010
2019-03-24 15:30:49.472 1739-1817/? E/OMXNodeInstance: setConfig(0xf411c240:google.h264.decoder, ConfigPriority(0x6f800002)) ERROR: UnsupportedIndex(0x8000101a)
2019-03-24 15:30:49.473 1739-1817/? E/OMXNodeInstance: getConfig(0xf411c240:google.h264.decoder, ConfigAndroidVendorExtension(0x6f100004)) ERROR: UnsupportedIndex(0x8000101a)
2019-03-24 15:30:49.475 1739-1817/? E/OMXNodeInstance: getConfig(0xf411c240:google.h264.decoder, ??(0x7f000003)) ERROR: UnsupportedSetting(0x80001019)
2019-03-24 15:30:49.554 1739-1817/? E/OMXNodeInstance: getConfig(0xf411c240:google.h264.decoder, ??(0x7f000003)) ERROR: UnsupportedSetting(0x80001019)
2019-03-24 15:30:49.558 1739-2059/? E/OMXNodeInstance: setConfig(0xf411c720:google.aac.decoder, ConfigPriority(0x6f800002)) ERROR: Undefined(0x80001001)
2019-03-24 15:30:49.559 1739-2059/? E/OMXNodeInstance: setConfig(0xf411c720:google.aac.decoder, ConfigOperatingRate(0x6f800003)) ERROR: Undefined(0x80001001)
2019-03-24 15:30:49.559 1739-2059/? E/OMXNodeInstance: getConfig(0xf411c720:google.aac.decoder, ConfigAndroidVendorExtension(0x6f100004)) ERROR: Undefined(0x80001001)
2) Цикл не работает
Какие форматы лучше всего подходят для максимальной совместимости в обеих системах?