DE19709391A1 - MPEG-Codier- und Decodiersystem für Multimediaanwendungen - Google Patents

MPEG-Codier- und Decodiersystem für Multimediaanwendungen

Info

Publication number
DE19709391A1
DE19709391A1 DE19709391A DE19709391A DE19709391A1 DE 19709391 A1 DE19709391 A1 DE 19709391A1 DE 19709391 A DE19709391 A DE 19709391A DE 19709391 A DE19709391 A DE 19709391A DE 19709391 A1 DE19709391 A1 DE 19709391A1
Authority
DE
Germany
Prior art keywords
data
image
graphic
encoder
mpeg
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.)
Withdrawn
Application number
DE19709391A
Other languages
English (en)
Inventor
Mehrdad Hamadani
Rom-Shen Kao
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.)
Mitsubishi Semiconductor America Inc
Original Assignee
Mitsubishi Semiconductor America 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 Mitsubishi Semiconductor America Inc filed Critical Mitsubishi Semiconductor America Inc
Publication of DE19709391A1 publication Critical patent/DE19709391A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

Die vorliegende Erfindung betrifft eine Signalverarbeitung. Speziell betrifft sie ein Multimediakomprimier- und -expandiersystem, das in Einklang mit den Spezifikationen der internationalen Organisation für Standardisierung(ISO)/ internationalen elektrotechnischen Kommission (IEC)/Expertengruppe für bewegte Bilder (Motion Picture Expert Group, MPEG) steht.
Eine Datenkompression kann in Datenverarbeitungssystemen so bereitgestellt werden, daß die Zeit der Datenübertragung in Kommunikationsverbindungen reduziert wird oder daß Signale mit breiter Bandbreite über Kommunikations­ kanäle mit schmaler Bandbreite übertragen werden. Datenkompression kann auch derart benutzt werden, daß die Menge der Daten, die in einem gegebenen Raum gespeichert werden können, erhöht wird oder daß der Raum, der zum Speichern einer gegebenen Menge von Daten benötigt wird, verringert wird.
Die MPEG-Standards definieren einen Kompressions- und Expansionsalgo­ rythmus für Videodienstleistungen. Ein Beispiel einer solchen Dienstleistung ist Video auf Abruf, bei dem ein Abonnent derart mit einem entfernten Video­ speicher interagiert, daß die Darstellungen eines speziellen Films oder Videoprogramms auf dem TV-Gerät des Abonnenten verlangt wird. Aufgrund von Videokompression können Bilder des Films über einen Kommunikationskanal unter Benutzung von nur einem Teil eines herkömmlichen Fernsehkanals gesendet werden. Als Ergebnis können sehr viel mehr Videokanäle über ein gegebenes Kommunikationsmedium, wie z. B. ein Fernsehkabelmedium, übertragen werden. Weiterhin werden herkömmliche Telefonverbindungen in die Lage versetzt, Fernsehsignale mit breiter Bandbreite zu liefern.
Bei dem MPEG-Algorithmus ist jedes Einzelbild bzw. Halb- oder Vollbild eines Videos entweder unabhängig oder als Änderung von einem vorhergehenden und/oder zukünftigen angezeigten Einzelbild definiert. Eine Videoszene kann durch ein ein einzelnes unabhängiges Einzelbild (I-Einzelbild bzw. I-Frame), das die gesamte Szene so zeigt, wie sie ursprünglich erscheint, gefolgt von einer langen Reihe von Änderungseinzelbildern (P-Einzelbilder und/oder B-Einzelbilder), die die Änderungen in der Szene beschreiben, beschrieben werden. Die MPEG-Videokompressionstechnik beseitigt so die redundante Übertragung von sich nicht ändernden Elementen der Szene.
Wie in Fig. 1 der Figur gezeigt ist, enthält ein der Anmelderin bekanntes MPEG-Video Kompressions-/-Dekompressionssystem 10 eine Bildquelle 12, z. B. eine Videokamera oder einen Videodienstleistungsspeicher zum Speichern eines Videos. Ein MPEG-Codierer komprimiert Bilddaten von der Bildquelle 12 entsprechend dem MPEG-Kompressionsalgorithmus. Die komprimierten Bilddaten werden beispielsweise zu einem Videodienstleistungsmedium 16, einem TV-Kabel oder einem Telefonsystem zum Übertragen zu einem entfernten Benutzer geliefert. Alternativ können die komprimierten Bilddaten in einen lokalen Videospeicher zum weiteren Auslesen durch einen lokalen oder entfernten Benutzer geladen werden. Ein MPEG-Decodierer 18 expandiert die komprimierten Bilddaten entsprechend den MPEG-Expansionsalgorithmus und liefert sie zu einem Video- oder TV-Monitor 20, der das empfangene Bild anzeigt.
Der MPEG-Algorithmus ist in den folgenden Spezifikationen definiert: ISO/IEC 11172, Nov. 1991 (MPEG 1) und ISO/IEC 13818, März 1995 (MPEG 2). Bei dem MPEG-1 behandelt er ein komplettes anzuzeigendes Bild, das als Einzelbild bzw. Frame definiert ist. Die Größe des Einzelbildes wird auf 22 horizontale Makroblöcke × 16 vertikale Makroblöcke eingestellt, wobei ein Makroblock aus sechs Blocks des Bildes aufgebaut ist, von denen vier Blocks Luminanz und zwei Blocks Chrominanz darstellen. Jeder Bildblock enthält 8 × 8 Bildelemente (Pixel).
Eine typische Verwirklichung des MPEG-Systems läßt nur die Kompression von Bilddaten zu. Keine Kompression von graphischen Daten oder Textdaten, die dem Bild zugeordnet sind, ist möglich. Weiterhin manipuliert der der Anmelderin bekannte MPEG-Codierer nur Einzelbilder mit festgelegter Größe, die ein komplettes Bild darstellen, sogar wenn nur ein Abschnitt des Bildes dargestellt werden soll. Um die kompletten Einzelbilddaten unterzubringen, wird ein Zwischenpufferspeicher zwischen dem MPEG-Decodierer und der Bildanzeige benötigt. Als Ergebnis des Zwischendatenspeichers wird die Datenlieferungsrate des MPEG-Systems wesentlich reduziert.
Es ist Aufgabe der Erfindung, ein MPEG-Codier- und -Decodiersystem und ein Verfahren zur Kompression und Expansion von Daten bereitzustellen, die Multimediadaten, die Graphik- und Textdaten sowie Bilddaten enthalten, be­ handeln können.
Auch wäre es wünschenswert, das MPEG-Codier- und Decodiersystem, das durch ein Anwendungsprogramm gesteuert wird, zu befähigen, Daten verschie­ dener Größe angepaßt so zu bearbeiten, daß die Notwendigkeit für einen Zwischendatenspeicher entfällt und somit die MPEG-Datenlieferungsrate an­ steigt.
Die Aufgabe wird durch das System des Anspruches 1, 17 oder 21 und durch das Verfahren zum Komprimieren und Dekomprimieren von Multimediadaten des Anspruches 25 gelöst.
Folglich besteht ein Vorteil im Bereitstellen eines MPEG-Codier- und -Deco­ diersystems, das zu komprimierende Multimediadaten, die Bild-, Graphik- und Textdaten enthalten, zuläßt.
Ein weiterer Vorteil besteht im Bereitstellen eines MPEG-Codier- und Deco­ diersystems, das in der Lage ist, Multimediadaten, die in Blöcken variabler Größe angeordnet sind, zu bearbeiten.
Ein weiterer Vorteil besteht im Bereitstellen eines MPEG-Codier- und -Decodiersystems, das zwischen einem Decodierer und einer Anzeige keine Zwischendatenspeicherung durchführt.
Ein weiterer Vorteil liegt im Erhöhen der Datenlieferungsrate eines MPEG- Codier- und Decodiersystems.
Die obigen und weitere Vorteile werden zumindest teilweise durch Bereitstel­ len eines Systems zum Codieren und Decodieren von Multimediadaten, die Bild-, Graphik und Textdaten enthalten, das einen Codierer zum Komprimieren der Multimediadaten enthält, erreicht. Ein zentraler Prozessor steuert den Codierer so, daß die Multimediadaten, die durch den Codierer komprimiert sind, in einem Block mit variabler Größe angeordnet werden. Der Block der komprimierten Daten kann in einem Strukturpuffer gespeichert werden. Ein Decodierer liest den Datenblock von dem Puffer und expandiert ihn.
Entsprechend einer bevorzugten Ausführungsform stellen der Codierer und der Decodierer eine Datenkompression und -expansion unter Benutzung des Algo­ rithmusses der Expertengruppe für Filmbilder (MPEG) bereit.
Entsprechend einem Aspekt enthält der Codierer einen Adreßgenerator zum Erzeugen von Adreßdaten derart, daß der Datenblock in dem Strukturpuffer gespeichert wird. Der Adreßgenerator reagiert auf eine Datengrößenanweisung von dem zentralen Prozessor, die die Größe des Datenblockes anzeigt. Der Adreßgenerator reagiert weiter auf eine Datentypanweisung von dem zentralen Prozessor, die den Typ der durch den Codierer komprimierten Multimediadaten anzeigt. Separate Bild-, Graphik- und Textadressenausgänge bzw. -ausgaben können zum Speichern von jeweils den Bild-, Graphik- und Textdaten in dem Strukturpuffer vorgesehen sein.
Entsprechend einem anderen Aspekt enthält der Decodierer einen Adreßgenerator zum Erzeugen von Adreßdaten, um den Datenblock von dem Strukturpuffer zu lesen. Der Decodieradreßgenerator reagiert auf die Datengrößen- und Datentypanweisungen von dem zentralen Prozessor bzw. Verarbeitungseinheit. Separate Bild-, Graphik- und Textadressenausgänge bzw. -ausgaben können derart angeordnet sein, daß Adressen zum Lesen von jeweils den Bild-, Graphik- und Textdaten von dem Strukturpuffer angezeigt werden.
Das Codier- und Decodiersystem kann Kompressions- und Expansionspipelines, die aus Einheiten zum Ausführen von Sequenzen von durch den MPEG-Algorithmus definierten Codier- und Decodierschritten gebildet sind, aufweisen. Eine endliche Anzahl von Maschinen werden durch den zentralen Prozessor derart gesteuert, daß verschiedene Codiereinheiten in verschiedene Decodiereinheiten in die Lage versetzt werden, gleichzeitig zu arbeiten.
Entsprechend einem Verfahren werden die folgenden Schritte durchgeführt: Eingeben von zu komprimierenden Bild-, Graphik- und Textdaten,
Komprimieren der Bild-, Graphik- und Textdaten entsprechend dem MPEG- Komressionsalgorithmus durch einen Codierer,
Steuern des Codierer derart, daß die komprimierten Bild-, Graphik- und Text­ daten, die in Blöcken mit variablen Größen angeordnet sind, in einen Puffer geschrieben werden,
Lesen der komprimierten Bild-, Graphik- und Textdaten von dem Puffer durch einen Decodierer,
Steuern des Decodierers derart, daß die Blöcke mit verschiedenen Größen von dem Puffer gelesen werden, und
Expandieren der gelesenen Bild-, Graphik- und Textdaten entsprechend dem MPEG-Expansionsalgorithmus.
Weitere Merkmale und Zweckmäßigkeiten der Erfindung ergeben sich aufgrund der Beschreibung von Ausführungsbeispielen anhand der Figuren. Von den Figuren zeigen:
Fig. 1 ein Blockdiagramm eines der Anmelderin bekannten MPEG-Codier- und -Decodiersystems;
Fig. 2 ein Blockdiagramm eines MPEG-Codier- und -Decodiersystems;
Fig. 3 ein Diagramm, das die Verwirklichung in einem Personalcomputer dar­ stellt;
Fig. 4 ein Blockdiagramm des in Fig. 3 gezeigten MPEG-Codierers;
Fig. 5 ein Blockdiagramm des in Fig. 3 gezeigten MPEG-Decodierers und
Fig. 6 ein schematisches Diagramm, das die Verwirklichung in einem System Video auf Abruf zeigt.
Obwohl die Erfindung allgemein in dem Feld der Datencodierung- und -deco­ dierung anwendbar ist, basiert die beste Art zum Ausführen der Erfindung teil­ weise auf der Realisierung eines Datenkompressions- und -dekompressions- Systems, das mit den MPEG-Standard übereinstimmt.
Es wird nun auf Fig. 2 der Figuren Bezug genommen, die ein MPEG-Codier- und -Decodiersystem 30 zeigt, das Multimediadaten, die jeweils durch Bild-, Graphik- und Textquellen 32, 34 und 36 geliefert sind, bearbeitet. Ein MPEG- Codierer 38 komprimiert die gelieferten Multimediadaten entsprechend dem gut bekannten MPEG-Kompressionsalgorithmus. Die komprimierten Multimediadaten können in einen Datenspeicher 40 geladen werden oder durch einen Kommunikationskanal zu einem entfernten Benutzer geliefert werden. Ein MPEG-Decodierer 42 expandiert die komprimierten Videodaten entsprechend dem gut bekannten MPEG-Expansionsalgorithmus und liefert diese an einen Multimediamonitor 44, der die dekomprimierten Bild-, Graphik- und Textdaten anzeigt. Das MPEG-Codier- und -Decodiersystem kann zum Bearbeiten von Multimediadaten in einem Personalcomputer, zum Liefern von Multimediadaten von einem zentralen Ort an entfernte Benutzer oder für andere Anwendungen, die einen wesentlichen Anteil von zu bearbeitenden Multimediadaten benötigen, benutzt werden.
Wie in Fig. 3 gezeigt ist, kann das MPEG-Codier- und Decodiersystem 50 in einem Personalcomputer drei Dateneingabequellen aufweisen: ein Bildquelle 52, eine graphische Quelle 54 und eine Textquelle 56. Die Bildquelle 52 kann beispielsweise eine Videokamera und einen Analog- Digital-Wandler, der ein durch die Videokamera erzeugtes Bild digitalisiert, enthalten. Die graphische Quelle 54 und die Textquelle 56 können durch Kommunikationsverbindungen, die graphische Daten und Textdaten übertragen, dargestellt werden. Alternativ können die graphischen Daten und Textdaten durch Graphik- und Textgeneratoren erzeugt werden.
Eine zentrale Verarbeitungseinheit (CPU) 58 des Personalcomputers liefert einem Eingangsmultiplexer 16 eine Anweisung, die einen einzugebenden Datentyp festlegt. Der Typ der Datenanweisung, die zum Eingeben von Bild-, Graphik- oder Textdaten erzeugt ist, wird durch ein durch den Personalcom­ puter betriebenes Anwendungsprogramm festgelegt. Eine der Eingabedaten­ quellen 52, 54 oder 56 kann zu einer Zeit ausgewählt werden. Die Bild-, Gra­ phik- und Textdaten werden als Pixelstrom geliefert. Ein Pixel der ausgewähl­ ten Daten zu einer Zeit wird an dem Ausgang des Multiplexers 60 bereitge­ stellt. Ein Bilderfassungseinheit bzw. Bildfangschaltung 62 erfaßt die ausgewählten Daten und lädt diese in den Bildpuffer 64, der eine Speicherkapazität aufweist, die ausreicht ein Bild (Halb- bzw. Vollbild) zu speichern. Bei dem NTSC-System enthält beispielsweise ein Bild von vorverarbeiteten MPEG-1 Bildern 352 × 240 Pixel. Jedes Bild wird von bis zu 3 Bytes dargestellt. Somit sollte bei dem NTSC-System der Bildpuffer 64 in der Lage sein, maximal 352 × 240 × 3 = 253.240 Bytes zu speichern.
Als Reaktion auf eine Codieranweisung, die von der CPU 58 über einen Systembus 66 geliefert wird, liest ein MPEG-Codierer 68 ein Datenbild von dem Bildpuffer 64 derart, daß die erfaßten Multimediadaten komprimiert werden. Ein PCI-Bus kann beispielsweise als der Systembus 66 benutzt werden. Der MPEG-Codierer 68, der später detaillierter beschrieben wird, komprimiert den ursprünglichen Pixelstrom mit einem Kompressionsverhältnis von ungefähr 20 bis 50. Entsprechend mit der MPEG-Spezifikation ist ein Bild durch ein I-Bild, das einem kompletten anzuzeigenden Bild entspricht, dargestellt. Die kompletten Bilddaten werden jedoch für einige Anwendungen nicht benötigt. Zum Beispiel wenn nur ein Abschnitt eines Bildes dargestellt werden soll. Folglich wird der Codierer 68 durch die CPU 58 derart gesteuert, daß ein Datenblock variabler Größe, der einen Teil des kompletten Bildes darstellt, ausgegeben wird. Die Größe des Datenblockes wird durch die CPU 58 eingestellt und kann von einem Makroblock bis zu einem kompletten Bild (22 × 16 Makroblöcke für MPEG-1) variieren. Die komprimierten Bild-, Graphik- und Textdaten werden in einen Strukturpuffer 70, der separate Abschnitte zum Speichern von unterschiedlichen Datentypen aufweisen kann, plaziert. Da das System die Komprimierung von Graphik- und Textdaten zusammen mit der Komprimierung von Bilddaten bereitstellt, kann die Speicherkapazität des Strukturpuffers 70 im Vergleich mit einem herkömmlichen Personalcomputer wesentlich reduziert werden. Wenn eine Anforderung für die gespeicherten Multimediadaten empfangen wird, z. B. zum Anzeigen der Daten auf einem Monitor 72, gibt die CPU 58 eine Decodieranweisung aus, die über den Systembus 66 an den MPEG-Decodierer 74 geliefert wird. In ihrer Anweisung zeigt die CPU 58 den angeforderten Datentyp und die Größe des zu dekodie­ renden Datenblockes an. Der MPEG-Decodierer 74 liest den ausgewählten Datentyp von dem Strukturpuffer 70 in Blöcken der ausgewählten Größe aus und stellt eine Datenexpansion entsprechend dem MPEG-Algorithmus bereit. Der Aufbau und der Betrieb des Decodierers 74 werden später detaillierter be­ schrieben.
Der decodierte Datenblock von dem MPEG-Decodierer 74 wird an einem Graphikprozessor 76, der die anzuzeigenden Multimediadaten bearbeitet, geliefert. Wenn der Graphikprozessor 76 eine direkte Schnittstelle mit dem MPEG-Decodierer 74 aufweist, können die decodierten Daten direkt an den Graphikprozessor 76 geliefert werden. Alternativ kann der MPEG-Decodierer 74 die decodierten Daten über dem Systembus 66 zu dem Graphikprozessor 76 liefern. Ein Multiplexer 78 ist an dem Eingang des Graphikprozessors 76 derart bereitgestellt, daß eine direkte Eingabe von dem MPEG-Decodierer 74 und eine Eingabe von dem Systembus 76 ermöglicht wird.
Weiterhin weist der Graphikprozessor 76 einen Eingabe-/Ausgabeanschluß 80 für nicht komprimierte Daten zum Empfangen von nicht komprimierten Graphik- und Textdaten von dem Systembus 66 und zum Liefern von nicht komprimierten Graphik- und Textdaten zu dem Systembus 66 auf. Beispiels­ weise kann der Graphikprozessor 76 nicht komprimierte Graphik- und Text­ daten von internen Quellen in dem Personalcomputer, wie z. B. Graphik- und Textgeneratoren, empfangen. Die empfangenen nicht-komprimierten Daten können in den Strukturpuffer bzw. Puffer 70 geladen werden und durch den Graphikprozessor 76 zum Bilden eines Bildes auf dem Monitor 72 benutzt werden.
Der Graphikprozessor 76 ist ein Graphikcontroller, der einen weiten Bereich von Graphikfunktionen derart bereitstellt, daß ein gewünschtes Bild auf dem Monitor 72 basierend auf den decodierten Multimediadaten, die von dem MPEG-Decodierer 74 geliefert sind, und den in dem Strukturpuffer 74 ge­ speicherten Daten gebildet wird. Zum Beispiel kann der Graphikprozessor 76 graphische Daten, Text- und Bilddaten derart mischen, daß ein kombiniertes Bild auf dem Bildschirm auf dem Monitor 72 erzeugt wird, oder er kann ein angezeigtes Bild mit überlagertem Text oder Graphik bilden. Ein durch die IBM-Corporation hergestellter 8514/8 Graphikprozessor ist ein Beispiel des Graphikprozessors 76. Das durch den Graphikprozessor 76 gebildete Bild wird auf dem Monitor 72 angezeigt.
Der MPEG-Decodierer 74 gibt decodierte Daten, die in Blöcken von ausge­ wählter variabler Größe angeordnet sind, aus. Wie oben beschrieben wurde, wird die Größe des Datenblocks durch die CPU 58 eingestellt und kann von einem Makroblock bis zu einem Bild variieren. Daher wird kein Zwischenpuffern zwischen dem MPEG-Decodierer 74 und dem Graphikprozessor 76, um die auf dem Monitor 72 anzuzeigenden Daten zu speichern, benötigt. Als Ergebnis kann die Datenlieferungsrate des MPEG- Systems erhöht werden. Im Gegensatz dazu wird in einem der Anmelderin bekannten MPEG-System ein 4M-Bit dynamischer Direktzugriffsspeicher (DRAM) zwischen einem Bilddecodierer und einem Graphikcontroller benötigt, weil der Bilddecodierer ein komplettes MPEG-1 I-Bild, das 22 × 16 Makroblöcke enthält, ausgibt.
Wie in Fig. 4 gezeigt ist, enthält der MPEG-Codierer 68 eine Schnittstelle 102, die dem Codierer 68 ermöglicht, mit anderen Einheiten des MPEG- Systems 50 zu kommunizieren. Speziell empfängt die Schnittstelle 102 den original Pixelstrom von dem Bildpuffer 64 und überträgt die komprimierten Daten zu dem Strukturpuffer 70. Die CPU 58 liefert der Schnittstelle 102 ein Timingsteuersignal derart, daß die Ereignisse, die während des Betriebes des Codierers 68 auftreten, zeitlich gesteuert werden. Auch sendet die CPU 58 zu der Schnittstelle 102 Datentyp- und Datengrößenanweisungen. Die Datentypanweisung zeigt an, was für ein Datentyp (Bild-, Graphik- oder Textdaten) durch den empfangenen Originalstrom dargestellt ist. Die Datengrößenanweisung zeigt die Größe des komprimierten Datenblockes, der zu dem Strukturpuffer ausgegeben werden soll, an. Wie oben beschrieben wurde, wird für einige Anwendungen nur ein Abschnitt eines Bildes zum Anzeigen oder Übertragen benötigt. Obwohl der Codierer 68 ein von dem Bildpuffer 64 empfangenes komplettes Bild komprimiert, gibt er nur den benötigten Abschnitt des Bildes aus. Die Größe des Datenblocks, der durch den Codierer 68 dem Strukturpuffer 70 geliefert wird, kann von einem Makroblock bis zu 22 × 16 Makroblöcken in Abhängigkeit der speziellen Anwendungen variieren.
Über die Schnittstelle 102 wird der original Pixelstrom zu einer MPEG-Kom­ pressionspipeline, die aus einer Aufbauschaltung 104, einer Schaltung 106 für diskrete Kosinustransformation (DCT), einem Quantisierer 108, einem Zick­ zackdecodierer 110 und einem Codierer 112 für variable Länge gebildet ist, geliefert. Die durch die Kompressionspipelineseinheiten ausgeführten Opera­ tionen sind durch die MPEG-Standards definiert. Speziell eliminiert die Auf­ bauschaltung 104 die zeitliche Redundanz des Orignalstromes durch Entfernen von identischen Pixeln in dem Strom. Die DCT-Schaltung 106 entfernt die räumliche Redundanz der Daten durch Transformieren der Daten in eine Matrix von DCT-Koeffizienten, die durch die MPEG-Spezifikation definiert sind. Die Werte der DCT-Matrix bzw. -Matrize stellen Zwischenbilder, die Referenzbildern entsprechen, dar. Der Quantisierer 108 teilt die DCT-Werte durch einen entsprechenden Wert von einer Standard-MPEG-Q-Matrix derart, daß quantisierte DCT-Werte erzeugt werden. Der Rest des Teilungsprozesses wird nicht berücksichtigt, um die Größe der Daten zu reduzieren. Der Zickzackcodierer 110 ordnet die quantisierte Gruppe von DCT-Werten in der Reihe eines Raumes, der eine Zickzackkurve, die einen langen Lauf darstellt, füllt, an. Der VLC 112 stellt ein statistisches Codieren von Daten eines langen Laufes entsprechend mit dem Huffman-Lauflängencodierungsalgorithmus bereit.
Ein endlicher Steuerungsapparat bzw. Einrichtung zur Steuerung von endlichen Einheiten (FSM) 114 steuert die Kompressionspipeline derart, daß es verschie­ denen Codiereinheiten ermöglicht wird, gleichzeitig zu arbeiten. Der FSM 114 empfängt Anweisungen von der CPU 58 über die Schnittstelle 102 derart, daß die durch verschiedene Einheiten der Kompressionspipeline ausgeführten Schritte gestartet werden.
Über die Schnittstelle 102 werden die komprimierten Daten von der Kompri­ mierungspipeline zu dem Strukturpuffer 70 geliefert. Ein Pufferadreßgenerator 116 stellt dem Strukturpuffer 70 Adreßinformationen, die zum Speichern der komprimierten Daten benötigt werdend basierend auf dem Datentyp- und der Datengrößeninformation von der Schnittstelle 102, zur Verfügung. Zum Bei­ spiel kann der Strukturpuffer 70 separate Abschnitte zum Speichern von Bild-, Graphik- und Textdaten aufweisen. An seinem ersten Ausgang kann der Pufferadreßgenerator 116 die Adreßdaten zum Speichern der komprimierten Bilddaten in dem Bildabschnitt des Strukturpuffers 70 anzeigen. Der zweite Ausgang des Adreßgenerators 116 kann Adreßdaten zum Speichern der komprimierten Graphikdaten in dem Graphikabschnitt des Strukturpuffers 70 anzeigen. Schließlich kann der dritte Ausgang des Adreßgenerators 116 Adreßdaten zum Speichern der komprimierten Textdaten in dem Textabschnitt des Strukturpuffers 70 bereitstellen. Ein Multiplexer 118 ist mit den Ausgän­ gen des Adreßgenerators 116 derart verbunden, daß dem Strukturpuffer 70 Adreßdaten entsprechend dem Typ der komprimierten Daten an dem Ausgang des Codierers 68 geliefert werden. Alternativ können die Bild-, Graphik- und Textdaten in verschiedenen Orten des gleichen Speichergebietes gespeichert werden. In diesem Fall stellt der Adreßgenerator 116 Adressen von Orten zum Speichern von Bild-, Graphik- und Textdaten bereit. Wie oben beschrieben wurde, gibt der MPEG-Codierer 68 einen Block variabler Größe von kompri­ mierten Daten entsprechend einem benötigten Abschnitt eines Bildes aus.
Es wird jetzt Bezug zu Fig. 5 genommen, die den MPEG-Decodierer 74, der die Bild-, Graphik- und Textdaten, die durch den MPEG-Codierer 68 kompri­ miert sind, expandiert. Als Reaktion auf eine Decodieranweisung von der CPU 58 werden die komprimierten Daten an eine Schnittstelle 142 geliefert, was den Decodierer 74 in die Lage versetzt, einen codierten Bitstrom von dem Strukturpuffer 70 zu empfangen und decodierte Daten zu dem Graphikprozessor 76 zu übertragen. Die CPU 58 liefert der Schnittstelle 102 ein Timingsteuersignal derart, daß die Decodierereignisse, die während des Betriebs des Decodierers 74 auftreten, zeitlich gesteuert werden. Auch sendet die CPU 58 an die Schnittstelle 142 die Datentyp- und Datengrößenanweisungen, die anzeigen was für ein Datentyp decodiert wird und die Größe des von dem Strukturpuffer zu lesenden Datenblocks. Die Größe des durch den Decodierer 74 von dem Strukturpuffer 70 gelesenen Datenblockes kann von einem Makroblock bis zu 22 × 16 Makroblöcken variieren.
Die Schnittstelle 142 liefert einem Pufferadreßgenerator 144 die Datentyp- und Datengrößeninformationen derart, daß Adressen, die zum Lesen von komprimierten Datenblöcken von dem Strukturpuffer 70 benötigt werden, be­ rechnet werden. Zum Beispiel kann der Adreßgenerator 144 an seinem ersten Ausgang Bilddatenadressen in dem Bildabschnitt des Strukturpuffers 70 anzei­ gen. Der zweite Ausgang des Adreßgenerators 144 kann Graphikdatenadressen in dem Graphikabschnitt des Strukturpuffers 70 anzeigen. An seinem dritten Ausgang kann der Adreßgenerator 144 Textdatenadressen in dem Textabschnitt des Strukturpuffers 70 anzeigen. Wenn die Bild-, Graphik- und Textdaten in dem gleichen Speichergebiet des Strukturpuffers 70 gespeichert sind, stellt der Adreßgenerator 144 Adressen von Orten, bei denen verschiedene Datentypen gespeichert sind, bereit. Ein Multiplexer 146 ist mit den Ausgängen des Adreßgenerators 146 derart verbunden, daß die Adressen entsprechend einem Datentyp, der decodiert wird, ausgewählt werden.
Die Schnittstelle 142 liest von dem Strukturpuffer einen Datenblock vorge­ schriebenen Typs und Größe und sendet ihn an eine Expansionspipeline, die aus einem Decodierer (VLD) für variable Länge 148, einem Zickzackdecodierer 150, einem inversen Quantisierer 152, einer Schaltung 154 für inverse diskrete Kosinustransformation (IDCT) und einer Rekonstruktionsschaltung 156 gebildet ist. Der Betrieb von jeder Decodiereinheit in der Decodierpipeline ist durch die MPEG- Expansionsspezifikation definiert. Der VLD 148 decodiert die einkommenden Daten entsprechend mit dem Huffman-Lauflängendecodierungsalgorithmus. Der Zickzackdecoder 150 erzeugt die quantisierten DCT-Koeffizienten, die in dem inversen Quantisierer 152 mit den Q-Matrixtabellenwerten in einem Verfahren, das invers zu dem Kompressionsprozeß ist, multipliziert sind. In der IDCT-Schaltung 154 wird die invers Transformierte der diskreten Kosi­ nustransformierten hergeleitet und die Ausgabedaten in dem räumlichen Be­ reich werden der Rekonstruktionsschaltung 156 derart geliefert, daß die Origi­ naldaten rekonstruiert werden. Als Reaktion auf die CPU-Anweisungen steuert ein endlicher Steuerungsautomat (FSM) bzw. Einrichtung 158 zur Steuerung von endlichen Einheiten die Decodierungspipeline derart, daß verschiedene Decodierungseinheiten in die Lage versetzt werden, gleichzeitig zu arbeiten.
Die Expansionspipeline liefert die expandieren bzw. dekomprimierten Daten dem Graphikbuscontroller 160, der diese zu dem Graphikprozessor 76 sendet. Wenn der Graphikprozessor 76 mit einer direkten Schnittstelle, die es ihm er­ möglicht mit dem MPG-Decodierer 68 zu kommunizieren, bereitgestellt ist, sendet der Graphikbuscontroller 160 die dekomprimierten Daten zu der Schnittstelle 142, die diese direkt dem Graphikprozessor 76 über den Multi­ plexer 78 liefert. Wenn keine direkte Decodierschnittstelle in dem Graphikprozessor 76 verfügbar ist, kann der Graphikbuscontroller 160 eine Schnittstelle mit dem Systembus 66 derart bereitstellen, daß die dekomprimierten Daten über dem Systembus 66 gesendet werden.
Da der MPEG-Decodierer 74 in der Lage ist, einen Datenblock mit einer variablen Größe, die durch die CPU 58 festgelegt ist, zu lesen, wird keine Zwischendatenspeicherung zwischen dem MPEG-Decodierer und dem Graphikprozessor benötigt.
Es wird jetzt Bezug genommen zu Fig. 6 der Figuren, die schematisch die An­ wendung des Multimediacodier- und -decodiersystems bei einer Dienstleistung Video auf Abruf darstellt. An einem zentralen Ort, z. B. in einer Kabel-TV-Station, sind Bild-, Graphik- und Textdaten von einer Multimediadatenquelle 202 durch einen MPEG-Codierer 204 entsprechend den MPEG-Standards komprimiert. Die komprimierten Daten können in einem codierten Multimediaspeicher 206 gespeichert sein. Das Datenkompressionsverfahren kann durch eine CPU 208 gesteuert sein.
Der zentrale Ort ist über TV-Kabel oder Telefonleitungen mit einer Mehrzahl von peripheren Orten 210 verbunden. Jeder der peripheren Orte 210 ist mit einem MPEG-Decodierer 212 und mit einem Personalcomputer (PC) 214, der fähig ist, Multimediainformationen zu präsentieren, ausgerüstet. Wenn ein Be­ nutzer von einem der peripheren Orte 208 eine Anforderung für in dem Mul­ timediaspeicher 206 gespeicherten Multimediadaten sendet, gibt die CPU 208 den dem Benutzer zugeordneten MPEG-Decodierer 212 derart frei, daß die angeforderten Daten von dem Speicher 206 gelesen werden. Basierend auf der Benutzeranforderung stellt die CPU 208 den MPEG-Decoder 212 Datentyp- und Datengrößeninformationen derart bereit, daß erlaubt, daß verschiedene Datentypen, die in Blöcken variabler Länge angeordnet sind, gelesen werden. Alternativ können die Datentyp- und Datengrößeninformationen durch den PC 214 geliefert werden. Der MPEG-Decodierer 212 dekomprimiert die kompri­ mierten Bild-, Graphik- und Textdaten und liefert diese dem PC 214 zum An­ zeigen. Da das Codier-/Decodiersystem ermöglicht, daß Datenblöcke mit variabler Größe von dem MPEG-Decodierer ausgegeben werden, wird kein zu­ sätzlicher Datenspeicher an dem peripheren Ort zum Zwischenspeichern von Multimediadaten vor dem Anzeigen benötigt. Weiterhin kann die Datenliefe­ rungsrate des Systems Videos auf Abruf wesentlich im Vergleich zu herkömm­ lichen Systemen erhöht werden.
Es wurde folglich ein Multimediadatencodier- und -decodiersystem beschrie­ ben, daß es ermöglicht, daß verschiedene Datentypen, die in Blöcken mit variabler Größe angeordnet sind, entsprechend den MPEG-Spezifikationen komprimiert und dekomprimiert werden. Halb- bzw. Vollbilder von Bild-, Graphik- und Textdaten werden dem Bildpuffer geliefert. Als Reaktion auf eine Codieranweisung von der CPU komprimiert der MPEG-Codierer die Daten von dem Bildpuffer und gibt an den Strukturpuffer einen Datenblock variabler Größe aus, der dem anzuzeigenden Bildabschnitt entspricht. Die Größe des Datenblockes wird durch die CPU eingestellt und kann von einem Makroblock bis zu 22 × 16 Makroblöcken (ein MPEG-1 Bild) variieren. Der MPEG-Decodierer liest den Datenblock variabler Größe von dem Strukturpuffer, dekomprimiert und liefert sie dem Graphikprozessor, der verschiedene Datentypen derart bearbeitet, daß ein anzuzeigendes Bild auf dem Videomonitor erzeugt wird.
Da das Multimediadatencodier- und decodiersystem in der Lage ist, die Größe der Datenblöcke zu steuern, wird keine Zwischendatenpufferung zwischen dem MPEG-Decodierer und dem Graphikprozessor benötigt. Als Ergebnis kann die Datenlieferungsrate des Systems erhöht werden.

