我在安卓手机上使用jwplayer时遇到了错误:
播放媒体出错:
MediaError { code 4 }
尝试搜索其含义,但未能找到。视频可以在其他安卓设备和桌面电脑上播放。已尝试在安卓中使用Chrome和默认浏览器。
更新
jwplayer('myElement').setup({
file: 'http://video.oitlabs.com/dogs6_2mb/mr6d_1047.mp4',
// works
// file: 'http://videos-jp.jwpsrv.com/zWLy8Jer/videos/i8oQD9zd-1753142.mp4?77c801d752d5207784c49e7ed80fb953798fae0fcca03ecf79558597ab74bd0b969af6ee1babdc6fac893174bba3c1bbb98ef7c2e4c6b3c59a812b4ed2c9abb29c61117869dbacbbb7caced845a8994ff297cc03a4',
height: 360,
image: '/uploads/example.jpg',
width: 640
});
他们网站上的视频可以播放,但我的视频不能。但是当我在地址栏中直接运行该视频的URL时,它可以播放。这意味着浏览器能够播放该视频。
顺便说一下,这是在LG L7 P710手机上发生的。
更新:
现在尝试将jw网站上的视频上传到我的服务器上,它在那个手机上可以播放。 http://jsfiddle.net/HCH8Q/5/ 所以这是编码问题。然后问题来了 - 我应该如何解决它?我使用Handbrake程序转换视频,它有许多设置,但我不确定我应该设置什么才能将其转换为适用于支持mp4文件的每个手机?
更新: 最终按照这个网站的说明使它工作: http://www.broken-links.com/2010/07/30/encoding-video-for-android/ 第一步是使用Handbrake进行跨平台转换。我使用了 iPhone 和 iPod Touch 预设,勾选了 Web 优化选项,并将“平均比特率”(在质量部分)更改为 ~1000kbps (然后将其保存为新的预设并命名为 Android)。您还需要在“图片设置”选项中更改输出视频的大小 - 我将其更改为480个像素宽(保持纵横比),效果非常清晰和锐利。如果您的浏览器支持,您可以在下面看到这个结果。
看起来我所做的一切与之前相同,唯一不同的是我使用了更小的 kbps 设置和默认的图片大小。以后我会尝试实验,找出造成它无法工作的原因,因为对我来说,不同的比特率或图片大小似乎只会影响质量,而不应该导致无法工作。
更新 又出了一个问题 - 当使用手刹并尝试一次转换多个文件时,第一个文件的图片宽度会被转换为我设置的大小,但其他文件则会被转换为默认大小,可能是某个错误或者其他原因。 但是我尝试了另一个程序 - Freemake视频转换器 - 它有各种参数,我试着同时转换了两个文件,没有问题,在那个手机上也可以工作。 http://www.freemake.com/free_video_converter/