# BRTC.RTOS.SDK.demo

    -  用于进行BRTC SDK开发的demo程序。  
       百度智能云实时音视频RTC：https://cloud.baidu.com/doc/RTC/index.html  
       sdkdemo中各文件说明：  
        ./src/ac79_videocall_demo.c   实时通话demo程序代码， 演示了进行通话及挂断退出通话的流程。
        ./src/app_main.c 讲述了如何调用ac79_videocall_demo.c中videocall_demo_open的方法，可以正常启动语音通话流程
        ./include/baidu_rtc_client.h  是BaiduRTC SDK的头文件。
        ./libs/libbrtc.a 是BaiduRTC SDK的库文件。 
        ./README.md    说明文档；

       ac79_videocall_demo.c中主要函数说明如下：
        1. videocall_demo_open  
            1). 这个是程序主入口， 可以在UI界面中进行调用。  
            2). 设置登录BRTC 房间需要的参数userid，appid， roomname。
            3). baidu_init_sdk()进行SDK的初始化, 初始化完成后调用baidu_login_room进行视频通话；

        2. videocall_demo_close 挂断视频通话  
            1). 可以被定时函数brtc_sdk_do_async异步调用，实现定时结束通话功能。
            2). videocall_hangup退出房间，结束通话。

        3. OnRtcMessage 为SDK消息处理函数  
            当收到消息RTC_ROOM_EVENT_ON_USER_LEAVING_ROOM表示对方挂断了， 那么本端也进行挂断。

## 测试

    -  测试demo  
       1. 使用2部手表登录相同的房间，即可进行语音通话。  

## 注意事项

    -  下面是在集成中需要注意的点：  
       1. app_sdk_A7_cfg.h中修改#define __SDRAM_SIZE__    (8 * 1024 * 1024) // size过小，lwip会出现out of memory的问题。
       2. AC79芯片易出现录制启动时爆破音的问题，需要丢掉开始的爆破数据，修改apps\wifi_story_machine\board\wl82\board_7911B.c 中的adc_platform_data结构体 .dump_num = 640 //https://doc.zh-jieli.com/AC79/zh-cn/master/module_example/audio/audio_adc.html
	   3. ac79_depandency/app_sdk_audiorecorder.c是BRTC SDK录制依赖的API,客户自行修改其中的录制增益值。
	   ac79_depandency/app_sdk_localdata_audio_play.c是BRTC SDK播放依赖的API，可以也可以其中的播放增益值。