场景
开源流媒体服务器ZLMediaKit在Windows上运行、配置、按需拉流拉取摄像头rtsp视频流)并使用http-flv网页播放:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/130136245
在上面搭建ZLMediaKit的基础上。
ZLMediaKit在Windows上实现Rtmp流媒体服务器以及模拟rtmp推流和http-flv拉流播放:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/130221608
使用FFmpeg进行rtmp模拟推流实现。
但是推流时的地址是127.0.0.1
ffmpeg.exe -re -stream_loop -1 -i D:\2.mp4 -vcodec libx264 -acodec aac -f flv rtmp://127.0.0.1:1935/hls/123456123_2
pause
但是如果将127.0.0.1修改为实际Ip地址则会因为鉴权默认,导致推流失败。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
实现
1、需要保留鉴权,则在进行推流时传递sercet参数。
ffmpeg.exe -re -i D:\test\1.mp4 -vcodec libx264 -acodec aac -f flv rtmp://10.229.36.31:1935/hls/123456123_0?secret=8725c73f7-bb6b-4889-你自己的sercet
secret的位置如下:
2、关闭推流时的鉴权
我们向ZLM流媒体服务器推流,要使用鉴权就必须得开启ZLM服务的HOOK,配置文件中enable要置为1。
[hook] admin_params=secret=035c73f7-bb6b-4889-a715-d9eb2d1925cc enable=0 on_flow_report= on_http_access= on_play= on_publish=http://127.0.0.1:18080/index/hook/on_publish on_record_mp4= on_record_ts= on_rtsp_auth= on_rtsp_realm= on_server_started=http://127.0.0.1:18080/index/hook/on_server_started on_shell_login=http://127.0.0.1:18080/index/hook/on_shell_login on_stream_changed=http://127.0.0.1:18080/index/hook/on_stream_changed on_stream_none_reader=http://127.0.0.1:18080/index/hook/on_stream_none_reader on_stream_not_found=http://127.0.0.1:18080/index/hook/on_stream_not_found timeoutSec=20
所以将hook的enable改为0就可以直接进行推流,不用传递secret参数。
3、按照官方推流鉴权流程
自行实现,这里不再实现。
标签:127.0,http,FFmpeg,stream,0.1,hook,ZLMeidiaKit,鉴权 From: https://www.cnblogs.com/badaoliumangqizhi/p/17343370.html