当前位置: 首页 > 知识库问答 >
问题:

视频不能在Android(chrome)和iOS(safari)上播放

吕作人
2023-03-14

嗨,我有几个视频不能在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

下面是另一段在Android和Chrome上播放的视频的ffprobe输出:

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(高4:4:4预测)Video:h264(主)YUV444PYUV420P(tv)以及元数据部分的差异。

我尝试用ffmpeg重新编码第一个视频,但没有成功。有没有人知道为什么video1不兼容Android和iOS,以及如何重新设置FFMPEG使其播放?谢谢!

共有1个答案

元玮
2023-03-14

根据aeristal对我上述问题的评论,我将我的视频重新编码成这样:

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

现在它也在Android和iOS上播放。

关键开关是-vprofile main和最重要的-pix_fmt yuv420p,因为Android/iOS不支持aergistal所述的hi444pp配置文件

 类似资料:
  • 问题内容: 随着OSX High-Sierra*的发布,Safari中的新功能之一是网站上的视频将不再自动播放,脚本也无法启动,就像在iOS上一样。作为用户,我喜欢该功能,但作为开发人员,它给我带来了一个问题:我有一个内置HTML5的浏览器游戏,其中包含视频。除非用户更改设置,否则视频不再自动播放。这弄乱了游戏流程。 我的问题是,即使上述活动未直接与视频元素相关联,我能否以某种方式利用玩家与游戏的

  • 问题内容: 我花了很多时间试图弄清楚为什么像这样嵌入视频: 一旦将页面加载到FireFox中,便会自动开始播放,但无法在基于Webkit的浏览器中自动播放。这仅在某些随机页面上发生。到目前为止,我找不到原因。我怀疑CMS编辑器创建了一些未封闭的标签或大量JS。 问题答案: 我能得到的最佳解决方案是在 …不是很漂亮,但是可以正常工作。 更新 最近,许多浏览器只能在没有声音的情况下自动播放视频,因此您

  • 修剪视频,然后我将修剪后的视频发送到android设备并播放,我发现音频/视频不同步,音频比视频慢几秒钟。但视频可以在iOS设备上正常播放。1、我用如下代码剪裁视频: 2、我将视频剪辑后发送到服务器,然后android设备从服务器获取视频,但他们发现音频/视频不同步,起初我认为服务器做错了什么,所以我只是用USB将视频发送到android设备,错误仍然存在。 3.因此,我使用ffmpeg工具分析修

  • 在webview iframe和webview上播放的视频设置在回收卡视图上。许多视频都在他们的recyclerview上。 我想在用户开始滚动回收器时暂停播放视频,并在用户播放另一个视频时暂停播放视频。 查看代码 我想用这个: 请帮我解决这个问题。任何帮助都将不胜感激。谢谢!

  • 问题内容: 我在android中实现了视频播放,这对android来说是全新的,这是我到目前为止收集的部分代码。 根据逻辑,它应该播放视频。不知道我在哪里做错了。 问题答案: