[go: up one dir, main page]

DE69607160T2 - Einrichtung und methode zur erzeugung von nachrichten zur anzeige auf dem bildschirm unter verwendung von abgespeicherten bitströmen - Google Patents

Einrichtung und methode zur erzeugung von nachrichten zur anzeige auf dem bildschirm unter verwendung von abgespeicherten bitströmen

Info

Publication number
DE69607160T2
DE69607160T2 DE69607160T DE69607160T DE69607160T2 DE 69607160 T2 DE69607160 T2 DE 69607160T2 DE 69607160 T DE69607160 T DE 69607160T DE 69607160 T DE69607160 T DE 69607160T DE 69607160 T2 DE69607160 T2 DE 69607160T2
Authority
DE
Germany
Prior art keywords
screen display
bit stream
character
bit streams
storage medium
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 - Lifetime
Application number
DE69607160T
Other languages
English (en)
Other versions
DE69607160D1 (de
Inventor
Wesley Beyers
Wai-Man Lam
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.)
Technicolor USA Inc
Original Assignee
Thomson Consumer Electronics 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 Thomson Consumer Electronics Inc filed Critical Thomson Consumer Electronics Inc
Application granted granted Critical
Publication of DE69607160D1 publication Critical patent/DE69607160D1/de
Publication of DE69607160T2 publication Critical patent/DE69607160T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • H04N5/44504Circuit details of the additional information generator, e.g. details of the character or graphics signal generator, overlay mixing circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/44Receiver circuitry for the reception of television signals according to analogue transmission standards
    • H04N5/445Receiver circuitry for the reception of television signals according to analogue transmission standards for displaying additional information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2355Processing of additional data, e.g. scrambling of additional data or processing content descriptors involving reformatting operations of additional data, e.g. HTML pages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/426Internal components of the client ; Characteristics thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Digital Computer Display Output (AREA)
  • Television Signal Processing For Recording (AREA)

