前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Web直播点播平台EasyDSS点播上传纯MPEG4文件硬件转码无法播放如何解决?

Web直播点播平台EasyDSS点播上传纯MPEG4文件硬件转码无法播放如何解决?

原创
作者头像
TSINGSEE青犀视频
修改2021-03-29 14:32:49
修改2021-03-29 14:32:49
75900
代码可运行
举报
文章被收录于专栏:TSINGSEE青犀视频TSINGSEE青犀视频
运行总次数:0
代码可运行

EasyDSS视频直播点播平台支持视频的上传,上传的点播文件也支持不同方式的视频转码:软件转码和硬件转码。之前的博文中为大家介绍过两种解码方式的区别:EasyDSS点播配置中视频转码方式中软件转码和硬件转码的差别,大家可以了解一下。

我们偶尔会碰到EasyDSS平台内上传点播文件,上传纯MPEG4视频文件时试用硬件转码无法播放的情况。

配置如下:

播放失败:

首先出现这个问题的前提是需要将点播的配置设置成硬件转码,然后上传纯MPEG4文件格式的视频。上传一直到转码成功的步骤都是正常的,但是却是无法播放。经过排查,发现原因是MPEG4文件不支持硬件转码,因此在此处我们需要舍弃硬件转码的方式,采用软件转码。

获取上传文件的原始格式,如果是MPEG4格式的视频,则不进行硬件转码,通过软件转码。

代码语言:javascript
代码运行次数:0
复制
if vod.Rotate == 0 {
   switch vod.VideoCodec {
   case "H.264":
      vcodec = "copy"
   case "VP9":
      // vp9 编码,仅能够转换成 h265 编码, nvenc 代表设置编码
      vcodec = "hevc_nvenc"
   case "HEVC":
      // hevc 编码为 h265 编码,转换成 h264,有两种 h264_nvenc、libx264、copy
      // libx264 会导致 cpu 使用率 为 100%
      vcodec = h265VideoTranWay
      vod.VideoCodec = "H.264"
   case "MPEG4":
      //MPEG4无法使用硬件转码
   default:
      vcodec = videoTranWay
   }
}

播放成功:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档