为什么我的MPEG-TS不能在iOS上播放?

我的MPEG-TSvideo不是通过HTTP Live Streaming在iOS上播放,我不知道为什么。 我知道我的iOS代码/ m3u8格式是正确的,因为如果我用苹果(bipbop)的示例replace我的.ts文件,它的工作原理。 我提供了有关我的video(不工作)和工作的信息。

我的(不工作)

General ID : 1 (0x1) Format : MPEG-TS File size : 9.57 MiB Duration : 3s 265ms Overall bit rate mode : Variable Overall bit rate : 24.3 Mbps Video ID : 769 (0x301) Menu ID : 1 (0x1) Format : AVC Format/Info : Advanced Video Codec Format profile : High@L4.2 Format settings, CABAC : No Format settings, ReFrames : 1 frame Codec ID : 27 Duration : 3s 279ms Bit rate : 23.1 Mbps Width : 1 920 pixels Height : 1 080 pixels Display aspect ratio : 16:9 Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Stream size : 9.01 MiB (94%) 

苹果(工作)

 General ID : 1 (0x1) Format : MPEG-TS File size : 281 KiB Duration : 9s 943ms Overall bit rate mode : Variable Overall bit rate : 231 Kbps Video ID : 257 (0x101) Menu ID : 1 (0x1) Format : AVC Format/Info : Advanced Video Codec Format profile : Main@L2.1 Format settings, CABAC : No Format settings, ReFrames : 2 frames Format settings, GOP : M=2, N=24 Codec ID : 27 Duration : 9s 542ms Width : 400 pixels Height : 300 pixels Display aspect ratio : 4:3 Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Color primaries : BT.601 NTSC Transfer characteristics : BT.709 Matrix coefficients : BT.601 Audio ID : 258 (0x102) Menu ID : 1 (0x1) Format : AAC Format/Info : Advanced Audio Codec Format version : Version 4 Format profile : LC Muxing mode : ADTS Codec ID : 15 Duration : 9s 380ms Bit rate mode : Variable Channel(s) : 2 channels Channel positions : Front: LR Sampling rate : 22.05 KHz Compression mode : Lossy Delay relative to video : -121ms 

我的video没有audiostream,但这不重要。

我的video是什么让它不能通过HTTP直播stream?

你的video是高调,4.2级。 iPhone 5只支持4.1级。 iPhone 4仅支持主要configuration文件级别3.1。 也是23.1 MBps真的很高。 3或4可能是最大的。

编辑:

这里是我为ios设备编写的一个编译列表 。

问题不在于操作系统。 iOS只是将编码的h.264stream传递给SoC的video解码模块。 硬件解码块是有限的,每个SoC迭代有不同的限制。

一般来说,这个限制是在configuration文件和macros块速率上。 如果您希望在任何iOS设备上播放video,则需要严格削减video中的比特率。

Szatmary的表看起来像是一个很好的select你的目标编码参数的资源。