OpenEuler 使用ffmpeg x11grab捕获屏幕流,rtsp推流,并用vlc播放

环境准备

安装x11grab(用于捕获屏幕流)和libx264(用于编码)

bash 复制代码
# 基础开发环境&x11grab
sudo dnf install -y \
    autoconf \
    automake \
    bzip2 \
    bzip2-devel \
    cmake \
    freetype-devel \
    gcc \
    gcc-c++ \
    git \
    libtool \
    make \
    mercurial \
    pkgconfig \
    zlib-devel \
    libX11-devel \
    libXext-devel \
    libxcb-devel \
    xorg-x11-server-utils
    
# 安装x264
sudo dnf install -y x264-devel
pkg-config --cflags --libs x264

安装好ffmpeg(这里要用编译安装,因为要添加上--enable-x11grab这个选项只有高版本支持低版本的话是其他几个选项反正你用./configure --help 查看可用选项把带x11的都选上就行了

下载mediamtx,这是推流服务器
下载地址

下载完解压就能用了

安装vlc,我这里是在windows上安装的

命令

先运行推流服务器

./你的mediamtx所在的目录/mediamtx

使用ffmpeg捕获屏幕流并推送到服务器

ffmpeg -f x11grab -i :0.0 -vcodec libx264 -preset ultrafast -acodec aac -f rtsp rtsp://127.0.0.1:8554/desktop

vlc播放

效果展示

相关推荐
韩曙亮3 小时前
【FFmpeg】FFmpeg 内存结构 ③ ( AVPacket 函数简介 | av_packet_ref 函数 | av_packet_clone 函数 )
ffmpeg·音视频·avpacket·av_packet_clone·av_packet_ref·ffmpeg内存结构
oushaojun27 小时前
ubuntu中使用ffmpeg和nginx推流rtmp视频
nginx·ubuntu·ffmpeg·rtmp
莫固执,朋友8 小时前
网络抓包工具tcpdump 在海思平台上的编译使用
网络·ffmpeg·音视频·tcpdump
lxkj_20249 小时前
修改ffmpeg实现https-flv内容加密
网络协议·https·ffmpeg
cuijiecheng20189 小时前
音视频入门基础:MPEG2-TS专题(6)——FFmpeg源码中,获取MPEG2-TS传输流每个transport packet长度的实现
ffmpeg·音视频
VisionX Lab13 小时前
数据脱敏工具:基于 FFmpeg 的视频批量裁剪
python·ffmpeg·音视频
柳鲲鹏1 天前
全网首发:Ubuntu编译跨平台嵌入式支持ffmpeg的OpenCV
linux·ubuntu·ffmpeg
冰山一脚20131 天前
ffplay音频SDL播放处理
ffmpeg
cuijiecheng20181 天前
音视频入门基础:MPEG2-TS专题(7)——FFmpeg源码中,读取出一个transport packet数据的实现
ffmpeg·音视频
Maxwellhang2 天前
【java-ffmpeg】java 内存测试和集成
java·ffmpeg·jni