Webrtc and Ortc的实现

aiortc的Python项目详细描述


rtdpypi-vpypi-pyversionspypi-ltraviscodecovgitter

什么是aiortc

aiortcWeb Real-Time Communication (WebRTC)Object Real-Time Communication (ORTC)在python中。它建在 asyncio,python的标准异步i/o框架。

api在使用pythonic时紧跟其javascript对应项 构造:

  • 承诺被合作所取代
  • 事件使用pyee.EventEmitter
  • 发出

要了解有关aiortc的更多信息,请read the documentation

为什么要使用aiortc

WebRTC和ORTC的主要实现要么内置在Web浏览器中, 或者以本机代码的形式出现。尽管它们经过了广泛的战斗测试, 它们的内部很复杂,不提供python绑定。 此外,它们与媒体堆栈紧密耦合,因此很难插入 在音频或视频处理算法中。

相反,aiortc实现相当简单且可读。作为 对于希望了解如何 WebRTC工作或修补其内部。创造创新也很容易 通过利用python生态系统中提供的大量模块来开发产品。 例如,您可以构建一个处理信令和数据的完整服务器 频道或使用opencv将计算机视觉算法应用于视频帧。

此外,在为 确保类内代码质量最佳的aiortc代码。

实施状态

aiortc允许您交换音频、视频和数据通道 Chrome和Firefox都定期测试互操作性。这是 它的一些功能:

  • sdp生成/解析
  • 建立交互式连接,包括半涓涓流
  • DTLS密钥和证书生成
  • DTLS握手、加密/解密(用于SCTP)
  • rtp和rtcp的srtp密钥、加密和解密
  • 纯python sctp实现
  • 数据通道
  • 发送和接收音频(opus/pcmu/pcma)
  • 发送和接收视频(VP8/H.264)
  • 捆绑音频/视频/数据频道
  • rtcp报告,包括从包丢失中恢复的nack/pli

要求

除了aiortc的python依赖项之外,还需要几个库 为媒体编解码器安装在系统上。需要FFMPEG 3.2或更高版本。

在debian/ubuntu上运行:

apt install libavdevice-dev libavfilter-dev libopus-dev libvpx-dev pkg-config

在OS X上运行:

brew install ffmpeg opus libvpx pkg-config

许可证

aiortcBSD license下释放。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
具有未知数量条件的java If语句   java如何在Spark中使用两个“条件”进行过滤?   雅加达ee为ColdFusion提供的最佳Java ee服务器   java如何在jersey的MessageBodyWriter方法中获取writeTo中的anotations值?   java从脚本文件调用jar文件中的函数   java在执行insert语句后,如何获得id值为的语句?   在OS X上设置OpenCV Java绑定   java使用for循环遍历数组x。以字符串形式返回x的元素,其中每个元素由一个空格分隔   ApacheiClientBuilder为Algolia Java创建的APIClient是线程安全的吗?   java在DFS/BFS算法中获取邻居时避免内存分配?   java使用AES/CBC/PKCS5P加密大文件(2GB)   允许保存/加载列布局的Java DB网格组件   队列大小为1的java Spring调度   跑步带有Java参数的exe   java正则表达式将所有“<”和“>”标记替换为“&lt;”及“&gt;”在<<![CDATA]>标签?   java何时同步变量?