webrtc 源码目录分析

目录结构分析

api

WebRTC 接口层。包括 audio/stats/task_queue/transport/video/mediaStream/peerconnection/rtp/sctp 等webrtc 各模块的接口。

audio

存放音频网络逻辑层相关的代码。包括receive stream,send stream, audio state,audio transport ,channel receive,channel send,remix_resample等。

call

存放的是 WebRTC “呼叫(Call)” 相关逻辑层的代码。

A Call instance can contain several send and/or receive streams. All streams
are assumed to have the same remote endpoint and will share bitrate estimates。

common_audio

存放一些音频的基本算法。包括环形队列,博利叶算法,滤波器等。

common_video

存放了视频算法相关的常用工具,如libyuv, sps/pps分析器,I420缓冲器等。

example
webrtc 示例代码。包括android、objc、peerconnection、relayserver、stunserver、stunprober、turnserver等。

media

存放媒体抽象层相关的代码。包括base、media engine、video engine、voice  engine等。

modules

这个目录是 WebRTC 代码中最重要的一个目录。里面包括了音视频的采集,处理,编解码器,混音等。
modules 目录下包括以下几个子目录:

audio_coding : 音频编解码相关代码。

audio_device : 音频采集与音频播放相关代码。

audio_mixer : 混音相关代码。

audio_processing : 音频前后处理的相关代码。

bitrate_controller : 码率控制相关代码。

congestion_controller : 流控相关的代码。

desktop_capture : 桌面采集相关的代码。

pacing : 码率探测相关的代码。

remote_bitrate_estimator : 远端码率估算相关的代码。

rtp_rtcp : rtp/rtcp协议相关代码。

third_party:第三方库,包括fft、g711、g722和portaudio。

video_capture : 视频采集相关的代码。

video_coding : 视频编解码相关的代码。

video_processing : 视频前后处理相关的代码。

 

p2p

p2p相关的代码。包括stunprober。

pc

存放一些业务逻辑层的代码。如jitter buffer、data channel、dtmf、ice、jsep、local audio souce、remote audio source、media session、peer connection、rtp、sdp、srtp、sctp、stats、audio track souce、video track source等。

resources

存放audio 、video、media、rtp、bitrate estimater、image等的资源文件。

rtc_base

存放了一些基础代码。如线程,事件,socket等相关的代码。

rtc_tools

存放了一些工具代码。如视频帧比较,I420转RGB,视频帧分析。

sdk

存放了 Android 和 IOS  sdk层代码。包括 android/objc 平台的API及平台相关实现。

stats

存放各种数据统计相关的类。

system_wrapper

与操作系统相关的代码,如 CPU特性,原子操作,读写锁,时钟等。

video

存放视频逻辑层及视频引擎层的相关的代码。视频数据逻辑上的发送,接收等代码。视频引擎层就是指如何控制视频采集,处理和编解码操作的逻辑。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值