Schermi multipli


16

Voglio costruire un mini sistema multimediale basato sul raspberry pi B +, che ha 2 schermi di visualizzazione:

  1. La schermata principale (come una TV LED da 42 "), che riproduce il video principale in Full HD.
    • HDMI
    • RCA / AV / Composite
  2. Il touchscreen di controllo (come un 3 ~ 8 "TFT / LCD / ...), che visualizza l'elenco dei video disponibili, i dettagli del video attualmente in riproduzione sulla schermata principale e alcune opzioni e icone grafiche per scegliere quale video desidera essere riprodotto nella schermata principale della TV.

    • HDMI
    • RCA / AV / Composite
    • USB
    • GPIO (parallelo o seriale)
    • DSI
    • . . . .

    Ho cercato molto su questo in diversi forum; è stato spesso notato che una volta collegato l'HDMI, l'RCA si spegne o viceversa (è vero?). Supponendo che ciò sia corretto, le uniche opzioni di protocollo per la schermata di controllo sono USB, GPIO e DSI.

Ora le mie domande sono le seguenti:

  1. È possibile avere 2 diversi contenuti del display usando solo 1 raspberry pi B +?
  2. Se sì, quale protocollo è il migliore per il touchscreen di controllo? (HDMI / RCA / USB / GPIO / DSI / ...).

    E come devo gestire questi contenuti di visualizzazione simultanea?

  3. Se no, cosa mi consigliate di fare?

    Esistono altre opzioni oltre all'utilizzo di 2 schede raspberry pi B +?

Grazie mille per il tuo tempo e aiuto. È molto apprezzato


2
Come hai dedotto, se colleghi il secondo schermo a qualcosa di diverso da HDMI o RCA, dovresti essere in grado di utilizzare entrambi. Ciò è confermato da raspberrypi.org utilizzando un adattatore VGA aggiuntivo per i modelli 40 pin +.
riccioli d'oro

Grazie @goldilocks per il tuo commento. Ho visto sull'adattatore VGA Gert e cose simili. Ma la mia preoccupazione principale è questa: come posso gestire queste 2 schermate per visualizzare contenuti diversi? Dove dovrei iniziare? Mi dispiace fare domande semplici, ma sono completamente nuovo su pi e linux!
Omid1989,

2
Non sarai in grado di iniziare fino a quando non avrai preso una decisione e in realtà avrai le due schermate. Dopodiché dovrebbe essere piuttosto semplice, ma qualsiasi domanda a riguardo è di tipo linux generale e appartiene allo scambio Unix e Linux . Se cerchi "doppi monitor linux X" troverai cose. Per impostazione predefinita, ciò che probabilmente accadrà è che otterrai la stessa cosa in entrambe le schermate, ma X può essere configurato per trattarle in modo diverso. Possono avere o meno framebuffer individuali (il che può o non può importare, a seconda di cosa vuoi fare).
riccioli d'oro

Grazie ancora @goldilocks per il tuo utile commento. Potresti fornire una breve descrizione di cosa sono "framebuffer" e "X"? Ho già cercato su di loro, ma mi sono confuso!
Omid1989,

2
Wikipedia di solito fa un lavoro decente con questo tipo di cose. X, più correttamente il server Xorg è il livello base del normale desktop della GUI ( lxdeparte superiore). Il framebuffer può essere usato per fare cose grafiche al di fuori di X (ad es. Sul pi, lo omxplayerusa). Se vuoi solo un normale desktop a doppia testa non devi preoccuparti di questo.
riccioli d'oro

Risposte:


8

La Raspberry Pi Foundation afferma senza ambiguità che un adattatore VGA sull'intestazione GPIO "significa che puoi usarlo come monitor secondario insieme a HDMI" ( da qui ). Dovresti sicuramente essere in grado di farlo tramite USB; per la prova del pi che esegue multi-head, vedere i commenti qui sotto. L'eccezione, ovviamente, sta provando a usare contemporaneamente l'HDMI e il video RCA. Immagino che questa limitazione abbia a che fare con la GPU in grado di gestire solo un output. Il fatto che il video USB non possa usare la GPU è anche un presupposto, ma ne sono abbastanza sicuro; il touchscreen e altri touchscreen basati su GPIO non possono usarlo neanche direttamente. Questo in realtà è buono se vuoi dual head, perché significa che dovrebbero esserci due sistemi video completamente separati e Linux lo prende da lì.

Se si eseguono due schermi in X, probabilmente verranno specchiati per impostazione predefinita, ma è possibile configurare facilmente altre disposizioni. Non sono sicuro della possibilità di far funzionare X su un monitor e il framebuffer della console sull'altro, o di eseguire due framebuffer. Sebbene quest'ultimo sia possibile, potrebbe non essere applicabile a tutte le configurazioni.


Grazie @goldilocks per la tua risposta. In realtà, ho già trovato la risposta alla mia domanda sul forum ufficiale di raspberry Pi. Qualcuno l'ha già fatto, anche su 3 monitor, modificando prima il kernel e poi creando 3 framebuffer. Maggiori informazioni possono essere trovate qui: raspberrypi.org/forums/viewtopic.php?p=661085#p661085
Omid1989,

1
Grazie voi - Potrei essere in grado di utilizzare tale per confermare alcuni dei miei altre ipotesi di cui sopra. L'ho aggiunto parzialmente perché qualcuno ha appena posto una domanda simile a questa che ho reindirizzato qui, poiché secondo la filosofia SE non vogliamo 15 diversi thread di domande e risposte più o meno sulla stessa cosa ("Posso eseguire più display? "). Puoi anche rispondere alla tua domanda in dettaglio se ti piace / quando riesci a farlo funzionare.
riccioli d'oro

Anche se ho letto quell'argomento nel forum ufficiale di raspberry pi, non sono riuscito a comprendere appieno la risposta, perché non ho molta familiarità con termini come kernel, framebuffer, ecc. Quindi sarei grato se riassumi quella risposta e pubblichi un tutorial passo-passo qui; in modo che io possa sceglierlo come la migliore risposta qui. Grazie mille per il tuo tempo e aiuto @goldilocks. Lo apprezzo davvero.
Omid1989,

@goldilocks E come posso passare dallo schermo lcd a quello hdmi (non obbligatorio per funzionare contemporaneamente)? Ho fatto una domanda qui .
Ionică Bizău,

Caro @goldilocks, ora che la fondazione RaspberryPi ha finalmente rilasciato il suo schermo ufficiale, forse possiamo organizzare una risposta migliore a questa popolare domanda. Potrebbe aiutare molti appassionati. Aspetto tue notizie.
Omid1989,

0

OP non ha fornito informazioni sufficienti sul software utilizzato per selezionare i video, ecc. Quindi ho il sospetto che il desiderio sia avere X in esecuzione su due schermi contemporaneamente, con uno che controlla l'altro. Nel qual caso la risposta è no, per quanto posso determinare

Per altre funzioni multi-schermo, ecco una breve panoramica di ciò che ho fatto:

1) Sul primo Rpi con schermo touchscreen da 3,5 pollici posso collegare uno schermo HDMI e usarlo come terminale basato sui caratteri premendo Ctrl-Alt-F2. Lo schermo da 3,5 "si blocca e puoi eseguire tutti i comandi desiderati sull'HDMI usando la stessa tastiera e mouse. Per tornare allo schermo da 3,5", premi Ctrl-Alt-F7

2) Sull'altro mio Rpi l'ho avviato su HDMI in X. Quindi usando PuTTY (carattere) o Desktop remoto (Grafica) o TightVNC (Grafica), posso avere un secondo schermo attivo e in esecuzione che è invisibile sul HDMI. Tastiera e mouse normali continuano a funzionare su HDMI. Uso il Bluetooth per ottenere l'audio poiché il mio monitor è solo schermo.

