码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 通过顶顶通呼叫中心中间件玩转FreeSWITCH媒体流


    怎么获取FreeSWITCH的媒体流是一个老生常谈的问题了,最常见的方法media_bug,我在2019年就做的FreeSWITCH对接ASR开源的例子https://gitcode.net/iyaosan/FreeSWITCH-ASR用的就是media_bug,对接ASR常见的方法还有通过mod_mrcp模块对接mrcp的asrserver。

    很多人需要直接获取原始的声音流,然后自己处理,其实FreeSWITCH也是支持的,只是知道的极少,FreeSWITCH原生支持 unicast 通过udp 把声音流推送到一个UDP端口,和播放网络的声音流。 fs实现的unicast,有一个缺陷如果启动了unicast 就没办法调用playback等放音函数了。

    通过顶顶通呼叫中心中间件提供的 cti_unicast 则没这个缺点。可以不影响fs本身所有的功能情况下把媒体流推送到 远端udp端口,和播放网络声音。

    cti_unicast 通过media_bug挂了2个回调SMBF_READ_STREAM和SMBF_WRITE_REPLACE,其中 SMBF_READ_STREAM,用来把媒体流推送到远端UDP端口,SMBF_READ_STREAM用来把远端发送来的声音混音到fs的放音。从而实现了完全不影响fs自身功能的前提下,实现推流和播放流。

    顶顶通呼叫中心中间件还提供了tcp的推流和播放流函数 cti_audiao_stream。

    这2个函数可以通过拨号方案启动,也可以通过 freeswitch esl 接口调用。

    还有websocekt协议的播放流函数 wss://ip/tts?text=文字 可用于对接实时TTS。

    顶顶通呼叫中心中间件ASR接口更高级的2个函数是
    uuid_cti_start_detect_speech
    用于质检 ,检测到说话实时推流给ASR,支持weboscket,mrcp等多种协议。用户说话停止自动停止推流。
    cti_play_and_detect_speech
    用于电话机器人,放音的时候检测用户说话,检测到说话实时推流给ASR,支持weboscket,mrcp等多种协议。支持多种打断模式,比如检测到人声打断,识别到多少文字打断。

    详细可以看 http://www.ddrj.com/callcenter/asr.html

  • 相关阅读:
    C++每日面试之struct 和 class
    Pytorch获取特征图
    【openKylin】OpenKylin1.0 x86_64 VMWare安装手册
    【HTML】HTML网页设计---叮当猫网页设计
    Three.js 性能监测工具 Stats.js
    元数据管理和指标体系建设
    FFmpeg 中 Codecs 使用文档介绍
    English语法_介词 - 表时间
    <<造轮子>>一个Redis数据同步迁移命令工具
    ASP.NET Core 6框架揭秘实例演示[19]:数据加解密与哈希
  • 原文地址:https://blog.csdn.net/iyaosan/article/details/134361698
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号