Gstreamer 调度模式
来源:互联网 发布:java并发编程应用 编辑:程序博客网 时间:2024/05/22 18:55
调度
------------------------
在Gstreamer中,调度模式是基于pad是主动积极地推送(产生)数据还是从其他的pad拉数据。
推模式(PUSH)
-------------------------
一个Pad能够产生数据,并且推送给下一个Pad,按这种模式工作的Pad有一个loop函数,loop函数被重复调用直到返回false。Loop函数无论什么时候需要数据时,可以阻塞。当Pad被取消激活时,loop函数应该取消阻塞。
按Push模式工作的Pad仅仅能够对有chain函数的Pad推送数据,Chain函数被Push pad调用,参数是Push pad产生的buffer。
Push模式产生数据的方式也被称为流模式,因为数据生产者产生一个稳定的,基本上是恒定速率流数据。
拉模式(PULL)
---------------------------
按Pull模式工作的Pad仅仅能够从实现了pull_range的pad拉取数据。当从对等Pad拉取了数据后,loop函数将调用push将数据推送给对等pad。
决定调度模式
---------------------------
当Pad被激活时, _activate() 函数被调用。Pad根据上游Pad的能力选择用push还是pull模式激活自己。Gstreamer默认用push模式激活pad,如果没有激活函数。
Chain函数
---------------------------
当上游元素调用 _push()函数,下游Pad的Chain函数被调用,上游的元素可能是chain中一个节点或者是一个Push源。
getrange函数
---------------------------
- Gstreamer 调度模式
- Gstreamer 调度模式
- Gstreamer 调度模式
- Gstreamer调度模式的分析
- Gstreamer调度模式的分析
- Gstreamer调度模式的分析
- 深入浅出gstreamer的调度模式
- 深入浅出gstreamer的调度模式 .
- Gstreamer插件教程3.2—高级概念(Advanced Concepts):不同的调度模式(Different scheduling modes)
- Gstreamer PUSH和PULL模式
- Gstreamer PUSH和PULL模式
- Gstreamer PUSH和PULL模式
- gstreamer
- Gstreamer
- gstreamer
- gstreamer
- GStreamer
- 不支持调度模式
- 统一软件开发过程——RUP
- access的一些基本操作
- 20款响应式jQuery插件
- python 构造 whois 请求
- BCGControlBar如何整合计划控件到SDI应用程序中
- Gstreamer 调度模式
- 导致eclipse在空闲时CPU一直占用100%或50%的原因及解决
- Mac环境下Android APK包反编译详解
- 22个免费的UI界面设计工具、资源及网站
- Linux下读写FLASH驱动——MTD设备分析
- BCGControlBar仪表(Gauge)效果预览与演示下载
- KVO的概述与使用
- MySql For Entity Framework 6 Code First 例子
- 0042 JAVA枚举类型enum【基础】