如何在没有X的情况下观看电影/图像?

如何在没有X的情况下观看电影/图像?

我想知道是否有一种方法可以在不运行 X 服务器的情况下观看电影或图像。我没有使用登录管理器 - 我登录到 tty 并手动启动 X 服务器。

假设情况:我登录,但决定只看电影,或者看几张照片。我不想仅仅为了这个目的而运行 X 服务器和所有 GUI 的东西。

如何在没有 X 的情况下观看电影/图像?

答案1

对于图像:

您可以使用以下方式观看图像fbi:

NAME
       fbi - linux framebuffer imageviewer

SYNOPSIS
       fbi [ options ] file ...

DESCRIPTION
       fbi  displays  the  specified  file(s) on the linux console using the framebuffer device.  PhotoCD, jpeg, ppm,
       gif, tiff, xwd, bmp and png are supported directly.  For other formats fbi tries to use ImageMagick's convert.

命令示例:

$ fbi path/to/file.jpg

对于视频:

  • 您可以使用vlc从 tty/控制台:

    命令示例:

    $ vlc /path/to/file.mp4
    
  • 您还可以使用mplayer:

    $ mplayer /path/to/file.mp4
    

    注:视频输出驱动可通过设置-vo选项例如cacafbdev(外部文章可能有帮助)

答案2

它的可用性取决于内核功能,但通过使用内核提供的 Linux 帧缓冲区(或允许硬件加速的 Direct Framebuffer 库),也应该可以在控制台上播放视频。

例如,如果所有必需的部分都已就位,则使用 MPlayer:mplayer -vo fbdev filename.avi或应该可以解决问题。mplayer -vo directfb filename.avi正如另一个答案中指出的,vlc可能更容易工作,而且它还支持旧的 FB 和 DirectFB。

维基百科文章关于帧缓冲区的说明如下:

Linux帧缓冲区的应用有3种。

  • 不使用硬件文本模式的文本 Linux 控制台的实现(当该模式不可用时有用,或者克服其对字形大小、代码点数量等的限制)。其中一个受欢迎的方面是能够让控制台在启动时显示 Tux 徽标。
  • 显示服务器的一种可能的图形输出方法,独立于视频适配器硬件及其驱动程序。

  • 图形程序避免了 X Window 系统的繁重开销。

最后一项包括MPlayer、links2、Netsurf、fbida等几个Linux程序以及GGI、SDL、GTK+和Qt Extended等可以直接使用帧缓冲区的库。这在嵌入式系统中特别流行。

现在有一个 DirectFB 库,它提供了 Linux 帧缓冲区硬件加速的框架。

还有一个在同一个论坛上就这个主题进行问答,当然还有旧的帧缓冲指南

最值得注意的是,您应该有/dev/fb0可用的字符设备(如果有多个可用的帧缓冲区设备,则应该有多个字符设备)。至少, 的输出zcat /proc/config.gz |grep FB应该包含CONFIG_FB=y,但我不太确定具有 DRM 的现代 GPU 是否也需要某种旧版驱动程序才能使 FBDEV 工作(在我的情况下,我似乎需要CONFIG_DRM_I915_FBDEV=yIntel GPU) 。

答案3

您可以运行一个基于 Wayland 的超轻型窗口管理器。例如,我会推荐rootston(来自wlroots项目)。例如rootston -E vlc,除了 vlc 之外,您什么也得不到。

rootston没有菜单、托盘、时钟、桌面等,什么都没有。然而,它更多的是一个概念验证,并且经常崩溃。不过看电影应该没问题。

rootston 不基于 X所以它回答了你的问题。

但是,对于正在运行的与 Wayland 不兼容的应用程序,Xwayland将作为兼容层启动,并且可能包含 X 代码。

如果只是“GUI 的东西”困扰你,你可以看看 Openbox。

相关内容