JRTCSDK-iOS v2401.0
视频客服 API 文档
载入中...
搜索中...
未找到
属性 | 所有成员列表
JRTCRecordLocalParam类 参考

本地录制参数 更多...

#import <JRTCRecordLocalParam.h>

属性

int frameRate
 
VideoMergeMode mergeMode
 
IntelligentMergeMode intelligentMergeMode
 
ScsMergeMode scsMergeMode
 
int videoWidth
 
int videoHeight
 
int iBitrate
 
NSString * filePath
 
bool recVideo
 
bool recAudio
 
bool includeSelf
 
NSDictionary< NSString *, NSString * > * watermarkTextDic
 
NSString * configFilePath
 
NSArray< JRTCRecordLocalLayout * > * layoutArray
 

详细描述

本地录制参数

属性说明

◆ configFilePath

- (NSString*) configFilePath
readwritenonatomiccopy

录制配置文件路径 例如: xxx\record.cfg

配置文件说明:

* {
*      "default" : {   //录制配置类型, 固定值.<br/>
*          "videoRecord" : {   //视频录制配置, 固定值.
*               "layout" : [        //自定义布局,mergeMode 字段为自定义布局模式 4 时生效, JSON数组格式, 可同时设置多个, 实际应用时通过窗口号区分.
*                   {
*                       "posX" : 0.25,                  //画面左上角的横坐标(双精度浮点数类型), 代表占画面总宽度的比例.
*                       "posY" : 0.26805556000000003,   //画面左上角的纵坐标(双精度浮点数类型), 代表占画面总高度的比例.
*                       "width" : 0.1140625,            //画面的宽度(双精度浮点数类型), 代表占画面总宽度的比例.
*                       "height" : 0.47916666000000002, //画面的高度(双精度浮点数类型), 代表占画面总高度的比例.
*                       "window" : 0                    //窗口号(大于或等于的整数), 在使用属性 {@link layoutArray layoutArray} 自定义视频窗口布局时需要, 对应于用户自定义的位置信息 {@link JRTCRecordLocalLayout.setPosition: setPosition} 设置布局位置.
*                   },
*                   {
*                       "posX" : 0.49609375,            //画面左顶点的横坐标(双精度浮点数类型), 范围为[0, 1], 代表占画面总宽度的比例.
*                       "posY" : 0.033333334999999999,  //画面左顶点的纵坐标(双精度浮点数类型), 范围为[0, 1], 代表占画面总高度的比例.
*                       "width" : 0.36406250000000001,  //画面的宽度(双精度浮点数类型), 范围为[0, 1], 代表占画面总宽度的比例.
*                       "height" : 0.94027775999999996, //画面的高度(双精度浮点数类型) 范围为[0, 1], 代表占画面总高度的比例.
*                       "window" : 1                    //窗口号(大于或等于的整数), 在使用属性 {@link layoutArray layoutArray} 自定义视频窗口布局时需要, 对应于用户自定义的位置信息 {@link RecordLayout#setPosition(int)} setPosition} 设置布局位置.
*                   }
*               ],
*               "mergeBitrate" : 0, //设置录制视频的码率, 单位为千比特每秒(kbps), 默认值为0, 此时码率由内部媒体算法进行自适应调节
*               "mergeFPS" : 30,    //设置录制视频的帧率, 单位为每秒传输帧数(fps), 默认值为20.
*               "mergeWidth" : 1280,//设置录制视频的宽度, 默认值为 640
*               "mergeHeight" : 720,//设置录制视频的高度, 默认值为 360
*               "mergeMode" : 4,    //设置媒体推流的视频合并模式, 默认值为智能布局 5, 目前可支持自定义布局 4 和智能布局 5.
*               "mergeModeI" : 1,   //设置智能分屏模式下的布局样式(无屏幕共享), 默认值为自由布局 1, 有效值参考 {@link IntelligentMergeMode 智能分屏模式下的布局样式(无屏幕共享)}, 本字段仅在 mergeMode 为智能布局 5 时生效.
*               "screenShareType" : 1 //设置智能分屏模式下的布局样式(有屏幕共享), 默认值为屏幕共享独占 1, 有效值参考 {@link ScsMergeMode 智能分屏模式下的布局样式(有屏幕共享)}, 本字段仅在 mergeMode 为智能布局 5 时生效.
*           },
*           "watermark" : { //水印配置, 固定值.
*               "picture" : [   //图片水印配置, 固定值, 图片水印目前只支持 png 格式.
*                   {
*                       "enable" : true,    //是否启用(布尔类型).
*                       "pcUrl" : "http://xxx/xxx.png",  //图片水印链接地址.
*                       "index" : 1,        //水印的序号.
*                       "state" : 1,        //水印的状态. 设置值为1表示使用水印,设置值为2表示关闭水印.
*                       "posX" : 0,         //相对于基准位置的水平偏移值(整数类型), 负值向左偏移, 正值向右偏移, 实际大小非比例值.
*                       "posY" : 600        //相对于基准位置的垂直偏移值(整数类型), 负值向上偏移, 正值向下偏移, 实际大小非比例值.
*                   }
*               ],
*               "text" : {  //文本水印配置, 固定值.
*                   "enable" : true,    //是否启用(布尔类型).
*                   "memo" : [          //文本水印样式配置(JSON数组类型), 如果不设置就使用默认全局样式.
*                       "Dialogue: 0,0:00:00.0,60:00:00.0,Default,,0,0,0,,{\\pos(34, 56)\\an7}菊风文本水印1$@name@$",
*                       "Dialogue: 0,0:00:00.0,60:00:00.0,Default,,0,0,0,,{\\pos(50, 100)\\an7}菊风文本水印2"
*                       //数组的每个元素为一条 ASS 字幕的 event 字符串, 支持通过标签来设置各种文字特效, 添加的event字符串必须是utf-8编码, 否则中文会出现乱码. ASS 格式规范下载地址: http://www.perlfu.co.uk/projects/asa/ass-specs.doc
*                       //其中以 "$@" 开始并且以 "@$" 结束的部分内容"$@name@$"将提取出关键字"name", 通过解析用户通过属性 {@link watermarkTextDic watermarkTextDic} 设置的自定义文本水印信息获取其对应值, "$@name@$"格式的内容被其对应值替换后就是实际应用的 event 字符串, "$@xxx@$" 格式的内容支持同时设置多个.
*                   ],
*                   "style" : {         //文本水印格式, 固定值.
*                       "enable" : true,        //格式是否启用(布尔类型).
*                       "alignment" : 0,        //对齐方式, 有效值参考 0:左对齐;1:居中对齐;2:右对齐;
*                       "backColor" : 16777215, //背景颜色(整数类型), 10进制颜色代码.
*                       "blod" : false,         //是否使用粗体(布尔类型).
*                       "fontColor" : 16777215, //字体颜色(整数类型), 10进制颜色代码.
*                       "fontFile" : "SourceHanSansCN-Normal.otf",//字体文件路径,Windows系统上只能用相对路径(相对配置文件所在路径),不可以带盘符,建议和配置文件放在同个目录下.
*                       "fontSize" : 36,        //字体尺寸(整数类型).
*                       "italic" : true,        //是否使用斜体(布尔类型).
*                       "underline" : false     //是否带有下划线(布尔类型).
*                   }
*               },
*               "timestamp" : { //时间戳水印配置, 固定值.
*                   "enable" : true,    //是否启用(布尔类型).
*                   "basePosType" : 0,  //水印基准位置类型(整数类型), 有效值参考 0:左上;1:左下;2:右上;3:右下;4:居中;
*                   "borderWidth" : 2,  //字体边界宽度(整数类型), 取值范围为[0, 5].
*                   "fontFile" : "SourceHanSansCN-Normal.otf",//字体文件路径,Windows系统上只能用相对路径(相对配置文件所在路径),不可以带盘符,建议和配置文件放在同个目录下.
*                   "fontColor" : 0, //字体颜色(整数类型), 有效值参考 0:红色;1:黄色;2:绿色;3:青色;4:蓝色;5:洋红色;6:白色;7:中和色;8:黑色;
*                   "fontSize" : 36,    //字体尺寸(整数类型).
*                   "isMs" : true,      //是否显示毫秒值(布尔类型).
*                   "posX" : 0,         //相对于基准位置的水平偏移值(整数类型), 负值向左偏移, 正值向右偏移, 实际大小非比例值.
*                   "posY" : 0          //相对于基准位置的垂直偏移值(整数类型), 负值向上偏移, 正值向下偏移, 实际大小非比例值.
*               }
*           }
*       }
* }

