【媒体开发】利用FFMPEG进行推拉流

1. 下载并启动媒体服务

MediaMTX,也即之前的rtsp-simple-server,是一个即用型、零依赖的实时媒体服务器和媒体代理,允许发布、读取、代理和记录视频和音频流。

Releases · bluenviron/mediamtx · GitHub找到最新版,下载对应平台的软件包,如 linux x86-64 选绿色框那个,windows x86-64 则选红色框那个:

解压后,运行即可:

复制代码
# linux x86-64:
./mediamtx mediamtx.yml

2. 使用 FFMPEG 拉流并推送到指定服务地址

* 需提前安装好 FFMPEG

启动媒体服务后,即可进行拉流并推送:

复制代码
ffmpeg -re -i 视频文件路径或者网络摄像头地址 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

如果想循环推某个视频,可以使用参数-stream_loop,可以指定循环多少次,如为-1,则循环无数次:

复制代码
ffmpeg -re -stream_loop -1 -i 视频文件路径 -c copy -f rtsp rtsp://127.0.0.1:8554/stream

3. 客户端拉流

可直接用 ffplay 进行拉流与展示:

复制代码
ffplay rtsp://127.0.0.1:8554/stream

也可用某些支持网络 URL 的播放器进行播放,如 VLC,SMPlayer 等;

也可以通过 opencv 拉流来获取每一帧图像进行各种处理:

复制代码
video = cv2.VideoCapture("rtsp://127.0.0.1:8554/stream")
相关推荐
工具派12 小时前
记一次用在线工具压缩视频的过程(两档实测)
ffmpeg·视频压缩·crf
bu_shuo2 天前
使用ffmpeg快速截取一段视频
ffmpeg·音视频
天天进步20153 天前
Pixelle-Video 源码解析 #4:快速启动流程:uv、Streamlit、ffmpeg 分别负责什么?
ffmpeg·uv
Facechat3 天前
Seedance 2.0 + FFmpeg:我的「一句话出片」工具是怎么做出来的
ffmpeg·seedance
HY小宝F3 天前
从 APP 层打穿到传感器:树莓派 FFmpeg 底层学习笔记(一)V4L2/ALSA 踩坑与认知重构
笔记·学习·ffmpeg
proware4 天前
ffmpeg 初始化配置及基本概念与套路
ffmpeg·mpp·rockchip·rga
程序员老陆5 天前
FFmpeg的AVFrame全部数据操作函数详解
ffmpeg·音视频·avframe
glumes5 天前
从《牛来》到 DCP:一部电影是怎么走进电影院的?
ffmpeg·音视频开发
程序员老陆6 天前
FFmpeg RTSP 解复用器(rtsp demuxer)完全解析:从「能播」到「稳播」的参数圣经
ffmpeg·音视频·拉流·rtsp
诸葛大钢铁7 天前
视频转音频怎么转换?在线工具、VLC、FFmpeg 三种方法详解
ffmpeg·音视频·mp4转mp3·视频转音频·视频转mp3·视频提取音频