Claims (27)

1. System zum Codieren und Decodieren von Multimediadaten, die Bild- und zumindest Graphik- oder Textdaten enthalten, mit
einem Codierer (38, 68) zum Komprimieren der Multimediadaten,
einem mit dem Codierer (68) verbundenen zentralen Prozessor (58) zum An­ ordnen der durch den Codierer (68) komprimierten Multimediadaten in einem Block variabler Größe und
einem Decodierer (42, 74) zum Dekomprimieren der komprimierten Multi­ mediadaten der variablen Blockgröße.
2. System nach Anspruch 1, wobei der Codierer (38, 68) und der Decodierer (42, 74) Kompression und Dekom­ pression entsprechend mit einem Algorithmus der Expertengruppe für bewegte Bilder (MPEG) bereitstellen.
3. System nach Anspruch 1 oder 2 weiter mit einem mit dem Codierer (68) verbundenen Strukturpuffer (70) zum Speichern des Blocks der durch den Codierer (68) komprimierten Multimediadaten.
4. System nach Anspruch 3, wobei der Codierer (68) einen Adreßgenerator (116), der auf eine Datengrößenan­ weisung von dem zentralen Prozessor (58), die die Größe des Blockes anzeigt, reagiert, zum Erzeugen von Adreßdaten zum Speichern des Blocks in dem Strukturpuffer (70) aufweist.
5. System nach Anspruch 4, wobei der Adreßgenerator (116) weiter auf eine Datentypanweisung von dem zentra­ len Prozessor (58), die einen Typ der durch den Codierer (68) komprimierten Multimediadaten anzeigt, reagiert.
6. System nach Anspruch 4 oder 5, wobei der Adreßgenerator (116) separate Bild-, Graphik- und Textadressenausgänge zum Anzeigen von Adressen zum Speichern von jeweils Bild-, Graphik- und Textdaten in dem Strukturpuffer (70) bereitstellt.
7. System nach einem der Ansprüche 3 bis 6, wobei der Strukturpuffer (70) weiter nicht-komprimierte Daten speichert.
8. System nach einem der Ansprüche 1 bis 7, weiter mit einem graphischen Prozessor (76) zum Bearbeiten der durch den Decodierer (74) dekomprimierten Multimediadaten und der in dem Strukturpuffer (70) ge­ speicherten nicht-komprimierten Daten derart, daß ein anzuzeigendes Bild ge­ bildet wird.
9. System nach Anspruch 8, wobei der Graphikprozessor (76) mit einem Eingangsmultiplexer (78) zum Empfangen der Multimediadaten direkt von dem Decodierer (74) und zum Empfangen der Multimediadaten durch einen Systembus (76) bereitgestellt ist.
10. System nach einem der Ansprüche 3 bis 9, wobei der Decodierer (74) einen Adreßgenerator (114), der auf eine Datengrößenan­ weisung von dem zentralen Prozessor (58), die die Größe des Blockes anzeigt, reagiert, zum Erzeugen von Adreßdaten zum Lesen des Blocks von dem Strukturpuffer (70) aufweist.
11. System nach Anspruch 10, wobei der Adreßgenerator (144) weiter auf eine Datentypanweisung von dem zentra­ len Prozessor (58), die einen Datentyp der durch den Decodierer (74) zu lesen­ den Multimediadaten anzeigt, reagiert.
12. System nach Anspruch 10 oder 11, wobei der Adreßgenerator (144) separate Bild-, Graphik- und Textadressenausgänge zum Anzeigen von Adressen zum Lesen von jeweils Bild-, Graphik- und Textdaten von dem Strukturpuffer (70) bereitstellt.
13. System nach einem der Ansprüche 1 bis 12, wobei der Codierer (38) eine Kompressionspipeline, die aus Codiereinheiten (104, 106, 108, 110, 112) zum Durchführen einer Sequenz von Codierschritten, die durch den MPEG-Kompressionsalgorithmus definiert sind, gebildet ist, auf­ weist.
14. System nach Anspruch 13, wobei der Codierer (38) weiter eine endliche Einrichtung (114), die auf den zentralen Prozessor (58) reagiert, zum Steuern der Kompressionspipeline derart, daß verschiedene Codiereinheiten (104, 106, 108, 110, 112) derart freigegeben werden, daß sie gleichzeitig arbeiten, aufweist.
15. System nach einem der Ansprüche 1 bis 14, wobei der Decodierer (74) eine Dekomprimierungspipeline, die aus Decodierungsein­ heiten (148, 150, 152, 154, 156) zum Ausführen einer Sequenz von Decodier­ schritten, die durch den MPEG-Dekompressionsalgorithmus definiert sind, gebildet ist, aufweist.
16. System nach Anspruch 15, wobei der Decodierer (74) weiter eine endliche Einrichtung (158), die auf den zentra­ len Prozessor (58) reagiert, zum Steuern der Dekomprimierungspipeline derart, daß verschiedene Decodierungseinheiten (148, 150, 152, 154, 156) derart frei­ gegeben werden, daß sie gleichzeitig arbeiten, aufweist.
17. MPEG-System (30, 50) zum Komprimieren von Multimediadaten mit
einem zentralen Prozessor (58) zum Steuern eines Kompressionsverfahrens,
einem Multimediadatenselektor (60), der mit Quellen (52, 54, 56) von Bild-, Graphik- und Textdaten verbunden ist und auf den zentralen Prozessor (58) zum Eingeben der zu komprimierenden Bild-, Graphik- und Textdaten reagiert,
einem Codierer (68), der auf den Selektor (60) zum Komprimieren der Bild-, Graphik- und Textdaten entsprechend dem MPEG-Kompressionsaigorithmus reagiert, und
einem Strukturpuffer (70), der auf den Codierer (68) zum Empfangen von Blöcken der Bild-, Graphik- und Textdaten, die durch den Codierer (68) komprimiert sind, reagiert,
wobei der zentrale Prozessor (58) den Codierer (68) derart steuert, daß die Größen der durch den Codierer (68) gelieferten Blöcke variieren.
18. System nach Anspruch 17, wobei der Codierer (68) einen Adreßgenerator (116), der auf eine Datengrößenan­ weisung von dem zentralen Prozessor (58), die die Größen der gelieferten Blöcke anzeigt, reagiert, zum Erzeugen von Adreßdaten zum Speichern der Blöcke der Bild-, Graphik- und Textdaten in dem Strukturpuffer (70) auf­ weist.
19. System nach Anspruch 18, wobei dem Adreßgenerator (116) weiter eine Datentypanweisung von dem zentralen Prozessor (58) derart geliefert wird, daß angezeigt wird, ob Bild-, Graphik- oder Textdaten komprimiert werden.
20. System nach Anspruch 18 oder 19, wobei der Adreßgenerator (116) separate Adreßausgänge zum Schreiben der Bild-, Graphik- und Textdaten in den Strukturpuffer (70) bereitstellt.
21. MPEG-System (30, 50) zum Dekomprimieren von Multimediadaten mit
einem zentralen Prozessor (58) zum Steuern eines Dekomprimierungsverfah­ rens,
einem Strukturpuffer (70) zum Speichern von Blöcken variabler Größe von komprimierten Bild-, Graphik- und Textdaten,
einem Decoder (74), der auf den zentralen Prozessor (58) zum Lesen und Dekomprimieren der Blöcke der Bild-, Graphik- und Textdaten, die in dem Strukturpuffer (70) gespeichert sind, entsprechend dem MPEG-Dekomprimie­ rungsalgorithmus reagiert und
einen Multimediamonitor (72) zum Anzeigen der durch den Decodierer (74) dekomprimierten Bild-, Graphik- und Textdaten,
wobei der zentrale Prozessor (58) den Decodierer (74) derart steuert, daß Größen der durch den Decodierer (74) gelesenen Blöcke variieren.
22. System nach Anspruch 21, wobei der Decodierer (74) einen Adreßgenerator (144), der auf eine Datengrößenanweisung von dem zentralen Prozessor (58), die die Größen der gelesenen Blöcke anzeigt, zum Erzeugen von Adreßdaten zum Lesen der Blöcke der Bild-, Graphik- und Textdaten von dem Strukturpuffer (70) reagiert, aufweist.
23. System nach Anspruch 22, wobei dem Adreßgenerator (144) weiter eine Datentypanweisung von dem zentralen Prozessor (58) derart geliefert wird, daß angezeigt wird, ob Bild-, Graphik- und Textdaten dekomprimiert werden.
24. System nach Anspruch 22 oder 23, wobei der Adreßgenerator (144) separate Adreßausgänge zum Lesen der Bild-, Graphik- und Textdaten von dem Strukturpuffer (70) bereitstellt.
25. Verfahren des Komprimierens und Dekomprimierens von Multimedia­ daten mit den Schritten:
Empfangen von zu komprimierenden Bild-, Graphik- und Textdaten,
Komprimieren der Bild-, Graphik- und Textdaten entsprechend dem MPEG- Komprimierungsalgorithmus,
Anordnen der komprimierten Bild-, Graphik- und Textdaten in Blöcken von variabler Größe,
Schreiben der Blöcke von variabler Größe in einen Puffer (70),
Lesen der Blöcke von variabler Größe von dem Puffer (70) und
Dekomprimieren der gelesenen Bild-, Graphik- und Textdaten entsprechend dem MPEG-Dekomprimierungsalgorithmus.
26. Verfahren nach Anspruch 25, wobei der Schritt des Schreibens Bilden von Adressen zum Schreiben der Bild-, Graphik- und Textdaten in den Puffer (70) basierend auf dem Typ der Daten und den Größen der Blöcke aufweist.
27. Verfahren nach Anspruch 25 oder 26, wobei der Schritt des Lesens Bilden von Adressen zum Lesen der Bild-, Graphik- und Textdaten von dem Puffer (70) basierend auf einem Typ der Daten und der Größen der Blöcke aufweist.
DE19709391A 1996-03-07 1997-03-07 MPEG-Codier- und Decodiersystem für Multimediaanwendungen Withdrawn DE19709391A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/612,512 US5845083A (en) 1996-03-07 1996-03-07 MPEG encoding and decoding system for multimedia applications
FR9702952A FR2760580B1 (fr) 1996-03-07 1997-03-07 Systeme de codage et decodage mpeg pour des applications multimedia

