видео не воспроизводится на Android (Chrome) и iOS (Safari) - PullRequest
1 голос
/ 21 марта 2019

Привет У меня есть несколько видео, которые НЕ воспроизводятся в Android (напрямую в Chrome) и на iOS (прямо в Safari), но воспроизводятся в Windows, Mac и Linux в любом браузере.

Вот вывод ffprobe

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'intro_sequence_01.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2avc1mp41
    date            : 2018-10-08T08:15:57.948731
    encoder         : Lavf58.18.104
  Duration: 00:00:08.00, start: 0.000000, bitrate: 259 kb/s
    Stream #0:0(und): Video: h264 (High 4:4:4 Predictive) (avc1 / 0x31637661), yuv444p, 1920x1080, 257 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
    Metadata:
      handler_name    : VideoHandler

, а вот вывод ffprobe другого видео, которое DOES воспроизводит на Android и Chrome:

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Torcia_960x540.mp4':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp42mp41
    creation_time   : 2017-02-10T16:14:10.000000Z
  Duration: 00:00:11.52, start: 0.000000, bitrate: 10585 kb/s
    Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv), 960x540 [SAR 1:1 DAR 16:9], 10576 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc (default)
    Metadata:
      creation_time   : 2017-02-10T16:14:10.000000Z
      handler_name    : Mainconcept MP4 Video Media Handler
      encoder         : AVC Coding

Оба формата .mp4 и используют кодек h264.Насколько я вижу, я замечаю разницу в профиле кодека h264 (High 4:4:4 Predictive) против Video: h264 (Main) и yuv444p против yuv420p(tv) и в разделе метаданных.

Я попытался перекодировать первое видео с помощью ffmpegно безуспешноКто-нибудь знает, почему video1 не совместимо с Android и iOS и как повторно его воспроизвести, чтобы заставить его играть?Спасибо!

1 Ответ

0 голосов
/ 26 марта 2019

Согласно комментарию, приведенному выше, я перекодировал свое видео следующим образом:

ffmpeg -i original.mp4 -vcodec libx264 -acodec copy -vprofile main -pix_fmt yuv420p reencoded.mp4

, и теперь оно воспроизводится также на Android и iOS.

Ключпереключатели -vprofile main и наиболее важные -pix_fmt yuv420p, поскольку Android / iOS не поддерживает профиль Hi444PP, как указано в aergistal

...