海康摄像头视频录制保存为MP4可以直接播放

海康摄像头视频录制为MP4可以直接播放

最近项目要求需要调用客户本地海康摄像头进行视频录制上传到服务器,于是就对摄像头录制进行了研究 话不多说直接上代码

    /**
     * 开始录制视频
     *
     * @param key      摄像头的唯一标识
     * @param ip       ip地址
     * @param port     端口号
     * @param username 用户名
     * @param pass     密码
     * @return
     * @author wyh
     * 2024-05-09 18:19
     */
ResultBody resultBody = videoRecordEOService.startRecord(key, ipAddress, port, loginName, loginPwd, carNumber);

// startRecord 方法
    public ResultBody startRecord(String key, String ip, String port, String username, String pass, String carNumber) {
        //首先判断一下摄像头录制对象是否已经存在,如果存在则说明摄像头已经在录制视频了,需要保存视频,重新录制
        HkvUtil hkvUtil1 = hkvUtilMap.get(key);
        ResultBody resultBody = new ResultBody();
        if (Objects.nonNull(hkvUtil1)) {
            //如果存在  重新开始录制
           reStartRecord(hkvUtil1);
            hkvUtil1.jButtonStopSaveData();

        }
		//默认通道1
        String iChannelNum = "1";
        String preset = "";//枪机没有预置点位

        //参数Map
        Map<String, String> paramMap = new HashMap<>();
        try {
            //初始化
            if (HkvUtil.init()) {
                log.info("开始初始化, systemParam: {}",systemParam);
                // getVideoCaptureTime 录制时间,可以根据自己的需求进行设置
                log.info("录制时间, videoCaptureTime: {}",systemParam.getVideoCaptureTime());
                int videoCaptureTime =systemParam.getVideoCaptureTime();
                HkvUtil hkvUtil = SpringUtil.getObject(HkvUtil.class);
                hkvUtil.setM_sDeviceIP(ip);
                hkvUtil.setM_sDeviceUsername(username);
                hkvUtil.setM_sDevicePassword(pass);
                hkvUtil.setM_sDeviceiChannelNum(iChannelNum);
                hkvUtil.setM_sDevicePreset(preset);
                hkvUtil.setVideoCaptureTime(videoCaptureTime);
                hkvUtil.setM_sDevicePort(port);
                //开始录制
                paramMap = hkvUtil.jButtonStartSaveData();
                //如果录制失败
                if (StringUtils.equals(paramMap.get(Constant.Global.CODE), "-1")) {
                    hkvUtilMap.remove(key);
                    resultBody.setMsg("录制失败
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值