weixin_42892965 2023-02-21 15:54 采纳率: 36.8%
浏览 209
已结题

java 使用javacv 连接海康摄像头的问题

java 使用javacv连接摄像头问题

img


之前是使用这样的命令去跑 vlc可以正确使用 rtmp的m3u8的流进行播放视频 现在改为javacv去进行推流

img


img


但是跑完以后vlc播放不了会直接报错 求解答

img

  • 写回答

5条回答 默认 最新

  • __AtYou__ 2023-02-21 21:37
    关注

    使用JavaCV连接海康摄像头并推流的示例代码:

    import org.bytedeco.javacpp.Loader;
    import org.bytedeco.javacpp.avcodec;
    import org.bytedeco.javacpp.avutil;
    import org.bytedeco.javacv.*;
    import java.io.IOException;
    
    public class HikvisionCameraDemo {
        public static void main(String[] args) throws IOException, FrameGrabber.Exception, FrameRecorder.Exception {
            Loader.load(avutil.class);
            Loader.load(avcodec.class);
    
            // 海康摄像头的RTSP地址
            String rtspUrl = "rtsp://192.168.1.1:554/stream1";
    
            // 推流地址
            String rtmpUrl = "rtmp://example.com/live/stream";
    
            FFmpegFrameGrabber grabber = new FFmpegFrameGrabber(rtspUrl);
            grabber.setOption("rtsp_transport", "tcp");
            grabber.setOption("stimeout", "5000000");
            grabber.start();
    
            FFmpegFrameRecorder recorder = new FFmpegFrameRecorder(rtmpUrl, grabber.getImageWidth(), grabber.getImageHeight(), grabber.getAudioChannels());
            recorder.setInterleaved(true);
            recorder.setVideoOption("preset", "ultrafast");
            recorder.setVideoOption("crf", "23");
            recorder.setVideoCodec(avcodec.AV_CODEC_ID_H264);
            recorder.setFormat("flv");
            recorder.setPixelFormat(avutil.AV_PIX_FMT_YUV420P);
            recorder.start();
    
            Frame frame;
            while ((frame = grabber.grabFrame()) != null) {
                recorder.record(frame);
            }
    
            grabber.stop();
            recorder.stop();
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 3月2日
  • 已采纳回答 2月22日
  • 修改了问题 2月21日
  • 修改了问题 2月21日
  • 展开全部

悬赏问题

  • ¥15 关于#stm32#的问题:寻找一块开发版,作为智能化割草机的控制模块和树莓派主板相连,要求:最低可控制 3 个电机(两个驱动电机,1 个割草电机),其次可以与树莓派主板相连电机照片如下:
  • ¥15 Mac(标签-IDE|关键词-File) idea
  • ¥15 潜在扩散模型的Unet特征提取
  • ¥15 iscsi服务无法访问,如何解决?
  • ¥15 感应式传感器制作的感应式讯响器
  • ¥15 如何使用SC92F8003固件库解析私有协议数据?
  • ¥15 如何在音频中嵌入字符串(水印)信息进行传递
  • ¥30 plc怎么以设计说明书申请软著
  • ¥15 硬盘识别不了,需要初始化,可我的数据怎么办
  • ¥15 lvm2被mask了,怎么unmask都没用(标签-ubuntu|关键词-apt)