DE69625415T2 - Verfahren zur Verbindung von MPEG-Videosequenzen - Google Patents
Verfahren zur Verbindung von MPEG-VideosequenzenInfo
- Publication number
- DE69625415T2 DE69625415T2 DE69625415T DE69625415T DE69625415T2 DE 69625415 T2 DE69625415 T2 DE 69625415T2 DE 69625415 T DE69625415 T DE 69625415T DE 69625415 T DE69625415 T DE 69625415T DE 69625415 T2 DE69625415 T2 DE 69625415T2
- Authority
- DE
- Germany
- Prior art keywords
- buffer
- data stream
- data
- amount
- data streams
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 52
- 239000000872 buffer Substances 0.000 claims description 107
- 230000003139 buffering effect Effects 0.000 claims description 2
- 238000003780 insertion Methods 0.000 description 7
- 230000037431 insertion Effects 0.000 description 7
- 101150060836 KSL4 gene Proteins 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000945 filler Substances 0.000 description 2
- 238000011010 flushing procedure Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23424—Processing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/007—Transform coding, e.g. discrete cosine transform
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
- G11B27/036—Insert-editing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/142—Detection of scene cut or scene change
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/162—User input
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/172—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/23406—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23611—Insertion of stuffing data into a multiplex stream, e.g. to obtain a constant bitrate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Discrete Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Television Signal Processing For Recording (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Diese Erfindung betrifft die Verarbeitung von Videosignalen, welche codiert wurden gemäß dem Standard, welcher eingeführt wurde von der Moving Picture Experts Group (MPEG) und insbesondere ein Verfahren zur Verbindung eines MPEG codierten Datenstromes von einer ersten Quelle mit einem MPEG codierten Datenstrom von einer zweiten Quelle auf eine Art, welche sicherstellt, dass keine Videodaten verloren werden, wenn das kombinierte Bild wiedergegeben wird.
- In den Vereinigten Staaten wurde ein Standard vorgeschlagen für digital codierte hochauflösende Fernsehsignale. Dieser Standard ist im wesentlichen der gleiche wie der MPEG-2 Standard, vorgeschlagen von der Moving Picture Experts Group (MPEG) der International Standards Organisation (ISO). Dieser Standard ist beschrieben in einer Draft International Standard (DIS) Veröffentlichung mit dem Titel "Information Technology - Generic Coding of Moving Pictures and Associated Audio, Recommendation H.262", welche von der ISO erhältlich ist.
- Der MPEG-2 Standard besteht tatsächlich aus verschiedenen unterschiedlichen Standards. Im MPEG-2 sind verschiedene unterschiedliche Profile definiert, wobei jedes einem unterschiedlichen Grad an Komplexität des codierten Bildes entspricht. Für jedes Profil sind verschiedene Ebenen bzw. Grade definiert, wobei jede Ebene einer unterschiedlichen Bildauflösung entspricht. Einer der MPEG-2 "Standards", bekannt als Hauptprofil (Main Profile), Hauptebene (Main Level) dient zum Codieren von Videosignalen, welche mit bestehenden Fernsehstandards (d. h. NTSC und PAL) konform sind. Ein anderer "Standard", bekannt als Main Profile, High Level dient zum Codieren von hochaufgelösten Fernsehbildern. Bilder, welche codiert wurden gemäß dem Main Profile, High Level Standard können soviel wie 1.152 aktive Zeilen pro Vollbild und 1.920 Pixel pro Zeile haben. Es ist dieser Standard, welcher gegenwärtig implementiert ist als der United States HDTV Standard.
- Der MPEG-2 Standard definiert eine komplexe Syntax, welche eine Mischung von Daten und Steuerinformationen enthält. Ein Teil dieser Steuerinformation wird verwendet, um es zu ermöglichen, dass die Signale, welche verschiedene unterschiedliche Formate haben, umgewandelt werden durch den Standard. Diese Formate definieren Bilder und haben eine unterschiedliche Anzahl von Bildelementen (Pixels) pro Zeile, unterschiedliche Zahlen von Zeilen pro Vollbild oder Halbbild und unterschiedliche Zahlen von Vollbildern oder Halbbildern pro Sekunde. Zusätzlich definiert die grundlegende Syntax des MPEG-2 Main Profile den komprimierten MPEG-2 Bit- Strom, welcher eine Sequenz von Bildern in sechs Schichten darstellt, die Sequenz- Schicht, die Gruppe-der-Bilder-Schicht, die Bild-Schicht, die Teil- bzw. Slice-Schicht, die Makro-Black-Schicht, und die Block-Schicht. Jede dieser Schichten ist mit einer Steuerinformation und "Füll" ("Stuffing")-Zeichen versehen. Die Füll-Zeichen werden eingefügt wenn erforderlich, um sicherzustellen, dass die Datenrate des eingegebenen Datenstromes mit der Rate zusammenpasst, mit welcher Bilder angezeigt werden. Schließlich ist weitere Steuerinformation, auch bekannt als Seiteninformation (z. B. Vollbild (frame)-Typ, Makroblock-Muster, Bild-Bewegungs-Vektoren, Koeffizient Zig-Zag Muster und Dequantisier-Information) verteilt über den codierten Bit-Strom.
- Um effektiv die digitalen Bilder zu empfangen, muss ein Decoder die Steuerteile erkennen, die notwendige Steuerinformation extrahieren bzw. gewinnen, und die gewonnenen Daten verwenden, um die Videosignalinformation zu verarbeiten. Ein Teil einer Information, welcher spezifiziert ist für jede Sequenz-Schicht, ist die Video- Puffer-Prüf (VBV; Video buffering verifier) Puffer-Größe. Der VBV Puffer-Größen- Wert spezifiziert eine Anzahl von Bits von Eingabedaten von der Videosequenz, welche gespeichert werden muss in dem Eingabepuffer des Decoders, bevor die Videosequenz decodiert werden kann. Wenn diese Anzahl der Bits gespeichert ist, wenn der Decodiervorgang beginnt, wird der Eingabepuffer weder zu voll (Überlauf) oder leer (Unterlauf) werden während der Verarbeitung der Videosequenz.
- Der VBV Puffer-Größen-Wert nimmt an, dass der Eingabepuffer leer ist, wenn die neuen Sequenzdaten empfangen werden oder mindestens dass alle Daten des Eingabepuffers entfernt werden bevor die Inhalte des Eingabepuffers den VBV Puffer- Größen-Wert erreichen. Um sicherzustellen, dass der VBV Puffer-Größen-Wert nicht verursacht, dass der Eingabepuffer überläuft oder unterläuft, wird in dem MPEG Standard bevorzugt, dass jede Bild-Verbindung durchgeführt wird an einer Sequenz- Grenze.
- Dies kann jedoch nicht akzeptabel sein für Video-Editoren, welche von einer Szene zu einer anderen schalten wollen nachdem ein bestimmtes Büd angezeigt wurde, unabhängig davon, ab dieses Bild bei einer Sequenzgrenze ist. Es kann auch nicht erwünscht sein für Rundfunker, welche kurze Programm-Segmente einfügen wollen, z. B. Stations-Identifikations-Nachrichten oder Werbungen in ein HDTV Programm bei frei gewählten Intervallen.
- Wenn das Verbinden nicht bei einer Sequenz-Grenze durchgeführt wird, dann kann es vorkommen, dass die Daten, welche schon in dem Eingabepuffer vorliegen, nicht gelesen werden von dem Puffer zur Verarbeitung bis der Puffer überläuft aufgrund der neuen Daten von der eingefügten Sequenz. Alternativ können die Daten, welche schon in dem Eingabepuffer vorhanden sind, bewirken, dass der Decoder vorzeitig anzeigt, dass das VBV Puffer-Größen-Kriterium erfüllt wurde. In diesem Fall kann der Decoder bewirken, dass der Eingabe-Puffer entweder überläuft oder unterläuft bei der Verarbeitung der gespeicherten Daten.
- Ein Verfahren zum Lösen dieses Problems ist vorgeschlagen, in dem MPEG-2 Standard DIS 150/IEC 13818-1. Durch dieses Verfahren werden bestimmte Zugriffs- Einheiten, oder Bilder, in dem Datenstrom markiert mit einem SEAM- LESS_SPLICE_FLAG. Dieses Flag wird verwendet, um sichere Stellen zum Verbinden einer eingefügten Sequenz in die Hauptsequenz zu markieren. Wie bei dem herkömmlichen Verbindungsverfahren gibt es jedoch nur eine begrenzte Anzahl von Zugriffs-Einheiten, welche das Kriterium erfüllen, dass dieses Flag gesetzt wird. Des Weiteren begrenzt dieses Verbindungs-Verfahren die Bit-Rate des eingefügten Stromes auf ein bestimmtes Niveau, um dessen Kriterium zu erfüllen, und der eingefügte Strom kann kein Strom mit einer variablen Bit-Rate sein.
- Ein anderes Verfahren wäre es ein Format innerhalb des MPEG Standards zu definieren, welches das einfache Einfügen ermöglicht und ein Flag vorzusehen, welches dieses Format anzeigt. Dieses Verfahren kann jedoch nicht inkompatible Formate handhaben und reduziert die Robustheit des MPEG Standards.
- Die vorliegende Erfindung ist definiert in den beiliegenden Ansprüchen und basiert auf der Idee einer Verarbeitung einer Haupt-MPEG codierten Sequenz, um es zu erlauben, dass eine andere Sequenz eingefügt wird bei jeder Bild-Grenze in der Haupt-Sequenz. Gemäß der vorliegenden Erfindung werden die Haupt- und eingefügten MPEG Sequenzen analysiert, um eine Anzahl von Füll-Zeichen zu bestimmen, welche eingefügt werden in den Daten-Strom, nach der ausgewählten Bildgrenze und vor der eingefügten Sequenz. Die Füll-Zeichen werden ignoriert während des Decodier-Vorganges und ermöglichen es dem Eingabe-Puffer geleert zu werden auf ein Niveau, welches mit der eingefügten Sequenz kompatibel ist. Diese Anzahl der Füll-Zeichen wird bestimmt aus den Daten-Raten der Haupt- und eingefügten Sequenzen und den Intervallen zwischen jeweiligen Punkten der Zeit entsprechend dem Start der Einfügung und den nächsten Decodier-Zeit-Stempeln in beiden, den Haupt- und eingefügten Sequenzen. Das Verfahren fügt diese Anzahl der Füll- Zeichen ein nach dem ausgewählten Verbindungspunkt und fügt dann die eingefügte Sequenz ein.
- Die EP 0 692 911 A2 ist veröffentlicht nach dem Prioritätstag der vorliegenden Anmeldung und offenbart ein Verfahren zum Verbinden von MPEG codierten Videosignalen.
- Fig. 1 ist ein Daten-Diagramm, welches einen Einfügungs-Vorgang gemäß der vorliegenden Erfindung veranschaulicht.
- Fig. 2a und 2b sind Diagramme des Puffer-Füllgrades über die Zeit, welche nützlich sind zum Erläutern der Arbeitsweise der vorliegenden Erfindung für MPEG-2 codierte Signale mit fester Datenrate.
- Fig. 3a und 3b sind Diagramme des Puffer-Füllgrades über die Zeit, welche nützlich sind zum Erläutern der Arbeitsweise der vorliegenden Erfindung für MPEG-2 codierte Signale mit variabler Datenrate.
- Fig. 4 ist ein Blockdiagramm einer Schaltung, welche geeignet ist zur Verwendung in einem HDTV oder MPEG-2 Codierer und Decodierer, welche gemäß der vorliegenden Erfindung arbeitet.
- Fig. 5 ist ein Ablaufdiagramm eines Verfahrens, welches Parameterwerte von dem Haupt- und eingefügten Daten-Strom extrahiert.
- Fig. 6 ist ein Ablaufdiagramm eines Verfahrens, welches eine Anzahl von Füll-Bits berechnet, welche eingefügt werden sollen, aus den extrahierten Parametern.
- Fig. 7 ist ein Ablaufdiagramm eines Einfüge-Verfahrens, welches die Anzahl der Füll-Bits einfügt, welche in Fig. 6 berechnet wurde, zwischen dem Einfügungspunkt zwischen der Haupt-Sequenz und dem Start der eingefügten Sequenz.
- Fig. 7a, 7b und 7c sind Diagramme des Puffer-Füllgrades über die Zeit, welche nützlich sind zum Erläutern der Arbeitsweise der vorliegenden Erfindung, wenn die Variable k in Fig. 7 einen Wert von Eins hat.
- Fig. 1 ist ein Datendiagramm, welches den Verbindungs-Vorgang veranschaulicht. In dieser Figur wird eine Sequenz 112 eingefügt in eine Sequenz 110 des Haupt- HDTV-Signals, um eine modifizierte Sequenz 110' auszubilden. Wie in Fig. 1 gezeigt, umfasst die Haupt-MPEG-Sequenz 110 einen Sequenz-Kopf (header) 111, einschließlich eines Sequenz-Start-Codes, verschiedene Zugriffseinheiten (Bilder) 116 und einen Sequenz-End-Code 114. Aus Gründen der Vereinfachung ist die Gruppe-der-Bilder-Schicht, welche zwischen der Sequenz-Schicht und der Bild- Schicht liegt, in Fig. 1 nicht gezeigt. Die einzufügende Sequenz 112 umfasst auch einen Sequenz-Kopf 118, verschiedene Zugriffs-Einheiten 122 und einen Sequenz- End-Code 120.
- Wie in dem MPEG Standard definiert, kann jedem Sequenz-Start-Code eine Zeichenfolge von nullwertigen Füll-Bits vorausgehen. In dem MPEG Standard stellen diese Bits eine Null-Information dar, welche ignoriert wird von dem Decoder und nicht in den Eingabe-Puffer geschrieben wird. Die Füll-Bits werden verwendet, um sicherzustellen, dass die Rate, mit welcher Daten zugeführt werden, mit der Rate übereinstimmt bzw. passt, mit welcher Bilder, erhalten aus den Daten, angezeigt werden. Während diese Füll-Bits empfangen werden liest der Decoder Daten von dem Eingabe-Puffer für die Anzeige. Demzufolge wird die Menge der Daten, welche in dem Eingabe-Puffer gespeichert ist, verringert, während die Füll-Bits empfangen werden.
- Die kombinierten Sequenzen sind gezeigt als der modifizierte Daten-Strom 110' von Fig. 1. Dieser Daten-Strom enthält den Sequenz-Kopf (header) 111, Zugriffseinheiten 116, einen modifizierten Sequenz-Kopf 118', Zugriffseinheiten 122, und einen modifizierten Sequenz-End-Code 120'. Der modifizierte Sequenz-Start-Code 118' umfasst einen Sequenz-End-Code, welcher das Ende des ersten Teils der vorhergehenden Hauptsequenz markiert, eine Anzahl NSTUFF von Füll-Bits, den Sequenz- Start-Code für die eingefügte Sequenz und den modifizierten Kopf für die eingefügte Sequenz. Das Bit-Raten-Feld des ursprünglichen Kopfes (header) für die eingefügte Sequenz wird modifiziert, um hexadezimal FFFF zu sein, was eine Sequenz mit variabler Bit-Rate anzeigt. Diese Veränderung wird nur gemacht, wenn die Bit-Rate der eingefügten Sequenz von derjenigen der Haupt-Sequenz verschieden ist und die ursprünglich eingefügte Sequenz eine Sequenz mit einer konstanten Bit-Rate war.
- Das Verfahren gemäß der vorliegenden Erfindung verbindet den Start einer Sequenz mit einer frei wählbaren Zugriffseinheit in einer anderen Sequenz. Das Einfügen der Sequenz wird nur abgeschlossen nachdem der verbleibende Teil der ursprünglichen Sequenz verbunden wurde mit der eingefügten Sequenz auf gleiche Art wie die eingefügte Sequenz mit der Haupt-Sequenz verbunden wurde. Demzufolge enthält der modifizierte Sequenz-Kopf 120' auch einen Sequenz-End-Code, einige Füll-Bits und den modifizierten Sequenz-Kopf für die Haupt-Sequenz. Wie bei dem modifizierten Sequenz-Kopf 118' kann der Sequenz-Kopf 120' sein Bit-Raten-Feld geändert haben zu FFFF hexadezimal, was eine Sequenz mit variabler Bit-Rate anzeigt, wenn die Bit-Raten der Haupt- und der eingefügten Sequenz voneinander abweichen bzw. verschieden sind und wenn die ursprüngliche Haupt-Sequenz eine konstante Bit- Rate verwendete.
- Die Anzahl der hinzuzufügenden Füll-Bits wird bestimmt durch das Verfahren der vorliegenden Erfindung wie nachfolgend beschrieben unter Verweis auf die Fig. 5 und 6. Der tatsächliche Verbindungs-Vorgang wird durchgeführt, wie nachfolgend unter Verweis auf die Fig. 2, 3 und 7 beschrieben.
- Die Fig. 2a und 2b sind Diagramme des Puffer-Füllgrades über die Zeit, welche das Problem veranschaulichen, welches angesprochen wird durch die vorliegende Erfindung und das Verfahren, durch welches das Problem gelöst wird. Die durchgezogene Linie in Fig. 2a zeigt einen Teil des Daten-Stromes für die Haupt-Sequenz, STREAM1, während die durchgezogene Linie in Fig. 2b den Teil des Daten- Stromes für die eingefügte Sequenz, STREAM2, zeigt. Bei den beispielhaften Ausführungsformen der Erfindung sind diese Ströme Bit-Ströme. Die vertikalen Übergänge in diesen Figuren bezeichnen Zeitpunkte bei welchen Daten aus dem Puffer gelesen werden. Es ist Konvention bei diesen Arten von Diagrammen, dass die Daten so modelliert werden, als ob sie gleichzeitig aus dem Puffer ausgelesen werden. Teile der Kurve, welche geneigte bzw. schräge Linien, haben bezeichnen Zeitpunkte, bei welchen Daten in den Puffer geschrieben werden. Die Steigung dieser Linien ist proportional zur Daten-Rate des Daten-Stroms.
- Die Sequenz STREAM2 soll eingefügt werden in die Sequenz STREAM1 zum Zeitpunkt Tl, unmittelbar nach der Zugriffseinheit AU1. Wenn die maximale Eingabe- Puffer-Größe, verwendet in diesem Beispiel, gleich 1000 ist, dann würde der Puffer überlaufen bevor die VBV Puffer-Größe (d. h. 500) für STREAM2 erreicht wurde, wenn STREAM2 in STREAM1 zum Zeitpunkt Tl eingefügt würde. Um zu verhindern, dass dies eintritt, fügt das Verfahren gemäß der vorliegenden Erfindung eine Anzahl NSTUFF an Füll-Bits zwischen der AU1 zum Zeitpunkt Tl und dem Start von STREAM2 ein. Dies ist angezeigt durch die gestrichelte Linie in Fig. 2a. Demzufolge folgt nach Tl der Puffer-Füllgrad für den MPEG Bit-Strom der gestrichelten Linie, statt dass er der durchgezogenen Linie folgt. Die Werte Tlast, DTS1, Tnext, DTSnext und DTS2 werden verwendet wie nachfolgend beschrieben, um den optimalen Wert für NSTUFF zu berechnen. Während die Füll-Bits eingefügt werden in den Daten-Strom werden keine neuen Daten zu dem Puffer hinzugefügt. Neue Daten, welche die eingefügte Sequenz darstellen, werden hinzugefügt, wenn die Steigung der durchgezogenen Linie nicht Null ist.
- Es wird aus den Fig. 2a und 2b gesehen, dass die Rate, mit welcher Daten von STREAM2 zur Verfügung gestellt werden, geringer ist als die Rate, mit welcher diese von STREAM1 zur Verfügung gestellt werden. Nichtsdestoweniger wird der erste Teil der Daten von STREAM2, zur Verfügung gestellt zwischen den Decodier-Zeit- Stempeln DTS1 bis DTSnext, zur Verfügung gestellt mit der gleichen Rate wie die Sequenz STREAM1, während der Teil von STREAM2, welcher zur Verfügung gestellt wird nach DTSnext, zur Verfügung gestellt wird mit der gleichen Rate wie der ursprüngliche STREAM2, in Fig. 2b gezeigt.
- Die Diagramme in den Fig. 2a und 2b veranschaulichen die Arbeitsweise einer beispielhaften Ausführungsform des erfindungsgemäßen Verfahrens, wenn die Sequenzen codiert sind, um eine feste Daten-Rate zu haben. Die Fig. 3a und 3b veranschaulichen die Arbeitsweise des Verfahrens, wenn die Sequenzen codiert sind, um eine variable Daten-Rate zu haben. Punkte in diesen Figuren, welche Punkten in den Fig. 2a und 2b entsprechen, sind durch ein Apostroph (') gekennzeichnet.
- Fig. 4 ist ein Blockdiagramm und zeigt Teile einer MPEG-2 oder NDTV Verbindungsvorrichtung (splicer) und eines MPEG-2 oder HDTV Decoders gemäß der vorliegenden Erfindung. Die Verbindungsvorrichtung enthält einen Prozessor 412, welcher gekoppelt ist, um die Haupt- und eingefügten MPEG-2 HDTV Signale, STREAM1 bzw. STREAM2 zu empfangen. Jedes dieser Signale kann erzeugt werden durch einen herkömmlichen HDTV Codierer, wie z. B. beschrieben in dem US Patent Nr. 5,294,974 mit dem Titel HIGH DEFINITION VIDEO ENCODING SYSTEM HAVING COLOR-SENSITIVE QUANTIZATION. Alternativ können diese Signale erzeugt werden von einem MPEG-2 Codierer, wie z. B. derjenige, welcher beschrieben wurde in ISO/IEC 13818-2 DIS.
- Der Prozessor 412 ist mit zwei Puffern BStest 414 und BSdec 416 gekoppelt. Diese Puffer sind vorzugsweise identisch. Der Puffer 414 wird verwendet um Information zu gewinnen, aus welchem der Wert NSTUFF berechnet wird. Das tatsächliche Verbinden wird durchgeführt unter Verwendung des Puffers 416. Das verbundene (spliced) Signal wird dann übertragen von dem Puffer 416 zu dem Eingabepuffer 424 des Decoders 420. Der Decoder 420 enthält auch einen Prozessor 422, welcher Daten von dem Eingabepuffer 424 erhält, um ein bewegtes Bild wiederzugeben.
- Fig. 5 ist ein Ablaufdiagramm, welches das Verfahren veranschaulicht, welches den Prozessor 412 steuert beim Sammeln von Informationen über die Sequenzen STREAM1 und STREAM2. Dieses Verfahren beginnt bei Schritt 510. Bei Schritt 512 initialisiert der Prozessor den Puffer 414 durch Setzen dessen Schreib-Adress- Zeigers auf den Anfang des Puffers. Bei Schritt 514 sendet de Prozessor STREAM1 an den Puffer mit der Daten-Rate, welche spezifiziert ist in dem Sequenz-Kopf (header) für STREAM1. Es wird angemerkt, dass bei der beispielhaften Ausführungsform der Erfindung beide, STREAM1 und STREAM2, gespeicherte Signale sind (z. B. von digitalen Videobandrecordern gewonnen). Demzufolge kann auf die Signale zweimal zugegriffen werden, einmal um die Verbindungs (splicing)-Parameter zu bestimmen und nochmal um den tatsächlichen Verbindungs-Vorgang durchzuführen. Zum Verbinden von zwei Signalen, welche nicht gespeichert sind, jedoch z. B. von einer Satelliten-Einspeisung kommen, kann eine kompensierende Verzögerung (nicht gezeigt) erforderlich sein, so dass die Verbindungs-Parameter bestimmt werden können bevor der tatsächliche Verbindungs-Vorgang auftritt.
- Bei Schritt 514 bestimmt das Verfahren ob der Einfügungs-Punkt, unmittelbar nach dem Bild, dargestellt durch die Zugriffs-Einheit AU1, in dem Puffer 414 gespeichert wurde. Bis AU1 empfangen wird, wird jede Zugriffs-Einheit, welche empfangen wird, von dem Puffer 414 entfernt zu dem Zeitpunkt, welcher angezeigt ist durch das Decodier-Zeit-Stempel (DTS)-Feld der Zugriffseinheit. Mit anderen Worten werden die Daten von dem Puffer 414 in der gleichen Sequenz und mit dem gleichen Zeitablauf entfernt, wie sie entfernt würden von einem Eingabepuffer durch einen Decoder, wie z. B. dem in Fig. 4 gezeigten Decoder 420. Selbst wenn jede Zugriffseinheit entfernt wird, wird das Zuführen der Sequenz STREAM1 fortgesetzt mit deren geeigneter Daten-Rate, wie durch Schritt 520 gekennzeichnet, und die Steuerung wird übertragen zu Schritt 516, um zu bestimmen, ob AU1 empfangen wurde.
- Sobald die Zugriffs-Einheit AU1 empfangen wurde, wird die Steuerung auf Schritt 522 übertragen, um die Werte für Tlast und Nlast zu bestimmen. Wie in Fig. 2a gezeigt, ist Tlast die Differenz der Zeit zwischen dem Zeitpunkt wenn AU1 empfangen wurde und DTS1, dem Decodier-Zeit-Stempel für AU1, der Zeit bei welcher AU1 von dem Eingabe-Puffer zur Verarbeitung gelesen werden soll. Nlast ist eine Anzahl von Bits, übertragen während des Zeitintervalls Tlast. Wenn STREAM1 ein Strom mit konstanter Bit-Rate ist, dann ist Nlast einfach Tlast mal der Bit-Rate. Wenn STREAM1 jedoch ein Strom mit variabler Bit-Rate ist, kann Nlast jede Anzahl von Bits sein, welche geringer ist als die VBV Puffer-Größe. Bei einer praktischen Anwendung, wenn STREAM1 ein Strom mit variabler Bit-Rate ist, kann Nlast gleich Tlast mal Rmax sein, wobei Rmax die maximale Bit-Rate für den Strom mit variabler Rate ist, solange Nlast nicht die VBV Puffer-Größe überschreitet.
- Als nächstes bestimmt bei Schritt 524 das Verfahren Werte für DTSnext, Tnext und Nnext. DTSnext ist die Zeit zu dem nächsten Decoder-Zeit-Stempel nach DTS1. In dem MPEG Standard treten die Decoder-Zeit-Stempel bei regelmäßigen Intervallen auf. Entsprechend kann DTSnext bestimmt werden durch das Berechnen der Differenz zwischen DTS1 und dem vorhergehenden Decoder-Zeit-Stempel und dann dem Hinzufügen dieser Differenz zu DTS1. Alternativ kann dieser Wert bestimmt werden durch das Überwachen von STREAM1, Extrahieren bzw. Gewinnender DTS Werte aus den Köpfen der Zugriffs-Einheit, welche auf AU1, folgen bis ein DTS auftritt, welcher anders ist als DTS1. Wie in Fig. 2a gezeigt, wird Text berechnet durch Subtrahieren von DTS1 von DTSnext. Ähnlich Wird Nnext, die Anzahl der Bits der Daten, welche in dem Puffer während des Zeitintervalls Text gespeichert werden, berechnet durch Multiplizieren von Tnext mit der Daten-Rate R1 von STREAM1, oder mit jeder Rate welche geringer ist als oder gleich der maximalen Daten-Strom-Rate Rmax[p.1], wie definiert in ISO/IEC 13818-1 und 150/IEC 13818-2. Diese Daten-Rate ist aus dem Sequenz-Kopf erhältlich. Wenn STREAM1 ein Daten-Strom mit variabler Rate ist, wie in Fig. 3a gezeigt, ist R1 jede Daten-Rate, welche kleiner ist als oder gleich der maximalen Daten-Rate für den Daten-Strom Rmax[p.1], wie definiert in ISO/IEC 13818-1 und ISO/IEC 13818-2.
- Bei Schritt 526 leert das Verfahren wieder den Puffer 414, sobald diese Werte bestimmt wurden, und beginnt bei Schritt 528 mit dem Speichern von Daten von STREAM2 in dem Puffer 414. Diese Daten werden in dem Puffer gespeichert mit der Bit-Rate von STREAM2. Wie durch die Schleife gezeigt, welche Schritt 532 aufweist, werden die Daten gespeichert bis zu einer Zeit entsprechend dem Decodier-Zeit- Stempel für die erste Zugriffs-Einheit von STREAM2. Diese Zeit ist bezeichnet mit DTS2*. Die Menge der Daten, welche bei DTS2* in dem Puffer 414 gespeichert sind, wird bezeichnet mit Nnew und dieser Wert wird gespeichert durch das Verfahren bei Schritt 534. Bei Schritt 536 bestimmt das Verfahren, ob STREAM2 ein Strom mit fester Rate oder ein Strom mit variabler Rate ist. Wenn dies ein Strom mit variabler Rate ist, wird die Steuerung übertragen auf Schritt 538, um einen Wert R2 zu bestimmen, welcher die Bit-Rate von STREAM2 darstellt. In diesem Fall wird R2 der Mittelwert der Daten-Raten über das Zeit-Intervall, definiert durch DTS2*, zugewiesen. Es wird daran gedacht, das R2 jede Rate zwischen dieser durchschnittlichen Daten-Rate und der maximalen Daten-Rate, welche erlaubt ist für STREAM2, haben kann, wie aus dessen Sequenz-Kopf bestimmt. Bei Schritt 540 endet das Verfahren zum Sammeln der Parameter.
- Nachdem die Parameter bestimmt wurden berechnet der Prozessor 412 den Wert NSTUFF. Dieses Verfahren beginnt bei Schritt 610 von Fig. 6. Bei Schritt 612 wird eine temporäre Variable K auf Null gesetzt. Als nächstes berechnet Schritt 614 einen Wert Nsplc, welcher eine Menge von Daten darstellt, welche in den Puffer mit der Daten-Rate R2 geschrieben werden sollen.
- Bei einigen Verbindungen (splices) kann die Menge der Daten, dargestellt durch Nnew, nicht dazu geeignet sein in den Puffer gespeichert zu werden mit der Daten- Rate R1 während des Zeitintervalls Text. Diese Situation wird durch die Schleife bearbeitet, welche die Schritte 614, 616 und 618 aufweist. Bei Schritt 614 wird ein Versuchswert für Nsplc bestimmt als das Produkt von K, Text und R2. Bei Schritt 616 wird dieser Versuchswert verglichen mit der Größe New minus Nlast minus Nnext.
- Wenn jedoch Nsplc größer oder gleich ist zu Nnew minus Nlast minus Nnext bei Schritt 616, dann wird die Steuerung übertragen auf Schritt 620, um den Wert von NSTUFF gemäß Gleichung (1) zu bestimmen.
- NSTUFF = Nlast + Nnext + Nsplc - Nnew (1)
- Bei Schritt 622 endet das Verfahren. Die Erfinder haben bestimmt, dass wenn diese Anzahl der Füll-Bits hinzugefügt wird vor der eingefügten Sequenz STREAM2, dann wird es keinen Überlauf des Eingabepuffers geben, wenn der Datenstrom empfangen wird.
- Nachdem ein geeigneter Wert von NSTUFF bestimmt wurde, führt der Prozessor 412 den in Fig. 7 gezeigten Prozess aus, um STREAM2 mit STREAM1 zu verbinden. Dieser Prozess beginnt bei Schritt 710 durch das Leeren des Puffers BSdec, 416, wie in Fig. 4 gezeigt. Bei Schritt 712 sendet der Prozessor 412 Daten von STREAM1 in den Puffer 416 mit der Daten-Rate von STREAM1. Bei Schritt 714 bestimmt der Prozess ob das letzte Bit von AU1 in dem Puffer 416 geschrieben wurde. Wenn dies nicht der Fall ist, fährt der Prozess fort Daten von STREAM1 zur Verfügung zu stellen bis AU1 gespeichert wurde, wie durch die Schritte 716 und 718 bezeichnet, und entfernt alle AU's vor AU1 bei Intervallen entsprechend ihren Decodier- Zeit-Stempeln (DTS's).
- Nachdem AU1 gespeichert wurde, entfernt der Prozess bei Schritt 720 alle AU's in dem Puffer 416, welche vorausgehen und AU1 bei dem entsprechenden Decodier- Zeit-Stempel einer jeden AU enthalten. Beginnend bei der Zeit, zu welcher AU1 gespeichert wurde, sendet der Prozess bei Schritt 722 NSTUFF Füll-Bits an den Puffer 416 mit der Bit-Rate R1. Bei Schritt 724 bestimmt der Prozess ob alle NSTUFF der Füll-Bits gesendet wurden vor der Zelt DTSnext. Wenn nicht, wird die Steuerung übertragen auf Schritt 734, welche bestimmt ob alle NSTUFF der Füll-Bits gesendet wurden zur Zeit DTSnext. Wenn diese Bedingung nicht erfüllt ist, wird der Schritt 736 ausgeführt, um die verbleibenden Füll-Bits mit der Rate R2 an den Puffer 416 zu senden.
- Wenn jedoch bei Schritt 724 bestimmt wurde, dass die NSTUFF Füll-Bits gesendet wurden vor DTSnext, wird Schritt 726 ausgeführt, welcher mit dem Senden des Anfangsteils von STREAM2 an den Puffer 416 mit einer Bit-Rate R1 beginnt. Bei Schritt 728 bestimmt der Prozess, ob die Variable K den Wert Null hat. Wenn nicht, wird die Steuerung auf Schritt 738 übertragen, bei welchem Daten von STREAM2 an den Puffer 416 mit der Bit-Rate R2 gesendet werden. Schritt 738 wird auch ausgeführt nach Schritt 734, wenn bestimmt wird, dass NSTUFF Bits zum Zeltpunkt DTSnext gesendet wurden und nach dem Schritt 736. Nach dem Schritt 738 wird Schritt 740 ausgeführt, welcher AU2 von dem Puffer 416 zu einer Zeit entsprechend DTS2 entfernt.
- Obwohl die oben beschriebenen Ausführungsformen Füll-Bits als die Null-Information verwendet haben, welche eingefügt wird zwischen den verbundenen Bit-Strömen, wird daran gedacht, dass andere Typen einer Null-Information, z. B. Null-Pakete, bei geeigneten Umständen verwendet werden könnten. Alternativ können auch Codes verwendet werden, welche in einer "Null-Zeit" resultieren. Diese Codes können z. B. vorübergehend das Eingeben von Daten in den VBV Puffer aussetzen. Welches Protokoll auch immer verwendet wird, es wird angenommen, dass beide, der Codierer und der Decoder, nach dem gleichen Protokoll arbeiten, so dass keine Information in den VBV Puffer während der definierten Zeitperiode gelangt.
- Die Fig. 7a, 7b und 7c sind Diagramme des Puffer-Füllgrades über die Zeit, welche eine Verbindung zeigen, bei welcher K einen Wert Eins hat. In Fig. 7c wird angemerkt, dass zwischen der Zeit, welche angezeigt ist durch DTSnext und der Zeit, welche angezeigt wird durch DTS2, die Bit-Rate R2 ist, die Bit-Rate von STREAM2, wenn STREAM2 eine Sequenz mit konstanter Bit-Rate ist, und dies ist die durchschnittliche Bit-Rate während T2* (in Fig. 7b gezeigt), wenn STREAM2 eine Sequenz mit variabler Bit-Rate ist.
- Wenn jedoch bei Schritt 728 bestimmt wurde, dass die Variable K gleich Null ist, dann wird bei Schritt 730 die erste Zugriffs-Einheit von STREAM2, AU2, aus dem Puffer entfernt. Nach Schritt 730 oder Schritt 740 wird Schritt 732 ausgeführt, welcher fortfährt Daten von STREAM 2 zur Verfügung zu stellen, mit der Bit-Rate von STREAM2. Dies ist der letzte Schrift des Verbindungs-Verfahrens.
- Wie in Fig. 4 gezeigt, werden Daten entfernt von dem Puffer 416 und angelegt an den Eingabe-Puffer 424 des Decoders 420. Der Puffer 424 ignoriert die Füll-Bits, was effektiv das Anlegen der STREAM2 Daten verzögert, bis ausreichend Daten entfernt wurden aus dem Eingabe-Puffer 424, durch den Prozessor 422, um Platz für die STREAM2 Daten zu schaffen.
- Die oben beschriebenen Ausführungsformen verwenden das Intervall zwischen aufeinanderfolgenden Decodier-Zeit-Stempeln als das Intervall, in welchem die Menge der Daten in STREAM1 und STREAM2 gemessen werden. Alternativ können andere Zeitintervalle verwendet werden. Bei einer alternativen Ausführungsform kann z. B. das Intervall ein Vollbild (frame)-Intervall sein und die Anzahl der Bits, welche zur Verfügung gestellt werden bei STREAM1 oder STREAM2, können die Anzahl der Bits sein, welche zur Verfügung gestellt werden in einem Vollbild-Intervall. Für Ströme mit einer konstanten Bit-Rate kann diese Anzahl bzw. Nummer berechnet werden als die Bit-Rate mal das Vollbild-Intervall. Für Ströme mit variabler Bit-Rate kann diese Anzahl die maximale Bit-Rate mal dem Vollbild-Intervall sein. Bei dieser alternativen Ausführungsform kann Nlast die Anzahl der Bits sein, welche zur Verfügung gestellt werden in STREAM1 während einem Vollbild-Intervall; Nnext kann die Anzahl der Bits sein, welche zur Verfügung gestellt werden in STREAM2 während einem Vollbild-Intervall, Nsplc kann als eine ganze Zahl K mal Nnext bestimmt werden. Der Wert für Nnew in dieser Ausführungsform ist der gleiche wie in der vorhergehenden Ausführungsform. Unter Verwendung dieser alternativen Ausführungsform ist die Menge der Null-Information (oder Null-Zeit) NSTUFF, welche eingefügt werden muss in den Bit- Strom, durch die Gleichung (2) definiert.
- NSTUFF = Nlast + K·Nnext - Nnew
- In Gleichung (2) ist K eine ganzzahlige Nummer, welche die Ungleichung K·Nnext ≥ Nnew - Nlast erfüllt. Zusätzlich kann der Wert von K abhängen von den zwei Daten-Strömen, welche verbunden werden. Zum Beispiel, wenn die zwei Daten- Ströme Ströme mit einer konstanten Bit-Rate sind, welche verschiedene Raten haben, kann ein größerer Wert für K wünschenswert sein, um die konstante Bit-Rate für STREAM2 beizubehalten. Zusätzlich können größere Werte von K wünschenswert sein für einige Anwendungen, welche die Konsistenz der Halbbild-Parität bzw. - Gleichheit über die Sequenz-Grenze aufrecht erhalten sollen oder welche längere Zeitintervalle benötigen, um auf Veränderungen der Sequenz-Kopf-Parameter zwischen STREAM1 und STREAM2 zu reagieren. Ein Fachmann auf dem Gebiet des Editierens von MPEG Bit-Strömen kann leicht geeignete Werte von K für eine bestimmte Anwendung bestimmen.
- Während die Erfindung beschrieben wurde im Hinblick auf eine beispielhafte Ausführungsform, wird daran gedacht, dass diese ausgeführt werden kann wie oben beschrieben, gemäß den folgenden Ansprüchen.
Claims (4)
1. Verfahren zur Verbindung eines ersten Datenstroms mit variabler Bit-Rate und
eines zweiten Datenstroms mit variabler Bit-Rate, wobei die ersten und zweiten
Datenströme jeweils erste und zweite kodierte Videosignale darstellen, wobei das
Verfahren die ersten und zweiten Datenströme bei einer ausgewählten Grenze in
dem ersten Datenstrom verbindet unter Verwendung eines Video-Puffer-Prüfer
(VBV; video buffering verifier) Puffers mit einer Größe, wobei jeder der ersten und
zweiten Datenströme eine maximale Bit-Rate hat und eine Mehrzahl von
Dekodier-Zeit-Stempeln, welche Zeitpunkte darstellen, bei welchen Daten von
dem Puffer abgerufen werden, wobei das Verfahren die Schritte aufweist:
Analysieren der ersten und zweiten Datenströme, um eine Menge einer Null-
Information zu bestimmen, welche eingefügt werden soll in den ersten
Datenstrom nach der ausgewählten Grenze, wobei die Menge der Null-
Information (NSTUFF) bestimmt wird aus den Dekodier-Zeit-Stempeln in den
ersten und zweiten Daten-Strömen, den Daten-Raten der ersten und zweiten
Daten-Ströme, den maximalen Bit-Raten der ersten und zweiten Daten-Ströme
und der VBV-Puffergröße, und die Null-Information ist in der Form von Null-
Pakten;
Übertragen des ersten Datenstromes bis zu der ausgewählten Grenze des
Puffers;
Übertragen der bestimmten Menge der Null-Information zu dem Puffer;
Übertragen des zweiten Datenstromes zu dem Puffer; und
Abrufen des verbundenen Datenstromes von dem Puffer.
2. Verfahren zum Verbinden eines ersten Datenstromes mit variabler Bit-Rate und
eines zweiten Datenstromes, wobei die ersten und zweiten Datenströme jeweils
erste und zweite kodierte Videosignale darstellen, wobei das Verfahren die ersten
und zweiten Datenströme bei einer ausgewählten Grenze in dem ersten
Datenstrom verbindet unter Verwendung eines Video-Puffer-Prüfer (VBV) Puffers
mit einer Größe, wobei jeder der ersten und zweiten Datenströme eine Mehrzahl
von Dekodier-Zeit-Stempeln hat, welche Zeiten darstellen, bei welchen Daten aus
dem Puffer abgerufen werden, wobei das Verfahren die Schritte aufweist:
Analysieren der ersten und zweiten Datenströme, um eine Menge einer Null-
Information zu bestimmen, welche eingefügt werden soll in den ersten
Datenstrom nach der ausgewählten Grenze, wobei die Menge der Null-
Information (NSTUFF) bestimmt wird aus den Dekodier-Zeit-Stempeln in den
ersten und zweiten Daten-Strömen, den Daten-Raten der ersten und zweiten
Daten-Ströme und der VBV-Puffergröße, und die Null-Information ist in der Form
eines übertragenen Codes welcher eine Menge einer Null-Zeit spezifiziert;
Übertragen des ersten Datenstromes bis zu der ausgewählten Grenze des
Puffers;
Übertragen der Codes zu dem Puffer;
Übertragen des zweiten Datenstromes zu dem Puffer; und
Abrufen des verbundenen Datenstromes von dem Puffer.
3. Verfahren zum Verbinden von ersten und zweiten Datenströmen, welche jeweils
erste und zweite kodierte Videosignale darstellen, bei einer ausgewählten Grenze
in dem ersten Datenstrom unter Verwendung eines Puffers, wobei jedes der
ersten und zweiten Videosignale eine Vollbild(frame)-Rate hat und wobei der
zweite Datenstrom mindestens einen Dekodier-Zeit-Stempel hat, welcher eine
Zeit darstellt, bei welcher Daten aus dem Puffer abgerufen werden, wobei das
Verfahren die Schritte aufweist:
Analysieren der ersten und zweiten Datenströme, um eine Menge einer Null-
Information zu bestimmen, welche eingefügt werden soll in den ersten
Datenstrom nach der ausgewählten Grenze, wobei die Menge der Null-
Information bestimmt ist durch die Gleichung:
NSTUFF = Nlast + K·Nnext - Nnew
wobei NSTUFF die Menge der Null-Information darstellt, Nlast stellt eine Anzahl
der Bits in dem ersten Datenstrom dar zwischen dem Zeitpunkt, zu welchem
Daten, welche auf die ausgewählte Grenze folgen, in dem Puffer gespeichert
werden und dem Dekodier-Zeit-Stempel; Nnext stellt eine Anzahl von Bits des
zweiten Datenstroms dar, welche in einem Vollbild-Intervall des zweiten Video-
Signals zur Verfügung gestellt werden würde; Nnew stellt eine Anzahl von Bits in
dem zweiten Datenstrom dar, welche auftritt bevor der Dekodier-Zeit-Stempel des
zweiten Datenstroms und der Wert von K bestimmt wird durch die Ungleichung K
·Nnext ≥ Nnew - Nlast
Übertragen des ersten Datenstromes bis zu der ausgewählten Grenze des
Puffers;
Übertragen der bestimmten Menge der Null-Information zu dem Puffer;
Übertragen des zweiten Datenstromes zu dem Puffer; und
Abrufen des verbundenen Datenstromes von dem Puffer.
4. Vorrichtung zum Verbinden von ersten und zweiten Datenströmen, welche jeweils
erste und zweite kodierte Signale darstellen, bei einer ausgewählten Grenze in
dem ersten Datenstrom unter Verwendung eines Puffers, wobei jeder der ersten
und zweiten Datenströme eine Vollbild(frame)-Rate hat und wobei der zweite
Datenstrom mindestens einen Dekodier-Zeit-Stempel hat, welcher eine Zeit
darstellt, bei welcher Daten aus dem Puffer abgerufen werden, wobei die
Vorrichtung aufweist:
eine Vorrichtung zum Analysieren des ersten und zweiten Datenstromes um eine
Menge einer Null-Information zu bestimmen, welche eingefügt werden soll in den
ersten Datenstrom nach der ausgewählten Grenze, wobei die Menge der Null-
Information bestimmt ist durch die Gleichung:
NSTUFF = Nlast + K·Nnext - Nnew
wobei NSTUFF die Menge der Null-Information darstellt, Nlast stellt eine Anzahl
der Bits in dem ersten Datenstrom dar zwischen dem Zeitpunkt, zu welchem
Daten, welche auf die ausgewählte Grenze folgen, in dem Puffer gespeichert
werden und dem Dekodier-Zeit-Stempel; Nnext stellt eine Anzahl von Bits des
zweiten Datenstroms dar, welche in einem Vollbild-Intervall des zweiten Video-
Signals zur Verfügung gestellt werden würde; Nnew stellt eine Anzahl von Bits in
dem zweiten Datenstrom dar, welche auftritt bevor der Dekodier-Zeit-Stempel des
zweiten Datenstroms und der Wert von K bestimmt wird durch die Ungleichung K
·Nnext ≥ Nnew - Nlast
eine Vorrichtung zum Übertragen des ersten Datenstromes bis zu der
ausgewählten Grenze des Puffers;
eine Vorrichtung zum Übertragen der bestimmten Menge der Null-Information zu
dem Puffer;
eine Vorrichtung zum Übertragen des zweiten Datenstromes zu dem Puffer; und
eine Vorrichtung zum Abrufen des verbundenen Datenstromes von dem Puffer.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/505,581 US5534944A (en) | 1994-07-15 | 1995-07-21 | Method of splicing MPEG encoded video |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69625415D1 DE69625415D1 (de) | 2003-01-30 |
DE69625415T2 true DE69625415T2 (de) | 2003-09-25 |
Family
ID=24010921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69625415T Expired - Fee Related DE69625415T2 (de) | 1995-07-21 | 1996-06-05 | Verfahren zur Verbindung von MPEG-Videosequenzen |
Country Status (4)
Country | Link |
---|---|
US (1) | US5534944A (de) |
EP (1) | EP0755157B1 (de) |
JP (1) | JPH09139677A (de) |
DE (1) | DE69625415T2 (de) |
Families Citing this family (131)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020129374A1 (en) * | 1991-11-25 | 2002-09-12 | Michael J. Freeman | Compressed digital-data seamless video switching system |
US9286294B2 (en) | 1992-12-09 | 2016-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content suggestion engine |
US7168084B1 (en) | 1992-12-09 | 2007-01-23 | Sedna Patent Services, Llc | Method and apparatus for targeting virtual objects |
IT1266945B1 (it) * | 1994-09-29 | 1997-01-21 | Cselt Centro Studi Lab Telecom | Procedimento di multiplazione per flussi di segnali audiovisivi codificati secondo lo standard mpeg1. |
EP2190207A1 (de) * | 1994-10-21 | 2010-05-26 | AT&T Corporation | Verfahren zur Videopufferüberprüfung |
US5687095A (en) * | 1994-11-01 | 1997-11-11 | Lucent Technologies Inc. | Video transmission rate matching for multimedia communication systems |
US7349976B1 (en) | 1994-11-30 | 2008-03-25 | Realnetworks, Inc. | Audio-on-demand communication system |
US5793980A (en) * | 1994-11-30 | 1998-08-11 | Realnetworks, Inc. | Audio-on-demand communication system |
GB9424429D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics Uk Ltd | Audio/video timing discrepancy management |
GB9424436D0 (en) * | 1994-12-02 | 1995-01-18 | Philips Electronics | Video editing buffer management |
KR100407085B1 (ko) * | 1994-12-28 | 2004-03-20 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 가변비트-레이트압축방법및비디오신호인코딩장치 |
US7917922B1 (en) | 1995-06-08 | 2011-03-29 | Schwab Barry H | Video input switching and signal processing apparatus |
US6169843B1 (en) * | 1995-12-01 | 2001-01-02 | Harmonic, Inc. | Recording and playback of audio-video transport streams |
US5612956A (en) * | 1995-12-15 | 1997-03-18 | General Instrument Corporation Of Delaware | Reformatting of variable rate data for fixed rate communication |
JP3405034B2 (ja) * | 1995-12-27 | 2003-05-12 | ソニー株式会社 | ディジタル信号多重化方法及び装置、並びにディジタル信号記録媒体 |
US6055271A (en) * | 1996-01-18 | 2000-04-25 | Sony Corporation | Signal encoding method and apparatus and signal transmission method and apparatus involving the use of a number of pseudo access units |
US6167550A (en) * | 1996-02-09 | 2000-12-26 | Overland Data, Inc. | Write format for digital data storage |
US5931968A (en) | 1996-02-09 | 1999-08-03 | Overland Data, Inc. | Digital data recording channel |
US6543024B2 (en) | 1996-02-09 | 2003-04-01 | Overland Storage, Inc. | Write format for digital data storage |
US5859660A (en) * | 1996-02-29 | 1999-01-12 | Perkins; Michael G. | Non-seamless splicing of audio-video transport streams |
US6137834A (en) * | 1996-05-29 | 2000-10-24 | Sarnoff Corporation | Method and apparatus for splicing compressed information streams |
JP3668556B2 (ja) * | 1996-06-13 | 2005-07-06 | ソニー株式会社 | ディジタル信号符号化方法 |
US5917830A (en) * | 1996-10-18 | 1999-06-29 | General Instrument Corporation | Splicing compressed packetized digital video streams |
US7448062B1 (en) * | 1996-10-18 | 2008-11-04 | Microsoft Corporation | Seamless playback of multiple clips of media data across a data network |
WO1998032281A1 (en) * | 1997-01-21 | 1998-07-23 | Sarnoff Corporation | Information stream syntax for indicating the presence of a splice point |
US6038000A (en) * | 1997-05-28 | 2000-03-14 | Sarnoff Corporation | Information stream syntax for indicating the presence of a splice point |
US20020154694A1 (en) * | 1997-03-21 | 2002-10-24 | Christopher H. Birch | Bit stream splicer with variable-rate output |
US5982436A (en) * | 1997-03-28 | 1999-11-09 | Philips Electronics North America Corp. | Method for seamless splicing in a video encoder |
US6357045B1 (en) * | 1997-03-31 | 2002-03-12 | Matsushita Electric Industrial Co., Ltd. | Apparatus and method for generating a time-multiplexed channel surfing signal at television head-end sites |
JPH10285529A (ja) * | 1997-04-04 | 1998-10-23 | Sony Corp | 画像編集装置および画像編集方法 |
US6333950B1 (en) * | 1997-04-18 | 2001-12-25 | Canon Kabushiki Kaisha | Encoding apparatus and method and computer readable recording medium in which encoding program has been recorded |
US6233253B1 (en) * | 1997-05-23 | 2001-05-15 | Thomson Licensing S.A. | System for digital data format conversion and bit stream generation |
WO1998054910A2 (en) * | 1997-05-27 | 1998-12-03 | Koninklijke Philips Electronics N.V. | Method of switching video sequences and corresponding switching device and decoding system |
US6298088B1 (en) * | 1997-05-28 | 2001-10-02 | Sarnoff Corporation | Method and apparatus for splicing compressed information signals |
CN1236527A (zh) * | 1997-07-22 | 1999-11-24 | 皇家菲利浦电子有限公司 | 在视频序列之间进行切换的方法及相应的装置 |
GB9716545D0 (en) * | 1997-08-06 | 1997-10-08 | Nds Ltd | A method and apparatus for switching between digital bit-streams |
GB2328099B (en) * | 1997-08-08 | 2002-07-03 | British Broadcasting Corp | Processing coded video |
KR100574186B1 (ko) * | 1997-10-03 | 2006-04-27 | 소니 가부시끼 가이샤 | 부호화 스트림 스플라이싱 장치 및 방법과 부호화 스트림 생성 장치 및 방법과 편집 장치 및 방법 및 편집 시스템 |
JP3468115B2 (ja) * | 1997-11-25 | 2003-11-17 | 三菱電機株式会社 | データ切換装置 |
US6301428B1 (en) * | 1997-12-09 | 2001-10-09 | Lsi Logic Corporation | Compressed video editor with transition buffer matcher |
JP4232209B2 (ja) | 1998-01-19 | 2009-03-04 | ソニー株式会社 | 圧縮画像データの編集装置及び圧縮画像データの編集方法 |
US6414998B1 (en) * | 1998-01-27 | 2002-07-02 | Sony Corporation | Method and apparatus for inserting an image material |
US6487721B1 (en) | 1998-01-30 | 2002-11-26 | General Instrument Corporation | Apparatus and method for digital advertisement insertion in a bitstream |
JP4223567B2 (ja) * | 1998-02-03 | 2009-02-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 符号化ビデオシーケンスの切り替え方法及び装置 |
WO1999040728A1 (en) * | 1998-02-03 | 1999-08-12 | Koninklijke Philips Electronics N.V. | Method of switching of coded video sequences and corresponding device |
JPH11261958A (ja) * | 1998-03-09 | 1999-09-24 | Sony Corp | 映像編集装置及び映像編集方法 |
GB9807202D0 (en) | 1998-04-03 | 1998-06-03 | Nds Ltd | A method and apparatus for processing compressed video data streams |
US7031348B1 (en) * | 1998-04-04 | 2006-04-18 | Optibase, Ltd. | Apparatus and method of splicing digital video streams |
US6252873B1 (en) | 1998-06-17 | 2001-06-26 | Gregory O. Vines | Method of ensuring a smooth transition between MPEG-2 transport streams |
EP1095520A2 (de) * | 1998-06-29 | 2001-05-02 | Limt Technology AB | Verfahren und vorrichtung zur verbindung von datenströmen |
US9924234B2 (en) | 1998-07-23 | 2018-03-20 | Comcast Ip Holdings I, Llc | Data structure and methods for providing an interactive program |
US7091968B1 (en) | 1998-07-23 | 2006-08-15 | Sedna Patent Services, Llc | Method and apparatus for encoding a user interface |
US6754905B2 (en) | 1998-07-23 | 2004-06-22 | Diva Systems Corporation | Data structure and methods for providing an interactive program guide |
KR100655248B1 (ko) | 1998-07-23 | 2006-12-08 | 세드나 페이턴트 서비시즈, 엘엘씨 | 대화형 사용자 인터페이스 |
GB9817302D0 (en) * | 1998-08-10 | 1998-10-07 | Nds Ltd | Method and apparatus for managing a decoder buffer |
KR20010032145A (ko) * | 1998-09-16 | 2001-04-16 | 에이씨티브이, 인크. | 압축 디지털 데이터의 연결 흔적이 없는 비디오 스위칭시스템 |
US6912251B1 (en) * | 1998-09-25 | 2005-06-28 | Sarnoff Corporation | Frame-accurate seamless splicing of information streams |
JP2000165803A (ja) * | 1998-11-26 | 2000-06-16 | Sony Corp | 映像信号記録再生装置 |
US20020087973A1 (en) * | 2000-12-28 | 2002-07-04 | Hamilton Jeffrey S. | Inserting local signals during MPEG channel changes |
US7068724B1 (en) | 1999-10-20 | 2006-06-27 | Prime Research Alliance E., Inc. | Method and apparatus for inserting digital media advertisements into statistical multiplexed streams |
US6704930B1 (en) | 1999-04-20 | 2004-03-09 | Expanse Networks, Inc. | Advertisement insertion techniques for digital video streams |
JP3918332B2 (ja) * | 1998-12-04 | 2007-05-23 | ソニー株式会社 | 多重化装置、多重化方法及び記録媒体 |
GB2347812A (en) * | 1999-03-08 | 2000-09-13 | Nds Ltd | Real time splicing of video signals |
US6904610B1 (en) | 1999-04-15 | 2005-06-07 | Sedna Patent Services, Llc | Server-centric customized interactive program guide in an interactive television environment |
US7096487B1 (en) | 1999-10-27 | 2006-08-22 | Sedna Patent Services, Llc | Apparatus and method for combining realtime and non-realtime encoded content |
US6754271B1 (en) | 1999-04-15 | 2004-06-22 | Diva Systems Corporation | Temporal slice persistence method and apparatus for delivery of interactive program guide |
DE60039861D1 (de) * | 1999-04-20 | 2008-09-25 | Samsung Electronics Co Ltd | Werbeverwaltungssystem für digitale videoströme |
US7500258B1 (en) | 1999-05-10 | 2009-03-03 | Prime Research Alliance E., Inc. | Advertisement subgroups for digital streams |
US6330286B1 (en) * | 1999-06-09 | 2001-12-11 | Sarnoff Corporation | Flow control, latency control, and bitrate conversions in a timing correction and frame synchronization apparatus |
GB2353653B (en) * | 1999-08-26 | 2003-12-31 | Sony Uk Ltd | Signal processor |
US6480539B1 (en) | 1999-09-10 | 2002-11-12 | Thomson Licensing S.A. | Video encoding method and apparatus |
ATE439741T1 (de) * | 1999-10-20 | 2009-08-15 | Samsung Electronics Co Ltd | Verfahren und vorrichtung zum einfügen digitaler medienanzeigen in statistische gemultiplexte ströme |
US7394850B1 (en) | 1999-10-25 | 2008-07-01 | Sedna Patent Services, Llc | Method and apparatus for performing digital-to-digital video insertion |
WO2001031918A1 (en) * | 1999-10-25 | 2001-05-03 | Diva Systems Corporation | Method and apparatus for performing digital-to-digital video insertion |
EP1226713B1 (de) | 1999-10-27 | 2007-04-11 | Sedna Patent Services, LLC | Vielfache videoströme unter verwendung von slice-basierter kodierung |
US6993081B1 (en) | 1999-11-23 | 2006-01-31 | International Business Machines Corporation | Seamless splicing/spot-insertion for MPEG-2 digital video/audio stream |
US7096481B1 (en) | 2000-01-04 | 2006-08-22 | Emc Corporation | Preparation of metadata for splicing of encoded MPEG video and audio |
US6678332B1 (en) | 2000-01-04 | 2004-01-13 | Emc Corporation | Seamless splicing of encoded MPEG video and audio |
US6792047B1 (en) | 2000-01-04 | 2004-09-14 | Emc Corporation | Real time processing and streaming of spliced encoded MPEG video and associated audio |
US6681397B1 (en) * | 2000-01-21 | 2004-01-20 | Diva Systems Corp. | Visual improvement of video stream transitions |
US7366961B1 (en) | 2000-01-24 | 2008-04-29 | Ati Technologies, Inc. | Method and system for handling errors |
US6999424B1 (en) * | 2000-01-24 | 2006-02-14 | Ati Technologies, Inc. | Method for displaying data |
US6885680B1 (en) | 2000-01-24 | 2005-04-26 | Ati International Srl | Method for synchronizing to a data stream |
US6763390B1 (en) * | 2000-01-24 | 2004-07-13 | Ati Technologies, Inc. | Method and system for receiving and framing packetized data |
US6988238B1 (en) | 2000-01-24 | 2006-01-17 | Ati Technologies, Inc. | Method and system for handling errors and a system for receiving packet stream data |
JP3911380B2 (ja) * | 2000-03-31 | 2007-05-09 | 松下電器産業株式会社 | 転送レート制御装置 |
US20040148625A1 (en) * | 2000-04-20 | 2004-07-29 | Eldering Charles A | Advertisement management system for digital video streams |
US7113546B1 (en) | 2000-05-02 | 2006-09-26 | Ati Technologies, Inc. | System for handling compressed video data and method thereof |
CA2349914C (en) * | 2000-06-09 | 2013-07-30 | Invidi Technologies Corp. | Advertising delivery method |
KR100355438B1 (ko) * | 2000-06-24 | 2002-10-11 | 주식회사 하이닉스반도체 | 동영상 부호화기의 비트열 출력 버퍼 제어 방법 |
US6871006B1 (en) | 2000-06-30 | 2005-03-22 | Emc Corporation | Processing of MPEG encoded video for trick mode operation |
US6771703B1 (en) | 2000-06-30 | 2004-08-03 | Emc Corporation | Efficient scaling of nonscalable MPEG-2 Video |
US6937770B1 (en) | 2000-12-28 | 2005-08-30 | Emc Corporation | Adaptive bit rate control for rate reduction of MPEG coded video |
US7023924B1 (en) | 2000-12-28 | 2006-04-04 | Emc Corporation | Method of pausing an MPEG coded video stream |
US6807638B1 (en) * | 2000-12-29 | 2004-10-19 | Cisco Systems O.I.A. (1988) Ltd. | Apparatus for and method of in-band clock compensation |
US6907081B2 (en) * | 2001-03-30 | 2005-06-14 | Emc Corporation | MPEG encoder control protocol for on-line encoding and MPEG data storage |
US7174561B2 (en) * | 2001-04-13 | 2007-02-06 | Emc Corporation | MPEG dual-channel decoder data and control protocols for real-time video streaming |
KR100814431B1 (ko) * | 2001-04-25 | 2008-03-18 | 삼성전자주식회사 | 가변 비트레이트를 적용한 디지털 방송 송신장치 및 그방법, 비디오 데이타 부호화장치 및 그 방법 그리고방송신호의 복호화 시스템 및 그 방법 |
US7730509B2 (en) | 2001-06-08 | 2010-06-01 | Invidi Technologies Corporation | Asset delivery reporting in a broadcast network |
EP1988710B1 (de) * | 2001-06-15 | 2011-06-08 | Sharp Kabushiki Kaisha | Verfahren und Vorrichtung zur Datendekodierung |
US7793326B2 (en) | 2001-08-03 | 2010-09-07 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator |
US7908628B2 (en) | 2001-08-03 | 2011-03-15 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator content coding and formatting |
US6980594B2 (en) | 2001-09-11 | 2005-12-27 | Emc Corporation | Generation of MPEG slow motion playout |
US6968091B2 (en) * | 2001-09-18 | 2005-11-22 | Emc Corporation | Insertion of noise for reduction in the number of bits for variable-length coding of (run, level) pairs |
US6959116B2 (en) * | 2001-09-18 | 2005-10-25 | Emc Corporation | Largest magnitude indices selection for (run, level) encoding of a block coded picture |
US20030206596A1 (en) * | 2002-05-03 | 2003-11-06 | David Carver | Multimedia content assembly |
US7266147B2 (en) | 2003-03-31 | 2007-09-04 | Sharp Laboratories Of America, Inc. | Hypothetical reference decoder |
US20050060420A1 (en) * | 2003-09-11 | 2005-03-17 | Kovacevic Branko D. | System for decoding multimedia data and method thereof |
US7428339B2 (en) * | 2003-11-07 | 2008-09-23 | Arcsoft, Inc. | Pseudo-frames for MPEG-2 encoding |
KR100789365B1 (ko) * | 2004-12-10 | 2007-12-28 | 한국전자통신연구원 | 지상파 디엠비 신호의 스플라이싱 장치 및 그 방법 |
US20090094640A1 (en) * | 2007-09-26 | 2009-04-09 | Anderson Bruce J | Targeted advertising in unicast, multicast and hybrid distribution system contexts |
EP1842369B1 (de) | 2005-01-12 | 2020-04-08 | Invidi Technologies Corporation | Target-abdruckmodell zur bereitstellung von rundfunknetzanlagen |
JP2009536413A (ja) * | 2006-05-02 | 2009-10-08 | インビディ テクノロジーズ コーポレイション | 対象設定資産配信システムのためのファジイ論理ベースの閲覧者識別 |
US20130254787A1 (en) | 2006-05-02 | 2013-09-26 | Invidi Technologies Corporation | Method and apparatus to perform real-time audience estimation and commercial selection suitable for targeted advertising |
CA2654866C (en) * | 2006-06-12 | 2016-09-27 | Invidi Technologies Corporation | System and method for auctioning avails |
EP2039154A4 (de) * | 2006-06-12 | 2011-05-04 | Invidi Tech Corp | System und verfahren zur medieneingabe auf der basis von stichwortsuche |
US20100138290A1 (en) * | 2006-06-12 | 2010-06-03 | Invidi Technologies Corporation | System and Method for Auctioning Avails |
JP4221676B2 (ja) * | 2006-09-05 | 2009-02-12 | ソニー株式会社 | 情報処理装置および情報処理方法、記録媒体、並びに、プログラム |
WO2008094960A2 (en) * | 2007-01-30 | 2008-08-07 | Invidi Technologies Corporation | Asset targeting system for limited resource environments |
US8543667B2 (en) | 2008-01-14 | 2013-09-24 | Akamai Technologies, Inc. | Policy-based content insertion |
US8335262B2 (en) * | 2008-01-16 | 2012-12-18 | Verivue, Inc. | Dynamic rate adjustment to splice compressed video streams |
WO2009140691A2 (en) | 2008-05-16 | 2009-11-19 | Invidi Technologies Corporation | Request for information related to broadcast network content |
CA2733193C (en) | 2008-08-05 | 2016-11-01 | Invidi Technologies Corporation | National insertion of targeted advertisment |
EP2332111B2 (de) | 2008-08-06 | 2023-10-11 | Invidi Technologies Corporation | Datenabgleich von dritten für gezielte werbung |
US8743906B2 (en) * | 2009-01-23 | 2014-06-03 | Akamai Technologies, Inc. | Scalable seamless digital video stream splicing |
US9906757B2 (en) * | 2009-02-26 | 2018-02-27 | Akamai Technologies, Inc. | Deterministically skewing synchronized events for content streams |
US9565397B2 (en) * | 2009-02-26 | 2017-02-07 | Akamai Technologies, Inc. | Deterministically skewing transmission of content streams |
US8650602B2 (en) | 2009-02-27 | 2014-02-11 | Akamai Technologies, Inc. | Input queued content switching using a playlist |
WO2011160113A2 (en) | 2010-06-18 | 2011-12-22 | Akamai Technologies, Inc. | Extending a content delivery network (cdn) into a mobile or wireline network |
US9154813B2 (en) | 2011-06-09 | 2015-10-06 | Comcast Cable Communications, Llc | Multiple video content in a composite video stream |
CN109525358B (zh) * | 2017-09-18 | 2021-08-27 | 深圳市中兴微电子技术有限公司 | 映射方法及装置、解映射方法及装置、计算机存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3427416B2 (ja) * | 1993-05-25 | 2003-07-14 | ソニー株式会社 | 多重化データ分離装置および方法 |
EP0676756B1 (de) * | 1993-09-21 | 2001-06-27 | Sony Corporation | Verfahren und anlage zum übertragen von daten, datenkodierer und datenaufnahmemedium |
EP0692911B1 (de) * | 1994-07-15 | 2000-03-08 | Matsushita Electric Industrial Co., Ltd. | Verfahren zur Verbindung von MPEG-Videosequenzen |
-
1995
- 1995-07-21 US US08/505,581 patent/US5534944A/en not_active Expired - Lifetime
-
1996
- 1996-06-05 EP EP96109036A patent/EP0755157B1/de not_active Expired - Lifetime
- 1996-06-05 DE DE69625415T patent/DE69625415T2/de not_active Expired - Fee Related
- 1996-06-10 JP JP8147738A patent/JPH09139677A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
EP0755157A2 (de) | 1997-01-22 |
DE69625415D1 (de) | 2003-01-30 |
EP0755157A3 (de) | 1997-09-17 |
US5534944A (en) | 1996-07-09 |
EP0755157B1 (de) | 2002-12-18 |
JPH09139677A (ja) | 1997-05-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69625415T2 (de) | Verfahren zur Verbindung von MPEG-Videosequenzen | |
DE69515386T2 (de) | Verfahren zur Verbindung von MPEG-Videosequenzen | |
DE69425010T2 (de) | Prioritätsverarbeitung von kodierten Bildsignalen | |
DE69837081T2 (de) | Videopufferspeicher zur nahtlosen verbindung von mpeg-strömen | |
DE69838869T2 (de) | Vorrichtung und Verfahren zum Spleißen von codierten Datenströmen sowie Vorrichtung und Verfahren zur Erzeugung von codierten Datenströmen | |
DE69713435T2 (de) | Vorrichtung zum Dekodieren von MPEG kodierten Bildern mit Fehlerbehebung | |
DE69535553T2 (de) | Videokompression | |
DE69938093T2 (de) | Steuerung der Datenrate für einen MPEG-Transcoder ohne a-priori Kenntnis des Bildtyps | |
DE69803821T2 (de) | Verfahren zur rechnerisch graziösen Degradierung in einem audio-visuellen Kompressionssystem | |
DE69835039T2 (de) | Objektbasiertes audiovisuelles Endgerät und entsprechende Bitstromstruktur | |
DE69827548T2 (de) | Anordnung zur Vorverarbeitung für MPEG-2-Kodierung | |
DE69917971T2 (de) | Verfahren und Vorrichtung zur Verarbeitung von komprimierten Videodatenströmen | |
DE69331606T2 (de) | Datenwortindikator in einem system zur zusammenstellung von transportdatenpaketen. | |
DE69630173T2 (de) | Übertragungssystem und -einrichtung für sich bewegende Bilder | |
DE60032841T2 (de) | Signalprozessor zum nahtlosen Zusammenfügen von MPEG-2 Bitströmen in einem Videokoder | |
DE69526327T2 (de) | Umwandlungssystem für ein mpeg-informationssignal | |
DE69514508T2 (de) | Vorrichtung und methode zum übertragen und empfangen von videosignalen | |
DE69229773T2 (de) | Statistischer Multiplexer für ein Multikanal-Bildkomprimierungssystem und Demultiplexer | |
DE60313205T2 (de) | Bildpufferung für prädiktionsreferenzen und anzeige | |
DE69328531T2 (de) | Editor für digitale Videosignale mit Schutz vor Einzelbilderverlust | |
DE69430617T2 (de) | Dekoder und verfahren zur dekodierung | |
DE60033485T2 (de) | Formatierung und Speicherung von Videodaten | |
DE69835211T2 (de) | Umschaltung zwischen komprimierten videobitströmen | |
DE69822377T2 (de) | Vorrichtung und Verfahren zum Demultiplexen gemultiplexter Daten | |
DE102005032952A1 (de) | Statistischer Multiplexer mit schützenden Charakteristika vor durch redundante Systemelemente erzeugten äußeren Nachrichten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: PANASONIC CORP., KADOMA, OSAKA, JP |
|
8339 | Ceased/non-payment of the annual fee |