Múltiples pantallas de visualización

16

Quiero construir un mini sistema multimedia basado en la frambuesa pi B +, que tiene 2 pantallas:

  1. La pantalla principal (como un televisor LED de 42 "), que reproduce el video principal en Full HD.
    • HDMI
    • RCA / AV / Compuesto
  2. La pantalla táctil de control (como un TFT / LCD / ... de 3 ~ 8 "), que muestra la lista de videos disponibles, detalles del video que se está reproduciendo actualmente en la pantalla principal y algunas opciones e íconos gráficos para elegir el video que desea quiere ser reproducido en la pantalla principal de TV.

    • HDMI
    • RCA / AV / Compuesto
    • USB
    • GPIO (paralelo o en serie)
    • DSI
    • . . . .

    Busqué mucho en esto en varios foros diferentes; a menudo se observó que una vez que se conecta el HDMI, el RCA se apaga o viceversa (¿es cierto?). Suponiendo que esto sea correcto, las únicas opciones de protocolo para la pantalla de control son USB, GPIO y DSI.

Ahora mis preguntas son las siguientes:

  1. ¿Es posible tener 2 contenidos de visualización diferentes usando solo 1 frambuesa pi B +?
  2. En caso afirmativo, ¿qué protocolo es mejor para la pantalla táctil de control? (HDMI / RCA / USB / GPIO / DSI / ...).

    ¿Y cómo debo manejar estos contenidos de visualización simultáneos?

  3. Si no, ¿qué me sugieres que haga?

    ¿Hay alguna otra opción que no sea usar 2 tableros raspberry pi B +?

Muchas gracias por su tiempo y ayuda. Es muy apreciado

Omid1989
fuente
2
Como has deducido, si conectas la segunda pantalla a algo que no sea HDMI o RCA, deberías poder usar ambas. Raspberrypi.org confirma esto utilizando un adaptador VGA adicional para los modelos de 40 pines +.
Ricitos de oro
Gracias @goldilocks por tu comentario. Vi sobre el adaptador Gert VGA, y cosas relacionadas. Pero mi principal preocupación es esta: ¿Cómo puedo manejar estas 2 pantallas para mostrar diferentes contenidos? ¿Donde debería empezar? Lamento hacer preguntas simples, ¡pero soy completamente nuevo en pi y linux!
Omid1989
2
No podrá comenzar hasta que haya tomado una decisión y realmente tenga las dos pantallas. Después de eso, debería ser bastante simple, pero cualquier pregunta al respecto es general de Linux y pertenece al Intercambio de Unix y Linux . Si buscas "monitores duales linux X" encontrarás cosas. Por defecto, lo que probablemente sucederá es que obtendrás lo mismo en ambas pantallas, pero X se puede configurar para tratarlas de manera diferente. Pueden o no tener framebuffers individuales (que pueden o no importar, dependiendo de lo que quieras hacer).
Ricitos de oro
Gracias de nuevo @goldilocks por tu útil comentario. ¿Podría dar una breve descripción de lo que son "framebuffer" y "X"? Ya he buscado sobre ellos, ¡pero me confundí!
Omid1989
2
Wikipedia generalmente hace un trabajo decente con este tipo de cosas. X, más correctamente, el servidor Xorg es la capa base del escritorio normal de la GUI (se lxdeejecuta encima de eso). El framebuffer se puede usar para hacer cosas gráficas fuera de X (por ejemplo, en el pi, lo omxplayerusa). Si solo desea un escritorio de doble cabezal normal, no necesita preocuparse por eso.
Ricitos de oro

Respuestas:

8

La Fundación Raspberry Pi afirma inequívocamente que un adaptador VGA en el encabezado GPIO "significa que puede usarlo como un monitor secundario junto con HDMI" ( desde aquí ). Ciertamente deberías poder hacerlo a través de USB; Para ver la evidencia de que el pi funciona con varias cabezas, vea los comentarios a continuación. La excepción, por supuesto, es tratar de usar el video HDMI y RCA simultáneamente. Supongo que esta limitación tiene que ver con que la GPU solo pueda manejar una salida. Que el video USB no puede usar la GPU también es una suposición, pero estoy bastante seguro; el piTFT y otras pantallas táctiles basadas en GPIO tampoco pueden usarlo directamente. Esto es realmente bueno si desea dos cabezales, porque significa que debería haber dos sistemas de video completamente separados y Linux lo toma desde allí.

Si ejecuta dos pantallas bajo X, probablemente se reflejarán de forma predeterminada, pero se pueden configurar fácilmente otros arreglos. No estoy seguro de la posibilidad de ejecutar X en un monitor y framebuffer de consola en el otro, o de ejecutar dos framebuffers. Aunque esto último es posible, puede no ser aplicable a todas las configuraciones.

Ricitos de oro
fuente
Gracias @goldilocks por tu respuesta. En realidad, ya encontré la respuesta a mi pregunta en el foro oficial de la frambuesa Pi. Alguien lo ha hecho antes, incluso en 3 monitores, primero editando el núcleo y luego creando 3 framebuffers. Puede encontrar más información aquí: raspberrypi.org/forums/viewtopic.php?p=661085#p661085
Omid1989
1
Gracias usted - que podría ser capaz de utilizar para confirmar que algunos de mis otros supuestos anteriores. Agregué esto parcialmente porque alguien acaba de hacer una pregunta similar a esta que he redirigido aquí, ya que según la filosofía SE no queremos 15 hilos de preguntas y respuestas diferentes sobre más o menos lo mismo ("¿Puedo ejecutar varias pantallas? "). También puede responder a su propia pregunta en detalle si lo desea / cuando lo haga funcionar.
Ricitos de oro
Aunque leí ese tema en el foro oficial de Raspberry Pi, no pude entender la respuesta por completo, porque no estoy muy familiarizado con términos como kernel, framebuffer, etc. Así que estaría agradecido si resume esa respuesta y publica un tutorial paso a paso aquí; para que pueda elegirlo como la mejor respuesta aquí. Mil millones por su tiempo y ayuda @goldilocks. Realmente lo aprecio.
Omid1989
@goldilocks ¿Y cómo puedo cambiar de pantalla lcd a hdmi (no es obligatorio ejecutarlo al mismo tiempo)? Hice una pregunta aquí .
Ionică Bizău
Estimado @goldilocks, ahora que la fundación RaspberryPi finalmente ha lanzado su pantalla oficial, tal vez podamos organizar una mejor respuesta a esta pregunta popular. Bien podría ayudar a muchos entusiastas. Espero escuchar de usted.
Omid1989
0

OP no proporcionó suficiente información sobre el software que se utiliza para seleccionar videos, etc. Por lo tanto, sospecho que el deseo es tener X ejecutándose en dos pantallas a la vez, con una controlando la otra. En cuyo caso la respuesta es no, por lo que puedo determinar

Para otras funciones de pantallas múltiples, aquí hay un resumen rápido de lo que he hecho:

1) En el primer Rpi con la pantalla táctil de 3.5 pulgadas, puedo conectar una pantalla HDMI y usarla como un terminal basado en caracteres presionando Ctrl-Alt-F2. La pantalla de 3.5 "se congela y puede hacer todos los comandos que desee en el HDMI usando el mismo teclado y mouse. Para volver a la pantalla de 3.5", presione Ctrl-Alt-F7

2) En mi otro Rpi, hago que arranque en el HDMI en X. Luego, usando PuTTY (personaje) o Escritorio remoto (Gráfico) o TightVNC (Gráfico), puedo tener una segunda pantalla en funcionamiento que es invisible en el HDMI El teclado y el mouse normales siguen funcionando en el HDMI. Uso Bluetooth para obtener sonido ya que mi monitor es solo de pantalla.

