FFMEPG推流视频及VLC拉流视频教程

本教程使用windows环境 FFmpeg推流本地视频文件到RTSP服务器并使用VLC播放器拉流

1、环境搭建

1.1 下载RTSP服务器

rtsp-simple-server是一个rtsp推流流媒体服务器,可以与gstreamer或ffmpeg结合进行推流。下载对应平台版本,直接运行即可。
下载地址:Github地址,具体的下载:要用的rtsp版本
在这里插入图片描述

1.2 下载FFmpeg

下载地址:Github地址,具体的下载:要用的FFmpeg版本
在这里插入图片描述

1.3 解压文件

  1. 将下载的压缩包ffmpeg-master-latest-win64-gpl.ziprtsp-simple-server_v0.19.0_windows_amd64.zip解压完成。
  2. 将ffmpeg-master-latest-win64-gpl目录下的bin目录下的ffmpeg.exe、ffplay.exe、ffprobe.exe执行文件和rtsp-simple-server_v0.20.0_windows_amd64目录下的rtsp-simple-server.exe 、rtsp-simple-server.yml 文件放在同一个文件夹下。

在这里插入图片描述

1.4 获取一个视频文件

本地准备一个视频文件,下面使用的是1.mp4。
在这里插入图片描述

2、启动服务器推流

2.1 打开RTSP服务器

打开cmd终端,切换到上文所述的文件夹路径下,执行

rtsp-simple-server.exe

在这里插入图片描述

看到[RTSP] listener opened on :8554 (TCP),就说明rtsp服务器启动成功了

2.2 使用ffmpeg进行推流本地文件

将要进行推流的本地视频文件放在上文所述的文件夹路径下,打开一个新的cmd终端,切换到上文所述的同样的路径下,输入命令

ffmpeg -re -stream_loop -1 -i 1.mp4 -c copy -f rtsp rtsp://127.0.0.1:8554/video
如果要涉及编解码的推流: 一般推拉流视频编码选择h264,音频编码选择aac;如果视频服务器性能更好,以及客户端支持h265,则可以使用h265.h265压缩效率更高,但更耗cpu.
h264:
ffmpeg -re -stream_loop -1 -i test25m.mp4 -vcodec libx264 -tune zerolatency -preset ultrafast  -bsf:v h264_mp4toannexb  -g 15 -keyint_min 15 -profile:v baseline -level 3.1 -pix_fmt yuv420p -r 15 -acodec aac -f flv rtmp://192.168.101.42:1935/live/1001
h265:
ffmpeg -re -stream_loop -1 -i test25m.mp4 -vcodec libx265 -acodec aac -f rtsp rtsp://192.168.101.42:8554/live/1002

'注意:遇到“ffmpeg将视频转成rtsp报错Could not write header for output file #0”,将端口号删除可以解决:ffmpeg -re -stream_loop -1 -i person1080.mp4 -c copy -f rtsp rtsp://127.0.0.1/video

参数说明
-re 是以流的方式读取
-stream_loop -1 表示无限循环读取
-i 就是输入的文件
-f 格式化输出到哪里

执行完毕后,如下所示

在这里插入图片描述

2.3 打开VLC media Palyer

打开VLC media Palyer播放器(也可以使用迅雷影音),选择媒体->打开网络串流
在这里插入图片描述
输入rtsp://127.0.0.1:8554/video
在这里插入图片描述
点击播放,就可以看到视频在播放了
在这里插入图片描述

参考
windows环境下,搭建RTSP视频推流服务器
windows&&linux环境下实现ffmpeg&&vlc rtsp本地视频、摄像头推流,VLC推拉流

  • 9
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值