尝试使用 ffmpeg 录制 dockerized lxde 时出现黑屏

尝试使用 ffmpeg 录制 dockerized lxde 时出现黑屏

我已经创建了一个包含 LXDE 和 TightVNCServer 的 docker 镜像。

# Pull base image.
FROM ubuntu

# Install LXDE and VNC server.
RUN apt-get update
RUN apt-get install -y xvfb
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y lxde-core lxterminal tightvncserver
RUN rm -rf /var/lib/apt/lists/*
RUN touch /root/.Xresources
RUN touch /root/.Xauthority
COPY xstartup /root/.vnc/xstartup
RUN chmod +x /root/.vnc/xstartup
#Install Node.js & npm

# Define working directory.
WORKDIR /data

COPY * /data

RUN apt-get install -y ffmpeg

我正在使用以下命令运行该容器:

docker run -it --rm -v /data:/data -p 5901:5901 -e USER=root ubuntudsktp bash -c "vncserver :1 -geometry 1280x800 -depth 24 && tail -F /root/.vnc/*.log"

我正在使用 VNC 登录到该容器并运行此命令来记录整个屏幕:

ffmpeg -f x11grab -i :1.0 output.webm

录制结束后,我打开视频,发现视频完全是空白的(黑屏)。

这也是我尝试运行时的输入glxinfo

# glxinfo | grep "OpenGL renderer"
Error: unable to open display

我也尝试使用以下命令运行它:

DISPLAY=:1 ffmpeg -f x11grab -i :1.0 output.webm 结果是一样的。

我在这里遗漏了什么?

相关内容