Description

    Sachgebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf ein Verfahren und eine Vorrichtung zur Erzeugung von On-Screen-Anzeige-(OSD)- Nachrichten unter Verwendung gespeicherter Bit-Ströme. Insbesondere bezieht sich diese Erfindung auf ein Verfahren und eine Vorrichtung, die eine Vielzahl von gespeicherten "Zeichen-Bit- Strömen" herauszieht und verknüpft, um einen gültigen OSD- Nachrichten-Bit-Strom aufzubauen, der einen Schirm aus OSD- Nachrichten darstellt.
  • Hintergrund der Erfindung
  • On-Screen-Anzeige-Nachrichten spielen eine wichtige Rolle in Produkten der Unterhaltungs-Elektronik, da sie die Benutzer mit wechselseitigen Informationen versorgen, um sie durch den Gebrauch und die Konfiguration des Produkts zu führen. Die zunehmende Entwicklung von digitaler Video-Technologie stellt ein immer zunehmendes Problem der Erzeugung von OSD-Nachrichten dar, die mit den verschiedenen im Handel erhältlichen digitalen Video-Dekodierern kompatibel sind. Diese Dekodierer werden allgemein so ausgebildet, daß sie Bit-Ströme mit einem bestimmten Format dekodieren, zum Beispiel den internationalen ISO/IEC- Normen 11172 (1991) (allgemein als MPEG-1-Format bezeichnet) und 13818 (1995) (allgemein als MPEG-2-Format bezeichnet).
  • Obwohl die MPEG-Normen eine allgemeine Kodierungs- Methodologie und Syntax zur Erzeugung eines mit MPEG in Einklang stehenden Bit-Stroms spezifizieren, werden viele Variationen zugelassen, wodurch ein breiter Anwendungsbereich gestützt wird wie Tisch-Video-Veröffentlichungen, Video-Konferenzen, digitale Speichermedien und Fernseh-Rundfunk.
  • Tatsächlich definiert MPEG keinen bestimmten Algorithmus, der zur Erzeugung eines gültigen Bit-Stroms benötigt wird. Somit wird den Entwicklern von MPEG-Dekodierern eine große Flexibilität bei der Entwicklung und Ausführung ihrer eigenen MPEGspezifischen Algorithmen eingeräumt.
  • Diese Flexibilität fördert die Entwicklung und Ausführung von verschiedenen MPEG-spezifischen Algorithmen. Ein allgemeines Ziel von Entwicklern von MPEG-Dekodierern ist jedoch die Entwicklung eines MPEG-spezifischen Algorithmus, der innerhalb einer vorgegebenen Bit-Rate und Betriebs-Verzögerungs-Begrenzung arbeitet. Vor der Kodierung eines Bildes muß ein MPEG-spezifischer Algorithmus als solcher einen komplizierten Prozeß zum Ausgleich zahlreicher Faktoren ausführen wie Entscheidungen der Kodierungs-Betriebsart, Bild-Typ, Raten-Steuerung, Grobheit des Quantisierungs-Maßstabs, Bewegungsabschätzung, Skalierfähigkeit, Verzerrungs-Feststellung, Wirkung von Szenenschnitten und die Natur des Signals innerhalb des Makroblocks. Ohne im voraus die Natur der zu kodierenden Bilder zu kennen, muß ein Kodierer viele rechnerische Zyklen ausführen, um die optimalen Werte für verschiedene Parameter für die richtige Kodierung eines Bildes zu bestimmen.
  • Auf dem Gebiet der Erzeugung von OSD-Nachrichten wird ein Vollbild mit OSD-Nachrichten allgemein in derselben Weise kodiert wie andere Bilder ohne besondere Behandlung. Im Gegensatz zu anderen Bildern enthalten OSD-Nachrichten jedoch wiederholt verwendete Komponenten, d. h. die Basisgruppe von Schriftzeichen (Buchstaben, Zahlen und andere bestimmte Zeichen). Diese vorherige Kenntnis der Natur der Eingangsbilder kann dazu benutzt werden, die Wirksamkeit des Kodierverfahrens für ein Vollbild von OSD-Nachrichten zu verbessern. Somit besteht ein Bedarf für ein Verfahren und eine Vorrichtung zur Erzeugung eines gültigen Bit-Stroms eines Vollbildes von OSD-Nachrichten durch Ausnutzen der sich wiederholenden Natur von OSD-Nachrichten.
  • US-A-4,091,424 offenbart ein System, das nach einer minimalen Blockgröße sucht, die um ein Zeichen paßt. Innerhalb dieses Blocks wird eine Lauflängen-Kodierung durchgeführt.
  • Zusammenfassung der Erfindung
  • Die Erfindung betrifft eine Vorrichtung und ein Verfahren zur Erzeugung eines gültigen OSD-Nachrichten-Bit-Stroms aus einer Vielzahl von gespeicherten Zeichen-Bit-Strömen gemäß Anspruch 1 und 8.
  • Genauer gesagt wird gemäß der Erfindung jedes Zeichen der OSD-Schriftgruppe zunächst in eine feste Blockgröße skaliert, z. B. eine Blockgröße von 16 · 16 Pixeln. Somit ist jedes OSD- Zeichen in einer Blockgröße eingeschlossen, die kleiner oder gleich der Größe eines Makroblocks ist, der von einem MPEG- spezifischen Kodierer verwendet wird. Jedes Zeichen wird dann in einen mit MPEG in Einklang stehenden Bit-Strom unter Verwendung der Intra-Makroblock-Kodierungs-Syntax kodiert. Der "Zeichen- Bit-Strom", der jedes Zeichen darstellt, wird in einem Speichermedium gespeichert. Wenn ein Vollbild mit OSD-Nachrichten kodiert werden muß, werden die Zeichen-Bit-Ströme aus dem Speichermedium ausgelesen und in Kaskade angeordnet, um einen gültigen MPEG-Bit-Strom zu bilden, der das Vollbild von OSD- Nachrichten darstellt.
  • Diese und andere Aspekte der Erfindung werden nachfolgend anhand der beigefügten Zeichnungen beschrieben.
  • Kurze Beschreibung der Zeichnungen
  • In den Zeichnungen stellen dar:
  • Fig. 1 ein Blockschaltbild eines Codec-Systems mit einem Bit-Strom-Generator gemäß einem Aspekt der Erfindung;
  • Fig. 2 ein Blockschaltbild, das Einzelheiten des Kodierers offenbart, um eine Gruppe von OSD-Schriftzeichen in eine Vielzahl von gespeicherten Zeichen-Bit-Strömen zu kodieren; und
  • Fig. 3 ein Fließdiagramm, das das Verfahren zur Erzeugung eines gültigen OSD-Nachrichten-Bit-Stroms aus einer Vielzahl von gespei cherten Zeichen-Bit-Strömen veranschaulicht.
  • Ausführliche Beschreibung der Zeichnungen
  • Fig. 1 zeigt ein Blockschaltbild eines Kodierer-Dekodierer- (Codec)-Systems 100. Das Codec-System umfaßt einen Bit-Strom- Generator 110, eine Eingangs-/Ausgangs-(I/O)-Vorrichtung 160 und einen Video-Dekodierer 170.
  • Die vorliegende Erfindung wird nachfolgend gemäß den MPEG- Normen beschrieben. Der Fachmann wird jedoch erkennen, daß die vorliegende Erfindung auch bei anderen Codec-Systemen angewendet oder an diese angepaßt werden kann, wobei andere Kodier- Dekodier-Formate ausgeführt werden.
  • Bei dem bevorzugten Ausführungsbeispiel umfaßt der Bit- Strom-Generator einen Allzweck-Rechner mit einer zentralen Verarbeitungseinheit (CPU) 120, einem Speicher 140, einem Festspeicher (ROM) 130, einem Zeichen-Skalierer 155 und einem Kodierer 150 zur Erzeugung einer Vielzahl von kodierten Video-Bit-Strömen zur Übertragung zu einem Video-Dekodierer 170. Der Kodierer 150 und der Zeichen-Skalierer 155 können als getrennte physikalische Vorrichtungen oder als Algorithmen ausgeführt werden, die aus dem Speicher 130 abgerufen und durch die CPU 120 ausgeübt werden.
  • Der Video-Dekodierer 170 ist mit dem Bit-Strom-Generator 110 verbunden und empfängt eine Vielzahl von kodierten Bit-Strömen über ein Kommunikationssystem, z. B. einen Übertragungskanal 190. Die kodierten Bit-Ströme enthalten die kodierte Darstellung ei ner Vielzahl von Eingangsbildern zu dem Kodierer. Der Video- Dekodierer dekodiert seinerseits die kodierten Bit-Ströme, um eine Vielzahl von dekodierten Bildern 180 zu erzeugen.
  • Der Bit-Strom-Generator 110 ist mit einer Vielzahl von Eingangs- und Ausgangs-Vorrichtungen 160 verbunden, z. B. einem Tastenfeld, einer Maus, einem Modem, einer Kamera, einem Video- Monitor oder Speichervorrichtungen, die einen Hard-Disc-Antrieb oder einen Compact-Disc-Antrieb enthalten aber nicht darauf begrenzt sind. Die Eingangsvorrichtungen dienen zur Lieferung von Eingängen zu dem Bit-Strom-Generator zur Erzeugung der kodierten Video-Bit-Ströme oder zur Wiedergewinnung der kodierten Video- Bit-Ströme aus dem ROM 130 oder anderen Speichervorrichtungen (nicht dargestellt).
  • Genauer gesagt wird zunächst eine Gruppe von OSD- Schriftzeichen an den Bit-Strom-Generator 110 als ein Bild geliefert oder als Gruppe von Eingängen aus einem Tastenfeld in einem vom Rechner unabhängigen (Off-Line)-Prozeß eingegeben. Jedes Zeichen in der OSD-Schriftzeichen-Gruppe wird durch einen Zeichen-Skalierer 155 in eine feste Blockgröße skaliert. Bei dem bevorzugten Ausführungsbeispiel wird jedes OSD-Zeichen in die Größe eines Makroblocks skaliert, d. h. eine Blockgröße von 16 · 16 Pixeln gemäß den MPEG-Normen. Da viele Parameter wie die Kodierungs-Betriebsart und der Quantisierungs-Maßstab bei dem Makroblock-Pegel ausgewählt werden können, sorgt dieser Skalierungs-Schritt für Flexibilität, weil dem Kodierer erlaubt wird, die Parameter jedes Makroblocks gegebenenfalls während der Kodierung eines Vollbildes von OSD-Nachrichten einzustellen.
  • Nachdem die OSD-Schriftzeichen kodiert sind, werden sie als Zeichen-Bit-Ströme in einem Speichermedium wie einem ROM 130 gespeichert. Der Fachmann erkennt jedoch, daß die Zeichen-Bit- Ströme in anderen Speichermedien gespeichert werden können, wie einem Speicher mit willkürlichem Zugriff (RAM), einem Hard-Disc- Antrieb oder einem Compact-Disc-Antrieb. Jedes OSD-Zeichen wird individuell durch einen Zeichen-Bit-Strom dargestellt, so daß jeder getrennt herausgezogen und in Kaskade angeordnet werden kann, um einen OSD-Nachrichten-Bit-Strom zu bilden.
  • Wenn anschließend ein Schirm mit OSD-Nachrichten in einen OSD-Nachrichten-Bit-Strom kodiert werden muß, werden die OSD- Nachrichten dem Bit-Strom-Generator als Vollbild von OSD- Nachrichten zugeführt oder als Gruppe von Eingängen von einem Tastenfeld in einem "On-Line"-Prozeß eingegeben. Der Bit-Strom- Generator identifiziert die OSD-Zeichen innerhalb der OSD- Nachrichten und gewinnt die entsprechenden Zeichen-Bit-Ströme aus dem ROM wieder, um einen mit MPEG in Einklang stehenden OSD- Nachrichten-Bit-Strom zu konstruieren.
  • Fig. 2 zeigt ein Blockschaltbild eines vereinfachten Aufbaus eines Video-Kodierers 220 zur Kodierung einer Gruppe von OSD- Schriftzeichen 210 in eine Vielzahl von Zeichen-Bit-Ströme 2321 bis 232n. Die Zeichen-Bit-Ströme werden in einem Speichermedium 230 gespeichert.
  • Der Video-Kodierer 220 ist ein vereinfachter mit MPEG in Einklang stehender Video-Kodierer für die Kodierung eines Eingangsbildes im Weg 215, um einen Bit-Strom im Weg 235 zu erzeugen. Bei dem bevorzugten Ausführungsbeispiel umfaßt das Eingangsbild eine Vielzahl von OSD-Zeichen 1211 bis 212, wobei je des Zeichen innerhalb eines Makroblocks eingeschlossen ist. Nachdem der Kodierer entschieden hat, welcher Bild-Typ (I, P oder B) für jedes Bild verwendet werden soll, erzeugt ein Bewegungsabschätzungs- und Kompensations-Abschnitt 220 eine bewegungskompensierte Vorhersage (vorhergesagtes Bild) 227. Dieses vorhergesagte Bild wird unter Verwendung einer Subtraktionsschaltung 250 von dem Eingangsbild im Weg 215 in dem gegenwärtigen Makroblock subtrahiert, um ein Fehlersignal oder einen vorhersagenden Rest zu bilden. Die Bildung des vorhersagenden Restes entfernt redundante Informationen in dem Eingangsbild durch Übertragung nur der notwendigen Informationen für die Erzeugung der Vorhersagen des Bildes und der Fehler dieser Vorhersagen.
  • Um die Bit-Rate weiter zu vermindern, wird dann der vorhersagende Rest für jeden Makroblock durch den diskreten Cosinus- Transformations-(DCT)-Abschnitt 221 transformiert. Gemäß den MPEG-Normen umfaßt jeder Makroblock vier (4) Luminanzblöcke und zwei Farbdifferenz-Blöcke (einen Cr-Block und einen Cb-Block), wobei ein Block als eine acht (8) mal acht (8) Abtast-Gruppe definiert wird. Der DCT-Abschnitt 221 führt bei jedem Block des vorhersagenden Restsignals einen diskreten Vorwärts-Cosinus- Transformations-Prozeß aus, um einen acht (8) mal acht (8)-Block von DCT-Koeffizienten zu erzeugen. Der obere linke Koeffizient in diesem 8 · 8-Block wird als "Gleichstrom-Koeffizient" bezeichnet, während restliche Koeffizienten als "Wechselstrom- Koeffizienten" bezeichnet werden.
  • Der resultierende 8 · 8-Block von DCT-Koeffizienten wird von einem Quantisierer 223 empfangen, wo die DCT-Koeffizienten quantisiert werden. Der Prozeß der Quantisierung vermindert die Genauigkeit der DCT-Koeffizienten durch Teilen der DCT- Koeffizienten durch eine Gruppe von Quantisierungs-Werten mit geeigneter Abrundung, um ganzzahlige Werte zu bilden. Die Quantisierungs-Werte können individuell für jeden DCT-Koeffizienten unter Verwendung verschiedener Kriterien festgelegt werden, beispielsweise visuell gewichtete Quantisierung, frequenzgewichtete Quantisierung oder dergl.
  • Da OSD-Zeichen scharfe Flanken enthalten und stationär angezeigt werden, wird für die Kodierung ein kleiner Quantisierungs- Wert ausgewählt. Bei dem bevorzugten Ausführungsbeispiel wird der Quantisierungs-Wert auf vier (4) festgelegt. Jedes OSD- Zeichen kann jedoch unter Verwendung eines anderen Quantisierungs-Wertes gemäß der Kompliziertheit des Zeichens kodiert werden. Der Prozeß der Quantisierung ist eine Schlüsseloperation und dient oft als Werkzeug zur Steuerung des Kodierers, um seinen Ausgang an eine gegebene Bit-Rate anzupassen (Raten- Steuerung).
  • Dann wird der resultierende 8 · 8-Block aus quantisierten DCT-Koeffizienten von einem veränderbaren Längen-kodierenden (VLC)- und Puffer-Abschnitt 224 empfangen. Der VCL- und Puffer- Abschnitt kodiert die Kette von quantisierten DCT-Koeffizienten und alle Seiten-Informationen für jeden Makroblock, wie Makroblock-Typ und Bewegungs-Vektoren, durch Verwendung einer veränderbaren Längenkodierung und einer Lauflängen-Kodierung.
  • Eine Folge der Verwendung von unterschiedlichen Bild-Typen und einer variablen Längenkodierung besteht jedoch darin, daß die Gesamt-Bit-Rate variabel ist. Die Zahl der verwendeten Bits zur Kodierung jedes Bildes kann sich nämlich von einem Bild zum nächsten ändern. Bei Anwendungen, die einen Kanal mit fester Ra te einschließen, wird der "First-in-first-out"-(FIFO)-Puffer in dem VCL- und Puffer-Abschnitt zur Anpassung der Kodierer- Ausgangsrate an die Kanalrate verwendet, um die Bit-Rate zu glätten. Somit ist das Ausgangssignal des FIFO-Puffers eine komprimierte Darstellung des Eingangsbildes im Weg 215, wo es zu einem Speichermedium 230 oder einem Telekommunikationskanal (nicht dargestellt) gesendet wird.
  • Der MPEG-Kodierer enthält ferner einen Regulator 225, um Überlauf- und Unterschreitungs-Zustände innerhalb des Video- Decoders 170 (Fig. 1) zu verhindern. Genauer gesagt entfernt der in Fig. 1 dargestellte Video-Dekodierer 170 in regelmäßigen Intervallen, die durch die Bildrate bestimmt werden, alle Bits für das nächste Bild aus seinem Eingangs-Puffer (nicht dargestellt). Wenn in dem Eingangs-Puffer zu wenige oder zu viele Bits sind, kann ein Fehler-Zustand die Folge sein. Somit überwacht der Regulator 225 den Zustand des Puffers in dem VLC- und Puffer- Abschnitt 224, um die Zahl der Bits zu steuern, die von dem Kodierer erzeugt werden, wodurch Überlauf- und Unterschreitungs- Zustände innerhalb des Video-Dekodierers verhindert werden. Ein Verfahren zur Steuerung der Anzahl von Bits, die durch den Kodierer erzeugt werden, ist die Änderung des Quantisierungs- Wertes, d. h. eine Erhöhung des Quantisierungs-Wertes, um die Zahl von Bits zu vermindern und umgekehrt.
  • Schließlich wird der resultierende 8 · 8-Block von quantisierten DCT-Koeffizienten dequantisiert und durch den Dekodierer 226 transformiert, der auch als ein "eingebetteter Dekodierer" bekannt ist. Der Dekodierer 226 dient zur Umkehr der Prozesse von Quantisierung und DCT, um das dekodierte Fehlersignal zu erzeugen. Dieses Fehlersignal wird dann unter Verwendung der Ad dierschaltung 260 zu dem Vorhersage-Signal von dem Bewegungsabschätzungs- und Kompensations-Abschnitt 220 zurückaddiert, um ein dekodiertes Bezugs-Bild zu erzeugen. Wenn ein I-Vollbild oder ein P-Vollbild dekodiert wird, wird es allgemein innerhalb des Abschnitts 222 gespeichert, wobei das älteste gespeicherte Bezugsbild ersetzt wird.
  • Obwohl die vorliegende Erfindung in Verbindung mit einem mit MPEG in Einklang stehenden Norm-Video-Recorder beschrieben wird, kann ein vereinfachter Kodierer verwendet werden, um das Verfahren der Kodierung von OSD-Zeichen weiter zu vereinfachen und zu beschleunigen. So können der Bewegungsabschätzungs- und Kompensations-Abschnitt 220, der Dekodierer 226 und der Regulator 225 entfallen. Bei der Kodierung von OSD-Zeichen wird jeder Makroblock gemäß der Intra-Makroblock-Kodierungs-Syntax kodiert. Als solches besteht keine Notwendigkeit zur Durchführung einer Bewegungsabschätzung und Kompensation, die ihrerseits die Notwendigkeit der Einbeziehung eines Dekodierers 226 beseitigt, um ein dekodiertes Bezugs-Bild zu erzeugen.
  • Da schließlich die OSD-Zeichen im voraus intra-kodiert werden, ist die Größe jedes Zeichen-Bit-Stroms vor der Erzeugung eines OSD-Nachrichten-Bit-Stroms bekannt. Als solche kann die Gesamtzahl von Bits eines OSD-Nachrichten-Bit-Stroms bestimmt werden, bevor der Bit-Strom erzeugt wird, wodurch die Notwendigkeit der Einbeziehung eines Regulators 225 entfällt. Die sich wiederholende Natur von OSD-Nachrichten erlaubt dem Bit-Strom- Generator die Einbeziehung eines wirksamen und vereinfachten Kodierers zur Kodierung von OSD-Nachrichten für die Erzeugung von mit MPLG in Einklang stehenden OSD-Nachrichten-Bit-Strömen.
  • Fig. 3 veranschaulicht ein Verfahren 300 zur Erzeugung eines gültigen OSD-Nachrichten-Bit-Stroms aus einer Vielzahl von gespeicherten Zeichen-Bit-Strömen. Das Verfahren 300 kodiert die OSD-Zeichen in einer Vielzahl von Zeichen-Bit-Strömen, die selektiv aus einem Speichermedium gelesen werden, um einen mit MPEG in Einklang stehenden OSD-Nachrichten-Bit-Strom zu erzeugen.
  • In Fig. 3 beginnt das Verfahren 300 beim Schritt 310 und schreitet zum Schritt 320 weiter, wo jedes Zeichen der OSD- Schriftzeichen-Gruppe in eine feste Blockgröße skaliert wird. Die bevorzugte Blockgröße ist ein Norm-Makroblock mit einer Größe von 16 · 16 Pixeln.
  • Beim Schritt 330 wird jedes Zeichen der OSD-Schriftzeichen- Gruppe in einen Zeichen-Bit-Strom kodiert. Da die OSD-Zeichen oft scharfe Flanken enthalten, kodiert das Verfahren 300 jedes Zeichen genau unter Verwendung der Intra-Makroblock-Kodier- Betriebsart mit einem verhältnismäßig kleinen Quantisierungs- Wert, z. B. vier (4). Dieser Wert erlaubt die Anzeige der OSD- Nachrichten ohne merkliche Verzerrung nach Dekodierung durch den Video-Dekodierer. Die OSD-Zeichen können jedoch unter Verwendung anderer Quantisierungs-Werte kodiert werden, die von der Kompliziertheit jedes Zeichens abhängen, oder indem einfach jeder Zeichen-Bit-Strom in veränderbaren Größen erzeugt wird. Diese Flexibilität erlaubt dem Bit-Strom-Generator die Erzeugung eines OSD-Nachrichten-Bit-Stroms, der mit einer vorgegebenen Bit-Rate in Einklang steht.
  • Beim Schritt 340 werden die Zeichen-Bit-Ströme in einem Speichermedium, z. B. einem ROM oder einer Platte gespeichert. Da die OSD-Zeichen die gleichen bleiben, werden die gespeicherten Zeichen-Bit-Ströme selektiv wiedergewonnen, um einen OSD- Nachrichten-Bit-Strom zu erzeugen.
  • Beim Schritt 350 bestimmt das Verfahren 300, ob ein OSD- Nachrichten-Bit-Strom erzeugt werden muß. Wenn die Frage negativ beantwortet wird, schreitet das Verfahren 300 zum Schritt 390 weiter, wo das Verfahren endet. Die Schritte 320 bis 340 können als ein vom Rechner unabhängiger "Off-Line"-Prozeß ausgeführt werden, wobei die Zeichen-Bit-Ströme erzeugt und für späteren Gebrauch gespeichert werden. Wenn die Frage beim Schritt 350 zustimmend beantwortet wird, schreitet das Verfahren 300 zum Schritt 360 weiter, wo die Zeichen-Bit-Ströme aus dem Speichermedium ausgelesen werden.
  • Beim Schritt 360 identifiziert das Verfahren 300 die Zeichen einer OSD-Nachricht und gewinnt selektiv die entsprechenden Zeichen-Bit-Ströme aus dem Speichermedium zurück. Das Verfahren 300 kann die Zeichen einer OSD-Nachricht aus einem Eingangsbild identifizieren oder als eine Gruppe von Eingängen von einem Tastenfeld zu dem Bit-Strom-Generator.
  • Beim Schritt 370 ordnet das Verfahren 300 die wiedergewonnenen Zeichen-Bit-Ströme in Kaskade in einen mit MPEG in Einklang stehenden OSD-Nachrichten-Bit-Strom, der die OSD-Nachricht darstellt. Ferner wird vor jedem Zeichen-Bit-Strom ein "Rechteck- Ausschnitt"-(Slice)-Start-Code" eingefügt, um den Beginn eines Rechteck-Ausschnitts anzuzeigen. Ein Rechteck-Ausschnitt besteht aus einer ganzen Zahl von Makroblöcken in Raster-Abtast- Reihenfolge. Die minimale Größe eines Rechteck-Ausschnitts in einem Bild ist ein Makroblock. Da der Gleichstrom-Koeffizient mit dem Gleichstrom-Koeffizienten des vorhergehenden Blocks korreliert ist, wird ein Rechteck-Ausschnitt-Start-Code zwischen jedem Makroblock angewendet, um diese Korrelation abzutrennen. Da es keine Korrelation gibt, wenn jedes OSD-Zeichen in einen getrennten Zeichen-Bit-Strom kodiert wird, hindert der Rechteck- Ausschnitt-Start-Code den Video-Decoder daran, irgendeine Korrelation bei der Dekodierung der Gleichstrom-Koeffizienten des OSD-Nachrichten-Bit-Stroms ungenau anzuwenden. Jedes OSD-Zeichen wird nämlich zunächst in einen Zeichen-Bit-Strom ohne jegliche Korrelation kodiert. Da jedoch der OSD-Nachrichten-Bit-Strom durch irgendeinen mit MPEG in Einklang stehenden Dekodierer dekodiert werden kann, werden Rechteck-Ausschnitt-Start-Codes verwendet, um zu verhindern, daß die Dekodierer bei dem Gleichstrom-Koeffizienten irgendeine Korrelation anwenden, wenn bei dem Kodierungs-Prozeß keine Korrelation angewendet wurde.
  • Beim Schritt 380 bringt das Verfahren 300 die in Kaskade angeordneten Bit-Ströme in Einklang mit einem mit MPEG im Einklang stehenden Bit-Strom. Da der OSD-Nachrichten-Bit-Strom aus einer Vielzahl von intra-kodierten Makroblöcken aufgebaut wird und alle Kodierungs-Parameter im voraus bekannt sind, fügt das Verfahren 300 andere MPEG-spezifische Informationen in den OSD- Nachrichten-Bit-Strom ein, um den Bit-Strom mit den MPEG-Normen in Einklang zu bringen. Die MPEG-spezifische Information enthält einen Sequenz-Kopf, einen Bildgruppen-Kopf, einen Bild-Kopf, verschiedene Erweiterungen und ein Sequenzende, was alles im voraus erzeugt werden kann.
  • Jedoch bedarf der Parameter "vbv_Verzögerung" einer Änderung in Abhängigkeit von der spezifischen OSD-Nachricht. Die MPEG- Normen spezifizieren ein abstraktes Modell des Puffersystems, den Video-Puffer-Verifier (VBV), um in der Zahl von Bits, die für ein gegebenes Bild verwendet werden, die maximale Variabilität zu begrenzen. Der VBV ist ein hypothetischer Dekodierer, der zunächst leer ist und begrifflich mit dem Ausgang des Kodierers verbunden ist. Der VBV hat einen Eingangs-Puffer, der als VBV- Puffer bekannt ist, der aus dem kodierten Bit-Strom für die Zeit gefüllt wird, die durch die Parameter- oder Halbbild- "vbv_Verzögerung" in dem Video-Bit-Strom spezifiziert wird. Dies stellt sicher, daß ein kodierter Bit-Strom mit einem Puffer bekannter Größe dekodiert werden kann. Da die Größe jedes Zeichen- Bit-Stroms bekannt ist, kann die vbv_Verzögerung leicht aus dem OSD-Nachrichten-Bit-Strom berechnet werden, z. B. durch Addieren der Anzahl von verwendeten Bits, um jedes Zeichen und die relevanten Overhead-Bits zu kodieren. Wenn die nowendige MPEGspezifische Information dem OSD-Nachrichten-Strom hinzugefügt worden ist, endet das Verfahren 300 beim Schritt 390.

