本文主要是介绍ffmpeg easydarwin 做流媒体服务器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ffmpeg:http://www.ffmpeg.org/download.html#build-windows
easydarwin:https://github.com/easydarwin/easydarwin/releases
解压
单击 serviceinstall-easydarwin.exe 等待安装完成如下:
打开浏览器,输入 http://127.0.0.1:10008 可以看到设备当前运行状态和推流拉流的列表,效果界面如下:
到这就安装完成了,最重要的就是easydarwin.ini配置文件配置了,easydarwin自动把rtsp转成m3u8,一定要配置好
[http]
port=10008
default_username=admin
default_password=admin[rtsp]
port=554; rtsp 超时时间,包括RTSP建立连接与数据收发。
timeout=28800; 是否使能gop cache。如果使能,服务器会缓存最后一个I帧以及其后的非I帧,以提高播放速度。但是可能在高并发的情况下带来内存压力。
gop_cache_enable=1; 是否使能向服务器推流或者从服务器播放时验证用户名密码. [注意] 因为服务器端并不保存明文密码,所以推送或者播放时,客户端应该输入密码的md5后的值。
; password should be the hex of md5(original password)
authorization_enable=0; 是否使能推送的同事进行本地存储,使能后则可以进行录像查询与回放。
save_stream_to_local=1;easydarwin使用ffmpeg工具来进行存储。这里表示ffmpeg的可执行程序的路径
ffmpeg_path=D:/testeasydarwin/ffmpeg/bin/ffmpeg;本地存储所将要保存的根目录。如果不存在,程序会尝试创建该目录。
m3u8_dir_path=/Users/whq19/Downloads/EasyDarwinGoM3u8;切片文件时长。本地存储时,将以该时间段为标准来生成ts文件(该时间+一个I帧间隔),单位秒。
;如果需要直播,这个值设小点,但是这样会产生很多ts文件;如果不需要直播,只要存储的话,可设大些。
ts_duration_second=6;key为拉流时的自定义路径,value为ffmpeg转码格式,比如可设置为-c:v copy -c:a copy,表示copy源格式;default表示使用ffmpeg内置的输出格式,会进行转码。
/stream_265=default
其中,我们要做些修改:
sve_stream_to_local表示是否开启本地存储。1表示开启,0表示不开启。我们改成1即可
ffmpeg_path表示ffmpeg的可执行文件的路径。即上一步从ffmpeg下载安装后的路径,如我的mac上的路径为/Users/apple/Downloads/ffmpeg-20180719-9cb3d8f-macos64-shared/bin/ffmpeg
m3u8_dir_path表示录像文件的存储目录。设置为一个存在的可读可写目录即可。比如我设置为/Users/apple/Downloads/EasyDarwinGoM3u8
启动EasyDarwin服务,可看到有这样一句[EasyDarwin] 2018/11/17 12:45:35 rtsp-server.go:67: Prepare to save stream to local....输出日志,表示配置本地存储成功。
一定要注意这个路径跟配置文件里的要一致。
这样就完成了设置及安装。登录默认是admin admin
2、FFMPEG
①设置环境变量:https://jingyan.baidu.com/article/a3a3f81124c5e08da2eb8a29.html
②在cmd中运行如下命令:
ffmpeg -f dshow -i video="imx188_azurewave(p)":audio="麦克风阵列 (Realtek High Definition Audio)" -vcodec libx264 -r 25 -preset:v ultrafast -tune:v zerolatency -f rtsp rtsp://127.0.0.1/test
注意:audio 跟 video一定要与自己的电脑一致,查看如下图设备管理器中
运行完后出现下图则运行成功。
运行成功后就可以用VLC查看rtsp跟m3u8格式的视频了。
VLC里输入http://127.0.0.1:10008/record/abc/20190429/out.m3u8 地址就能看到自己了。
到此就完成了。
这篇关于ffmpeg easydarwin 做流媒体服务器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!