当前位置: 首页 > news >正文

香橙派Orange Pi 5 Max通过FFmpeg+mediamtx(rtsp-simple-server)实现USB摄像头RTSP推流

一、安装流媒体服务器Media MTX

介绍:MediaMTX(原 rtsp-simple-server)是一款轻量级、零依赖、跨平台的开源流媒体服务器,用 Go 编写,可看作“协议万能转换器 + 低延迟转发器”。核心定位是:任何协议进、任何协议出,一条命令拉起服务,单机即可承载 50+ 路 720p 并发,内存占用 < 100 MB

参考:流媒体服务器Media MTX使用教程_mediamtx-CSDN博客https://blog.csdn.net/zyy29182918/article/details/144185737?ops_request_misc=&request_id=&biz_id=102&utm_term=mediamtx&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-144185737.142^v102^control&spm=1018.2226.3001.4187

官网链接:安装 |MediaMTXhttps://mediamtx.org/docs/kickoff/install

下载对应版本安装包,进行解压安装,并运行:

tar -xvzf mediamtx-linux-amd64.tar.gz cd mediamtx-linux-amd64 ./mediamtx

启动成功。

二、安装FFmpeg

介绍:FFmpeg 是一个开源的多媒体框架,它包括了一套可以用来记录、转换数字音频、视频,并能将其转换成流的命令行工具,支持多种音视频格式的解码和编码,以及音视频的转换、处理和播放。

参考:ffmpeg的安装和使用教程-CSDN博客https://blog.csdn.net/molangmolang/article/details/141972015?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522f3f9d9374d7b33d9d53afe2dd8d4757e%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=f3f9d9374d7b33d9d53afe2dd8d4757e&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_positive~default-1-141972015-null-null.142^v102^control&utm_term=FFmpeg&spm=1018.2226.3001.4187

使用apt快速安装。

sudo apt update #更新软件包列表 sudo apt install ffmpeg #安装FFmpeg ffmpeg -version #验证安装,如果显示出版本信息,则安装成功

三、USB免驱摄像头连接

usb摄像头默认地址:/dev/video0,/dev/video1

通过指令查看所有设备:ls /dev/video*

使用v4l2-ctl --list-devices命令确认摄像头设备节点(如/dev/video0

四、启动运行FFmpeg进行RTSP推流

软件编码命令:

ffmpeg -f v4l2 -input_format mjpeg -video_size 1280x720 -framerate 30 -i /dev/video0 \ -vcodec libx264 -preset ultrafast -tune zerolatency -b:v 2000k \ -f rtsp rtsp://localhost:8554/mystream

优化推流参数1:

ffmpeg -f v4l2 -input_format mjpeg -video_size 848x480 -framerate 20 -i /dev/video0 \ -vcodec libx264 \ -preset superfast \ -tune zerolatency \ -x264-params "keyint=20:min-keyint=20:no-scenecut" \ -b:v 1000k -maxrate 1000k -bufsize 500k \ -f rtsp -rtsp_transport tcp -muxdelay 0.1 \ rtsp://localhost:8554/mystream

优化推流参数2:

ffmpeg -fflags nobuffer -flags low_delay -f v4l2 -input_format mjpeg -video_size 640x480 -framerate 15 -i /dev/video0 \ -vcodec libx264 -preset superfast -tune zerolatency \ -x264-params "keyint=30:min-keyint=30:no-scenecut" \ -crf 30 -maxrate 800k -bufsize 400k \ -f rtsp -rtsp_transport tcp -muxdelay 0 rtsp://localhost:8554/mystream

运行后输出:

五、验证测试

VLC:开源、跨平台、免费且无广告的多媒体播放与流媒体工具

官方下载:VLC media player,最棒的开源播放器 - VideoLAN

局域网内客户端(如电脑或手机)用VLC拉流观看:
在VLC中打开:网络串流-> 输入地址:rtsp://IP地址:8554/mystream

效果如图:

额外例子,通过yolov5调用边缘设备香橙派的RTSP视频流进行识别检测:

http://www.cnnetsun.cn/news/9452.html

相关文章:

  • 直播带货APP开发的核心流程:推流端、观看端与运营端后台搭建指南
  • Wan2.2-T2V-A14B生成火星殖民基地建设构想视频
  • TSF输入法框架开发全指南:从COM组件到拼音输入法落地
  • 在线考试软件哪个好用?
  • 在AWS Athena中使用json_extract_scalar函数对某个json字段进行过滤和分组统计
  • 力扣 22. 括号生成:C++ 实现回溯 + 动态规划双解法,面试高频题必掌握
  • 【开题答辩全过程】以 基于Django的大学生理财及记账系统设计与实现为例,包含答辩的问题和答案
  • Rust的移动语义
  • 生物毒性在线分析仪:监测水体毒性的利器
  • english-13-word-25-12-11 ,get down to business 言归正传 , peripheral devices 从属设备【蓝牙主机host从机Peripheral】
  • 3倍效率!用AI自动修复Vue属性传递问题
  • OpenJob完全指南:如何快速上手高性能分布式任务调度框架
  • 基于密集型复杂城市场景下求解无人机三维路径规划的Q-learning 算法研究附Matlab代码
  • vnpy可视化技术终极指南:从零构建专业K线图表交易界面
  • 降息利好板块
  • SEO网站优化,百度就是不收录自己的网站解决方法
  • Dify 1.7.0发布后,为什么90%的AI工程师都在关注它的音频处理能力?
  • 金融级数据保护,手把手教你用PHP实现RSA加密全流程
  • 企业核心竞争力的评估方法
  • 记录va_list重复使用导致的crash
  • 二十三种设计模式(十)--外观模式
  • FSNotes深度体验:从笔记混乱到高效管理的完美蜕变
  • 【大模型必读书籍】轻松入门Cursor与MCP:AI辅助编程,零基础也能成为编程高手!
  • 【Frida Android】实战篇14:非标准算法场景 Hook 教程
  • sfy recommend
  • Wan2.2-T2V-A14B能否生成核酸检测流程指引动画?公共信息传达
  • 告别盈利迷茫!让光储项目赚钱更有依据
  • 深圳便利店鸡尾酒哪家好?浅醺猫定义Z世代“精品自调“新标准
  • 运维工程师转网安要学什么?有什么好处?
  • Wan2.2-T2V-A14B如何实现烟雾扩散的三维渲染?