Claims (14)

1. Verfahren zur Erzeugung von Zeichen-Bit-Strömen (232) für einen On-Screen-Anzeige-Nachrichten-Bit-Strom, der eine On- Screen-Anzeige-Nachricht darstellt, umfassend den Schritt:
- Speichern (340) einer Gruppe von kodierten Zeichen-Bit- Strömen (232) auf einem Speichermedium (130; 230), gekennzeichnet durch die Schritte:
- Skalieren (155; 320) jedes Zeichens einer On-Screen-Anzeige- Schriftgruppe in eine feste Blockgröße mit einem zugeordneten Kodierschema; und
- Block-Kodierung (150; 220; 330) jedes skalierten On-Screen- Anzeige-Zeichens (212) in ein entsprechendes der Gruppe von kodierten Zeichen-Bit-Strömen (232) unter Verwendung des Kodierschemas.
2. Verfahren nach Anspruch 1, das ferner die Schritte enthält:
- Lesen (360) einer Vielzahl von kodierten Zeichen-Bit-Strömen aus der Gruppe (332) aus dem Speichermedium (130; 230), die jeweils Zeichen entsprechen, die in der On-Screen-Anzeige- Nachricht enthalten sind; und
- Kaskadenbildung (370) der Vielzahl von kodierten Zeichen- Bit-Strömen (232) in den On-Screen-Anzeige-Nachrichten-Bit- Strom.
3. Verfahren nach Anspruch 2, das den Schritt enthält, einen Block-Abtrenri-Code in den On-Screen-Anzeige-Nachrichten-Bit- Strom vor jedem der Vielzahl von Zeichen-Bit-Strömen (232) einzufügen.
4. Verfahren nach Anspruch 3, bei dem das Kodierschema einen mit MPEG in Einklang stehenden Zeichen-Bit-Strom erzeugt und der Block-Abtrenn-Code ein mit MPEG in Einklang stehender Rechteck-Ausschnitt-(Slice)-Start-Code ist.
5. Verfahren nach einem der Ansprüche 1 bis 4, bei dem der On- Scrren-Anzeige-Nachrichten-Bit-Strom mit MPEG in Einklang steht.
6. Verfahren nach einem der Ansprüche 1 bis 5, bei dem das Kodierschema einem mit MPEG in Einklang stehenden Zeichen-Bit- Strom erzeugt, und bei dem die feste Blockgröße ein mit MPEG in Einklang stehender Makroblock ist.
7. Verfahren nach einem der Ansprüche 1 bis 6, bei dem das Speichermedium (130; 230) ein Festspeicher ist.
8. Vorrichtung zur Erzeugung von Zeichen-Bit-Strömen für einen On-Screen-Anzeige-Nachrichten-Bit-Strom, der eine On-Screen- Anzeige-Nachricht darstellt, enthaltend:
ein Speichermedium (130; 230),
- einen Block-Kodierer (150; 220), der mit dem Speichermedium (130; 230) zur Block-Kodierung jedes von einer Vielzahl von On-Screen-Anzeige-Zeichen einer Schriftgruppe (212) in einen entsprechenden einer Vielzahl von kodierten Zeichen-Bit- Strömen (323) unter Verwendung eines bestimmten Kodierschemas verbunden ist,
- Mittel zur Speicherung der Vielzahl von kodierten Zeichen- Bit-Strömen auf dem Speichermedium; und
- einen Zeichen-Skalierer (155), der mit dem Block-Kodierer (150; 220) verbunden ist, um jedes aus der Vielzahl von On- Screen-Anzeige-Zeichen (212) in eine feste Blockgröße unter Zuordnung eines bestimmten Kodierschemas zu skalieren, bevor die On-Screen-Anzeige-Zeichen kodiert werden.
9. Vorrichtung nach Anspruch 8, die ferner eine zentrale Verarbeitungseinheit CPU (120) enthält, die mit dem Speichermedium (130; 230) verbunden ist, um wahlweise aus dem Speichermedium von der Vielzahl von kodierten Zeichen-Bit-Strömen (332) welche wiederzugewinnen, die Anzeige-Zeichen entsprechen, die in der On-Screen-Anzeige-Nachricht enthalten sind, wobei die CPU die wiedergewonnenen kodierten Zeichen-Bit- Ströme in Kaskaden anordnet, um den On-Screen-Anzeige- Nachrichten-Bit-Strom zu bilden.
10. Vorrichtung nach Anspruch 9, die ferner einen Speicher (140) enthält, der mit der CPU (120) verbunden ist, wobei der Kodierer (150; 220) als ein in dem Speicher gespeicherter Algorithmus ausgeführt ist und durch die CPU ausgeübt wird.
11. Vorrichtung nach Anspruch 9, die ferner einen Speicher (140) enthält, der mit der CPU (120) verbunden ist, wobei der Zei chen-Skalierer (155) als ein in dem Speicher gespeicherter Algorithmus ausgeführt ist und durch die CPU ausgeübt wird.
12. Vorrichtung nach einem der Ansprüche 8 bis 11, bei der das Speichermedium (130; 230) ein Festspeicher ist.
13. Vorrichtung nach einem der Ansprüche 8 bis 12, bei der der Kodierer (150; 220) ein mit MPEG in Einklang stehender Kodierer ist.
14. Vorrichtung nach einem der Ansprüche 8 bis 13, bei der die feste Blockgröße ein mit MPEG in Einklang stehender Makroblock ist.
DE69607160T 1995-05-24 1996-05-17 Einrichtung und methode zur erzeugung von nachrichten zur anzeige auf dem bildschirm unter verwendung von abgespeicherten bitströmen Expired - Lifetime DE69607160T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GBGB9510484.0A GB9510484D0 (en) 1995-05-24 1995-05-24 Creating an on screen display
PCT/US1996/007127 WO1996038007A1 (en) 1995-05-24 1996-05-17 Apparatus and method for generating on-screen-display messages using stored bitstreams

