Медиафайлы с расширением .mov не воспроизводятся в приложении Cordova

Я использую Cordova для создания своего гибридного приложения. В этом приложении у меня есть функция для предварительного просмотра файлов перед их загрузкой на сервер. Для этого, когда я загружаю видеофайлы и аудиофайлы, записанные с устройства, это работает, если я воспроизводю видео/аудио с URL-адреса хранилища устройства. Но это не удается, когда я привязываю URL-адрес сервера.

Сначала я подумал, что это проблема с типом контента, полученным с сервера, поэтому я изменил его на видео/быстрое время. Очевидно, это не решило мою проблему.

Видеофайлы с расширением mp4 проигрываются отлично. Поскольку iPad возвращает файл .mov и нет другого способа изменить расширение видео, я не могу изменить тип кодировки.

Мой вопрос: в чем проблема, когда я привязываю URL-адрес сервера? это не должно быть проблемой с файловым кодеком, поскольку URL-адреса локальных файлов воспроизводятся без проблем. Является ли это ограничением iOS/Cordova, когда нам нужно загрузить и запустить файл, а не привязывать его к тегу видео html5?

Есть ли способ запустить эти видеофайлы на устройстве iOS/iPad?

Я использую html5 и теги.

Когда URL-адрес привязывается к тегу видео/аудио, я получаю сообщение ниже в консоли Xcode

URL API сервера

Ответ сервера для видеофайла в формате .mov

Ответ сервера

Когда я запускаю одно и то же видео в браузере Mac Chrome, оно работает. Только в случае с мобильным приложением не воспроизводится медиафайл. Файл также загружается при прямом доступе к URL-адресу.

Пожалуйста, дайте мне знать, если вам нужна дополнительная информация по этому конкретному вопросу.

Подробная информация о платформе

Кордова:

"cordova-android": "^8.0.0",
"cordova-browser": "^5.0.4",
"cordova-ios": "^4.5.5",
"cordova-plugin-camera": "^4.0.3",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-file": "^6.0.1",
"cordova-plugin-file-opener2": "^3.0.0",
"cordova-plugin-geolocation": "^4.0.2",
"cordova-plugin-inappbrowser": "^3.0.0",
"cordova-plugin-media": "^5.0.2",
"cordova-plugin-media-capture": "^3.0.2",
"cordova-plugin-network-information": "^2.0.1",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-whitelist": "^1.3.3",

person Shirish    schedule 19.02.2020    source источник


Ответы (1)


Html5 официально поддерживает ОЧЕНЬ ограниченное количество кодеков и контейнеров. Mp4/h264/aac — единственный файл, который гарантированно работает во всех браузерах. Любой другой формат, и вы должны преобразовать его.

person szatmary    schedule 19.02.2020
comment
Да, я также проверял это ранее, мой вопрос в том, что я могу воспроизводить видео из файловой системы, но когда тот же файл загружается на сервер, он не воспроизводится, запрос отклоняется. Я могу скачать, и при загрузке я могу воспроизвести тот же файл. - person Shirish; 20.02.2020