播放视频时如何禁用本地终端显示


15

当我使用远程终端通过omxplayer播放视频时,任何本地终端文本(登录提示等)都会在屏幕上未被视频覆盖的区域(即顶部和底部的黑条)显示。如果我等待10到15分钟,则本地终端会由于不活动而完全变黑,从而解决了问题,但这是一种me脚的解决方法。

我以为在本地使用omxplayer可以避免该问题,但是我无法验证,因为RPi讨厌所有键盘。我也不想长期那样播放视频。

当使用远程终端通过HDMI播放视频时,如何遮挡本地终端,使其不显示?

Answers:


9
sudo sh -c "TERM=linux setterm -foreground black >/dev/tty0"
sudo sh -c "TERM=linux setterm -clear all >/dev/tty0"

这样会将字体颜色更改为黑色,然后清除屏幕。

或一行:

sudo sh -c "TERM=linux setterm -foreground black -clear all >/dev/tty0"

并将其设置回正常:

sudo sh -c "TERM=linux setterm -foreground white -clear all >/dev/tty0"

那是一个很好的解决方案。虽然它仍然在左上角留下一个闪烁的光标。
Wisteso 2012年

在上述命令之前运行sudo sh -c“ TERM = linux setterm -foreground black> / dev / tty0” :)
mcpgza 2012年

做到了。我担心它在不播放电影时(例如关机时)会弄乱终端,但这可能是另一回事。
Wisteso,2012年

请更新答案以包含完整的解决方案。
亚历克斯·张伯伦

1
我添加了它,/etc/rc.local以便在启动时自动执行
NimsDotNet 2014年

7

omxplayer现在可以选择将背景设置为黑色。

omxplayer -b

它既可以在终端上运行,也可以在X上运行。此功能应该是raspbian中可用的当前版本。


1
播放后它保持黑色。如何退回?
MailoSvětel16年

4

-r--refresh)选项omxplayer清除屏幕时,它重置视频分辨率和诸如此类的东西。

-r / --refresh                 adjust framerate/resolution to video

别名在这里可能很有用:

alias omxplayer='omxplayer -r -o hdmi '

然后,它将始终刷新(清除)屏幕并将音频发送到hdmi输出。是的,别名中的尾随空格是有意的,因为它允许进一步的制表符完成。(非常有用!)

至于闪烁的光标,我很少(!)曾经在我的pi上使用键盘,总是远程登录(我已经建立了SD卡制造商,进行了预配置),因此我在/etc/rc.local中添加了以下内容:

# turn off console blanking
setterm -blank 0 -cursor off

/etc/rc.local在引导过程中以root用户身份运行,这将关闭控制台空白,这在没有感测到(物理)键盘活动的情况下会很有用,并且还会关闭光标。

由于重置视频通常会恢复闪烁的光标,因此我运行了一个脚本来向控制台发送命令(实际上是tty1):

#!/bin/bash
#
# send 'setterm' commands to /dev/tty1 (physical console)
setterm $* | sudo tee /dev/tty1 > /dev/null

因此,只要光标再次出现,我都会输入:

tty1 -cursor off

它消失了!当然,您至少需要为tee命令设置具有sudo特权的用户。(查找/ etc / sudoers和/etc/sudoers.d)如果需要,可以将脚本编辑为始终关闭光标。

或者只是将这些结合起来发疯:

alias omxplayer='tty1 -cursor off; omxplayer -r -o hdmi '

这将确保光标处于关闭状态,然后启动omxplayer。玩吧!


0

这是我的工作(在脚本中):

setterm -cursor off;
clear;
omxplayer -o hdmi "video file.mkv" | echo "";
setterm -cursor on;

如果您确实使用脚本来调用omxplayer,则可能需要添加

complete -F _longopt watch

到您的.bashrc终端(或类似的终端),这样您就可以完成文件名制表符补全。


我在这里感觉到C / C ++ / Java / PERL程序员...如果您将所有这些命令都放在一行中,则只需要结尾的分号。当然,我AM一个C / C ++ / Java的/ PERL /等程序员,所以我这样做的习惯了。
lornix

0
set PS1=""
setterm -cursor off
clear

瞧,即使在omsplayers停止播放后,屏幕还是黑的。


0

我将Raspberry Pi配置为直接引导到pi用户,然后在其中~/.profile添加以下行:

setterm -foreground black -clear all && sleep 600

之所以可行,是因为无论如何,Pi会在10分钟后进入DPMS空白模式,这只是确保您在此之前在omxplayer后面看到空白屏幕。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.