DE69908334T2 - Eine mehrfachdatenstrom-schalterbasierte-videoeditierarchitektur - Google Patents

Eine mehrfachdatenstrom-schalterbasierte-videoeditierarchitektur Download PDF

Info

Publication number
DE69908334T2
DE69908334T2 DE69908334T DE69908334T DE69908334T2 DE 69908334 T2 DE69908334 T2 DE 69908334T2 DE 69908334 T DE69908334 T DE 69908334T DE 69908334 T DE69908334 T DE 69908334T DE 69908334 T2 DE69908334 T2 DE 69908334T2
Authority
DE
Germany
Prior art keywords
sequences
data
still images
digital still
video
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.)
Expired - Fee Related
Application number
DE69908334T
Other languages
English (en)
Other versions
DE69908334D1 (de
Inventor
D. Jeffrey KURTZE
H. Joseph RICE
Robert Gonsalves
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.)
Avid Technology Inc
Original Assignee
Avid Technology 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 Avid Technology Inc filed Critical Avid Technology Inc
Application granted granted Critical
Publication of DE69908334D1 publication Critical patent/DE69908334D1/de
Publication of DE69908334T2 publication Critical patent/DE69908334T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Circuits (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf digitale Bildbearbeitungs- und -produktionssysteme.
  • Die Technologie, um digitales Video zu manipulieren, ist zu einem Punkt fortgeschritten, an dem sie auf Computern leicht verarbeitet und gehandhabt werden kann. Es sind Videoproduktionssysteme geschaffen worden, in denen digitales Video für verschiedene Zwecke leicht erfasst, verarbeitet und angezeigt werden kann, wie z. B. Fernsehrundfunk, Film und Nachbearbeitung von Videoprogrammen.
  • Typische Produktionssysteme arbeiten typischerweise in einem Zusammensetzungsmodus, um Produktionsmaterial zu erzeugen, Spezialeffekte hinzuzufügen und dergleichen. Wenn es gewünscht wird, die Ergebnisse der Zusammensetzung zu betrachten, schalten die Produktionssysteme in einen Anzeigemodus, in dem Abschnitte des bearbeiteten Produkts für die Betrachtung angezeigt werden. Wenn eine Zusammensetzung erzeugt wird, schaltet der Anwender typischerweise zwischen diesen Operationsmodi um, um die Qualität der während der Zusammensetzung getroffenen Entscheidungen zu überwachen.
  • Ein Beispiel eines derartigen Videoproduktionssystems ist in der PCT-Patentanmeldung WO 94/24815, eingereicht am 16. April 1993, mit dem Titel "Media Pipeline with Multichannel Video Processing and Playback" beschrieben, die durch Literaturhinweis hierin eingefügt ist. In diesem System werden zwei Ströme von Videodaten unabhängig komprimiert oder dekomprimiert, wobei die Ergebnisse gemischt werden, um ein zusammengesetztes Bild zu bilden. Die Verarbeitung und das Keying werden am gemischten Datenstrom ausgeführt.
  • Ein Vorteil des obigen Systems ist, dass es erlaubt, dass verschiedene Auflösungen und Komprimierungsbeträge auf die zwei Datenströme angewendet werden. Die Positionierung des Mischers schränkte jedoch die Menge der Keying-Ereignisse ein, die bei irgendeinen gegebenen Durchlauf durch die Pipeline zur Produktion hinzugefügt werden konnten. Weil außerdem nur zwei Datenströme verarbeitet wurden, erforderte die Erzeugung von zusammengesetzten Bildern, die sich aus einer Mischung mehrerer Datenströme ergeben, mehrere Durchgänge durch die Pipeline.
  • US-A-5.684.843, US-A-5.508.940 und US-A-4.694.343 offenbaren Videoprozessoren, die Schalter, Keyer und Mischer enthalten, die verschiedene Videoverarbeitungsfunktionen ausführen können. Die Erfindung schafft eine verbesserte Videoverarbeitungsvorrichtung, wie im Anspruch 1 dargelegt ist.
  • Eine Architektur zur Ausführung einer Echtzeit-Bildverarbeitung an mehreren Bilddatenströmen unter Verwendung komprimierter oder nicht komprimierter Bilddaten enthält einen Schalter, um Daten von mehreren Eingangsquellen zu mehreren Zielen in einer Videoverarbeitungsvorrichtung weiterzugeben. Die Videoverarbeitungsvorrichtung enthält zwei unabhängige Verarbeitungspipelines, um zwei Datenströme zu verarbeiten. Der Schalter kann einen Eingangsdatenstrom mit mehreren Zielen koppeln. Im Ergebnis können an einem Datenstrom mehrere Aufgaben, wie z. B. Aufzeichnen und Wiedergeben, gleichzeitig ausgeführt werden. Alternativ erlaubt der Schalter, dass zwei verschiedene Eingangsdatenströme zu zwei verschiedenen Zielen weitergegeben werden, z. B. zwei verschiedene Eingaben zu einer Mischvorrichtung.
  • Eine Anzahl von Kanalvorrichtungen stellt einen Zwischenspeicher von Bildpunkt-, Mattierungs-, Alpha- und stromabwärtigen Keying-Informationen vom oder zum Host bereit. Die zwei stromabwärtigen Keying-Kanäle speisen zugeordnete Mischer. Die Mischer sind unter Verwendung des Schalters in der Art einer Kaskade gekoppelt, wobei dadurch die selektive Keying-Fähigkeit geschaffen und erlaubt wird, dass mehrere Keying-Ereignisse während einer Phase der Verarbeitung einzugeben sind. Außerdem werden die zwei stromabwärtigen Keying-Kanäle verwendet, um Abschnitte von Titelbildern zu speichern, um ein glattes Rollen und Kriechen der Titel vorzusehen.
  • Jede der Verarbeitungspipelines in der Videoverarbeitungsvorrichtung enthält dedizierte Einstellogik, Komprimierungslogik und einen Vollbild-Pufferspeicher. Die Logik ist mit jedem Vollbildpufter vorgesehen, um die Bewegungseffekte zu unterstützen. Durch das Vorsehen von zwei verschiedenen Verarbeitungspipelines kann für die Erzeugung eines Ausgangsbildes eine größere Steuerung erreicht werden.
  • Die Videoverarbeitungsvorrichtungen können unter Verwendung des Schlalters in einer Kaskade angeordnet sein, wobei die Ergebnisse der Verarbeitung der zwei Datenströme durch die zwei Verarbeitungspipelines einer ersten Videoverarbeitungsvorrichtung als eine Eingangsvideoquelle zur zweiten Verarbeitungsvorrichtung weitergegeben werden. Dann kann ein dritter Datenstrom mit den ersten zwei Datenströmen kombiniert werden. Es können zusätzliche Datenströme verarbeitet werden, indem zusätzliche Videoverarbeitungsvorrichtungen in der Kaskade angeordnet werden. Außerdem kann jede Videoverarbeitungsvorrichtung an Spezialeffekt-Prozessoren gekoppelt sein. Folglich erlaubt das Anordnen der Videoverarbeitungsvorrichtungen in einer Kaskade, dass eine größere Menge von Spezialeffekten bei irgendeinem gegebenen Durchlauf durch die Videoverarbeitungspipeline auf die Datenströme angewendet wird.
  • In einem Aspekt enthält ein System zur Verarbeitung von Sequenzen von digitalen Standbildern, um digitale Echtzeit-Videoeffekte bereitzustellen, wenigstens einen konfigurierbaren Schalter, der mehrere Quellen an mehrere Ziele koppelt, wobei ein Modus der Konfiguration des wenigstens einen konfigurierbaren Schalters eine Richtung des Flusses der Sequenzen der digitalen Standbilder von wenigstens einer der mehreren Quellen zu wenigstens einem der mehreren Ziele steuert.
  • In einem weiteren Aspekt enthält ein System zum Verarbeiten komprimierter und nicht komprimierter Sequenzen von Standbildern wenigstens einen Verarbeitungs-Datenpfad, der in einem Komprimiert- und einem Nicht-komprimiert-Modus arbeiten kann, und eine Auswahllogik, die an den wenigstens einen Verarbeitungs-Datenpfad gekoppelt ist, um selektiv entweder komprimierte oder nicht komprimierte Sequenzen digitaler Standbilder zwischen entsprechenden komprimierten und nicht komprimierten Quellen und dem wenigstens einem Verarbeitungs-Datenpfad zu übertragen.
  • In einem weiteren Aspekt enthält eine Videoverarbeitungsvorrichtung, die eine Videoverarbeitungsfähigkeit für einen Host-Computer bereitstellt, wenigstens einen konfigurierbaren Schalter, um mehrere Quellen an mehrere Ziele zu koppeln. Ein erster Verarbeitungs-Datenpfad koppelt eine erste der Quellen und den wenigstens einen konfigurierbaren Schalter, wobei der erste Verarbeitungs-Datenpfad Sequenzen digitaler Standbilder zum konfigurierbaren Schalter überträgt. Ein zweiter Verarbeitungs-Datenpfad koppelt eine zweite der Quellen und den wenigstens einen konfigurierbaren Schalter, wobei der zweite Verarbeitungs-Datenpfad Sequenzen digitaler Standbilder zum konfigurierbaren Schalter überträgt. Ein Bus koppelt die Videoverarbeitungsvorrichtung an den Host-Computer, wobei wenigstens ein Kanal an den Bus und an den wenigstens einen konfigurierbaren Schalter gekoppelt ist, um Daten zwischen dem Host-Computer und der Videoverarbeitungsvorrichtung zu übertragen.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • In der Zeichnung ist
  • 1 eine graphische Darstellung einer Ausführungsform eines Videoproduktionssystems, das eine Videoverarbeitungsvorrichtung enthält;
  • 2 ein Blockschaltplans einer zweiten Ausführungsform eines Videoproduktionssystems, das in Kaskade angeordnete Videoverarbeitungsvorrichtungen enthält;
  • 3 ein Blockschaltplan einer Videoverarbeitungsvorrichtung für die Verwendung in den Videoproduktionssystemen nach den 1 oder 2;
  • 4 ein Blockschaltplan, der die Eingangs- und Ausgangsverbindungen eines Schalters veranschaulicht, der in der Videoverarbeitungsvorrichtung nach 3 verwendet wird;
  • 5 ein Blockschaltplan einer Ausführungsform des Schalters nach 4;
    veranschaulichen
  • 6A6V eine Anzahl von Konfigurationen, die mehrere Eingänge mit mehreren Ausgängen im Schalter nach 4 verbinden;
    ist
  • 7 ein Blockschaltplan einer Ausführungsform der Bildverarbeitungslogik für die Verwendung in der Videoverarbeitungsvorrichtung nach 3;
    veranschaulichen
  • 8A und 8B die Adressenumsetzungen, um auf die Bilddaten entweder im Blockformat oder im Rasterformat in der Videoverarbeitungsvorrichtung nach 3 zuzugreifen;
    ist
  • 9 ein Blockschaltplan einer Ausführungsform der Luminanzkorrekturlogik für die Verwendung in der Videoverarbeitungsvorrichtung nach 3;
  • 10 ein Blockschaltplan, der die Organisation eines Vollbild-Pufferspeichers veranschaulicht, der in der Videoverarbeitungsvorrichtung nach 3 verwendet wird;
  • 11 eine graphische Veranschaulichung der Umsetzung der Bilddaten aus dem Vollbildformat in das Teilbildformat durch den Vollbild-Pufferspeicher nach 10; sind
  • 12A12H Taktpläne, die veranschaulichen, wie Modusbits im Zusammenhang mit dem Vollbild-Pufferspeicher nach 10 verwendet werden können, um für die Videoverarbeitungsvorrichtung nach 3 Bewegungseffekte bereitzustellen;
    ist
  • 13 ein Blockschaltplan einer Horizontal/Vertikal-Interpolationseinrichtung, um das Rollen und Kriechen der Titel in den Videoverarbeitungsvorrichtungen nach 3 bereitzustellen;
  • 14 ein Blockschaltplan einer zweiten Ausführungsform einer Videoverarbeitungsvorrichtung, die die Verarbeitung an einem Strom nicht komprimierter Bilddaten ausführen kann;
  • 15 ein Blockschaltplan der in der Videoverarbeitungsvorrichtung nach 14 vorgesehenen Logik, um die nicht komprimierten Bilddaten zu unterstützen;
  • 16 ein Blockschaltplan der Steuerlogik für das Umordnen der Komponenten in einem Datenstrom in der Videoverarbeitungsvorrichtung nach 14;
  • 17 ein Ablaufplan, der ein Verfahren des Umschaltens zwischen der Verarbeitung komprimierter Datenströme und der Verarbeitung nicht komprimierter Datenströme in der Videoverarbeitungsvorrichtung nach 13 veranschaulicht;
    und
  • 18 ein Blockschaltplan einer zweiten Ausführungsform einer Videoverarbeitungsvorrichtung, die die Verarbeitung an einem Strom nicht komprimierter Daten ausführen kann.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In 1 enthält eine Ausführungsform eines Videoproduktionssystems 10 einen Host-Arbeitsplatzrechner 12, der an eine Breakout-Einheit 20 gekoppelt ist. Durch die Breakout-Einheit 20 werden analoge Video- und Audiosignale von Kameras, Video/Audio-Rekordern oder dergleichen erfasst und in der Breakout-Einheit 20 digitalisiert. Die Breakout-Einheit 20 enthält eine Anzahl von Karten 2228, die die Analog/Digital-Umsetzung an den Eingangsvideo- und Audioeingangs-Signalen ausführen. Die Karten können z. B. verwendet werden, um in zusammengesetztes Video, S-Video, Komponentenvideo und serielles digitales Video umzusetzen. Die digitalisierten Videodaten werden auf der Leitung 29 zum Host-Arbeitsplatzrechner 12 übertragen. Die Breakout-Einheit 20 ist vorteilhaft in einem vom Host-Arbeitsplatzrechner 12 getrennten Gehäuse vorgesehen, um die Analog/Digital-Umsetzung der Daten vom Rauschen des Hosts zu isolieren. In einer Ausführungsform ist die Kommunikation zwischen der Breakout-Einheit 20 und dem Host-Arbeitsplatzrechner 30 durch ein digitales Kabel vorgesehen. Die Einstellungen für die Kommunikationssignale werden unter Verwendung einer seriellen I2C-Schnittstelle gesteuert.
  • An die Breakout-Einheit 20 ist ein Client-Monitor 58 gekoppelt, der verwendet werden kann, um ein aufgezeichnetes Bild anzuzeigen. Außerdem ist ein Bearbeitungs-Tischgerät 50 an das Videoverarbeitungssystem 35 des Videoproduktionssystems 10 gekoppelt, um ein Bild während der Bearbeitung anzuzeigen. Der Host-Arbeitsplatzrechner 12 enthält einen Host-Computer 30 und ein Videoverarbeitungssystem 35. Der Host-Computer 30 ist irgendein Typ eines Universal-Personalcomputers, wie z. B. die Sun Sparcstation oder der von Apple bereitgestellte PowerMac. Der Host-Computer 30 enthält eine Zentraleinheit (CPU) 30 und einen Speicher 42, die durch einen Verbindungsbus 40 gekoppelt sind. In einer Ausführungsform arbeitet der Verbindungsbus 40 entsprechend einem Peripheriecomputerverbindungs-Protokoll (PCI-Protokoll), obwohl dies keine Einschränkung der vorliegenden Erfindung ist. Der Speicher 42 kann eine Plattenvorrichtung sein, die verwendet wird, um Software-Anwendungen und Daten zu speichern, auf die durch die CPU zugegriffen wird.
  • Das Videoverarbeitungssystem 35 ist an den Bus 40 des Host-Computers gekoppelt. Das Videoverarbeitungssystem 35 enthält eine Haupt-Videoverarbeitungsvorrichtung 32 und optional Schnittstellenvorrichtungen 34 und 36 für zweidimensionale Effekte (2D-Effekte) und dreidimensionale Effekte (3D-Effekte). Die Haupt-Videoverarbeitungsvorrichtung 32 enthält die Hardware, um die Erfassung, das Bearbeiten und die Wiedergabe von Video und Audio zu steuern. Die zweidimensionale Vorrichtung kann z. B. ein von Avid Technology, Tewksbury, Massachusetts, konstruiertes und hergestelltes 2D-DVE-Modul sein. Die dreidimensionale Schnittstellenvorrichtung kann eine Schnittstelle zur GENIE-3D-Vorrichtung von Pinnacle Systems, Mountain View, CA, sein.
  • Wie bezüglich 3 ausführlicher beschrieben ist, enthält die Videoverarbeitungsvorrichtung 32 eine Architektur, die das gleichzeitige Wiedergeben, Verarbeiten und Aufzeichnen mehrerer Ströme von Videodaten erlaubt. Eine Videoverarbeitungsvorrichtung enthält zwei getrennte Wiedergabe- und Aufzeichnungs-Datenpfade. Weil außerdem das zusammengesetzte Video normalerweise aus mehr als nur zwei Datenströmen gebildet ist, erlaubt die Architektur der Videoverarbeitungsvorrichtung 32, dass mehrere Videoverarbeitungsvorrichtungen in einer Kaskade angeordnet sind, um das Wiedergeben und das Aufzeichnen mehrerer Datenströme zu unterstützen und um vergrößerte Fähigkeiten für Spezialeffekte bereitzustellen.
  • Eine Ausführungsform eines derartigen Systems 15 ist in 2 veranschaulicht. Das Videoverarbeitungssystem 65 enthält zwei Videoverarbeitungsvorrichtungen 32 und 32a. An jede der Videoverarbeitungsvorrichtungen 32 und 32a sind optional entsprechende 2D-Effekt-Vorrichtungen 34 und 34a und entsprechende 3D-Effekt-Vorrichtungen 36 und 36a gekoppelt. Bei einer derartigen Anordnung können zwei Datenströme in einer Videoverarbeitungsvorrichtung gemischt werden, wobei die gemischte Ausgabe zur zweiten Videoverarbeitungsvorrichtung in der Kaskade weitergegeben wird. Dann kann an dem gemischten Strom in der zweiten Videoverarbeitungsvorrichtung eine Anzahl verschiedener Funktionen ausgeführt werden. Auf die gemischten Ergebnisse kann z. B. ein Spezialeffekt angewendet werden, sie können mit einem dritten Datenstrom gemischt werden, sie können zurück in den Speicher geschrieben werden, es können weitere Keys auf sie angewendet werden usw. Der resultierende Videodatenstrom kann von der zweiten Videoverarbeitungsvorrichtung 32a über die Breakout-Einheit 20 zum Bearbeitungs-Tischgerät 50 und/oder zum Client-Monitor weitergeleitet werden. Obwohl die Ausführungsform nach 2 das Bearbeitungs-Tischgerät 50 an den Ausgang der Videoverarbeitungsvorrichtung 32a gekoppelt zeigt, kann das, Bearbeitungs-Tischgerät an irgendeine der Videoverarbeitungsvorrichtungen in der Kaskade gekoppelt sein. Alternativ kann mehr als ein Bearbeitungs-Tischgerät vorgesehen sein, eines für jede der Videoverarbeitungsvorrichtungen in der Kaskade.
  • Die Architektur der Videoverarbeitungsvorrichtungen schafft folglich die Flexibilität, um zu erlauben, das zusätzliche Videoverarbeitungskarten abhängig von den gewünschten Datenstrom- und Spezialeffekt-Verarbeitungsfähigkeiten hinzugefügt werden. Eine Ausführungsform der Videoverarbeitungsarchitektur ist in 3 gezeigt.
  • In 3 veranschaulicht ein Blockschaltplan der Datenpfade der Videoverarbeitungsvorrichtung 32 zwei Wiedergabe- und Aufzeichnungs-Datenpfade, die für die Einfachheit als ein Vordergrund-Datenpfad 70 und ein Hintergrund-Datenpfad 80 bezeichnet werden. Die Verarbeitungs-Datenpfade sind jeder bidirektional an den lokalen Bus 90 gekoppelt, der die Videoverarbeitungsvorrichtung 32 unter Verwendung der Busschnittstelle 91 an den Host-Computer 30 (1) koppelt. In einer Ausführungsform wird der lokale Bus 90 unter dem PCI-Protokoll gesteuert, obwohl dies keine Einschränkung der Erfindung ist.
  • In einer Ausführungsform enthalten jeder der Wiedergabe- und Aufzeichnungs-Datenpfade ähnliche Elemente für die Verarbeitung eines Videodatenstroms. Jedes der Elemente kann gleichzeitig auf verschiedene Abschnitte eines Datenstroms wirken und auf diese Weise eine Datenverarbeitungspipeline bilden. In einer Ausführungsform arbeiten die Elemente der Datenverarbeitungspipeline asynchron, wobei die Datenübertragung zwischen den Elementen datenflussgesteuert ist. Die Steuerung über den Fortschritt der Datenverarbeitungspipeline wird durch eine Teilbildvorschub-Zustandsmaschine (FAS-Maschine) 101 aufrechterhalten. Die (für die Zwecke der Klarheit nicht gezeigten) Freigabesignale werden zu jeder Pipeline weitergegeben, um die Elemente innerhalb der Pipeline freizugeben, um die Verarbeitung eines neuen Bildes zu beginnen. Wenn jede Pipeline die Verarbeitung eines Bildes abgeschlossen hat, meldet sie der FAS, die erlaubt, dass die Steuerdaten für die Verarbeitung des nächsten Bildes aktualisiert werden, wie im folgenden ausführlicher beschrieben ist.
  • Ein Verfahren zum Implementieren der FAS und der Datenfluss-Steuerung ist im Patent Nummer US 6.105.083 , mit dem Titel "Apparatus and Method for Controlling Transfer of Data Between and Processing of Data by Interconnected Processing Elements", eingereicht am 20. Juni 1997, und durch Literaturhinweis hierin aufgenommen, beschrieben. Verschiedene Implementierungen für die Verbindung und ein Protokoll zum Steuern des Datenflusses über die Verbindung sind in: US-Patent US 6.105.083 ; in US 6.141.691 mit dem Titel "Apparatus and Method for Controlling Transfer of Data Between and Processing of Data by Interconnected Data Processing Elements", eingereicht am 3. April 1998, von Craig R. Fink u. a.; und in WO9952290 mit dem Titel "A Packet Protocol for Encoding and Decoding Video Data and Data Flow Signals and Devices for Implementing the Packet Protocol", eingereicht am 3. April 1998, von Craig R. Fink u. a.; und im US-Patent US 6.134.607 mit dem Titel "Method and Apparatus for Controlling Data Flow Between Devices Connected by a Memory", eingereicht am 3. April 1998, von Craig R. Fink, beschrieben, die hiermit durch Literaturhinweis aufgenommen sind.
  • Die allgemeine Operation jedes der Elemente der Videoverarbeitungsvorrichtung wird nun beschrieben. Eine ausführlichere Beschreibung der Funktionalität und der Merkmale, die durch die Elemente in den Verarbeitungs-Datenpfaden 70 und 80 geschaffen werden, ist später hierin bereitgestellt.
  • In jedem der Vordergrund- und Hintergrund-Verarbeitungs-Datenpfade 70 und 80 sind Codecs 72 und 82 für das Komprimieren und Dekomprimieren des Videodatenstroms vorgesehen. Die Daten werden zwischen den Codecs 72 und 82 und entsprechenden Raster/Block-Umsetzern 74 und 84 geleitet, wobei der Begriff Raster/Block-Umsetzer verwendet wird, um sowohl die Raster/Block- als auch die Block/Raster-Umsetzung zu bezeichnen. Innerhalb der Raster/Block-Umsetzer 72 und 82 befindet sich ein durch den Host-Computer 30 programmierbares Modusbit zum Steuern der Richtung der Übertragung der Bilddaten im Raster/Block-Umsetzer. Der Raster/Block-Umsetzer setzt einen Datenstrom entweder aus dem 8 × 8-Bildpunkt-Blockformat in ein Bildrasterformat, wenn er von den Codecs empfan gen wird, oder alternativ aus dem Bildrasterformat in das 8 × 8-Bildpunkt-Blockformat, wenn er vom Größenänderungsblock 76 empfangen wird, um. Jedem der Raster/Block-Umsetzer 74 und 84 sind entsprechende Vorrichtungen (SRAM-Vorrichtungen) 75 und 85 zugeordnet. Die SRAM-Vorrichtungen 75 und 85 können für die externe Speicherung der Daten während der Umsetzungsoperation verwendet werden, wobei sie folglich eine größere Elastizität für die Datenverarbeitung in der Datenpfad-Verarbeitungspipeline schalten.
  • An jeden der Raster/Block-Umsetzer 74 und 84 ist eine entsprechende Größenänderungseinheit 76 und 86 gekoppelt. Die Größenänderungseinheiten 76 und 86 arbeiten, um die Größe des empfangenen Datenstroms zu ändern, um die Umsetzung von Zeilen mit 640 Bildpunkten in Zeilen mit 720 Bildpunkten, die Umsetzung von Medien mit niedriger Auflösung (320 oder 352 Bildpunkte) in Zeilen mit 720 Bildpunkten und die Fixup-Größenänderung (Vergrößerung) zu unterstützen. Die Größenänderungseinheiten 76 und 86 können außerdem verwendet werden, um die Bildrasterdaten zu verkleinern, um die Bild-in-Bild-Anwendungen zu unterstützen. Eine Größenänderungseinrichtung ist für das Digitalisieren vorgesehen, um die Verringerung der Anzahl der Bildpunkte pro Zeile zu unterstützen und um ein vollständiges Vollbild vertikal für Filmauflösungen mit einzelnen Teilbildern zu verkleinern.
  • Die Vollbildpuffer 78 und 88 sind in jedem der Hintergrund- und Vordergrund-Datenpfade 70 und 80 vorgesehen. Die Vollbildpuffer stellen einen temporären Speicher für die Bildrasterdaten bereit, die anzuzeigen oder zum Host-Ccmputer 30 für die Speicherung zu übertragen sind. In einer Ausführungsform können die Vollbildpuffer verwendet werden, um Standvollbild- und Zeitlupeneffekte und die erneute Erzeugung der 3-2-Fortschaltung zu unterstützen, um die Filmraten in die Videoraten umzusetzen, indem die Rate gesteuert wird, mit der die Komponenten im Bilddatenstrom in den Vollbild-Pufferspeicher geschrieben werden.
  • Typischerweise enthielten die Videoverarbeitungssysteme nur einen Vollbildpufter, in dem die Bilddaten gespeichert sind, nachdem sie mit anderen Datenströmen gemischt worden sind. In derartigen Systemen wurden die Zeitlupeneffekte typischerweise erreicht, indem die programmierte Bildpunkt-Ausgaberate durch eine gekoppelte RAMDAC-Vorrichtung geändert wurde. Indem die Vollbildpuffer vor der Mischoperation angeordnet werden und für jeden der Datenströme ein getrennter Vollbildpufter vorgesehen wird, können unabhängige Zeitlupeneffekte in jedem der Verarbeitungs-Datenpfade bereitgestellt werden, indem die Schreibanwendungen des zugeordneten Vollbildpuffers geeignet gesteuert werden. Die Einzelheiten der Implementierung, um derartige Effekte zu unterstützen, sind später hierin beschrieben.
  • Für das Mischen der Datenströme sind drei Mischer 120, 124 und 128 vorgesehen. Jeder der Mischer empfängt zwei Datenströme und einen α-Datenstrom. Im allgemeinen wird der Mischer 120 verwendet, um Wischvorgänge und Überblendungen auszuführen. Ein Wischvorgang ist ein Übergang zwischen zwei Datenströmen in den Datenpfaden A und B. Ein Typ des Wischvorgangs ist z. B. ein Kasten-Wischvorgang für den Übergang zwischen zwei durch eine rechteckige Form definierten Strömen. Ein Kasten-Wischvorgang kann verwendet werden, um ein Fenster anzuzeigen, wobei die Daten, die die Bildpunktdaten im Fenster darstellen, von einem ersten Videostrom bereitgestellt werden, während die Daten, die ein Hintergrundbild darstellen, auf dem das Fenster angezeigt wird, von einem zweiten Videostrom bereitgestellt werden. Das Mischen von zwei Videoströmen (A und B) umfasst typischerweise die Anwendung der Funktion αA + (1 – α)B auf die Ströme der Videoinformationen, wobei sich der α-Wert von Bildpunkt zu Bildpunkt innerhalb des Bildes verändern kann, und wobei A und B zu irgendeinem gegebenen Zeitpunkt die Bildpunkte in den entsprechenden Vollbildern in den zwei Strömen sind.
  • Jeder Effekt wird auf ein Vollbild aus jedem der zwei Ströme angewendet. Bei gegebenen α zu irgendeinem Zeitpunkt und gegebenen Adressen für die Bildpunkte A und B kann ein Ausgangsbild erzeugt werden. Die Mischer 120, 124 und 128, die diese Operation des Kombinierens αA + (1 – α)B ausführen, können unter Verwendung von Standard-Konstruktionstechniken digitaler Hardware implementiert sein. Der auf die Bildpunkte in den zwei Videoströmen angewendete Wert von α ist von der Art des Effektes, der bereitzustellen ist, abhängig. Die Überblendungen, die eine Form der Wischvorgänge sind, verwenden z. B. das gleiche α für alle Bildpunkte in einem Vollbild, wobei der α-Wert zwischen aufeinander folgenden Vollbildern allmählich verändert wird.
  • Die stromabwärtigen Keying-Mischer 124 und 128 können für das Mischen von Titel-, Graphik- oder Standbild-Daten in den vom Mischer 120 bereitgestellten gemischten Datenstrom verwendet werden. Insbesondere unterstützt die Verwendung der zwei stromabwärtigen Keyer 124 und 128 das Rollen und Kriechen der Titel. Wie im folgenden ausführlicher beschrieben ist, hängen die Quellen der A-, B- und α-Datenströme für jeden von diesen Mischern vom Betriebsmodus der Videoverarbeitungsvorrichtung 32 ab.
  • In dieser Ausführungsform sind zehn unabhängige Direkt-Speicherzugriffskanäle (DMA-Kanäle) in der Videoverarbeitungsvorrichtung vorgesehen. Jeder dieser Kanäle schafft eine Schnittstelle, um spezifische Typen der Daten zu speichern, die zwischen dem Host-Computer 30 oder dem lokalen Speicher 142 oder der Breakout-Einheit 20 (für digitales Audio) und dem Videoverarbeitungssystem 32 übertragen werden. Der Vordergrund-DMA-Kanal 92 und der Hintergrund-DMA-Kanal 94 stellen die Pufferung der Datenströme in den Vordergrund- und Hintergrund-Datenpfaden bereit. Ein Einkanal-Audioeingabe-DMA-Kanal 96 und -Audioausgabe-DMA-Kanal 98 wird verwendet, um bis zu acht Audiospuren zu unterstützen. Ein Mattierungs-DMA-Kanal 102 ist für die Zwischenspeicherung der Mattierungsbilder vorgesehen. Der Mattierungs-DMA-Kanal 102 wird außerdem verwendet, um externe α-Werte für das Mischen mit dem Vordergrund-Datenpfad 70 zu speichern. Um Flexibilität beim Definieren neuer Wischmuster zu schaffen, wird die Steuerung des Vordergrund/Hintergrund-Mischers durch einen Wischvorgangs/Überblendungs-DMA-Kanal 104 beliefert.
  • Wie oben beschrieben worden ist, speisen die zwei stromabwärtigen Keying-DMA-Kanäle (DSK-DMA-Kanäle) 106 und 108 die stromabwärtigen Keyer. In einer Ausführungsform sind die Daten in den DMA-Strömen für die stromabwärtigen Keyer lauflängencodiert, um die erforderliche Bandbreite zu verringern, ohne Komprimierungs-Artefakte einzufügen. Ein Verfahren und eine Vorrichtung zum Ausführen der Lauflängencodierung an den Daten in den DMA-Strömen ist in der anhängigen Patentanmeldung, Aktenzeichen des Anwalts A0521-7138, mit dem Titel "Method and Apparatus for Encoding and Decoding a Data Stream Using Inferenzial Techniques" eingereicht am gleichen Datum hiermit, von Kurze u. a. In einer Ausführungsform ist eine Horizontal/Vertikal-Interpolationseinrichtung 107 zwischen dem DSK1-Kanal 106 und dem DSK2-Kanal 108 vorgesehen, um das Rollen und Kriechen der Titel zu unterstützen, wie im folgenden ausführlicher beschrieben ist.
  • Zwei Bildpunkt-DMA-Kanäle 107 und 109 sind außerdem für die vorübergehende Speicherung und Übertragung nicht komprimierter Zwischenergebnisse zwischen dem Host-Computer 30 oder einem lokalen Speicher 142 und der Videoverarbei tungsvorrichtung 35 vorgesehen, wenn zusammengesetzte Bilder aufbereitet werden. Eine derartige Anordnung erlaubt, dass das Rendering an nicht komprimierten Bildern ausgeführt wird, wobei sie dadurch eine Rendering-Unterstützung ohne Verluste bereitstellt.
  • Der Zugriff auf den lokalen Speicher 142 wird durch den Speicher-Controller 140 gesteuert. Der lokale Speicher 140 wird für die vorübergehende Speicherung der zwischen dem Host-Computer 30 und der Videoverarbeitungsvorrichtung 32 übertragenen Daten oder für die Zwischenspeicherung der Rendering-Ergebnisse verwendet. Der lokale Speicher 140 vergrößert die Gesamtleistung der Videoverarbeitungsvorrichtung 32, indem er die Latenzzeiten verringert, die dem Erhalten der Daten vom Host-Computer 30 zugeordnet sind.
  • In einer Ausführungsform ist eine Brücke 91 zwischen den DMA-Kanälen am lokalen Bus 90 und dem Host-Bus 40 angeordnet, um die Belastung am Host-Bus 40 zu verringern. Jeder der DMA-Kanäle, wie z. B. der DMA-Kanal 109, enthält eine Steuerlogik 109a, um den DMA-Kanal an die gekoppelte Vorrichtung anzuschließen, einen FIFO 109b, um eine Zwischenpufterung der Daten im Kanal bereitzustellen, und eine DMA-Busschnittstellenlogik 109c, um den Kanal an den lokalen Bus 90 zu koppeln. Die Steuerung für die Arbitrierung des Busses 90 ist zwischen den Kanälen verteilt.
  • Ein Bearbeitungsanzeige-Controller 132 ist in der Videoverarbeitungsvorrichtung 32 enthalten, um die Qualität des auf dem Bearbeitungs-Tischgerät angezeigten Videos zu vergrößern. Eine Größenänderungseinrichtung 130, wie z. B. die Größenänderungseinrichtung Genesis gm833x2, ist in den Datenstrom gekoppelt, der den Anzeige-Controller 132 speist, um einen CCIR601-2-Datenstrom mit voller Größe auf die gewählte Fenstergröße zu verkleinern und um von der CCIR601-2-Abtastung auf ein quadratisches Bildpunkt-Seitenverhältnis zu korrigieren. Der Bearbeitungsanzeige-Controller 132 unterstützt zwei Videofenster, wobei er die Daten in einem Speicher außerhalb des Bildschirms im Vollbildpufter im YcbCr-4:2:2-Format ungeachtet der Anzahl der Bits pro Bildpunkt in den Graphikdaten speichert. Die Videodaten werden dann durch einen RAMDAC 136 Fliegend in RGB umgesetzt.
  • Der Bildpunkt-Schalter
  • Viele Datenpfade in der Videoverarbeitungsvorrichtung 32 konvergieren im Bildpunkt-Schalter 100. Der Bildpunkt-Schalter 100 ist eine Mehrfacheingangs/Mehrfachausgangs-Schaltvorrichtung. Die Ablaufsteuersignale breiten sich durch den Schalter aus, um die Koppelungen zwischen den verschiedenen Eingangs- und Ausgangs-Datenpfaden zu ermöglichen.
  • Die Eingangs- und Ausgangs-Datenpfade des Bildpunkt-Schalters 100 sind in 4 gezeigt. Der Bildpunkt-Schalter 100 besitzt sieben Eingangsanschlüsse, die umfassen: den DigVIDln-Anschluss 150, um die Daten von der Breakout-Einheit 20 zu empfangen, den EFX-Anschluss 152 und den Alpha-EFX-Anschluss 154, um die CbYCr-Daten bzw. die Alpha-Daten von den gekoppelten Effektvorrichtungen 34 oder 36 zu empfangen, einen Alpha-DSK2-Eingangsanschluss 166, um die α- und/oder Mattierungs-Daten für den zweiten stromabwärtigen Keying-Mischer 128 vom DSK2-DMA-Kanal 108 zu empfangen, einen DSKMix1-Anschluss 184, um die Daten vom ersten stromabwärtigen Keying-Mischer 124 zu empfangen, einen DSKMix2-Anschluss 180, um die Daten vom zweiten stromabwärtigen Keying-Mischer 180 zu empfangen, und einen PixDMAIn-Anschluss 172, um die Bildpunktdaten vom PixDMAIn-Kanal 107 zu empfangen.
  • Der Bildpunkt-Schalter 100 enthält außerdem drei bidirektionale Anschlüsse, die den FgCodec-Anschluss 160, den BgCodec-Anschluss 162 und den AlphaMatte-Anschluss 164 enthalten. Der FgCodec-Anschluss 160 und der BgCodec-Anschluss 162 werden verwendet, um die Daten zwischen dem Bildpunkt-Schalter 100 und den entsprechenden Vordergrund- und Hintergrund-Datenpfaden 107 und 108 zu übertragen. Der AlphaMatte-Anschluss 164 wird verwendet, um α- und/oder Mattierungs-Daten zwischen dem Bildpunkt-Schalter 100 und dem Mattierungs-DMA-Kanal 102 zu übertragen.
  • Im Bildpunkt-Schalter 100 sind sieben Ausgangsanschlüsse vorgesehen. Die sieben Ausgangsanschlüsse enthalten: einen EFX-Alpha-Anschluss 156, um die α-Daten zu einer gekoppelten Effektvorrichtung zu übertragen, einen FgMix-Anschluss 192, einen FgMixAlpha-Anschluss 190 und einen BgMix-Anschluss 186, um die Daten zu einem Mischer 120 zu übertragen, einen DSKMix2A-Anschluss zum Übertragen der gemischten Daten vom ersten stromabwärtigen Keying-Mischer 124 zum Mischer 128, einen Edisplay-Anschluss 176 zum Übertragen der Daten zum Bearbeitungsanzeige-Controller 132 für die Anzeige auf dem Computer-Monitor und einen PixDMAOut-Anschluss 174 zum Übertragen der Daten zum Bildpunktausgabe-DMA-Kanal 109.
  • In 5 ist ein Beispiel einer Ausführungsform eines Schalters 500, der für den Bildpunkt-Schalter verwendet werden kann, bereitgestellt. Für die Zwecke der Klarheit ist der Schalter 500 mit nur drei Quelleingängen und zwei Ausgängen (Senken) gezeigt. Die Schalterkonstruktion kann durch einen Fachmann auf dem Gebiet leicht erweitert werden, um die Eingangs- und Ausgangskoppelung des Bildpunkt-Schalters 100 abzudecken.
  • Die drei Quellen für den Schalter 500 sind die Quelle 502, die Quelle 504 und die Quelle 506. Die zwei Ausgänge sind die Senke 520 und die Senke 522. Die Quellen 502, 504 und 506 sind an die entsprechenden Eingangsanschlüsse 512, 514 und 516 gekoppelt, während die Senken 520 und 522 an die entsprechenden Senkenanschlüsse 530 und 532 gekoppelt sind.
  • Jedem Senkenanschluss ist ein Multiplexer und ein Auswahllogikpaar zugeordnet. Der Multiplexer 525 und die Auswahllogik 526 werden z. B. verwendet, um die Daten für den Senkenanschluss 530 bereitzustellen, während der Multiplexer 527 und die Auswahllogik 528 verwendet werden, um die Daten für den Senkenanschluss 532 bereitzustellen.
  • Die Ablaufsteuersignale DV und DR werden zwischen den Senken, den Quellen und ihren entsprechenden Anschlüssen ausgetauscht. Das DV-Ablaufsteursignal zeigt an, dass die Daten auf der zugeordneten Leitung gültig sind. Das DR-Ablaufsteuersignal zeigt an, dass der zugeordnete Empfänger bereit ist, um die Daten zu empfangen.
  • Die Multiplexer 527 und 528 sind eine kombinatorische Logik, die einen der gekoppelten Quellanschlüsse für die Ausgabe zum zugeordneten Senkenanschluss auswählt. Der Auswahlblock erlaubt der Ausgabevorrichtung, die Ablaufsteuersignale mit einem gekoppelten Quellanschluss auszutauschen.
  • Die Quellanschlüsse können durch das Setzen eines Modusbits im dem Anschluss zugeordneten Bildpunkt-Schalter freigegeben oder gesperrt werden. In 4 sind die Modusbits für jeden der Anschlüsse als die Freigabebits 145 veranschaulicht. Falls ein Quellanschluss freigegeben ist, arbeiten die Ablaufsteuersignale, um die Daten von der Quelle zum Ziel weiterzugeben. Falls ein Quell anschluss gesperrt ist, sind die Ablaufsteuersignale für diesen Anschluss funktionsunfähig. Folglich sendet der Quellanschluss kein Daten-bereit-Signal zu einer stromaufwärtigen Vorrichtung, wobei keine Daten in den Bildpunkt-Schalter fließen.
  • Die vorliegende Erfindung ist nicht auf die Ausführungsform des Schalters eingeschränkt, der in 5 veranschaulicht ist. Statt dessen kann jede Schaltungskonstruktion, die einen oder mehrere Eingänge an einen oder mehrere Ausgänge koppeln kann, während sie die Ablaufsteuerung aufrechterhält, verwendet werden. Alternative Verfahren zum Übertragen der Daten zwischen mehreren Quellen und mehreren Zielen sind in "METHOD OF CONTROLLING SWITCHING OF CONNECTIONS AMONG DATA PROCESSING DEVICES" von Craig R. Frink, Kennzahl des Anwalts A0521/7147, eingereicht am 3. April 1998, beschrieben, was durch Literaturhinweis hierin aufgenommen ist.
  • Die Betriebsmodi der Videoverarbeitungsvorrichtung
  • Der Bildpunkt-Schalter erlaubt, dass ein Eingang zu irgendeinem gegebenen Zeitpunkt an mehrere Ausgänge gekoppelt ist. Bei dieser Anordnung kann eine gleichzeitige Wiedergabe und Aufzeichnung ausgeführt werden, zu einem Datenstrom können verschiedene Keying-Ereignisse hinzugefügt werden und ein Datenstrom kann mit verschiedenen Mengen des Keyings auf mehreren Anzeigevorrichtungen angezeigt werden. Wie oben erwähnt worden ist, wird der Modus der Operation durch einen Satz von Quellenfreigabe-Modusbits 145, auf die durch Software zugegriffen werden kann, im Bildpunkt-Schalter gesteuert. Der Modus der Operationen ist im folgenden in bezug auf die 6A6S ausführlicher beschrieben.
  • Die Modi der Operationen der Videoverarbeitungsvorrichtung 32 können in vier verschiedene Modi unterteilt werden: der Wiedergabemodus, der Digitalisiert-Modus, der Rendering-Modus und der Modus des gemischten Betriebs.
  • Die 6A bis 6E veranschaulichen Beispielkonfigurationen des Bildpunkt-Schalters 100 während des Wiedergabemodus. 6A veranschaulicht den grundlegenden Wiedergabemodus. Im grundlegenden Wiedergabemodus werden unter Verwendung eines Wischvorgangs oder einer Überblendung zwei Ströme der Bilddaten gemischt. An zwei Graphiken kann unabhängig über dem kombi nierten Strom das Keying ausgeführt werden, wobei die Ergebnisse sowohl zur Bearbeitungsanzeige als auch zum Client-Monitor oder einer weiteren Videoverarbeitungsvorrichtung weitergeleitet werden können. Der Vordergrundstrom kann außerdem eine zugeordnete Mattierung besitzen, die verwendet werden kann, um den Vordergrund über dem Hintergrund zu maskieren.
  • Im grundlegenden Wiedergabemodus ist der FGCodec-Anschluss 160 an den FgMix-Anschluss 192 gekoppelt, der BgCodec 162 ist an den BgMix-Anschluss 186 gekoppelt und der AlphaMatte-Anschluss 164 ist an den FgMmixAlpha-Anschluss 190 gekoppelt. Außerdem ist, wie in 6A gezeigt ist, der Ausgang aus dem ersten stromabwärtigen Keying-Mischer 124 an den Eingang des zweiten stromabwärtigen Keying-Mischers 128 gekoppelt. Das gemischte Ergebnis wird sowohl zum Edisplay-Anschluss für die Betrachtung auf dem Bearbeitungs-Tischgerät 50 als auch zum DigVidOut-Anschluss zum Weitergeben zur Breakout-Einheit 20 weitergegeben.
  • 6B zeigt eine Konfiguration des Bildpunkt-Schalters 100 für die Verwendung im Wiedergabemodus, wenn einer der Datenströme, die zu mischen sind, von einer der 2D- oder 3D-Spezialeffektvorrichtungen 34 oder 36 (1) empfangen wird. Die Konfiguration ist zu der Konfiguration ähnlich, die in 6A veranschaulicht ist, mit Ausnahme, dass die α-Werte für das Mischen des Vordergrunds über den Hintergrund vom AlphaEFX-Anschluss 154 kommen und der Vordergrund vom EFX-Anschluss 152 bereitgestellt wird.
  • Die am AlphaMatte-Eingangsanschluss 164 vom Mattierungs-DMA-Kanal 102 empfangenen α-Daten werden zum EFX-Alpha-Ausgangsanschluss 154 weitergegeben. Das Weitergeben der α-Daten zur EFX-Vorrichtung erlaubt der gekoppelten Spezialeffektvorrichtung, digitale Videoeffekte (DVEs) an jedem empfangenen Mattierungs-Videostrom auszuführen. Die Konfiguration des Bildpunkt-Schalters kann verwendet werden, wenn der Mattierungs-Videostrom eine Graphik ist, mit der das Keying ausgeführt worden ist, die durch die Spezialeffektvorrichtung geleitet werden muss, um die Graphik in Arten zu drehen oder zu fliegen, die in der Videoverarbeitungsvorrichtung 132 nicht ausgeführt werden können. Außerdem könnte eine derartige Konfiguration des Bildpunkt-Schalters verwendet werden, um die DVE an einem Wischmuster auszuführen. Um ein Wischmuster zu drehen, kann z. B. des Wischmuster vom AlphaMatte-DMA-Kanal 102 durch den Bildpunkt-Schalter 100 zur Spezialeffektvorrichtung weitergegeben werden. Die Spezialeffektvorrichtung könnte dann die Drehung ausführen und den beeinflussten Wischvorgang zum Mischer 120 weiterleiten.
  • 6C veranschaulicht eine Wiedergabemodus-Konfiguration des Bildpunkt-Schalters, um den gemischten Videostrom direkt zu einem Host-Speicher wiederzugeben. In diesem Modus können die Vollbilder, die über den Edisplay-Anschluss 176 zur Anzeige weitergegeben werden, außerdem zum PixDMAOut-Anschluss 174 weitergegeben werden. Die Daten vom PixDMAOut-Anschluss 174 werden durch den PixDMAOut-Kanal 109 zum Host-Computer 30 oder zum lokalen Speicher 142 weitergegeben.
  • 6D veranschaulicht eine Wiedergabemodus-Konfiguration des Bildpunkt-Schalters 100, wenn sich der Bildpunkt-Schalter in einer Videoverarbeitungsvorrichtung befindet, die eine andere Videoverarbeitungsvorrichtung ist. Die in 6D veranschaulichte Konfiguration kann z. B. die Konfiguration des Bildpunkt-Schalters 100 in der Videoverarbeitungsvorrichtung 32 nach 2 sein. In der Konfiguration des Bildpunkt-Schalters nach 6D empfängt der BgMix-Anschluss 186 des Mischers 120 von der Breakout-Einheit 20 über den DigVIDln-Anschluss 150 einen Videodatenstrom. Der Videodatenstrom wird durch den Mischer 120 mit den Daten von der gekoppelten Spezialeffektkarte gemischt. Die gemischten Ergebnisse werden zum Edisplay-Ausgangsanschluss 176 und außerdem zum DigVIDOut-Anschluss 170 weitergegeben. Falls es eine weitere Videoverarbeitungsvorrichtung gibt, die in die Kaskade gekoppelt ist, empfängt sie den Datenstrom vom DigVIDOut-Anschluss an ihrem DigVIDln-Anschluss. Die Konfiguration des Schalters in der zweiten Verarbeitungsvorrichtung kann ähnlich zu der in 6D erscheinen, in der zusätzliche Effekte mit den Datenstrom gemischt werden. Das Bearbeitungs-Tischgerät über den Edisplay-Ausgangsanschluss 176 kann an irgendeine der Videoverarbeitungsvorrichtungen in der Kaskade gekoppelt sein. Alternativ kann mehr als ein Bearbeitungs-Tischgerät vorgesehen sein, eines für jede der Videoverarbeitungsvorrichtungen in der Anzeige.
  • Die Anordnung der Videoverarbeitungsvorrichtungen in Kaskade erlaubt, dass N + 1 Ströme gleichzeitig verarbeitet werden können, wobei N die Anzahl der Videoverarbeitungsvorrichtungen ist, die miteinander gekoppelt sind. Die Anzahl der Datenströme, die verarbeitet werden kann, ist nur durch die physikalischen Einschränkungen der Konstruktion (d. h. die Anzahl der verfügbaren Einbauplätze und die Angelegenheiten der Signalintegrität) des Koppelns zahlreicher Videover arbeitungsvorrichtungen in dem Videoverarbeitungssystem eingeschränkt. Indem erlaubt wird, dass mehrere Datenströme gleichzeitig wiedergegeben werden, wird die Zeitdauer verringert, die notwendig ist, um komplexe zusammengesetzte Bilder zu verarbeiten, wobei dadurch die Gesamtleistung des Videoverarbeitungssystems verbessert wird.
  • Weil außerdem jede der Videoverarbeitungsvorrichtungen an verschiedene 2D- oder 3D-Effektvorrichtungen gekoppelt sein kann, vergrößert das Anordnen der Videoverarbeitungsvorrichtungen in Kaskade die Menge der Effektverarbeitung, die an einem Datenstrom ausgeführt werden kann. In der in 6D gezeigten Konfiguration beinhaltet das Weiterleiten der AlphaMatte-Daten vom bidirektionalen Anschluss 164 zum EFXAlpha-Anschluss 156, dass eine Spezialeffektvorrichtung, wie z. B. die Vorrichtung 34 oder 36, an die Videoverarbeitungsvorrichtung gekoppelt ist. Alternativ könnten, wenn es keine gekoppelte Spezialeffektvorrichtung gibt, die AlphaMatte-Daten direkt zum an den Mischer 120 gekoppelten FgMixAlpha-Anschluss 190 weitergegeben werden.
  • In 6E ist eine weitere Wiedergabekonfiguration gezeigt. Typischerweise wird die Ausgabe des zweiten stromabwärtigen Keying-Mischers 128 sowohl in das Bearbeitungs-Tischgerät 50 als auch in den Monitor 58 eingespeist. Im allgemeinen Fall kann jedoch die Ausgabe von irgendeiner der stromabwärtigen Keying-Vorrichtungen 124 oder 128 zu irgendeiner Kombination des Bearbeitungs-Tischgeräts 50, des Monitors 58 und des PixDMAOut-Anschlusses 174 zum Host-Computer 30 oder zum lokalen Speicher 142 weitergeleitet werden. 6E zeigt alle möglichen Ausgangspfade, an die in der Ausgangsdatenstrom vom stromabwärtigen Keying-Mischer 128 unter Verwendung des Bildpunkt-Schalters 100 gekoppelt sein könnte.
  • 6F veranschaulicht eine Konfiguration des Bildpunkt-Schalters 100 während der Wiedergabe eines dualen rollenden Beschnitts. Der duale rollende Beschnitt ist ein Modus zum Bearbeiten, um zwei angrenzende Clips in einer Sequenz zu beschneiden, wobei beide Clips gleichzeitig wiedergegeben werden, um den optimalen Bearbeitungspunkt zu bestimmen. Während des dualen rollenden Beschnitts würde der Mischer 120 verwendet werden, um zwischen den Sequenzen umzuschalten. Der Bearbeitungsanzeige-Controller ist so konfiguriert, dass er beide Vollbilder gleichzeitig seitenweise anzeigt. Hier ist entweder der FgCodec-Anschluss 160 oder der BgCodec-Anschluss 162 mit dem Client-Monitor verbun den. 6F zeigt die Verbindungen für beide, obwohl nur entweder der Vordergrund oder der Hintergrund gekoppelt würden, um diese Konfiguration zu implementieren.
  • Die 6G6N veranschaulichen Beispielkonfigurationen des Bildpunkt-Schalters 100 während der Aufzeichnung. In allen Aufzeichnungsmodi sind der FgCodec-Anschluss 160 und der BgCodec-Anschluss 162 verfügbar, um einen Videodatenstrom von einem der anderen Eingangsanschlüsse des Bildpunkt-Schalters 100 zu empfangen. Wie im folgenden gezeigt ist, erlauben diese Konfigurationen die Aufzeichnung mit einfacher oder doppelter Auflösung. In der in 6G veranschaulichten Aufzeichnungskonfiguration werden die Quellbilddaten über den DigVIDln-Anschluss 150 von der Breakout-Einheit 20 eingegeben. Die Quellbilddaten werden durch die Mischer 120, 124 und 128 weitergegeben, wobei dadurch erlaubt wird, dass ein oder mehrere Keys mit dem Quellbilddatenstrom gemischt werden. Der Videostrom, an dem das Keying ausgeführt worden ist, wird zum FgCodec-Anschluss 160 und zum BgCodec-Anschluss 162 auf den Hintergrund- und Vordergrund-Datenpfaden 70 und 80 für die Weitergabe zum Host oder zum lokalen Speicher und die optionale Komprimierung oder Größenänderung weitergegeben. Gleichzeitig wird der Bilddatenstrom, an dem das Keying ausgeführt worden ist, durch den DigVIDOut-Anschluss 170 durch den Monitor 58 verfügbar gemacht. Falls das Keying nicht erwünscht ist, können die DSK-Mischer 124 und 128 konfiguriert sein, um den Durchgang zu erlauben. Der kombinierte Bilddatenstrom wird über den Edisplay-Anschluss 176 außerdem zum Bearbeitungs-Tischgerät 50 weitergegeben.
  • 6N veranschaulicht eine zweite Konfiguration des Bildpunkt-Schalters, um über den DigVIDln-Anschluss 150 von der Breakout-Einheit 20 empfangene Daten aufzuzeichnen. In der in 6N gezeigten Konfiguration des Bildpunkt-Schalters wird der Bilddatenstrom aus dem DigVIDOut-Anschluss 170 für die Anzeige auf einem Client-Monitor ohne Keys weitergegeben. Die Daten vom DigVIDln-Anschluss 150 werden außerdem direkt in die FgCodec- und BgCodec-Datenströme gespeist. Falls gewünscht wird, Keys zu den Daten für die Anzeige auf dem Bearbeitungs-Tischgerät 50 hinzuzufügen, kann der Bilddatenstrom durch die Mischer 120, 124 und 128 und aus dem Edisplay-Anschluss 176 weitergegeben werden. Diese Konfiguration kann verwendet werden, um Bildsequenzen wiederzugeben, die Piktogramme für die Bearbeitungsanzeige besitzen, während die Bildsequenz ohne die Piktogramme aufgezeichnet wird.
  • 6I veranschaulicht eine dritte Konfiguration des Bildpunkt-Schalters 100, um über den DigVIDln-Anschluss 150 von der Breakout-Einheit 20 empfangene Daten aufzuzeichnen. In dieser Konfiguration empfängt der BgCodec-Anschluss eine Version des Datenstroms, die Keys enthält, zum Weitergeben zum Host oder zur optionalen Komprimierung oder Größenänderung. Der FgCodec-Anschluss empfängt eine Version, an der das Keying nicht ausgeführt worden ist. Wie in 6N zeigt das Bearbeitungs-Tischgerät 50 eine Version des Datenstroms, an der das Keying ausgeführt worden ist, an, während der Monitor 58 eine Version des Datenstroms anzeigt, an der das Keying nicht ausgeführt worden ist.
  • 6J veranschaulicht eine Konfiguration des Bildpunkt-Schalters 100) zum gleichzeitigen Ausführen von Aufzeichnung und Wiedergabe. In dieser Konfiguration wird der BgCodec-Kanal verwendet, um einen Datenstrom aufzuzeichnen, während der FgCodec-Kanal verwendet wird, um einen Videostrom wiederzugeben. Der Videostrom, der im FgCodec-Kanal wiedergegeben wird, kann entweder vom BgCodec-Strom vollständig unabhängig sein oder kann der wiedergewonnene BgCodec-Datenstrom, verzögert um ein Vollbild, sein. Die Wiedergabe des aufgezeichneten Datenstroms erlaubt dem Anwender, durch die Komprimierung und die Dekomprimierung des Videodatenstroms auf dem ausgewählten Komprimierungsniveau verursachte Verluste zu sehen. In einer Ausführungsform könnte ein Client-Monitor die Ergebnisse der Dekomprimierung des unmittelbar vorangehenden komprimierten Vollbildes anzeigen, während die Verarbeitung auf dem Bearbeitungs-Tischgerät 50 überwacht werden kann. Diese Konfiguration könnte für die Vorschau oder die Überwachung der Qualität der gegenwärtig ausgewählten Komprimierung verwendet werden. Die Anwender können in der Lage sein, zwischen dem Anzeigen des Quellvideos und dem Anzeigen des komprimierten und nicht komprimierten Videos hin und her zu schalten.
  • 6K veranschaulicht eine weitere Konfiguration des Bildpunkt-Schalters 100 für die Aufzeichnung und die gleichzeitige Wiedergabe. In der Konfiguration nach 6K wird an dem Videodatenstrom vor der Aufzeichnung kein Keying ausgeführt. Das Bearbeitungs-Tischgerät zeigt jedoch das unbearbeitete Video mit einem überlagern Key an. Eine derartige Konfiguration kann verwendet werden, um Piktogramme auf einer Bearbeitungsanzeige anzuzeigen, die notwendigerweise aufgezeichnet werden würden. Abermals zeigt der Client-Monitor einen separaten Videostrom an, der entweder vom angezeigten Strom unabhängig oder alternativ der angezeigte Strom nach der Komprimierung und Dekomprimierung, der auf dem Hintergrundpfad zurückkehrt, ist.
  • 6L veranschaulicht eine Konfiguration des Bildpunkt-Schalters 100, in der an den Eingangsdaten, die für die Aufzeichnung weitergegeben werden, kein Keying ausgeführt wird. Der am FgCodec-Anschluss 160 empfangene und durch die Mischer 120, 124 und 128 zum DigVIDOut-Anschluss 170 für die Anzeige auf dem Monitor 58 und dem Bearbeitungs-Tischgerät 50 empfangene Videodatenstrom enthält jedoch Keys.
  • Die 6M bis 6R veranschaulichen die Konfigurationen des Bildpunkt-Schalters für die Rendering-Operationen. Insbesondere veranschaulichen die 6M6O die Konfigurationen des Bildpunkt-Schalters 100 für das Rendering eines Mehrschichteffekts. Das Rendering eines Mehrschichteffekts verwendet mehrere verschiedene Konfigurationen des Bildpunkt-Schalters. Für jede der Schichten werden die α-Daten und das Video für den Vordergrund durch die beigefügte Spezialeffektvorrichtung aufbereitet und durch die Eingangsanschlüsse EFX 152 bzw. AlphaEFX 154 zu den FgMix- und FgMixALpha-Anschlüssen 192 und 190 weitergegeben. Wie in 6M gezeigt ist, wird der Datenstrom vom BgCodec-Eingangsanschluss 162 zum BgMix-Anschluss 186 weitergegeben, um die ersten zwei (unteren) Schichten aufzubereiten. Wie in 6N und 6O gezeigt ist, wird für alle anderen Schichten der vom PixDMAIn-Anschluss 172 eingegebene Videodatenstrom zum BgMix-Anschluss 186 weitergegeben. Wie in 6O gezeigt ist, geht für die letzte Schicht die Eingabe vom zweiten stromabwärtigen Keyer-Mischer 128 zum BgCodec-Anschluss 162 für die Übertragung zum Host-Computer 30 oder zum lokalen Speicher 142 und für die optionale Komprimierung und Größenänderung. Für die Schichten außer der letzten Schicht und die Eingabe vom zweiten stromabwärtigen Keying-Mischer 128 über den PixDMAOut-Anschluss 174 zum Host-Computer 30 oder zum lokalen Speicher 142 weitergegeben.
  • In 6P ist die Konfiguration des Bildpunkt-Schalters 100 für das Rendering eines hierarchischen verschachtelten Effekts gezeigt. Wenn ein hierarchischer Effekt aufbereitet wird, wird zuerst der Vordergrund aufbereitet, wobei dann für die anderen Schichten außer der ersten Schicht die Zwischenergebnisse durch die gekoppelte Spezialeffektvorrichtung weitergegeben und dann über einer Hintergrundschicht gemischt werden. 6P veranschaulicht eine Konfiguration des Bildpunkt-Schalters 100 für das Rendering der ersten zwei Schichten. Der Vordergrund wird am EFX-Anschluss 152 von der Spezialeftektvorrichtung empfangen. Der Hintergrund wird vom BgCodec-Anschluss 162 empfangen, während die Ergebnisse vom PixDMAOut-Anschluss 174 zum Host-Computer 30 oder zum lokalen Speicher 142 weitergegeben werden.
  • In 6Q ist die Konfiguration im Bildpunkt-Schalter 100 für das Rendering der Zwischenschichten gezeigt, wenn hierarchische verschachtelte Effekte aufbereitet werden. Der FgCodec-Anschluss 160 wird verwendet, um die vom Host-Computer 30 vom PixDMAIn-Anschluss 172 empfangenen nicht komprimierten Daten weiterzuleiten. Der FgCodec-Anschluss 162 wird verwendet, um die nächste aufbereitete Schicht zum BgMix-Anschluss 186 für den Mischer 120 weiterzuleiten. Weil sich sowohl der FgCodec- als auch der BgCodec-Anschluss in Gebrauch befinden, wird die resultierende Zusammensetzung von den Mischern 120, 124 und 128 im nicht komprimierten Format über den PixDMAOut-Anschluss 174 des Bildpunkt-Schalters 100 zum Host-Computer 30 oder zum lokalen Speicher 142 weitergeleitet. Das Endergebnis der Zusammensetzung ist auf diese Weise im Host-Computer 30 oder im lokalen Speicher 142 gespeichert.
  • Wenn das Rendering der Zusammensetzung abgeschlossen ist, ist die Konfiguration des Bildpunkt-Schalters auf die eingestellt, die in 6R veranschaulicht ist. Die nicht komprimierten zusammengesetzten Daten werden vom Host-Computer 30 oder vom lokalen Speicher 142 über den PixDMAIn-Anschluss 172 durch den Bildpunkt-Schalter 100 zum BgCodec-Anschluss 162 für die optionale Komprimierung und Größenänderung vor der Speicherung im Host-Computer 30 oder im lokalen Speicher 142 weitergegeben.
  • In den 6S bis 6V ist eine Anzahl anderer Konfigurationen des Bildpunkt-Schalters 100 gezeigt. In 6S ist die Konfiguration des Bildpunkt-Schalters 100 für das Schreiben der Video- und Alphadaten in den Host-Speicher 30 gezeigt. In der in 6S veranschaulichten Konfiguration wird die gekoppelte Spezialeffektvorrichtung verwendet, ein neues Videovollbild und die zugeordneten Alphadaten zu erzeugen. Der Video- und Alphadatenströme werden durch die Mischer 120, 124 und 128 weitergegeben, um irgendein Keying hinzuzufügen. Es wird angemerkt, dass der Eingangsdatenstrom in den B-Anschluss des Mischers 120 eingegeben wird. Diese Konfiguration kann erwünscht sein, um eine Szenenaufnahme auf einem blauen Schirm zu verarbeiten, auf dem ein Anwender es vorziehen würde, einen Nicht-Echtzeit-Effekt anzuwenden. In der in 6S gezeigten Konfiguration kann die Mattierung für das Keying berechnet werden, bevor der Effekt angewendet wird.
  • 6T veranschaulicht die Konfiguration des Bildpunkt-Schalters 100 für die Komprimierung einer Graphik. Diese Konfiguration kann verwendet werden, um eine Graphik in einem Bild entweder als eine einfache Einfügung oder für die Verarbeitung durch eine gekoppelte Spezialeffektvorrichtung einzufügen. Die Graphik wird vom Host-Computer 30 oder vom lokalen Speicher 142 wiedergewonnen und durch den PixDMAIn-Pfad 172 im Schalter zum BgCodec-Anschluss 162 weitergegeben.
  • 6U veranschaulicht die Konfiguration des Bildpunkt-Schalters 100 für die Farbumsetzung. Die vom Host-Computer über den PixDMAIn-Pfad 172 empfangenen Videodaten werden direkt aus dem PixDMAOut-Pfad 174 weitergegeben. In dieser Ausführungsform enthält der Pix-DMA-Eingangskanal die Farbumsetzungslogik, um YUV und RGB auszuführen. Folglich führt dieser Durchgang effektiv die Farbumsetzung des Videodatenstroms aus.
  • In 6V ist eine Konfiguration des Bildpunkt-Schalters 100 für das erneute Komprimierten von Video, z. B. auf eine andere Auflösung (z. B. 300 kBytes zu 200 kBytes) gezeigt. In dieser Konfiguration leitet der Schalter die am FgCodec-Eingangsanschluss 160 empfangenen Daten über die Mischer 120, 124 und 128 zum BgCodec-Ausgangsanschluss 162 weiter. Die Mischer können verwendet werden, um die Keying-Daten hinzuzufügen, oder der Datenstrom kann ohne Keying durch den Bildpunkt-Schalter 100 geleitet werden.
  • Die Datenübertragung zwischen den Elementen in der Videoverarbeitungsvorrichtung
  • Die Breite der zwischen den Elementen in der Videoverarbeitungsvorrichtung 32 übertragenen Datenbits hängt von der ausgeführten Anwendung ab. Für Bewegtbildvideodaten sind sowohl 8-Bit- als auch 10-Bit-Datenpfade geeignet. In einer derartigen Ausführungsform kann die Schnittstelle in der Breite eine einzelne Videokomponente entsprechend einer geeigneten Videoformat-Konvention sein. Die Chroma- und Lumaabtastwerte, die sich bei aufeinander folgenden Takten abwechseln und einer 4:2:2-Konvention (CCIR610) folgen, können z. B. unter stützt werden. Andere mögliche Formate enthalten RGB, 4:4:4, RGBA, 4x4 und 4:2:2:4, sind aber nicht darauf eingeschränkt. Im allgemeinen ist die Schnittstelle formatunabhängig, solange wie der Sender und Empfänger ein ausgewähltes Format vereinbaren.
  • Wie oben erwähnt worden ist, werden in einer Ausführungsform die Daten zwischen den Elementen in der Videoverarbeitungsvorrichtung 32 unter Verwendung von Ablaufsteuertechniken weitergeleitet. Die allgemeinen Konzepte, nach denen jede der Datenfluss-Steuertechniken arbeitet, sind im folgenden beschrieben.
  • Die Ablaufsteuertechnik erlaubt, dass die Verarbeitung in der Videoverarbeitungsvorrichtung datenunabhängig ist. Für die digitalen Bewegtbildvideodaten erlaubt die Verbindung die Formatunabhängigkeit, die Unabhängigkeit von der zeitlichen und räumlichen Auflösung, die Unabhängigkeit von der Vollbildrate und die Variabilität der Vollbildrate und die schnellere als die Echtzeit-Übertragung der komprimierten oder nicht komprimierten digitalen Bewegtbildvideodaten zwischen den Verarbeitungselementen.
  • In einer Ausführungsform kann der Videodatenstrom unter Verwendung entweder eines verschachtelten oder eines fortschreitenden Formats empfangen und angezeigt werden. Im allgemeinen werden verschachtelte Vollbilder vor der Komprimierung in das fortschreitende Format umgesetzt, um die mögliche Menge der Komprimierung des Bildes zu vergrößern, obwohl dies keine Einschränkung der vorliegenden Erfindung ist. Die Logik innerhalb des Vollbildpuffers 78 ordnet die Reihenfolge der verschachtelten Vollbilder vor der Komprimierung um. Folglich ist die Videoverarbeitung nicht auf die Verarbeitung von Video oder Film in irgendeinen speziellen Format eingeschränkt, wobei sie NTSC-, PAL- und fortschreitende SDTV-Bildströme aufnehmen kann.
  • Im allgemeinen umfassen die Bilddaten, die zwischen den Elementen übertragen werden, eine Anzahl von Teilbildern, wobei sie in geradzahlige und ungeradzahlige Teilbilder unterteilt sind. In einer Ausführungsform besitzen die von den Codecs bereitgestellten Daten in sie eingefügte Markierungscodes, die das Ende der Teilbilder (EOF) und das Ende der Bilder (EOI) kennzeichnen. Andere Markierungscodes, wie z. B. diejenigen, die im Patent Nummer US 6.167.083 , mit dem Titel "Computer System and Process for Capture, Editing and Playback of Motion Video Compressed Using Interframe and Intraframe Techniques", eingereicht am 3. April 1997, von Sporen u. a., beschrieben sind, sind durch Literaturhinweis hierin aufgenommen.
  • Weil es viele mögliche Typen und Formate der Daten gibt, die von einem Verarbeitungselement empfangen werden können, und weil an den Daten verschiedene Funktionen ausgeführt werden können, empfängt ein Verarbeitungselement die Steuerinformationen über die Daten und die auszuführende Funktion. Die Befehlsinformationen sollten sich nur an den Bildgrenzen ändern. Die Befehlsinformationen können für Bewegtbildvideodaten die Größe eines Bildes, d. h. seine räumliche Auflösung; eine Position eines Bildes, z. B. für ein Verarbeitungselement, das ein Bild im Bild ist; die Helligkeit; den Kontrast; die Farbkorrektur oder andere Verarbeitungsinformationen; die Chroma- und Luma-Keys; die Anzeigen einer auszuführenden Mischung; und/oder möglicherweise eine Anzeige der zeitlichen Auflösung (d. h. die Vollbildrate) des Farbformats enthalten. Die Befehlsinformationen werden typischerweise durch einen Host-Computer bereitgestellt.
  • Damit der Prozessor die geeignete Verarbeitung an den Daten-Feldern ausführt, wird ein Feld- bzw. Teilbild-Fortschaltzähler im Raster/Block-Umsetzer aufrechterhalten, um dem Prozessor zu erlauben, die Anzahl der durch das Verarbeitungselement unter Verwendung der Steuerinformationen verarbeiteten Abtastwerte zu verfolgen. Jedesmal, wenn ein Feld bzw. Teilbild eines Bildes verarbeitet wird, wird der Feld- bzw. Teilbild-Fortschaltzähler dekrementiert. Wenn der Feld- bzw. Teilbild-Fortschaltzähler null ist, aktiviert der Raster/Block-Umsetzer ein Quittungsaustauschsignal, das diesen Zustand dem Vollbildpuffer 78 anzeigt. In Reaktion auf dieses Signal und in Reaktion auf die Erfassung eines Bildende-Markierungscodes (EOI-Markierungscodes) im Datenstrom aktiviert die dem Vollbildpuffer 78 zugeordnete Logik eine Unterbrechung, um zu ermöglichen, dass neue Steuerinformationen für das nächste Bild geladen werden. Eine Verzögerung kann dazwischen auftreten, wenn die dem Vollbildpuffer zugeordnete Logik das letzte Feld bzw. Teilbild im Datenstrom verarbeitet und wenn sie das Quittungsaustauschsignal empfängt. Während dieser Verzögerungsperiode werden in den Datenstrom Füll-Felder bzw. -Teilbilder des Wertes 0xFF eingefügt. Während der Verarbeitung werden die 0xFF-Felder bzw. -Teilbilder leicht identifiziert und vor der Verarbeitung entfernt. Folglich kann der Feld- bzw. Teilbild-Fortschaltzähler verwendet werden, um die Datenübertragung und die Verarbeitung in jedem der Elemente der Videoverarbeitungsvorrichtung 32 zu synchronisieren.
  • Die Verarbeitungs-Datenpfade
  • Wie oben in bezug auf die 1 und 2 erwähnt worden ist, enthalten die in jedem der Verarbeitungs-Datenpfade enthaltenen Elemente die Codecs 72 und 82, die Raster/Block-Umsetzer 74 und 84, die Größenänderungseinheiten 76 und 86 und die Vollbildpuffer 78 und 88. Jeder der Verarbeitungs-Datenpfade steuert unabhängig die Menge der Komprimierung, die Farbkorrektur, die Gammakorrektur, die Helligkeit, die Luminanz, die Sättigung und die an ihrem zugeordneten Datenstrom ausgeführten Bewegungseffekte. Typische Operationen und Konfigurationen für jedes der Elemente sind im folgenden ausführlicher beschrieben.
  • 1. Die Codecs:
  • In einer Ausführungsform komprimiert und dekomprimiert ein JPEG-Codec einen Videodatenstrom entsprechend einem Protokoll der gemeinsamen Photographen-Expertengruppe (JPEG-Protokoll). Eine Vorrichtung, die verwendet werden kann, um die Fähigkeiten eines JPEG-Codec bereitzustellen, ist ein JPEG-Bildkomprimierungsprozessor Zoran ZR36050 von Zoran, Santa Clara, California. Die vorliegende Erfindung ist jedoch nicht auf die Verwendung der JPEG-Komprimierungstechniken eingeschränkt. Es können außerdem andere Komprimierungstechniken, wie z. B. MPEG, DVC, Wavelet und verlustlose Komprimierungstechniken, verwendet werden.
  • Die Codecs sind bidirektionale Vorrichtungen, die im allgemeinen wie folgt arbeiten: in einer Richtung werden die komprimierten Daten über die Codec, DMA-Kanäle vom Host-Computer empfangen. Die JPEG-Codecs dekomprimierten z. B. die Videodatenströme für die Verarbeitung in 8 × 8-Blöcke der Bildpunktinformationen unter Verwendung der Techniken der Codierung mit variabler Länge, der inversen Quantisierung und der inversen diskreten Kosinustransformation (IDCT), die den Fachleuten auf dem Gebiet bekannt sind. Das Niveau der Dekomprimierung, das auf die Daten angewendet wird, ist durch einen Anwender auswählbar. Je größer das Niveau der Dekomprimierung, desto größer ist das Ausgangsbild auf dem Codec. Größere Bilder benötigen mehr Zeit für die Verarbeitung, das resultierende Bild besitzt aber im allgemeinen eine höhere Qualität. Deshalb gibt es einen Kompromiss zwischen der Verarbeitungszeit und der Bildqualität. Der JPEG-Bildkomprimierungsprozessor Zoran ZR36050 stellt einen Bereich von Komprimierungsniveaus bereit. Folglich stellen die Codecs die Flexibilität für einen Anwender bereit, um ein Komprimierungsniveau zu bestimmen, das für die Verarbeitung sowohl in den Vordergrund- als auch in den Hintergrund-Datenpfaden zu verwenden ist. In einer zweiten Richtung werden die über den Bildpunkt-Schalter 100 aus mehreren Quellen empfangenen nicht komprimierten Daten durch die JPEG-Codecs unter Verwendung der Techniken der Vorwärts-DCT, der Quantisierung und der Codierung mit variabler Länge für die Speicherung im Host-Computer 30 komprimiert. Wenn der Betrag der Komprimierung ausgewählt wird, der auf die Videodaten anzuwenden ist, wird ein Kompromiss zwischen der komprimierten Bildgröße und der Qualität geschlossen.
  • Der JPEG-Bildkomprimierungsprozessor Zoran ZR36050, der in der Videoverarbeitungsvorrichtung 32 optional verwendet wird, ist programmierbar, um eine konstante Ausgangsrate des Datenstroms bereitzustellen. Weil die Vollbilder in einer Videosequenz einen sich ändernden Grad der Komplexität besitzen können, um eine konstante Ausgangsrat des Datenstroms bereitzustellen, wird jedes der Vollbilder in Reaktion auf seine Komplexität um einen anderen Betrag komprimiert. Folglich werden komplexere Vollbilder, die mehr Daten enthalten, um einen größeren Betrag komprimiert als weniger komplexe Vollbilder, die weniger Daten enthalten.
  • Typischerweise wird der Betrag der Komprimierung, der auf ein gegebenes Teilbild anzuwenden ist, durch die Komplexität des vorhergehenden Teilbildes bestimmt. Folglich bleiben die Komprimierungsentscheidungen um eine Teilbild-Länge hinter dem Teilbild zurück. Eine derartige Verzögerung ist für Videoströme zulässig, bei denen die Vollbilder den gleichen Betrag der Komplexität enthalten. Wenn es jedoch scharfe Übergänge zwischen den Komplexitäten der Vollbilder gibt, kann es auftreten, dass ein unerwünscht kleiner Betrag der Komprimierung auf ein komplexes Vollbild angewendet wird. Wenn auf ein komplexes Vollbild eine zu kleine Komprimierung angewendet wird, verwendet das resultierende komprimierte Vollbild große Mengen des Speichers für die Speicherung, wobei die Elastizität der Verarbeitungspipeline beeinträchtigt wird.
  • In einer Ausführungsform ist ein minimaler Skalierungsfaktor vorgesehen, um zu sichern, dass die Komprimierungsbeträge nicht unter einen minimalen Betrag fallen, selbst für die am wenigsten komplexen Bilder. In einer Ausführungsform kann der minimale Skalierungsfaktor auf 0,5 gesetzt sein, obwohl sich dieser Betrag abhängig von den Speicher- und Verarbeitungsbeschränkungen der Videoverarbeitungskarte verändert. Das Vorsehen eines minimalen Skalierungsfaktors sichert, dass, selbst wenn es scharfe Übergänge in den Komplexitäten benachbarter Vollbilder gibt, die Größe des resultierenden komprimierten Daten-Vollbildes managebar ist.
  • In 3 ist der minimale Skalierungsfaktor in den Registern 72a und 82a gespeichert. Folglich kann ein minimaler Skalierungsfaktor für jeden der Verarbeitungs-Datenpfade vorgesehen sein. In einer Ausführungsform umfasst jedes der Register 32 Datenbits. Das Bit 0 jedes Registers ist ein Freigabebit, das verwendet wird, um das automatische Lesen und Vergleichen des Wertes des minimalen Skalierungsfaktors freizugeben. Das Bit 1 jedes Registers 72a und 82a erlaubt an den Teilbild-Grenzen Schreibvorgänge in den Wert des minimalen Skalierungsfaktors. Die Bits 15 : 2 sind reserviert, während die Bits 31 : 16 verwendet werden, um den minimalen Skalierungsfaktor zu speichern.
  • Demzufolge erlaubt die Verwendung eines minimalen Skalierungsfaktors, dass ein Datenstrom mit konstanter Ausgangsrate bereitgestellt wird, während die Elastizität der Verarbeitungspipeline aufrechterhalten wird.
  • 2. Die Raster/Block-Umsetzer:
  • Die Raster/Block-Umsetzer 74 und 84 werden verwendet, um eine Anzahl verschiedener Verarbeitungsfunktionen auszuführen, die die Raster/Block- und Block/Raster-Umsetzung, die Farbkorrektur, die Chroms-, Luminanz- und Gammakorrektur, den Durchgang (um die verlustlose Komprimierung zu unterstützen), die horizontale Umkehrung und das Hinzufügen von harten farbigen Grenzen enthalten.
  • Wie oben erwähnt worden ist, ist jedem der Raster/Block-Umsetzer eine SRAM-Vorrichtung zugeordnet. Die SRAM-Vorrichtungen werden als Streifenpuffer verwendet. Anstatt ein vollständiges Vollbild der Bilddaten in einem Vollbildpuffer zu speichern, werden mehrere Zeilen oder Streifen während des Raster/Block-Umsetzungsprozesses in der gekoppelten SRAM-Vorrichtung gespeichert. Die Verwendung eines Streifenpuffers im Gegensatz zu einem Vollbildpuffer verringert den erforderlichen Speicher und die resultierenden Systemkosten signifikant. In einer Ausführungsform speichert der Streifenpuffer 32 Zeilen der Daten, wobei er entweder in einer statischen 32 K × 8- oder in einer statischen 128 K × 8-RAM-Vorrichtung implementiert ist. Der Streifenpuffer-SRAM stellt eine Anzahl von Funktionen für den Raster/Block-Umsetzer bereit. Zuerst schafft der Streifenpuffer-SRAM einen Platz, um die Rasterzeilen zu speichern, bis acht Zeilen gesammelt sind. Sobald acht Zeilen gesammelt sind, kann der Prozess des Bereitstellens von 8 × 8-Blöcken der Daten eingeleitet werden. Zweitens kann durch geeignete Aktualisierung der Streifenpuffer-SRAM verwendet werden, um die Raster/Block-Umsetzung auszuführen. Drittens stellt der Streifenpuffer-SRAM die Pufferung bereit, um Elastizität zur Videopipeline hinzuzufügen, wobei dadurch die Gesamtleistung des Videoverarbeitungssystems verbessert wird.
  • 7 ist ein Blockschaltplan einer Ausführungsform des Raster/Block-Umsetzers 74. Der Raster/Block-Umsetzer 84 ist zum Raster/Block-Umsetzer 74 völlig gleich, wobei deshalb nur einer ausführlich beschrieben ist. Die im Blockformat vorgelegten Bilddaten werden zwischen dem Codecs 72 (82) und dem Raster/Block-Umsetzer 74 auf dem BDATA<9:0>-Bus 205 übertragen. Die im Bildpunkt-Format vorgelegten Bilddaten werden zwischen dem Raster/Block-Umsetzer 74 und der Größenänderungseinheit 76 auf dem Bus 207 übertragen. In der Ausführungsform nach 7 ist gezeigt, dass die Busse 205 und 207 zehn Bits Daten umfassen. Folglich kann der Raster/Block-Umsetzer 74 Datenformate der Bildpunktkomponenten mit zehn Bits unterstützen. Es können jedoch außerdem andere Datenformate der Bildpunktkomponenten, wie z. B. acht Bits, unterstützt werden. Im Acht-Bit-Format werden die höchstwertigen Bits der Busse 205 und 207 ignoriert. Eine Software-Anwendung kann zwischen dem Acht-Bit- und dem Zehn-Bit-Format unter Verwendung eines durch Software programmierbaren Zehn-Bit-Modus-Steuerbits auswählen. Folglich ist die vorliegende Erfindung nicht auf irgendein spezielles Bitformat der Bildpunktdaten eingeschränkt.
  • Die durch den Raster/Block-Umsetzer im Blockformat auf dem Bus 205 empfangenen Bildpunktkomponenten werden durch den Zwischenspeicher 206 zwischengespeichert und durch die BLK-Erfassungslogik 212 weitergegeben. Die BLK-Erfassungslogik 212 überwacht die Anzahl der Komponenten, die für einen Block empfangen worden sind, und gibt die Komponenten zum Register 215 weiter. Die Inhalte des Registers 215 werden auf dem MDATA<9:0>-Bias 216 ausgegeben.
  • Die BLK-Erfassungslogik 212 gibt außerdem Steuersignale zur MemRaster- Steuerung 220 und zur MemBlock-Steuerung 222 weiter. Die MemRaster-Steuerung 220 und die MemBlock-Steuerung 222 stellen Adressen- und Steuersignale für die Adressierung des Streifenpuffer-SRAM 75 bereit. Die MemRaster-Steuerung 220 stellt Adressen- und Steuersignale für das Speichern und Wiedergewinnen der Bilddaten im CCIR601-Bildpunktformat bereit. Die MemBlock-Steuerung 222 stellt Adressen- und Steuersignale für das Speichern und Empfangen der Bilddaten im Blockformat bereit. Die durch ein Modusbit 223 gesteuerte Auswahllogik 221 wählt entweder die durch die MemBlock-Steuerung 222 bereitgestellten Adressen- und Steuerdaten oder die durch die MemRaster-Steuerung 220 bereitgestellten Adressen- und Steuerdaten für das Schreiben der Daten auf den MDATA<9:0>-Leitungen 216 zum Streifenpuffer-SRAM 75 aus.
  • In einer Ausführungsform können die Daten, die in einem ersten Format in den Streifenpuffer-SRAM geschrieben werden, in einem zweiten Format aus dem Streifenpuffer-SRAM wiedergewonnen werden. Abhängig vom gewünschten empfangenen Format der Daten aus dem Streifenpuffer-SRAM werden verschiedene Adressen verwendet. Wenn es erwünscht ist, die Daten im Bildpunktformat zu lesen oder zu schreiben, werden die Adressen und die Steuerung von der MemRaster-Steuerung 220 verwendet. Wenn es erwünscht ist, die Daten im Blockformat zu lesen oder zu schreiben, werden die Adressen und die Steuerung von der MemBlock-Steuerung verwendet. Der Streifenpuffer kann auf diese weise verwendet werden, um die Raster/Block-Umsetzung bereitzustellen. Außerdem fügt der SRAM durch die Bereitstellung der vorübergehenden Speicherung der Daten Elastizität zur Verarbeitungspipeline hinzu.
  • In 8A ist die Signifikanz der Adressenbits für den SRAM, wenn der SRAM im Rastermodus arbeitet, gezeigt. In 8B ist die Signifikanz der Adressenbits für den SRAM, wenn der SRAM im Blockmodus arbeitet, gezeigt.
  • Im Rastermodus, wie in 8A gezeigt ist, identifizieren X(9:0) und Y(6:0) die rastergeordneten X- und Y-Adressen; d. h. die (x, y)-Adresse der Bildpunktkomponente innerhalb des Bildes. C(1:0) identifiziert den Typ der Komponente ein der entsprechenden Adresse (einer aus Cbn, Yn, Crn, Yn+1). Im Blockmodus, wie in 8B gezeigt ist, identifiziert ST(3:0) die Anzahl der Zeilen in einem Streifen (z. B. acht), MN(5:0) repräsentiert die Anzahl der Blöcke innerhalb des Streifens und MI(5:0) identifiziert einen Index des Bildpunktpaares (CbYCrY) innerhalb des Blocks. In einem 8 × 8-Block, der 64 Bildpunkte enthält, identifiziert MI(2:0) z. B. den Bildpunkt innerhalb der Zeile, während MI(5:3) die Zeile innerhalb des Blocks identifiziert. Wie im Rastermodus identifiziert C(1:0) den Typ der Komponente an der entsprechenden Adresse (einer aus Cbn, Yn, Crn, Yn+1).
  • In 6 wird die Chroms-, Luminanz- und Gammakorrektur an den aus dem Streifenpuffer-SRAM 35 wiedergewonnenen Daten in der Datenkorrektureinheit 210 ausgeführt. Die Beschneidung und die Grenzsteuerung wird in der Beschneideinheit 200 ausgeführt. Die Operation dieser beiden Einheiten ist im folgenden kurz beschrieben.
  • Die Datenkorrektureinheit 210 arbeitet im allgemeinen wie folgt. Die Bildpunktdaten sind im CCIR601-YcrCb-4:2:2-Farbraum dargestellt. Eine 2 × 2-Matrixberechnung für die Chroms-Korrektur wird in Hardware ausgeführt. Die durch Software spezifizierten Farbkoeffizienten (CCs), Skalierungsfaktoren (SFs), Farbtonwerte (Kr, Kb) und Chroms-Farbkomponenten Cr und Cb sind die Eingangsparameter, die die farbkorrigierten NewCr und NewCb erzeugen. Die Skalierungsfaktoren werden verwendet, um den Bereich der Korrekturen zu vergrößern. Die Farbtonwerte erlauben, dass eine Farbkomponente zu einer speziellen Farbe verschoben wird. Die Farbkorrekturoperation wird ausgeführt, wie im folgenden in der Gleichung 1 angezeigt ist:
  • Gleichung 1:
    Figure 00320001
  • Die resultierenden farbkorrigierten Gleichungen sind in der Gleichung II gezeigt:
    Gleichung II: NewCr = ((CC11*Cr)*Sf11) + ((CC12*Cb)*SF12) + Kr, NewCb = ((CC21*Cr)*SF11) + ((CC22*Cb)*SF22) + Kb.
  • Die Werte für die Chromakoeffizienten (CC11, CC12, CC21, CC2), die Farkitonkoeffizienten (Kr, Kb) und die Skalierungsfaktoren (SF11, SF12, SF21, SF22) sind in durch Software programmierbaren Registern gespeichert. In einer Ausfürungsform sind die Register schattiert, so dass der Host-Computer die Koeffizienten für die Verarbeitung eines nächsten Vollbildes in einer Sequenz aktualisieren kann, während die Verarbeitung unter Verwendung der aktuellen Koeffizientenwerte ausgeführt wird.
  • 9 veranschaulicht ein Beispiel eines in der Korrektureinheit 210 enthaltenen Datenpfades zum Korrigieren der Luminanzdaten. Eine doppelt gepufferte Hardware-Nachschlagetabelle enthält zwei statische RAM-Vorrichtungen 250 und 252. Die statischen RAM-Vorrichtungen 250 und 252 werden über ein Programm, das im Host-Computersystem 30 ausgeführt wird, unter Verwendung der HA-Adressenleitungen und der HD-Datenleitungen geschrieben. Während der Operation werden eine Helligkeit, die Kontrastkorrektur und andere Lumaeffekte in Reaktion auf einen Wert einer eingegebenen Y-Komponente bereitgestellt. Eine eingestellte Y-Komponente wird aus den statischen RAM-Vorrichtungen ausgegeben. Die eingestellte Y-Komponente wird in das Register 255, auf das durch Software zugegriffen werden kann, geschrieben. Die eingestellte Y-Komponente wird außerdem zur Luma-Korrekturpipeline 254 weitergegeben, die den Fluss der Lumadaten in den Videodatenstrom managt.
  • In einer Ausführungsform ist zu irgendeinem gegebenen Zeitpunkt während der Operation eine der zwei statischen RAM-Vorrichtungen aktiv, während die andere der zwei statischen RAM-Vorrichtungen inaktiv ist. Die Nachschlagevorgänge in den Lumatabellen werden gegen die aktive Tabelle ausgeführt. Die Lese- und Schreiboperationen der Lumatabellensteuerung werden an der inaktiven "Tabelle ausgeführt. In einer Ausführungsform schaltet Hardware zwischen den Tabellen an den Teilbild-Grenzen um, falls sich die aktuelle inaktive Tabelle seit dem Start eines aktuellen Teilbildes geändert hat. Ein Statusbit wird aufrechterhalten, um anzuzeigen, welche der Tabellen als die aktive Tabelle bestimmt ist. Ein Modusregisterbit kann vorgesehen sein, um zu erzwingen, dass eine der Tabellen die aktive Tabelle ist.
  • Vorteilhaft enthält jede der zwei statischen RAM-Vorrichtungen 250 und 252 einen zugeordneten schattierten SRAM 250a bzw. 252a. Die Schattierung der SRAM-Vorrichtungen erlaubt dem Host-Computer, für die spätere Vollbildverarbeitung die Helligkeits-, Kontrast- oder Luminanzabbildungen zu ändern, während unter Verwendung der vorhandenen SRAM-Abbildungen die Verarbeitung der aktuellen Vollbilder fortgesetzt wird.
  • In 7 enthält die Beschneidlogik 200 die Füllfarbenregister 201 (die mit den Füllfarbenregistern 201a schattiert sind) und die Beschneidzähllogik 203. Das Füllfarbenregister speichert die Farbwerte für die Y-, Cr- und Cb-Komponenten und identifiziert die Farben dieser Komponenten, wenn sie verwendet werden, um ein Bild zu begrenzen. Die Beschneidzähllogik 203 enthält vier Register, um eine Position und eine Größe des beschnittenen Bildes zu definieren, und vier Register, um zu definieren, wie weit sich die Farbgrenze in das beschnittene Bild erstreckt. Der Bereich eines ursprünglichen Bildes, der beschnitten wird, ist durch die Inhalte der Bescheidregister definiert. Wenn eine Grenze verwendet wird, wird die Grenze in das beschnittenen Bild geschnitten, wobei die Bilddatenwerte durch die der ausgewählten Farbe ersetzt werden. Die vier Register, die die Position und die Form des Bildes definieren, enthalten: XleftPosCrop, dies identifiziert eine Position der linken Kante eines beschnittenen Bildes innerhalb eines vollständigen Bildes, YtopPosCrop, dies identifiziert eine Position der Oberkante eines beschnittenen Bildes, XrightPosCrop, dies identifiziert eine Position einer rechten Kante eines beschnittenen Bildes, und YbottomPosCrop, dies identifiziert eine Position der Unterkante des beschnittenen Bildes.
  • Die vier Register, die definieren, wie weit sich die Grenze in das beschnittene Bild erstreckt, sind XleftPosBorder, dies identifiziert eine Position der linken Innenkante einer Grenze innerhalb des vollständigen Bildes, YtopPobBorder, dies identifiziert eine obere Innenkante der Grenze, XrigthAPosBorder, dies identifiziert eine Position der rechten Innenkante der Grenze, und YbottomPosBorder, dies identifiziert eine Position der unteren Innenkante der Grenze.
  • Folglich stellt der Raster/Block-Umsetzer Umsetzungs- und Farbkorrekturfähigkeiten bereit. Sobald die Bilddaten durch den Raster/Block-Umsetzer verarbeitet worden sind, werden sie zur Größenänderung 76 weitergeleitet.
  • 3. Die Größenänderungseinheit:
  • Die Größenänderungseinheiten 76 und 86 arbeiten, um die Größe des empfangenen Datenstroms zu ändern, um die Umsetzungen von Zeilen mit 640 Bildpunkten zu Zeilen mit 720 Bildpunkten, die Umsetzungen von Medien mit niedriger Auflösung (320 oder 352 Bildpunkte) zu Zeilen mit 720 Bildpunkten und die Fixup-Größenänderung (Vergrößerung) zu unterstützen. Die Größenänderungseinheiten 76 und 86 können außerdem verwendet werden, um die Bildrasterdaten zu verkleinern, um Bild-in-Bild-Anwendungen zu unterstützen. Für den Prozess ist die Größenänderungseinrichtung vorgesehen, um die Verringerung der Anzahl der Bildpunkte pro Zeile zu unterstützen und um ein vollständiges Vollbild vertikal für Filmauflösungen mit einzelnen Teilbildern zu verkleinern. Die Steuerung über die Funktionalität der Größenänderungseinheit wird durch Register bereitgestellt, auf die durch Software zugegriffen werden kann. In einer Ausführungsform wird eine von Genesis Systems bereitgestellte Bildgrößenänderungsmaschine Genesis gm833x2 verwendet.
  • 4. Die Vollbildpufter:
  • Jeder der Vollbildpufter 78 und 88 wird verwendet, um ein vollständiges Vollbild der Bildpunktdaten zu halten. In einer Ausführungsform stellen die Vollbildpuffer die Teilbild/Vollbild-Umsetzung, die Standvollbilder, die Zeitlupeneffekte, das Scheuern mit langsamer Geschwindigkeit, 2:3-, 3:2- oder PAL-Fortschaltung (Wiedergabe), die Wiedergabe einzelner Teilbilder, das Rückgängigmachen der 2:3, 3:2- oder PAL-Fortschaltung und die Pipelineelastizität bereit.
  • In 10 ist ein Blockschaltplan einer Ausführungsform eines Vollbild-Pufferspeichers 78 gezeigt. Der Vollbild-Pufferspeicher 78 ist in obere und untere Abschnitte 280 bzw. 282 unterteilt, wobei der untere Abschnitt 282 128 Zeilen eines Vollbildes speichert, während der obere Abschnitt 280 die verbleibenden Zeilen eines Vollbildes speichert. Jeder der oberen und unteren Abschnitte ist weiter in die Speicher für die geradzahligen und ungeradzahligen Teilbilder 284, 288 bzw. 294, 298 unterteilt.
  • Das Video ist typischerweise in einer Anzahl von Vollbildern unterteilt, wobei jedes Vollbild ein geradzahliges und ein ungeradzahliges Teil- oder Halbbild enthält. Wie oben erwähnt worden ist, kann die Videoverarbeitungskarte entweder unter Verwendung fortschreitender oder verschachtelter Bilder arbeiten. Ein fortschreitendes Bild wird unter Verwendung einer Folge von Vollbildern aus geradzahligen und ungeradzahligen Teilbildern übertragen. Ein Beispiel des fortschreitenden Videos ist das fortschreitende SDTV. Ein verschachteltes Bild wird übertragen, indem zuerst alle ungeradzahligen Zeilen des Teilbildes und dann alle geradzahligen Zeilen des Teilbildes übertragen werden. Ein Beispiel der verschachtelten Videodaten ist das verschachtelte NTSC-Video.
  • Wie oben erwähnt worden ist, kann die Videoverarbeitungsvorrichtung unter Verwendung entweder fortschreitender oder verschachtelter Videodaten arbeiten. Im allgemeinen wird die Komprimierung jedoch an den Daten im fortschreitenden Format ausgeführt, weil dies den größten Betrag der Komprimierung bereitstellt. Der Vollbildpufter enthält die Logik, um das fortschreitende Video für die Anzeige in das verschachtelte Video umzusetzen, falls es ein verschachteltes Video für.
  • Wenn die verschachtelten Daten im Vollbildpuffer empfangen werden, werden die ungeradzahligen Teilbilder im ungeradzahligen Abschnitt 280 des Vollbild-Pufferspeichers 78 gespeichert, während die geradzahligen Teilbilder im geradzahligen Abschnitt 290 des Vollbild-Pufferspeichers 78 gespeichert werden. Die Lese- und Schreibvorgänge zum/vom Vollbild-Pufferspeicher 78 sind zwischen den geradzahligen und ungeradzahligen Abschnitten des Speichers verschachtelt. Folglich greift im grundlegenden Operationsmodus der Vollbildpuffer abwechselnd zwischen den geradzahligen und ungeradzahligen Abschnitten des Vollbild-Pufterspeichers 78 zu. Die Scheibsteuerlogik 260 stellt die Adressen-, Steuer- und Datensignale für das Schreiben des Vollbild-Pufferspeichers 78 bereit, während die Lesesteuerlogik 270 die Adressen-, Steuer- und Datensignale für das Lesen des Vollbild-Pufferspeichers bereitstellt. Ein Modusregister 275 speichert eine Anzahl von Steuerbits, die verwendet werden, um einen Modus der Operation des Vollbildpufters zu steuern.
  • Falls der Typ der Videodaten der Typ ist, der im fortschreitenden Format angezeigt wird, muss die durch den Vollbildpuffer ausgeführte Umordnung nicht ausgeführt werden. Statt dessen werden die Teilbilder direkt in der Reihenfolge, in der sie empfangen werden, in den Vollbildpuffer geschrieben.
  • Für das Anzeigen der verschachtelten Daten werden die Schreibdaten, die im fortschreitenden Format von der Größenänderungseinheit 76 des Pufferspeichers empfangen werden, aus dem Vollbild-Pufferspeicher für die Weitergabe zum Bildpunkt-Schalter 100 im verschachtelten Format ausgelesen. Alternativ werden die Schreibdaten, die im verschachtelten Format am Vollbildpuffer empfangen werden, für die Aufzeichnung im fortschreitenden Format aus dem Vollbildpuffer gelesen. Der Vollbild-Pufferspeicher kann deshalb verwendet werden, um zwischen fortschreitenden und verschachtelten Daten umzusetzen. 11 veranschaulicht eine graphische Darstellung der Umsetzung eines Eingangsdatenstroms vom fortschreitenden Format in das verschachtelte Format. Die Lesevorgänge aus dem Vollbild-Pufferspeicher sind um ein Paar der Zeilen-Schreibvorgänge verzögert. Die Zeilen 1 und 2 würden z. B. in die geradzahligen Teilbildspeicher 288 und 284 geschrieben. Wenn die Zeile 3 in den geradzahligen Teilbildspeicher 288 geschrieben wird, würde die Zeile 1 aus dem Vollbild-Pufferspeicher gelesen.
  • Typische Videoverarbeitungssysteme stellen Zeitlupen-, Standvollbild- und 2:3-Fortschaltungs-Effekte durch das Steuern einer Rate des Flusses des Vollbildpuffers zu einer Anzeige bereit, z. B. durch das Ändern einer Rate der Übertragung der Bildpunkte zu einem RAMDAC oder durch das Ändern der Rate, mit der die Bildpunkte vom RAMDAC zur Anzeige weitergegeben werden. In der Ausführungsform nach 9 werden, anstatt eine Rate zu ändern, mit der die Daten zur Anzeige ausgegeben werden, die Zeitlupen-, Standvollbild- und 2:3/3:2-Fortschaltungs-Effekte bereitgestellt, indem die Inhalte der Teilbilder gesteuert werden, die in den Vollbild-Pufferspeicher eingegeben werden. Um z. B. einen Standbildeffekt bereitzustellen, wird das gleiche Vollbild zahlreiche Male in aufeinander folgende Stellen des Vollbildpuffers geschrieben. Wenn die Inhalte des Vollbildpuffers zur Anzeige weitergegeben werden, wird das gleiche Vollbild ständig von verschiedenen Stellen im Vollbild-Pufferspeicher ausgegeben. Das resultierende Bild ist der gewünschte Standbildeffekt.
  • Die Modusbits im Modusregister 275 werden verwendet, um zu steuern, welche Teilbilder in den Vollbild-Pufferspeicher 78 geschrieben werden, wobei sie deshalb verwendet werden, um Standbild-, 2:3-Fortschaltungs- und Zeitlupen-Effekte bereitzustellen. Die Modusbits enthalten ein Halte-den-Inhalt-Bit (HC-Bit), ein Unterdrückungsschalter-Bit (SS-Bit) und ein Filmumlagen-Bit (SW-Bit).
  • Wenn das Halte-den-Inhalt-Bit (HC-Bit) gesetzt ist, wird ein Schreib-Datenpfad zum Vollbild-Pufferspeicher für die Zeitdauer stabil gehalten, während der das Haltebit gesetzt ist, wobei keine weiteren Schreibvorgänge in den Vollbildpufter ausgeführt werden. In dieser Weise kann das HC-Bit verwendet werden, um Standbildeffekte bereitzustellen.
  • Das Unterdrückungsschalter-Bit (SS-Bit) wird gesetzt, um das Umschalten des Vollbildpufter-Controllers zwischen den ungeradzahligen und geradzahligen Abschnitten des Vollbild-Pufferspeichers anzuhalten. Wenn das SS-Bit gesetzt ist, werden aufeinander folgende Teilbilder, die in den Datenpfad zum Vollbild-Pufterspeicher eingegeben werden, in den gleichen Abschnitt des Vollbild-Pufterspeichers geschrieben. Das SS-Bit kann im Zusammenhang mit dem HC-Bit verwendet werden, um ein ungeradzahliges oder geradzahliges Teilbild im Wiedergabemodus zu wiederholen.
  • Das Filmumlagen-Bit (SW-Bit) wird gesetzt, um die Reihenfolge der Schreibvorgänge des nächsten Paares der Teilbilder umzulagern, nachdem das SW-Bit gesetzt worden ist. Es wird z. B. angenommen, dass ein Vollbild C mit den Komponenten C0 und C1 einem Vollbild B folgt, wobei entsprechend der herkömmlichen Operation eines Vollbild-Pufferspeichers C0 in einen geradzahligen Abschnitt des Vollbild-Pufferspeichers zu schreiben ist, während C1 in einen ungeradzahligen Abschnitt des Vollbild-Pufferspeichers zu schreiben ist. Falls das SW-Bit während des Vollbildes B gesetzt ist, ist die Wirkung, dass die Komponente C0 in den ungeradzahligen Abschnitt des Vollbild-Pufferspeichers geschrieben wird, während die Komponente C1 in den geradzahligen Abschnitt des Vollbild-Pufferspeichers geschrieben wird. Das SW-Bit kann im Zusammenhang mit dem HC-Bit verwendet werden, um die 2:3- und 3:2-Fortschaltungs- und Bewegungseffekte bereitzustellen.
  • In den 12A12H ist eine Folge von Taktplänen bereitgestellt, um zu veranschaulichen, wie die obenbeschriebenen Modusbits verwendet werden können, um Standbild-, Zeitlupen- und 2:3/3:2-Fortschaltungs-Effekte zu erreichen. In der graphischen Darstellung nimmt die Zeit in der Richtung von links nach rechts zu, wobei jeder Zyklus durch Tn identifiziert ist. Die für den ungeradzahligen Abbschnitt des Vollbild-Pufferspeichers bestimmten Vollbilder sind durch On bezeichnet, während die Schreibvorgänge in den geradzahligen Abschnitt des Vollbild-Pufferspeichers durch En bezeichnet sind. Die Eingangsvollbilder sind durch Fn bezeichnet. In jedem der Taktpläne zeigen die Teilbilder 300 die Teilbilder an, die auf einem Eingangs-Datenpfad für das Schreiben in den Vollbildpufter empfangen werden, die ausgegebenen Teilbilder 310 zeigen die resultierenden Teilbilder an, die als die Lesedaten bereitgestellt werden, wenn auf den Vollbildpuffer für einen Lesevorgang zugegriffen wird.
  • 12A veranschaulicht, wie das HC-Bit verwendet werden kann, um die Effekte eingefrorener Vollbilder bereitzustellen. Zum Zeitpunkt T3 wird während der Eingabe des Teilbildes E2 das HC-Bit aktiviert. Der Effekt ist, die Inhalte von E2 am Schreibanschluss des Vollbild-Pufferspeichers zu halten. Wenn die Inhalte des Vollbild-Pufferspeichers ausgelesen werden, wie bei 310 gezeigt ist, werden die Teilbilder E2 und O2 vom Zeitpunkt T2 bis zum Zeitpunkt T7 wiederholt.
  • 12B veranschaulicht, wie die HC- und SS-Bits zusammen verwendet werden können, um ein ungeradzahliges Teilbild im Wiedergabemodus zu wiederholen. Während des Schreibvorgangs zum Zeitpunkt T2 ist das HC-Bit gesetzt, dies bewirkt, dass die Inhalte des Schreib-Datenpfades für einen Zyklus zu halten sind. Während der Wiedergabe zum Zeitpunkt T3 ist das SS-Bit gesetzt, dies bewirkt, dass das Umschalten zum geradzahligen Abschnitt des Vollbild-Pufferspeichers zu unterdrücken ist. Das Ergebnis ist, dass die Inhalte des Schreib-Datenpfades wiederholt in den ungeradzahligen Abschnitt des Vollbild-Pufferspeichers geschrieben werden und eine Sequenz ungeradzahligen Teilbilder wiederholt wird.
  • 12C veranschaulicht, wie das HC-Bit verwendet werden kann, um ein Vollbild aus zwei Teilbildern einzufrieren. Während des Zyklus T2 und T3 ist das HC-Bit gesetzt. Im Ergebnis werden die Daten von F2 wiederholt im Vollbild-Pufferspeicher gespeichert und für die Wiedergabe ausgegeben.
  • 12D veranschaulicht, wie die HC- und SS-Bits im Wiedergabemodus verwendet werden können, um ein ungeradzahliges Teilbild zu wiederholen. Zu den Zeitpunkten T2 und T3 ist das HC-Bit gesetzt. Zum Zeitpunkt T3 ist das SS-Bit gesetzt. Im Ergebnis werden die Wiedergabedaten aus dem ungeradzahligen Abschnitt des Vollbild-Pufferspeichers wiedergewonnen.
  • 12E12H veranschaulichen, wie die Bits verwendet werden können, um Filmeffekte bereitzustellen. Die Vollbilder der empfangenen Filmdaten sind als A, B, C und D dargestellt. Zu geeigneten Zeitpunkten während der Übertragung des NTSC-Bitstroms sind die HC- und SW-Bits aktiviert, um die gewünschte 2:3- oder 3:2-Fortschaltung der Teilbild-Sequenz auszuführen. 12E veranschaulicht die Einstellung der Modusbits, um die 2:3-Fortschaltung auszuführen, während 12F die Einstellung der Bits veranschaulicht, um die 3:2-Fortschaltung zu implementieren.
  • Für die 2:3-Fortschaltung wird während jedes Vollbildes des B-Typs oder D-Typs der SW gesetzt oder gelöscht. Wie oben beschrieben worden ist, zeigt es an, wenn es gesetzt ist, dass die anschließenden Teilbilder (in diesem Fall C und D) rückwärts wiedergegeben werden sollten, d. h., dem ersten geradzahligen Teilbild folgt das ungeradzahlige Teilbild. Das SW-Bit ist basierend darauf gesetzt, welches Teilbild des nächsten Filmvollbildes zuerst wiedergegeben wird: 0 = ungeradzahlig, 1 = geradzahlig. Folglich ist in 112E das SW-Bit im Vollbild B gesetzt, um das ausgegebene Vollbild C rückwärts wiederzugeben (das gerad zahlige Teilbild zuerst). Wie in 12F gezeigt ist, ist, um die 3:2-Fortschaltung bereitzustellen, das HC-Bit für jedes Vollbild des A- und B-Typs im gesetzt, während das SW-Bit für jedes Vollbild des A-Typs gesetzt ist und für jedes Vollbild des C-Typs zurückgesetzt ist. Die obigen Konzepte können durch einen Fachmann auf dem Gebiet leicht angewendet werden, um die PAL-Fortschaltung bereitzustellen.
  • Es ist außerdem möglich, Bewegungseffekte am filmgestützten Material unter Verwendung der obigen Steuerbits auszuführen. 12G veranschaulicht ein Beispiel eines Bewegungseffekts mit halber Geschwindigkeit. Beim Effekt der halben Geschwindigkeit besitzt der A-Film sowohl das Vollbild des A-Typs als auch das Vollbild des B-Typs, wenn er wiedergegeben wird. Folglich würde bei voller Geschwindigkeit die Wiedergabe des Vollbildes des B-Typs zu T4 anstatt zu T6 eingeleitet. 12H veranschaulicht einen Bewegungseffekt bei einer dritten Geschwindigkeit. Um diesen Effekt zu erreichen, besitzt das Vollbild des A-Typs die Vollbilder des A-, B- und C-Typs, die wiedergegeben werden. Folglich beginnt die Wiedergabe des Vollbildes des B-Typs nicht bis zum Zeitpunkt T8.
  • Auf diese Weise stellt der Vollbildpuffer die Fähigkeiten der Vollbild/Teilbild-Umsetzung und der Bewegungseffekte bereit. Wie in den 1 und 2 gezeigt ist, ist sowohl im Vordergrund- als auch im Hintergrund-Datenstrom ein getrennter Vollbildpuffer vorgesehen. Demzufolge können die Bewegungseffekte unter Verwendung der obigen Techniken unabhängig auf jeden der Datenströme angewendet werden. Eine derartige Anordnung schafft eine vergrößerte Fähigkeit für Effekte für das Videoverarbeitungssystem.
  • Demzufolge sind eine Anzahl von Elementen, die im Verarbeitungs-Datenpfad enthalten sein kann, und ihre zugeordneten Funktionalitäten beschrieben worden. Die vorliegende Erfindung ist jedoch nicht auf einen Datenpfad eingeschränkt, der diese Komponenten enthält. Es können andere Komponenten zum Datenpfad hinzugefügt werden, um verschiedene Typen der Funktionalität bereitzustellen, die in der Videoverarbeitungsvorrichtung bereitzustellen sind. Obwohl die Datenpfade, die gezeigt worden sind, völlig gleiche Elemente enthalten, ist dies außerdem keine Einschränkung der vorliegenden Erfindung. Statt dessen können verschiedene Verarbeitungsfähigkeiten in den verschiedenen Datenpfaden vorgesehen sein, wobei der Bildpunkt-Schalter konfiguriert sein kann, um die gewünschten Verarbeitungs-Datenpfade zu verwenden, um die gewünschte Funktionalität zu halten.
  • Das Rollen und das Kriechen der Titel
  • In 13 stellen, wie oben erwähnt worden ist, die DSK1- und DSK2-DMA-Kanäle 106 und 108 die Funktionalität des glatten Rollens und Kriechens des Titels bereit. Ein Titel ist ein Dreispureffekt; über einer Referenz-Videospur sind zwei neue Spuren vorgesehen. In einer Dreispurzusammensetzung ist die Spur null das Hintergrundvideo, die Spur eins ist der Füllkanal und die Spur zwei ist der α-Kanal. Der Effekt ist, dass unter Verwendung des α-Kanals als einen Transparenzfaktor der Füllkanal über dem Hintergrundvideo aufgebracht wird.
  • Es gibt drei Typen von stromabwärtigen Key-Titeleffekten: Rollen, Kriechen und statische Titel. Jeder dieser Titeleffekte umfasst das Bewegen des Titels durch Subbildpunkt-Granularitäten in benachbarten Zeilen auf der Anzeige. In einer Ausführungsform wird eine Horizontal/Vertikal-Interpolationseinrichtung (HVI) 107 verwendet, um glatt rollende Titel bereitzustellen. Die HVI empfängt zwei Eingangsdatenströme. Der erste Strom kommt vom DSK1-DMA-Kanal 106, während der zweite Datenstrom vom DSK2-DMA-Kanal 108 kommt. Jeder dieser zwei Kanäle stellt Abtastzeilen-Informationen bereit, wobei einer der Kanäle die geradzahligen Abtastzeilen bereitstellt, während der andere Kanal die ungeradzahligen Abtastzeilen des gewünschten Titels bereitstellt. Die Ausgabe aus der HVI 107 wird zum DSK1-Mischer 124 weitergegeben.
  • In einer Ausführungsform enthält jeder der DSK1- und DSK2-DMA-Kanäle; einen Lauflängencodierungs-Decodierungsblock (RLE-Decodierungsblock) 106a bzw. 108a. Die RLE-Decodierungsblöcke 106a und 108a werden verwendet, um die vom Host-Computer 30 oder vom lokalen Speicher 142 empfangenen und in einem codierten Format in den entsprechenden DSK1- und DSK2-FIFOs gespeicherten Daten zu decodieren. Ein Verfahren des Codierens der Datenströrme ist in der Patentanmeldung, Aktenzeichen des Anwalts A0521/7148, eingereicht am 3. April 1998, mit dem Titel "Method and Apparatus for Encoding and Decoding a Data Stream Using Inferential Techniques", beschrieben.
  • Die HVI interpoliert die von den DSK1- und DSK2-Kanälen empfangenen Farb- und Alphadaten und legt sie dem DSK1-Mischer 124 vor, und das Keying auszu führen. In einer Ausführungsform umfasst die Ausgabe aus den DSK1- und DSK2-Kanälen die mit ihrer entsprechenden α-Komponente im voraus gemischten Titelinformationen. Demzufolge ist der Hintergrunddatenstrom mit dem interpolierten Titel unter Verwendung einer Halb-α-Mischung entsprechend der folgenden Gleichung I gemischt:
    Gleichung I: C' = C*c,wobei C den von den DSK1- und DSK2-Kanälen ankommenden Videodatenstrom, der durch HVI interpoliert worden ist, repräsentiert, C' repräsentiert das mit der α-Komponente c gemischte C und R ist der gemischte zusammengesetzte Bildpunktwert. Die obige Mischgleichung I kann modifiziert werden, um den Titel auf- und abzublenden, indem das Alpha c mit einem konstanten Blendwert d multipliziert wird. Die Mischergleichung ist im folgenden als Gleichung II bereitgestellt:
    Gleichung II: e = c*d, R = C*e + BG*(1 – e),wobei e der überblendete Alpha-Wert ist, während R der gemischte zusammengesetzte Wert ist.
  • Deshalb sind ein Verfahren und eine Vorrichtung gezeigt worden, die das Rollen und das Kriechen der Titel erlauben. Durch das Interpolierten der von den zwei Datenkanälen empfangenen Daten, von denen jeder entweder eine ungeradzahlige oder eine geradzahlige Abtastzeile bereitstellt, kann die Simulation der Subbildpunkt-Bewegung in einem Titel ausgeführt werden.
  • Das nicht komprimierte Video
  • Die in bezug auf 3 beschriebene Ausführungsform der Videobearbeitungsvorrichtung kann nicht komprimierte Videodaten in verschiedenen Stufen der Verarbeitung verwenden. Die Konfigurationen des in den 6M bis 6T gezeigten Bildpunkt-Schalters 100 verwenden z. B. nicht komprimiertes Video für Effekte zusammengesetzter Schichten. Während der Verarbeitung werden die Videodaten jedoch immer durch die Codecs 72 und 82 weitergegeben. Der durch die (Codecs 72 und 82 ausgeführte Komprimierungs/Dekomprimierungs-Prozess kann zu einem Verlust an Bildqualität führen.
  • In 14 ist eine Ausführungsform einer Videoverarbeitungsvorrichtung 360 gezeigt, die nicht komprimierte Videodaten empfangenen und verarbeiten kann. Die Videoverarbeitungsvorrichtung 360 enthält Elemente, die zu denjenigen in der obenbeschriebenen Videoverarbeitungsvorrichtung 32 ähnlich sind. Die Videoverarbeitungsvorrichtung 360 enthält jedoch die Datenpfade 317 und 318, um nicht komprimiertes Video direkt in die Verarbeitungs-Datenpfade zu übertragen. Die Codecs 72 und 82 werden unter Verwendung der Umgehungsauswahllogik und Datenflusssteuerung 320 umgangen, wenn die Videoverarbeitungsvorrichtung programmiert ist, um im Nicht-komprimiert-Modus zu arbeiten. In einer Ausführungsform ist ein Modusbit, auf das durch Software zugegriffen werden kann, für das Einstellen, damit die Videoverarbeitungsvorrichtung 360 im Nicht-komprimiert-Modus arbeitet, in der Steuerung 320 vorgesehen. Die Umgehungsauswahllogik und Datenflusssteuerung 320 steuert die Auswahleingänge der Multiplexer 322 und 324. Die Ausgabe aus den Multiplexern 322 und 324 ist ein nicht komprimierte Videodatenstrom.
  • Die Verwendung nicht komprimierter Daten führt zwei Probleme ein: erstens liegen die nicht komprimierten Daten nicht im erwarteten CCIR601-Format vor (statt dessen befinden sie sich im verlustlosen Y0-Y1-Cb-Cr-Format) und zweitens enthalten die nicht komprimierten Daten keine EOF- oder EOI-Markierungscodes. Demzufolge ist im Verarbeitungs-Datenpfad zwischen dem Raster/Block-Umsetzer und der Größenänderungseinheit 76 die Dekomprimierungslogik 330 und 340 vorgesehen. Die Dekomprimierungslogik 330 und 340 arbeitet, um die Reihenfolge der Komponenten im Datenstrom abhängig davon umzuordnen, ob die nicht komprimierten Daten verarbeitet oder wiedergegeben werden. Außerdem fügt die Dekomprimierungslogik 330 und 340 Markierungscodes zum Datenstrom hinzu oder entfernt Markierungscodes aus dem Datenstrom, abhängig davon, ob die nicht komprimierten Daten verarbeitet oder wiedergegeben werden.
  • 15 ist ein Blockschaltplan einer Ausführungsform der Dekomprimierungslogik 330. Die Dekomprimierungslogik 330 enthält eine Eingangsschnittstelle 332 und eine Ausgangsschnittstelle 340 zur Größenänderungseinheit 76. Die Schnittstellen steuern die Aktivierung der ablaufgesteuerten Quittungsaustauschsignale END_N und CCS_N in Reaktion auf das Quittungsaustauschsignal CBUSY_N. Die Schnittstellen senden und empfangen außerdem Daten auf dem CODE<7:0>-Bus 341. Die Dekomprimierungslogik 330 enthält außerdem die Eingangsschnittstelle 344 und die Ausgangsschnittstelle 338 zum Raster/Block-Umsetzer 74. Die Eingangsschnittstelle steuert die Aktivierung der Signale EOS_N, STOP_N und DSYNC_N. Die Daten werden über den PDATA<7:0>-Bus 339 zwischen dem Raster/Block-Umsetzer 74 und der Dekomprimierungslogik 330 ausgetauscht.
  • In der Dekomprimierungslogik ist eine Erfassungs/Entfernungs-Einheit 334 für die Markierungscodes und eine Komponenten-Umordnungseinheit 336 enthalten. Die Erfassungs/Entfernungs-Einheit 334 für die Markierungscodes empfängt während der Wiedergabe einen Markierungscodes enthaltenden Bilddatenstrom von der Größenänderungseinheit 76. Gemäß einer Ausführungsform durchsucht die Erfassungs/Entfernungs-Einheit für die Markierungscodes einfach den Datenstrom nach einer Folge von 0xFF-Feldern bzw. -Teilbildern, weil die Füll-Feld- bzw. -Teilbild-Werte 0xFF nur vor Markierungscodes eingefügt sind. Wenn den 0xFF-Feldern bzw. -Teilbildern begegnet wird, werden sie aus dem Datenstrom entfernt. Wenn das letzte 0xFF-Feld bzw. -Teilbild aus dem Datenstrom entfernt worden ist, ist es sicher, dass das nächste folgende Feld bzw. Teilbild ein Markierungscode ist, wobei der Markierungscode aus dem Datenstrom entfernt wird.
  • Die Komponenten-Umordnungseinheit 336 ordnet den entfernten Datenstrom aus der CCIR601-Reihenfolge in die verlustlose JPEG-Y0-Y1-Cb-Cr-Reihenfolge um. Eine Ausführungsform der Hardware zum Implementieren der Komponenten-Umordnung ist den 15 veranschaulicht. 15 enthält eine Steuerzustandsmaschine 380, die gekoppelt ist, um das Laden der Register 382 und 384 zu steuern. Ein Komponenten-Datenstrom wird auf der Leitung 381 von der Größenänderungseinheit 76 empfangen. Der Datenstrom wird zum Register 382, zum Register 384 und direkt zum Multiplexer 386 weitergegeben. Die Steuerzustandsmaschine wählt einen der Eingänge des Multiplexer 386 aus, um ihn als die Ausgangsdaten weiterzuleiten. Die Operation der Steuerzustandsmaschine kann entsprechend der folgenden Tabelle I implementiert sein:
    Figure 00450001
  • Am Ende der Operation leert die Steuerzustandsmaschine alle in den Registern verbleibenden Komponenten.
  • In der Dekomprimierungslogik 330 ist außerdem eine Komponentenumordnungs- und Markierungscodeeinfüge-Einheit 342 enthalten. Die Markierungscodes werden wie folgt eingefügt. Die Raster/Block-Ausgangsschnittstelle 338 erfasst, wann der letzte Bildpunkt in einem Teilbild verarbeitet worden ist und aktiviert das EOS_N-Signal. Das Signal wird zur Schnittstelle 344 geleitet, die das Signal in einen EOI-Markierungscode umsetzt und den Markierungscode in den Datenstrom einfügt.
  • Der Komponentenumordnungsabschnitt der Einheit 342 setzt unter Verwendung von Hardware, die ähnlich zu der ist, die in 15 bereitgestellt ist, einen Datenstrom aus dem verlustlosen JPEG-Format in das CCIR610-Format um. Die Steuerzustandsmaschine 380 arbeitet entsprechend einem Steuerprotokoll, das im folgenden in der Tabelle II dargelegt ist: Tabelle II:
    Figure 00460001
  • Falls die Videoverarbeitungsvorrichtung 32 im Komprimiert-Modus arbeitet, wird die nicht komprimierte Logik 330 umgangen. 17 veranschaulicht eine Ausführungsform eines Verfahrens zum Abwechseln zwischen der Verarbeitung unter Verwendung komprimierter und nicht komprimierter Daten in den Verarbeitungspipelines nach 14. Im Schritt 400 ist, während ein Bild verarbeitet wird, das Nicht-komprimiert-Bit gesetzt, um den Modus der Verarbeitung von komprimiert auf nicht komprimiert (oder umgekehrt) zu ändern. Das Bit wird nicht geprüft, bis alle Freigaben von der Pipeline zur FAS 101 zurückgekehrt sind. Wenn im Schritt 402 bestimmt wird, dass alle Freigaben zurückgeschickt worden sind, dann wird im Schritt 404 die Auswahl für die Multiplexer 322, 324, 331 und 341 gesetzt, um den gewünschten Datenfluss freizugeben.
  • Wie oben in bezug auf die Videoverarbeitungsvorrichtung 32 nach 3 beschrieben worden ist, arbeitet die Videoverarbeitungsvorrichtung 360 in einer Anzahl operativer Modi. In einem Wiedergabemodus werden die von Host-Computer oder vom lokalen Speicher 142 empfangenen nicht komprimierten Daten durch die DMA-Kanäle 92 und 94 durch die Verarbeitungspipelines 70 und 80 zum Bildpunkt-Schalter 100 weitergegeben. Der Bildpunkt-Schalter 100 kann konfiguriert sein, um die wiedergegebenen Daten zu irgendeinem der Ausgangsanschlüsse weiterzugeben, wie in den 6A6V gezeigt ist. Insbesondere in einem Rendering-Modus können die nicht komprimierten Daten mit Spezialeffekten von den gekoppelten Spezialeffektvorrichtungen gemischt werden, wobei die Zwischenergebnisse zum PixOUTDMA-Kanal 109 für die Speicherung im Host-Computer 30 oder im lokalen Speicher 142 weitergegeben werden. Da die nicht komprimierten Daten für das Rendering notwendig sind, können sie unter Verwendung der ablaufgesteuerten DMA-Techniken aus dem Host-Computer 30 oder aus dem lokalen Speicher 142 wiedergewonnen werden. Die Steuerung des Flusses der nicht komprimierten Daten durch die Verarbeitungspipelines unter Verwendung der Ablaufsteuertechniken verringert die Anforderungen an die Speicherbandbreite, wobei dadurch die Anforderungen erleichtert werden, die an den Speicherbus für die Übertragung der großen Menge der nicht komprimierten Daten auferlegt werden, und erlaubt wird, das Echtzeit-Rendering der nicht komprimierten Daten auszuführen. Im Aufzeichnungsmodus können die nicht komprimierten Daten entweder vom PixDMAIn-Kanal oder vom DSK2-Eingangsanschluss zu irgendeiner der Verarbeitungspipelines weitergegeben werden. Die Daten gehen durch die FGCODEC- und BGCODEC-Kanäle 92 und 94 zum Host-Computer 30 oder zum lokalen Speicher 142.
  • In 18 ist eine weitere Ausführungsform einer Videoverarbeitungsvorrichtung 632 zum Verarbeiten nicht komprimierten Videos gezeigt. In dieser Ausführungsform werden die nicht komprimierten Datenströme direkt zur Einstellogik 674 und 684 für die Farbkorrektur usw. geleitet. Es wird keine Hinzufügung von Markierungscodes oder Umordnung der Komponenten ausgeführt. Statt dessen werden die nicht komprimierten Daten in dem gleichen Format, in dem sie empfangen werden, wiedergegebenen oder aufbereitet. Die Vorrichtungen 632 enthält Komponenten, die zu denjenigen ähnlich sind, die in den 3 und 14 für das Datenmanagement und die Ablaufsteuerung beschrieben sind.
  • Demzufolge ist eine Architektur für das Ausführen der Echtzeit-Bildverarbeü:ung an unabhängigen Datenströmen unter Verwendung komprimierter oder nicht komprimierter Bilddaten beschrieben worden. Nachdem nun einige Ausführungsformen der Erfindung beschrieben worden sind, sollte es für die Fachleute auf dem Gebiet offensichtlich sein, dass das Vorangehende lediglich veranschaulichend und nicht einschränkend ist, wobei es lediglich beispielhaft dargestellt worden ist. Es liegen zahlreiche Modifikationen und andere Ausführungsformen innerhalb der Fähigkeiten eines Durchschnittsfachmanns auf dem Gebiet, wobei beabsichtigt ist, dass sie in den Umfang der Erfindung fallen.

Claims (34)

  1. System zur Verarbeitung von Sequenzen von digitalen Standbildern, um digitale Videoeffekte bereitzustellen, das folgendes enthält: einen ersten bidirektionalen Verarbeitungs-Datenpfad, der mit wenigstens einem konfigurierbaren Schalter gekoppelt ist, um eine erste Sequenz von digitalen Standbildern zwischen dem ersten bidirektionalen Verarbeitungs-Datenpfad und wenigstens einem konfigurierbaren Schalter zu übertragen; einen zweiten bidirektionalen Verarbeitungs-Datenpfad, der mit wenigstens einem konfigurierbaren Schalter gekoppelt ist, um eine zweite Sequenz digitaler Standbilder zwischen dem zweiten bidirektionalen Verarbeitungs-Datenpfad und dem wenigstens einen konfigurierbaren Schalter zu übertragen; wobei der wenigstens eine konfigurierbare Schalter selektiv den ersten und zweiten bidirektionalen Verarbeitungs-Datenpfad mit einer Vielzahl von Zielen und einer Vielzahl von Quellen in einer Vielzahl von Modi einer Konfiguration koppelt, wobei jeder der Vielzahl von Modi einer Konfiguration des wenigstens einen konfigurierbaren Schalters eine Richtung des Ablaufs der Sequenzen von digitalen Standbildern zwischen wenigstens einem von dem ersten und zweiten bidirektionalen Verarbeitungs-Datenpfad und wenigstens einem der Vielzahl von Zielen und Vielzahl von Quellen steuert; wobei eine der Vielzahl von Zielen Ausgänge enthält, die mit Eingängen eines Mischers verbunden sind und wobei eine der Vielzahl von Quellen ein Eingang ist, der mit einem Ausgang des Mischers verbunden ist; und wobei eine der Vielzahl von Zielen wenigstens einen Ausgang enthält, der mit einem Eingang eines Keyers verbunden ist und bei welchem eine der Vielzahl von Quellen ein Eingang ist, der mit einem Ausgang des Keyers verbunden ist.
  2. System nach Anspruch 1, bei welchem eine der Vielzahl von Modi einer Konfiguration einen ersten der bidirektionalen Verarbeitungs-Datenpfade sowohl mit einem ersten der Vielzahl von Zielen als auch mit einem zweiten der Vielzahl von Zielen verbindet bzw. koppelt.
  3. System nach Anspruch 1, bei welchem eine der Vielzahl von Modi einer Konfiguration einen ersten von bidirektionalen Verarbeitungs-Datenpfaden mit einem ersten der Vielzahl von Zielen und einem zweiten der bidirektionalen Verarbeitungs-Datenpfade mit einem zweiten der Vielzahl von Zielen koppelt bzw. verbindet.
  4. System nach Anspruch 1, bei welchem ein Typ einer Verarbeitung, die durch einen jeden der ersten und zweiten bidirektionalen Verarbeitungs-Datenpfade durchgeführt wird, in Antwort auf eine Richtung eines Ablaufs von entsprechenden Sequenzen von digitalen Standbildern auf dem zugeordnetem Verarbeitungs-Datenpfad bestimmt wird.
  5. System nach Anspruch 4, bei welchem Sequenzen von digitalen Standbildern in eine Richtung in Richtung auf den Schalter in einem Prozessmodus fließen bzw. ablaufen.
  6. System nach Anspruch 4, bei welchem Sequenzen von digitalen Standbildern in eine Richtung weg von dem Schalter in einem Wiedergabemodus fließen bzw. ablaufen.
  7. System nach Anspruch 1, bei welchem ein jeder der ersten und zweiten bidirektionalen Verarbeitungs-Datenpfade weiter folgendes enthält: eine Schaltung, um die Sequenzen von Standbildern zu komprimieren und zu dekomprimieren; und eine Schaltung, um die Sequenzen von Standbildern einzustellen.
  8. System nach Anspruch 7, bei welchem die Schaltung zum Einstellen der Sequenzen von digitalen Standbildern eine Schaltung enthält, um eine Chroma-, Luma- bzw. Helligkeits- und Gamma-Korrektur der Sequenzen von Standbildern durchzuführen.
  9. System nach Anspruch 8, bei welchem die Schaltung zum Durchführen einer Chroma-, Luma- bzw. Helligkeits- und Gamma-Korrektur eine Vielzahl von Registern umfasst, auf die durch Software zugegriffen werden kann, um gewünschte Chroma-, Luma- bzw. Helligkeits- und Gamma-Einstellungen für die Sequenz von digitalen Standbildern durchzuführen.
  10. System nach Anspruch 7, bei welchem die Schaltung zum Einstellen der Sequenzen von digitalen Standbildern eine Schaltung enthält, um Bewegungseffekte in Sequenzen von digitalen Standbildern zu simulieren.
  11. System nach Anspruch 10, bei welchem die Schaltung zum Bereitstellen von Bewegungseffekten folgendes enthält: einen Speicher, um die Sequenzen von digitalen Standbildern zu speichern; und Steuerbits, um das Schreiben der Sequenzen von digitalen Standbildern in den Speicher zu steuern, wobei die Speicherstellen zum Schreiben der Sequenzen von digitalen Standbildern ausgewählt werden, um Bewegungseffekte zu simulieren, wenn die Sequenzen von digitalen Standbildern aus dem Speicher heraus zu einer Anzeige weitergegeben werden.
  12. System nach Anspruch 11, bei welchem die Steuerbits ein Haltebit zum Schreiben einer Komponente in der Sequenz von digitalen Standbildern zu mehreren Stellen in dem Speicher enthalten.
  13. System nach Anspruch 11, bei welchem der Speicher in einen geraden Abschnitt und einen ungeraden Abschnitt unterteilt ist und bei welchem die Sequenzen von digitalen Standbildern in eine sequenzielle Vielzahl von Feldern unterteilt ist und bei welchem die Schreibvorgänge eines jeden der sequentiellen Vielzahl von Feldern zwischen den geraden und ungeraden Abschnitten eines Speichers verschachtelt sind.
  14. System nach Anspruch 13, bei welchem die Steuerbits weiter ein Unterdrückungsbit enthalten, um das Verschachteln von Schreibvorgängen der sequentiellen Vielzahl von Feldern zwischen den geraden und ungeraden Abschnitten des Speichers auszuschließen.
  15. System nach Anspruch 13, bei welchem die Steuerbits weiter ein Umlager-Bit enthalten, um eine Reihenfolge bzw. Ordnung eines Paars der sequentiellen Vielzahl von Feldern umzulagern bzw. zeitweise umzuspeichern.
  16. System nach Anspruch 7, bei welchem die Sequenzen von digitalen Standbildern bei der Quelle ein erstes Format haben und die Sequenzen von digitalen Standbildern, die durch die Schaltung zur Einstellung bzw. Justierung verarbeitet werden, ein zweites Format haben, und wobei ein jeder des ersten und zweiten bidirektionalen Verarbeitungs-Datenpfade weiter eine Schaltung enthält, um die Sequenzen von digitalen Standbildern von dem ersten Format in das zweite Format zu übersetzen, und zwar einschließlich einer Schaltung, um die Sequenzen von digitalen Standbildern von dem zweiten Format in das erste Format zu übersetzen.
  17. System nach Anspruch 16, bei welchem die Schaltung zum Übersetzen weiter eine statische RAM-Vorrichtung enthält und bei welchem eine Übersetzung durchgeführt wird, indem die Sequenzen von Standbildern in der statischen RAM-Vorrichtung in einem von dem ersten oder zweiten Format geschrieben werden und die Sequenzen von digitalen Standbildern von der RAM-Vorrichtung in dem anderen von dem ersten oder zweiten Format gelesen werden.
  18. System nach Anspruch 1, bei welchem ein jeder des ersten und zweiten bidirektionalen Verarbeitungs-Datenpfade weiter eine Schaltung enthält, um die Sequenzen von digitalen Standbildern neu zu dimensionieren bzw. diesen eine neue Größe zu geben.
  19. System nach Anspruch 1, bei welchem der wenigstens eine konfigurierbare Sehalter auf einer Videoverarbeitungsvorrichtung angeordnet ist, die mit einem Hostcomputer durch einen Bus verbunden ist, und bei welchem eine jede der jeweiligen Kanalvorrichtungen vorgesehen ist, um Sequenzen von digitalen Standbildern zwischen dem wenigstens einen konfigurierbaren Schalter auf der Videoverarbeitungsvorrichtung und dem Hostcomputer zu übertragen.
  20. System nach Anspruch 19, bei welchem ein jede der jeweiligen Kanalvorrichtungen weiter folgendes enthält: eine Schaltung für eine Schnittstelle mit dem Bus; und eine Speichervorrichtung, um temporär Sequenzen von digitalen Standbildern zu speichern, die zwischen dem Hostcomputer und dem konfigurierbaren Schalter übertragen werden.
  21. System nach Anspruch 20, bei welchem die Schaltung für eine Schnittstelle mit dem Bus arbeitet, indem Direkt-Speicherzugriffstechniken verwendet werden.
  22. System nach Anspruch 19, das weiter folgendes enthält: eine Speichervorrichtung, die mit dem Bus verbunden ist, um eine temporäre Speicherung von Sequenzen von digitalen Standbilddaten bereitzustellen, die zwischen dem Hostcomputer und wenigstens einem der jeweiligen Kanalvorrichtungen übertragen werden.
  23. System nach Anspruch 19, bei welchem wenigstens einer der jeweiligen Kanäle reserviert wird, um nicht komprimierte Sequenzen von digitalen Standbildern zu speichern.
  24. System nach Anspruch 1, bei welchem wenigstens eine der Vielzahl von (Quellen eine digitale Eingabe-Videoquelle ist.
  25. System nach Anspruch 24, bei welchem der wenigstens eine konfigurierbare Schalter auf einer Videoverarbeitungsvorrichtung angeordnet ist, die mit einem Hostcomputer gekoppelt ist; und bei welchem die digitale Eingabe-Videoquelle von einer Übersetzungsvorrichtung empfangen wird, die mit einer Signalquelle verbunden ist.
  26. System nach Anspruch 25, bei welchem die Übersetzungsvorrichtung in einem Gehäuse bzw. einer Anlage vorgesehen ist, die von dem Hostcomputer getrennt ist.
  27. System nach Anspruch 1, bei welchem der wenigstens eine konfigurierbare Schalter auf einer ersten Videoverarbeitungsvorrichtung angeordnet ist und bei welchem einer der Eingänge bzw. Eingangssignale zu dem Schalter von einer gekoppelten bzw. verbunden Videoverarbeitungsvorrichtung empfangen wird.
  28. System nach Anspruch 1, bei welchem ein erster des wenigstens einen konfigurierbaren Schalters auf einer ersten Videoverarbeitungsvorrichtung vorgesehen ist und ein zweiter des wenigstens einen konfigurierbaren Schalters auf einer zweiten Videoverarbeitungsvorrichtung angeordnet ist und bei welchem eines der Vielzahl von Zielen des ersten Schalters einer der Vielzahl von Quellen des zweiten Schalters ist.
  29. System nach Anspruch 1, bei welchem wenigstens eine der Vielzahl von Quellen unkomprimierte Sequenzen von digitalen Standbildern zu dem wenigstens einen konfigurierbaren Schalter weitergibt.
  30. System nach Anspruch 1, bei welchem ein jeder des ersten und zweiten bidirektionalen Verarbeitungs-Datenpfades unabhängig konfigurierbar ist, um entweder komprimierte oder unkomprimierte Sequenzen von digitalen Bildern zwischen gekoppelten bzw. verbundenen Quellen und dem wenigstens einen konfigurierbaren Schalter zu übertragen.
  31. System nach Anspruch 1, bei welchem der wenigstens eine konfigurierbare Schalter auf einer Videoverarbeitungsvorrichtung angeordnet ist, die mit einem Hostcomputer durch einen Bus verbunden ist, und bei welchem ein Untersatz der Vielzahl von Quellen jeweils mit dem konfigurierbaren Schalter durch eine jeweilige Kanalvorrichtung verbunden bzw. gekoppelt sind.
  32. System nach Anspruch 31, bei welchem ein jeder der ersten und zweiten bidirektionalen Verarbeitungs-Datenpfade unabhängig konfigurierbar ist, um entweder komprimierte oder unkomprimierte Sequenzen von digitalen Bildern zwischen gekoppelten Quellen und dem wenigstens einen konfigurierbaren Schalter zu übertragen, und bei welchem wenigstens eine der jeweiligen Kanalvorrichtung zur Übertragung unkomprimierter Sequenzen von digitalen Standbildern von dem Hostcomputer zu dem konfigurierbaren Schalter reserviert ist.
  33. System nach Anspruch 32, das weiter einen Speicher umfasst, der mit dem Bus gekoppelt, bzw. verbunden ist und der der Speicherung unkomprimierter Sequenzen von digitalen Standbildern dient.
  34. System nach Anspruch 1, bei welchem eine Kommunikation zwischen der Vielzahl von Quellen und der Vielzahl von Zielen datenfluss-gesteuert ist.
DE69908334T 1998-04-03 1999-03-30 Eine mehrfachdatenstrom-schalterbasierte-videoeditierarchitektur Expired - Fee Related DE69908334T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/054,764 US6198477B1 (en) 1998-04-03 1998-04-03 Multistream switch-based video editing architecture
US54764 1998-04-03
PCT/US1999/006864 WO1999052276A1 (en) 1998-04-03 1999-03-30 A multi stream switch-based video editing architecture

Publications (2)

Publication Number Publication Date
DE69908334D1 DE69908334D1 (de) 2003-07-03
DE69908334T2 true DE69908334T2 (de) 2004-05-06

Family

ID=21993379

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69908334T Expired - Fee Related DE69908334T2 (de) 1998-04-03 1999-03-30 Eine mehrfachdatenstrom-schalterbasierte-videoeditierarchitektur

Country Status (6)

Country Link
US (1) US6198477B1 (de)
EP (1) EP1068723B1 (de)
AU (1) AU3215499A (de)
CA (1) CA2326898C (de)
DE (1) DE69908334T2 (de)
WO (1) WO1999052276A1 (de)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6961801B1 (en) 1998-04-03 2005-11-01 Avid Technology, Inc. Method and apparatus for accessing video data in memory across flow-controlled interconnects
US20030133448A1 (en) * 1998-04-03 2003-07-17 Craig R. Frink Packet protocol for encoding and decoding video data and data flow signals and devices for implementing the packet protocol
US20020036694A1 (en) * 1998-05-07 2002-03-28 Merril Jonathan R. Method and system for the storage and retrieval of web-based educational materials
US6789228B1 (en) * 1998-05-07 2004-09-07 Medical Consumer Media Method and system for the storage and retrieval of web-based education materials
US7689898B2 (en) * 1998-05-07 2010-03-30 Astute Technology, Llc Enhanced capture, management and distribution of live presentations
US6853385B1 (en) * 1999-11-09 2005-02-08 Broadcom Corporation Video, audio and graphics decode, composite and display system
US8560951B1 (en) 1998-12-18 2013-10-15 Thomson Licensing System and method for real time video production and distribution
US11109114B2 (en) 2001-04-18 2021-08-31 Grass Valley Canada Advertisement management method, system, and computer program product
US7024677B1 (en) 1998-12-18 2006-04-04 Thomson Licensing System and method for real time video production and multicasting
US6952221B1 (en) 1998-12-18 2005-10-04 Thomson Licensing S.A. System and method for real time video production and distribution
US6452612B1 (en) * 1998-12-18 2002-09-17 Parkervision, Inc. Real time video production system and method
US20030001880A1 (en) * 2001-04-18 2003-01-02 Parkervision, Inc. Method, system, and computer program product for producing and distributing enhanced media
US9123380B2 (en) 1998-12-18 2015-09-01 Gvbb Holdings S.A.R.L. Systems, methods, and computer program products for automated real-time execution of live inserts of repurposed stored content distribution, and multiple aspect ratio automated simulcast production
US7835920B2 (en) * 1998-12-18 2010-11-16 Thomson Licensing Director interface for production automation control
US20040027368A1 (en) * 2002-05-09 2004-02-12 Parkervision, Inc. Time sheet for real time video production system and method
US6909874B2 (en) * 2000-04-12 2005-06-21 Thomson Licensing Sa. Interactive tutorial method, system, and computer program product for real time media production
US6760916B2 (en) * 2000-01-14 2004-07-06 Parkervision, Inc. Method, system and computer program product for producing and distributing enhanced media downstreams
US6900847B1 (en) * 1999-07-30 2005-05-31 Chyron Corporation Video hardware and software system
US6416410B1 (en) * 1999-12-03 2002-07-09 Nintendo Co., Ltd. Data compression/decompression based on pattern and symbol run length encoding for use in a portable handheld video game system
US6466217B1 (en) * 1999-12-22 2002-10-15 Intel Corporation Method and apparatus for ensuring backward compatibility in a bucket rendering system
JP3350655B2 (ja) * 2000-01-25 2002-11-25 株式会社ナムコ ゲームシステム及び情報記憶媒体
JP2001306579A (ja) * 2000-04-25 2001-11-02 Mitsubishi Electric Corp 情報検索装置、情報検索方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
US20020057385A1 (en) * 2000-07-14 2002-05-16 Mingui Sun Data processing for fast transmission of webpages
US7114161B2 (en) * 2000-12-06 2006-09-26 Microsoft Corporation System and related methods for reducing memory requirements of a media processing system
US20020108115A1 (en) * 2000-12-11 2002-08-08 The Associated Press News and other information delivery system and method
AR027901A1 (es) * 2000-12-13 2003-04-16 Krolovetzky Miguel Horacio Metodo para la transmision y sincronizacion de datos multimedia sobre redes de computadoras
DE10104440A1 (de) * 2001-02-01 2002-08-08 Grundig Ag Vorrichtung mit mehreren Transportstrompfaden zum Empfang von digitalen Rundfunksignalen
US6744428B1 (en) * 2001-06-11 2004-06-01 Lsi Logic Corporation Block move engine with macroblock addressing modes
US20030007567A1 (en) * 2001-06-26 2003-01-09 Newman David A. Method and apparatus for real-time editing of plural content streams
US6980217B1 (en) * 2001-09-21 2005-12-27 Lsi Logic Corporation Integration of video processing into a block move engine
US7266254B2 (en) * 2002-02-13 2007-09-04 Canon Kabushiki Kaisha Data processing apparatus, image processing apparatus, and method therefor
FR2842320A1 (fr) * 2002-07-12 2004-01-16 Thomson Licensing Sa Dispositif de traitement de donnees multimedia
US7376183B2 (en) * 2002-09-09 2008-05-20 Warner Bros. Entertainment, Inc. Post-production processing
US7197071B1 (en) * 2002-09-09 2007-03-27 Warner Bros. Entertainment Inc. Film resource manager
US9171577B1 (en) 2003-04-25 2015-10-27 Gopro, Inc. Encoding and decoding selectively retrievable representations of video content
US20050160470A1 (en) * 2003-11-25 2005-07-21 Strauss Daryll J. Real-time playback system for uncompressed high-bandwidth video
US7558289B1 (en) * 2004-06-17 2009-07-07 Marvell International Ltd. Method and apparatus for providing quality of service (QOS) in a wireless local area network
US7511767B2 (en) * 2005-03-29 2009-03-31 Snell & Wilcox Limited Video storage device, and method of controlling a video storage device and video mixer
US7420622B2 (en) * 2005-09-06 2008-09-02 Sony Corporation Image switching apparatus and method of controlling image processing unit thereof
US8014597B1 (en) 2006-03-22 2011-09-06 Woodman Labs Method for efficient compression and decoding of single sensor color image data
DE102007033239A1 (de) 2007-07-13 2009-01-15 Visumotion Gmbh Verfahren zur Bearbeitung eines räumlichen Bildes
US7984204B2 (en) * 2008-05-13 2011-07-19 International Business Machines Corporation Programmable direct memory access controller having pipelined and sequentially connected stages
JP2012501611A (ja) * 2008-09-01 2012-01-19 ミツビシ エレクトリック ビジュアル ソリューションズ アメリカ, インコーポレイテッド 画像改善システム
USD673967S1 (en) 2011-10-26 2013-01-08 Mcafee, Inc. Computer having graphical user interface
USD674403S1 (en) * 2011-10-26 2013-01-15 Mcafee, Inc. Computer having graphical user interface
USD674404S1 (en) 2011-10-26 2013-01-15 Mcafee, Inc. Computer having graphical user interface
USD677687S1 (en) 2011-10-27 2013-03-12 Mcafee, Inc. Computer display screen with graphical user interface
US9070199B2 (en) * 2012-10-02 2015-06-30 Apple Inc. Sharing a graphics-processing-unit display port
US9761028B2 (en) * 2013-02-13 2017-09-12 Konica Minolta Laboratory U.S.A., Inc. Generation of graphical effects
US9081705B2 (en) 2013-06-11 2015-07-14 Apple Inc. Methods and apparatus for reliable detection and enumeration of devices
US9729938B2 (en) 2015-01-24 2017-08-08 Valens Semiconductor Ltd. Low latency visually lossless switching between different compression ratios
CN104935857A (zh) * 2015-06-10 2015-09-23 联想(北京)有限公司 一种视频处理方法和电子设备

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1578433A (en) 1976-07-19 1980-11-05 Rca Corp Special video effect generator
US4694343A (en) 1986-03-28 1987-09-15 Ampex Corporation Digital effects device integrally combined within a video switcher
US4858011A (en) 1988-04-04 1989-08-15 Jackson Richard A Video switcher system with modular architecture
JP2773372B2 (ja) 1990-03-26 1998-07-09 ソニー株式会社 編集装置
US5276445A (en) 1990-11-30 1994-01-04 Sony Corporation Polling control system for switching units in a plural stage switching matrix
US5706290A (en) * 1994-12-15 1998-01-06 Shaw; Venson Method and apparatus including system architecture for multimedia communication
DE4201335A1 (de) 1992-01-20 1993-07-22 Philips Patentverwaltung Verfahren und anordnung zum mischen eines zwischenzeilen-videosignals mit einem progressiv-videosignal
US5644364A (en) 1993-04-16 1997-07-01 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
GB9307894D0 (en) 1993-04-16 1993-06-02 Avid Technology Inc Multichannel digital image compression and processing
US5508940A (en) 1994-02-14 1996-04-16 Sony Corporation Of Japan And Sony Electronics, Inc. Random access audio/video processor with multiple outputs
US6009228A (en) 1994-03-16 1999-12-28 Sony Corporation Parallel multiple terminal image editing system and improved image editing system for high speed editing and method thereof
JP3501301B2 (ja) 1994-03-18 2004-03-02 ソニー株式会社 入出力信号切換装置
US5821945A (en) * 1995-02-03 1998-10-13 The Trustees Of Princeton University Method and apparatus for video browsing based on content and structure
US5963261A (en) 1996-04-29 1999-10-05 Philips Electronics North America Corporation Low cost scan converter for television receiver
JPH1066008A (ja) * 1996-08-23 1998-03-06 Kokusai Denshin Denwa Co Ltd <Kdd> 動画像検索編集装置
US5996008A (en) * 1996-09-30 1999-11-30 Intel Corporation Method and apparatus for providing still images in a full motion video communication session using the same full motion video communication protocol
US6105083A (en) 1997-06-20 2000-08-15 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements

Also Published As

Publication number Publication date
US6198477B1 (en) 2001-03-06
EP1068723A1 (de) 2001-01-17
AU3215499A (en) 1999-10-25
EP1068723B1 (de) 2003-05-28
CA2326898C (en) 2005-02-22
DE69908334D1 (de) 2003-07-03
WO1999052276A1 (en) 1999-10-14
CA2326898A1 (en) 1999-10-14

Similar Documents

Publication Publication Date Title
DE69908334T2 (de) Eine mehrfachdatenstrom-schalterbasierte-videoeditierarchitektur
DE69635970T2 (de) Schaltung und Verfahren zur Umwandlung eines Fernsehsignals
DE60211978T2 (de) Laufbildsystem mit bildinterpolation und variabler bildfrequenz
DE69532640T2 (de) Adaptives mehrpunktvideogestaltungs- und überbrückungssystem
DE69819613T2 (de) Videorastererfassung und Vorschau
DE69922705T2 (de) System zur numerischen erfassung und aufnahme von panoramabildern.
DE4231158C5 (de) Verfahren und Einrichtung für die Zusammensetzung und Anzeige von Bildern
DE69022752T2 (de) Interaktive Audio-Video-Anzeige.
DE69733527T2 (de) Bildanzeigeeinheit, Bildanzeigesystem und Wiederauffindungssystem für bewegte Bilder
DE69831924T2 (de) Verfahren und Vorrichtung zur Anzeige von Panoramen mit Videodaten
DE3010990A1 (de) Digitales stehbildspeichersystem
DE69733007T2 (de) Vorrichtung zur codierung und decodierung von bewegtbildern
DE60115034T2 (de) Verfeinerung von dreidimensionalen polygonalen gitterdaten
EP1371229B1 (de) Verfahren zur komprimierung und dekomprimierung von videodaten
DE19739266A1 (de) Verfahren und Vorrichtung zum Kodieren binärer Formen
DE60301303T2 (de) Videoverarbeitung
DE19825303A1 (de) System für virtuelle Szenen mit mehreren Kameras unter Verwendung von Standbildspeicherrahmenpuffern für jede Kamera
DE4408522C2 (de) Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten
EP2172032B1 (de) Verfahren zur bearbeitung eines räumlichen bildes
US5010407A (en) Video effects system with recirculation video combine and output combine
DE4143074A1 (de) Verfahren und einrichtung zum umformatieren verschachtelter videodaten zur darstellung auf einem computer-ausgabedisplay
DE3486243T2 (de) Elektronischer Einzelbildspeicher mit Schnellsortierung und Verfahren zu seinem Betrieb.
DE19946683A1 (de) Decodiersystem für komprimierte Datenströme zum gleichzeitigen Reproduzieren stabiler Bilder, Verfahren zum Decodieren komprimierter Datenströme und Informationsspeichermedium zum Speichern von das Verfahren darstellenden Programmbefehlen
DE69434047T2 (de) Medien Pipeline mit Mehrwegevideoverarbeitung und Wiedergabe
DE69932407T2 (de) Aufnahmevorrichtung zur aufnahme eines digitalen informationssignals auf einem aufnahmeträger

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee