DE112020005127T5 - Unbegrenzter pixelcanvas für led-videowände - Google Patents

Unbegrenzter pixelcanvas für led-videowände Download PDF

Info

Publication number
DE112020005127T5
DE112020005127T5 DE112020005127.7T DE112020005127T DE112020005127T5 DE 112020005127 T5 DE112020005127 T5 DE 112020005127T5 DE 112020005127 T DE112020005127 T DE 112020005127T DE 112020005127 T5 DE112020005127 T5 DE 112020005127T5
Authority
DE
Germany
Prior art keywords
video
tile
pixel data
video content
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112020005127.7T
Other languages
English (en)
Inventor
Jeremy Hochman
Christopher S. Byrne
Scott M. Blair
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
H2VR Holdco Inc
Original Assignee
H2VR Holdco Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by H2VR Holdco Inc filed Critical H2VR Holdco Inc
Publication of DE112020005127T5 publication Critical patent/DE112020005127T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1423Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
    • G06F3/1446Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display display composed of modules, e.g. video walls
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/222Control of the character-code memory
    • G09G5/227Resolution modifying circuits, e.g. variable screen formats, resolution change between memory contents and display screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/391Resolution modifying circuits, e.g. variable screen formats
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/42Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of patterns using a display memory without fixed position correspondence between the display memory contents and the display position on the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2300/00Aspects of the constitution of display devices
    • G09G2300/02Composition of display devices
    • G09G2300/026Video wall, i.e. juxtaposition of a plurality of screens to create a display screen of bigger dimensions
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/08Fault-tolerant or redundant circuits, or circuits in which repair of defects is prepared
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2356/00Detection of the display position w.r.t. other display screens
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/04Display device controller operating with a plurality of display units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • G09G2360/122Tiling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/04Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller
    • G09G2370/045Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller using multiple communication channels, e.g. parallel and serial
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/20Details of the management of multiple sources of image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Transforming Electric Information Into Light Information (AREA)
  • Devices For Indicating Variable Information By Combining Individual Elements (AREA)
  • Control Of El Displays (AREA)

Abstract

Verfahren, Systeme und Vorrichtungen zum Anzeigen von Videoinhalt auf großen, hochauflösenden Videowänden, die ein Gitter-Netzwerk aus einem Array von Anzeige-Kacheln mit redundanter Netzwerkschaltung umfassen können, wobei ein virtueller, unbegrenzter Pixelcanvas in einem Speicher eines Videocontrollers geschaffen wird, um eine Paketierung und Adressierung von Videoinhalts-Paketen zur Ausgabe an die Videowand durch ein Paket-geschaltetes Netzwerk zu ermöglichen. Offenbarte Ausführungsformen eignen sich besonders gut für die Verwendung mit Videowänden, die LED-Kacheln verwenden.

