zoukankan      html  css  js  c++  java
  • 在线课堂/在线医疗直播点播平台EasyDSS如何将音频和视频数据分离?

    跟所有TSINGSEE青犀视频云边端架构产品一样,EasyDSS视频直播点播平台可以将音视频数据同步传输和录制,但是在部分现场中,项目需要将直播的视频和音频流进行分离,单独获取音频流数据。

    比如在我们本文分享的案例中,客户推流直播数据中生成的ts文件是有视频流和音频流的,但是实际上推流端只推送音频流数据,应客户的需求,直播数据只要生成音频流数据,这样用手机播放数据的时候在锁屏的状态下也能听到声音,但是就目前如果音视频两种流都有的话,手机锁屏会导致音频和视频流的同步中止播放。

    此处我们需要在获取数据之前将视频流和音频流都分离即可。在下载指定时间段录像的接口中,将ts文件转成了MP4文件,然后再将MP4文件中的视频分离出来,只剩下音频数据输出成MP4文件。

    再次查看直播数据的输出,只有音频流进行输出了。

     参考代码如下:

    if ty == "0" {
       var params1 []string
       params1 = append(params1, "-i", mp4PathTmpAudio)
       params1 = append(params1, "-acodec", "copy", "-vn", mp4Path)
       //params = append(params, mp4Path)
       cmd := exec.Command(EasyTrans(), params1...)
       cmd.Start()
       cmd.Wait()
       fmt.Println(cmd.Args)
       efile.RemoveFile(mp4PathTmpAudio)
    }
    

      

    当然在进行音频编码的时候,要确保音频编码的规范,否则也会出现无法播放或者音频识别失败的问题。当然EasyDSS也是支持用户实际下载部署测试的,欢迎了解。

  • 相关阅读:
    查看端口号被哪个程序占用
    超出部分用省略号显示 以及 bootStrapTable 的属性一览表
    bootstrap checkbox选中事件
    bootstrap table中formatter作用是什么
    MD5 AES Des 加密解密
    bootstrapTable 隐藏某一列
    报错信息是Error setting null for parameter #1 with JdbcType OTHER
    下拉框隐藏样式,只保留内容
    python学习第二天
    python学习第一天
  • 原文地址:https://www.cnblogs.com/easydss/p/14714530.html
Copyright © 2011-2022 走看看