Почему H.264, MPEG-4 HE AAC перестали работать на iphoneXS / Max? - PullRequest
0 голосов
/ 25 сентября 2018

Проблема, связанная с НОВЫМ оборудованием

Я расследовал, как сумасшедший, и не нашел никаких намеков на то, почему мои видео в кодировке H.264 перестали работать на этих новых устройствах.

Контекст: Прямо с устройства ios оригинал отправляется на s3, затем упругий транскодер затем кодирует оригинал в более сжатую предустановку H.264.Со вчерашнего дня коллега сообщал, что все видео были «черными», теперь, когда поставки на эти устройства выполняются, я получил подтверждение.Невозможно воспроизвести эту проблему на симуляторе.Закодированные видео, которые не воспроизводятся, я перечислил данные EXIF ​​ниже.

Есть ли кто-нибудь, кто имеет опыт в области кодеков, можете ли вы объяснить, почему новое устройство не сможет декодировать это видео H.264, когда устройства с iphoneX и ниже не имеют проблем?

➜  Downloads exiftool 30B3485D-24A3-4B6D-8B27-15B7C11FB864.mp4
ExifTool Version Number         : 11.10
File Name                       : 30B3485D-24A3-4B6D-8B27-15B7C11FB864.mp4
Directory                       : .
File Size                       : 202 kB
File Modification Date/Time     : 2018:09:24 20:35:47-07:00
File Access Date/Time           : 2018:09:24 20:36:02-07:00
File Inode Change Date/Time     : 2018:09:24 20:35:53-07:00
File Permissions                : rw-r--r--
File Type                       : MP4
File Type Extension             : mp4
MIME Type                       : video/mp4
Major Brand                     : MP4  Base Media v1 [IS0 14496-12:2003]
Minor Version                   : 0.2.0
Compatible Brands               : isom, iso2, avc1, mp41
Movie Header Version            : 0
Create Date                     : 0000:00:00 00:00:00
Modify Date                     : 0000:00:00 00:00:00
Time Scale                      : 1000
Duration                        : 4.12 s
Preferred Rate                  : 1
Preferred Volume                : 100.00%
Preview Time                    : 0 s
Preview Duration                : 0 s
Poster Time                     : 0 s
Selection Time                  : 0 s
Selection Duration              : 0 s
Current Time                    : 0 s
Next Track ID                   : 3
Track Header Version            : 0
Track Create Date               : 0000:00:00 00:00:00
Track Modify Date               : 0000:00:00 00:00:00
Track ID                        : 1
Track Duration                  : 4.12 s
Track Layer                     : 0
Track Volume                    : 100.00%
Balance                         : 0
Audio Format                    : mp4a
Audio Channels                  : 2
Audio Bits Per Sample           : 16
Audio Sample Rate               : 48000
Matrix Structure                : 1 0 0 0 1 0 0 0 1
Image Width                     : 320
Image Height                    : 568
Media Header Version            : 0
Media Create Date               : 0000:00:00 00:00:00
Media Modify Date               : 0000:00:00 00:00:00
Media Time Scale                : 15360
Media Duration                  : 4.00 s
Media Language Code             : und
Handler Description             : VideoHandler
Graphics Mode                   : srcCopy
Op Color                        : 0 0 0
Compressor ID                   : avc1
Source Image Width              : 320
Source Image Height             : 568
X Resolution                    : 72
Y Resolution                    : 72
Bit Depth                       : 24
Pixel Aspect Ratio              : 1:1
Video Frame Rate                : 30
Handler Type                    : Metadata
Handler Vendor ID               : Apple
Encoder                         : Lavf57.71.100
Movie Data Size                 : 202178
Movie Data Offset               : 4545
Avg Bitrate                     : 393 kbps
Image Size                      : 320x568
Megapixels                      : 0.182
Rotation                        : 0

Ответы [ 2 ]

0 голосов
/ 18 июня 2019

Эта ошибка устранена для меня в бета-версии iOS13.Apple вернулась ко мне и сообщила, что заголовок H264 говорит, что мое видео было версии 4.0, но первый кадр H264 говорит, что это 3.1, и iOS12 не допустит этого.

Я смог исправить это в кодеуказав мою версию заголовка как 3.1

0 голосов
/ 09 мая 2019

У меня была похожая проблема с черным видео на iPhone XS Max, и оказалось, что я устанавливал ключи kCVPixelBufferCGImageCompatibilityKey и kCVPixelBufferCGBitmapContextCompatibilityKey на YES в словаре sourcePixelBufferAttributes при создании AVAssetWriterInputPixelBufferAdaptor.Комментирование этих двух ключей из словаря, похоже, решило проблему.

...