DE60205534T2 - System und Verfahren zum Verhindern von Unterbrechungen von kodierten Eingangsdaten variabler Länge - Google Patents

System und Verfahren zum Verhindern von Unterbrechungen von kodierten Eingangsdaten variabler Länge Download PDF

Info

Publication number
DE60205534T2
DE60205534T2 DE2002605534 DE60205534T DE60205534T2 DE 60205534 T2 DE60205534 T2 DE 60205534T2 DE 2002605534 DE2002605534 DE 2002605534 DE 60205534 T DE60205534 T DE 60205534T DE 60205534 T2 DE60205534 T2 DE 60205534T2
Authority
DE
Germany
Prior art keywords
variable
buffer
code
length
variable length
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
DE2002605534
Other languages
English (en)
Other versions
DE60205534D1 (de
Inventor
Yuji Minato-ku Furuta
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of DE60205534D1 publication Critical patent/DE60205534D1/de
Application granted granted Critical
Publication of DE60205534T2 publication Critical patent/DE60205534T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/93Run-length 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23892Multiplex stream processing, e.g. multiplex stream encrypting involving embedding information at multiplex stream level, e.g. embedding a watermark at packet level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00884Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a watermark, i.e. a barely perceptible transformation of the original data which can nevertheless be recognised by an algorithm

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Television Systems (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Bereich der Erfindung
  • Die vorliegende Erfindung betrifft ein System und ein Verfahren zum Verhindern einer Unterbrechung der Eingabe von Codes variabler Länge. Insbesondere betrifft die vorliegende Erfindung ein System und ein Verfahren zum Verhindern einer Unterbrechung einer Eingabe von Codes variabler Länge eines MPEG-Signals (MPEG = Motion Picture Experts Group).
  • Beschreibung des zugehörigen Standes der Technik
  • Ein MPEG-Signal enthält einen Videocode variabler Länge oder einen Audiocode variabler Länge. Der Videocode variabler Länge wird erhalten, indem ein Videosignal entsprechend eines bewegungskompensierten bidirektionalen Interrahmenvorhersage-Codiersystem unter Verwendung eines Kosinus-Umwandlungssystems komprimiert wird. Der Audiocode variabler Länge wird erhalten, indem ein Audiosignal entsprechend eines Subband-Codiersystems komprimiert wird. Ein MPEG-Signal wird verwendet, um Audio- und Videosignale höchst effizient zu übertragen. Zusätzlich wird ein MPEG-Signal verwendet, um Audio- und Videosignale auf einem Speichermedium, wie beispielsweise einer DVD (Digital Versatile Disc) oder einer Festplatte zu speichern.
  • Da ein MPEG-Signal ein digitales Signal darstellt, selbst wenn es kopiert wird, wird seine Qualität nicht verschlechtert. Somit wird, wenn ein MPEG-Signal illegal kopiert wird, das Copyright des Herstellers des Inhalts verletzt.
  • Um ein derartiges Problem zu lösen, wurde eine Technik zum Einbringen eines elektronischen Wasserzeichens, welches ein Copyright darstellt, in DCT-Koeffizientencodes (DCT = Discrete Cosine Transform, diskrete Kosinustransformation) eines MPEG-Signals, welches auf einem Speichermedium, wie beispielsweise einer DVD, gespeichert ist, entwickelt. Zusätzlich wurde eine Technik zum Einbringen eines elektronischen Wasserzeichens zum Regeln eines Kopiervorgangs in DCT-Koeffizientencodes eines MPEG-Signals, welches auf einem Speichermedium, wie beispielsweise einer DVD, gespeichert ist, entwickelt. Insbesondere wurde als eine Sorte elektronischen Wasserzeichens zur Regelung eines Kopiervorgangs ein elektronisches Wasserzeichen entwickelt, welches die Codemenge nicht variiert. Ein derartiges elektronisches Wasserzeichen wurde durch einen Hersteller des Inhalts verwendet. Ein Schaltkreis, welcher ein derartiges elektronisches Wasserzeichen erfasst, ist in einem DVD-Spieler oder einem DVD-Recorder angebracht. In dem Fall, dass ein derartiges elektronisches Wasserzeichen anzeigt, dass ein Kopiervorgang verboten wird, wenn versucht wird ein MPEG-Signal, in welches ein derartiges elektronisches Wasserzeichen eingebracht wurde, von einer DVD auf eine andere DVD zu kopieren, kann das MPEG-Signal nicht kopiert werden. Somit kann das Copyright des Herstellers des Inhalts geschützt werden.
  • Wenn ein MPEG-Signal von einer DVD auf eine andere DVD kopiert wird, ist es vom Standpunkt einer hohen Effizienz her bevorzugt, dies mit hoher Geschwindigkeit ohne die Notwendigkeit einer Ton- und Bildausgabe an einen Lautsprecher bzw. Bildschirm durchzu führen. Wenn ein MPEG-Signal von einer DVD auf eine andere DVD kopiert wird, gibt ein DVD-Wiedergabelaufwerk (nicht der DVD-Spieler), ein MPEG-Signal mit einer mehrere Male (oder noch mehr) höheren Geschwindigkeit als die reguläre Wiedergabegeschwindigkeit wieder, und ein DVD-Aufnahmelaufwerk (nicht der DVD-Spieler) nimmt ein MPEG-Signal mit einer mehrere Male (oder noch mehr) höheren Geschwindigkeit als die reguläre Aufnahmegeschwindigkeit auf.
  • Um jedoch zu verhindern, dass ein MPEG-Signal illegal kopiert wird, sollte das DVD-Laufwerk, obgleich das DVD-Laufwerk keine MPEG-Decodierungsvorrichtung bereitstellen muss, über eine Funktion zum Decodieren eines wiedergegebenen MPEG-Signals zu DCT-Koeffizienten und Erfassen eines elektronischen Wasserzeichens von den erhaltenen DCT-Koeffizienten verfügen.
  • Als ein Beispiel des zugehörigen Standes der Technik stellt 1 ein Blockdiagramm dar, welches einen Schaltkreis zeigt, der ein MPEG-Signal zu DCT-Koeffizienten decodiert und ein elektronisches Wasserzeichen aus den erhaltenen DCT-Koeffizienten erfasst.
  • Mit Bezug auf 1 weist der Schaltkreis eine Eingangsschnittstelle 901, einen Puffer 902, einen Video-Elementarstrom-Extraktionsschaltkreis 903, einen Barrel-Shifter oder eine Schiebelogikschaltung 904, eine Decodiervorrichtung 905 variabler Länge, einen Regelbereich 906, eine Inversquantifiziervorrichtung 907 sowie eine Detektionsvorrichtung 908 für elektronische Wasserzeichen auf.
  • Die Eingangsschnitstelle 901 und eine Eingangsseite des Puffers 902 werden durch einen externen Schnittstellentakt angesteuert, welcher auch eine Ausgangsschnittstelle eines Vorstufenbereichs (nicht gezeigt) ansteuert. Eine Ausgangsseite des Puffers 902 und Schaltkreise stromabwärts davon werden durch einen internen Takt angesteuert, welcher nicht mit dem externen Schnittstellentakt synchronisiert.
  • Zusätzlich zu einer MPEG-Signal-Wiedergabevorichtung, wie beispielsweise einer DVD-Wiedergabevorrichtung kann der Detektionsschaltkreis für elektronische Wasserzeichen in eine MPEG-Signal-Aufnahmevorrichtung, wie beispielsweise eine DVD-Aufnahmevorrichtung, eingebaut sein, oder eine Schnittstellenvorrichtung kann zwischen einer MPEG-Signal Wiedervorgabevorrichtung und einer MPEG-Signal-Aufnahmevorrichtung angeordnet sein. Wenn ein Detektionsschaltkreis für elektronische Wasserzeichen in eine MPEG-Signal-Wiedergabevorrichtung eingebaut ist, so weist der Vorstufenbereich einen Mechanismus einer MEPG-Signal-Wiedergabevorrichtung, ein Wiedergabemechanismussystem, wie beispielsweise ein Servo, und ein Wiedergabesignal-Verarbeitungssystem, wie beispielsweise einen digitalen Signaldecodiervorgang und ein Fehlerkorrekturverfahren, auf. Wenn ein Decodierschaltkreis für elektronische Wasserzeichen in eine MPEG-Signal-Aufnahmevorrichtung oder eine Schnittstellenvorrichtung eingebaut ist, so ist der Vorstufenabschnitt beispielsweise eine MPEG-Signal-Wiedergabevorrichtung oder ein über ein Netzwerk angeschlossener Videoserver.
  • Die Eingangsschnittstelle 901 gibt einen acht Bit breiten Transportstrom oder einen acht Bit breiten Programmstrom ein, welcher mit dem externen Schnittstellentakt des Vorstufenabschnittes synchronisiert (nachstehend werden beide Ströme im Allgemeinen als "Strom" bezeichnet). Der Strom wird an den Puffer 902 ausgegeben.
  • Der Puffer 902 weist eine Taktänderungsfunktion auf, welche veranlasst, dass ein Strom, der mit einem externen Schnittstellentakt synchronisiert, mit einem internen Takt synchronisiert. Zusätzlich weist der Puffer 902 eine Funktion zum Absorbieren der Diskontinuität eines Stroms auf, welcher an den Barrel-Shifter 904 geliefert wird, wobei die Diskontinuität aufgrund der Fluktuation der Länge des durch die Decodiervorrichtung 905 variabler Länge decodierten Codes auftritt. Beispielsweise weist der Puffer 902 einen FIFO (First-In-First-Out) auf. Als ein Schreibtakt für den FIFO-Speicher wird der externe Schnittstellentakt verwendet. Als ein Lesetakt für den FIFO-Speicher wird der interne Takt verwendet. Natürlich kann der Schreibtakt des FIFO-Speichers mit dessen Lesetakt synchronisieren. Im Allgemeinen synchronisiert der Schreibtakt des FIFO-Speichers jedoch nicht mit dessen Lesetakt.
  • Der Video-Elementarstrom-Extraktionsschaltkreis 903 weist eine Funktion zum Extrahieren eines Video-Elementarstroms aus dem Eingangsstrom auf. Der Video-Elementarstrom-Extraktionsschaltkreis 903 verzögert den Eingangsstrom um die Anzahl von Taktimpulsen, welche nötig ist, um den Video-Elementarstrom zu detektieren, und gibt den daraus resultierenden Rahmen sowie ein gültiges Flag aus, welches darstellt, dass jedes Byte des Ausgangsstroms in dem Video-Elementarstrom enthalten ist. Der Video-Elementarstrom-Extraktionsschaltkreis 903 ist beispielsweise in der japanischen offengelegten Patentveröffentlichung Nr. 2001-345769 offenbart.
  • Der Video-Elementarstrom wird in einer Nutzlast eines Video-PES (Packetized Elementary Stream, paketförmiger Elementarstrom) angeordnet (die Nutzlast ist ein verbleibender Abschnitt eines Video-PES nachdem dessen PES-Anfangsblock entfernt wurde). Der Video-Elementarstrom ist in der ISO 13818-1 definiert.
  • Der Barrel-Shifter 904 wird durch den internen Takt angesteuert, dessen Taktfrequenz in etwa zwei Mal so hoch ist wie der externe Schnittstellentakt (nachfolgend wird der interne Takt als zweimultipler Takt bezeichnet). Der Barrel-Shifter 904 gibt kontinuierlich einen acht Bit breiten Strom ein und gibt einen Strom aus, welcher eine Breite von 1 bis 32 effektiven Bits aufweist. Als Nächstes wird der Betrieb des Barrel-Shifters 904 ausführlich beschrieben. Der Barrel-Shifter 904 schiebt Bits (oder annähernd decodierte Bits), welche durch den Regelabschnitt 906 benannt werden, aus einem Ausgangs-Schieberegister mit einer Breite von 32 Bits zu jedem zweimultiplen Taktimpuls heraus. Ein Ausgang jedes Registers des Ausgangs-Schieberegisters wird auch zu der Decodiervorrichtung 905 variabler Länge geliefert. Wenn diese Bits herausgeschoben werden, werden Bits, welche in dem Ausgangs-Schieberegister lagern, durch Bits, welche herausgeschoben wurden, zu dem Anfangsabschnitt geschoben. Unzureichende Bits am Endabschnitt des Ausgangs-Schieberegisters werden durch jedes Bit einer Bitgruppe des Stromes, welcher intermittierend in einer Byteeinheit eingegeben wird, kompensiert.
  • Nach der Decodierung eines Codes variabler Länge werden alle Bits eines Codes variabler Länge von höchstens 32 Bit in dem Ausgangs-Schieberegister angeordnet. Alternativ kann der Barrel-Shifter 904, um einen Hochgeschwindigkeitsbetrieb auszuführen, eine reguläre Registergruppe und eine Schaltgruppe anstelle des Ausgangs-Schieberegisters aufweisen.
  • Anders als ein herkömmlicher Barrel-Shifter gibt der Barrel-Shifter 904 kein Byte ein, welches einem gültigen Flag entspricht, dessen Wert darstellt, dass das Byte nicht in dem Video-Elementarstrom enthalten ist. Somit gibt der Barrel-Shifter nur den Video-Elementarstrom ein. Im Übrigen kann der Barrel-Shifter 904 durch einen anderen internen Takt als die zweimultiple Frequenz angesteuert werden. Beispielsweise kann der Barrel-Shifter 904 durch einen internen Takt angesteuert werden, dessen Frequenz 1,5 Mal oder 1,9 Mal höher ist als die Frequenz des externen Schnittstellentaktes.
  • Die Decodiervorrichtung 905 variabler Länge decodiert einen Code variabler Länge, welcher in einem Ausgangssignal des Barrel-Shifters 904 in jeder Codeeinheit enthalten ist. Die Decodiervorrichtung 905 variabler länge decodiert nicht nur einen Code variabler Länge für DCT-Koeffizienten, sondern alle Codes des Video-Elementarstroms, welche Codes einer Sequenz-Anfangsblockschicht, einer Bild-Anfangsblockschicht, einer Scheibenschicht und einer Makroblockschicht aufweisen, und gibt DCT-Koeffizienten der decodierten Daten an die Invers-Quantifiziervorrichtung 907 aus. Die Decodiervorrichtung 905 variabler Länge gibt ein Fehlerflag aus, welches darstellt, ob Daten erfolgreich decodiert wurden oder nicht. Wenn die Daten decodiert wurden, gibt die Decodiervorrichtung 905 variabler Länge die Codelänge des decodierten Codes an den Regelabschnitt 906 aus.
  • Der Regelabschnitt 906 gibt die Anzahl von Bits, die aus dem Barrel-Shifter 904 geschoben werden sollen, entsprechend der Codelänge aus, welche von der Decodiervorrichtung 905 variabler Länge an den Barrel-Shifter 904 eingegeben wird. Zusätzlich regelt der Regelabschnitt 906 den Decodierbetrieb des Video-Elementarstroms. Wenn die Decodiervorrichtung 905 variabler Länge die Daten aufgrund des Auftretens eines Fehlers nicht decodieren kann, verursacht die Decodiervorrichtung 905 variabler Länge die Aktivierung eines Fehlerflags. Die Decodiervorrichtung 905 variabler Länge veranlasst, dass der Barrel-Shifter 904 Daten mit acht Bit auf einmal (byteausgerichtet) herausschiebt, um einen byteausgerichteten Code (einen Code, der an einer Bytegrenze beginnt) an einer Auffrischposition (an der ein Fehler an der Ausbreitung gehindert wird) eines Scheibenanfangsblock-Codes eines Bildanfangsblock-Codes, eines Sequenzanfangsblock-Codes oder Ähnlichem zu decodieren. Selbst wenn die Decodiervorrichtung 905 variabler Länge einen Code variabler Länge aufgrund des Auftretens eines Fehlers nicht zu DCT-Koeffizienten decodieren kann, kann die Decodiervorrichtung 905 variabler Länge somit den Decodierbetrieb von einer Auffrischposition eines Byte-Ausrichtungscodes eines Scheibenanfangsblock-Codes, eines Bildanfangsblock-Codes, eines Sequenzanfangsblock-Codes oder Ähnlichem wieder aufnehmen.
  • Der Regelabschnitt 906 besitzt eine Funktion zum Berechnen einer Prozesseinheit (d. h. eine Ausgabeeinheit des Barrel-Shifters 904), beginnend mit einem Sequenzanfangsblock-Code zu einem Decodierbetrieb für DCT-Koeffizienten, wobei die Datenstruktur eines Anfangsblock-Sequenzcodes zu DCT-Koeffizienten entsprechend einem vorgegebenen, in dem Regelabschnitt 906 gespeicherten Paramter analysiert wird, und Detektieren eines Strukturfehlers.
  • Die Invers-Quantifiziervorrichtung 907 berechnet DCT-Koeffizienten jedes DCT-Blocks entsprechend einem Paar eines Nulllaufs und eines Pegels, Q Tabelle und Q Skala, welche von der Decodiervorrichtung 905 variabler Länge eingegeben werden. Wenn Q Tabelle in der Quanten Matrix Extension der Sequenzanfangsblock-Schicht oder der Bildanfangsblock-Schicht festgelegt wurde, wird Q Tabelle für die Berechnung von DCT-Koeffizienten verwendet. Wenn Q Tabelle nicht festgelegt wurde, wird der in der MPEG-Spezifikation definierte Anfangswert von Q Tabelle zur Berechnung der DCT-Koeffizienten verwendet. Q Skala wird durch Verwendung einer Tabelle erhalten, die in den MPEG-Spezifikationen entsprechend Q Skala Typ und Q Skala Code definiert ist. Der Regelabschnitt 906 weist die Tabelle auf. Q Skala Typ ist in der Bild Codierungs Extension der Bildschicht enthalten. Q Skala Code ist in der Scheibenschicht und der Makroblockschicht enthalten.
  • Die Detektionsvorrichtung 908 für elektronische Wasserzeichen detektiert ein elektronisches Wasserzeichen von DCT-Koeffizienten, welche von der Invers-Quantifizierungsvorrichtung 907 eingegeben werden. Als ein Verfahren zum Detektieren eines elektronischen Wasserzeichens durch die Detektionsvorrichtung 908 für elektronische Wasserzeichen wird ein beispielsweise in der japanischen offengelegten Patentveröffentlichung Nr. 2000-138818 oder dem japanischen Patent Nr. 3109575 (japanische offengelegte Patentveröffentlichung Nr. 10-155151) offenbartes Verfahren verwendet.
  • Die Eingangsschnittstelle 901 führt einen Quittungsaustausch mit dem Puffer 902 unter Verwendung eines Ausgabe-Erlaubnissignals durch, welches die Eingangsschnittstelle 901 zu dem Puffer 902 ausgibt, sowie eines Eingabe-Anforderungssignals, welches der Puffer 902 zu der Eingangsschnittstelle 901 ausgibt. Entsprechend führt der Vorstufenabschnitt einen Quittungsaustausch mit der Eingangsschnittstelle 901 durch. Der Puffer 902 führt einen Quittungsaustausch mit dem Video-Elementarstrom-Extraktionsschaltkreis 903 durch. Der Video-Elementarstrom-Extraktions schaltkreis 903 führt einen Quittungsaustausch mit dem Barrel-Shifter 904 durch. Der Barrel-Shifter 904 führt einen Quittungsaustausch mit der Decodiervorrichtung 905 variabler Länge durch. Die Decodiervorrichtung 905 variabler Länge führt einen Quittungsaustausch mit der Invers-Quantifiziervorrichtung 907 durch. Entsprechend einem Quittungsaustausch hält, wenn der Nachstufen-Schaltkreis nicht zur Eingab eines Signals bereit ist, der Vorstufen-Schaltkreis vorübergehend die Ausgabe eines Signals an.
  • Die Codelänge eines MPEG-Signals befindet sich im Bereich von 2 Bit bis 31 Bit. Die Codelänge eines DCT-Koeffizienten eines MPEG-Signals befindet sich im Bereich von 2 Bit bis 24 Bit. Somit können abhängig von einem Bild Codes von 4 Bit oder weniger statistisch weitergehen. Ein Eingangsstrom wird mit einer Breite von acht Bit eingegeben, und ein Barrel-Shifter wird durch einen zweimultiplen Takt angesteuert. Daher variiert, wenn Codes, deren durchschnittliche Codelänge vier Bit beträgt, weitergehen, die Menge von in dem Puffer 902 gespeicherten Codes um einen konstanten Wert. Im Gegensatz dazu steigt, wenn Codes, deren durchschnittliche Codelänge weniger als vier Bit beträgt, weitergehen, die Menge von in dem Puffer 902 gespeicherten Codes kontinuierlich an. Anders gesagt, wenn Codes, deren Codelänge je weniger als vier Bit beträgt, weitergehen, steigt die Belegungsrate eines Codes variabler Länge in dem Puffer 902 an. Um somit eine Überfüllung des Puffers 902 zu verhindern, wird (1) die Speicherkapazität des Puffers 902 erhöht, führt (2) die Eingangsschnittstelle 901 einen Quittungsaustausch mit dem Puffer 902 durch und führt der Vorstufen-Abschnitt einen Quittungsaustausch mit der Schnittstelle 901 durch, um den von dem Vorstufenabschnitt zu der Eingangsschnittstelle gelieferten Strom temporär anzuhalten, oder wird (3) die Frequenz des Treibertaktes des Barrel-Shifters angehoben.
  • Wird jedoch die Speicherkapazität des Puffers 902 erhöht, wird der Schaltkreisumfang groß. Folglich erhöhen sich die Kosten der Vorrichtung. Zusätzlich sollte, um temporär den von dem Vorstu fenabschnitt zu der Eingangsschnittstelle gelieferten Strom anzuhalten, die entsprechende Funktion im Vorstufenabschnitt verworfen werden. Somit ist ein zusätzlicher Mechanismus oder ähnliches erforderlich. Folglich erhöhen sich die Kosten der Vorrichtung. Zusätzlich wird es, wenn die Frequenz des Treibertaktes des Barrel-Shifters erhöht wird, schwierig, die zeitliche Steuerung des Barrel-Shifters und der peripheren Schaltkreise zu entwerfen. Folglich erhöhen sich die Kosten der Vorrichtung. Eine Konfiguration eines Puffers, eines Überlaufdetektors und einer Decodiervorrichtung variabler Länge (VLD), wodurch der Überlaufdetektor die Verarbeitung der VLD während Puffer-Überlaufbedingungen ordentlich schließt, ist aus der JP-A-07 245760 bekannt.
  • Die US-A-5,828,421 beschreibt einen Bild-in-Bild-Decoder. Ein verringerter Auflösungsdecoder für ein einzubringendes Bild weist einen Preparser auf, um den Speicher und Verarbeitungsanforderungen zu verringern, und arbeitet parallel zu einem Primärdecoder.
  • Zusammenfassung der Erfindung
  • Die vorliegende Erfindung wird von dem vorstehenden Standpunkt aus gemacht. Ein Ziel der vorliegenden Erfindung ist es, ein System und ein Verfahren zum Verhindern einer Unterbrechung einer Eingabe von Codes variabler Länge selbst dann, wenn Codes kurzer Länge weitergehen, ohne die Notwendigkeit einer Vergrößerung des Umfangs des Schaltkreises zu schaffen.
  • Dieses Ziel wird durch die Merkmale von Anspruch 1 bzw. 9 erreicht. Vorteilhafte Weiterentwicklungen können den Unteransprüchen entnommen werden.
  • Wenn ein bewegtes Bild aus einem MPEG-Signal wiedergegeben wird, ist es von einem Standpunkt hoher Qualität erwünscht, so viel Video-Information und Audio-Information wie möglich aus dem MPEG-Signal zu erhalten. Wenn somit ein bewegtes Bild wiederge geben wird, werden eine Fehlerkorrektur, eine Fehlerdetektion und eine Fehlerverbergung durchgeführt. Zusätzlich wird, selbst wenn sich ein Fehler ereignet, dieser unverzüglich an der Ausbreitung gehindert. Somit ist es von hoher Qualität.
  • Andererseits ist es in einer Vorrichtung zur Detektion elektronischer Wasserzeichen, welche ein elektronisches Wasserzeichen aus einem MPEG-Signal detektiert, nicht nötig, ein bewegtes Bild und einen Ton von hoher Qualität wiederzugeben. Zusätzlich ist es zur Detektion eines elektronischen Wasserzeichens aus einem MPEG-Signal nicht nötig, die Daten aller DCT-Blöcke eines Rahmens wiederherzustellen. Selbst wenn mehrere Prozent oder mehrere zehn Prozent aller DCT-Blöcke eines Rahmens nicht wiederhergestellt werden können, kann ein elektronisches Wasserzeichen mit dem Rest der DCT-Blöcke, welche wiederhergestellt wurden, detektiert werden. In einem Extremfall, wenn ein elektronisches Wasserzeichen nicht mit einer vorbestimmten Anzahl von DCT-Blöcken detektiert werden kann, kann das elektronische Wasserzeichen unter Verwendung der nächsten Rahmen detektiert werden.
  • Erfindungsgemäß wird ein Nicht-Fehler-Abschnitt des MPEG-Signals ebenfalls verworfen, um eine Unterbrechung einer Eingabe von Codes variabler Länge aufgrund der Annahme zu verhindern, dass eine Vorrichtung zur Detektion elektronischer Wasserzeichen, welche ein elektronisches Wasserzeichen aus einem MPEG-Signal detektiert, verwendet wird.
  • Gemäß einem ersten Aspekt ist ein System zum Verhindern einer Unterbrechung einer Eingabe von Codes variabler Länge bereitgestellt, wobei das System Folgendes aufweist: eine Decodiervorrichtung variabler Länge zum Decodieren der Codes variabler Länge; einen Puffer zum Zwischenspeichern der Codes variabler Länge, die an die Decodiervorrichtung variabler Länge geliefert werden sollen; eine Detektionsvorrichtung zum Detektieren, ob eine Belegungsrate der Codes variabler Länge im Puffer gestiegen ist oder nicht; und eine Verwerfvorrichtung zum Verwerfen der an den Puffer zu liefernden Codes variabler Länge, wenn die Belegungsrate der Codes variabler Länge im Puffer gestiegen ist.
  • In dem System gemäß dem ersten Aspekt kann das System mit einem MPEG-Signal arbeiten (MPEG = Motion Picture Experts Group), und das System kann weiter Folgendes aufweisen: eine Elementarstrom-Extraktionsvorrichtung, welche zwischen dem Puffer und der Decodiervorrichtung variabler Länge angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  • In dem System gemäß dem ersten Aspekt kann das System mit einem MPEG-Signal arbeiten (MPEG = Motion Picture Experts Group), und das System kann weiter Foglendes aufweisen: eine Elementarstrom-Extraktionsvorrichtung, welche stromaufwärts der Verwerfvorrichtung angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  • Gemäß einem zweiten Aspekt wird ein System zum Verhindern einer Unterbrechung einer Eingabe von Codes variabler Länge bereitgestellt, wobei das System Folgendes aufweist: eine Decodiervorrichtung variabler Länge zum Decodieren der Codes variabler Länge; einen Puffer zum Zwischenspeichern der Codes variabler Länge, die an die Decodiervorrichtung geliefert werden sollen; eine Detektionsvorrichtung zum Detektieren, ob eine Belegungsrate der Codes variabler Länge im Puffer gestiegen ist oder nicht; und eine Auslassvorrichtung zum Verlassen des Decodierbetriebs, wenn die Belegungsrate der Codes variabler Länge im Puffer gestiegen ist.
  • In dem System gemäß dem zweiten Aspekt kann die Auslassvorrichtung die Decodiervorrichtung variabler Länge dazu veranlassen, den Decodierbetrieb zu verlassen, bis die Decodiervorrichtung variabler Länge einen vorgegebenen Code detektiert.
  • In dem System gemäß dem zweiten Aspekt kann der vorgegebene Code ein Code an einer Auffrischposition eines ursprünglichen Signals sein.
  • In dem System gemäß dem zweiten Aspekt kann der Code an der Auffrischposition des ursprünglichen Signals ein byteausgerichteter Code sein.
  • In dem System gemäß dem zweiten Aspekt kann das System mit einem MPEG-Signal (MPEG = Motion Picture Experts Group) arbeiten, und das System kann weiter Folgendes aufweisen eine Elementarstrom-Extraktionsvorrichtung, welche stromaufwärts des Puffers angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  • Gemäß einem dritten Aspekt ist ein System zum Verhindern einer Unterbrechung einer Eingabe eines Codes variabler Länge bereitgestellt, wobei das System Folgendes aufweist: eine Decodiervorrichtung variabler Länge zum Decodieren der Codes variabler Länge; einen Puffer zum Zwischenspeichern der Codes variabler Länge, die an die Decodiervorrichtung variabler Länge geliefert werden sollen; eine Codepositions-Detektionsvorrichtung zum Detektieren, ob ein augenblicklich von der Decodiervorrichtung variabler Länge decodierter Code variabler Länge eine Position aufweist, die von einer Auffrischposition eines ursprünglichen Signals in einer vorbestimmten Entfernung angeordnet ist oder nicht; eine erste Belegungsrate-Detektionsvorrichtung zum Detektieren, ob eine Belegungsrate der Codes variabler Länge im Puffer gestiegen ist oder nicht, wenn das durch die Codepositions-Detektionsvorrichtung detektierte Ergebnis darstellt, dass der im Moment durch die Decodiervorrichtung variabler Länge decodierte Code variabler Länge die Position aufweist, die von der Auffrischposition um den vorgegebenen Abstand entfernt angeordnet ist, und eine Auslassvorrichtung, um die Decodiervorrichtung variabler Länge zum Verlassen des Decodierbetriebs zu veranlassen, wenn das durch die Codepositions-Detektionsvorrichtung detektierte Ergebnis darstellt, dass der augenblicklich durch die Decodiervorrichtung variabler Länge decodierte Code variabler Länge um den vorgegebenen Abstand von der Auffrischposition entfernt angeordnet ist, und das durch die erste Bele gungsrate-Detektionsvorrichtung detektierte Ergebnis darstellt, dass die Belegungsrate der Codes variabler Länge im Puffer gestiegen ist.
  • In dem System gemäß dem dritten Aspekt kann die Auslassvorrichtung bewirken, dass die Decodiervorrichtung variabler Länge den Decodierbetrieb verlässt, bis die Decodiervorrichtung variabler Länge einen vorgegebenen Code detektiert.
  • In dem System gemäß dem dritten Aspekt kann der vorgegebene Code ein Code an einer Auffrischposition eines ursprünglichen Signals sein.
  • In dem System gemäß dem dritten Aspekt kann der Code an der Auffrischposition des ursprünglichen Signals ein byteausgerichteter Code sein.
  • Das System gemäß dem dritten Aspekt kann weiter Folgendes aufweisen: eine zweite Belegungsrate-Detektionsvorrichtung zum Detektieren, ob die Belegungsrate der Codes variabler Länge im Puffer gestiegen ist oder nicht, ungeachtet dessen, ob das durch die Codepositions-Detektionsvorrichtung detektierte Ergebnis darstellt, dass der augenblicklich durch die Decodiervorrichtung variabler Länge decodierte Code variabler Länge die Position aufweist, die von der Auffrischposition des ursprünglichen Signals um den vorgegebenen Abstand entfernt angeordnet ist; und eine Verwerfvorrichtung zum Verwerfen der an den Puffer zu liefernden Codes variabler Länge, wenn das von der zweiten Belegungsrate-Detektionsvorrichtung detektierte Ergebnis darstellt, dass die Belegungsrate der Codes variabler Länge im Puffer gestiegen ist.
  • In dem System gemäß dem dritten Aspekt kann das System mit einem MPEG-Signal (MPEG = Motion Picture Experts Group) arbeiten, und das System kann weiter Folgendes aufweisen: eine Elementarstrom-Extraktionsvorrichtung, welche stromaufwärts von der Verwerfvor richtung angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  • In dem System gemäß dem dritten Aspekt kann das System mit einem MPEG-Signal (MPEG = Motion Picture Experts Group) arbeiten, und das System kann weiter Folgendes aufweisen: eine Elementarstrom-Extraktionsvorrichtung, welche stromaufwärts von dem Puffer angeordnet ist, zum Extrahieren eines in MPEG-Standard defninerten Elementarstroms.
  • Diese und andere Ziele, Merkmale und Vorteil der vorliegenden Erfindung werden offensichtlicher im Licht der nachfolgenden ausführlichen Beschreibung der bestmöglichen Ausführungsform davon, wie in den anliegenden Zeichnungen dargestellt.
  • Kurzbeschreibung der Zeichnungen
  • 1 ist ein Blockdiagramm, welches den Aufbau eines Schaltkreises zeigt, der ein MPEG-Signal zu DCT-Koeffizienten decodiert und ein elektronisches Wasserzeichen von den erhaltenen DCT-Koeffizienten gemäß dem Stand der Technik detektiert;
  • 2 ist eine Tabelle, welche Codes zeigt, deren Codelänge weniger als vier Bit beträgt, wobei jeder dem MPEG-Standard entspricht;
  • 3 ist eine Tabelle, welche elektronische Wasserzeichen zeigt, deren Gesamt-Codelänge je weniger als acht Bit beträgt und die in zwei Codes eingebracht werden;
  • 4 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das eine Unterbrechung einer Eingabe von Codes variabler Länge gemäß einem ersten Beispiel verhindert;
  • 5 ist ein Blockdiagramm, welches den Aufbau eines Verwerfabschnitts gemäß dem ersten Beispiel zeigt;
  • 6 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das eine Unterbrechung einer Eingabe von Codes variabler Länge gemäß einem zweiten Beispiel verhindert;
  • 7 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das eine Unterbrechung einer Eingabe von Codes variabler Länge gemäß einer ersten erfindungsgemäßen Ausführungsform verhindert;
  • 8 ist ein Blockdiagramm, welches den Aufbau eines Regelabschnitts gemäß der ersten erfindungsgemäßen Ausführungsform zeigt;
  • 9 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das eine Unterbrechung einer Eingabe von Codes variabler Länge gemäß einer zweiten erfindungsgemäßen Ausführungsform verhindert; und
  • 10 ist ein Blockdiagramm, welches den Aufbau eines Regelabschnitts gemäß der zweiten erfindungsgemäßen Ausführungsform zeigt.
  • Beschreibung bevorzugter Ausführungsformen und Beispiele
  • Vor der Beschreibung von Ausführungsformen und Beispielen der vorliegenden Erfindung wird ein Verfahren zum Einbringen eines elektronischen Wasserzeichens in einen MPEG-Code ohne Änderung der Gesamt-Codelänge in einem begrenzten Bereich erläutert. Insbesondere wird ein praktisches Verfahren zum Einbringen eines elektronischen Wasserzeichens ohne irgend eine Änderung der Gesamt-Codelänge zweier Codes beschrieben.
  • Als Nächstes sind mit Bezug auf 2 die Codes, um die es in der vorliegenden Erfindung geht, lediglich die folgenden Codes, wobei jeder eine Länge von weniger als vier Bit aufweist:
    • (1) "10", welches das EOB (End of Block, Blockende), definiert in einer Tabelle von Codes variabler Länge, sowohl für Nicht-Intrarahmenkoeffizienten als auch Intrarahmenkoeffizienten im Falle Intra_vlc_format = 0 (d.h. für beide Koeffizienten im Fall Makroblock_intra = 0 und Koeffizienten im Fall Makroblock_intra = 1 und Intra_vlc_format = 0) ist,
    • (2) "1s" (wobei s ein Zeichen darstellt), welches der Code für eine DC-Komponente mit einem Pegel von 1, definiert in der Tabelle von Codes variabler Länge, sowohl für Nicht-Intrarahmenkoeffizienten als auch Intrarahmenkoeffizienten im Falle Intra vlc format = 0 (d.h. für beide Koeffizienten im Fall Makroblock_intra = 0 und Koeffizienten im Fall Makroblock_intra = 1 und Intra_vlc_format = 0) ist,
    • (2) "11s" (wobei s ein Zeichen darstellt), welches der Code für (Null Lauflänge, Pegel) = (0,1), definiert in der Tabelle von Codes variabler Länge, sowohl für Nicht-Intrarahmenkoeffizienten als auch Intrarahmenkoeffizienten im Falle Intra vlc format = 0 (d.h. für beide Koeffizienten im Fall Makroblock_intra = 0 und Koeffizienten im Fall Makroblock_intra = 1 und Intra_vlc_format = 0) ist, und
    • (4) "10s" (wobei s ein Zeichen darstellt), welches der Code für (Null Lauflänge, Pegel) = (0,1), definiert in der Tabelle von Codes variabler Länge, für Intrarahmenkoeffizienten im Falle Intra_vlc_format = 1 (d.h. für Koeffizienten im Fall Makroblock_intra = 1 und Intra_vlc_format = 0) ist.
  • Da EOB nicht verändert werden kann, kann es nicht in einen anderen Code umgewandelt werden. "1s" entspricht einer DC-Komponente. Wenn eine DC-Komponente verändert wird, ist die Bildverschlechterung auffällig. Somit ist der Fall, dass "1s" in einen anderen Code geändert wird, selten. Folglich kann in Betracht gezogen werden, dass Codes, die so konvertiert werden, dass ein elektronisches Wasserzeichen in sie eingebracht wird, lediglich "11s" und "10s" sind.
  • Andererseits ist ein kontroverser Fall für die vorliegende Erfindung der Fall, dass Codes, deren Länge weniger als vier Bit beträgt, weitergehen. Somit ist es ausreichend, den Fall zu betrachten, dass die Gesamt-Codelänge von zwei Codes weniger als acht Bit beträgt. Der Grund dafür ist, dass wenn die Gesamt-Codelänge von zwei Codes acht Bit oder mehr beträgt, die Belegungsrate des Codes variabler Länge im Puffer nicht steigt.
  • Wenn wir die Tabelle von Codes variabler Länge sowohl nach Nicht-Intrarahmenkoeffizienten als auch Intrarahmenkoeffizienten im Fall Intra vlc format = 0 nach Codes durchsuchen, welche zu einer Gesamt-Codelänge von weniger als acht Bit führen, wenn sie mit dem Code "11s" kombiniert werden, wird nur ein Code "011s" für (Null Lauflänge, Pegel) = (1,1) gefunden. Somit kann nur dann, wenn "11s011s" in "011s11s" oder wenn "011s11s in "11s011s" umgewandelt wird, ein elektronisches Wasserzeichen eingebracht werden.
  • Wenn wir die Tabelle von Codes variabler Länge für einen Intrarahmenkoeffizienten im Fall Intra_vlc_format = 1 nach Codes durchsuchen, welche zu einer Gesamt-Codelänge von weniger als acht Bit führen, wenn sie mit dem Code "10s" kombiniert werden, werden nur ein Code "010s" für (Null Lauflänge, Pegel) = (0,2) und ein Code "010s" für (Null Lauflänge, Pegel) = (1,1) erhalten. Somit kann nur dann, wenn "10s110s" in "110s10s" umgewandelt wird, "110s10s" in "10s110s umgewandelt wird, "10s010s" in "010s110s" umgewandelt wird, oder "010s10s" in "10s010s" umgewandelt wird, ein elektronisches Wasserzeichen eingebracht werden.
  • Die vorstehenden beiden Angelegenheiten sind in 3 tabellarisiert. 3 zeigt, dass ein elektronisches Wasserzeichen, welches sowohl eine Bedingung erfüllt, dass es die Codelänge von zwei Codes nicht ändert, als auch eine Bedingung, dass die Codelänge von zwei Codes weniger als acht Bit beträgt, in nur sechs Arten von Zweicodesequenzen "011s11s", "11s011s", "110s10s", "10s110s", "010s10s" und "10s010s" eingebracht werden kann. Andererseits existieren zahlreiche elektronische Wasserzeichen, welche Bedingungen erfüllen, dass die Codelänge von zwei Codes nicht verändert wird und die Codelänge von zwei Codes acht Bit oder mehr beträgt. Somit werden die meisten elektronischen Wasserzeichen, welche die Codelänge von zwei Codes nicht verändern, in Zweicodesequenzen eingebracht, deren Gesamt-Codelänge je acht Bit oder mehr beträgt. Anders gesagt werden die meisten elektronischen Wasserzeichen, welche die Codelänge von zwei Codes nicht verändern, nicht in Zweicodesequenzen eingebracht, deren Gesamt-Codelänge je weniger als acht Bit beträgt.
  • Ein elektronisches Wasserzeichen wird statistisch erfasst, indem DCT-Koeffizienten zahlreicher DCT-Blöcke eines oder mehrerer Rahmen geprüft werden. Somit kann, selbst wenn DCT-Koeffizienten eines Teils der DCT-Blöcke verloren sind, ein elektronisches Wasserzeichen erfasst werden. Folglich beeinflussen, nachdem zwei Codesequenzen, deren Codelänge je acht Bit beträgt, lokal stattfinden, selbst wenn die nachfolgenden DCT-Koeffizienten nicht wiedergegeben werden können, diese die Detektion eines elektronischen Wasserzeichens nicht sehr. Insbesondere besteht, nachdem Zweicodesequenzen, deren Codelänge je weniger als acht Bit beträgt, lokal stattfinden, eine Möglichkeit, dass Zweicodesequenzen, deren Codelänge je weniger als acht Bit beträgt, jeweils stattfinden. Somit beeinflussen, nachdem Zweicodesequenzen, deren Codelänge je weniger als acht Bit beträgt, lokal stattfinden, selbst wenn die nachfolgenden DCT-Koeffizienten nicht wiedergegeben werden können, diese die Detektion eines elektronischen Wasserzeichens nicht sehr.
  • Als Nächstes werden mit Bezug auf die anliegenden Zeichnungen Ausführungsformen und Beispiele der vorliegenden Erfindung beschrieben.
  • [Erstes Beispiel]
  • 4 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das die Unterbrechung einer Eingabe von Codes variabler Länge gemäß einem ersten Beispiel verhindert.
  • Mit Bezug auf 4 weist en System, welches die Unterbrechung einer Eingabe von Codes variabler Länge entsprechend der ersten Ausführungsform verhindert, eine Eingangsschnittstelle 101A, einen Verwerfabschnitt 121A, einen Puffer 102A, eine Video-Elementarstrom-Extraktionsvorrichtung 103A, einen Barrel-Shifter oder eine Schiebelogikschaltung 103A, eine Decodiervorrichung 105A variabler Länge, einen Regelabschnitt 106A, eine Invers-Quantifiziervorrichtung 107A, sowie eine Detektionsvorrichtung 108A für elektronische Wasserzeichen auf.
  • Da die Video-Elementarstrom-Extraktionsvorrichtung 103A, der Barrel-Shifter 104A, die Decodiervorrichtung 105A variabler Länge, der Regelabschnitt 106A, die Invers-Quantifiziervorrichtung 107A und die Detektionsvorrichtung 108A für elektronische Wasserzeichen, die in 4 gezeigt sind, die gleichen sind wie der Video-Elementarstrom Extraktionsschaltkreis 903, der Barrel-Shifter 904, die Decodiervorrichtung 905 variabler Länge, der Regelabschnitt 906, die Invers-Quantifiziervorrichtung 907 und die Detektionsvorrichtung 908 für elektronische Wasserzeichen, welche in 1 gezeigt sind, wird auf ihre Beschreibung verzichtet.
  • Der Puffer 102A weist mindestens die gleiche Funktion auf wie der Puffer 902. Zur maximalen Unterdrückung der Herstellungskosten des Puffers 102A beträgt die Speicherkapazität des Puffers 102A beispielsweise nur mehre zehn Byte bis mehrere tausend Byte. Der Puffer 102A detektiert, ob die Belegungsrate eines Codes variabler Länge im Puffer 102A einen vorgegebenen Schwellenwert überschreitet oder nicht (beispielsweise 87,5% (=1 – 1/8), 93,8% (=1 – 1/16), 96,9% (=1 – 1/32) oder 100%), um zu detektieren, ob die Belegungsrate des Codes variabler Länge im Puffer 102A gestiegen ist oder nicht. Wenn die Belegungsrate der Codes variabler Länge im Puffer 102A gestiegen ist (d.h. die Bele gungsrate der Codes variabler Länge im Puffer 102A übersteigt einen vorgegebenen Schwellenwert), so gibt der Puffer 102A an den Verwerfabschnitt 121A ein Puffer-Zustandsignal aus, welches darstelt, dass der Puffer voll ist.
  • Wie in 5 gezeigt, weist der Verwerfabschnitt 121A einen Puffer-Belegungsrate-Detektionsabschnitt 121A-1 und einen Verwerf-Kernabschnitt 121A-2 auf. Wenn der Puffer-Belegungsrate-Detektionsabschnitt 121A-1 vom Puffer 102A das Puffer-Zustandsignal empfängt, das darstellt, dass der Puffer voll ist, verwirft der Verwerf-Kernabschnitt 121A-2 eine vorgegebene Anzahl von Bytes (einschließlich Codes variabler Länge) des Stromes. Alternativ beginnen, wenn das vom Puffer 102A eingegebene Puffer-Zustandsignal darstellt, dass der Puffer voll ist, der Puffer-Belegungsrate-Detektionsabschnitt 121A-1 und der Verwerf-Kernabschnitt 121A-2 des Verwerfabschnitts 121A mit dem Verwerfen jedes Bytes des Stromes, bis das Signal darstellt, dass der Puffer nicht voll ist. Alternativ kann, vorausgesetzt das Puffer-Zustandsignal stellt dar, dass der Puffer normal ist, wenn die Belegungsrate niedriger als ein Schwellenwert wird (beispielsweise 75% (=1 – 1/4) gegenüber den obigen 87,5%, 87,5 gegenüber den obigen 93,8%, 87,5% gegenüber den obigen 96,9% oder 93,8% gegenüber den obigen 100%), welcher niedriger ist als der Schwellenwert, der anzeigt, dass der Puffer voll ist, der Verwerfabschnitt 121A mit dem Verwerfen jedes Bytes des Stromes beginnen, bis das Puffer-Zustandsignal den Puffer-Normalzustand darstellt, und wenn das Puffer-Zustandsignal den Puffer-Normalzustand darstellt, hält der Verwerfabschnitt 121A das Verwerfen jedes Bytes des Stromes an.
  • Somit kann gemäß dem ersten Beispiel selbst dann, wenn die Speicherkapazität des Puffers 102A klein ist, eine Überfüllung des Puffers 102A verhindert werden, ohne dass eine Eingabe des Stroms vom Vorstufenabschnitt unterbrochen wird. Das Eingabe-Erlaubnissignal, welches die Eingangsschnittstelle 101A an den Vorstufenabschnitt ausgibt, stellt immer dar, dass die Eingabe erlaubt ist.
  • In Abschnitten vor und nach dem Punkt, an dem der Strom verworfen wird, geht der Code variabler Länge weiter. Daher kann die Decodiervorrichtung 105A keine Decodierung von dem Code durchführen, welcher am unterbrochenen Abschnitt endet. Wie der Regelabschnitt 906 kann der Decodiervorgang jedoch unter der Regelung des Regelabschnitts 106A von einer Auffrischposition eines byteausgerichteten Codes eines Scheiben-Anfangsblockcodes oder eines Bild-Anfangsblockcodes oder eines Sequenz-Anfangsblockcodes wieder aufgenommen werden. Somit wird das Ziel, welches darin besteht, ein elektronisches Wasserzeichen zu detektieren, durch die Verwerfung kaum beeinträchtigt, da keine Katastrophe zur Detektion des elektronischen Wasserzeichens geführt wird.
  • [Zweites Beispiel]
  • 6 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das die Unterbrechung einer Eingabe von Codes variabler Länge gemäß einem zweiten Beispiel verhindert.
  • Mit Bezug auf 6 weist das System gemäß dem zweiten Beispiel eine Eingangsschnittstelle 101B, eine Video-Elementarstrom-Extraktionsvorrichtung 103B, einen Verwerfabschnitt 121B, einen Puffer 102B, einen Barrel-Shifter oder eine Schiebelogikschaltung 104B, eine Decodiervorrichtung 105B variabler Länge, einen Regelabschnitt 106B, eine Invers-Quantifiziervorrichtung 107B und eine Detektionsvorrichtung 108B für elektronische Wasserzeichen auf.
  • Gemäß dem zweiten Beispiel wird auf die Video-Elementarstrom-Extraktionsvorrichtung 103A, welche in dem System gemäß dem ersten Beispiel zwischen dem Puffer 102A und dem Barrel-Shifter 104A angeordnet ist, verzichtet. Die Video-Elementarstrom-Extraktionsvorrichtung 103B, welche der Video-Elementarstrom-Extraktionsvorrichtung 103A entspricht, ist zwischen der Eingangsschnittstelle 101B und dem Verwerfabschnitt 121B angeordnet.
  • Da die Eingangsschnittstelle 101B, der Puffer 102B, die Video-Elementarstrom-Extraktionsvorrichtung 103B, der Barrel-Shifter 104B, die Decodiervorrichtung 105B variabler Länge, der Regelabschnitt 106B, die Invers-Quantifiziervorrichtung 107B, sowie die Detektionsvorrichtung 108B für elektronische Wasserzeichen die gleichen sind wie die Eingangsschnittstelle 101A, der Puffer 102A, die Video-Elementarstrom-Extraktionsvorrichtung 103A, der Barrel-Shifter 104A, die Decodiervorrichtung 105A variabler Länge, der Regelabschnitt 106A, die Invers-Quantifiziervorrichtung 107A und die Detektionsvorrichtung 108A für elektronische Wasserzeichen, wird auf eine Beschreibung davon verzichtet.
  • Aufbau und Funktion des Verwerfabschnitts 121B entsprechen denen des Verwerfabschnitts 121A gemäß dem ersten Beispiel mit Ausnahme der folgenden Punkte. Somit wird auf die Beschreibung der ähnlichen Abschnitte verzichtet.
  • Gemäß dem ersten Beispiel gibt die Video-Elementarstrom-Extraktionsvorrichtung 103A ein gültiges Flag an den Barrel-Shifter 104A zusammen mit einem Strom aus. Gemäß dem ersten Beispiel gibt der Barrel-Shifter 104A nur einen Video-Elementarstrom des Eingangsstroms entsprechend einem gültigen Flag ein. Im Gegensatz dazu gibt gemäß dem zweiten Beispiel die Video-Elementarstrom-Extraktionsvorrichtung 103B ein gültiges Flag an den Verwerfabschnitt 121B zusammen mit einem Eingangsstrom aus. Der Verwerfabschnitt 121B gibt nur den Video-Elementarstrom des Eingangsstroms entsprechend dem gültigen Flag ein. Somit sind gemäß dem ersten Beispiel die Ausgangssignale des Verwerfabschnitts 121A und des Puffers 102A Ströme, während gemäß dem zweiten Beispiel die Ausgangssignale des Verwerfabschnitts 121B und des Puffers 102B Video-Elementarströme sind. Zusätzlich speichert gemäß dem ersten Beispiel der Puffer 102A temporär andere Abschnitte, welche kein Video-Elementarstrom sind, des Eingangsstroms, wie auch den Video-Elementarstrom, während gemäß dem zweiten Beispiel der Puffer 102B nur einen Video-Elementarstrom des Eingangsstroms temporär speichert. Anders gesagt speichert der Puffer 102B keine anderen Abschnitte, welche kein Video-Elementarstrom des Eingangsstroms sind. Somit neigt die Belegungsrate eines Codes variabler Länge im Puffer 102B im Vergleich zum Puffer 102A nicht dazu, zu steigen.
  • Gemäß dem ersten Beispiel wird, da der Verwerfabschnitt 121A stromaufwärts der Video-Elementarstrom-Extraktionsvorrichtung 103A angeordnet ist, wenn der Verwerfabschnitt 121A jedes Byte des Stroms verwirft, der Eingangsstrom der Video-Elementarstrom-Extraktionsvorrichtung 103A unterbrochen. Vor der Extraktion des Video-Elementarstroms muss die Video-Elementarstrom-Extraktionsvorrichtung 103A somit den Betrieb von Bestimmen, ob der Eingangsstrom ein Transportstrom oder ein Programmstrom ist, an dem unterbrochenen Punkt wieder aufnehmen. Somit besteht die Möglichkeit, dass die Video-Elementarstrom-Extraktionsvorrichtung 103A mehr Bytes verwirft als der Verwerfabschnitt 121A. Im Gegensatz dazu kann gemäß dem zweiten Beispiel, da der Verwerfabschnitt 121B stromabwärts der Video-Elementarstrom-Extraktionsvorrichtung 103B angeordnet ist, eine derartige Möglichkeit vermieden werden. Somit ist gemäß dem zweiten Beispiel der Einfluss auf die Detektion des elektronischen Wasserzeichens geringer als gemäß der ersten Ausführungsform.
  • [Erste Ausführungsform]
  • 7 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das die Unterbrechung einer Eingabe von Codes variabler Länge gemäß einer ersten Ausführungsform der vorliegenden Erfindung verhindert.
  • Mit Bezug auf 7 weist das System gemäß der ersten Ausführungsform eine Eingangsschnittstelle 101C, eine Video-Elementarstrom-Extraktionsvorrichtung 103C, einen Puffer 102C, einen Barrel-Shifter oder eine Schiebelogikschaltung 104C, eine Decodiervorrichtung 105C variabler Länge, einen Regelabschnitt 106C, eine Invers-Quantifiziervorrichtung 107C, sowie eine Detektionsvorrichtung 108C für elektronische Wasserzeichen auf.
  • Das System gemäß der ersten Ausführungsform weist keinen Verwerfabschnitt auf.
  • Gemäß der ersten Ausführungsform verlässt die Decodiervorrichtung 105C variabler Länge den Decodierbetrieb für einen Code variabler Länge eines Video-Elementarstroms anstatt dass der Verwerfabschnitt einen Teil des Stroms verwirft.
  • Da die Eingangsschnittstelle 101C, die Video-Elementarstrom-Extraktionsvorrichtung 103C, die Invers-Quantifiziervorrichtung 107C und die Detektionsvorrichtung 108C für elektronische Wasserzeichen gemäß der ersten Ausführungsform die gleichen sind wie die Eingangsschnittstelle 101B, die Video-Elementarstrom-Extraktionsvorrichtung 103B, die Invers-Quantifiziervorrichtung 107B und die Detektionsvorrichtung 108B für elektronische Wasserzeichen gemäß dem zweiten Beispiel, wird auf ihre Beschreibung verzichtet.
  • Der Puffer 102C, der Barrel-Shifter 104C, die Decodiervorrichtung 105C variabler Länge und der Regelabschnitt 106C weisen folgende Aufbauten und Funktionen zusätzlich zu den Aufbauten und Funktionen des Puffers 102B, des Barrel-Shifters 104B, der Decodiervorrichtung 105B variabler Länge und des Regelabschnitts 106B auf.
  • Da der Puffer 102C unmittelbar stromabwärts der Video-Elementarstrom-Extraktionsvorrichtung 103C angeordnet ist, werden ein Strom und ein gültiges Flag von der Video-Elementarstrom-Extraktionsvorrichtung 103C an den Puffer 102C eingegeben. Nur Bytes, welche dem gültigen Flag entsprechen, das aktiv darstellt (d.h. ein Video-Elementarstrom) werden eingegeben.
  • Mit Bezug auf 8 weist der Regelabschnitt 106C einen Decodierbetrieb-Regelabschnitt 106C-1 variabler Länge, einen Puffer-Belegungsrate-Detektionsabschnitt 106C-3 und einen Decodierbetrieb-Auslassbefehlabschnitt 106C-4 auf. Der Decodierbetrieb-Regelabschnitt 106C-1 variabler Länge gibt eine decodierte Codelänge und ein Fehlersignal von der Decodiervorrichtung 105C variabler Länge ein. Zusätzlich gibt der Decodierbetrieb-Regelabschnitt 106C-1 variabler Länge ein Decodierbetrieb-Auslassbefehlssignal von dem Decodierbetrieb-Auslassbefehlabschnitt 106C-4 ein. Entsprechend dieser Signale bestimmt der Decodierbetrieb-Regelabschnitt 106C-1 variabler Länge die Werte eines Schiebemengen-Regelsignals und eines Byteausrichtungs-Befehlssignals entsprechend dieser Signale und gibt die bestimmten Ergebnisse an den Barrel-Shifter 104C aus. Der Puffer-Belegungsrate-Detektionsabschnitt 106C-3 gibt ein Pufferzustandssignal von dem Puffer 102C ein. Wenn der Puffer-Belegungsrate-Detektionsabschnitt 106C-3 detektiert hat, dass das Pufferzustandssignal darstellt, dass der Puffer voll ist, veranlasst der Decodierbetrieb-Auslassbefehlabschnitt 106C-4 durch den Decodierbetrieb-Regelabschnitt 106C-1 variabler Länge, dass der Barrel-Shifter 104C weiter eine byteausgerichtete Achtbitverschiebung durchführt. Zusätzlich veranlasst der Decodierbetrieb-Auslassbefehlabschnitt 106C-4, dass die Decodiervorrichtung 105C variabler Länge den Decodierbetrieb für den Code variabler Länge verlässt, bis ein byteausgerichteter Code variabler Länge an einer Auffrischposition eines Scheiben-Anfangsblockcodes, eines Bild-Anfangsblockcodes, eines Sequenz-Anfangsblockcodes oder Ähnlichem detektiert wird. Während der Decodierbetrieb also verlassen wird, liest der Barrel-Shifter 104C kontinuierlich eine Bytesequenz aus dem Puffer 102C aus. Folglich kann die Belegungsrate des Codes variabler Länge im Puffer 102C aktiv verringert werden. Wenn die Decodiervorrichtung 105C variabler Länge einen byteausgerichteten Code variabler Länge detektiert, nehmen der Barrel-Shifter 104C, die Decodiervorrichtung 105C und der Regelabschnitt 106C ihren normalen Betrieb wieder auf.
  • [Zweite Ausführungsform]
  • Gemäß dem zweiten Beispiel weicht ein in einem Video-Elementarstrom verworfener Abschnitt in einer im MPEG-Standard definierten Scheibe in der Wahrscheinlichkeit nicht ab. Somit besteht eine gleiche Wahrscheinlichkeit, dass irgend ein Abschnitt einer Scheibe verworfen wird. Somit kann ein annähernd beginnender Abschnitt einer Scheibe verworfen werden. Wenn ein Abschnitt einer Scheibe verworfen wird, kann der Decodierbetrieb an der Position eines Bild-Anfangsblockcodes oder eines Sequenz-Anfangsblockcodes wieder aufgenommen werden. In vielen Fällen kann jedoch der Decodierbetrieb an der Position eines Scheiben-Anfangsblockcodes der nächsten Scheibe wieder aufgenommen werden. Gemäß dem zweiten Beispiel besteht somit die Möglichkeit, dass ein annähernd beginnender Abschnitt einer Scheibe verworfen wird und DCT-Blöcke von dem annähernd beginnenden Abschnit bis zum Ende der Scheibe nicht decodiert werden. In diesem Fall ist die Anzahl der DCT-Blöcke, die nicht decodiert werden, verglichen mit dem Fall, das ein annähernder Endabschnitt einer Scheibe verworfen wird und DCT-Blöcke von dem annähernden Endabschnitt bis zum Endabschnitt nicht decodiert werden, groß. Somit ist gemäß der zweiten Ausführungsform der Einfluss auf die Detektion eines elektronischen Wasserzeichens groß.
  • Zusätzlich weicht gemäß der ersten Ausführungsform die Position, an welcher der Decodierbetrieb für einen Code variabler Länge verlassen wird, in einer Scheibe in der Wahrscheinlichkeit nicht ab. Anders gesagt kann der Decodierbetrieb für einen Code variabler Länge an jedem Abschnitt einer Scheibe mit gleicher Wahrscheinlichkeit verlassen werden. Somit kann der Decodierbetrieb für einen Code variabler Länge an einem annähernd beginnenden Abschnitt einer Scheibe verlassen werden. Wie vorstehend beschrieben, kann, wenn ein Abschnitt einer Scheibe verworfen wird, der Decodierbetrieb an der Position eines Bild-Anfangsblockcodes oder eines Sequenz-Anfangsblockcodes wieder aufgenommen werden. In vielen Fällen kann jedoch der Decodierbetrieb an der Position eines Scheiben-Anfangsblockcodes der nächsten Scheibe wieder aufgenommen werden. Somit kann gemäß der dritten Ausführungsform der Decodierbetrieb für einen Code variabler Länge von einem annähernd beginnenden Abschnitt einer Scheibe verlassen werden. Folglich besteht die Möglichkeit, dass DCT-Blöcke von dem annähernd beginnenden Abschnitt bis zum Ende der Scheibe nicht decodiert werden. In diesem Fall ist, da die Anzahl von DCT-Blöcken, die nicht decodiert werden, groß ist, der Einfluss auf die Detektion eines elektronischen Wasserzeichens verglichen mit dem Fall, dass der Decodierbetrieb für einen Code variabler Länge von einem annähernden Endabschnitt einer Scheibe bis zu ihrem Endabschnitt verlassen wird und DCT-Blöcke von dem annähernden Endabschnitt bis zum Endabschnitt der Scheibe nicht decodiert werden, groß.
  • Zusätzlich ist es gemäß der ersten Ausführungsform, um sicher zu verhindern, dass eine Eingabe eines Stroms von dem Decodierabschnitt zu der Eingangsschnittstelle unterbrochen wird, nötig, eine niedrigere Belegungsrate des Pufferzustandssignals einzustellen, welches darstellt, dass der Puffer voll ist, als das erste Beispiel und das zweite Beispiel. Daher wird ein Teil des Puffers 102C nicht verwendet, und der Puffer 102C kann nicht effektiv verwendet werden.
  • Die zweite Ausführungsform löst das vorstehende Problem.
  • 9 ist ein Blockdiagramm, welches den Aufbau eines Systems zeigt, das verhindert, dass eine Eingabe eines Codes variabler Länge gemäß der zweiten Ausführungsform der vorliegenden Erfindung unterbrochen wird.
  • Mit Bezug auf 9 weist das System gemäß der zweiten Ausführungsform eine Eingangsschnittstelle 101D, eine Video-Elementarstrom-Extraktionsvorrichtung 103D, einen Verwerfabschnitt 121D, einen Puffer 102D, einen Barrel-Shifter 104D, eine Decodiervorrichtung 105D variabler Länge, einen Regelabschnitt 106D, eine Invers-Quantifiziervorrichtung 107D und eine Detektionsvorrichtung 108D für elektronische Wasserzeichen auf.
  • Da die Eingangsschnittstelle 101D, die Video-Elementarstrom-Extraktionsvorrichtung 103D, der Puffer 102D, die Invers-Quantifiziervorrichtung 107D und die Detektionsvorrichtung 108D für elektronische Wasserzeichen die gleichen sind wie die Eingangs schnittstelle 101B, die Video-Elementarstrom-Extraktionsvorrichtung 103B, der Puffer 102B, die Invers-Quantifiziervorrichtung 107B und die Detektionsvorrichtung 108B für elektronische Wasserzeichen gemäß dem zweiten Beispiel, wird auf ihre Beschreibung verzichtet.
  • Der Barrel-Shifter 104D, die Decodiervorrichtung 105D variabler Länge und der Regelabschnitt 106D weisen die folgenden Aufbauten und Funktionen zusätzlich zu den Aufbauten und Funktionen des Barrel-Shifters 104B, der Decodiervorrichtung 105B variabler Länge und des Regelabschnitts 106B gemäß dem zweiten Beispiel auf.
  • Der Regelabschnitt 106D gibt ein Puffer-Zustandssignal von dem Puffer 102D ein. Zusätzlich gibt der Regelabschnitt 106D ein decodiertes Ergebnis von der Decodiervorrichtung 105D variabler Länge ein. 10 zeigt den Aufbau des Regelabschnitts 106D. Der Regelabschnitt 106D weist einen Decodierbetrieb-Regelabschnitt 106D-1 variabler Länge, einen Codepositions-Detektionsabschnitt 106D-2, einen Puffer-Belegungsrate-Detektionsabschnitt 106D-3 und einen Decodierbetrieb-Auslassbefehlabschnitt 106D-4 auf. Der Decodierbetrieb-Regelabschnitt 106D-1 variabler Länge gibt eine decodierte Codelänge und ein Fehlersignal von der Decodiervorrichtung 105D variabler Länge ein. Zusätzlich gibt der Decodierbetrieb-Regelabschnitt 106D-1 variabler Länge ein Decodierbetrieb-Auslassbefehlssignal von dem Decodierbetrieb-Auslassbefehlsabschnitt 106D-4 ein. Entsprechend dieser Signale bestimmt der Decodierbetrieb-Regelabschnitt 106D-1 variabler Länge die Werte eines Verschiebemengen-Regelsignals und eines Byteausrichtungs-Befehlssignals und gibt die bestimmten Ergebnisse an den Barrel-Shifter 104D aus. Der Codepositions-Detektionsabschnitt 106D-2 berechnet die Position des augenblicklich decodierten Makroblocks in der Scheibe als Makroblockzahl. Wenn der Codepositions-Detektionsabschnitt 106D-2 bestimmt hat, dass die berechnete Makroblockzahl eine vorgegebene Position in einem annähernden Endabschnitt der Scheibe ist (beispielsweise die Position von 75%, 87,5%, 93,8 oder 96,9% vom Beginn der Scheibe oder die Position, die vom Ende der Scheibe um eine vorgegebene Anzahl von Makroblöcken nachverfolgt wird), so beginnt der Puffer-Belegungsrate-Detektionsabschnitt 106D-3 die Bestimmung, ob das Pufferzustandssignal darstellt, dass der Puffer voll ist oder nicht. Wenn das bestimmte Ergebnis positiv ist, veranlasst der Decodierbetrieb-Auslassbefehlsabschnitt 106D-4 durch den Decodierbetrieb-Regelabschnitt 106D-1 variabler Länge, dass der Barrel-Shifter 104D weiter eine byteausgerichtete Achtbitverschiebung durchführt. Zusätzlich veranlasst der Decodierbetrieb-Auslassbefehlsabschnitt 106D-4, dass die Decodiervorrichtung 105D variabler Länge den Decodierbetrieb verlässt, bis ein byteausgerichteter Code variabler Länge an einer Auffrischposition eines Scheiben-Anfangsblockcodes, eines Bild-Anfangsblockcodes, eines Sequenz-Anfangsblockcodes oder Ähnlichem detektiert wird. Während somit der Decodierbetrieb verlassen wird, liest der Barrel-Shifter 104D kontinuierlich eine Bytesequenz aus dem Puffer 102D aus. Folglich kann die Belegungsrate des Codes variabler Länge in dem Puffer 102D aktiv verringert werden. Wenn die Decodiervorrichtung 105D variabler Länge einen byteausgerichteten Code variabler Länge detektiert hat, nehmen der Barrel-Shifter 104D, die Decodiervorrichtung 105D variabler Länge und der Regelabschnitt 106D ihren normalen Betrieb wieder auf.
  • Gemäß der zweiten Ausführungsform kann, da der Decodierbetrieb von einer vorgegebenen Position eines annähernden Endabschnitts einer Scheibe bis zu ihrem Endabschnitt verlassen wird, die Anzahl der DCT-Blöcke, die nicht decodiert werden, auf eine vorgegebene Anzahl verringert werden. Somit ist der Einfluss auf die Detektion eines elektronischen Wasserzeichens geringer als das zweite Beispiel und die erste Ausführungsform.
  • Zusätzlich muss gemäß der zweiten Ausführungsform, da die Position, an welcher das Verlassen des Decodierbetriebs für einen Code variabler Länge begonnen wird, begrenzt ist, die Eingabe eines Stroms vom Vorstufenabschnitt zur Eingangsschnittstelle, welche mit ihm einen Quittungsaustausch durchführt, unterbrochen werden, wenn die Belegungsrate des Codes variabler Länge in dem Puffer 102D an irgend einer Position außer der begrenzen Position im schlimmsten Fall erhöht wird. Um ein derartiges Problem zu verhindern, weist ein System gemäß der zweiten Ausführungsform den gleichen Aufbau auf wie das System gemäß dem zweiten Beispiel. Anders gesagt weist das System gemäß der zweiten Ausführungsform den Verwerfabschnitt 121D auf, welcher der gleiche ist wie der Verwerfabschnitt 121B des Systems gemäß dem zweiten Beispiel. Anders als der Regelabschnitt 106D überwacht der Verwerfabschnitt 121D stets ein Pufferzustandssignal. Wenn das Pufferzustandssignal darstellt, dass der Puffer voll ist, verwirft der Verwerfabschnitt 121B jedes Byte (einschließlich eines Codes variabler Länge) eines Video-Elementarstroms in der gleichen Weise wie das erste Beispiel und das zweite Beispiel.
  • In 9 ist das vom Puffer 102D zum Regelabschnitt 106D gelieferte Pufferzustandssignal das gleiche wie das von dem Puffer 102D zum Verwerfabschnitt 121D gelieferte Pufferzustandssignal. Alternativ können sie unabhängige Signale sein. Unterschiedliche Schwellenwerte, welche darstellen, dass der Puffer voll ist, können diesen Signalen zugeordnet werden. Insbesondere ist es bevorzugt, dem Pufferzustandssignal, welches vom Puffer 102D zum Regelabschnitt 106D geliefert wird, einen niedrigeren Schwellenwert zuzuweisen als dem Pufferzustandssignal, welches vom Puffer 102D zum Verwerfabschnitt 121D geliefert wird, um die Belegungsrate von Codes variabler Länge im Puffer 102D durch den Betrieb des Barrel-Shifters 104D, der Decodiervorrichtung 105D variabler Länge und des Regelabschnitts 106D als Vorschrift zu verringern und den Verwerfabschnitt 121D nur in Notfallsituationen arbeiten zu lassen.
  • Gemäß allen Beispielen und Ausführungsformen wird ein System, welches eine Unterbrechung einer Eingabe von Codes variabler Länge verhindert, durch Hardware erzielt. Alternativ kann ein Verfahren zur Verhinderung einer Unterbrechung einer Eingabe von Codes variabler Länge durch einen Computer erzielt werden, welcher ein Programm, das den Computer zur Ausführung des Ver werden. Folglich kann die Belegungsrate des Codes variabler Länge in dem Puffer verringert werden.
  • Als vierter Effekt ist, wenn die Video-Elementarstrom-Extraktionsvorrichtung stromaufwärts des Verwerfschaltkreises angeordnet ist, der Einfluss auf die Detektion eines elektronischen Wasserzeichens geringer als wenn die Video-Elementarstrom-Extraktionsvorrichtung stromabwärts des Verwerfschaltkreises angeordnet ist. Der Grund dafür ist, dass wenn der Verwerfschaltkreis einen Strom verwirft, die Video-Elementarstrom-Extraktionsvorrichtung nicht bestimmen muss, ob der Eingangsstrom ein Transportstrom oder ein Programmstrom ist. Zusätzlich wird ein Abschnitt, welcher größer ist als ein durch den Verwerfabschnitt verworfener Abschnitt, nicht von dem Video-Elementarstrom verworfen.
  • Als fünfter Effekt ist, wenn die Decodiervorrichtung variabler Länge den Decodierbetrieb in dem Fall verlässt, dass detektierte Ergebnisse darstellen, dass ein durch die Decodiervorrichtung variabler Länge decodierter Code variabler Länge von einer Auffrischposition des ursprünglichen Signals um eine vorgegebene Entfernung beabstandet ist und dass die Belegungsrate des Codes variabler Länge in dem Puffer gestiegen ist, der Einfluss auf die Detektion eines elektronischen Wasserzeichens geringer als in dem Fall, dass das detektierte Ergebnis darstellt, dass die Belegungsrate des Codes variabler Länge in dem Puffer gestiegen ist, unabhängig davon, ob der Code variabler Länge, der durch die Decodiervorrichtung variabler Länge decodiert wurde, von der Auffrischposition des ursprünglichen Signals um den vorgegebenen Abstand entfernt ist oder nicht.
  • Obwohl die vorliegende Erfindung mit Bezug auf ihre bestmögliche Ausführungsform gezeigt und beschrieben wurde, sollte sich für Fachleute verstehen, dass die vorstehenden und andere Veränderungen, Weglassungen und Hinzufügungen in Form und Detail daran vorgenommen werden können.

Claims (18)

  1. System zum Verhindern einer Unterbrechung der Eingabe von Codes variabler Länge, wobei das System Folgendes aufweist: eine Decodiervorrichtung (105) variabler Länge zum Decodieren der Codes variabler Länge; einen Puffer (102) zum Zwischenspeichern der Codes variabler Länge, die an die Decodiervorrichtung variabler Länge geliefert werden sollen; dadurch gekennzeichnet, dass das System weiter Folgendes aufweist: einen Barrel-Shifter oder Schiebelogikschaltung (104) zum Auslesen der Codes variabler Länge aus dem Puffer (102) und zum Liefern der aus dem Puffer ausgelesenen Codes variabler Länge an die Decodiervorrichtung (105) variabler Länge; eine erste Belegungsrate-Detektionsvorrichtung (106-3) zum Detektieren, ob eine Belegungsrate der Codes variabler Länge im Puffer auf einen ersten Schwellenwert gestiegen ist oder nicht; und eine Steuervorrichtung (106), welche verursacht, dass die Decodiervorrichtung variabler Länge den Decodiervorgang (106-4) anhält, und weiter bewirkt, dass der Barrel-Shifter (104) die Codes variabler Länge aus dem Puffer mit einer ausreichenden Geschwindigkeit (106-1) ausliest, um die Codes variabler Länge im Puffer (102) ab dem Zeitpunkt zu verringern, wenn die Belegungsrate der Codes variabler Länge im Puffer auf den ersten Schwellenwert gestiegen ist, bis zum Zeitpunkt, wenn die Decodiervorrichtung (105) variabler Länge einen vorbestimmten Code erfasst.
  2. System nach Anspruch 1, welches weiter Folgendes aufweist: eine Codepositions-Detektionsvorrichtung zum Detektieren, ob ein augenblicklich von der Decodiervorrichtung (105) variabler Länge decodierter Code variabler Länge eine Position aufweist, die von einer Auffrischposition eines ursprünglichen Signals in einer vorbestimmten Entfernung angeordnet ist oder nicht, dadurch gekennzeichnet, dass die Steuervorrichtung (106) die Decodiervorrichtung (105) variabler Länge veranlasst, den Dedodiervorgang anzuhalten, und den Barrel-Shifter (104) dazu veranlasst, die Codes variabler Länge aus dem Puffer (102) mit einer ausreichenden Geschwindigkeit auszulesen, um die Codes variabler Länge im Puffer ab dem Zeitpunkt zu verringern, wenn die Belegungsrate der Codes variabler Länge im Puffer auf den ersten Schwellenwert gestiegen ist, und das von der Codepositions-Detektionsvorrichtung detektierte Ergebnis wiedergibt, dass der augenblicklich von der Decodiervorrichtung (105) variabler Länge decodierte Code variabler Länge eine Position einnimmt, die von der Auffrischposition des ursprünglichen Signals in der vorbestimmten Entfernung angeordnet ist, bis zu dem Zeitpunkt, wenn die Decodiervorrichtung variabler Länge den vorbestimmten Code erfasst.
  3. System nach Anspruch 2, welches weiter Folgendes aufweist: eine zweite Belegungsrate-Detektionsvorrichtung zum Detektieren, ob die Belegungsrate der Codes variabler Länge im Puffer (102) auf einen zweiten Schwellenwert gestiegen ist oder nicht; und eine Verwerfvorrichtung (121) zum Verwerfen der an den Puffer zu liefernden Codes variabler Länge, wenn das von der zweiten Belegungsrate-Detektionsvorrichtung erfasste Ergebnis wiedergibt, dass die Belegungsrate der Codes variabler Länge im Puffer auf einen zweiten Schwellenwert gestiegen ist.
  4. System nach Anspruch 3, dadurch gekennzeichnet, dass der zweite Schwellenwert größer als der erste Schwellenwert ist.
  5. System nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das System mit einem MPEG-Signal (MPEG = Motion Picture Experts Group) arbeitet; und wobei das System weiter Folgendes aufweist: eine Elementarstrom-Extraktionsvorrichtung (103), die strom-aufwärts vom Puffer (102) angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  6. System nach Anspruch 3 oder 4, dadurch gekennzeichnet, dass das System mit einem MPEG-Signal arbeitet; und weiter Folgendes aufweist: eine Elementarstrom-Extraktionsvorrichtung (103), die strom-aufwärts von der Verwerfvorrichtung (121) angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  7. System nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass der vorbestimmte Code ein Code an einer Auffrischposition eines ursprünglichen Signals ist..
  8. System nach Anspruch 7, dadurch gekennzeichnet, dass der Code an der Auffrischposition des ursprünglichen Signals ein byte-ausgerichteter Code ist.
  9. Verfahren zum Verhindern einer Unterbrechung der Eingabe von Codes variabler Länge, wobei das Verfahren die folgenden Schritte aufweist: einen Zwischenspeicherschritt (102) zum Zwischenspeichern der Codes variabler Länge, die dem Decodierschritt variabler Länge zugeführt werden, in einem Puffer; einen Decodierschritt (105) variabler Länge zum Decodieren der Codes variabler Länge; dadurch gekennzeichnet, dass das Verfahren weiter die folgenden Schritte aufweist: einen Barrel-Shift-Schritt (104) zum Auslesen der Codes variabler Länge aus dem Puffer (102) und zum Weiterleiten der aus dem Puffer ausgelesenen Codes variabler Länge an den Decodierschritt (105) variabler Länge; einen ersten Belegungsrate-Detektionsschritt zum Detektieren, ob eine Belegungsrate der Codes variabler Länge im Puffer (102) auf einen ersten Schwellenwert gestiegen ist oder nicht; und einen Steuerschritt (106), der bewirkt, dass der Decodierschritt (105) variabler Länge den Decodiervorgang (106-4) anhält, und dass der Barrel-Shift-Schritt (104) die Codes variabler Länge aus dem Puffer (102) mit einer ausreichenden Geschwindigkeit (106-1) ausliest, um die Codes variabler Länge im Puffer von dem Zeitpunkt ab zu verringern, wenn die Belegungsrate der Codes variabler Länge im Puffer auf den ersten Schwellenwert gestiegen ist, bis zu dem Zeitpunkt, wenn der Decodierschritt variabler Länge einen vorbestimmten Code erfasst.
  10. Verfahren nach Anspruch 9, welches weiter folgende Schritte aufweist: einen Codepositions-Detektionsschritt zum Erfassen, ob ein augenblicklich durch der Decodierschritt (105) variabler Länge decodierter Code variabler Länge eine Position aufweist, die von einer Auffrischposition eines ursprünglichen Signals in einer vorbestimmten Entfernung angeordnet ist oder nicht; wobei der Steuerschritt (106) den Decodierschritt (105) variabler Länge veranlasst, den Dedodiervorgang anzuhalten, und den Barrel-Shift-Schritt (104) veranlasst, um die Codes variabler Länge aus dem Puffer (102) mit einer ausreichenden Geschwindigkeit auszulesen, um die Codes variabler Länge im Puffer ab dem Zeitpunkt zu verringern, wenn die Belegungsrate der Codes variabler Länge im Puffer auf den ersten Schwellenwert gestiegen ist, und das durch den Codepositions-Detektionsschritt detektierte Ergebnis wiedergibt, dass der augenblicklich vom Decodierschritt (105) variabler Länge decodierte Code variabler Länge eine Position einnimmt, die von der Auffrischposition des ursprünglichen Signals in der vorbestimmten Entfernung angeordnet ist, bis zu dem Zeitpunkt, wenn der Decodierschritt variabler Länge (105) den vorbestimmten Code erfasst.
  11. Verfahren nach Anspruch 10, welches weiter die folgenden Schritte aufweist: einen zweiten Belegungsrate-Detektionsschritt zum Detektieren, ob die Belegungsrate der Codes variabler Länge im Puffer (102) auf einen zweiten Schwellenwert gestiegen ist oder nicht; und einen Verwerfschritt (121) zum Verwerfen der an den Puffer zu liefernden Codes variabler Länge, wenn das durch den zweiten Belegungsrate-Detektionsschritt erfasst Ergebnis wiedergibt, dass die Belegungsrate der Codes variabler Länge im Puffer auf den zweiten Schwellenwert gestiegen ist.
  12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass der zweite Schwellenwert größer als der erste Schwellenwert ist.
  13. Verfahren nach Anspruch 9 oder 10, dadurch gekennzeichnet, dass das Verfahren mit einem MPEG-Signal (MPEG = Motion Picture Experts Group) arbeitet; und wobei das Verfahren weiter die folgenden Schritte aufweist: einen Elementarstrom-Extraktionsschritt (103), der vor dem Puffer (102) angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  14. Verfahren nach Anspruch 11 oder 12, dadurch gekennzeichnet, dass das Verfahren mit einem MPEG-Signal arbeitet; und wobei das Verfahren weiter die folgenden Schritte aufweist: einen Elementarstrom-Extraktionsschritt (103), der vor dem Verwerfschritt (121) angeordnet ist, zum Extrahieren eines in MPEG-Standard definierten Elementarstroms.
  15. Verfahren nach einem der Ansprüche 9 bis 14, dadurch gekennzeichnet, dass der vorbestimmte Code ein Code an einer Auffrischposition eines ursprünglichen Signals ist.
  16. Verfahren nach Anspruch 15, dadurch gekennzeichnet, dass der Code an der Auffrischposition des ursprünglichen Signals ein byte-ausgerichteter Code ist.
  17. Computerprogramm, welches eine Computerprogramm-Codevorrichtung aufweist, das dazu ausgelegt ist, alle Schritte des Verfahrens gemäß einem der Ansprüche 9 bis 16 auszuführen, wenn das Programm auf einem Computer läuft.
  18. Computerprogramm nach Anspruch 17, welches in Form eines computerlesbaren Mediums vorliegt.
DE2002605534 2001-05-11 2002-05-01 System und Verfahren zum Verhindern von Unterbrechungen von kodierten Eingangsdaten variabler Länge Expired - Lifetime DE60205534T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001141950 2001-05-11
JP2001141950A JP3565182B2 (ja) 2001-05-11 2001-05-11 可変長符号の入力が中断されることを防止する方式及びその方法

Publications (2)

Publication Number Publication Date
DE60205534D1 DE60205534D1 (de) 2005-09-22
DE60205534T2 true DE60205534T2 (de) 2006-06-08

Family

ID=18988325

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2002605534 Expired - Lifetime DE60205534T2 (de) 2001-05-11 2002-05-01 System und Verfahren zum Verhindern von Unterbrechungen von kodierten Eingangsdaten variabler Länge

Country Status (6)

Country Link
US (1) US6717535B2 (de)
EP (1) EP1263231B1 (de)
JP (1) JP3565182B2 (de)
KR (1) KR100557217B1 (de)
DE (1) DE60205534T2 (de)
TW (1) TW582175B (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7006661B2 (en) 1995-07-27 2006-02-28 Digimarc Corp Digital watermarking systems and methods
US6952485B1 (en) 2000-09-11 2005-10-04 Digimarc Corporation Watermark encoding and decoding in imaging devices and imaging device interfaces
US7362905B2 (en) * 2004-08-31 2008-04-22 Mediatek Inc. Methods and systems for DV encoding and decoding
JP5277180B2 (ja) 2007-03-23 2013-08-28 トムソン ライセンシング 符号化ビットストリームの修正
WO2008154041A1 (en) * 2007-06-14 2008-12-18 Thomson Licensing Modifying a coded bitstream
US9959119B2 (en) * 2014-05-29 2018-05-01 Mill Computing, Inc. Computer processor employing double-ended instruction decoding

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5614952A (en) * 1994-10-11 1997-03-25 Hitachi America, Ltd. Digital video decoder for decoding digital high definition and/or digital standard definition television signals
JP2658832B2 (ja) * 1993-11-12 1997-09-30 日本電気株式会社 動画像復号制御装置
JP3462254B2 (ja) * 1994-03-04 2003-11-05 三菱電機株式会社 画像復号装置、および該装置を用いた画像復号方法
KR0134299B1 (ko) * 1994-07-11 1998-04-29 김광호 가변장디코딩장치의 동기 복원방법 및 장치
US5828421A (en) * 1994-10-11 1998-10-27 Hitachi America, Ltd. Implementation efficient digital picture-in-picture decoding methods and apparatus
JP3203168B2 (ja) * 1994-11-30 2001-08-27 三洋電機株式会社 Mpegビデオデコーダ
US5953350A (en) * 1995-03-13 1999-09-14 Selsius Systems, Inc. Multimedia client for multimedia/hybrid network
JP3416403B2 (ja) * 1995-06-30 2003-06-16 三洋電機株式会社 Mpegオーディオデコーダ
KR0179103B1 (ko) * 1995-11-15 1999-05-01 구자홍 고속 가변길이 디코더장치
JP3109575B2 (ja) 1996-09-30 2000-11-20 日本電気株式会社 画像データ処理装置
JPH10174101A (ja) 1996-12-13 1998-06-26 Sony Corp 画像圧縮符号化および復号化装置、画像圧縮符号化および復号化方法
JP3969776B2 (ja) 1997-01-21 2007-09-05 沖電気工業株式会社 伝送画像復号装置
US5974483A (en) * 1997-05-21 1999-10-26 Microsoft Corporation Multiple transparent access to in put peripherals
JPH1118078A (ja) 1997-06-19 1999-01-22 Sony Corp 映像信号処理装置およびその方法
KR100247978B1 (ko) * 1997-08-08 2000-03-15 윤종용 픽쳐 디코딩 동기화 회로 및 그 방법
US6154571A (en) 1998-06-24 2000-11-28 Nec Research Institute, Inc. Robust digital watermarking
JP3896768B2 (ja) 2000-05-31 2007-03-22 日本電気株式会社 Mpegビデオエレメンタリストリーム抽出装置及びそれに用いるエレメンタリストリーム抽出方法
KR100341063B1 (ko) * 2000-06-28 2002-06-20 송문섭 실시간 영상 통신을 위한 율제어 장치 및 그 방법
KR100628619B1 (ko) * 2000-07-10 2006-09-26 마쯔시다덴기산교 가부시키가이샤 복수의 디코드 장치 및 방법
KR20020014959A (ko) * 2000-08-19 2002-02-27 박종섭 오버플로 제어기능을 갖는 비디오 디코딩 시스템

Also Published As

Publication number Publication date
DE60205534D1 (de) 2005-09-22
JP3565182B2 (ja) 2004-09-15
JP2002344964A (ja) 2002-11-29
TW582175B (en) 2004-04-01
EP1263231A3 (de) 2004-04-21
KR20020086295A (ko) 2002-11-18
US20020167427A1 (en) 2002-11-14
EP1263231A2 (de) 2002-12-04
US6717535B2 (en) 2004-04-06
EP1263231B1 (de) 2005-08-17
KR100557217B1 (ko) 2006-03-07

Similar Documents

Publication Publication Date Title
US8659607B2 (en) Efficient video decoding migration for multiple graphics processor systems
DE60104013T2 (de) Transkodierung von progressiv-kodierten i-slice-aufgefrischten mpeg datenströmen für trickmodi
DE60125083T2 (de) Verfahren und Anlage zur Verbergung von Scheibendatenfehlern in aufgenommenen digitalen Fernsehsignalen
DE69825710T2 (de) Audio-Video Dekodierungssystem
DE60026241T2 (de) Umschalten zwischen bitratenreduzierten Signalen
DE69830752T2 (de) Verfahren und Anlage zur Aufnahme vielfachprotokoll-komprimierter Ton- und Videodaten
DE69632295T2 (de) Fehlerkorrekturcodierung für digitale Videoaufzeichnung
US6219381B1 (en) Image processing apparatus and method for realizing trick play
DE69822975T2 (de) Gerät und verfahren zum kodieren/dekodieren von bewegtbildern und speichermedium zum speichern kodierter bewegtbilddaten
US6947488B2 (en) Scalable MPEG-2 video decoder
US5745180A (en) Low-delay encoding methods of moving pictures
EP0752789B1 (de) Verfahren, Encoder und Decoder zur Resynchronisierung auf einen fehlerbehafteten Videodatenstrom
DE4305578A1 (de)
US20060192698A1 (en) Encoding dynamic graphic content views
DE60205534T2 (de) System und Verfahren zum Verhindern von Unterbrechungen von kodierten Eingangsdaten variabler Länge
DE69833775T2 (de) Formatierung von kodierten videosignalen
JPH07135659A (ja) 動画像復号制御装置
JPH08242452A (ja) 映像信号圧縮符号化装置
DE60210080T2 (de) Vorrichtung zur Detektion eines Wasserzeichens
EP0836785B1 (de) Verfahren zur dekodierung und kodierung eines komprimierten videodatenstroms mit reduziertem speicherbedarf
EP0893030B2 (de) Verfahren und vorrichtung zur endloswiedergabe von komprimierten videobitströmen
DE10323189B4 (de) Manipulationsanordnung und Verfahren zur Manipulation für MPEG-2 Datenströme
JP3341842B2 (ja) バッファ管理方法
JP3478003B2 (ja) 復号装置
JP3022492B2 (ja) 映像信号圧縮符号化装置

Legal Events

Date Code Title Description
8364 No opposition during term of opposition