El teclado y el mouse de la PC funcionan en el programa de acceso remoto. De lejos, mi favorito es el Escritorio remoto, pero TightVNC facilita la transferencia de archivos.
En todos los casos, lo más probable es que desee que FileZilla también se ejecute para las transferencias, especialmente si su PC de control es un monitor dual.

Más relacionado con la pregunta del OP, la única forma en que he encontrado controlar el arranque HDMI desde los programas de acceso remoto es a través de las funciones de la cámara. Pero hay una advertencia.

AQUÍ ESTÁ EL RUB: cada vez que utiliza las funciones de la cámara, como raspivid, raspistill, etc., SIEMPRE se muestra en la salida HDMI. Y ni siquiera es lo suficientemente educado como para pasar a pantalla completa, lo que significa que aún puede ver su escritorio X detrás de él. Parece ajustarse a la pantalla de arriba a abajo, luego, cuando se completan las funciones de la cámara, el HDMI volverá al escritorio o al negro si ha excedido el tiempo de inactividad normal que pone en blanco la pantalla.

3) También inicié mi otro Rpi en una pantalla de 60 pulgadas para mostrar algunos trucos a la familia y simplemente acepté el hecho de que podían verme invocar las funciones. Solo mantengo una pequeña ventana de terminal abierta (en el centro de la pantalla para que los videos se superpongan encima) donde tengo algunos scripts de BASH para emitir los comandos que necesito, (como mostrarles mi último lapso de tiempo o los bichos) El sensor de movimiento de la cámara NoIR quedó atrapado en el patio por la noche) y la parte del comando pasó por alto. Acaban de ver los videos.

Si está utilizando una interfaz gráfica en su programa de selección de música, mucho mejor, porque entonces podrían ver lo que está haciendo. Entonces pueden ooh y ahhh sobre cómo puedes hacer que una computadora tan pequeña haga todo eso, genio que eres.

Pero para un resultado final en relación con la pregunta, siento que el OP está pensando más en las líneas de un entorno de presentación de negocios. Sostengo que en ese caso no hay un sustituto real para una pequeña PC portátil que pueda manejar pantallas duales.

SDsolar
fuente
0

Acabo de encontrar un video corto que muestra cómo este tipo pudo soportar dos monitores cambiando cosas en el Kernel. No puedo comentar sobre esto más que simplemente enumerar el enlace:

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

SDsolar
fuente
¡Bienvenido a Raspberry Pi! Si bien esto puede responder teóricamente la pregunta, sería preferible incluir aquí las partes esenciales de la respuesta y proporcionar el enlace para referencia.
Steve Robillard
Entendido. Estaba más allá de mi nivel de experiencia. Sin embargo, era pertinente para el OP.
SDsolar
O, más bien, he pegado esto un comentario sobre la pregunta del OP.
Piotr Kula
0

Hay una manera, pero tienes que hacer un poco de trabajo manual para eso. Se ha indicado en el sitio oficial de la fundación pi que omxplayer es adecuado para la salida de audio dual, pero debe hacerlo desde la línea de comandos. Simplemente escriba el siguiente comando: omxplayer --display = 5 [FATH PATHNAME]

Este comando le permitirá reproducir videos en la salida HDMI usando simultáneamente la pantalla táctil.

Mayank sinha
fuente
0

Esto es posible si usa el marco Kivy. Podrá codificar su IU en python (para la pantalla táctil) y luego reproducir videos de forma independiente a través de la salida HDMI.

Para ver un ejemplo básico de la estructura del código en un RPi3 con la pantalla táctil oficial de 7 ", vaya aquí .

Neex
fuente