**开始录像:**
~~~
public native int StreamRecordCtrlEx(int userid, int bstartrecord, int flags, int param, String szUserStr);
~~~
| 参数 | 说明 |
| --- | --- |
| userid | 用户id(-1表示当前用户) |
| bstartrecord | 默认为1 |
| flags | 备注1 |
| param | 默认为0 |
| szUserStr | 备注2 |
~~~
备注1:
flags参数决定模式由这个相加
BRAC_RECORD_FLAGS_VIDEO = 0x00000001; // 录制视频
BRAC_RECORD_FLAGS_AUDIO = 0x00000002; // 录制音频
BRAC_RECORD_FLAGS_SERVER = 0x00000004; // 服务器端录制
BRAC_RECORD_FLAGS_MIXAUDIO = 0x00000010; // 录制音频时,将其它人的声音混音后录制
BRAC_RECORD_FLAGS_MIXVIDEO = 0x00000020; // 录制视频时,将其它人的视频迭加后录制
BRAC_RECORD_FLAGS_ABREAST = 0x00000100; // 录制视频时,将其它人的视频并列录制
BRAC_RECORD_FLAGS_STEREO = 0x00000200; // 录制音频时,将其它人的声音混合为立体声后录制
BRAC_RECORD_FLAGS_SNAPSHOT = 0x00000400; // 拍照
BRAC_RECORD_FLAGS_LOCALCB = 0x00000800; // 触发本地回调
BRAC_RECORD_FLAGS_STREAM = 0x00001000; // 对视频流进行录制(效率高,但可能存在视频方向旋转的问题)
BRAC_RECORD_FLAGS_USERFILENAME = 0x00002000; // 用户自定义文件名
备注2:
szUserStr json字符串
szUserStr = {
"recordlayout":2,//几个画面
"watermark":szJsonBuf4Img //详情见图片水印
"streamlist":[//视频流
{
"userid":-1,
"streamindex":1,
"recordindex":0
}
]
};
~~~
| 模式 | recordindex | 录像屏幕显示 |
| --- | --- | --- |
| 并列模式 | 0 | 左屏 |
| 并列模式 | 1 | 右屏 |
| 画中画 | 0 | 右小角小屏 |
| 画中画 | 1 | 大屏 |
**录入图片:**
调用录像开始接口后执行ppt图片录入方法如下:
~~~
执行方法: SetSDKOption(BRAC_SO_RECORD_INSERTIMAGE,PICJSON);
BRAC_SO_RECORD_INSERTIMAGE = 146;//录像图片
PICJSON 类型:json 字符串
PICJSON = {
streamindex:0,//这个是在第几个屏显示
filename:filename //图片地址
};
PICJSON 包含关键对象key键有:recordindex:
SetSDKOption(BRAC_SO_RECORD_INSERTIMAGE,PICJSON);
~~~
每执行一次就插入一张图片到录像视频,图片的更改可通过filename这个更改图片url。
**添加图片水印:**
~~~
szJsonBuf4Img
{
alpha: 50, //图片透明度,默认为100,可不传(不传时,将应用默认值)
posx: 8, //图片水印在x轴方向上的起始位置(百分比,范围0~100)
posy: 8, //:图片水印在y轴方向上的起始位置(百分比,范围0~100)
overlayimgwidth: 0, //图片的宽度,可传0,表示应用图片的原始宽度
overlayimgheight: 0, //图片的高度,可传0,表示应用图片的原始高度
imagepath: "d:\\LOGOB.png" //图片的路径,传入图片的本地路径(绝对路径)
}
~~~