La tastiera e il mouse del PC funzionano nel programma di accesso remoto. Di gran lunga il mio preferito è Desktop remoto, ma TightVNC semplifica il trasferimento dei file.
In tutti i casi, molto probabilmente vorrai avere anche FileZilla in esecuzione per i trasferimenti, specialmente se il tuo PC di controllo è il doppio monitor stesso.

Più correlato alla domanda dell'OP, l'unico modo che ho trovato per controllare l'avvio HDMI da programmi di accesso remoto è attraverso le funzioni della fotocamera. Ma c'è un avvertimento.

ECCO IL RUB: ogni volta che usi le funzioni della fotocamera, come raspivid, raspistill, ecc., Viene SEMPRE visualizzato sull'uscita HDMI. E non è nemmeno abbastanza educato per passare a schermo intero, il che significa che puoi ancora vedere il tuo desktop X dietro di esso. Sembra adattarsi allo schermo dall'alto verso il basso, quindi quando le funzioni della fotocamera completano l'HDMI tornerà al desktop o al nero se hai superato il normale tempo di inattività che oscura lo schermo.

3) Ho anche avviato il mio altro Rpi su uno schermo da 60 pollici per mostrare alcuni trucchi alla famiglia e ho semplicemente accettato il fatto che potessero vedermi invocare le funzioni. Tengo solo una piccola finestra terminale aperta (al centro dello schermo in modo che i video si sovrappongano sopra di esso) dove ho alcuni script BASH per emettere qualsiasi comando di cui ho bisogno, (come mostrare loro il mio ultimo timelapse o le creature il Il sensore di movimento della telecamera NoIR è stato catturato nel cortile di notte) e la parte di comando è passata sopra le loro teste. Hanno appena visto i video.

