集成Linux SDK
更新时间:2025-05-15
开发环境
请确保开发环境满足以下技术要求:
- GCC 5.4.0 或以上版本
- x86_64处理器
- centos7、Ubuntu 16.04或以上版本
- 开发环境需联网
SDK下载
请前往RTC文档中心“下载专区>SDK&Demo下载”进行下载。
SDK目录说明
- sdkdemo/include目录 ------ 放置api头文件
- bin目录 ------ 放置libbaidurtc.so 及其依赖库 和ssl证书文件a.cer
- sdkdemo目录 ------ 放置demo代码的目录
SDK集成
- 将demo/include目录加入到Makefile头文件搜索路径。
- 采用dlopen加载libbaidurtc.so 库, 具体参考demo源代码。
- 将bin中的so库文件都复制到执行目录下。
完成以上步骤后,即可开始调用Linux RTC的API。
API调用流程
- 调用流程图
API codes使用样例
Plain Text
1......
2int main_push(int argc, char* argv[])
3{
4 void* handle = dlopen("libbaidurtc.so", RTLD_LAZY);
5 if (handle == NULL) {
6 fprintf(stderr, "Could not open sdk: %s\n", dlerror());
7 return 1;
8 }
9 f_createBaiduRtcRoomClient* createClient = (f_createBaiduRtcRoomClient *)dlsym(handle, "_ZN8baidurtc24createBaiduRtcRoomClientEv");
10 if (createClient == NULL) {
11 fprintf(stderr, "Could not find sdk_func: %s\n", dlerror());
12 return 1;
13 }
14 f_getVersion *version = (f_getVersion*)dlsym(handle, "getBaiduRtcSdkVersion");
15
16 printf("BRTC.Linux.SDK Version is: %s\n",version());
17
18 printf("Calling API\n");
19
20 RtcParameterSettings s;
21
22 g_BrtcClient = createClient();
23 setListener(g_BrtcClient, g_myListener);
24
25 s.HasData = false;
26 s.HasVideo = true;
27 s.HasAudio = true;
28 s.AudioINChannel = 1;
29 s.AudioINFrequency = 16000;
30 s.ImageINType = RTC_IMAGE_TYPE_JPEG;
31 s.AsPublisher = true;
32 s.AsListener = false;
33 s.AutoPublish = true;
34
35 g_BrtcClient->setParamSettings(&s,s.RTC_PARAM_SETTINGS_ALL);
36 g_BrtcClient->setAppID("GET-FROM-BAIDU");
37 g_BrtcClient->setMediaServerURL("wss://rtc.exp.bcelive.com:8989/janus");
38 g_BrtcClient->setCER("../bin/a.cer");
39
40 std::string uid = std::to_string(1234500000+random()/100000);
41 g_BrtcClient->loginRoom("2131",uid.c_str(),"BRTC Linux SDK push demo","token");
42......
Demo Codes下载
请前往RTC下载中心进行下载。
打包应用程序-依赖的文件列表
- libbaidurtc.so
- libstdc++.so.6
- libturbojpeg.so.0
- libwebsockets.so.14
- libcrypto.so.1.0.0
- libssl.so.1.0.0
- a.cer