1. 安装nginx
2. 配置rtmp推流,配置录制
server {
listen 81;
server_name localhost;
location /live {
flv_live on;
chunked_transfer_encoding on;
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
}
# 统计
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
root html;
}
# 映射录制视频的开始/停止
location /control {
rtmp_control all;
}
# 映射录制视频的播放地址
location /vod {
alias /data/video_rec/;
}
}
rtmp {
out_queue 4096;
out_cork 8;
max_streams 64;
server {
listen 1935;
application iot {
live on;
gop_cache off;
# 录制视频配置
# record :all 表示推流的时候就开始录制
# 添加上manual 组合标识,下发录制指令start后才开始录制 stop-停止录制
# 例如:开始录制指令: http://服务器地址:81/control/record/start?app=iot&name=cwj001&rec=all
# 停止指令: http://服务器地址:81/control/record/stop?app=iot&name=cwj001&rec=all
recorder all {
record all manual;
record_suffix -%Y-%m-%d-%H-%M-%S.mp4;
record_max_size 1000M;
#on_record_done http://127.0.0.1:10001/;
record_path /data/video_rec;
}
}
}
}
3. 安装ffmpeg, 测试推流
sudo apt-get install -y autoconf automake build-essential git libass-dev libfreetype6-dev libsdl2-dev libtheora-dev libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo wget zlib1g-dev
apt install libavformat-dev
apt install libavcodec-dev
apt install libswresample-dev
apt install libswscale-dev
apt install libavutil-dev
apt install libsdl1.2-dev
安装
sudo apt-get install ffmpeg
看下版本
ffmpeg -version
测试推流
ffmpeg -re -i /data/software/test.mp4 -vcodec libx264 -vprofile baseline -acodec aac -ar 44100 -strict -2 -ac 1 -f flv -s 1280x720 -q 10 rtmp://127.0.0.1:1935/iot/test
注:/data/software/test.mp4 这个是预先放置在服务器的视频
可以用vlc播放推流地址 rtmp://服务器IP:1935/iot/test, 进行推流视频的实时播放
在播放的时候可以发送录制视频指令, 然后在/data/video_rec 里面查看录制的视频,注:录制视频只能在播放的时候才能录制