Description

  • DATEN EINER VERWANDTEN ANMELDUNG
  • Diese Anmeldung beansprucht die Prioritätsrechte der am 25. Oktober 2019 eingereichten vorläufigen US-Patentanmeldung mit der laufenden Nummer 62/925,794 und mit dem Titel Unlimited Pixel Canvas Utilizing Multiple Video Ingest Nodes on a Network, die in ihrer Gesamtheit durch Bezugnahme hierin aufgenommen wird.
  • GEBIET DER OFFENBARUNG
  • Die vorliegende Offenbarung betrifft allgemein das Gebiet von LED-Videowänden. Insbesondere ist die vorliegende Offenbarung auf Systeme und Verfahren gerichtet, die einen unbegrenzten Pixelcanvas für LED-Videowände bereitstellen.
  • STAND DER TECHNIK
  • Herkömmliche große Videoanzeigewände, wie etwa LED-Videowände, werden von einem Feld bzw. Array von lichtemittierenden Anzeigemodulen gebildet, die häufig als Kacheln bezeichnet werden. Jede Kachel stellt X·Y Pixel mit einem festen Pixelabstand/einer festen Pixeldichte dar, beispielsweise 512 x 512 Pixel. Es ist nicht unüblich, dass man aufgrund von Herstellungskosten und Komplexität viele Variationen der Kacheln bei unbegrenzten Pixeldichten hat. Außerdem hat jede Kachel eine feste Größe, beispielsweise 500 mm in der Breite x 500 mm in der Höhe. Ferner nutzen LED-Videowände im Allgemeinen proprietäre Datenprotokolle über einem physischen Medium, das keiner industriellen Norm entspricht, um das Videosignal auszugeben. Manche Hersteller nutzen RS485, manchen verwenden Ethernet Schicht 2, manche verwenden Ethernet Schicht 1. Aufgrund dieses nicht genormten Verfahrens der Verteilung von Daten auf die Kacheln wird für das proprietäre Format des Herstellers im Allgemeinen ein LED-Prozessor oder -Controller (im Folgenden „LED-Controller“) als Signalwandler verwendet, um ein einer Norm entsprechendes Videosignal zu bekommen, wie etwa HDMI, DVI, DisplayPort, SDI oder ein anderes Format.
  • Es ist häufig trotz des „LED-Controllers“ schwierig, Videoinhalt einfach an die Videowand zu senden, da die resultierende Auflösung der Videowand häufig keinem genormten Videoinhaltsraster entspricht. Zum Beispiel kann es sein, dass eine physische Videowandgröße für eine bestimmte Installation 5 Meter in der Breite mal 2,5 Meter in der Höhe betragen muss. Unter Verwendung einer üblichen LED-Kachelgröße würde dies bei Abmessungen wie oben angegeben (500 mm x 500 mm) zu einem Array von 10 Kacheln in der Breite x 5 Kacheln in der Höhe führen. Bei den Kacheln mit 512 x 512 Pixeln beträgt die resultierende Pixelauflösung 5120 Pixel in der Breite x 2560 Pixel in der Höhe. In diesem Fall gab die physische Größe der Videowandinstallation die Auflösung vor, da die Kacheln eine feste Größe und Pixeldichte aufweisen. Die resultierende Auflösung übertrifft eine UHD/4k-Auflösung (3840 x 2160) bei weitem, und somit muss eine herkömmliche Anzeige, welche die aktuelle UHD/4K-Technologie verwendet, mehrere Videoströme mit extrem komplexen Computern und/oder Videovorrichtungen einsetzen, um genügend Pixeldaten bereitzustellen, um die gesamte Auflösung der Videowand nutzen zu können.
  • Eine existierende Technologie zum Ansteuern dieses Beispiels für eine Videowand wird ausführlicher unter Bezugnahme auf 6, 7 und 8 erläutert. Wie in 6 dargestellt ist, müssen vier UHD-Raster 2 genutzt werden, damit das 5120 x 2560 Pixel aufweisende Kachel-Array 4 einen Abschnitt jedes Rasters überlappen kann, um genügend Pixeldaten zum Anzeigen auf den Kacheln zu empfangen. Jedes von den UHD-Rastern enthält Informationen mit nicht mehr als einer UHD/4K-Auflösung, die dem Abschnitt des Bildes entsprechen, das auf einem Abschnitt der Videowand angezeigt werden soll, der von dem mit ihm verbundenen LED-Controller angesteuert wird. Generell muss das Kachel-Array der Videowand in ausreichend viele separate Anzeigen geteilt werden, die jeweils von ihren eigenen LED-Controllern angesteuert werden, so dass kein individuelles Display eine größere Auflösung als UHD/4K hat.
  • Ein anderes Problem, das von der heutigen Technologie aufgeworfen wird, resultiert aus der Tatsache, dass die individuellen LED-Kacheln typischerweise nicht auf elektronischem Wege wahrnehmen, dass sie Teil einer einzelnen, größeren Videowand mit vielen Kacheln sind. Trotz der Tatsache, dass das Kachel-Array 4 ein scheinbar nahtloses Bild haben könnte, ist es tatsächlich, wie in 7 gezeigt, mit vier separaten Anzeigeabschnitten A, B, C und D konfiguriert, die jeweils als unabhängige Anzeigen konfiguriert sind, die jeweils eine von vier separaten Videoeingaben empfangen. Jedoch können in diesem Fall, wie dies häufig der Fall ist, die vier separaten Anzeigen keine gleichen Auflösungen haben (i.e. alle vier jeweils 2560 x 1280 Pixel), da die physischen Größen der Kacheln dies nicht gestatten. Unter Verwendung von heutiger Technologie kann eine einzelne LED nicht zwei Videoraster überbrücken, um das Kachel-Array 4 mit 5120 x 2560 Pixeln unter Verwendung von Kacheln mit 512 x 512 Pixeln zu erschaffen, weisen daher zwei Anzeigen (A und B) eine Pixelauflösung von 2560 x 1536 auf und zwei Anzeigen (C und D) weisen eine Pixelauflösung von 2560 x 1024 auf. Die erforderlichen ungleichen Anzeigeauflösungen machen somit die Einrichtung und Verarbeitung noch komplizierter, Eingaben aus Videoquellen müssen vorab präzise geparst bzw. zerlegt werden, damit sie für die spezifische Auflösung des Anzeigeabschnitts, an den sie gelenkt werden, passen. Aufgrund der Art und Weise, wie die Videoeinspeisungen (A, B, C, D) an herkömmlichen Videorastern ausgerichtet werden müssen, kommt es zu einem Verlust an Bandbreite an beiden Videorastereingaben, die in die LED-Prozessoren gehen, und auch zu einem Verlust an Pixelverarbeitungsbandbreite innerhalb der einzelnen LED-Prozessoren, da diese Pixel nicht an eine LED-Kachel in einer Anzeige gesendet werden.
  • Ein System des Standes der Technik zum Ansteuern einer Videowand 4 könnte typischerweise konfiguriert sein wie in 8 gezeigt. Unter Verwendung von existierender Technologie benötigt jeder Anzeigeabschnitt (A, B, C und D) seinen eigenen LED-Controller, der unabhängigen Videoinhalt abspielt, der dem Abschnitt der größeren Anzeigewand entspricht, von dem er ein Teil ist. Wie in 8 gezeigt ist, muss der Videosignalweg vier Mal vollständig repliziert werden, trotz der Tatsache, dass die resultierende Anzeige für den Betrachter eine einzige Anzeige ist. Nicht nur sind vier Videoquellen 6 erforderlich, die jeweils den geeigneten Abschnitt 8 des fertigen Bildes bereitstellen, sondern auch vier unabhängige LED-Controller 10. Jeder LED-Controller 10 erzeugt seinen Bildabschnitt für den entsprechenden Anzeigeabschnitt A, B, C oder D und kommuniziert mit diesem Anzeigeabschnitt über dedizierte Verbindungen 12, die für diese individuelle Paarung aus Controller/Anzeigeabschnitt spezifisch sind. In der Realität ist jedoch die Komplexität der Verkabelung viel größer als dies in der vereinfachten schematischen Darstellung in 8 gezeigt ist, da dedizierte Verknüpfungen 12 individuell mit jeder LED-Kachel verbunden werden müssen, um ihren Abschnitt des Videosignals für den Anzeigeabschnitt (A, B, C, D), in dem sich die Kachel befindet, bereitstellen zu können. Solche Notwendigkeiten für komplexe Verkabelungen haben zu anderen Problemen bei der Bereitstellung eines robusten Systems mit ausfallsicheren Schutzeinrichtungen geführt.
  • Zum Beispiel können heutige Technologien zur Schaffung und Steuerung von zu einem Array gruppierten Videovorrichtungen, wie etwa das 8 gezeigte Videowandsystem des Standes der Technik, eine große Lücke bei der Datenredundanz und Anzeigeresilienz zeigen. In heutigen Systemen werden Anzeige-Kacheln üblicherweise in einer Reihe bzw. Daisy Chain verkettet, bis die Kapazität der Datenleitung maximiert worden ist, um einen Videosignalweg für jede Kachel bereitzustellen. In manchen Systemen des Standes der Technik kann eine Backup- bzw. Sicherungsleitung verwendet werden, um einen Notlauf bereitzustellen, falls die primäre Verknüpfung bzw. der primäre Link ausfällt (aufgrund eines Fehlers einer vorgeschalteten Einrichtung oder eines Kabels). Beide Verfahren sind jedoch rudimentär und liefern immer noch nicht ein ästhetisch zufriedenstellendes Ergebnis. Darüber hinaus schützen solche Systeme nicht vor mehrfachen Ausfällen von Data Links bzw. Datenverbindungen zwischen Kacheln. Zum Beispiel führen in einem verketteten Daisy-Chain-System Ausfälle von zwei separaten Data Links trotz eines Sicherungs-Data-Link zu toten Kacheln zwischen den ausgefallenen Data Links.
  • Auch wenn zur Vereinfachung von Verbindungen Netzwerkkommunikationstechniken eingesetzt werden könnten, wird ihre Anwendung durch Kommunikationsvorgänge und Verarbeitungsschwierigkeiten mit hochauflösenden Videowänden und andere Schwierigkeiten, die von paketbasierten Netzwerken gestellt werden, beschränkt. In einem normalen Videosystem, das von Eingaben und Ausgaben gebildet wird, ist es relativ naheliegend, eine spezifische x,y-Koordinate des eingehenden Videos als Ausgangspunkt für eine erneute Sendung eines Signals zu wählen. Die x,y-Ausgangskoordinate und die Breite/Höhe des erneut zu sendenden Blocks sind leicht festzustellen, da Videoformate rasterbasiert sind - das heißt, dass die Daten Zeile für Zeile oder Teilstück für Teilstück von oben links nach unten rechts in der Abtastungsreihenfolge gesendet werden. Jedoch muss in einem Paket-geschalteten Netzwerk, beispielsweise einem Ethernet-Payload, Datenverkehr nicht an Ethernet-Switches bzw. - Netzwerkweichen geroutet werden, um Pakete in irgendeiner bedeutenden Reihenfolge zu empfangen oder zu senden - die Switches geben lediglich ein Paket von Punkt A an B aus. Die Zufälligkeit solcher Netzwerke macht bisher somit die Ausgabe von hochaufgelöstem Videoinhalt mit hoher Qualität problematisch.
  • ABRISS DER OFFENBARUNG
  • In einer Implementierung ist die vorliegende Offenbarung auf ein Verfahren zum Ausgeben von Pixeldaten umfassendem Videoinhalt an eine von einem Array von Videoanzeige-Kacheln gebildete hochauflösende Videowand gerichtet, wobei jede von den Videoanzeige-Kacheln eine eindeutige Adresse innerhalb des Array aufweist. Das Verfahren schließt ein: Empfangen eines oder mehrerer Videoeingangsströme, die Pixeldaten zum Rendern des Videoinhalts auf der Videowand enthalten; virtuelles Rendern des Videoinhalts aus dem einen oder den mehreren Videoeingangsströmen in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher mit einer Auflösung zu bilden, die der Auflösung der Videowand zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in der Videowand, die der Pixeldatenposition in der virtuellen Darstellung entspricht, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  • In einer anderen Implementierung ist die vorliegende Offenbarung auf einen Videocontroller zum Rendern von Videoinhalt auf einer hochauflösenden Videowand gerichtet, wobei die Videowand von einem Array von Anzeige-Kacheln gebildet wird, wobei jede von den Kacheln eine eindeutige Adresse innerhalb des Array aufweist. Der Videocontroller weist einen Prozessor und Speicher auf, der dafür ausgelegt ist, einen oder mehrere Videoeingangsströme zu empfangen, die Pixeldaten zum Rendern des Videoinhalts über dem Kachel-Array enthalten, der Speicher enthält Befehle, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, den Videoinhalt aus dem einen oder den mehreren Videoeingangsströmen in dem Speicher virtuell zu rendern, um in dem Speicher eine virtuelle Darstellung des Videoinhalts mit einer Auflösung zu bilden, die der Auflösung der Videowand zumindest gleich ist; Pixeldaten aus der virtuellen Darstellung in Pakete aufzuteilen, die jeweils die eindeutige Kacheladresse für Kachelpositionen in dem Kachel-Array der Videowand, die der Pixeldatenposition in der virtuellen Darstellung in dem Speicher entspricht, aufweisen; und die Pixeldaten-Pakete über ein Paket-geschaltetes Netzwerk an die Videowand zu senden.
  • In einer noch anderen Implementierung ist die vorliegende Offenbarung auf ein Videowandsystem gerichtet, das aufweist: ein Array von aneinander angrenzenden Anzeige-Kacheln, die eine Videowand bilden, wobei jede von den Anzeige-Kacheln eine eindeutige Adresse und eine von einem Pixel-Array gebildete Anzeigeoberfläche, die von mehreren Kachelrändern umgeben ist, aufweist, wobei die Anzeigewand einen Außenrand aufweist, der von offenen Kachelrändern definiert wird, die an keinen anderen Kachelrand angrenzen; Datenverbindungen an jedem Kachelrand, die jeweils einen Data Link mit jeder angrenzenden Kachel in dem Array aus Anzeige-Kacheln bilden, wobei die Data Links dafür ausgelegt sind, zumindest Videosignaldaten und Steuerdaten zu senden; einen Videocontroller, der dafür ausgelegt ist, einen oder mehrere Videoeingangsströme zu empfangen und paketierten Videoinhalt zum Anzeigen auf der Videowand auszugeben; mindestens einen primären Network Switch bzw. mindestens eine primäre Netzwerkweiche, der bzw. die mit dem Videocontroller über mindestens eine primäre Netzwerkverbindung kommuniziert; mindestens eine Sicherungs-Netzwerkweiche, die mit dem Videocontroller über mindestens eine Sicherungs-Netzwerkverbindung kommuniziert; primäre Kachelverbindungen, die unabhängige Netzwerkverbindungen zwischen der mindestens einen primären Netzwerkweiche und jedem von zumindest einer ersten Mehrzahl von Kachelrand-Datenverbindungen an offenen Kachelrändern umfassen; und Sicherungs-Kachelverbindungen, die unabhängige Netzwerkverbindungen zwischen der mindestens einen Sicherungs-Netzwerkweiche und jedem von zumindest einer zweiten Mehrzahl von Kachelrand-Datenverbindungen an offenen Kachelrändern umfassen; wodurch die mindestens eine primäre Netzwerkweiche paketierten Videoinhalt gemäß Kacheladressen, die den Videoinhaltspaketen zugewiesen wurden, zum Anzeigen an das Kachel-Array schickt und die mindestens eine Sicherungs-Netzwerkweiche mehrere redundante Pfade für Videoinhaltspakete für den Fall eines Ausfalls von einem oder mehreren Kachel-Datenverbindungen bereitstellt, um Anzeigefehler, die aus ausgefallenen Kachel-Datenverbindungen resultieren, zu eliminieren oder zu reduzieren.
  • Figurenliste
  • Für den Zweck der Veranschaulichung der Offenbarung zeigen die Zeichnungen Aspekte von einer oder mehreren Ausführungsformen der Offenbarung. Man beachte jedoch, dass die vorliegende Offenbarung nicht auf die genauen Anordnungen und Instrumentierungen beschränkt ist, die in den Zeichnungen gezeigt sind, worin:
    • 1 ein Blockschema ist, das eine Ausführungsform eines Verarbeitungssystems und -verfahrens einer Videowand gemäß der vorliegenden Offenbarung abbildet.
    • 1A ein partielles Blockschema ist, das eine alternative Bildauswahl unter Verwendung der Systeme und Verfahren von 1 abbildet.
    • 2 ein Ablaufschema ist, das ein Verfahren gemäß der vorliegenden Offenbarung darstellt.
    • 3 ein Blockschema eines Multicontroller-Verarbeitungsclusters gemäß der vorliegenden Offenbarung ist.
    • 4 ein schematisches Diagramm einer Ausführungsform eines vernetzten Videowandsystems gemäß der vorliegenden Offenbarung ist.
    • 4A eine Detailansicht der oberen linken Ecke der in 4 gezeigten Videowand ist.
    • 4B ein schematisches Diagramm einer alternativen Ausführungsform eines vernetzten Videowandsystems gemäß der vorliegenden Offenbarung ist.
    • 5 ein Blockschema ist, das ein Beispiel für eine Rechenvorrichtung zeigt, wie sie verwendet werden kann, um hierin offenbarte Systeme und Verfahren auszuführen.
    • 6 ein Schema ist, das eine Entsprechung eines großen Array aus Videowandkacheln zu Standard-UHD/4K-Videorastern darstellt.
    • 7 ein Schema ist, das eine Anordnung von Anzeigen zur Schaffung des großen Array aus Videowandkacheln in 5 darstellt.
    • 8 ein Blockschema ist, das ein System des Standes der Technik zur Bereitstellung von Videoinhalt an einer großen Videowand, wie der in 5 und 6 gezeigten Videowand, darstellt.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Systeme und Verfahren dieser Offenbarung präsentieren einen Paradigmenwechsel für den Betrieb von Videowandcontrollern, die hierin als Videocontroller bezeichnet werden und manchmal auch Videoprozessor oder LED-Prozessor genannt werden. Nicht nur vereinfachen offenbarte Systeme und Verfahren die Dinge für einen Benutzer, der eine Videowand einrichtet, sondern sie stellen auch einen unbegrenzten Pixelcanvas an dem Kachel-Array der Videowand bereit, ohne dass man sich darüber Gedanken machen müsste, ob Kacheln Rastergrenzen überschreiten. In bestimmten Ausführungsformen wird dies dadurch bewerkstelligt, dass innerhalb des Videocontrollers ein einziger unbegrenzter Pixelcanvas geschaffen wird, dessen Pixelauflösung der Auflösung des Kachel-Array der Anzeigewand entspricht. Ein einzelner Videocontroller gemäß der vorliegenden Offenbarung ist in der Lage, die Mehrzahl von Videorastern, die empfangen werden, um die Videowandauflösung zu unterstützen, zu empfangen und zu einem einzelnen unbegrenzten Canvas mit angemessener Auflösung zusammenzuführen, der dann in spezifische Videowandeingaben zerlegt und umpaketiert werden kann, um an dem richtigen Kachel-/Pixelort in der Videowand empfangen zu werden. Darüber hinaus können in dem Fall, dass eine Pixelauflösung der Videowand die Kapazität eines einzelnen Videocontrollers überschreitet, Videocontroller, wie sie hierin offenbart werden, miteinander vernetzt werden, um ihre Verarbeitungskapazität zu kombinieren, so dass alle Controller ihren jeweiligen unbegrenzten Pixelcanvas zu einem einzigen Superpixelcanvas kombinieren, der die Mehrzahl von unbegrenzten Pixelcanvassen aus der Mehrzahl von vernetzten Controllern umfasst. Anders ausgedrückt arbeiten die Mehrzahl von Videocontrollern als Cluster (e.g. als verteiltes Rechnernetz), um ein vereinheitlichtes Pixeldatenprotokoll an das Kachel-Array der Videowand zu senden. Unter Verwendung der hierin beschriebenen Verfahren und Systeme können Anzeige-Kacheln in einem Videowand-Array eingegebene Videoraster überspannen, während sie als einzelnes Array gesteuert werden (und nicht als ein Array pro Videoraster, wie im Stand der Technik). Auch wenn die Lehren der vorliegenden Offenbarung auf jede Art von hochauflösender, von einem Array gebildeter Videoanzeigewand anwendbar sind, bietet die vorliegende Offenbarung bestimmte Vorteile für die Einrichtung und Steuerung von Videowänden, die von LED-Kacheln gebildet werden, und das Design von LED-Videowandcontrollern (a/k/a „LED-Prozessoren“).
  • Unter Verwendung von Videosignalen auf IP-Basis, wie etwa den SMPTE-ST2110- oder SDVoE-Protokollen, oder einem TCP/IP-Film- oder Fernseh-Streaming-Dienst, ist es möglich, Signale zwischen Quellen und Zielen dynamisch zu definieren, da sie alle ein gemeinsames Data Backbone von hoher Kapazität nutzen, statt dass ein Signal durch eine eigene Kabel/Signal-Beziehung definiert wird, wie dies früher der Fall war. Dies macht es möglich, dass das Netzwerk Intelligenz besitzt, um zu ermöglichen, dass Vorrichtungen Dinge wie Auflösung und Koordinaten dynamisch ermitteln, um einen Lastenausgleich zwischen einer Mehrzahl von Verarbeitungsvorrichtungen zu ermöglichen.
  • 1 stellt eine Ausführungsform eines Systems 100 gemäß der vorliegenden Offenbarung zur Bereitstellung eines Videos an einer Videowand 102 dar, die (in diesem der Veranschaulichung dienenden Beispiel) die gleiche Auflösung hat wie die oben beschriebene Videowand 4 (5 Meter in der Breite x 2,5 Meter in der Höhe, gebildet aus 50 512 x 512 Pixel aufweisenden Kacheln 104 von einem halben Quadratmeter mit einer Gesamtauflösung von 5120 Pixeln in der Breite x 2560 Pixeln in der Höhe). Wie der Durchschnittsfachmann erkennen wird, sind die Lehren der vorliegenden Offenbarung ebenso auf Videowände beliebiger Auflösung oder Größe anwendbar. Wie bereits beschrieben wurde, stellt eine Videoquelle 106 vier separate Videoeingaben bereit, die vier UHD-Raster darstellen, um genügend Pixeldaten bereitzustellen, mit denen die physische Auflösung der Videowand 102 erreicht werden kann. Anders als bei Systemen des Standes der Technik müssen die vier eingegebenen Raster jedoch nicht sorgfältig auf die physische Konfiguration der Anzeige-Kacheln oder auf Grenzen innerhalb der Videowand 102 abgestimmt werden. Wie nachstehend ausführlicher beschrieben wird, kann die Rastergröße oder Auflösung des eingegebenen Videodatenstroms von dem endgültigen Anzeige-Kachelfeld abweichen, wobei die einzige Beschränkung darin besteht, dass kein individueller Eingangsstrom die Bandbreitenbegrenzungen der Eingangsverbindungen des Videocontrollers überschreitet und die Eingangsströme gemeinsam die endgültige Auflösung der Anzeigewand erreichen (oder übertreffen). Eine Kommunikationsverknüpfung bzw. ein Kommunikations-Link 110 zwischen einer Videoquelle 106 und einem Videocontroller 108 kann ein beliebiger geeigneter videosignalführender Link sein, wie etwa HDMI, DVI, DisplayPort, SDI, etc. Alternativ dazu können die Eingaben aus Videoquellen als auf IP basierende Videosignale (oder ein anderes digitales/paketiertes Netzwerksystem) bereitgestellt werden, in welchem Fall der Kommunikations-Link 110 eine geeignete IP-Netzwerkkommunikationsverbindung oder eine andere geeignete Netzwerkverbindung sein kann.
  • Der Videocontroller 108 weist eine Benutzeroberfläche (GUI) 120 auf, die eine Anzeige der Videoquelle aufweist. Der Videocontroller 108 kann auch andere Rechenvorrichtungskomponenten, wie etwa einen Speicher, einen Speicher, einen oder mehrere Prozessoren und interne Kommunikationseinrichtungen etc. aufweisen. Der Videocontroller 108 empfängt auch Informationen über eine Konfiguration der Videowand 102, und zwar entweder automatisch über eine bidirektionale Kommunikation mit der Videowand oder über eine direkte Eingabe des Benutzers. Der Videocontroller 108 vereinigt die Mehrzahl von empfangenen Videorastern (in diesem Beispiel vier) zu einem einzigen unbegrenzten Pixelcanvas, bei dem es sich um eine virtuelle Neuschaffung einer höherauflösenden Videoeingabe handelt, innerhalb eines Speichers des Controllers. Der in dem Speicher des Controllers geschaffene Pixelcanvas ist in dem Sinne unbegrenzt, als er als eine virtuelle Neuschaffung keinen physischen Beschränkungen unterliegt und jede Auflösung einer Videowand erreichen oder übertreffen kann. Wo die Auflösung der Videowand die Verarbeitungskapazität eines einzelnen Videocontrollers überschreitet, können die Videocontroller der vorliegenden Offenbarung vernetzt werden, um einen Verarbeitungscluster zu bilden, wie nachstehend beschrieben. Der unbegrenzte Pixelcanvas ermöglicht einem individuellen Videocontroller, das Videosignal zum Senden an die endgültige Anzeigevorrichtung über ein Paket-geschaltetes Netzwerk mit geeigneter Netzwerkadressierung neu zu paketieren. Im Falle eines Verarbeitungsclusters aus Videocontrollern (siehe z.B. 3) können die Videocontroller miteinander kommunizieren, um zu ermitteln, welcher Controller am wirkungsvollsten das Videosignal zum Senden an die endgültige Anzeigevorrichtung umpaketieren kann.
  • In manchen Ausführungsformen werden die so zusammengeführten eingegebenen Videoraster dem Benutzer auf einer GUI 120 als unbegrenzter Pixelcanvas 122 präsentiert. Die GUI 120 präsentiert auch ein Rahmenwerkzeug 124, das die Außengrenze der Anzeigefläche (den Rahmen) der Videowand 102 darstellt. Das Rahmenwerkzeug 124 ermöglicht dem Benutzer die Positionierung des Videobilds innerhalb des Rahmens der Videowand. Wenn die Auflösung oder das Seitenverhältnis des Bildes aus der Videoquelle und die der Videowand nicht gleich sind, hat der Benutzer die Option, das Rahmenwerkzeug 124 zu verwenden, um den Abschnitt des Videobilds auszuwählen, der angezeigt werden soll, die Videoeingabe durch einen Videoskalierer (der in den Videocontroller 108 integriert sein oder von diesem getrennt vorliegen kann) weiter zu verarbeiten oder das Videobild neu zu sampeln, damit es in den Rahmen passt.
  • Die GUI 120 präsentiert dem Benutzer auch ein Rasterwerkzeug 126. Das Rasterwerkzeug 126 ermöglicht dem Benutzer, den Abschnitt jeder Videorastereingabe zu bestimmen, der an das Kachel-Array der Videowand 102 adressiert werden soll. Wie bereits beschrieben, erfordert die Gesamt-Pixelauflösung der Videowand 102 vier Videoraster, um genügend Pixelinformationen liefern zu können. In dem Beispiel, das in 1 präsentiert wird, setzt das Rasterwerkzeug 126 den Pixelcanvas 122 innerhalb des Rahmenwerkzeugs 124 aus den vier Quadranten der Videoquelle 106 zusammen, wobei jeweils einer einem Abschnitt des Pixelcanvas entspricht, der von dem Videocontroller 108 virtuell erzeugt wird. Das Rasterwerkzeug 126 kann an beliebiger Stelle innerhalb des Rahmenwerkzeugs 124 positioniert werden, solange kein Videoanzeigesegment, das von dem Rasterwerkzeug definiert wird, die Auflösung der eingegebenen Videoraster überschreitet. Man beachte, dass so definierte Videoanzeigesegmente nicht an der physischen Konfiguration des Kachel-Array ausgerichtet sein müssen. Während 1 zeigt, dass der horizontale Teiler des Rasterwerkzeugs 126 an der physischen Grenze zwischen zwei Kachelreihen ausgerichtet ist, zeigt 1A eine andere, ebenso valide Anordnung, bei welcher der horizontale Teiler des Rasterwerkzeugs 126 unterhalb der Mitte der mittleren Kachelreihe positioniert ist, so dass die vier definierten Videosegmente jeweils eine gleiche Auflösung von 2560 x 1280 Pixel aufweisen. (Man beachte, dass die Darstellung des Rasterwerkzeugs an der Anzeige 102 in 1 und 1A nur ein Bezugspunkt ist, um das Verstehen der Offenbarung zu erleichtern. Sie bildet keinen Teil der Ausführungsformen). Hierin offenbarte Ausführungsformen stellen somit einen wichtigen Vorteil gegenüber Systemen des Standes der Technik bereit, da die eingegebenen Videoraster nicht „vordefiniert“ werden müssen, damit sie dem physischen Layout des Kachel-Array entsprechen, bevor sie an den Videocontroller ausgegeben werden. Es ist nur notwendig, dass die individuellen Eingaben keine Bandbreitenbeschränkungen des Eingabenetzes überschreiten und dass die eingegebenen Videoraster insgesamt die Auflösung der Anzeigewand erreichen oder übertreffen. Innerhalb dieser minimalen Parameter ist die Eingabe/Ausgabe-Beziehung der Videodatenströme beliebig, und die eingegebenen und ausgegebenen Videodatenströme müssen überhaupt keine gegenseitige geografische Ausrichtung aufweisen.
  • Da die Paketierung (oder Rasterbildung) der eingehenden Videosignale nicht zu der Größe des Kachel-Array passen muss (i.e. die Grenze des virtuellen Videorahmens hat nichts mit einer Grenze einer physischen Videowandkachel zu tun), setzt der Videocontroller zuerst den Videorahmen in dem Speicher zusammen, zerschneidet das Video wieder in die Stücke von Kachelgröße und paketiert das Video dann neu in Pakete mit der richtigen Größe, die an das vorgesehene Kachelziel adressiert sind, jeweils möglichst in Echtzeit (im Allgemeinen innerhalb eines Videorahmens). Man beachte, dass das Beispiel von 1 und 1A zwar vier Videoeingangsraster (-ströme) verwendet, dass aber eine beliebige Zahl von Eingangsrastern verwendet werden kann. Wie der Durchschnittsfachmann erkennen wird, kann die Zahl der Eingangsraster auf einen einzelnen Eingabestrom herunterskaliert oder auf über 100 Ströme hochskaliert werden, solange die Bandbreiten- und Endauflösungsparameter erfüllt werden. Im Allgemeinen können hierin offenbarte Ausführungsformen eine Anzahl von N auf Paketen basierenden Videoeingangsströmen (IP oder MAC oder andere), eine Anzahl von X auf Videopaketen basierenden Kachelausgangsströmen (wobei jeder Kachelausgangsstrom die Pixeldaten für eine bestimmte Kachel umfasst) unterstützen, wobei keine Beziehung zwischen den Eingangs- und Ausgangspaketkgrenzen gegeben sein muss, außer dass die Eingangszahl N kleiner ist als die Ausgangszahl X.
  • Ein Überblick über eine Ausführungsform eines Verfahrens zum Ausgeben von Videoinhalt an eine Videowand gemäß der vorliegenden Offenbarung ist in dem Ablaufschema von 2 gegeben. In einem Schritt 140 bestimmt das System das physische Layout und die Pixelauflösung der Videowand. In manchen Ausführungsformen des Systems kann dies durch direkte Kommunikation zwischen dem Videocontroller und der Videowand geschehen. Zum Beispiel kann von jeder Kachel über das Netzwerk ihre eindeutige ID, ihre Größe oder Auflösung und ihre Position in Bezug auf angrenzende Kacheln abgefragt werden. Alternativ dazu kann ein Benutzer solche Informationen direkt über die Benutzeroberfläche oder einen Datei-Download eingeben. In einem Beispiel sind der Videocontroller und das Kachel-Array der Videowand als Netzwerk konfiguriert, wobei jede Kachel in dem Array eine eindeutige Adresse, wie etwa eine MAC- oder IP-Adresse, aufweist. Kacheln melden sich automatisch oder nach Aufforderung an dem Netzwerk, und der Videocontroller bestätigt das Vorhandensein der Kacheln. Danach kommunizieren die Kacheln und der Videocontroller mit jeder Kachel, die ihre Anzeigeinformationen, insbesondere ihre anzeigbare Pixelbreite und -höhe, an den Videocontroller sendet. Dank der Anzeigeinformationen über die einzelnen Kacheln in dem Kachel-Array der Videowand kennt der Videocontroller den Ort jeder Kachel und die Art und die Menge der Daten, die an die einzelnen Kacheln zu senden sind. Diese Kachelanzeigeinformationen können als Teil einer Datenbank des Videocontrollers gespeichert werden, die der Videocontroller dann verwenden kann, um die Kachel auf der GUI des Videocontrollers anzuzeigen, wodurch es dem Benutzer möglich ist, die Kachel spezifisch an ihrem Platz in dem Kachel-Array zu platzieren, um das Kachel-Array der Videowand in der Datenbank des Videocontrollers manuell zu konstruieren. In manchen Ausführungsformen können Videokacheln mit vier Kommunikations-Links versehen sein, einer an jedem Rand (oben/unten/links/rechts), wodurch es den Kacheln gestattet ist, mit angrenzenden Kacheln zu kommunizieren, um die Adressinformationen der angrenzenden Kacheln zu empfangen. Dank der Kenntnis der Adresse und der relativen Position jeder angrenzenden Kachel kann der Videocontroller automatisch die Konfiguration des Kachel-Array im Speicher konstruieren, indem er von jeder Kachel die Identität der ihr benachbarten Kacheln abfragt. Ein Durchschnittsfachmann kann das Kacheladressierungsprotokoll auf Basis der Lehren der vorliegenden Offenbarung so konfigurieren, wie es für ein bestimmtes System am besten passt.
  • In einem Schritt 142 wird die benötigte Anzahl von Videoeingaben, um die Pixelauflösung der Videowand zu erreichen, ermittelt. In manchen Fällen kann dieser Schritt früher als die Pixelauflösung der Videowand erledigt werden, und benötigte Videoeingaben können dem Benutzer vorab bekannt sein. In anderen Fällen kann der Videocontroller dafür ausgelegt sein, diese Informationen zu ermitteln und die Videoquelle anzuweisen, die benötigte Anzahl von Videoeingaben auszugeben.
  • Sobald die Videoeingaben in dem Videocontroller empfangen wurden, kombiniert der Controller in einem Schritt 144 die Videoeingaben im Speicher des Controllers, um den einzelnen virtuellen, unbegrenzten Pixelcanvas zu bilden. Unter Verwendung des einzelnen unbegrenzten Pixelcanvas werden in einem Schritt 146 Abschnitte der mehreren Videoeingaben geeigneten Videowandsegmenten zugewiesen, wo die Abschnitte angezeigt werden, und kombiniert, um das Videobild als ein einzelnes zusammenhängendes Video über der Videowand neu zu schaffen. In einer Ausführungsform wird auf einer grafischen Benutzeroberfläche (GUI), die von dem Videocontroller angesteuert wird, eine Abbildung des einzelnen unbegrenzten Pixelcanvas präsentiert. Schritt 146 kann durch eine Bedienung von Grafikwerkzeugen über die GUI des Videocontrollers von einem Benutzer manuell durchgeführt werden, oder die Zuweisung kann automatisch erfolgen, so dass sie von dem Videocontroller ohne eine Bedienung durch den Benutzer durchgeführt wird.
  • Nachdem jedes Eingangsraster (jede Videoeingabe) einem Eingangssegment des Kachel-Array der Videowand zugewiesen wurde, paketiert der Videocontroller in einem Schritt 150 auf Basis von Kachel-Array-Adressen wie oben beschrieben jede Videoeingabe gemäß einem zugewiesenen Videowandsegment neu. In alternativen Ausführungsformen können die Schritte 146 und 150 kombiniert werden. Dann werden für das Ausgabestadium 152 die kleineren Kachelpakete versendet, die für Endpunkte von viel geringerer Größe bestimmt sind, und werden somit auf der Seite des Kachel-Array wieder zu einem Bild zusammengesetzt. Die „unverknüpfte“ Natur des Ethernet, das in seinem Nutzlastmuster gegenüber einem herkömmlichen Videoraster, das in einer gut bekannten und etablierten Reihenfolge ankommt, einigermaßen zufällig ist, unterscheidet die offenbarten Ausführungsformen von älteren Systemen.
  • In einem Schritt 152 werden die neu paketierten Datenströme an das Netzwerk ausgegeben, das die Videoanzeigewand verbindet, und in einem Schritt 154 lenken die Netzwerkweichen die Videopakete an die entsprechenden Kacheladressen, wo sie auf der Videowand präsentiert werden, die ein nahtloses Videobild bildet.
  • Hierin offenbarte Systeme und Verfahren stellen eine erhöhte Flexibilität bei der Steuerung extrem großer Videowandkonfigurationen unter Verwendung von Clusterrechenverfahren zum Ausbilden eines verteilten Rechennetzes, das mehrere Videocontroller 108 verknüpft, bereit. Wenn beispielsweise die Pixeldatenanforderungen einer großen Videowand die Pixelkapazität eines einzelnen Videocontrollers 108 überschreiten, können mehrere Videocontroller 108 vernetzt werden, um ein LED-Verarbeitungscluster 190 zu bilden, wie in 3 gezeigt. In diesem Beispiel werden vier Videocontroller 108 über Netzwerk-Links 192, wie etwa Ethernet-Verbindungen, vernetzt. Es kann eine beliebige Anzahl von Controllern vernetzt werden, um die Pixelanforderungen einer bestimmten Videowand zu erfüllen. Das Verarbeitungscluster 190 ist so konfiguriert, dass alle Videocontroller 108 ihre jeweilige Mehrzahl von unbegrenzten Pixelcanvassen 122 zu einem einzelnen Supercanvas kombinieren, der dem Benutzer auf der GUI 120 präsentiert wird, wie oben beschrieben. Die Mehrzahl von vernetzten Videocontrollern 108 arbeitet als ein Cluster, um ein vereinheitlichtes Pixeldatenprotokoll an das Kachel-Array zu senden, und Anzeige-Kacheln können eingegebene Videoraster überspannen, während sie als ein einzelnes Array gesteuert werden (und nicht als Array pro Videoraster). Der vernetzte Cluster kann einen konsensbasierten Algorithmus verwenden, um eine Zustandsmaschine automatisch über mehreren Prozessoren zu verteilen, auch wenn viele andere Clusterbildungsmethoden möglich sind. Die Steuerung des Verarbeitungsclusters 190 kann von einem Fachmann auf dem Gebiet des Network Computing auf Basis der Lehren der vorliegenden Offenbarung auf mehreren verschiedenen Wegen konfiguriert werden. Zum Beispiel kann das Verarbeitungscluster 190 so konfiguriert werden, dass es durch eine GUI oder API von einem Endbenutzer und/oder durch einen beliebigen individuellen Videocontroller, der Teil des Clusters ist, gesteuert werden kann. Eine Endbenutzersteuerung kann auch über eine GUI bereitgestellt werden, die auf einem der Videocontroller gehostet ist, der Teil des Clusters ist. In einer anderen Alternative ist die Endbenutzersteuerung eine webbasierte GUI, die auf einem der Videocontroller, der Teil des Verarbeitungsclusters 190 ist, gehostet oder von diesem bedient wird.
  • Aufgrund der relativ hohen Bandbreite des Ethernet und der vergleichsweise geringen Pixelzahl von selbst größeren Videowänden kann es von Vorteil sein, Kacheln mit mindestens einem oberen und einem unteren Port miteinander zu verknüpfen. Für eine Netzwerkredundanz ist es möglich, das paketierte Video an mehrere Links an einer Kachel (obere und untere Eingabe-Ports) gleichzeitig zu senden. In Fällen, wo die Kacheln mehr als zwei Ports aufweisen, beispielsweise vier Ports, jeweils einen auf jeder Seite, wie in dem vernetzten Videowandsystem 160 in 4, kann das Ethernet von allen vier Seiten jeder Kachel gespeist werden. Für eine weitere Redundanz ist es aufgrund der Fähigkeiten des Ethernet Switch möglich, mehr als vier Ströme zu jeder Kachel zu senden. Zum Beispiel hört die Kachel N+1 auf Paketströme, und ein Controller kann der Kachel sagen, welcher Strom eine höhere Priorität aufweist. Falls ein bestimmter Strom nicht verfügbar ist, kann die Kachel so programmiert werden, dass sie den Strom mit der nächsthöheren Priorität anzeigt, und so weiter.
  • Ein Beispiel für ein vernetztes Videowandsystem 160 mit robuster Kachelredundanz, das Vorteil aus den oben genannten Merkmalen zieht, ist in 4 und 4A gezeigt. Das vernetzte Videowandsystem 160 ist ein Beispiel für eine Ausführungsform des in 1, 1A und 3 gezeigten Netzwerkes 130. In dem Beispiel von 4 ist das vernetzte Videowandsystem 160 eine LED-Videowand und weist somit den LED-Controller 162 auf, der sich der Methodik des unbegrenzten Pixelcanvas zum Ausgeben von Videoinhalt, wie oben unter Bezugnahme auf den Videocontroller 108 beschrieben, bedienen kann. Andere Verarbeitungsmethodiken können ebenfalls in dem LED-Controller 162 eingesetzt werden. Die Videowand 164 weist ein Array von LED-Kacheln 166 auf, aber es können auch andere Videoanzeigemoden eingesetzt werden. Dieses spezielle Beispiel zeigt ein Array von 10 x 5 Kacheln, aber es kann jede Anzahl von Kacheln verwendet werden. Jede von den Kacheln 166 ist mit vier Kommunikations-Links 168, einer auf jeder Seite der Kachel, versehen. (Gebogene Pfeile innerhalb der Videowand 164 in 4 stellen einen Kommunikations-Link dar. Nur vier stellvertretende Links sind mit einer Bezugszahl 168 gekennzeichnet, um 4 nicht zu überfrachten; die detaillierte Ansicht in 4A enthält mehr Kennzeichnungen). Die Kommunikations-Links 168 können von auf Ethernet basierenden Verbindungen zum Übertragen von Videodaten und Kachelkommunikation mit ausreichender Geschwindigkeit, um Latenzprobleme in der Videoeingabe zu vermeiden, basieren. Man beachte, dass zur Bereitstellung eines vollständig redundanten Systems die Kommunikations-Links 168 sowohl dem Kachelvermaschungsnetz als auch dem Datennetz Redundanzmechanismen bereitstellen.
  • In dem Beispiel von 4 sind zwei Netzwerkweichen gezeigt: die primäre Netzwerkweiche 170 und die Sicherungs-Netzwerkweiche 172, die mit dem LED-Controller 162 über primäre und Sicherungs-Netzwerkverbindungen 174 bzw. 176 kommunizieren. Auch wenn zwei Netzwerkweichen gezeigt sind, könnte ein anderes Beispiel vier Netzwerkweichen einsetzen, jeweils eine, die primäres oder Sicherungsvideo von jeder Ecke des LED-Kachel-Array einspeist. Ferner kann eine Redundanz durch Verbinden von primären und Sicherungsweichen über eine oder mehrere Netzwerk-Verbindungsleitungen 178 bereitgestellt werden. Die primären und Sicherungs-Netzwerkverbindungen 174, 176, ebenso wie die optionalen Netzwerk-Verbindungsleitungen 178 (falls vorgesehen) können Hochgeschwindigkeits-Netzwerkverbindungen, wie etwa Gigabit-Ethernet oder höher, unter Verwendung eines oder mehrerer Kupfer- oder Glasfaserkabel umfassen. Ebenso kann auch mehr als ein LED-Controller 162 eingesetzt werden, beispielsweise ein Cluster, wie in 3 gezeigt. Netzwerkverbindungen 182, die herkömmliche Ethernet-Kabel sein können, stellen Videoeingaben und Datenkommunikation mit Kacheln 166 über Kommunikations-Links 168e an den offenen Rändern von Randkacheln 166e am Außenrand der Videowand bereit (siehe 4A). Bei Kacheln 166 mit Rändern, die anderen Kachelrändern gegenüberliegen, vereinen die Kommunikations-Links 168 die aneinander angrenzenden Kacheln. Die Kommunikations-Links 168 können auch optional dafür ausgelegt sein, Leistung an die Kacheln auszugeben.
  • Wegen der, wie in 4 gezeigt, von mehreren Zwischenkachel-Kommunikations-Links geschaffenen Gitter-Netzwerk-Topologie, die primäre und der Sicherung dienende Multipoint-Data-Links (eine primären Weiche 170 und eine Sicherungsweiche 172, jeweils mit unabhängigen Netzwerkverbindungen 182 für Kacheln 166) aufweist, gibt es mehrere Datenwege zu jeder individuellen LED-Kachel 166, so dass ein Ausfall von einem oder mehreren Kommunikations-Links zwischen Kacheln nicht zu toten Kacheln in dem Kachel-Array führt, wie bei der herkömmlichen Daisy-Chain-Verkettung der Video-Links zwischen Kacheln. Diese Anordnung schützt sogar vor bestimmten katastrophalen Ausfallmodi, wie etwa einem Ausfall einer gesamten Kolonne von nebeneinander liegenden Links 168 zwischen Kacheln 166, was passieren kann, wenn ein großes Objekt von hinten auf die Videowand fällt und eine ganze Verkabelungssäule physisch beschädigt (wenn beispielsweise Kabel abgerissen werden, wenn ein großes Werkzeug umfällt). Ohne die Sicherungs-Data-Links, die über die Sicherungs-Netzwerkweiche 172 und ihre unabhängigen Netzwerkverbindungen 182 bereitgestellt werden, würde die Hälfte der Videowand 164 in einem solchen katastrophalen Ausfallmodus keine Daten empfangen und wäre nicht in der Lage, ein Bild anzuzeigen.
  • 4B stellt eine andere Ausführungsform eines vernetzten Videowandsystems 160A dar. Das System 160A kann im Wesentlichen ebenso aufgebaut sein wie das System 160, aber in diesem Fall mit zwei primären Netzwerkweichen 170 und zwei Sicherungs-Netzwerkweichen 172. Die primären Netzwerkverbindungen 174 und die Sicherungs-Netzwerkverbindungen 176 sind somit dupliziert, ebenso wie optionale Verbindungsleitungen 178 zwischen Netzwerkweichen. In 4A sind Randkacheln um den Außenrand der Videowand 164A um der größeren Klarheit willen separat mit 166e gekennzeichnet. Die Netzwerkverbindungen 182 sind mit den Kommunikations-Links an den offenen, äußeren Rändern jeder Randkachel um den Außenrand der Videowand 164A herum eingerichtet. Die Kommunikations-Links 168 sind in 4B nicht separat gezeigt, sind aber auf die gleiche Weise bereitgestellt wie in 4 und 4A gezeigt.
  • Hierin offenbarte Ausführungsformen stellen somit neben anderen Vorteilen ein Netzwerk von LED-Controllern bereit, die ihre Eingangsvideoraster nahtlos zu einem einzelnen Supercanvas mit unbegrenzter Pixelauflösung kombinieren, der leicht so konfiguriert werden kann, dass er zu jeder Videowand passt. Diese Techniken ermöglichen eine lichtemittierende Anzeigevorrichtung, die in der Lage ist, zwei oder mehr herkömmliche Videoraster zu überspannen.
  • Beschriebene Ausführungsformen bieten auch eine Verkabelung mit beschränkungsfreier Topologie. Es werden Ausführungsformen bereitgestellt, in denen alle Videocontroller ein superschnelles Network Backbone (i.e. 100G) zwischen allen Netzwerkweichen speisen. Mit dieser Konfiguration braucht das System keine starre Verkabelungsbeziehung zwischen Videocontrollern und Kacheln wie in Systemen des Standes der Technik.
  • Physische Ausführungsformen schließen eine Beispiels-Videowand ein, die von einem Kachel-Array gebildet wird, das so groß ist, dass es mehrere Videocontroller überspannen muss. Die Eingabe in die einzelnen Videocontroller kann aus einem gemeinsamen TCP/IP-basierten Videonetz kommen, so dass jeder Videocontroller Zugang zu jedem Abschnitt des Bildschirmrasters hat. Die Video-Controller kommunizieren miteinander als Rechennetz, um zu ermitteln, wie das Raster aufgeteilt werden soll, um die Last gleichmäßig unter sich aufzuteilen. Jeder Video-Controller übermittelt dann die Koordinaten und die Größe des Teilrasters, die anzufordern sind, als Eingabe an das IPbasierte Videonetz. Ferner kann die Ausgabe von jedem Videocontroller, der ein Array von Kacheln speist, in ein oder mehrere Ethernet-Netzwerke eingespeist werden, die von allen Videocontrollern des Systems gemeinsam genutzt werden, so dass die summierte Bandbreite des Netzwerkes von ausreichender Kapazität ist, um die Kommunikation mehrerer Videocontroller, die viele Kacheln speisen, zu bewältigen. Die Videocontroller arbeiten somit gemeinsam, um zu ermitteln, wie die Kacheln aufgeteilt werden sollen, um die Verarbeitungslast zwischen Controllern auszugleichen. Dieses Ausgleichen ist auch Teil der Rechnung für die Video-Controller, um dann die geeignete Rastergröße und den geeigneten Rasterort von dem auf TCP/IP basierenden Videonetz anzufordern, um die Eingabe in den Video-Controller einzuspeisen.
  • Hierin offenbarte Systeme und Verfahren schließen LED-Kachelnetze ein, die VLANs nutzen, um das Routen der Daten zwischen LED-Controllern und Kacheln durch das Ethernet-Vermittlungsnetz vorzusehen. Alternativ dazu können Ausführungsformen ein flaches Netzwerk ohne VLANs nutzen, um alle LED-Kacheln zu entdecken und Datenverkehr auf Basis der MAC-Adressen der Kacheln an die einzelnen Kacheln zu übermitteln und zu lenken. Ferner können offenbarte Systeme und Verfahren eine Netzwerkweiche umfassen, die Daten von LED-Controllern in einer einzelnen Netzwerkweiche oder einer Gruppe von Netzwerkweichen unter Verwendung von Faser-, Kupfer- oder DirectAttach-Netzwerkschnittstellen empfängt. Das Netzwerk kann einen oder mehrere Links mit hoher Bandbreite verwenden, für die Kupfer oder Faser verwendet wird, um mit einer Mehrzahl von Netzwerkweichen auf der Seite der Videoanzeigewand zu kommunizieren. LED-Controller in solchen Systemen und Verfahren können die verfügbare Bandbreite durch unterschiedliche Abschnitte des Vermittlungsnetzes als Komponente der Ermittlung, wie der Datenverkehr zwischen Controllern aufgeteilt werden soll, berücksichtigen.
  • In zusätzlichen alternativen Ausführungsformen werden Systeme und Verfahren offenbart, in denen das LED-Kachel-Array eine Videowand und ein verbundenes Gitter-Netzwerk als Teil des Lastenausgleichs zwischen LED-Controllern und einem Vermittlungsnetz bildet. Eingaben in die Controller können von verschiedenen Ausgängen eines Media Servers oder Bildschirmumschalt-Videocontrollers unter Verwendung herkömmlicher Videosignale wie unter anderem HDMI, DisplayPort, SDI, etc. eingespeist werden, wo mehrere LED-Controller nötig sind, um das Kachel-Array in der Videowand zu beherrschen. Die LED-Controller teilen den Bildschirm in mehrere Raster und übermitteln die Größe und Details des Rasters unter Verwendung von EDID, DisplayID, API oder anderen an den Media Server, so dass der Media Server das Array von Controllern auf intelligente Weise mit den Rastern geeigneter Größe speisen kann.
  • In manchen Ausführungsformen können Video-/LED-Controller 108, 162 einschließlich der GUI 120 als eine oder mehrere Rechenvorrichtungen 200 ausgeführt werden, wie in 5 dargestellt. In diesem Beispiel weist die Rechenvorrichtung 200 einen oder mehrere Prozessoren 202, einen Speicher 204, eine Speichervorrichtung 206, eine High-Speed-Schnittstelle 208, die mit dem Speicher 204 und High-Speed-Erweiterungsports 210 verbunden ist, und eine Low-Speed-Schnittstelle 212, die mit einem Low-Speed-Bus 214 und der Speichervorrichtung 206 verbunden ist, auf. Die einzelnen Komponenten 202, 204, 206, 208, 210 und 212 sind unter Verwendung verschiedener Busse oder anderer geeigneter Verbindungen untereinander verbunden, wie in 5 durch Pfeile angegeben ist, die Komponenten verbinden. Der Prozessor 202 kann Befehle zur Ausführung innerhalb der Rechenvorrichtung 200 verarbeiten, einschließlich von Befehlen, die im Speicher 204 oder auf der Speichervorrichtung 206 gespeichert sind, um grafische Informationen über die GUI 218 mit der Anzeige 220 oder an einer externen Benutzeroberflächenvorrichtung, die mit der High-Speed-Schnittstelle 208 gekoppelt ist, anzuzeigen. In anderen Implementierungen können je nach Eignung mehrere Prozessoren und/oder mehrere Busse zusammen mit mehreren Speichern und Speichertypen verwendet werden. Ebenso können mehrere Rechenvorrichtungen 200 verbunden werden, wobei jede Vorrichtungen Abschnitte der notwendigen Operationen bereitstellt (z.B. als Serverbank, als Gruppe von Blade-Servern oder als Multiprozessorsystem).
  • Der Speicher 204 speichert Informationen innerhalb der Rechenvorrichtung 200. In einer Implementierung ist der Speicher 204 ein computerlesbares Medium. In einer Implementierung handelt es sich bei dem Speicher 204 um eine Einheit oder um Einheiten eines flüchtigen Speichers. In einer anderen Implementierung handelt es sich bei dem Speicher 204 um eine Einheit oder um Einheiten eines nicht-flüchtigen Speichers.
  • Die Speichervorrichtung 206 ist in der Lage, eine Massenspeicherung für die Rechenvorrichtung 200 bereitzustellen und kann Informationen wie etwa die Datenbank von Kachelanzeigeinformationen, die oben beschrieben wurde, enthalten. In einer Implementierung ist die Speichervorrichtung 206 ein computerlesbares Medium. In einer Reihe verschiedener Implementierungen kann die Speichervorrichtung 206 eine Diskettenvorrichtung, eine Festplattenvorrichtung, eine Bildplattenvorrichtung oder eine Bandvorrichtung, ein Flash-Memory oder eine andere, ähnliche Festkörperspeichervorrichtung oder ein Array von Vorrichtungen sein, einschließlich von Vorrichtungen in einem Speichernetz oder anderen Konfigurationen. In einer Implementierung ist ein Computerprogrammprodukt materiell in einem Informationsträger verkörpert. Das Computerprogrammprodukt enthält Befehle, die bei ihrer Ausführung ein oder mehrere Verfahren durchführen, wie etwa solche, die oben beschrieben sind. Der Informationsträger ist ein computer- oder maschinenlesbares Medium, wie etwa der Speicher 204, die Speichervorrichtung 206 oder ein Speicher auf dem Prozessor 202.
  • Ein High-Speed-Controller 208 verwaltet bandbreitenintensive Operationen für die Rechenvorrichtung 200, während ein Low-Speed-Controller 212 weniger bandbreitenintensive Operationen verwaltet. Solch Aufgabenzuweisungen sind nur beispielhaft. In einer Implementierung ist der High-Speed-Controller 208 mit dem Speicher 204, der Anzeige 220 (e.g. über einen Grafikprozessor oder -beschleuniger) und mit High-Speed-Erweiterungsports 210, die verschiedene Erweiterungskarten (nicht gezeigt) akzeptieren können, gekoppelt. In der Implementierung ist der Low-Speed-Controller 212 mit der Speichervorrichtung 206 und einem Low-Speed-Erweiterungsport 214 gekoppelt. Der Low-Speed-Erweiterungsport, der verschiedene Kommunikationsports (z.B. USB, Bluetooth, Ethernet, drahtloses Ethernet) einschließen kann, kann mit einer oder mehreren Eingabe-/Ausgabevorrichtungen als Teil der GUI 218 oder als weitere externe Benutzeroberfläche, wie etwa als Tastatur, als Pointervorrichtung, als Scanner, oder als Netzwerkvorrichtung, wie etwa als Weiche oder Router, gekoppelt sein, e.g. über einen Netzwerkadapter.
  • Verschiedene Implementierungen der hier beschriebenen Systeme und Techniken können in digitaler elektronischer Schaltung, integrierter Schaltung, speziell designten ASICs (anwendungsspezifischen integrierten Schaltkreisen), Computer-Hardware, Firmware, Software und/oder Kombinationen davon verwirklicht werden. Diese verschiedenen Implementierungen können eine Implementierung in einem oder mehreren Computerprogrammen einschließen, die auf einem programmierbaren System ausführbar und/oder interpretierbar sind, das einschließt: mindestens einen einem bestimmten Zweck dienenden oder universellen programmierbaren Prozessor, der mit einem Speichersystem gekoppelt ist, um Daten und Befehle von diesem zu empfangen und an dieses zu senden, mindestens eine Eingabevorrichtung und mindestens eine Ausgabevorrichtung.
  • Diese Computerprogramme (auch Programme, Software, Software-Anwendung oder Code genannt) schließen Maschinenbefehle für einen programmierbaren Prozessor ein und können in einer höheren prozeduralen und/oder objektorientierten Programmiersprache und/oder in Assemblier-/Maschinensprache implementiert werden. Wie hierin verwendet, bezeichnet die Begriffe „maschinenlesbares Medium“ „computerlesbares Medium“ jedes Computerprogrammprodukt, jeden Apparat und/oder jede Vorrichtung (e.g. Magnetplatten, Bildplatten, Speicher, programmierbare Logikvorrichtungen (PLDs)), die verwendet werden, um Maschinenbefehle und/oder Daten an einem programmierbaren Prozessor bereitzustellen, einschließlich eines maschinenlesbaren Mediums, das Maschinenbefehle als maschinenlesbares Signal empfängt. Der Begriff „maschinenlesbares Signal“ bezeichnet jedes Signal, das verwendet wird, um Maschinenbefehle und/oder Daten an einem programmierbaren Prozessor bereitzustellen.
  • Um eine Interaktion mit einem Benutzer möglich zu machen, können die hierin beschriebenen Systeme und Techniken an einem Computer implementiert werden, der eine Anzeigevorrichtung (e.g. eine LED-, OLED- oder LCD-Anzeige), um dem Benutzer Informationen anzeigen zu können, und eine Tastatur und eine PointerVorrichtung (z.B. eine Maus oder einen Trackball), durch welche der Benutzer eine Eingabe an dem Computer bereitstellen kann, aufweist. Andere Arten von Vorrichtungen können ebenfalls verwendet werden, um eine Interaktion mit einem Benutzer zu ermöglichen; beispielsweise kann Feedback, das dem Benutzer bereitgestellt wird, jede Form von sensorischem Feedback (z.B. visuelles Feedback, akustisches Feedback oder taktiles Feedback) sein; und eine Eingabe von dem Benutzer kann in jeder Form empfangen werden, einschließlich einer akustischen, Sprach- oder taktilen Eingabe.
  • Die hier beschriebenen Systeme und Techniken können in einem Rechnersystem implementiert werden, das eine Back-End-Komponente einschließt (z.B. als Datenserver), oder das eine Middleware-Komponente (z.B. einen Anwendungsserver) einschließt oder das eine Front-End-Komponente (z.B. einen Client-Computer, der eine grafische Benutzeroberfläche oder einen Web-Browser aufweist, durch die bzw. den ein Benutzer mit einer Implementierung der hier beschriebenen Systeme und Techniken interagieren kann), oder irgendeine Kombination aus solchen Back-End-, Middleware- oder Front-End-Komponenten einschließt. Die Komponenten des Systems können durch irgendeine Form oder irgendein Medium für eine kabelgebundene oder kabellose digitale Datenübermittlung (e.g. ein Kommunikationsnetz) miteinander verbunden werden. Beispiele für Kommunikationsnetze schließen ein Local Area Network („LAN“), ein Wide Area Network („WAN“) und das Internet ein.
  • Das Rechensystem kann Clients und Server einschließen. Ein Client und ein Server können im Allgemeinen voneinander fern sein und interagieren typischerweise durch ein Kommunikationsnetz. Die Beziehung von Client und Server entsteht dank Computerprogrammen, die auf den jeweiligen Computern laufen und die eine Client-Server-Beziehung miteinander haben.
  • Weitere alternative Ausführungsformen schließen Verfahren zum Ausgeben von Pixeldaten umfassendem Videoinhalt an eine von einem Array von Videoanzeige-Kacheln gebildete hochauflösende Videowand ein, wobei jede Videoanzeige-Kachel eine eindeutige Adresse innerhalb des Array aufweist. Verfahrensschritte können einschließen: Empfangen einer Mehrzahl von Videoeingangsströmen, wobei die Eingangsströme jeweils einen Abschnitt der Pixeldaten enthalten, die nötig sind, um den Videoinhalt auf der Anzeigewand zu rendern, und die Mehrzahl von Eingangsströmen insgesamt alle benötigten Pixeldaten umfassen; Kombinieren der Videoeingangsströme, um eine virtuelle Darstellung des Videoinhalts in einem Speicher mit einer Auflösung zu bilden, die der Videowandauflösung zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete mit der eindeutigen Kacheladresse für eine entsprechende Kachelposition in der Videowand auf Basis einer Pixeldatenposition in der virtuellen Darstellung; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  • Eine weitere Ausführungsform der hierin offenbarten Verfahren ist ein Verfahren zum Ausgeben von Pixeldaten umfassendem Videoinhalt an eine von einem Array von Videoanzeige-Kacheln gebildete hochauflösende Videowand, wobei jede von den Videoanzeige-Kacheln eine eindeutige Adresse innerhalb des Array aufweist. In manchen Ausführungsformen kann das Array von Videoanzeige-Kacheln ein Array von LED-Kacheln sein. Ein solches Verfahren kann einschließen: Empfangen eines oder mehrerer Videoeingangsströme, die weniger Pixeldaten enthalten als zum Rendern des Videoinhalts auf der Videowand mit der Auflösung der Videowand notwendig sind; Hochskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen hochskalierten Videoeingangsstrom zu erzeugen, der Pixeldaten umfasst, die notwendig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern; virtuelles Rendern des Videoinhalts aus dem mindestens einen hochskalierten Videoeingangsstrom in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher mit einer Auflösung zu bilden, die der Videowandauflösung zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in der Videowand, die der Pixeldatenposition in der virtuellen Darstellung entspricht, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  • Eine noch andere Ausführungsform der hierin offenbarten Verfahren ist ein Verfahren zum Ausgeben von Pixeldaten umfassendem Videoinhalt an eine von einem Array von Videoanzeige-Kacheln gebildete hochauflösende Videowand, wobei jede von den Videoanzeige-Kacheln eine eindeutige Adresse innerhalb des Array aufweist. In manchen Ausführungsformen kann das Array von Videoanzeige-Kacheln ein Array von LED-Kacheln sein. Ein solches Verfahren kann einschließen: Empfangen eines oder mehrerer Videoeingangsströme, die mehr Pixeldaten enthalten als zum Rendern des Videoinhalts auf der Videowand mit der Auflösung der Videowand notwendig sind; Herunterskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen herunterskalierten Videoeingangsstrom zu erzeugen, der Pixeldaten umfasst, die notwendig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern; virtuelles Rendern des Videoinhalts aus dem mindestens einen herunterskalierten Videoeingangsstrom in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher mit einer Auflösung zu bilden, die der Videowandauflösung zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in der Videowand, die der Pixeldatenposition in der virtuellen Darstellung entspricht, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  • Das Obige war eine ausführliche Beschreibung von der Veranschaulichung dienenden Ausführungsformen der Offenbarung. Man beachte, dass in der vorliegenden Beschreibung und den hier beigefügten Ansprüchen konjunktive Formulierungen, wie sie etwa in den Ausdrücken „mindestens eines von X, Y und Z“ und „eines oder mehrere von X, Y und Z“ verwendet werden, solange nicht ausdrücklich etwas anderes ausgesagt oder angegeben wird, so aufzufassen sind, dass jeder Gegenstand in der konjunktiven Liste in jeder Anzahl ausschließlich jedes anderen Gegenstands in der Liste oder in jeder Anzahl in Kombination mit beliebigen oder allen anderen Gegenständen in der konjunktiven Liste, von denen jeder auch in beliebiger Zahl vorhanden sein kann, vorhanden sein kann. Wendet man diese allgemeine Regel an, so sollen die konjunktiven Ausdrücke in den obigen Beispielen, in denen die konjunktive Liste aus X, Y und Z besteht, jeweils Folgendes einschließen: eines oder mehrere von X; eines oder mehrere von Y; eines oder mehrere von Z; eines oder mehrere von X und eines oder mehrere von Y; eines oder mehrere von Y und eines oder mehrere von Z; eines oder mehrere von X und eines oder mehrere von Z; und eines oder mehrere von X, eines oder mehrere von Y und eines oder mehrere von Z.
  • Verschiedene Modifikationen und Hinzufügungen können vorgenommen werden, ohne vom Gedanken und Bereich dieser Offenbarung abzuweichen. Merkmale von jeder der oben beschriebenen verschiedenen Ausführungsformen können je nach Eignung mit Merkmalen von anderen beschriebenen Ausführungsformen kombiniert werden, um eine Vielfalt von Merkmalskombinationen in damit verbundenen neuen Ausführungsformen bereitzustellen. Auch wenn das Obige eine Anzahl von separaten Ausführungsformen beschreibt, ist das hier Beschriebene ferner lediglich eine Veranschaulichung der Anwendung der Prinzipien der vorliegenden Offenbarung. Auch wenn bestimmte Verfahren hierin so dargestellt und/oder beschrieben werden, als würden sie in einer bestimmten Reihenfolge durchgeführt, ist außerdem die Reihenfolge, um Aspekte der vorliegenden Offenbarung zu erreichen, im Rahmen durchschnittlicher Fachkenntnisse stark variabel. Demgemäß soll diese Beschreibung nur als Beispiel verstanden werden und den Bereich dieser Offenbarung ansonsten nicht beschränken.
  • Vorstehend wurden Ausführungsbeispiele offenbart und in den begleitenden Zeichnungen dargestellt. Der Durchschnittsfachmann wird verstehen, dass verschiedene Änderungen, Weglassungen und Hinzufügungen an dem, was hierin konkret offenbart wurde, vorgenommen werden können, ohne vom Gedanken und Bereich der vorliegenden Offenbarung abzuweichen.

