uni-app中video组件播放hevc编码格式视频时会出现花屏现象

uni-app中video组件播放hevc编码格式视频时会出现花屏现象

视频播放问题

uniapp中使用<video>标签播放视频时,部分视频播放开头会出现花屏现象。经过排查,发现花屏视频的编码格式为HEVC编码。

花屏视频编码

花屏视频编码

正常播放视频编码

正常播放视频编码

请问如何让<video>标签正常播放HEVC编码格式的视频?

或者,在上传文件时如何修改视频编码?
以上两种方法均可解决我的问题,希望得到指导。


更多关于uni-app中video组件播放hevc编码格式视频时会出现花屏现象的实战教程也可以访问 https://www.itying.com/category-93-b0.html

3 回复

我这边iPhone上传的视频偶尔花屏,不知道咋解决

更多关于uni-app中video组件播放hevc编码格式视频时会出现花屏现象的实战教程也可以访问 https://www.itying.com/category-93-b0.html


请问解决了吗

在uni-app中使用video组件播放HEVC编码格式(也称为H.265)的视频时,出现花屏现象可能是由于以下原因:

1. 浏览器或平台兼容性问题

HEVC编码格式并不是所有浏览器和平台都广泛支持的。尤其是在移动端,某些设备或浏览器可能无法正确解码HEVC格式的视频,导致花屏或无法播放。

  • iOS:iOS设备(如iPhone和iPad)通常对HEVC格式有较好的支持。
  • Android:Android设备的支持情况较为复杂,不同厂商和版本的设备对HEVC的支持程度不同。
  • Web端:部分浏览器可能不支持HEVC编码,导致播放异常。

2. video组件本身的问题

uni-app的video组件是基于原生平台(如iOS、Android)的video控件实现的,不同平台对视频格式的支持可能存在差异。如果平台本身不支持HEVC,video组件也无法正常播放。

3. 视频文件本身的问题

如果视频文件本身编码有问题,或者在传输过程中出现了损坏,也可能导致播放时出现花屏现象。


解决方法

  1. 转换为兼容性更好的格式 将视频文件转换为更广泛支持的编码格式,如H.264(AVC)。H.264在大多数设备和浏览器上都有良好的支持。

  2. 使用第三方播放器 如果必须使用HEVC格式,可以尝试集成第三方视频播放器插件,如vue-video-playerDPlayer,这些播放器可能对HEVC格式有更好的支持。

  3. 检测设备支持情况 在播放视频前,检测当前设备是否支持HEVC格式。如果不支持,则切换到H.264格式的视频源。

    const isHEVCSupported = () => {
      const video = document.createElement('video');
      return video.canPlayType('video/mp4; codecs="hev1.1.6.L120.90"') !== '';
    };
    
    if (!isHEVCSupported()) {
      console.log('HEVC not supported, fallback to H.264');
      // 切换到H.264格式的视频源
    }
回到顶部