news 2026/3/14 10:40:03

【视频】GStreamer+WebRTC(七):信号和动作

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【视频】GStreamer+WebRTC(七):信号和动作

1、简述

GStreamer 使用 webrtcbin 插件来处理 WebRTC。webrtcbin 中定义了大量的信号(Element Signals)和动作(Element Actions)

  • 信号:通过注册信号对应的回调函数,相应信号,信号由插件在特定时刻发送,使用函数:g_signal_connect
  • 动作:主动触发的插件与定义的的操作,使用函数:g_signal_emit_by_name

下面咱们先使用 rtspsrc 插件来复习下 g_signal_connect 和 g_signal_emit_by_name;
因为 rtspsrc 插件相对简单些。

2、信号

2.1 都有哪些信号

1)使用命令查看

gst-inspect-1.0 rtspsrc

2)几个重要的信号如下:
on-sdp、select-stream、pad-added

Element Signals:"on-sdp":void user_function(GstElement * object,
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/14 1:07:18

1小时验证创意:MODBUS调试助手的5种创新形态原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 生成多形态MODBUS调试原型套件,包含:1. 微信小程序版(扫码即用)2. 浏览器Web串口版 3. 终端命令行版 4. 桌面插件版 5. REST API服务…

作者头像 李华
网站建设 2026/3/14 4:56:51

ARM64 vs x86:开发效率对比实测报告

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个跨架构性能对比工具,能够自动在ARM64和x86平台上运行相同的算法代码,收集并可视化比较编译时间、执行速度和功耗数据。使用快马平台生成多架构兼容…

作者头像 李华
网站建设 2026/3/13 23:49:13

从零实现RISC-V的软件中断处理程序

深入RISC-V的心脏:手把手实现软件中断处理你有没有想过,当你在程序中调用一个系统函数时,CPU是如何“跳转”到内核代码执行的?在x86或ARM上这可能是黑盒,但在RISC-V这个开放架构里,一切都可以从零构建。今天…

作者头像 李华
网站建设 2026/3/12 19:11:16

Dism++清理垃圾提升系统性能,为VibeVoice释放更多资源

Dism清理垃圾提升系统性能,为VibeVoice释放更多资源 在如今内容创作高度自动化的时代,AI语音合成已不再只是“把文字读出来”那么简单。越来越多的创作者开始尝试用AI生成长达数十分钟的多角色对话音频——比如播客访谈、有声书章节甚至虚拟主播互动剧。…

作者头像 李华
网站建设 2026/3/13 10:22:33

MyBatisPlus与AI无关?但你不能错过VibeVoice这一波技术红利

VibeVoice:当AI语音遇上长对话,内容创作的边界正在被打破 在播客订阅量突破百万、有声书市场年增速超30%的今天,一个尴尬的事实是:大多数AI语音工具仍停留在“单人朗读课文”的阶段。哪怕是最新的TTS系统,一旦面对多人…

作者头像 李华
网站建设 2026/3/13 10:37:58

HTML5音频播放器如何兼容VibeVoice输出格式?

HTML5音频播放器如何兼容VibeVoice输出格式? 在AI语音合成技术飞速演进的今天,我们早已不再满足于“机器朗读”式的单人旁白。越来越多的内容创作者、教育机构和媒体平台开始追求更自然、更具表现力的多角色对话式语音内容——比如一场长达一小时的虚拟播…

作者头像 李华