Publications (1)

Publication Number Publication Date
DE19709391A1 true DE19709391A1 (de) 1997-10-30

Family

ID=26233389

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19709391A Withdrawn DE19709391A1 (de) 1996-03-07 1997-03-07 MPEG-Codier- und Decodiersystem für Multimediaanwendungen

Country Status (4)

Country Link
US (1) US5845083A (de)
JP (1) JP2912593B2 (de)
DE (1) DE19709391A1 (de)
FR (1) FR2760580B1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19806913A1 (de) * 1998-02-19 1999-08-26 Cit Alcatel Verfahren zum Generieren einer Einsprungstelle in einen Bilddatenstrom und Vorrichtung zur Durchführung des Verfahrens
WO1999059343A1 (en) * 1998-05-12 1999-11-18 Hitachi, Ltd. Method and apparatus for video decoding at reduced cost
US6122321A (en) * 1998-05-12 2000-09-19 Hitachi America, Ltd. Methods and apparatus for reducing the complexity of inverse quantization operations
US6385248B1 (en) 1998-05-12 2002-05-07 Hitachi America Ltd. Methods and apparatus for processing luminance and chrominance image data

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909572A (en) 1996-12-02 1999-06-01 Compaq Computer Corp. System and method for conditionally moving an operand from a source register to a destination register
US6173366B1 (en) * 1996-12-02 2001-01-09 Compaq Computer Corp. Load and store instructions which perform unpacking and packing of data bits in separate vector and integer cache storage
US6009505A (en) * 1996-12-02 1999-12-28 Compaq Computer Corp. System and method for routing one operand to arithmetic logic units from fixed register slots and another operand from any register slot
US6061521A (en) * 1996-12-02 2000-05-09 Compaq Computer Corp. Computer having multimedia operations executable as two distinct sets of operations within a single instruction cycle
US6344272B1 (en) 1997-03-12 2002-02-05 Wm. Marsh Rice University Metal nanoshells
US6852252B2 (en) 1997-03-12 2005-02-08 William Marsh Rice University Use of metalnanoshells to impede the photo-oxidation of conjugated polymer
JP3104643B2 (ja) * 1997-05-07 2000-10-30 株式会社セガ・エンタープライゼス 画像処理装置及び画像処理方法
US6868121B2 (en) * 1997-12-31 2005-03-15 Sony Corporation Coded data output device and method
US6699724B1 (en) * 1998-03-11 2004-03-02 Wm. Marsh Rice University Metal nanoshells for biosensing applications
US6430603B2 (en) 1999-04-28 2002-08-06 World Theatre, Inc. System for direct placement of commercial advertising, public service announcements and other content on electronic billboard displays
US6424998B2 (en) 1999-04-28 2002-07-23 World Theatre, Inc. System permitting the display of video or still image content on selected displays of an electronic display network according to customer dictates
FR2795540B1 (fr) * 1999-06-23 2001-08-31 Innovatron Sa Procede d'acquisition d'une sequence audio, video ou textuelle aupres d'un site distant depuis un dispositif utilisateur local par teletransmission de donnees numeriques representatives de cette sequence
US8090619B1 (en) 1999-08-27 2012-01-03 Ochoa Optics Llc Method and system for music distribution
US7647618B1 (en) 1999-08-27 2010-01-12 Charles Eric Hunter Video distribution system
US6952685B1 (en) 1999-08-27 2005-10-04 Ochoa Optics Llc Music distribution system and associated antipiracy protection
US20060212908A1 (en) 1999-08-27 2006-09-21 Ochoa Optics Llc Video distribution system
US6647417B1 (en) 2000-02-10 2003-11-11 World Theatre, Inc. Music distribution systems
US7209900B2 (en) 1999-08-27 2007-04-24 Charles Eric Hunter Music distribution systems
KR20020044573A (ko) * 1999-11-10 2002-06-15 밀러 제리 에이 오디오/비디오 데이터 및 비-오디오/비디오 데이터를저장하기 위한 디바이스
US7151800B1 (en) * 2000-01-15 2006-12-19 Sony Corporation Implementation of a DV video decoder with a VLIW processor and a variable length decoding unit
US9252898B2 (en) 2000-01-28 2016-02-02 Zarbaña Digital Fund Llc Music distribution systems
US7120924B1 (en) 2000-02-29 2006-10-10 Goldpocket Interactive, Inc. Method and apparatus for receiving a hyperlinked television broadcast
US7367042B1 (en) 2000-02-29 2008-04-29 Goldpocket Interactive, Inc. Method and apparatus for hyperlinking in a television broadcast
US7343617B1 (en) 2000-02-29 2008-03-11 Goldpocket Interactive, Inc. Method and apparatus for interaction with hyperlinks in a television broadcast
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US7054256B2 (en) 2000-10-20 2006-05-30 Ochoa Optics Llc High capacity digital data storage by transmission of radiant energy through arrays of small diameter holes
US20020116517A1 (en) * 2001-01-17 2002-08-22 Hudson Michael D. Virtual program streaming multi-media system
US8112311B2 (en) 2001-02-12 2012-02-07 Ochoa Optics Llc Systems and methods for distribution of entertainment and advertising content
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7360149B2 (en) 2001-04-19 2008-04-15 International Business Machines Corporation Displaying text of video in browsers on a frame by frame basis
US6993283B1 (en) 2001-07-16 2006-01-31 Nasaco Electronics (Hong Kong) Ltd. Wireless audio transmission system
US7960005B2 (en) 2001-09-14 2011-06-14 Ochoa Optics Llc Broadcast distribution of content for storage on hardware protected optical storage media
US7233781B2 (en) 2001-10-10 2007-06-19 Ochoa Optics Llc System and method for emergency notification content delivery
DE10163152A1 (de) * 2001-12-20 2003-07-03 Thomson Brandt Gmbh MPEG-Video-Aufzeichnungsträger und Wiedergabegerät
US8284844B2 (en) 2002-04-01 2012-10-09 Broadcom Corporation Video decoding system supporting multiple standards
US7039247B2 (en) * 2003-01-31 2006-05-02 Sony Corporation Graphic codec for network transmission
US9330060B1 (en) 2003-04-15 2016-05-03 Nvidia Corporation Method and device for encoding and decoding video image data
US8660182B2 (en) * 2003-06-09 2014-02-25 Nvidia Corporation MPEG motion estimation based on dual start points
US7136988B2 (en) * 2003-10-03 2006-11-14 International Business Machines Corporation Mass data storage library frame spanning for mixed media
JP4955544B2 (ja) * 2004-06-03 2012-06-20 ヒルクレスト・ラボラトリーズ・インコーポレイテッド ズーム可能ユーザインターフェースのためのクライアント/サーバアーキテクチャおよび方法
KR100703682B1 (ko) * 2004-08-27 2007-04-05 삼성전자주식회사 디지털 방송 수신기에서 채널 절환 지연 시간을감소시키는 방법 및 그 방법을 사용하는 디지털 방송 수신기
US20070166000A1 (en) * 2005-03-01 2007-07-19 Ramesh Nallur System and method for generating trick mode streams
EP1785933A3 (de) * 2005-04-29 2008-04-09 Angelo Dalli Verfahren und Vorrichtung zur Anzeige von Multimedia- und Textinhalten auf elektronischen Schild- oder Tafelanzeigen mittels Eingabe aus elektronischen Kommunikationsnetzen
US8074248B2 (en) 2005-07-26 2011-12-06 Activevideo Networks, Inc. System and method for providing video content associated with a source image to a television in a communication network
US8731071B1 (en) 2005-12-15 2014-05-20 Nvidia Corporation System for performing finite input response (FIR) filtering in motion estimation
US8724702B1 (en) 2006-03-29 2014-05-13 Nvidia Corporation Methods and systems for motion estimation used in video coding
US8660380B2 (en) * 2006-08-25 2014-02-25 Nvidia Corporation Method and system for performing two-dimensional transform on data value array with reduced power consumption
US20080098447A1 (en) * 2006-10-19 2008-04-24 Moshe Yannai Programming of informational channels for digital video broadcasting
US9826197B2 (en) 2007-01-12 2017-11-21 Activevideo Networks, Inc. Providing television broadcasts over a managed network and interactive content over an unmanaged network to a client device
US9355681B2 (en) 2007-01-12 2016-05-31 Activevideo Networks, Inc. MPEG objects and systems and methods for using MPEG objects
US8756482B2 (en) * 2007-05-25 2014-06-17 Nvidia Corporation Efficient encoding/decoding of a sequence of data frames
US20080291209A1 (en) * 2007-05-25 2008-11-27 Nvidia Corporation Encoding Multi-media Signals
US9118927B2 (en) * 2007-06-13 2015-08-25 Nvidia Corporation Sub-pixel interpolation and its application in motion compensated encoding of a video signal
US8873625B2 (en) * 2007-07-18 2014-10-28 Nvidia Corporation Enhanced compression in representing non-frame-edge blocks of image frames
US9100716B2 (en) * 2008-01-07 2015-08-04 Hillcrest Laboratories, Inc. Augmenting client-server architectures and methods with personal computers to support media applications
JP4900722B2 (ja) * 2008-03-12 2012-03-21 株式会社メガチップス 画像処理装置
US8666181B2 (en) * 2008-12-10 2014-03-04 Nvidia Corporation Adaptive multiple engine image motion detection system and method
WO2012051528A2 (en) 2010-10-14 2012-04-19 Activevideo Networks, Inc. Streaming digital video between video devices using a cable television system
US8565540B2 (en) * 2011-03-08 2013-10-22 Neal Solomon Digital image and video compression and decompression methods
EP2695388B1 (de) 2011-04-07 2017-06-07 ActiveVideo Networks, Inc. Latenzreduktion in videoverteilungsnetzwerken mit adaptiver bitrate
US10409445B2 (en) 2012-01-09 2019-09-10 Activevideo Networks, Inc. Rendering of an interactive lean-backward user interface on a television
US9800945B2 (en) 2012-04-03 2017-10-24 Activevideo Networks, Inc. Class-based intelligent multiplexing over unmanaged networks
US9123084B2 (en) 2012-04-12 2015-09-01 Activevideo Networks, Inc. Graphical application integration with MPEG objects
US9679530B2 (en) * 2012-04-30 2017-06-13 Nvidia Corporation Compressing graphics data rendered on a primary computer for transmission to a remote computer
US9015744B1 (en) * 2012-06-25 2015-04-21 IMBD.com, Inc. Ascertaining events in media
US9407920B2 (en) * 2013-01-22 2016-08-02 Vixs Systems, Inc. Video processor with reduced memory bandwidth and methods for use therewith
WO2014145921A1 (en) 2013-03-15 2014-09-18 Activevideo Networks, Inc. A multiple-mode system and method for providing user selectable video content
US9294785B2 (en) 2013-06-06 2016-03-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9219922B2 (en) 2013-06-06 2015-12-22 Activevideo Networks, Inc. System and method for exploiting scene graph information in construction of an encoded video sequence
US9326047B2 (en) 2013-06-06 2016-04-26 Activevideo Networks, Inc. Overlay rendering of user interface onto source video
US9852522B2 (en) * 2014-03-17 2017-12-26 Sony Interactive Entertainment Inc. Image decoder, graphics processing system, image decoding method, and graphics processing method
JP5928914B2 (ja) * 2014-03-17 2016-06-01 株式会社ソニー・インタラクティブエンタテインメント グラフィックス処理装置およびグラフィックス処理方法
US9788029B2 (en) 2014-04-25 2017-10-10 Activevideo Networks, Inc. Intelligent multiplexing using class-based, multi-dimensioned decision logic for managed networks
US10719907B2 (en) * 2018-02-27 2020-07-21 Canon Medical Systems Corporation Method of, and apparatus for, data processing

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208745A (en) * 1988-07-25 1993-05-04 Electric Power Research Institute Multimedia interface and method for computer system
US5321750A (en) * 1989-02-07 1994-06-14 Market Data Corporation Restricted information distribution system apparatus and methods
US5229852A (en) * 1989-12-05 1993-07-20 Rasterops Corporation Real time video converter providing special effects
DE69230481T2 (de) * 1991-01-22 2000-05-18 Canon K.K., Tokio/Tokyo Multimedienübertragungsanordnung
US5371532A (en) * 1992-05-15 1994-12-06 Bell Communications Research, Inc. Communications architecture and method for distributing information services
US5432900A (en) * 1992-06-19 1995-07-11 Intel Corporation Integrated graphics and video computer display system
US5331431A (en) * 1992-08-31 1994-07-19 Motorola, Inc. Method and apparatus for transmitting and receiving encoded data
US5379122A (en) * 1992-10-02 1995-01-03 Xerox Corporation Decompression of standard ADCT-compressed images
US5402147A (en) * 1992-10-30 1995-03-28 International Business Machines Corporation Integrated single frame buffer memory for storing graphics and video data
US5404437A (en) * 1992-11-10 1995-04-04 Sigma Designs, Inc. Mixing of computer graphics and animation sequences
CA2154353A1 (en) * 1993-01-21 1994-08-04 Guy A. Primiano Apparatus and methods for providing close captioning in a digital program services delivery system
US5359676A (en) * 1993-07-19 1994-10-25 Xerox Corporation Decompression of standard ADCT-compressed document images
US5321522A (en) * 1993-07-19 1994-06-14 Xerox Corporation ADCT compression with minimum compression ratio
US5418713A (en) * 1993-08-05 1995-05-23 Allen; Richard Apparatus and method for an on demand data delivery system for the preview, selection, retrieval and reproduction at a remote location of previously recorded or programmed materials
US5442747A (en) * 1993-09-27 1995-08-15 Auravision Corporation Flexible multiport multiformat burst buffer
US5425101A (en) * 1993-12-03 1995-06-13 Scientific-Atlanta, Inc. System and method for simultaneously authorizing multiple virtual channels
US5422674A (en) * 1993-12-22 1995-06-06 Digital Equipment Corporation Remote display of an image by transmitting compressed video frames representing background and overlay portions thereof
US5838380A (en) * 1994-09-30 1998-11-17 Cirrus Logic, Inc. Memory controller for decoding a compressed/encoded video data frame

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19806913A1 (de) * 1998-02-19 1999-08-26 Cit Alcatel Verfahren zum Generieren einer Einsprungstelle in einen Bilddatenstrom und Vorrichtung zur Durchführung des Verfahrens
US6240136B1 (en) 1998-02-19 2001-05-29 Alcatel Method of providing an access point into a video data stream and apparatus for carrying out the method
WO1999059343A1 (en) * 1998-05-12 1999-11-18 Hitachi, Ltd. Method and apparatus for video decoding at reduced cost
US6122321A (en) * 1998-05-12 2000-09-19 Hitachi America, Ltd. Methods and apparatus for reducing the complexity of inverse quantization operations
US6148032A (en) * 1998-05-12 2000-11-14 Hitachi America, Ltd. Methods and apparatus for reducing the cost of video decoders
US6385248B1 (en) 1998-05-12 2002-05-07 Hitachi America Ltd. Methods and apparatus for processing luminance and chrominance image data

