测试指南
运行测试用例
recorder_demo
recorder_demo 主要功能是录制 MP4 文件。
测试准备条件
录像支持的 MP4 封装,支持 DVP 输入源和文件输入源。
测试步骤
挂载 SD 卡
测试视频一般比较大,所以需要准备一张 SD 卡,并格式化成 FAT32 格式,将测试视频 copy 到 SD 卡上。
插入 SD 卡启动,若启动后,系统没有自动挂载 SD 卡,使用下面命令挂载:
bash
mount sd0/sd0p0 /elm # 将 SD 卡挂在到根目录下,"sd0 或 sd0p0" - SD 卡设备节点, "/" - 根目录 , "elm"-fat32 文件系统
1
将 recorder.config 放到 SD 卡中,根据用户需要配置 recorder.config
,然后执行步骤 2。
recorder.config 配置说明如下:
json
{
"video_in_file": "/sdcard/19030915.yuv", // 输入源为文件时读取该视频文件
"audio_in_file": "/sdcard/audio.pcm", // 不支持
"output_file": "/sdcard/", // 输出录像文件路径
"file_duration": 40,
"file_num": 0,
"file_muxer_type": 0, // 录像封装类型,目前仅支持MP4
"qfactor": 80, // 录像qp值
// 视频配置参数
"video": {
"enable": 1, // 开关
"codec_type": 4097, // 录像编码格式,目前仅支持MJPEG
"out_width": 640, // 录像视频宽,输入源为文件时必须和19030915.yuv分辨率一致
"out_height": 480, // 录像视频高,输入源为文件时必须和19030915.yuv分辨率一致
"out_framerate": 25, // 录像视频帧率
"out_bitrate": 1300, // 录像视频码率,目前无效,码率大小仅受qfator影响
"in_width": 320, // 输入分辨率,目前无效
"in_height": 240, // 输入分辨率,目前无效
"in_pix_format": 32 // 输入图像格式,目前无效
},
// 音频配置参数,目前无效
"audio": {
"enable": 0,
"codec_type": 1,
"out_bitrate": 128000,
"out_samplerate": 48000,
"out_channels": 2,
"out_bits_per_sample": 16,
"in_samplerate": 48000,
"in_channels": 2,
"in_bits_per_sample": 16
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
运行 recorder_demo recorder_demo 支持设置录像输入源、录像时间、录像配置等命令。
bashrecorder_demo -h # 查看使用说明 printf("Usage: recorder_demo [options]:\n" "\t-i video input source\n" "\t-t recorder time(s)\n" "\t-c recorder config file\n" "\t-h help\n\n" "Example1: recorder_demo -i dvp -t 60 -c /sdcard/recorder.config\n" "Example2: recorder_demo -i file -t 60 -c /sdcard/recorder.config\n");
1
2
3
4
5
6
7
8运行 recorder_demo_cmd recorder_demo 支持设置停止录像、抓拍、调试等命令。
bashrecoder_demo_cmd help # 查看使用说明 printf("Usage: recoder_demo_cmd [options]:\n" "\tstop stop recorder\n" "\tsnap snap one frame\n" "\tdebug get debug info\n" "\t help\n\n");
1
2
3
4
5
6
测试预期
- 从 DVP 视频输入,实现 MJPEG 编码后,录像正常。
- 从文件读取 YUV 数据,实现 MJPEG 编码后,录像正常。