【发布时间】:2014-06-03 12:14:53
【问题描述】:
我想将一些旧的 Flash 视频转换为 1 种视频格式,以便内容可以显示在手机上。我有一些 mp4,但它在 Android 上不起作用,特别是在 Android 4.3 上运行的 Chrome 32。
它正在 Android 4.3 上的 Chrome 32 上加载 mp4 文件,但我认为不支持 H.256
然后我去了这个网站http://techslides.com/sample-webm-ogg-and-mp4-video-files-for-html5/
那里的 mp4 视频可以在 Android/Chrome 上运行。
我使用 VLC 检查编解码器,它们看起来一样
H264 - MPEG-4 AVC (part 10) (avc1)
Resolution: is different (working one is 560x320
Resolution: mp4 not working is 640x480
Framerate: working is 30, not working is 12
Decoded format: Planar4:2:0 YUV
然后我用 ffmpeg 搜索了编解码器,我看到了 有一个属性叫 compatible_brands: mp42icomavc1
这与将此属性设置为的非工作 mp4 不同 兼容:mp42mp41
文件大小也完全不同。这可能是一个问题。
当我加载http://html5test.com 时,Android 浏览器上的 Chrome 显示 H.264 不支持 MPEG-4。它没有说明容器。
好的,这是一些源代码,我认为 android 上的 chrome 不支持 mp4 文件,但是当我在运行 Android 4.3 的 Sony Xperia Tablet 上运行的 Chrome 32 上加载以下内容时。我有一个转换为 webm 的 mp4 文件,但 chrome 仍然无法运行它。它是 8 MB,所以大小可能是个问题....这个 mp4 有不同的大小和框架。除此之外,我只看到与上述不同的兼容版本。
<html>
<head>
<meta name="viewport" content="width=device-width">
</head>
<body>
<h4>This is mp4 video</h4>
<video id="small" controls="controls" autoplay="autoplay" preload="auto" name="small">
<source src="http://techslides.com/demos/sample-videos/small.mp4" type="video/mp4">
</video>
</body>
</html>
【问题讨论】:
-
这是一道编程题吗?您似乎只是在尝试使用股票浏览器播放视频,而不是编写自己的代码。
-
其实我把视频放在了一个 jquery 移动页面中。但是 .mp4 文件似乎无法播放。所以我将它剥离为一个基本的 html 文件,然后我将其加载到 Android4.3 上的 Chrome32 上。该视频无法播放,但随后我看到了另一个 mp4 文件,该文件按照提到的网站播放。如果你愿意,我可以给你基本的 html,但看起来这与编解码器有关。我读到 Chrome 是用 .webm 的,但是我转换了视频仍然无法正常工作,然后我发现上面的 .mp4 确实可以在其中工作,所以我真的很困惑。
标签: android google-chrome video ffmpeg html5-video