Publications (2)

Publication Number Publication Date
DE69607160D1 DE69607160D1 (de) 2000-04-20
DE69607160T2 true DE69607160T2 (de) 2000-10-05

Family

ID=10774946

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69607160T Expired - Lifetime DE69607160T2 (de) 1995-05-24 1996-05-17 Einrichtung und methode zur erzeugung von nachrichten zur anzeige auf dem bildschirm unter verwendung von abgespeicherten bitströmen

Country Status (10)

Country Link
EP (1) EP0829169B1 (de)
JP (1) JP3831411B2 (de)
KR (1) KR100413868B1 (de)
CN (1) CN1124047C (de)
AU (1) AU699282B2 (de)
BR (1) BR9609118A (de)
DE (1) DE69607160T2 (de)
GB (1) GB9510484D0 (de)
MX (1) MX9709052A (de)
WO (1) WO1996038007A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1014712A1 (de) * 1998-12-21 2000-06-28 Deutsche Thomson-Brandt Gmbh Verfahren und Vorrichtung zur Bereitstellung von Daten zur OSD-Anzeige in einem Videosignal mit kodiertem Format
EP1014713B1 (de) * 1998-12-21 2002-03-13 Deutsche Thomson-Brandt Gmbh Verfahren und Vorrichtung zur Erzeugung von OSD Daten in einem Videosignal mit kodiertem Format
KR20040047554A (ko) * 2002-11-27 2004-06-05 삼성전자주식회사 화면 종횡비 변환에 적응하여 폰트를 제어해서 인터렉티브컨텐츠를 재생하는 장치 및 그 방법
US9749636B2 (en) * 2014-10-24 2017-08-29 Intel Corporation Dynamic on screen display using a compressed video stream

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3911420A (en) * 1973-11-23 1975-10-07 Xerox Corp Display system including a high resolution character generator
US4091424A (en) * 1977-02-18 1978-05-23 Compression Labs, Inc. Facsimile compression system
FI831929L (fi) * 1981-11-06 1983-05-30 Hoechst Co American Rasterbildprocessor och foerfarande.
JPH02304596A (ja) * 1989-05-19 1990-12-18 Matsushita Electric Ind Co Ltd キャラクタデータ発生装置
JPH03257590A (ja) * 1990-03-07 1991-11-18 Nec Corp 文字パターン作成方法および装置
US5122875A (en) * 1991-02-27 1992-06-16 General Electric Company An HDTV compression system
JP3245270B2 (ja) * 1993-08-04 2002-01-07 キヤノン株式会社 文字処理装置及び方法
DK0714582T3 (da) * 1993-08-20 1999-05-31 Thomson Consumer Electronics Lukket billedtekstsystem til anvendelse i forbindelse med komprimeret digital videotransmission
JP3299821B2 (ja) * 1993-09-06 2002-07-08 松下電器産業株式会社 番組選択メニュー方式および映像配信システム
CN100348036C (zh) * 1994-12-14 2007-11-07 皇家菲利浦电子有限公司 附加字幕的传输系统

