AolesRTC介绍
提供精简的接口,实现基于WebRTC的音视频通信,可P2P和Janus服务交互。项目路径:
examples目录下的示例代码非常清晰。
目前只支持python 3.10.13.
如何安装
sdist
pip3.10 install ./dist/aolesrtc-xxx.tar.gz
pypi
pip3.10 install aolesrtc
依赖配置
Linux(x86_64)
export LD_LIBRARY_PATH=/path/to/aolesrtc/lib/linux/x86_64/lib
Mac(arm)
brew install python@3.10
示例讲解
VideoRoom 视频房间
1. 创建房间客户端示例以及监听对象
videoroom_client = JanusVideoRoomClientDataIO(controller)
vr_client_observer = JanusClientObserver(videoroom_client)
videoroom_client.AddVideoRoomClientObserver(vr_client_observer)
2. 创建会话
videoroom_client.CreateSession(janus_url)
3. 创建输入源以及(本地预览)输出源
class PythonAudioSink(DataOutput):
def OnDataAudioOut(self, audio_data, bits_per_sample, sample_rate, number_of_channels, number_of_frames):
print('OnDataAudioOut:', number_of_frames)
dataiofactory = DataIOFactory(controller)
asource = dataiofactory.CreateDataIOSource(DataIOType_AUDIO)
py_asink = PythonAudioSink(DataIOType_AUDIO)
asink = dataiofactory.CreateDataIOSink(py_asink)
4. 绑定输入、(本地预览)输出源
videoroom_client.AddLocalAudioSource("audio", asource)
5. 推流,(本地预览)输出源将会回调此时推出的流
videoroom_client.Publish(1234, 1234, "aoles")