Mac搭建nginx+rtmp服务器

安装Homebrew

1.检查你的Mac是否已经安装了Homebrew

打开终端, 查看是否已经安装了Homebrew, 直接终端输入命令

1
man brew 

如果Mac已经安装了,终端会显示一些命令的提示信息,如下图。此时可以输入q退出,否则就安装Homebrew。

check brew install

2.安装Homebrew

在终端输入:

1
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

以防命令有所更改建议去Homebrew官网(不过我还没有遇到过😊)

升级Homebrew:

1
brew update

安装nginx

先clone nginx项目到本地

1
brew tap homebrew/nginx

安装

1
2
3
4
brew install nginx-full --with-rtmp-module

//卸载:
brew uninstall nginx

在终端输入:

1
nginx

在浏览器里打开 http://localhost:8080,如果出现下图的表示安装成功了

nginx_success.jpeg

如果终端提示:

nginx_error.jpg

则表示8080端口被占用了, 查看端口PID

1
lsof -i tcp:80

根据端口PID,kill掉,然后重新执行nginx,打开 http://localhost:8080

配置nginx和rtmp

使用下面的命令查看nginx安装的位置:

1
brew info nginx

查看nginx.conf的位置 location_nginx.jpg

点击Finder->前往->前往文件夹->输入/usr/local/etc/nginx/nginx.conf->用记事本工具(推荐Sublime Text)打开nginx.conf。

在文件最后一行,加入如下配置,不要加在{ }里面

1
2
3
4
5
6
7
8
9
10
# 在http节点后面加上rtmp配置:
rtmp {
    server {
        listen 1935;
        application rtmplive {
            live on;
            record off;
        }
    }
}

如图: nginx_conf.jpg

然后重启nginx

1
nginx -s reload

安装ffmpeg

ffmpeg可以用其他方式安装,这里我用的是Homebrew安装(简单),输入命令

1
2
3
4
5
6
7
brew install ffmpeg

//升级命令:
brew upgrade ffmpeg

//如果要卸载: 
brew unstall ffmpeg

安装ffmpeg时间可能会长一点, 如果速度过慢,建议搭个梯子翻越长城. 不过也才50多M的东西, 耐心一点就好。 等待的时间里, 再安装一个支持rtmp协议的视频播放器VLC

1.利用ffmpeg推流

我在桌面中放一个mp4格式的文件,执行推流命令:

1
2
3
4
ffmpeg -re -i /Users/yanfeng/Desktop/ios.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room

//如果提示没有权限时加入sudo:
sudo ffmpeg -re -i /Users/yanfeng/Desktop/ios.mp4 -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://localhost:1935/rtmplive/room

将视频推流到本地的服务器后,打开VLC,然后点击菜单File->Open Network 输入:

1
rtmp://localhost:1935/rtmplive/room

这样就可以看到效果了,如图:

vlc_play.gif

  • 推荐一个Mac下的GIF制作工具gifrocket

利用ffmpeg转换视频格式

在桌面准备一个flv格式的视频,利用ffmpeg将其转换成格式为mp4的视频,并设置其码率为640kbps。在终端输入命令:

1
ffmpeg -i /Users/yanfeng/Desktop/转码.flv -b:v 640k /Users/yanfeng/Desktop/转码.mp4

covert_mp4.jpg covert_success.jpg

记得把文章中的地址路径换成自己Mac的路径

Aug 15th, 2016