检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
app_key为华为云SparkRTC针对每个app生成的鉴权密钥,需要安全保存,谨防泄漏。您可以通过以下方式获取: 登录实时音视频控制台。 在左侧导航栏中,选择“应用管理”,进入应用管理页面。 在目标应用行单击应用名称,进入应用详情页面。 “鉴权私钥”可见状态下,复制应用的鉴权私钥。 图1 应用详情界面 父主题:
Info, eventHandler); m_engineEventHandler:引擎回调句柄,指定一个回调事件。SDK通过指定的事件通知应用程序的运行事件,如加入或离开房间等,具体请参见事件回调(IHRTCEngine)。 engineInfo:结构体具体请参见HRTCEngineConfig。
单击“创建”,完成应用的创建。 应用成功创建后,您可以在应用列表中查看到新创建的应用信息,包括应用名称、应用ID、域名、创建时间和状态。您还可以根据实际情况进行如下操作: 单击,根据不同状态筛选应用。 单击,刷新应用的列表信息。 单击,自定义应用的列表项。 单击,复制应用ID。
基本使用逻辑 创建新的项目工程,导入 SDK 后,需要创建客户端并获取本地音视频设备信息。 创建本地流并初始化。 当用户加入房间后,将通过回调的方式通知房间内的其他用户,收到用户加入的回调后,可以对音视频流进行订阅、取消订阅等其它操作。 在会中,也可以对本地录音或播放设备等进行配置。
什么是Signature? 为保证RTC的通信安全,当用户加入频道时,华为云SparkRTC服务需要对其进行接入鉴权。 图1 鉴权原理 华为云SparkRTC系统使用数字签名作为接入鉴权方式,需要在相应的SDK的初始化或登录函数中提供“app_id”、“room_id”、“use
0:方法调用成功。 > 0:方法调用失败。具体请参见HRTCErrorCode。 使用该接口设置辅流编码参数,目前策略会根据获取的区域宽高比对设置的宽高进行调整,使用户设置的宽高比与获取的宽高比保持一致,因此,用户实际收流分辨率与设置分辨率有可能不同。 父主题: IHRTCEngine
ER_BYTE_ARRAY)); } 加入房间 参考接口调用流程中加入房间的时序图步骤加入房间。 渲染远端视频流 加入房间后,可以通过在onRenderExternalVideoFrame回调中进行视频帧的渲染。 public void onRenderExternalVideoFrame(String
产品优势 全球实时音视频网络 提供覆盖全球的高质量、大规模的实时音视频网络。 自研高效调度算法,具有全网调度能力。丰富的节点资源储备,保证端到端平均时延小于200ms。 低卡顿 基于华为30年音视频编解码能力和优异弱网对抗能力80%丢包下音频通话流畅,50%丢包下视频通话流畅。 全平台覆盖,极简接入
功能描述 实时视频传输过程中,HWRtcEngine SDK通常会启动默认的视频模块进行采集和渲染。在以下场景中,您可能会发现默认的视频模块无法满足开发需求: app中已有自己的视频模块。 需要使用自定义的采集或播放处理。 某些视频采集设备被系统独占。 接口调用流程 实现自定义视频采集
加入房间前调用主引擎的setExternalVideoCapture 加入房间前调用此接口打开视频自采集功能。一旦开启后,将无法切换。 //开启自采集功能 [rtcEngine setExternalVideoCapture:YES]; 加入房间 参考接口调用流程中加入房间的时序图步骤加入房间。
自定义视频采集 功能描述 如果您需要使用自定义的美颜库或有前处理库,则需要自己采集和处理摄像头拍摄画面,您可以通过SparkRTC SDK的setExternalVideoCapture接口开启 自采集功能。然后使用pushExternalVideoFrame接口推送外部视频数据到SparkRTC
功能描述 实时音频传输过程中,HWRtcEngine SDK通常会启动默认的音频模块进行采集和渲染。在以下场景中,您可能会发现默认的音频模块无法满足开发需求: app中已有自己的音频模块。 需要使用自定义的采集或播放处理。 某些音频采集设备被系统独占。 接口调用流程 实现音频自采集和音频自渲染
实时音频传输过程中,HWRtcEngine SDK通常会启动默认的音频模块进行采集和渲染。在以下场景中,您可能会发现默认的音频模块无法满足开发需求: 需要使用自定义的采集或播放处理。 某些音频采集设备被系统独占。 接口调用流程 实现过程 加入房间前调用主引擎的setExternalAudioCapture
自定义视频采集 功能描述 如果您需要使用自定义的美颜库或有前处理库,则需要自己采集和处理摄像头拍摄画面,您可以通过SparkRTC SDK的setExternalVideoCapture接口开启自采集功能。然后使用pushExternalVideoFrame接口推送外部视频数据到SparkRTC
SDK通常会启动默认的音频模块进行采集和渲染。在以下场景中,您可能会发现默认的音频模块无法满足开发需求: app中已有自己的音频模块。 需要使用自定义的采集或播放处理。 某些音频采集设备被系统独占。 注意事项 当前只支持PCM数据格式处理。 接口调用流程 实现过程 加入房间前调用主引擎的set
e SDK 通常会启动默认的音频模块进行采集和渲染。在以下场景中,您可能会发现默认的音频模块无法满足开发需求: app中已有自己的音频模块。 需要使用自定义的采集或播放处理。 某些音频采集设备被系统独占。 接口调用流程 实现过程 加入房间前调用主引擎的setExternalAudioCapture
参考接口调用流程中加入房间的时序图步骤加入房间。 渲染远端视频流 当远端用户加入房间后会触发onRemoteUserOnline回调,在该回调中使用pullRemoteVideo方法开启接收远端用户的视频流,如果不开启,无法渲染远端视频流。 //远端用户加入房间后触发的回调 void H
b版本的SDK,您可以根据实际需求进行SDK的集成和开发。 4 实现SparkRTC基本功能 Android SDK功能开发 iOS SDK功能开发 MAC SDK功能开发 Windows SDK功能开发 Web SDK功能开发 集成SDK后,您需要实现SparkRTC的基本功能
音视频传输过程中,可以对采集到的音视频数据进行前处理和后处理,获取想要的播放效果。 对于有自行处理音视频数据需求的场景,HWRtcEngine SDK提供原始数据功能,您可以在将数据发送给编码器前进行前处理,对捕捉到的音频信号或视频帧进行修改,也可以在将数据发送给解码器后进行后处理,对接收到的音频信号或视频帧进行修改。
在“API凭证”页面的项目列表中查看项目ID。 图1 获取项目ID 调用API获取项目ID 您还能通过调用查询指定条件下的项目信息API获取项目ID。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects/”,其中{Endpoint}为IAM的终端节点可以从地区和终端