ffmpeg+srs

1,srs(全称simple-rtmp-server)服务器的编译

2,拉取srs源码

git https://github.com/winlinvip/simple-rtmp-server

3,配置安装路径,并执行编译

cd trunk
./configure  --prefix=/usr/local
make

4,启动srs服务

./objs/srs  -c  conf/srs.conf

5,拉取电脑桌面并进行推流

ffmpeg -video_size 1024x768 -framerate 30 -f x11grab -i :0.0+0,00 -f pulse -ac 2 -i default -vcodec libx264 -acodec aac -strict -2 -f flv rtmp://127.0.0.1/live/livestream

6,对本地文件视频文件进行推流

for ((;;));

do ./ffmpeg -re -i /usr/local/simple-rtmp-server/trunk/doc/source.200kbps.768x320.flv -vcodec copy -acodec copy -f flv -y rtmp://127.0.0.1/live/livestream;

sleep 1;

done

7,拉取笔记本电脑摄像头

ffmpeg -f v4l2  -i /dev/video0 -vcodec libx264 -preset:v ultrafast -f flv rtmp://192.168.100.107/live/livestream

8,不借助SRS服务器。直接通过管道播放ffmpeg的录屏流(注意,如果超出分辨率,需要按实际的分辨率设置如1024x768)

ffmpeg -f x11grab -s 1920x1080 -r 30 -i :0.0 -codec:v libx264 -codec:a acc -f flv pipe:1 | ffplay -i pipe:0

 9、ffmpeg拉取3.5音频线麦克风的音频流并保存为wav文件(defalut  为默认麦克风设备     -t 指定录制时间)

ffmpeg    -f  alsa   -i    default  -ac  2  -ar  44100  -acodec  pcm_s16le  -t   10    output.wav

 10、ffmpeg拉电脑屏幕视频流(含音频)并通过nc进行转发。发送端命令:

ffmpeg  -f  x11grab -s  1920x1080  -i  :0.0  -f  alsa  -i  hw:0,0 -c:v  libx264  -preset  ultrafast  -c:a  aac  -strict  experimental  -b:a  192k  -f  flv  pipe:1  |  nc   192.168.x.x    1234  

接收端命令

nc  -l  1234  |  ffplay -

 

posted @   UNkey  阅读(50)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示