Claims (32)

  1. Verfahren zum Ausgeben von Videoinhalt, umfassend Pixeldaten, an eine von einem Array von Videoanzeige-Kacheln gebildete hochauflösende Videowand, wobei jede von den Videoanzeige-Kacheln eine eindeutige Adresse innerhalb des Arrays aufweist, wobei das Verfahren umfasst: Empfangen eines oder mehrerer Videoeingangsströme, die Pixeldaten enthalten, zum Rendern des Videoinhalts auf der Videowand; virtuelles Rendern des Videoinhalts aus dem einen oder den mehreren Videoeingangsströmen in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher bei einer Auflösung zu bilden, die der Auflösung der Videowand zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in der Videowand, die der Pixeldatenposition in der virtuellen Darstellung entsprechen, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  2. Verfahren nach Anspruch 1, wobei: das Empfangen ein Empfangen einer Mehrzahl von Videoeingangsströmen umfasst; jeder Eingangsstrom von der Mehrzahl von Eingangsströmen einen Abschnitt der Pixeldaten enthält, die nötig sind, um den Videoinhalt auf der Videowand zu rendern; die Mehrzahl von Eingangsströmen insgesamt alle benötigten Pixeldaten umfasst; und das virtuelle Rendern ein Kombinieren der Mehrzahl von Videoeingangsströmen in dem Speicher, um die virtuelle Darstellung des Videoinhalts zu bilden, umfasst.
  3. Verfahren nach Anspruch 1, wobei: der eine oder die mehreren Videoeingangsströme weniger Pixeldaten enthalten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind; und das virtuelle Rendern umfasst: Hochskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen hochskalierten Videoeingangsstrom zu erzeugen, der Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern; und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem einen oder den mehreren hochskalierten Videoeingangsströmen zu bilden.
  4. Verfahren nach Anspruch 1, wobei: der eine oder die mehreren Videoeingangsströme mehr Pixeldaten enthalten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind; und das virtuelle Rendern umfasst: Herunterskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen herunterskalierten Videoeingangsstrom zu erzeugen, der Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern, und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem mindestens einen herunterskalierten Videoeingangsstrom zu bilden.
  5. Verfahren nach einem der Ansprüche 1-4, wobei das Empfangen ein Empfangen des einen oder der mehreren Videoeingangsströme in einem Videocontrollersystem umfasst.
  6. Verfahren nach Anspruch 5, wobei das Videocontrollersystem einen einzelnen Videocontroller umfasst.
  7. Verfahren nach Anspruch 5, wobei Pixeldaten, die zum Rendern des Videoinhalts notwendig sind, die Kapazität eines einzelnen Videocontrollers überschreiten und das Videocontrollersystem mehrere vernetzte Videocontroller umfasst, die als Cluster fungieren, um die virtuelle Darstellung des Videoinhalts über mindestens einen Speicher zu rendern.
  8. Verfahren nach Anspruch 7, wobei der Cluster durch eine GUI oder API von einem Endbenutzer steuerbar ist.
  9. Verfahren nach Anspruch 7 oder Anspruch 8, wobei der Cluster durch einen beliebigen individuellen Videocontroller, der Teil des Clusters ist, von einem Endbenutzer steuerbar ist.
  10. Verfahren nach Anspruch 7 oder Anspruch 8, wobei die Endbenutzersteuerung eine GUI umfasst, die auf einem der Videocontroller, der Teil des Clusters ist, gehostet wird.
  11. Verfahren nach Anspruch 7 oder Anspruch 8, wobei die Endbenutzersteuerung eine webbasierte GUI ist, die auf einem der Videocontroller, der Teil des Verarbeitungsclusters ist, gehostet wird oder von einem solchen bereitgestellt wird.
  12. Verfahren nach einem der vorangehenden Ansprüche, wobei: das Array von Videoanzeige-Kacheln Kacheln umfasst, die jeweils zwei oder mehr Netzwerkschnittstellen aufweisen; und das Senden ein Senden von Pixeldaten-Paketen an mehr als eine Netzwerkschnittstelle an jeder Videoanzeige-Kachel umfasst.
  13. Verfahren nach Anspruch 12, wobei: jede von den Videoanzeige-Kacheln ein Pixel-Array umfasst, das von mehreren Kachelrändern umgeben ist, wobei jeder von den Kachelrändern eine Netzwerkschnittstelle aufweist; und das Senden ein Senden von Pixeldaten-Paketen an die einzelnen Netzwerkschnittstellen an jeder Videoanzeige-Kachel über ein redundant geschaltetes Gitter-Netzwerk, das von dem Kachel-Array der Videowand gebildet wird, umfasst.
  14. Verfahren nach einem der vorangehenden Ansprüche, ferner das Ermitteln des physischen Layouts und der Pixelauflösung der Videowand umfassend, und wobei das virtuelle Rendern zumindest zum Teil auf der Ermittlung des physischen Layouts und der Pixelauflösung der Videowand basiert.
  15. Verfahren nach Anspruch 14, wobei das Kachel-Array als Netzwerk konfiguriert ist und das Ermitteln umfasst: jede Kachel sendet ihre Kachelanzeigeinformationen an einen Videocontroller, um den Videocontroller über den jeweiligen Kachelort und eine Datenmenge, die an die einzelnen Kacheln zu senden ist, zu informieren; die Kachelanzeigeinformationen werden in einer Datenbank gespeichert, die für den Videocontroller zugänglich ist; und die Kachel-Arraykonfiguration wird in einem Speicher eines Videocontrollers auf Basis der in der Datenbank gespeicherten Kachelanzeigeinformationen automatisch konstruiert.
  16. Verfahren nach Anspruch 15, wobei die Kachelanzeigeinformationen die eindeutige Adresse für jede Kachel und die relative Position von jeder in Bezug auf angrenzende Kacheln in dem Kachel-Array enthalten.
  17. Verfahren nach einem der Ansprüche 14-16, ferner umfassend: Anzeigen von Kacheln in einer GUI; und Ermöglichen, dass ein Benutzer das Kachel-Array in der Datenbank durch Platzieren der Kacheln an ihren jeweiligen Orten in dem Kachel-Array durch Interaktion mit der GUI konstruiert.
  18. Verfahren nach Anspruch 14, wobei das Ermitteln umfasst, dass ein Benutzer das physische Layout und die Pixelauflösung durch eine Benutzeroberfläche oder einen Datei-Download direkt in einen Videocontroller eingibt.
  19. Verfahren nach einem der vorangehenden Ansprüche, wobei die Videoanzeige-Kacheln LED-Kacheln umfassen und die Videocontroller LED-Controller umfassen.
  20. Videocontroller zum Rendern von Videoinhalt auf einer hochauflösenden Videowand, wobei die Videowand von einem Array von Anzeige-Kacheln gebildet wird, wobei jede von den Kacheln eine eindeutige Adresse innerhalb des Array aufweist, wobei der Videocontroller einen Prozessor und Speicher umfasst, der dafür ausgelegt ist, einen oder mehrere, Pixel enthaltende Videoeingangsströme zum Rendern des Videoinhalts über dem Kachel-Array zu empfangen, der Speicher Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu Folgendem zu veranlassen: virtuell Rendern des Videoinhalts aus dem einen oder den mehreren Videoeingangsströmen in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher bei einer Auflösung zu bilden, die der Auflösung der Videowand zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in dem Kachel-Array der Videowand, die der Pixeldatenposition in der virtuellen Darstellung in dem Speicher entsprechen, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  21. Videocontroller nach Anspruch 20, wobei der Videocontroller dafür ausgelegt ist, Videoinhalt auf Basis von mindestens drei verschiedenen Videostrom-Eingangsbedingungen zu rendern, welche umfassen: (1) eine Mehrzahl von Videoeingangsströmen, wobei jeder von der Mehrzahl von Eingangsströmen einen Abschnitt der Pixeldaten enthält, die notwendig sind, um den Videoinhalt auf der Videowand zu rendern, wobei die Mehrzahl von Eingangsströmen insgesamt alle benötigten Pixeldaten umfasst; (2) der eine oder die mehreren Videoeingangsströme enthalten weniger Pixeldaten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind; und (3) der eine oder die mehreren Videoeingangsströme enthalten mehr Pixeldaten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind.
  22. Videocontroller nach Anspruch 21, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (1) empfangene Video durch Kombinieren der Mehrzahl von Videoeingangsströmen in einem Speicher virtuell zu rendern, um die virtuelle Darstellung des Videoinhalts zu bilden.
  23. Videocontroller nach Anspruch 21, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (2) empfangene Video virtuell zu rendern durch - Hochskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen hochskalierten Videoeingangsstrom zu erzeugen, der zusätzliche Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern; und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem einen oder den mehreren hochskalierten Videoeingangsströmen zu bilden.
  24. Videocontroller nach Anspruch 21, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (3) empfangene Video virtuell zu rendern durch - Herunterskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen herunterskalierten Videoeingangsstrom zu erzeugen, der zusätzliche Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern, und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem einen oder den mehreren herunterskalierten Videoeingangsströmen zu bilden.
  25. Videowandsystem, umfassend: ein Array aus aneinander angrenzenden Anzeige-Kacheln, die eine Videowand bilden, wobei jede Anzeige-Kachel eine eindeutige Adresse und eine Anzeigeoberfläche umfasst, die von einem Pixel-Array gebildet wird, das von mehreren Kachelrändern umgeben ist, wobei die Anzeigewand einen Außenrand aufweist, der von offenen Kachelrändern gebildet wird, die nicht an einen anderen Kachelrand angrenzen; Datenverbindungen an jedem Kachelrand, die einen Data Link mit jeder angrenzenden Kachel in dem Array von Anzeige-Kacheln bilden, wobei die Data Links dafür ausgelegt sind, zumindest Videosignaldaten und Steuerdaten zu übertragen; einen Videocontroller, der dafür ausgelegt ist, einen oder mehrere Videoeingangsströme zu empfangen und paketierten Videoinhalt zur Anzeige auf der Videowand auszugeben; mindestens eine primäre Netzwerkweiche, die mit dem Videocontroller über mindestens eine primäre Netzwerkverbindung kommuniziert; mindestens eine Sicherungs-Netzwerkweiche, die mit dem Videocontroller über mindestens eine Sicherungs-Netzwerkverbindung kommuniziert; primäre Kachelverbindungen, die unabhängige Netzwerkverbindungen zwischen der mindestens einen primären Netzwerkweiche und jeder von mindestens einer ersten Mehrzahl von Kachelrand-Datenverbindungen an offenen Kachelrändern umfassen; und Sicherungs-Kachelverbindungen, die unabhängige Netzverbindungen zwischen der mindestens einen Sicherungs-Netzwerkweiche und jeder von mindestens einer zweiten Mehrzahl von Kachelrand-Datenverbindungen an offenen Kachelrändern umfassen; wodurch die mindestens eine primäre Netzwerkweiche paketierten Videoinhalt zum Anzeigen gemäß Kacheladressen, die den Videoinhaltspaketen zugewiesen wurden, zu dem Kachel-Array lenkt und die mindestens eine Sicherungs-Netzwerkweiche mehrere redundante Wege für Videoinhaltspakete für den Fall des Ausfalls einer oder mehrerer Kachel-Datenverbindungen bereitstellt, um Anzeigefehler, die aus ausgefallenen Kachel-Datenverbindungen resultieren, zu eliminieren oder zu reduzieren.
  26. Videowandsystem nach Anspruch 25, wobei die unabhängigen Netzwerkverbindungen mit der Mehrzahl von Kachelrand-Datenverbindungen an offenen Kachelrändern gemeinschaftlich Datenverbindungen mit allen offenen Kachelrändern umfassen.
  27. Videowandsystem nach Anspruch 25 oder 26, wobei mindestens eine Verbindungsleitung die mindestens eine primäre Netzwerkweiche und die mindestens eine Sicherungs-Netzwerkweiche verbindet.
  28. Videowandsystem nach einem der Ansprüche 25-27, wobei der Videocontroller einen Prozessor und Speicher umfasst, der Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu Folgendem zu veranlassen: virtuell Rendern des Videoinhalts aus dem einen oder den mehreren Videoeingangsströmen in einem Speicher, um eine virtuelle Darstellung des Videoinhalts in dem Speicher bei einer Auflösung zu bilden, die der Auflösung der Videowand zumindest gleich ist; Aufteilen von Pixeldaten aus der virtuellen Darstellung in Pakete, die jeweils die eindeutige Kacheladresse für Kachelpositionen in dem Kachel-Array der Videowand, die der Pixeldatenposition in der virtuellen Darstellung in dem Speicher entsprechen, aufweisen; und Senden der Pixeldaten-Pakete an die Videowand über ein Paket-geschaltetes Netzwerk.
  29. Videowandsystem nach Anspruch 28, wobei der Videocontroller dafür ausgelegt ist, Videoinhalt auf Basis von mindestens drei verschiedenen Videostrom-Eingangsbedingungen zu rendern, welche umfassen: (1) eine Mehrzahl von Videoeingangsströmen, wobei jeder von der Mehrzahl von Eingangsströmen einen Abschnitt der Pixeldaten enthält, die notwendig sind, um den Videoinhalt auf der Videowand zu rendern, wobei die Mehrzahl von Eingangsströmen insgesamt alle benötigten Pixeldaten umfasst; (2) der eine oder die mehreren Videoeingangsströme enthalten weniger Pixeldaten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind; und (3) der eine oder die mehreren Videoeingangsströme enthalten mehr Pixeldaten als zum Rendern des Videoinhalts auf der Videowand bei der Auflösung der Videowand nötig sind.
  30. Videowandsystem nach Anspruch 28, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (1) empfangene Video durch Kombinieren der Mehrzahl von Videoeingangsströmen in einem Speicher virtuell zu rendern, um die virtuelle Darstellung des Videoinhalts zu bilden.
  31. Videowandsystem nach Anspruch 28, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (2) empfangene Video virtuell zu rendern durch - Hochskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen hochskalierten Videoeingangsstrom zu erzeugen, der zusätzliche Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern; und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem einen oder den mehreren hochskalierten Videoeingangsströmen zu bilden.
  32. Videowandsystem nach Anspruch 28, wobei der Speicher ferner Befehle enthält, die dafür ausgelegt sind, von dem Prozessor ausgeführt zu werden, um den Videocontroller zu veranlassen, das unter der Eingangsbedingung (3) empfangene Video virtuell zu rendern durch - Herunterskalieren des einen oder der mehreren Videoeingangsströme, um mindestens einen herunterskalierten Videoeingangsstrom zu erzeugen, der zusätzliche Pixeldaten umfasst, die nötig sind, um den Videoinhalt mit der Auflösung der Videowand zu rendern, und Rendern des Videoinhalts in dem Speicher, um die virtuelle Darstellung des Videoinhalts aus dem einen oder den mehreren herunterskalierten Videoeingangsströmen zu bilden.
