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播放

效果展示

相关推荐
不太会编程的IT男9 小时前
在 Jetson Orin 开发套件上使用 Hardware Encoder / Decoder 构建 FFmpeg
ffmpeg·视频编解码·h.264
m0_6873998410 小时前
写一个Ununtu C++ 程序,调用ffmpeg API, 来判断一个数字电影的视频文件mxf 是不是Jpeg2000?
开发语言·c++·ffmpeg
aqi0012 小时前
FFmpeg开发笔记(七十一)使用国产的QPlayer2实现双播放器观看视频
android·ffmpeg·音视频·流媒体
Java患者·16 小时前
【小白】linux安装ffmpeg | java转码 【超详细】
ffmpeg
suifen_16 小时前
RK平台ffmpeg支持硬件编解码
ffmpeg
feiyangqingyun16 小时前
全网唯一/Qt结合ffmpeg实现手机端采集摄像头推流到rtsp或rtmp/可切换前置后置摄像头/指定分辨率帧率
qt·智能手机·ffmpeg
melonbo1 天前
使用FFmpeg将H.264码流封装为MP4
ffmpeg·音视频·h.264
aqi001 天前
FFmpeg开发笔记(七十七)Android的开源音视频剪辑框架RxFFmpeg
android·ffmpeg·音视频·流媒体
慢行的骑兵1 天前
Android音视频探索之旅 | CMake基础语法 && 创建支持Ffmpeg的Android项目
ffmpeg·音视频
Little_Code2 天前
uniapp 使用ffmpeg播放rtsp
ffmpeg·uni-app·rtsp