赞
踩
RTSP和RTMP视频流的区别
推流和拉流的区别
FFmpeg概念
FFmpeg是将音频和视频转为流的开源计算机程序。
EasyDarwin实现RTSP视频流服务步骤
下载FFmpeg
并配置环境 ,执行 ffmpeg -version
测试安装是否成功。
成功配置ffmpeg版本:
RTMP服务器
就是基于Nginx
开发的module
。 nginx 1.7.11.3 Gryphon
该版本Nginx包含RTMP组件,通过RTMP组件,提供流媒体服务,让Nginx成为RTMP流媒体服务器。实现
1、下载Nginx
nginx 1.7.11.3 Gryphon.zip
2、下载trmp压缩包
nginx-rtmp-module-master.zip
解压到nginx 1.7.11.3 Gryphon
目录中,并重命名文件夹为nginx-rtmp-module
在这里插入图片描述](https://img-blog.csdnimg.cn/direct/f1e7c424a9244617882f38448d7042ee.png)
3、进入nginx 1.7.11.3 Gryphon文件夹的conf目录下, 创建并编辑 nginx.conf 文件
worker_processes 2; events { worker_connections 8192; } rtmp { server { listen 1935;#监听端口,若被占用,可以更改 chunk_size 4000;#上传flv文件块儿的大小 application live { #创建一个叫live的应用 live on;#开启live的应用 allow publish 127.0.0.1;# allow play all; } } } http { include mime.types; default_type application/octet-stream; sendfile off; #tcp_nopush on; server_names_hash_bucket_size 128; ## Start: Timeouts ## client_body_timeout 10; client_header_timeout 10; keepalive_timeout 30; send_timeout 10; keepalive_requests 10; ## End: Timeouts ## server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } } }
4、启动RTMP服务器
打开CMD
,进入nginx 1.7.11.3 Gryphon
目录下,执行如下指令,检查nginx的配置文件是否正确。
nginx.exe -t
启动nginx服务器
start nginx 命令的作用是载入缺省./conf/nginx.conf配置文件,启动nginx。
start nginx
采用别的配置去开启nginx命令如下
nginx.exe -c conf\nginx-win.conf
如何停止nginx服务器?
打开cmd,输入如下命令
taskkill /f /im nginx.exe
步骤
实现
1、准备一个视频放到FFmpeg\bin文件夹下
2、FFmpeg实现推流
语法
ffmpeg -re -stream_loop -1 -i 视频文件.mp4 -c copy -f flv 播放地址
播放地址根据nginx.conf文件一一对应,如本文实现
推流地址为 rtmp://127.0.0.1:1935/live/test
配置好FFmpeg环境,直接打开 cmd
输入如下命令,如果没配置FFmpeg环境,需要来到FFmpeg\bin目录下。
ffmpeg -re -stream_loop -1 -i 测试视频.mp4 -c copy -f flv rtmp://127.0.0.1:1935/live/test
要想在推流指令中使用其它推流目录,比如改为使用“ mydir ”,就在 nginx.conf1
修改 live ==》 mydir
可以看到这里的数值在动,就说明推流成功了
rtmp://127.0.0.1:1935/live/test
,回车,打开PotPlayer播放。
3.方式三:下载 VLC播放器,选择【媒体】—【打开网络串流】—【网络】,粘贴地址,【播放】即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。