DE112020005127.7T 2019-10-25 2020-10-26 Unbegrenzter pixelcanvas für led-videowände Pending DE112020005127T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962925794P 2019-10-25 2019-10-25
US62/925,794 2019-10-25
PCT/US2020/057385 WO2021081512A1 (en) 2019-10-25 2020-10-26 Unlimited pixel canvas for led video walls

Publications (1)

Publication Number Publication Date
DE112020005127T5 true DE112020005127T5 (de) 2022-12-01

Family

ID=73452319

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020005127.7T Pending DE112020005127T5 (de) 2019-10-25 2020-10-26 Unbegrenzter pixelcanvas für led-videowände

Country Status (4)

Country Link
US (1) US11594195B2 (de)
DE (1) DE112020005127T5 (de)
GB (2) GB2621497B (de)
WO (1) WO2021081512A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310436B2 (en) 2020-08-20 2022-04-19 H2V4 Holdco, Inc. Elimination of artifacts in captured images of LED tile displays
EP4254316A4 (de) * 2021-05-24 2024-07-03 Samsung Electronics Co Ltd Elektronische vorrichtung und bildverarbeitungsverfahren dafür
US20220385754A1 (en) * 2021-06-01 2022-12-01 Production Resource Group, L.L.C. Fast Remote Stage Applications
CN113571008B (zh) * 2021-07-16 2022-10-21 西安诺瓦星云科技股份有限公司 拼接式显示屏的亮暗线调节方法、装置以及***
JP2023134068A (ja) * 2022-03-14 2023-09-27 株式会社東芝 ソース機器及びシンク機器
US20240201924A1 (en) * 2022-12-19 2024-06-20 Stereyo Bv Video processing in modular display system and method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8797233B2 (en) * 2008-08-20 2014-08-05 The Regents Of The University Of California Systems, methods, and devices for dynamic management of data streams updating displays
KR101632572B1 (ko) * 2009-11-25 2016-07-01 삼성전자 주식회사 비디오 월 디스플레이시스템