Also Published As

Publication number Publication date
FR2760580B1 (fr) 2003-08-29
FR2760580A1 (fr) 1998-09-11
JPH1056387A (ja) 1998-02-24
JP2912593B2 (ja) 1999-06-28
US5845083A (en) 1998-12-01

Similar Documents

Publication Publication Date Title
DE19709391A1 (de) MPEG-Codier- und Decodiersystem für Multimediaanwendungen
DE69519886T2 (de) Bilddekodierer
DE69719069T2 (de) Bilddatenprozessor für bildspeichersystem mit erneuter komprimierung
DE69219786T2 (de) Gerät zur Dekomprimierung von Video-Daten für unabhängig komprimierte gerade und ungerade Datenfelder
DE69838729T2 (de) Verfahren und vorrichtung zur verringerung des benötigten speicherplatzes zur speicherung von referenzbildern in einem videodekoder
DE69817137T2 (de) Bildverarbeitung für elektronisches Wasserzeichensetzen
DE69521102T2 (de) Syntaxparser für einen Prozessor zur Videodekompression
DE69522861T2 (de) Verfahren und Einrichtung zur Codeumwandlung von codiertem Datenstrom
DE69512548T2 (de) Verfahren und Vorrichtung zur Vermeidung von wiederholenden Zufallsfehlern in Transformationskoeffizienten von Bewegtbildsignalen
DE69116869T2 (de) Digitale bildkodierung mit einer zufallsabtastung der bilder
DE19521973C2 (de) Bilddecodiervorrichtung
DE69716465T2 (de) System zur erhaltung der kontinuität eines datenstromes bei unterbrochenen quellendaten
DE69122595T2 (de) Aufzeichnungs- und Abspielgerät
DE69633815T2 (de) Vorrichtung zur Codierung und Decodierung eines digitalen Bildsignales
EP0687111A2 (de) Verfahren zur Codierung/Decodierung eines Datenstroms
DE69627920T2 (de) Speichersteuerungsanordnung und Bilddekodierer damit
DE60029828T2 (de) Verfahren und vorrichtung zur dekodierung von videosignalen mittels eines multiprozessorsystems
DE69521255T2 (de) Verfahren zum betrieb eines interaktiven bildanzeigesystems und bildanzeigesystem zur durchführung des verfahrens
DE4408522C2 (de) Vorrichtung zur Bilddatenverarbeitung und Verfahren zur Verarbeitung von Bilddaten
DE69736620T2 (de) Videodecoder mit einem horizontalen Polyphasen-Fir-Filter
EP1472888A1 (de) Kontextsensitive kodierung und dekodierung eines videodatenstroms
DE69525424T2 (de) Verfahren und Vorrichtung zur Dekodierung von kodierten Videosignalen
DE69616850T2 (de) Videodecodersystem
DE69425720T2 (de) Bildverarbeitungsgerät
EP0836785B1 (de) Verfahren zur dekodierung und kodierung eines komprimierten videodatenstroms mit reduziertem speicherbedarf

Legal Events

Date Code Title Description
8141 Disposal/no request for examination