FFmpeg+mediamtx 实现将本地摄像头推送成RTSP流

概要

FFmpeg+mediamtx实现将本地摄像头推送成RTSP流

FFmpeg 版本号为:N-114298-g97d2990ea6-20240321

mediamtx 版本号为:v1.6.0



推流过程

摄像头数据,经过ffmpeg的推流代码,推送到本地的收流服务器上,这样就可以通过流地址来直接查看摄像头画面了
在这里插入图片描述

实现过程

安装FFmpeg

由于我是Windows平台,直接去Github下载编译好的FFmpeg可执行文件就可以了,然后配置一下环境变量
下载FFmepg 传送门
在这里插入图片描述
配置环境变量
在这里插入图片描述

安装Mediamtx

也是直接去Github下载 传送门
在这里插入图片描述



启动推流

启动收流服务器,直接双击下载好的mediamtx即可
在这里插入图片描述
运行FFmepg推流代码

如果是Rtmp流就使用:

ffmpeg -f dshow -i video="USB Camera" -vf scale=1280:720 -framerate 10 -c:v libx264 -c:a aac -f flv rtmp://127.0.0.1:1935/hls/test

如果是Rtsp流就使用:

ffmpeg -f dshow -i video="USB Camera" -vf scale=1280:720 -framerate 10 -c:v libx264 -c:a aac -f rtsp -rtsp_transport tcp rtsp://127.0.0.1:8554/hls/test

在这个命令中:

  • -f dshow -framerate 10 -i video=“USB Camera” 指定使用dshow输入设备来捕获本地摄像头,名称为"USB Camera",并设置输出帧率为10。
  • -c:v libx264 指定视频编码器为libx264,您也可以选择其他视频编码器。
  • -c:a aac 指定音频编码器为AAC,您也可以选择其他音频编码器。
  • -f rtsp 指定输出格式为RTSP。
  • rtmp://127.0.0.1:1935/hls/test是流地址,这个可以自定义,一般要用二级地址

如图出现这个就成功了:

在这里插入图片描述
这时,打开vlc输入我们的推流地址,就能看到摄像头画面了
在这里插入图片描述

相关推荐

  1. 通过ffmpeg实现rtsp rtmp rtmps

    2024-03-26 13:08:03       32 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-26 13:08:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-26 13:08:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-26 13:08:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-26 13:08:03       20 阅读

热门阅读

  1. C语言 strcmp

    2024-03-26 13:08:03       17 阅读
  2. 从零学算法212

    2024-03-26 13:08:03       15 阅读
  3. 计算机网络(02)

    2024-03-26 13:08:03       18 阅读
  4. 蓝桥杯刷题_day2

    2024-03-26 13:08:03       17 阅读
  5. 网络的warm up

    2024-03-26 13:08:03       21 阅读
  6. 教程2_视频入门

    2024-03-26 13:08:03       16 阅读
  7. c语言编程题目:水仙花数

    2024-03-26 13:08:03       21 阅读
  8. ADP论文学习-零和或非零和博弈问题

    2024-03-26 13:08:03       24 阅读
  9. C++语法|C++八股|内存泄漏杂谈

    2024-03-26 13:08:03       18 阅读