Also Published As

Publication number Publication date
GB202317023D0 (en) 2023-12-20
GB2621497A (en) 2024-02-14
GB2604270A (en) 2022-08-31
GB2604270B (en) 2023-12-20
GB202205920D0 (en) 2022-06-08
GB2621497B (en) 2024-07-03
US11594195B2 (en) 2023-02-28
WO2021081512A1 (en) 2021-04-29
US20220254317A1 (en) 2022-08-11

Similar Documents

Publication Publication Date Title
DE112020005127T5 (de) Unbegrenzter pixelcanvas für led-videowände
DE68926094T2 (de) Hochgeschwindigkeits-Verarbeitungssystem für Rechnergraphik
DE60318777T2 (de) Elektroniksystem zur datenübertragung mit mosaikartigen displays
CN104216671B (zh) 一种在多套拼接显示屏上实现同步协同显示的方法
DE112007002200T5 (de) Computergrafiksystem mit mehreren parallelen Prozessoren
US20070033289A1 (en) Network displays and method of their operation
DE102015108729A1 (de) System zur Unterhaltung im Fahrzeug
DE102014108455A1 (de) Verfahren zum Betreiben eines Netzwerks
DE112013001512B4 (de) Paketweiterleitung vor einem Hintergrund eines Stacking-Systems mit Sterntopologie
EP2763401A1 (de) Eingebettetes System zur Videoverarbeitung mit Hardware-Mitteln
DE102012000158A1 (de) Adaptives mehrfach redundantes ringförmiges Netzwerk und Verfahren zum Wählen einer Umleitung
DE102017218515A1 (de) Videodatenverteiler und Flugzeugkabinenmanagementsystem
DE102004011629B4 (de) Verfahren zur Steuerung einer Einrichtung zur Verteilung und Bearbeitung von Videosignalen
DE102019208678A1 (de) Kommunikationsverfahren
DE112019006340T5 (de) Kommunikationsvorrichtung, kommunikationsverfahren und programm
DE112015004179T5 (de) Router-Fabric
DE102022108386A1 (de) Geordnete stapelbildung mit weniger manuellen eingriffen
EP2172032A1 (de) Verfahren zur bearbeitung eines räumlichen bildes
WO2014170002A1 (de) Gerät in einem gebäudesystem und system der gebäudetechnik
DE102013114306A1 (de) System, Verfahren und Computerprogrammprodukt für eine verteilte Verarbeitung von überlappenden Teilbereichen von Pixel
DE112016005561B4 (de) Videoablieferungsvorrichtung, anzeigesteuerung, videoablieferungssystem und videoablieferungsverfahren
DE202015008258U1 (de) Moderne Bilddatenübertragung durch Streaming zu veralteten und modernen Displays
DE102007043149B4 (de) Verfahren und Vorrichtung zum Übertragen von holografischen Videodaten
DE69617584T2 (de) Verfahren zur Zusammenarbeit zwischen Anwendungsprogrammen durch Einteilung von Zustandsvariabeln und Speichermittel zum Speichern eines Programms zur Durchführung dieses Verfahrens wenn ausgeführt.
EP4175299A1 (de) Bearbeitung und übertragung von videodaten

Legal Events

Date Code Title Description
R012 Request for examination validly filed