【问题标题】:Video file formats supported in iPhoneiPhone 支持的视频文件格式
【发布时间】:2010-12-04 21:12:51
【问题描述】:

iPhone OS 支持哪些视频文件格式?

谢谢

【问题讨论】:

    标签: iphone video


    【解决方案1】:

    引用iPhone OS Technology Overview

    iPhone OS 通过媒体播放器框架 (MediaPlayer.framework) 提供对全屏视频播放的支持。此框架支持播放具有 .mov、.mp4、.m4v 和 .3gp 文件扩展名并使用以下压缩标准的电影文件:

    • H.264 视频,最高 1.5 Mbps,640 x 480 像素,每秒 30 帧,H.264 基线配置文件的低复杂度版本,具有最高 160 Kbps 的 AAC-LC 音频,48kHz,立体声音频。 m4v、.mp4 和 .mov 文件格式
    • H.264 视频,最高 768 Kbps,320 x 240 像素,每秒 30 帧,Baseline Profile 最高 1.3 级,AAC-LC 音频最高 160 Kbps,48kHz,.m4v,.mp4 立体声音频,和 .mov 文件格式
    • MPEG-4 视频,最高 2.5 Mbps,640 x 480 像素,每秒 30 帧,带 AAC-LC 音频的简单配置文件,最高 160 Kbps,48kHz,.m4v、.mp4 和 .mov 文件中的立体声音频格式
    • 多种音频格式,包括“音频技术”中列出的格式

    有关媒体播放器框架类的信息,请参阅媒体播放器框架参考。

    【讨论】:

    • 我也猜想.flv 文件和 youtube 视频可以通过在 html 页面中使用 标签在 UIWebView 中播放。
    • 这仅适用于 YouTube 视频。 UIWebView 检测 YouTube 链接并下载 H.264 流。不支持其他类型的 Flash 视频。
    • 带有动画编解码器的无损 Quicktime 和无损 APNG 都可以在带有我的 AVAnimator 库的 iOS 应用程序中使用。 digbig.com/5beahc
    • 我不明白他们为什么说 640 x 480 像素。我不能播放 1920x1080 的视频吗?
    • @BradMoore 是的,你可以。这个答案可以追溯到 2009 年,当然当时设备无法播放高清视频。
    【解决方案2】:

    简短的回答是 iPhone 支持 H.264 视频、High profileAAC 音频,采用容器格式 .mov.mp4 或 MPEG Segment @ 987654344@。 MPEG 段文件用于HTTP Live Streaming

    • 为了最大限度地兼容 Android 和桌面浏览器,请在 .mp4 容器中使用 H.264 + AAC。
    • 对于超过 10 分钟的超长视频,您必须使用 HTTP Live Streaming,即 H.264 + AAC 在一系列小的 .ts 容器文件中(请参阅App Store Review Guidelines 规则 2.5.7)。

    视频

    在 iPhone 上,H.264 是镇上唯一的游戏。 [1]

    H.264 中有几个不同的功能层或“profiles”可用。所有现代 iPhone (3GS and above) 都支持 High profile。这些配置文件基本上是用于压缩视频的三个不同级别的算法“技巧”。更多的技巧可以提供更好的压缩,但需要更多的 CPU 或专用硬件来解码。 This 是一个表格,列出了不同配置文件之间的差异。

    [1] 有趣的是,Apple 自己的 Facetime uses the newer H.265 (HEVC) video codec。但是现在(2017 年 8 月)没有 Apple 提供的库可以让开发人员访问 HEVC 编解码器。这是expected to change 在某个时候。

    在谈论 iPhone 支持的视频格式时,应该区分硬件可以支持的内容,以及通过网络流式传输时的(低得多的)限制。

    only data givenApple 关于当前一代 iPhone(SE、6S、6S Plus、7、7 Plus)的硬件视频支持是他们支持

    以 30 fps 录制 4K [3840x2160] 视频

    1080p [1920x1080] 以 30 fps 或 60 fps 录制高清视频。

    显然手机可以播放它可以录制的内容,因此我们可以猜测 3840x2160 30 fps 和 1920x1080 60 fps 代表手机的设计限制。此外,6S Plus 和 7 Plus 的屏幕尺寸为 1920x1080。因此,如果您对在手机上播放感兴趣,那么发送更多像素然后屏幕可以绘制是没有意义的。

    但是,流媒体视频是另一回事。由于网络速度较慢且视频量很大,因此通常使用低于设备理论最大值的分辨率、比特率和帧速率。

    提供流式传输建议的最详细文档是TN2224 Best Practices for Creating and Deploying HTTP Live Streaming Media for Apple Devices。该文档中的图 3 给出了推荐的流参数表:

    此表来自 2016 年 5 月

    如您所见,Apple 推荐相对较低的 768x432 分辨率作为通过蜂窝网络进行流式传输的最高推荐分辨率。当然这只是一个推荐和YMMV。

    音频

    问题是关于视频的,但该视频通常带有一个或多个音轨。 iPhone 支持few audio formats,但最现代和迄今为止使用最广泛的是AAC。 iPhone 7 / 7 Plus、6S Plus / 6S、SE均支持8 to 320 Kbps的AAC码率。

    容器

    音频和视频轨道位于container 中。容器的目的是将不同的轨道组合(交错)在一起,存储元数据,并支持搜索。 iPhone支持

    1. QuickTime .mov,
    2. MP4,和
    3. MPEG-TS.

    .mov.mp4 文件格式是 closely related.mp4 实际上是 based on .mov),但是 .mp4 是一个 ISO 标准,得到了更广泛的支持。

    如上所述,对于超过 10 分钟的视频,您必须使用 MPEG-TS。

    【讨论】:

      【解决方案3】:

      简答:H.264 MPEG (MP4)

      来自 Apple.com 的长回答:

      支持的视频格式:H.264 视频, 高达 1.5 Mbps,640 x 480 像素,30 每秒帧数,

      低复杂度 H.264 基线配置文件的版本 具有高达 160 Kbps 的 AAC-LC 音频, 48kHz,.m4v、.mp4 和 .mov 文件格式; H.264 视频,最高 2.5 Mbps,640 x 480 像素,每秒 30 帧,

      基线配置文件高达 3.0 级,AAC-LC 音频高达 160 Kbps,48kHz,.m4v 格式的立体声音频, .mp4 和 .mov 文件格式; MPEG-4 视频,最高 2.5 Mbps,640 x 480 像素,每秒 30 帧,

      简单 AAC-LC 音频配置文件高达 160 Kbps,48kHz,.m4v 格式的立体声音频, .mp4 和 .mov 文件格式

      http://www.apple.com/iphone/specs.html

      【讨论】:

      • 在第一代和第二代 iPhone 和触控设备中播放 .mov 文件似乎存在一些问题。我们的 .mov 文件在 3GS 和 4 设备上运行良好,但在 3G 及以下设备上运行失败,即使它们符合 Apple 规范。
      猜你喜欢
      • 2010-12-18
      • 2010-11-09
      • 1970-01-01
      • 2012-01-19
      • 1970-01-01
      • 2015-08-05
      • 2017-02-14
      • 2011-07-10
      • 2011-09-02
      相关资源
      最近更新 更多