Android 无法播放某些视频
我正在尝试从我们的服务器在Android设备上播放电影。它不是一个媒体服务器,只是一个普通的Apache服务器。我们使用相同的API访问iPhone上的视频,效果很好 在安卓设备上,某些视频可以工作,而另一些则不行。它们都是以相同的方式创建的,除了大多数不起作用的是由静态图像和音频组成的 我们已经尝试用Videora重新编码它们,并尝试用MP4Box提示它们。存储在SD卡上时,所有视频都可以完美播放。我们也尝试过先将视频从服务器下载到SD卡,将其保存为文件,然后从文件中播放,但这也不起作用 帮助将是惊人的。我非常困惑。 谢谢 编辑-Logcat:Android 无法播放某些视频,android,video,video-processing,video-encoding,h.264,Android,Video,Video Processing,Video Encoding,H.264,我正在尝试从我们的服务器在Android设备上播放电影。它不是一个媒体服务器,只是一个普通的Apache服务器。我们使用相同的API访问iPhone上的视频,效果很好 在安卓设备上,某些视频可以工作,而另一些则不行。它们都是以相同的方式创建的,除了大多数不起作用的是由静态图像和音频组成的 我们已经尝试用Videora重新编码它们,并尝试用MP4Box提示它们。存储在SD卡上时,所有视频都可以完美播放。我们也尝试过先将视频从服务器下载到SD卡,将其保存为文件,然后从文件中播放,但这也不起作用 帮助
01-19 08:19:12.669: DEBUG/MediaPlayer(1878): Couldn't open file on client side, trying server side
01-19 08:19:14.119: INFO/ActivityManager(1172): Displayed activity com.myproject/.VideoClass: 1966 ms (total 1966 ms)
01-19 08:19:15.779: ERROR/PlayerDriver(1071): Command PLAYER_INIT completed with an error or info UNKNOWN PVMFStatus
01-19 08:19:15.789: ERROR/MediaPlayer(1878): error (200, -32)
01-19 08:19:15.789: ERROR/MediaPlayer(1878): Error (200,-32)
01-19 08:19:15.789: DEBUG/VideoView(1878): Error: 200,-32
01-19 08:19:15.849: WARN/PlayerDriver(1071): PVMFInfoErrorHandlingComplete
更新:
这里是三个不同视频的视频分析粘贴箱。
应用程序上的第一个流来自服务器。
第二个视频不会流式播放,但可以下载,然后从设备播放。
第三个不能流式播放或下载播放。
WTF 我遇到了同样的问题,在最初放弃之后,我找到了解决办法 我偶然发现了下一页 其中指出: 对于3GPP和MPEG-4容器,moov原子必须位于任何mdat原子之前,但必须位于ftyp原子之后 在做了一些挖掘之后,我发现这正是问题所在。从某些安卓手机(我相信2.3之前版本)录制的视频将moov atom放在文件的末尾。这使得它们无法流动。一些谷歌搜索会告诉你这是MP4文件和flash播放器的常见问题,因为它们是用来流式播放视频的 MediaPlayer中甚至有一个特定的错误代码(但我没有看到这些记录) MediaPlayer#媒体错误(无效)用于渐进式播放 我的解决方案是通过一个外部工具运行视频文件,将moov原子移动到起点。我最终使用了MP4Box:和命令
MP4Box -inter 500 original.mp4 -out fixed.mp4
希望这能帮助别人 在它不起作用后,我尝试了几种不同的方法,但最初是H.264。@Jai:Use
adb logcat
,DDMS,或Eclipse中的DDMS透视图来检查LogCat,并查看是否收到任何与视频播放相关的警告。^我已添加了从LogCat收到的错误消息。Apache服务器上扩展名为.mp4的文件使用哪种MIME类型?你能在电脑上下载并播放该文件吗?没有设置。应该是什么?当一组动画编码相同时,这如何影响一组动画的工作而不影响其他动画?