【发布时间】:2021-09-11 11:39:15
【问题描述】:
错误
我们正在使用这个库为严重依赖视频流的 AndroidTV 构建一个应用程序,因此我们决定使用这个库并看看它是如何进行的。
我们只为应用程序使用 HLS (m3u8) 视频格式。
我们使用 ExoPlayer,一切似乎都很好,但是当用户开始在非品牌 AndroidBoxes 上安装应用程序时,我们收到了大量的错误报告由一个特定问题组成,“视频播放器无法正常工作”。 我们开始在多种设备上进行调试,包括 Android 手机、AndroidTVs、Amazon Fire Stick 和 android 盒子。。 p>
我们在某些设备上同时使用 ExoPlayer 和 MediaPlayer 进行了调试。
- 我们得到的结果是这样的:
- Android 手机:ExoPlayer 和 MediaPlayer 都运行良好。
- AndroidTV:ExoPlayer 运行良好,但当我们尝试使用 MediaPlayer 时,视频开始不同步。
- Amazon Fire Stick:ExoPlayer 运行良好。 (没有使用 MediaPlayer 进行测试)
- Android Box:ExoPlayer 无法正常工作,问题包括我们手动将其设置为 1 时速度为 2 倍,没有声音且无法完全工作。另一方面,MediaPlayer 起初似乎可以工作,但在使用 30-40 分钟后,它会出现故障并以 2 FPS 的速度播放视频。
平台
您在哪个播放器上遇到问题:
- Android ExoPlayer
- Android 媒体播放器
环境信息
反应原生信息输出:
System:
OS: Windows 10 10.0.18363
CPU: (8) x64 Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz
Memory: 3.36 GB / 11.90 GB
Binaries:
Node: 14.16.0 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.4 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.11 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: Version 4.1.0.0 AI-201.8743.12.41.7042882
Visual Studio: 16.5.30011.22 (Visual Studio Community 2019)
Languages:
Java: 1.8.0_282 - /c/Program Files/OpenJDK/openjdk-8u282-b08/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 16.13.1 => 16.13.1
react-native: Not Found
react-native-tvos: 0.63.4-0
react-native-windows: Not Found
npmGlobalPackages:
*react-native*: Not Found
库版本:^5.1.1
复制步骤
- 运行
react-native init TestApp --template=react-native-tvos。 - 运行
npm i react-native-video。 - 给
<Video />一个HLS类型的视频。 - 运行
react-native run-android --variable=release并在目标平台上安装apk文件。
预期行为
在电视平台上流畅播放视频的解决方案或修复。
我在 react-native-video github here 上提出了一个关于这个问题的问题。
【问题讨论】:
标签: react-native android-mediaplayer exoplayer android-tv react-native-video