видео h.264 не будет воспроизводиться на iOS

У меня есть видеофайл с кодировкой h.264, который не будет воспроизводиться на iOS, и я хотел бы знать, почему. Вот HTML-код:

<video style="width: 480px; height: 360px;" autoplay controls>
    <source src="sample.mp4">
</video>

Это видео нормально воспроизводится в настольном браузере, но на устройствах с iOS я вижу не воспроизводимый значок воспроизведения с косой чертой. Я читал, что это означает, что есть проблема с кодировкой видео, но я не уверен, в чем проблема.

Я запустил видео через MediaInfo:

General
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom
File size                                : 706 KiB
Duration                                 : 15s 256ms
Overall bit rate mode                    : Variable
Overall bit rate                         : 379 Kbps

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : [email protected]
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 6 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 15s 250ms
Bit rate                                 : 311 Kbps
Width                                    : 480 pixels
Height                                   : 360 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 24.000 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.075
Stream size                              : 578 KiB (82%)

Audio
ID                                       : 2
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format profile                           : LC
Codec ID                                 : 40
Duration                                 : 15s 256ms
Bit rate mode                            : Variable
Bit rate                                 : 62.8 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 44.1 KHz
Compression mode                         : Lossy
Stream size                              : 117 KiB (17%)

Кроме того, я запустил его через GSpot и получил дополнительную информацию:

Container
isom: MP4 Base Media v1 [IS0 14496-12:2003]
- mp41: MP4 v1 [ISO 14496-1:ch13]

Может кто-нибудь сказать мнеПочему это видео не будет воспроизводиться? Я знаю, что могу просто перекодировать видео, и если я это сделаю, оно хорошо воспроизводится на iOS. Но я хотел бы знать, в чем проблема с оригинальным файлом.

Для сравнения, вот анализ MediaInfo перекодированной версии, которую я сделал (эта работает):

General
Format                                   : MPEG-4
Format profile                           : Base Media
Codec ID                                 : isom
File size                                : 990 KiB
Duration                                 : 15s 256ms
Overall bit rate mode                    : Variable
Overall bit rate                         : 532 Kbps
Writing application                      : Lavf53.19.0

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : [email protected]
Format settings, CABAC                   : Yes
Format settings, ReFrames                : 4 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 15s 250ms
Bit rate                                 : 414 Kbps
Width                                    : 480 pixels
Height                                   : 360 pixels
Display aspect ratio                     : 4:3
Frame rate mode                          : Constant
Frame rate                               : 24.000 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.100
Stream size                              : 771 KiB (78%)
Writing library                          : x264 core 118 r2085 8a62835
Encoding settings                        : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x111 / me=hex / subme=6 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=12 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=24 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=22.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00

Audio
ID                                       : 2
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format profile                           : LC
Codec ID                                 : 40
Duration                                 : 15s 256ms
Bit rate mode                            : Variable
Bit rate                                 : 111 Kbps
Maximum bit rate                         : 128 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 44.1 KHz
Compression mode                         : Lossy
Stream size                              : 207 KiB (21%)

Информация GSpot о контейнере этого отличается (может быть, поэтому этот работает?):

Container
isom: MP4 Base Media v1 [IS0 14496-12:2003]
- iso2: MP4 Base Media v2 [ISO 14496-12:2005]
- avc1: MP4 Base w/ AVC ext [ISO 14496-12:2005]
- mp41: MP4 v1 [ISO 14496-1:ch13]

Единственное, о чем я могу думать, это количество опорных кадров (я прочитал, что максимальное значение равно 3), но у перекодированной версии есть 4, так что я думаю, что это, вероятно, не так.

Ответы на вопрос(1)

Ваш ответ на вопрос