Se stai usando un'interfaccia grafica sul tuo programma di selezione musicale, tanto meglio, perché poi vedrebbero cosa stai facendo. Quindi possono ooh e ahhh su come puoi fare un computer così piccolo a fare tutto ciò, genio che sei.

Ma per una linea di fondo in relazione alla domanda, sento che l'OP sta pensando più lungo le linee di un ambiente di presentazione aziendale. Sottolineo che in tal caso non esiste un vero sostituto per un piccolo PC notebook in grado di gestire due display.


0

Ho appena trovato un breve video che mostra come questo ragazzo è stato in grado di supportare due monitor cambiando le cose nel kernel. Non posso commentare questo se non per elencare semplicemente il link:

https://www.youtube.com/watch?v=dTcU5YSq-Ww


Benvenuto in Raspberry Pi! Sebbene ciò possa teoricamente rispondere alla domanda, sarebbe preferibile includere qui le parti essenziali della risposta e fornire il collegamento come riferimento.
Steve Robillard,

Inteso. Era oltre il mio livello di competenza. Tuttavia era pertinente al PO.
SDsolar,

O meglio, questo ha incollato un commento sulla domanda del PO.
Piotr Kula,

0

C'è un modo, ma devi fare un po 'di lavoro manuale per quello. È stato affermato sul sito ufficiale della fondazione pi che omxplayer è adatto per doppia uscita audio, ma è necessario farlo dalla riga di comando. Basta digitare il seguente comando: omxplayer --display = 5 [FILE PATHNAME]

Questo comando ti consente di riprodurre video sull'uscita HDMI utilizzando contemporaneamente il touchscreen.


0

Ciò è possibile se si utilizza il framework Kivy. Sarai in grado di codificare l'interfaccia utente in Python (per il touchscreen), quindi riprodurre i video in modo indipendente tramite l'uscita HDMI.

Per un esempio di base della struttura del codice su un RPi3 con il touchscreen da 7 "ufficiale, vai qui .

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.