【问题标题】:Mp4 video won't play in the iPadMp4 视频无法在 iPad 中播放
【发布时间】:2011-04-23 19:44:14
【问题描述】:

美好的一天,我一直在从事这个项目并学习如何在 ipad 和所有其他浏览器上放置视频。

但是在为此编写代码后,我注意到我从 iPad 获得的唯一内容是视频的第一个关键帧,但视频没有播放。当我按下出现在 ipad 屏幕上的“播放”按钮时,视频不会只是播放。奇怪的是,脚本有一个自动播放命令。

这个脚本有什么问题?有没有更好的方法来做到这一点?我花了太多时间在这上面,我无法完成它。我在适用于 Windows、Firefox、Internet Explorer 的 Safari 上检查了这个,它在除 iPad 之外的任何地方都可以使用。

<video controls width="920px" height="560px" autoplay>  
<!-- if Safari/Chrome-->  
<source src="video.mp4" type="video/mp4" /> 
<source src="video.ogv" type="video/ogg" /> 
<!--If the browser doesn't understand the <video> element, then reference a Flash file. You could also write something like "Use a Better Browser!" if you're feeling nasty. (Better to use a Flash file though.)-->  
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="920" height="560" id="csSWF">
                <param name="movie" value="video_controller.swf" />
                <param name="quality" value="best" />
                <param name="bgcolor" value="#1a1a1a" />
                <param name="allowfullscreen" value="true" />
                <param name="scale" value="showall" />
                <param name="allowscriptaccess" value="always" />
                <param name="flashvars" value="autostart=true&showstartscreen=false&color=0x1A1A1A,0x1A1A1A" />
                <!--[if !IE]>-->
                <object type="application/x-shockwave-flash" data="video_controller.swf" width="920" height="560">
                    <param name="quality" value="best" />
                    <param name="bgcolor" value="#1a1a1a" />
                    <param name="allowfullscreen" value="true" />
                    <param name="scale" value="showall" />
                    <param name="allowscriptaccess" value="always" />
                    <param name="flashvars" value="autostart=true&showstartscreen=false&color=0x1A1A1A,0x1A1A1A" />
                <!--<![endif]-->
                    <div id="noUpdate">
                        <p>The video content presented here, requires a more recent version of the Adobe Flash Player. If you are using a browser with JavaScript disabled please enable it now. Otherwise, please update your version of the free Flash Player by <a href="http://www.adobe.com/go/getflashplayer">downloading here</a>.</p>
                    </div>
                <!--[if !IE]>-->
                </object>
                <!--<![endif]-->
            </object>
            <script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
    swfobject.registerObject("csSWF", "9.0.28", "expressInstall.swf");
</script>
</video>

【问题讨论】:

    标签: javascript ipad video mp4 html5-video


    【解决方案1】:

    mp4 视频的规格是什么(分辨率和配置文件)? iPad 不支持所有种类的 mp4。


    你试过没有flash和ogv源码的简单html吗?


    看起来像你的 over sepc:

    iPad 支持的视频格式

    • H.264 视频(最高 720p,每秒 30 帧;主配置文件级别 3.1,AAC-LC 音频最高 160 Kbps,48kHz,.m4v、.mp4 和 .mov 文件格式的立体声音频)李>
    • MPEG-4 视频,最高 2.5 Mbps,640 x 480 像素,每秒 30 帧,带有最高 160 Kbps 的 AAC-LC 音频的简单配置文件,48kHz,.m4v 格式的立体声音频, .mp4 和 .mov 文件格式。

    【讨论】:

    • 原始 MP4 为:1012 x 586 像素/帧速率:30/编解码器:h264 MPEG-AWC(第 10 部分)(avc1)。它以 m4v 的形式提供给我,我将其重命名为 MP4。在 html5 标签上嵌入视频时,我将其声明为带有自动播放功能的 width="920px" height="560px"。
    • 元素的大小(应该在没有'px'的情况下定义 - 它不是CSS)和视频的大小不是一回事。您被告知要渲染一个太大而无法在小空间中渲染的视频。这不会突然赋予它渲染它的能力。
    • 谢谢你们,太棒了!让我修改一下,然后发布答案。
    • 非常感谢您的帮助。这是正确的答案。我不得不将原始视频文件的大小减小到 720p 宽度,它创造了奇迹。
    【解决方案2】:

    如果您还指定基本媒体编解码器可能会更好

    <source src="video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"' />
    

    【讨论】:

      【解决方案3】:

      会是这样吗?

      “如果您包含海报属性,iOS 将无法识别视频。该元素的海报属性允许您在视频加载时显示自定义图像,或者直到用户按下“播放”。这个 bug 在 iOS 4.0 中已经修复,但是用户升级还需要一段时间。”

      Dive into HTML5找到它

      【讨论】:

      • 感谢您的回答,但脚本没有海报属性。所以情况并非如此。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-17
      • 2011-10-20
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多