Also Published As

Publication number Publication date
JP3831411B2 (ja) 2006-10-11
AU5796496A (en) 1996-12-11
CN1124047C (zh) 2003-10-08
CN1191654A (zh) 1998-08-26
GB9510484D0 (en) 1995-07-19
WO1996038007A1 (en) 1996-11-28
EP0829169A1 (de) 1998-03-18
JPH11505939A (ja) 1999-05-25
KR19990021920A (ko) 1999-03-25
MX9709052A (es) 1998-03-31
KR100413868B1 (ko) 2004-03-24
DE69607160D1 (de) 2000-04-20
EP0829169B1 (de) 2000-03-15
AU699282B2 (en) 1998-11-26
BR9609118A (pt) 1999-02-23

Similar Documents

Publication Publication Date Title
DE69327675T2 (de) Ver- und Entschlüsselungsvorrichtung
US9762917B2 (en) Quantization method and apparatus in encoding/decoding
DE69425047T2 (de) Adaptives variables längenkodierungs- und -dekodierungsverfahren für bilddaten
DE69414931T2 (de) Transkodierer
DE69916027T2 (de) Videokompressionssystem welches auch codierungsentscheidungsdaten komprimiert
DE19755345C2 (de) Umgekehrtes Abspielen von Videosignalen im MPEG-Standard
DE69837497T2 (de) Verfahren und vorrichtung zum kodieren eines videosignals
EP0752789B1 (de) Verfahren, Encoder und Decoder zur Resynchronisierung auf einen fehlerbehafteten Videodatenstrom
DE69527912T2 (de) Verfahren und System zur Steuerung eines Bildkodiererpuffers
DE69421449T2 (de) Kodierer zur adaptiven Kodierung von Videobilddaten getrennt nach der ihnen zugeordneten Priorität
EP1472888B1 (de) Kontextsensitive kodierung und dekodierung eines videodatenstroms
DE60309039T2 (de) Verfahren und vorrichtung zur optimierung der bildschärfe während der kodierung
DE10296787B4 (de) Selektive Prädikation für ein Intra-Codieren eines Videodatenblocks
DE69017838T2 (de) Vorrichtung zum Kodieren von Bildern.
DE69607160T2 (de) Einrichtung und methode zur erzeugung von nachrichten zur anzeige auf dem bildschirm unter verwendung von abgespeicherten bitströmen
DE10218541A1 (de) Verfahren zur Videocodierung und Computerprogrammprodukt
DE69809619T2 (de) Adaptive Videosignalkompression
DE69602125T2 (de) MPEG Dekoder
US6081300A (en) Apparatus and method for generating on-screen-display messages using stored bitstreams
DE69835801T2 (de) Vorrichtung und Verfahren zur Kompressionskodierung von Bildsignalen
DE102004029086B4 (de) Verfahren zum Entblocken und Umcodieren eines Medienstroms
EP0665691A2 (de) Verfahren zur Minimierung der zeitlichen Verzögerung bei der Übertragung bewegter Bilder mit niedrigen Datenraten
WO2001063939A1 (de) Verfahren und vorrichtung zum codieren eines videosignals und eines sprachsignals, computerlesbares speichermedium sowie computerprogramm-element
WO2004002161A1 (de) Verfahren und vorrichtung zur vorbereitung der ubertragung von bildfolgen über einen zeitlich änderlichen kanal
DE10243568A1 (de) Verfahren zur skalierbaren Videocodierung eines Videobildsignals sowie ein zugehöriger Codec

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)