【发布时间】:2025-12-19 13:50:11
【问题描述】:
我有一台运行 android 4.2.2 的设备,并创建了一个使用最新版本的 ExoPlayer 作为视频播放器组件的应用。我的播放器在使用 ProgressiveMediaSource 播放视频方面表现出色。但是昨天我发现播放H.264格式视频有问题。视频正在播放,但只是显示灰屏。
我深入挖掘并意识到此视频与早期视频之间的唯一区别是它们具有不同的 profile 规范(工作视频是 主要,而该视频是 高)。
首先,我猜可能是它的 codec 不支持,但我用 MediaPlayer 创建了一个应用程序,它可以正常播放。
这似乎与 this question 重复,但对我没有帮助。
我阅读了整个 troubleshooting page of ExoPlayer docs,尤其是那些与我的文件类型 (MP4) 相关的内容,但似乎与我的问题无关。
我尝试的最后一件事是将 analytics 添加到我的 ExoPlayer 中,但没有看到任何这样的日志:
[ ] Track:x, id=x, mimeType=mime/type, ... , supported=NO_UNSUPPORTED_TYPE
我知道我对这个问题的了解并不广泛,我需要改进它以解决这个问题,任何直接或间接的建议都将不胜感激。
PS。你可以看到我的视频文件here。我在那里添加了三个工作视频和一个特别损坏的视频。所有视频文件都有标准格式、比特率、配置文件和编码。
【问题讨论】:
-
你能分享视频吗?
-
@VolkanSahin45 我根据您的要求添加了一些视频文件。其中一个被命名为损坏的,这就是我正在谈论的视频文件。
-
您是否使用 exoplayer 演示应用播放这些视频? github.com/google/ExoPlayer/tree/release-v2/demos/main
-
@VolkanSahin45 是的,但是不,它不起作用。
标签: android encoding android-mediaplayer h.264 exoplayer