更新记录

1.5.3(2020-05-11)

修复ios多次加入同一个房间报错-3301问题 新增enterRoom的回调类型

1.5.2(2020-05-01)

1.修复ios和安卓发送自定义消息的bug 2.新增旋转流方向的处理函数 3.拉流状态码tx-avplayer的添加

查看更多

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios


TX-TRTCCloud

简介

TX-TRTCCloud插件致力于让开发者一键实现腾讯的推流功能,需要uni-app的开发者门阅读腾讯文档,然后根据我的文档就可以找到对应的方法,轻松实现推流逻辑

准备

请前往https://cloud.tencent.com/product/trtc申请账号

api说明

推流组件 TX-PlayView

函数名称 参数 说明
startLocalPreview 开启本地视频的预览画面
函数名称 参数 说明
stopLocalPreview 停止本地视频采集及预览
函数名称 参数 说明
startRemoteView 参数用户的userid,比如"xiaoming" 开始显示远端视频画面
函数名称 参数 说明
stopRemoteView 参数用户的userid 停止显示远端视频画面
函数名称 参数 说明
joinRoom 加入房间
函数名称 参数 说明
leaveRoom 离开房间
函数名称 参数 说明
enterRoom 回调函数 加入房间

推流组件:TX-TXTRTCCloud

函数名称 说明
enterRoom 加入房间,具体参数见下
参数名 说明
appid 腾讯平台申请的appid(整数)
appkey 腾讯平台申请的appsecret(字符串)
userSig 可以不传appkey的签名,而是直接使用服务器签名好的userSig,这个和appkey二选其一(字符串)
roomId 房间号(整数)
userId 用户id(字符串)
role 用户角色:20 主播 21观众(整数)
scene 场景说明: 0视频聊天 1直播(整数)
callback 加入房间后的状态回调
函数名称 参数 说明
exitRoom 离开房间
函数名称 参数 说明
muteLocalVideo 参数 Bool值true or false 是否屏蔽自己的视频画面
函数名称 参数 说明
stopAllRemoteView 参数无 停止显示所有远端视频画面
函数名称 参数 说明
muteRemoteVideoStream 参数1 userId, 参数2 Bool值 true or false 暂停接收指定的远端视频流
函数名称 参数 说明
muteAllRemoteVideoStreams Bool值 true or false 停止接收所有远端视频流
函数名称 参数 说明
startLocalAudio 开启本地音频的采集和上行
函数名称 参数 说明
stopLocalAudio 关闭本地音频的采集和上行
函数名称 参数 说明
muteLocalAudio Bool值 true or false 静音本地的音频
函数名称 参数 说明
muteRemoteAudio 参数1 userId, 参数2 Bool值 true or false 静音掉某一个用户的声音
函数名称 参数 说明
muteAllRemoteAudio Bool值 true or false 静音掉所有用户的声音
函数名称 参数 说明
switchCamera 切换摄像头
函数名称 参数 说明
setAudioRoute 整型 0 扬声器 1听筒 设置音频路由
函数名称 参数 说明
destroySharedIntance 销毁 TRTCCloud 单例
函数名称 参数 说明
switchRole 20主播 21观众 转换角色
函数名称 参数 说明
enableAudioVolumeEvaluation 整形,回调间隔时间 开启音量回调
函数名称 参数 说明
sendCustomCmdMsg 参数一:cmd (1-10) 参数二:字符串 参数三:bool 参数四:bool 具体参考腾讯文档 发送消息
函数名称 参数 说明
sendSEIMsg 参数一:字符串 参数二:发送次数 发送sei
函数名称 参数 说明
setLocalViewRotation 整数 TRTCVideoRotation_0 = 0, ///< 不旋转 TRTCVideoRotation_90 = 1, ///< 顺时针旋转90度TRTCVideoRotation_180 = 2, ///< 顺时针旋转180度TRTCVideoRotation_270 = 3, ///< 顺时针旋转270度
函数名称 参数 说明
setRemoteViewRotation 参数一:userId字符串,参数二:整数 TRTCVideoRotation_0 = 0, ///< 不旋转 TRTCVideoRotation_90 = 1, ///< 顺时针旋转90度TRTCVideoRotation_180 = 2, ///< 顺时针旋转180度TRTCVideoRotation_270 = 3, ///< 顺时针旋转270度

播放组件:TX-AVPlayer

函数名称 参数 说明
startPlay 开始播放
stopPlay 停止播放
pause 暂停播放
resume 继续播放
setCacheStrategy 整型 设置播放的速度 0 快速 1 平滑 2 自动

TX-PlayView属性说明:

