桌面录屏推流(ffmpeg/gstreamer+ZLMediaKit推流rtmp/rtsp)

本人推流端系统为Ubuntu18.04,拉流端系统win10

1、安装cmake

#如果版本过低需要重新自己下载,ZLM的版本要求使3.1.3
sudo apt-get install cmake

2、下载ZLMediaKit

#从gitee安装
git clone https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
git submodule update --init

3、安装ffmpeg、gstreamer

sudo apt install ffmpeg
sudo apt install gstreamer

4、编译ZLMediaKit

cd ZLMediaKit
mkdir build
cd build
cmake ..
make -j4

5、推流测试

cd ../ZLMediaKit/release/linux/Debug
#启动ZLMediaKit编译出来的流媒体服务器
sudo ./MediaServer -d &
MediaServer运行参数 
 -h  --help     无参  默认:null                                             选填  打印此信息
  -d  --daemon   无参  默认:null                                             选填  是否以Daemon方式启动
  -l  --level    有参  默认:0                                                选填  日志等级,LTrace~LError(0~4)
  -m  --max_day  有参  默认:7                                                选填  日志最多保存天数
  -c  --config   有参  默认:/root/ZLMediaKit/release/linux/Debug/config.ini  选填  配置文件路径
  -s  --ssl      有参  默认:/root/ZLMediaKit/release/linux/Debug/ssl.p12     选填  ssl证书文件或文件夹,支持p12/pem类型
  -t  --threads  有参  默认:4                                                选填  启动事件触发线程数
gstreamer推流至rtmp
gst-launch-1.0 ximagesrc ! videoconvert ! videoscale ! video/x-raw, width=1920, height=1080, framerate=28/1 ! queue ! x264enc ! queue ! rtmpsink location=rtmp://ip:port/live/test
ffmpeg推流至rtsp
ffmpeg -re -thread_queue_size 128 -threads 8 -f x11grab -video_size 1920x1080 -framerate 26 -i :0 -vcodec libx264 -preset ultrafast -tune zerolatency -muxdelay 2 -fast-pskip true -buffer_size 10240000 -qp 50 -crf 26 -level 3 -rtsp_transport udp -s 960x540 -max_muxing_queue_size 128 -f rtsp rtsp://ip:port/live/test

6、vlc拉流

猜你喜欢

转载自blog.csdn.net/Sheleon1995/article/details/126667701