1.接收流:
在需要接收流的节点上进行类似以下的配置:
application live{
live on;
}
只要有这一项,就可以通过在浏览器等位置输入下面这个url来点播了
rtmp://127.0.0.1:1935/live
可以使用vlc播放视频流
下载vlc:
sudo apt install vlc
2.转推流:
a.直接转推:
#在application live上收到流后直接用push命令转推给下一个节点
application live{
live on;
push rtmp://10.10.3.2/live;
}
b.ffmpeg处理一下之后转推:
需要先安装ffmpeg:
sudo apt install ffmpeg
然后转推:
这里的转推是live收到流后先用ffmpeg处理完 发给另一个application sendout
然后在sendout里push出去给下一个节点
application live{
live on;
exec ffmpeg -re -i rtmp://localhost:1935/live/mystream -vcodec flv -acodec copy -s 32x32 -f flv rtmp://localhost:1935/sendout/mystream;
}
application sendout{
live on;
push rtmp://10.10.3.2/live;
}
c.opencv读取然后进行人脸识别然后使用python脚本转推:
先理解一下只收流不转推:
import cv2
#从远端rtmp server的play下记录的视频文件中拉取流的方式:
#这个和下面的从live里拉流的方式二选一
vid_capture=cv2.VideoCapture("rtmp://远端ip:1935/play/friends.mp4")
#从本地rtmp server的live application中拉取流的方式(live是本地server收流的application)
#可以在live application收流的过程中开始拉
#可以在live application收到流之前拉(不知道太久行不