属性名 属性值 备注
appId 应用id(整数) (必填)
appKey 应用的签名key(字符串) 与userSig二选其一
userSig 用户的签名(字符串) 后台生成 与appKey二选其一
roomId 房间号(整数) (必填)
userId 用户id (字符串) (必填)
remoteUserId 远程的用户id (字符串) 拉取远程用户的流,获取到远程用户id时赋值
role 用户角色 (整数) 20 主播 21观众 (可选)默认20
scene 场景 (整数) 0视频聊天 1直播 (可选)可选 默认0
whiteness 美白级别 (整数) 取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显 (可选)
ruddiness 红润级别 (整数) 取值范围0 - 9;0表示关闭,1 - 9值越大,效果越明显 (可选)
beauty 美颜级别 (整数) 取值范围0 - 9; 0表示关闭,1 - 9值越大,效果越明显 (可选)
beatyStyle 美颜风格 (整数) 光滑或者自然,0 光滑 1自然 (可选)
videoResolution 分辨率 (整数) 见视频分辨率 (可选)
videoBitrate 视频上行码率 (整数) 见后文说明,单位kbps (可选)
videoFps 视频采集帧率 (整数) (可选)
resMode 分辨率模式 (整数) 0横屏 1竖屏 (可选)
enableLocalPreview 是否开启本地预览 true开启 false关闭 (可选)
enableLocalAudio 是否开启音频采集 true 开启 false关闭 (可选)
mirror 是否开启镜像模式 true 开启 false关闭 (可选)
statechange 推流中的状态回调用 (可选)
filterFileName 滤镜图片 可取值有15种,见下面说明 (可选)
remoteSubStreamUserId 远程的屏幕共享的userid (字符串)
remoteSubStreamModel 远程屏幕共享的拉流方式 0 全屏 1 自适应
txAppId 混流的appid,腾讯后台账号的appId,注意不是实时音视频的sdkAppId(整数) (可选)
cloudMixtures 混流参数,必须包含userId,可以不指定x,y,w,h,使用系统自带的,也可以自定义x,y,w,h (字符串) 回流成功后拉流地址参考腾讯文档(可选)
videoWidth 混流端指定主播的画布的宽度 (整数) (可选)
videoHeight 混流端指定主播的画布的高度 (整数) (可选)
videoX 混流端指定主播画布的x坐标 (整数) (可选)
videoY 混流端指定主播画布的y坐标 (整数) (可选)
filterFileName可取值如下:
bailan.png
chaotuo.png
chunzhen.png
fennen.png
huaijiu.png
landiao.png
langman.png
normal.png
qingliang.png
qingxin.png
rixi.png
weimei.png
white.png
xiangfen.png
yinghong.png
yuanqi.png
yunshang.png

TX-AVPlayer属性说明

属性名 属性值 备注
url 播放地址 (必填)
playModel 播放模式 画面裁剪模式: 0 全屏 1 图像适应屏幕,保持画面完整 (可选)
playRotation 设置画面方向 Ios : 0 HOME 键在右边,横屏模式 1 HOME 键在下面,手机直播中最常见的竖屏直播模式 2 键在左边,横屏模式 3 HOME 键在上边,竖屏直播. andriod: 0 竖屏 270 横屏模式 ios和安卓在这个属性上有差别,需要分平台判断,如果用竖屏模式可以不用设置这个,使用默认值,如果设置错误会导致安卓不能全屏
statechange 状态回调 (可选)

视频分辨率

常量 描述
TRTCVideoResolution_120_120 = 1 建议码率80kbps
TRTCVideoResolution_160_160 = 3 建议码率100kbps
TRTCVideoResolution_270_270 = 5 建议码率200kbps
TRTCVideoResolution_480_480 = 7 建议码率350kbps
TRTCVideoResolution_160_120 = 50 建议码率100kbps
TRTCVideoResolution_240_180 = 52 建议码率150kbps
TRTCVideoResolution_280_210 = 54 建议码率200kbps
TRTCVideoResolution_320_240 = 56 建议码率250kbps
TRTCVideoResolution_400_300 = 58 建议码率300kbps
TRTCVideoResolution_480_360 = 60 建议码率400kbps
TRTCVideoResolution_640_480 = 62 建议码率600kbps
TRTCVideoResolution_960_720 = 64 建议码率1000kbps
TRTCVideoResolution_160_90 = 100 建议码率100kbps
TRTCVideoResolution_256_144 = 102 建议码率150kbps
TRTCVideoResolution_320_180 = 104 建议码率250kbps
TRTCVideoResolution_480_270 = 106 建议码率350kbps
TRTCVideoResolution_640_360 = 108 建议码率550kbps
TRTCVideoResolution_960_540 = 110 建议码率850kbps
TRTCVideoResolution_1280_720 = 112 摄像头采集 - 建议码率1200kbps
TRTCVideoResolution_1920_1080 = 114 屏幕分享 - 建议码率800kbps

使用说明: 见示例工程中的index.nvue文件

跑通代码需要自定义基座,并且使用ios和安卓真机运行

接入流程使用自己的appId和appKey替换demo中的appId和appKey可以快速接入

打包主要步骤如下,以安卓为例子

一定要自己制作证书,使用DCloud公有证书会提示插件的方法找不到,重要的事情说三遍

如果不会制作安卓证书参考http://www.appuploader.net/appuploader/onlinetools.php

隐私、权限及商业化声明

说明:除收费原生SDK插件外,其他插件或示例工程默认均为MIT开源协议。如提供了github地址,并在github上专门标注了开源协议,则以github标注为准。

1. 本插件需要申请的手机端权限列表:

NSCameraUsageDescription NSMicrophoneUsageDescription

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

见腾讯说明文档

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问