安装nginx+rtmp
使用 homebrew 安装,先 clone nginx 到本地
brew tap homebrew/nginx
执行安装命令
brew install nginx-full --with-rtmp-module
安装完成后使用 nginx 命令,检查是否安装成功
nginx
在浏览器里打开http://localhost:8080 ,如果出现下图, 则表示安装成功
nginx 启动成功如果终端显示 下面这些
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:1935 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:1935 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:1935 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:1935 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:1935 failed (48: Address already in use)
nginx: [emerg] still could not bind()
则表示端口被占用了
使用命令lsof -i tcp:8080
查看端口PID
kill 掉 15484
然后重新启动
nginx
打开http://localhost:8080验证 。
配置nginx和ramp
查看 nginx 的安装位置
brew info nginx-full
安装位置
打开这个路径下的 nginx.conf
,
在http节点后面加上rtmp
配置
rtmp {
server {
listen 1935;
application rtmplive {
live on;
record off;
}
}
}
重启 nginx
/usr/local/Cellar/nginx-full/1.10.1/bin/nginx -s reload
其中的1.10.1要换成你自己安装的nginx版本号, 查看版本号用
nginx -v
命令即可
使用 ffmpeg 推流
安装 ffmpeg
brew install ffmpeg
安装支持 rtmp 协议的播放器
我在文稿中放了一个本地 MP4 视频,将这个视频推流到服务器
ffmpeg -re -i /Users/sunlin/Documents/rtmplive.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room
打开播放器,在播放 URL 的输入框输入 rtmp://localhost:1935/rtmplive/room
就能播放这个推流的视频了。
我们的 APP 推流使用的是阿里云视频的推流服务,具体的使用看官方的文档就很清晰了
网友评论