RTMP协议视频直播点播智能分析平台EasyDSS拓展多种格式的水印图片功能

本文介绍了EasyDSS在RTMP直播点播平台中如何处理非PNG格式的水印图片,通过自动转换上传图片为PNG格式并使用定时任务监测水印视频生成,确保了不同格式图片的兼容性。此外,文章还提及了EasyDSS的视频直播和点播服务,以及其丰富的二次开发接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一篇我们讲了EasyDSS添加了水印的功能(RTMP推流协议互联网直播点播平台EasyDSS新增生成水印模块记录),目前EasyDSS的水印功能开发中,只支持添加水印图片,我们最开始在做研发设计的时候,EasyDSSS只支持上传png格式的图片,其他格式的图片都无法正常生成水印。

微信截图_20201020103926.png

因为在EasyDSS中生成水印的命令,只支持png格式的图片。但是此时如果用户上传水印图片时是其他格式比如jpg格式,则无法生成水印视频。

所以我们将代码设置成上传的图片都转成png格式,存在临时的文件夹中,之后在通过检测对应的水印视频是否已经生成成功,用一个定时任务进行监测,每20秒钟就检测一次,如果都成功了,就将临时png文件删除。以免占用磁盘的空间。

参考代码:

go func() {
   //延迟5秒
   time.AfterFunc(5000, func() {
      if len(urlPng) != 0 {
         //开启定时任务,每20秒钟检测一次
         tick := time.NewTicker(time.Second * 20)
         for {
            select {
            case <-tick.C:
               i := 0
               for _, v := range vodIds {
                  _, boo := gWatersProgress.Get(v)
                  if boo {
                     break
                  }
                  i++
               }
               if i == len(vodIds) {
                  for _, v := range urlPng {
                     err := os.RemoveAll(v)
                     if err != nil {
                        log.Println("remove fail error: ", v)
                        continue
                     }
                     log.Println("remove : ", v)
                  }
                  return
               }
            }
         }
      }
      return
   })


此时上传的是jpg图片,也是可以进行正常的水印转码,正在生成水印视频。

17.png

对于EasyDSS,值得注意的是该视频平台作为一款RTMP协议的流媒体服务器,不仅能够支持视频直播,同时也具备点播功能,与其他平台不同的是,用户可上传视频文件,作为虚拟直播,将已经录制好的视频作为直播视频播放。

虚拟1.png

当然,EasyDSS还具备很多二次开发的接口,用户可以自由调用进行二次开发,如果大家有兴趣,欢迎测试!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值