启动视频流云手机实例
- (可选)若需要启动不同帧率的视频流云手机实例,需要修改cfct_config配置文件中的帧率属性值。默认值帧率为30fps:
BUILD_FPS=30
- (可选)若需启动不同抓图和初始编码参数的视频流云手机实例,需要进行以下配置。
- 从DemoVideoEngine.tar.gz中解压获取vendor文件夹,并将其中的default.prop拷贝至当前目录。
1 2 3
cd /home/kbox_video/ tar -xvf DemoVideoEngine.tar.gz vendor cp vendor/default.prop .
- 配置抓图和编码参数,修改default.prop中对应属性值,或者在启动后在容器内通过setprop命令更改对应属性,属性如表1所示。
表1 视频流引擎配置属性字段描述表 字段名称
字段描述
取值范围
默认值
vmi.video.encodertype
编码器类型配置项
当该项配置为CPU,即使用软编时,若云手机需要运行较大负载应用,为防止默认绑核方式(2容器2核)的CPU资源不足,建议更改绑核方式为绑NUMA,修改方法如下:
将cfct_config配置文件中“CPU_BIND_MODE”字段修改为“1”。
- 0:CPU(CPU软编码器编码)
- 1:VPU(外置硬件编码器编码)
- 2:GPU(暂不支持)
1:默认VPU(外置硬件编码器编码)
vmi.video.videoframetype
帧数据输出格式。
- 0:H264
- 1:YUV(暂不支持)
- 2:RGB(暂不支持)
- 3:H265(vmi.video.encodertype取值为0时不可用)
0:H264
vmi.video.frame.width
自适应分辨率宽度(必须是2的倍数)。
360~1080
720
vmi.video.frame.height
自适应分辨率高度(必须是2的倍数)。
360~2304
1280
vmi.video.frame.density
自适应分辨率屏幕像素密度。
240~480
320
vmi.video.encode.gopsize
编码GOP大小配置项。
30~3000
30:默认编码GOP大小为30
vmi.video.encode.profile
编码profile配置项(H.265编码仅支持配置main)。
- 0:baseline(仅H264支持)
- 1:main
- 2:high(仅H264支持)
0:baseline
vmi.video.encode.bitrate
编码码率
1000000~10000000
单位bps
3000000
vmi.video.encode.forcekeyframe
编码强制I帧配置项。
- 0:不触发编码强制I帧
- 1:在下一帧强制生成I帧
0:默认不触发编码强制I帧
vmi.video.encode.rcmode
编码格式参数项。
- 0:ABR 平均码率模式(暂不支持)
- 1:CRF 画质优先模式(暂不支持)
- 2:CBR 恒定码率模式
- 3:CAPPED_CRF 画质优先并限制最大码率模式(暂不支持)
2:CBR 恒定码率模式
vmi.video.encode.interpolation
补帧参数项
- 0:关闭补帧
- 1:开启补帧
1:开启补帧
vmi.audio.audiotype
音频输出格式
- 0:OPUS
- 1:PCM
0:OPUS
vmi.audio.encode.sampleinterval
音频输出采样间隔
- 5:5ms(暂不支持)
- 10:10ms
- 20:20ms(暂不支持)
10:10ms
vmi.audio.encode.bitrate
音频OPUS编码码率(bps)
13200~512000
192000
vmi.mic.audiotype
麦克风输入格式
- 0:OPUS
- 1:PCM
0:OPUS
- 如果要改变自适应分辨率的宽高,建议同步修改屏幕像素密度以达到最佳显示效果,推荐的配置说明如表2所示。
改变视频输出分辨率(与上次启动时配置不同)时,会改变AOSP系统和应用的渲染分辨率,可能会导致部分应用出现兼容性问题或渲染问题。一般此类问题可以通过重新启动应用解决,因此建议在修改分辨率前返回桌面,同时清空后台应用,以提升用户使用体验。
- 从DemoVideoEngine.tar.gz中解压获取vendor文件夹,并将其中的default.prop拷贝至当前目录。
- 启动视频流云手机。
1 2
cd /home/kbox_video/ ./cfct_video start ${index1} ${index2}
上述命令中${index1}与${index2}为设备号,其中${index2}可缺省。
例:./cfct_video start 2(创建第二号设备)
./cfct_video start 2 5(创建第二到第五号设备)
- 查看视频流云手机。
1
docker ps -a
回显示例如下:
确认所启动的容器存在,且状态正常。
- 确认视频流云手机是否启动成功,其中${index}为启动实例的编号,参见4中命令回显所示的最后一列,如android_35,${index}即为35。
1 2
docker exec -it android_${index} sh getprop sys.boot_completed
如果回显信息中sys.boot_completed显示为“1”,则表示启动成功。