gstreamer - 在 Gstreamer 对象之间传输信息的最佳方法
问题描述
在 gstreamer 管道中,我需要一个下游元素(拥塞控制模块)动态更改上游元素(编码器)的属性。传输此信息的最佳机制是什么?
解决方案
我会元素报告在总线上发布一条消息(参见fpsdisplaysink
示例)。然后轮询总线的应用程序可以对该消息做出反应并根据需要在某些元素上设置一些内容。这样,如何反应的逻辑就在应用层,而不一定在元素本身。
或者检查已经存在的 GStreamer QOS 处理。通常,视频接收器会报告他们是否延迟接收到视频帧并在上游报告。通常这会继续到文件源,然后元素决定丢弃一些帧以再次赶上。因此,您的编码器可能会从您的拥塞控制元素中截获类似的自定义消息并采取相应措施。
推荐阅读
- c# - IIS:处理程序“aspNetCore”的模块列表中有一个错误模块“AspNetCoreModuleV2”
- php - 致命错误:不能使用“对象”作为类名,因为它是保留的
- javascript - React Native 方法中的参数
- python - 基于python中的部分字符串匹配加入数据帧
- reactjs - 如何在reactJS中导入带参数的导出默认功能?
- laravel - 在 nem 中发起事务返回 FAILURE_WRONG_NETWORK
- ios - 在 AWS 套接字 S3 存储桶中缓存
- javascript - 如何通过单击javascript更改div?
- python - 使用带有 Pythonnet 的 mXparser 的构造函数错误
- html - 我可以在字体列表中使用 CSS 变量并让它在旧版浏览器中工作吗?