K230视频录制的问题

Viewed 71

问题描述


from media.mp4format import *
import os

def canmv_mp4_muxer_test():
print("mp4_muxer_test start")
width = 1280
height = 720
# 实例化mp4 container
mp4_muxer = Mp4Container()
mp4_cfg = Mp4CfgStr(mp4_muxer.MP4_CONFIG_TYPE_MUXER)
if mp4_cfg.type == mp4_muxer.MP4_CONFIG_TYPE_MUXER:
file_name = "/sdcard/app/tests/test.mp4"
mp4_cfg.SetMuxerCfg(file_name, mp4_muxer.MP4_CODEC_ID_H265, width, height, mp4_muxer.MP4_CODEC_ID_G711U)
# 创建mp4 muxer
mp4_muxer.Create(mp4_cfg)
# 启动mp4 muxer
mp4_muxer.Start()

frame_count = 0
try:
    while True:
        os.exitpoint()
        # 处理音视频数据,按MP4格式写入文件
        mp4_muxer.Process()
        frame_count += 1
        print("frame_count = ", frame_count)
        if frame_count >= 200:
            break
except BaseException as e:
    print(e)
# 停止mp4 muxer
mp4_muxer.Stop()
# 销毁mp4 muxer
mp4_muxer.Destroy()
print("mp4_muxer_test stop")

canmv_mp4_muxer_test()
使用的是官网上的代码,但是这个代码我实测只能支持ID=0的摄像头那路进行录制,我目前用的是ID=1的那路摄像头,麻烦问下如何实现ID=1那路的视频录制?

硬件板卡


CanMV-K230-LP4V3.0

软件版本


CanMV_K230_V3P0_micropython_v1.5-legacy-0-g413737f_nncase_v2.9.0.img

2 Answers

Mp4Container 构造函数包含 sensor_csi_id 参数,该参数用于指定视频采集对应的传感器 CSI 端口。更复杂的应用需要你调用更底层的API去写代码。没有一个封装好的demo能实现你现有的功能。

抱歉写错了,是CSI=2的那路,也就是开发板默认的摄像头,我目前用的是CSI=1那路,另外我用的是人脸识别带检测框的,想把检测框也一块录下来