在刚接触WebRTC源码的时候,遇到了大量的track,source,sink等关键字,最近渐渐理清了英文语境下这些词的关系。

一、名词解释

source:媒体流提供者

track:应用持有的媒体流,可以用来播放

sink:媒体流接受者

二、Track,Source,Sink关系

三者之间的关系如图:

source ---(提供媒体流)---> track ---(输出媒体流)---> sink

例如,在/Sdk/Android包下的VideoTrack.java,用来播放视频流的类。

它的source是音视频引擎,sink是Android的屏幕渲染类,分别被封装为VideoSource.java,VideoSink.java。

三、Source,Sink关系

两者关系如图:

source--->sink

所有提供媒体流的组件,都是Source;所有接受媒体流的组件,都是Sink。

例如,/pc包下有一个类remote_audio_source.cc,它处理的音频流流向如图:

mediaEngine ---> remoteAudioSource  ---> addedSinks

对于mediaEngine来说,remoteAudioSource就是sink。

对于remoteAudioSource来说,Engine就是source,下层接受者就是sink。

WebRTC 什么是source,track, sink?什么是AudioSink,VideoSink,MediaSink?相关推荐

  1. [ETL] Flume 理论与demo(Taildir Source Hdfs Sink)

    一.Flume简介 1. Flume概述 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据: ...

  2. OpenShift 4 - Knative教程 (5) Eventing之Source和Sink

    <OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.10环境中验证 文章目录 创建 Knative Eventing 环境 配置Source和Sink ...

  3. 三十九、Flume自定义Source、Sink

    上篇文章咱们基于Flume举了几个例子,包括它的扇入扇出等等.这篇文章我们主要来看一下怎样通过自定义Source和Sink来实现Flume的数据采集.关注专栏<破茧成蝶--大数据篇>,查看 ...

  4. Flink-常用Source与Sink的使用汇总整理

    Flink-常用Source与Sink的使用汇总整理 基础结构 Source 本地数据源 端口数据源 文件数据源 Kafka-Source 自定义JDBC-Source 数据处理 SingleData ...

  5. (2)source和sink详解

    前面第一小节也提到了,Structured Streaming会增量的从source中读取数据,映射成一张表,对该表进行增量的查询分析,然后组合中间状态,再把结果输出到结果表,然后刷到外部存储系统si ...

  6. flink链接mysql_flink 将mysql作为Source和Sink的代码示例

    1.maven导入 mysql mysql-connector-java 5.1.34 2.SourceFromMySQL工具类java代码 import org.apache.flink.confi ...

  7. flink source和sink

    flink中的source作为整个stream中的入口,而sink作为整个stream的终点. SourceFunction为所有flink中source的根接口,其定义了run()方法和cancel ...

  8. Flume的开发之 自定义 source 自定义 sink 自定义拦截器

    一:开发相关 加入 jar 包依赖: <dependency> <groupId>org.apache.flume</groupId> <artifactId ...

  9. flink入门3-Flink连接Kafka、Redis,实现Kafka Source/Redis Sink

    本篇文章将会一步步实现如何使用Flink对接Kafka和Redis,并将Kafka中的数据存储到Redis中,这种场景也是真实项目会遇到的. 1.单机部署Kafka 1.1 下载Kafka压缩包,解压 ...

  10. 1.31.Flink自定义rocketmq(source/sink)+自定义redis source和sink

    1.31.Flink自定义rocketmq(source/sink)+自定义redis+自定义 1.31.1.工程结构 1.31.2.定义pom.xml文件 1.31.3.log4j2.propert ...

最新文章

  1. 【PL/SQL】--导出oracle单表数据--drp204
  2. Science:微生物组“淘金热”,从人体中发现新型抗菌剂
  3. 目标检测 最新源码大放送
  4. 一步一步带你训练自己的SSD检测算法
  5. P3369-[模板]普通平衡树【替罪羊树】
  6. 真正理解 git fetch, git pull 以及 FETCH_HEAD
  7. PHP高并发高负载系统架构
  8. 190906二级刷题水果与小女孩
  9. 基于SSM的疫情数据统计分析系统
  10. openstack相关资料集结
  11. 快速入门Maxwell基本操作流程(2D部分)
  12. 我经常和面试者聊的一个题目
  13. matlab简单处理图像
  14. 机器学习笔记(五)逻辑回归 、决策边界、OvR、OvO
  15. linux服务器光衰,linux下怎么查看光模块光功率
  16. 转行程序员日记--2020-08-10
  17. 计算机网络信号电平,电平信号什么意思_电平和电压的区别
  18. 基于mysql+php071婚纱影楼管理系统
  19. windows找不到共享文件怎么解决
  20. javascript调用c/c++程序

热门文章

  1. 40163 php,微信支付授权获取 openId {quot;errcodequot;:40163,quot;errmsgquot;:quot;code been used, hints:...
  2. 外键设置中的CASCADE、NO ACTION、RESTRICT、SET NULL的区别
  3. STM32F401的RCC时钟配置
  4. STM32F401CCU6踩坑系列
  5. 第十四届全国大学生信息安全竞赛部分wp
  6. 基于STM32单片机多功能电梯系统设计(论文原理图程序)
  7. Matlab中单元数组和结构数组
  8. 关于XDC工具的文章
  9. 手游多开怎么设置不同的IP登陆
  10. postman“在Tests中通过data.token获取token失败”的解决方法