Come disabilitare la visualizzazione del terminale locale durante la riproduzione di video


15

Qualsiasi testo del terminale locale (prompt di accesso, ecc.) Viene visualizzato attraverso le aree dello schermo che non sono coperte dal video (ovvero le barre nere in alto e in basso) quando utilizzo un terminale remoto per riprodurre video con omxplayer. Se aspetto 10-15 minuti, il terminale locale diventa completamente nero a causa dell'inattività che risolve il problema, ma è una specie di soluzione scadente.

Sto pensando che l'uso locale di omxplayer eviterebbe il problema, ma non posso verificarlo poiché il mio RPi odia tutte le mie tastiere. Inoltre, non voglio riprodurre video in questo modo a lungo termine.

Come posso oscurare il terminale locale in modo che non venga visualizzato quando si utilizza un terminale remoto per riprodurre video su HDMI?

Risposte:


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

Questo cambierà il colore del carattere in nero, quindi cancella lo schermo.

O in una sola riga:

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

E riportarlo alla normalità:

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

Questa è una soluzione abbastanza buona. Lascia comunque un cursore lampeggiante nell'angolo in alto a sinistra.
Wisteso,

eseguire sudo sh -c "TERM = settinux linux -foreground black> / dev / tty0" prima del comando precedente :)
mcpgza

quello ha fatto il trucco. Sono preoccupato per il fatto che si scherza con il terminale quando non si riproducono film (come quando si spegne), ma può essere una battaglia diversa.
Wisteso,

Aggiorna la risposta per includere la soluzione completa.
Alex Chamberlain,

1
Ho aggiunto questo in /etc/rc.localmodo che venga eseguito automaticamente all'avvio
NimsDotNet

7

omxplayer ora ha un'opzione per impostare lo sfondo su nero.

omxplayer -b

Funziona sia sul terminale che su X. Questa funzione dovrebbe essere nella versione corrente disponibile in raspbian.


1
Rimane nero dopo la riproduzione. Come posso tornare indietro?
Mailo Světel,

4

L' opzione -r ( --refresh ) per omxplayer cancella lo schermo quando reimposta la risoluzione video e quant'altro.

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

Un alias potrebbe essere utile qui:

alias omxplayer='omxplayer -r -o hdmi '

Che quindi aggiornerà (cancella) sempre lo schermo e invierà l'audio all'uscita HDMI. E sì, lo spazio finale nell'alias è intenzionale in quanto consente l'ulteriore completamento della scheda. ( Molto utile!)

Per quanto riguarda il cursore lampeggiante, raramente (!) Uso mai una tastiera con i miei pi, accedendo sempre da remoto (ho creato un produttore di schede SD, preconfigurando le cose), quindi ho aggiunto quanto segue in /etc/rc.local:

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

/etc/rc.local viene eseguito come root durante l'avvio e questo disattiva il blanking della console che cerca di essere utile quando non viene rilevata alcuna attività (fisica) sulla tastiera e disattiva anche il cursore.

Poiché il ripristino del video ripristina spesso il cursore lampeggiante, ho uno script che eseguo per inviare comandi alla console (in realtà tty1):

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

Quindi ogni volta che riappare il cursore, scrivo:

tty1 -cursor off

ed è andato! Ovviamente, dovrai impostare il tuo utente con i privilegi di sudo, almeno per il comando tee. (cerca / etc / sudoers e /etc/sudoers.d) Lo script può essere modificato per spegnere sempre il cursore se lo desideri.

O semplicemente impazzire con una combinazione di questi:

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

Ciò garantirebbe che il cursore sia disattivato, quindi avviare omxplayer. Giocaci!


0

Ecco cosa faccio (in uno script):

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

Se si fa utilizzare uno script per chiamare omxplayer, si potrebbe desiderare di aggiungere

complete -F _longopt watch

al tuo .bashrc(o simile per qualsiasi terminale che usi) in modo da ottenere il completamento della scheda del nome file.


Sento un programmatore C / C ++ / Java / PERL qui ... Hai solo bisogno dei punti e virgola finali se stai stringendo tutti quei comandi su una riga. Naturalmente, io SONO un C / C ++ / Java / Perl / etc programmatore, quindi lo faccio per abitudine troppo.
lornix,

0
set PS1=""
setterm -cursor off
clear

E voilà, lo schermo è nero, anche dopo l'arresto di omsplayers.


0

Configuro il mio Raspberry Pi per l'avvio diretto pinell'utente, quindi ~/.profileaggiungo la seguente riga:

setterm -foreground black -clear all && sleep 600

Questo funziona perché il Pi passerà alla modalità vuota DPMS dopo 10 minuti comunque, e questo assicura solo che tu possa vedere uno schermo vuoto "dietro" omxplayer fino ad allora.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.