Я пытаюсь воспроизвести видео из Vimeo в своем приложении. Проблема в том, что на устройствах Android 6 видео перестает играть через определенное время. На устройствах с более низким API все отлично работает.
- Время зависит от качества. Для видео предоставленного ниже url воспроизводится несколько минут (от 1 до 3). Как снизить качество видео, как долго он продолжает играть.
- Через 1-3 минуты медиаплеер выдает исключение ProtocolException. Приложение не разбивается об этом, но видео зависает при воспроизведении буферизованного фрагмента видео.
[MediaHTTPConnection] readAt 25182208 / 32768 => java.net.ProtocolException: unexpected end of stream and shows this in de log
- После исключения видео воспроизводится 30 секунд (буферизировано), тогда приложение выводит это
[MediaPlayer] error (1, -1004)
Мы отправляем по электронной почте в течение нескольких недель с поддержкой Vimeo, но они не могут предоставить решение или возможную причину. Теперь, после нескольких недель рассылки, служба поддержки говорит, что они не поддерживают Android, но мы пробовали их предложения:
- Используйте перенаправленный и непереписанный URL
http://player.vimeo.com/external/185069251.hd.mp4?s=fd7b4178a59166b3f636f2e48f1d49b99db66ed2&profile_id=174 [Перенаправленный URL]
https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/01/2013/7/185069251/610514667.mp4?token=586a9287_0xbb25f73405c612b30e0c64dc4c3a169e30137f84 [Не перенаправленный URL]
-
Используйте просмотр видео вместо медиаплеера
-
Мы пробовали собственный Android и реализацию Xamarin Android
-
Попробуйте загрузить файл = > это работает, но мы хотим передать его, потому что какое-то видео длится более 30 минут ( > 100 Мб). Раскомментируйте код в onCreate в DownLoadActivity для тестирования загрузки.
В браузере все работает нормально.
Я разместил тестовый проект на We-Transfer, где вы можете увидеть проблему https://bazookas.wetransfer.com/downloads/40dadcc8a01f7ebf025345cdf88b731220170102160508/21970a