◆ filePath

- (NSString*) filePath
readwritenonatomiccopy

保存文件的完整路径,必须包含文件名(xxx.mp4或者只录音的话xxx.aac)

◆ frameRate

- (int) frameRate
readwritenonatomicassign

录制帧率, 默认15,当使用配置文件时,该参数无效

◆ iBitrate

- (int) iBitrate
readwritenonatomicassign

录制码率,当使用配置文件时,该参数无效

◆ includeSelf

- (bool) includeSelf
readwritenonatomicassign

录制是否包含自己,默认true

◆ intelligentMergeMode

- (IntelligentMergeMode) intelligentMergeMode
readwritenonatomicassign

MergeMode为智能分屏模式下的布局样式(无屏幕共享),当使用配置文件时,该参数无效

◆ layoutArray

- (NSArray<JRTCRecordLocalLayout*>*) layoutArray
readwritenonatomicstrong

录制成员布局列表,mergeMode 为自定义布局需要,需要结合配置文件一起使用

◆ mergeMode

- (VideoMergeMode) mergeMode
readwritenonatomicassign

媒体录制视频合并模式,默认智能分屏模式,当使用配置文件时,该参数无效

◆ recAudio

- (bool) recAudio
readwritenonatomicassign

是否录制音频,默认true

◆ recVideo

- (bool) recVideo
readwritenonatomicassign

是否录制视频,默认true

◆ scsMergeMode

- (ScsMergeMode) scsMergeMode
readwritenonatomicassign

MergeMode为智能分屏模式下的布局样式(有屏幕共享),当使用配置文件时,该参数无效

◆ videoHeight

- (int) videoHeight
readwritenonatomicassign

录制视频的高度,当使用配置文件时,该参数无效

◆ videoWidth

- (int) videoWidth
readwritenonatomicassign

录制视频的宽度,当使用配置文件时,该参数无效

◆ watermarkTextDic

- (NSDictionary<NSString*, NSString*>*) watermarkTextDic
readwritenonatomicstrong

录制视频文本水印,需要结合配置文件一起使用