欢迎访问我的GitHub
本篇概览
- 新建文件RecordCamera.java,这是AbstractCameraApplication的子类,其代码很简单,接下来按上图顺序依次说明
- 《JavaCV的摄像头实战之一:基础》中已部署好了媒体服务器,这里定义一个成员变量保存媒体服务器的推流地址,请您按自己的情况调整:
- 还要准备一个成员变量,推流的时候在帧上添加时间戳:
- 将视频帧推送到媒体服务器的功能来自FrameRecorder,这是个抽象类,本篇用到的是其子类FFmpegFrameRecorder,所以定义FrameRecorder类型的成员变量:
- 然后是初始化操作,请注意各项参数设置(1280*720分辨率摄像头的情况):
- 接下来是output方法,关键是recorder.record,另外要注意时间戳的计算和设置:
- 最后是处理视频的循环结束后,程序退出前要做的事情,即关闭帧抓取器:
- 另外还要注意两帧之间的延时,由于推流涉及到 络,因此不能像本地预览那样根据帧率严格计算,实际间隔要更小一些:
- 至此,推流功能已开发完成,再写上main方法,注意参数600表示抓取和录制的操作执行600秒:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!