DE60131602T2 - Multiplexabhängige Videokomprimierung - Google Patents

Multiplexabhängige Videokomprimierung Download PDF

Info

Publication number
DE60131602T2
DE60131602T2 DE60131602T DE60131602T DE60131602T2 DE 60131602 T2 DE60131602 T2 DE 60131602T2 DE 60131602 T DE60131602 T DE 60131602T DE 60131602 T DE60131602 T DE 60131602T DE 60131602 T2 DE60131602 T2 DE 60131602T2
Authority
DE
Germany
Prior art keywords
bits
images
total number
available
program
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
DE60131602T
Other languages
English (en)
Other versions
DE60131602D1 (de
Inventor
Charles H. Beaverton van Dusen
Mayer D. Portland Schwartz
Guoyao D. Portland Yu
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.)
Arris Technology Inc
Original Assignee
Tut Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tut Systems Inc filed Critical Tut Systems Inc
Application granted granted Critical
Publication of DE60131602D1 publication Critical patent/DE60131602D1/de
Publication of DE60131602T2 publication Critical patent/DE60131602T2/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/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6373Control signals issued by the client directed to the server or network components for rate control, e.g. request to the server to modify its transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Time-Division Multiplex Systems (AREA)

Description

  • STAND DER TECHNIK
  • Die vorliegende Erfindung betrifft die komprimierte Videoverarbeitung und im Besonderen ein Verfahren zur Raten- und Übermittlungszeit-Multiplexierung zur Bandbreitenoptimierung.
  • Bei der Übertragung von Videosignalen über physische Übertragungsstrecken oder Rohre, Rohrleitungen bzw. Pipes, wird gewünscht, so viele Videosignale wie möglich über die Leitungen zu übertragen. Um dies zu erreichen, werden objektive Videokomprimierungstechniken, eingesetzt, wie zum Beispiel JPEG oder MPEG. Diese Komprimierungstechniken sind mit Verlusten behaftet, wobei eine bestimmte Verschlechterung des Videosignals zwischen der Codierung und Decodierung der Videosignale eintritt. Somit handelt es sich bei dem Ausmaß der Komprimierung, der ein Videosignal ausgesetzt ist, um einen Kompromiss zwischen der Bandbreite und der Bildverschlechterung bzw. um das von einem Endanwender oder Teilnehmer tolerierte Maß. Wenn das Bild zu stark komprimiert wird, lehnt der Teilnehmer die Bildverscblechterung ab. Wenn das Bild nicht ausreichend komprimiert wird, so wird die Anzahl der Videosignale, die über die Leitung übertragen werden können, nicht optimiert. Je komplexer das Bild ist, desto mehr Bandbreite ist erforderlich, um Bildverschlechterungen in unerwünschtem Ausmaß zu vermeiden.
  • Für Übertragungsnetzwerke stellen Lichtwellenleiterleitungen große Bandbreiten bereit, so dass gleichzeitig viele Videosignale über große Strecken übertragen werden können. Dieses optische physische Medium wird allgemein für das Backbone des Übertragungsnetzwerks bzw. des Übertragungsnetzes eingesetzt, wobei es jedoch nicht die "letzte Meile" zum Standort des Teilnehmers abdeckt bzw. einschließt. Die letzte Meile wird allgemein über eine Kupferverbindung bereitgestellt, wie etwa über Telefonkabel mit verdrillten Leitungspaaren. Die Bandbreite der Kupferverbindung oder -leitung ist deutlich geringer als die der optischen Leitung, und alle Signale in der Kupferleitung werden mit zunehmender Strecke schnell abgeschwächt. Zum Beispiel unterstützt die VDSL-Technologie (VDSL als englische Abkürzung von Very High Bit Rate Digital Subscriber Line) sehr hohe Bitraten mit bis zu 55 Mbps hinter einem Kopfende zu einem Teilnehmer und von 19 Mbps von dem Teilnehmer zu dem Kopfende, und wobei diese Technologie für einen Einsatz über verhältnismäßig kurze Kupferschleifen von 1000 bis 4000 Fuß vorgesehen ist. Andererseits ermöglicht die ADSL-Technologie (ADSL als englische Abkürzung von Asymmetrisch Digital Subscriber Line) den Einsatz einer bereits vorhandenen lokalen Schleife eines verdrillten Leitungspaares, um Daten- und/oder Videodienste mit hoher Bandbreite bereitzustellen. ADSL unterstützt die Zweiwege-Übertragung von analoger Sprache (POTS für einfachen alten Fernsprechdienst), einen digitalen Breitbandkanal nur für die Abwärtsstrecke von bis zu 9 Mbps für die Daten- oder Videoverteilung und einen digitalen Kanal nur für die Aufwärtsstrecke mit bis zu 640 Kbps. Die ADSL-Installation kann über eine Strecke von bis zu 12.000 Fuß eingesetzt werden, wobei sie jedoch für gewöhnlich nur für Daten oder nur für ein Videosignal eingesetzt wird.
  • Durch die VDSL-Technologie sind Dienstleistungsanbieter bzw. Service Provider heute in der Lage, zu einem einzelnen Teilnehmer gleichzeitig bis zu drei Videosignale zu übertragen. Allerdings können nur die Teilnehmer von dieser Technologie profitieren, die sich nahe an dem Kopfende oder nahe an einem entfernten Anschluss befinden. Wünschenswert wäre es, in der Lage zu sein, die gleiche Möglichkeit der Übertragung bzw. Übermittlung von bis zu drei Videosignalen pro Teilnehmer über ein physisches Übertragungsmedium mit geringerer Bandbreite bereitzustellen, so dass mehr Teilnehmer über eine größere Fläche versorgt werden können.
  • Bei der MPEG-Komprimierung gehört jedes abgehende Datenbyte einem Transportstrompaket an, und jedem Programm in dem Transportstrom ist eine Zeit zugeordnet, mit der der Transportstrom getaktet wird. Bei beispielsweise zehn Programmen weist jedes Byte eine von zehn verschiedenen Zeiten auf, wobei jede einem anderen Programmtakt zugeordnet ist (siehe Abschnitte 2.41.2 von ISO 13818-1 für nähere Einzelheiten). Darüber hinaus weist jedes Byte eine Zeit auf, die dessen Ausgangstakt zugeordnet ist. GOP betrifft nicht nur eine Gruppe von Bildern, sondern auch eine vollständige Sequenz bzw. Folge, wenn keine Bildergruppe vorliegt – dies ist etwa der Fall bei Video von bestimmten Inhaltsdiensten, wie etwa HITS, wobei jede neue Sequenz eine Länge von 15 Bildern aufweist und keine I Frames, sondern nur P und B Frames mit intracodierten Teilen bzw. Scheiben (englisch: Slices), die angeordnet sind als PBBPBBPBB...
  • Es ist eine Leitung mit fester Bandbreite gegeben, welche eine konstante Anzahl von MPEG Transportstrom-Paketen (MTS-Paketen) pro Sekunde unterstützt. Als Eingabe sind N einzelne Programmtransportströme gegeben, entweder mit variabler Bitrate (VBR) oder mit konstanter Bitrate (CBR), die in den abgehenden CBR-MTS multiplexiert werden müssen. N ist nicht unbedingt eine Konstante. Gewünscht wird eine Optimierung von N für den jeweiligen MTS.
  • "Joint MPEG-2 coding for multi-program broadcasting of pre-recorded video" von Koo, I et al, Proceedings of IEEE International Conference, 15. März 1999, Seiten 2227–2230 wird ein MPEG-2 basiertes Betriebssystem offenbart für die gemeinsame Bitratencodierung mehrerer Videoprogramme unter Verwendung eines zweistufigen Codierungsansatzes. In der ersten Stufe werden die Videoströme offline codiert, bevor sie für eine höhere Bildqualität übertragen werden. Aufzeichnungsstatistiken für Komplexitätsdateien der Videoströme werden erzeugt und gespeichert. In einer zweiten Stufe während der Übermittlung wird bei bekannten Komplexitäten der Videoströme eine erforderliche Anzahl von Bits bestimmt, die zum Codieren jedes Videostroms benötigt wird, und eine Reihe von Codeumsetzern führt die Bitzuweisungsentscheidungen aus.
  • KURZE ZUSAMMENFASSUNG DER ERFINDUNG
  • Vorgesehen ist gemäß der vorliegenden Erfindung ein Verfahren zur Bandbreitenoptimierung gemäß dem gegenständlichen Anspruch 1.
  • Weitere Ausführungsbeispiele der vorliegenden Erfindung sind in den Unteransprüchen definiert.
  • Vorgesehen wird gemäß der vorliegenden Erfindung eine Raten- und Übermittlungszeit-Multiplexierung zur Bandbreitenoptimierung einer Übertragungsleitung mit begrenzter Bandbreite zur Erhöhung der Anzahl von Signalen, die nach Bedarf zu einem Teilnehmer übermittelt bzw. übertragen werden können. Der Algorithmus gemäß der vorliegenden Erfindung weist einen Zuweisungsabschnitt und einen Transrating-Abschnitt auf. Der Zuweisungsabschnitt des Algorithmus bestimmt, wie viele Bits für jede Gruppe von Bildern für jeden der Programmströme, die in einen abgehenden MPEG Transportstrom (MTS) eingefügt werden, zur Verfügung stehen. Bits können einer zukünftigen Gruppe von Bildern entliehen werden oder von Daten, die nicht in Echtzeit vorliegen. Wenn die Anzahl der Bits insgesamt nach der Entleihung kleiner ist als die Gesamtanzahl der Bits für die Gruppen von Bildern insgesamt in jeder Iteration, so wird eine Zuweisungsfunktion angewandt, um die Anzahl der Bits für jede Gruppe von Bildern zu verringern – ansonsten werden die Gruppen von Bildern in den abgehenden MTS eingefügt. Wenn eine Bitreduzierung erforderlich ist, so wird der Transrating-Abschnitt des Algorithmus verwendet, um die Bitraten für jeden Programmstrom zu reduzieren, wie dies erforderlich ist, um die Bitzuweisung von dem Zuweisungsabschnitt des Algorithmus zu erreichen. Wenn die Bitreduzierung minimal ist, so tritt das Bit-Transrating in dem komprimierten Bereich ein, indem spezifizierte DCT-Koeffizienten (d. h. spezifizierte Koeffizienten der diskreten Kosinustransformation) für die hohen Frequenzen verworfen werden oder durch neue Quantisierung. Wenn die Bitreduzierung groß ist, so erfolgt die vollständige Decodierung und Codierung, um die Bitzuweisung zu erreichen. Wenn die Bitreduzierung zu groß ist, so dass eine unzumssige Verschlechterung der Videobilder bewirkt wird, so kann einer der Programmströme gemäß einem Teilnehmerprofil gelöscht werden, und der Algorithmus wird für die verbliebenen Ströme ausgeführt.
  • Die Aufgaben, Vorteile und neuartigen Merkmale der vorliegenden Erfindung werden aus der folgenden genauen Beschreibung deutlich, wenn diese in Verbindung mit den anhängigen Ansprüchen und den beigefügten Zeichnungen gelesen wird.
  • KURZE BESCHREIBUNG DER VERSCHIEDENEN ANSICHTEN DER ZEICHNUNG
  • Es zeigen:
  • 1 ein Blockdiagramm eines repräsentativen Videoübertragungssystems;
  • 2 ein Zeitsteuerungsdiagramm der Bitzuweisung gemäß der vorliegenden Erfindung;
  • 3 ein Blockdiagramm eines Moduls zur Verwendung in Verbindung mit einem Digital Subscriber Line Access Multiplexer zur Bandbreitenoptimierung gemäß der vorliegenden Erfindung; und
  • 4 ein Flussdiagramm eines Verfahrens zum Transrating von drei Programmströmen gemäß der vorliegenden Erfindung.
  • GENAUE BESCHREIBUNG DER ERFINDUNG
  • In folgendem Bezug auf die Abbildung aus 1 wird an einer Übertragungsquelle 10 eine Mehrzahl von Videoprogrammen 12 in einen statistischen Multiplexer 14 eingegeben, um einen Breitband-Übertragungsstrom an einen Sender 16 bereitzustellen. Die Ausgabe des Senders 16 kann über geeignete Mittel bzw. Einrichtungen, wie etwa über Aufwärtsstreckenübertragung über eine Antenne 18 zu einem Satelliten übertragen werden, und danach über eine Abwärtsstreckenübertragung zu einer weiteren Antenne 22 an einem Verteilungskopfende 24. Das auf die Abwärtsstrecke gebrachte Signal wird über die Antenne 22 in einen Empfänger 26 eingegeben und danach in einen Demultiplexer 28, um den Strom in einzelne Programmübertragungsströme (SPTS) aufzuteilen und um Nullpakete zu entfernen. Die resultierenden SPTS von dem Demultiplexer 28 werden in einen Verteilungs-Switch 30 zur Verteilung über ein lokales Netzwerk 32 eingegeben, für gewöhnlich unter Verwendung eines Lichtwellenleiters als physikalisches Medium. An einem Teilnehmer-Verteilungspunkt endet der Lichtwellenleiter in einem Digital Subscriber Line Access Multiplexer (DSLAM) 34. Von dem DSLAM 34 zu einem Standort 36 des Teilnehmers, d. h. die "letzte Meile", wird eine Kupferleitung 38 verwendet, wie zum Beispiel ein Telefonkabel mit verdrilltem Leitungspaar.
  • Im Betrieb übermittelt der Teilnehmer von dem Standort 36 des Teilnehmers eine Datenanforderung in der Aufwärtsstrecke zu dem DSLAM 34, die anzeigt, welche Dienste der Teilnehmer wünscht. Die folgende Beschreibung betrifft einen ADSL-Dienst, der eine Bandbreite von ungefähr 6 bis 8 Mbps für den Transport von ausgewählten Video-, Audio- und Datensignalen auf der Abwärtsstrecke von dem DSLAM 34 aufweist. Ein Teilnehmer am Standort 36 des Teilnehmers leitet eine Nachricht in den Aufwärtsstrecke an den DSLAM 34 ein, welche anzeigt, welche Videoprogramme A, B und C gewünscht werden. Die ausgewählten SPTS, in Verbindung mit Audio- und nicht in Echtzeit gegebenen Daten, wie sie etwa durch einen Internet Service Provider (ISP) bereitgestellt werden, die nicht Teil des MTS sind, werden gemäß der Anforderung des Teilnehmers durch einen lokalen statistischen Multiplexer (Mux) in dem DSLAM 34 in einen MPEG Transportstrom (MTS) paketisiert, wobei der MTS über die Kupferleitung 38 zu dem Teilnehmerstandort 36 übermittelt wird.
  • Der Algorithmus für den statistischen Multiplexer in dem DSLAM 34 weist zwei Abschnitte auf – einen Bitzuweisungsabschnitt und einen Transrating-Abschnitt, soweit erforderlich. Der Bitzuweisungsabschnitt überwacht einen Berücksichtigungsbereich für jeden Programmstrom zur Integration in den abgehenden MTS, wobei der Berücksichtigungsbereich mindestens eine Gruppe von Bildern (GOP als englische Abkürzung von Group of Pictures) aus jedem Programm aufweist. Die Anzahl der Bits insgesamt für die Ausführung von GOPs in dem Berücksichtigungsbereich wird bestimmt und mit einer Anzahl der insgesamt verfügbaren Bits für die Iteration des Zuweisungsabschnitts für diesen Berücksichtigungsbereich verglichen. Wenn die Anzahl der Bits insgesamt für die GOPs kleiner oder gleich der insgesamt verfügbaren Anzahl von Bits ist, so werden die GOPs in die abgehenden MTS-Pakete eingefügt und der Transrating-Abschnitt des Algorithmus wird umgangen.
  • Wenn die Gesamtanzahl der Bits größer ist als die Anzahl der insgesamt verfügbaren Bits, so werden Bits aus einem Entleihungs-Bitpool entliehen. Der Entleihungs-Bitpool weist Bits von nicht in Echtzeit vorgesehenen Daten auf, wie etwa von Webdaten oder anderen Internetdaten wie zum Beispiel Dokumenten. Bits können auch aus den GOPs entliehen werden, die in einer nächsten Iteration des nächsten Berücksichtigungsbereichs enthalten sind. Die entliehenen Bits, die Bits für nicht in Echtzeit vorgesehenen Daten aufweisen und einige Bits von zukünftigen GOPs aufweisen können, werden den insgesamt verfügbaren Bits hinzugefügt, und wenn die Gesamtanzahl von Bits für die GOPs dann kleiner oder gleich den modifizierten verfügbaren Bits ist, werden die GOPs in die abgehenden MTS-Pakete eingefügt, wobei erneut der Transrating-Abschnitt des Algorithmus umgangen wird.
  • Wenn hingegen die Gesamtanzahl der Bits der GOP weiterhin die insgesamt verfügbaren Bits überschreitet, so wird eine Bitzuweisungsfunktion eingesetzt, um zu bestimmen, in welchem Ausmaß jede GOP reduziert werden muss. Die einfachste Zuweisungsfunktion ist eine Funktion, bei der ein tibereinstimmender prozentualer Anteil von Bits für jede GOP in dem Berücksichtigungsbereich reduziert wird. Es können aber auch andere Zuweisungsfunktionen verwendet werden – es kann eine Priorität zugewiesen werden, welche die Mindestbitrate für einen Programmstrom begrenzt, wie etwa für Sportveranstaltungen, und wobei die anderen Programmströme dabei gleichermaßen den verbleibenden verfügbaren Bits zugewiesen werden.
  • Bei einem Beispiel des Zuweisungsabschnitts des Algorithmus entspricht für eine Leitung, bei der 5 Mbps für Video zugewiesen werden und jede GOP der drei Programmströme eine Anzahl von Bits aufweist, die 1,5 Mbps entsprechen, die Bitrate insgesamt für alle drei GOPs 4,5 Mbps und es ist keine Zuweisung oder Entleihung von Bits erforderlich. Wenn ein Programmstrom eine Anzahl von Bits aufweist, die 2,5 Mbps entsprechen und die anderen beiden eine Anzahl von Bits aufweisen, die 1,5 Mbps entsprechen, so entspricht die Bitrate insgesamt 5,5 Mbps, wobei dieser Wert größer ist als die durch die verfügbare Anzahl von Bits bestimmte Bitrate. Durch die Entleihung der Datenbits und von bis zu 10% der Bits für die nächste Iteration kann die Anzahl der insgesamt verfügbaren Bits auf entsprechende 5,5 Mbps erhöht werden, was der der insgesamt erforderlichen äquivalenten Bitrate entspricht. Wenn schließlich die Anzahl der Bits für die drei Programmströme 3,0, 1,5 und 1,5 entspricht, so liegen die erforderlichen 6 Mbps über den 5,5 Mbps der äquivalent verfügbaren Bitrate, so dass eine weitere Bitreduzierung erforderlich ist, bestimmt gemäß der Zuweisungsfunktion.
  • Der erste Schritt des Zuweisungsabschnitts des Algorithmus umfasst die Berechung der verfügbaren Anzahl von Bits für jede GOP in jedem abgehenden Programmstrom für den abgehenden CBR MTS von dem DSLAM 34 zu dem Teilnehmerstandort 36. Der anfangs ausgewählte Strom ist der Strom mit der höchsten Priorität, oder er wird willkürlich ausgewählt, wenn alle Ströme die gleiche Priorität aufweisen. Standardmäßig weist der ausgewählte Strom einen Index von "1" auf. Wenn eine GOP des eingehenden Stroms passt, so wird die GOP in den entsprechenden abgehenden MTS-Paketen platziert. Wenn hingegen die eingehende GOP nicht passt, wird das Video angepasst, so dass dafür gesorgt wird, dass die GOP passt. Es existiert ein Entleihungs-Bitpool, durch den Bits, die zum Senden von nicht in Echtzeit vorgesehenen Daten verwendet werden können, entliehen werden, um besonders schwierig einem Transrating zu unterziehenden Videosequenzen Rechnung zu tragen.
  • Die folgende Bezeichnung wird in der folgenden Beschreibung verwendet.
    • – DTSi(n) ist der Decodierungszeitstempel in Bezug auf den Systemtakt des Programms i des ersten Bilds der GOP n des elementaren Videostroms in dem Programm i, wodurch der Zeitpunkt angezeigt wird, zu dem GOP n in einem Systemzieldecodierer decodiert werden soll.
    • – Ini(t) ist der Index des abgehenden MTS-Pakets des statistisch multiplexierten Stroms, dessen abgehende Byte-Zeit in Bezug auf den Systemtakt des Programms i t aufweist.
    • – p(k) ist das k-te abgehende MTS-Paket des statistisch multiplexierten Stroms.
    • – t(k) ist die Zeit von p(k) in Bezug auf den Ausgangstakt.
    • – t(k) ist die Zeit von p(k) in Bezug auf den Systemtakt des Programms i.
    • – borrowed_bitsn (entliehene_Bitsn) ist die Anzahl der Bits in dem Entleihungs-Bitpool nach Iteration n der Verarbeitung.
    • – potential_bitsn (potenzielle_Bitsn) ist die Anzahl von Bits, die nach der Iteration n der Verarbeitung vor dem Transrating entliehen werden kann.
    • – datan (Daten) ist die Anzahl von Bits der Eingabe von nicht in Echtzeit vorgesehenen Daten in der Iteration n des Bitverfügbarkeitsprozesses.
  • Zu Anfang ist der Entleihungs-Bitpool leer, d. h. borrowed_bits0 = 0. Bei jeder Iteration des Zuweisungsabschnitts des Algorithmus wird ein neuer Berücksichtigungsbereich berechnet, d. h. eine Sequenz abgehender MTS-Pakete, so dass in dem Berücksichtigungsbereich mindestens eine GOP für jeden Programmstrom vorhanden ist, der in die abgehenden MTS-Pakete eingefügt wird. Die Iteration n dieses Abschnitts enthält definitionsgemäß die n-te GOP des elementaren Videostroms in Programm 1. Für jedes Programm i, ist 1 < i ≤ N, die Ordnungszahl der GOP für die Iteration n, die immer in dem Berücksichtigungsbereich enthalten ist, gegeben durch ni und so definiert, dass DTSi(ni) < DTS1(ni + 1) und DTSi(ni + 1) > DTS1(n + 1), wie dies in 2 dargestellt ist.
  • Der Index des ersten MTS-Pakets des Berücksichtigungsbereichs für die Iteration n ist kn = In1(DTS1(n) – available_vbv – c), wobei available_vbv den Wert des Bildpufferverifizierers darstellt oder des VBV-Puffers, der für Programm 1 nach GOP n-1, angegeben in Bits, verfügbar ist, mit einer Umwandlung im Zeitverlauf, in der Annahme einer Bitrate, die gleich der Bitrage von GOP n-1 für Programm 1 ist, und wobei c eine Konstante ist, gleich BSmux + BSon, definiert in Abschnitt 2.4.2.3 von ISO 13818-1. Dies gewährleistet, dass die GOP n zeitgerecht zu dem Decodierer übermittelt wird, so dass sie vorher ankommt als dies erforderlich ist für die Decodierung gemäß DTS1(n). Der genaue Wert von kn darf nicht größer sein als In1(DTS1(n) – available_vbv) und kann nicht kleiner sein als der Index des letzten MTS-Pakets von GOP n-1 für Strom 1.
  • Das letzte MTS-Pakets des Berücksichtigungsbereichs für die Iteration n ist p(kn + mm – 1), wobei kn + mn = max{In1(DTS1(n + 1)} ist. Somit gibt es mn MTS-Pakete zur Berücksichtigung in dem Zeitintervall in Bezug auf den Ausgangstakt mit der Länge t(kn + mn) – t(kn). Ein bestimmter Berücksichtigungsbereich mit m MTS-Paketen weist zugeordnete 1504-m Bits auf. Die der Iteration n zuzuweisenden GOPs sind wie folgt gegeben: GOP n des elementaren Videostroms in Programm 1; und GOPs nj-1 + 1 bis nj des elementaren Videostroms in Programm i, 1 < i ≤ N. Die "available Bits" bzw. die verfügbaren Bits sind die Bits in dem Berücksichtigungsbereich abzüglich der folgenden Bits:
    • • aller Bits in den MTS-Paketen für Audio, PSI, etc. in dem Berücksichtigungsbereich, die keine Video- oder in Echtzeit vorgesehenen Daten führen;
    • • aller Header-Bits für TS-Paket-Header und PES-Paket-Header in den MTS-Paketen mit Video in dem Berücksichtigungsbereich;
    • • Bits, die bereits vergeben sind – die Bits, die einer beliebigen GOP j des Stroms i zugeordnet sind, so dass Ini(DTSi(j)) < kn ist;
    • • Bits von GOPs, die sich teilweise in dem Berücksichtigungsbereich befinden, die sich vollständig in einem zukünftigen Berücksichtigungsbereich befinden, d. h. jede GOP j des Stroms i, so dass j > ni. Für jedes Programm i wird die bislang durchschnittliche GOP-Größe für den Strom i verwendet. Sofern dies erforderlich ist, kann ein bestimmter Anteil dieser Bits entliehen werden, d. h. in den Entleihungs-Bitpool eingegeben werden, wie dies nachstehend beschrieben wird;
    • • für die nicht in Echtzeit vorgesehenen Daten können alle Bits der Größe datan entliehen werden. Die nicht gesendeten bzw. übermittelten Daten, deren Größe den entliehenen Bits hinzugefügt wird, werden in einer Warteschlange verarbeitet.
  • Wenn die Anzahl der verfügbaren oder Ziel-Bits in der Iteration n gleich T ist und die Gesamtanzahl von Bits der zuzuweisenden GOPs gleich A ist, so gilt, wenn T nicht kleiner ist als A, dass das Verfahren ausgeführt wird, da Platz vorhanden ist, um alle GOPs unterzubringen. Darüber hinaus können T-A Bits aus dem Entleihungs-Bitpool für aus der Warteschlange entnommenen Daten, die nicht in Echtzeit vorgesehen sind, eingesetzt und aus dem Entleihungs-Bitpool entfernt werden. Formeller ausgedrückt bedeutet dies: borrowed_bitsn = max(0,borrowed_bitsn-1 – (T – A)). Wenn T hingegen kleiner ist als A und sich Bits in dem Entleihungs-Bitpool befinden, so können bis zu α T-Bits entliehen werden, um T zu erhöhen. Ein angemessener Wert für α ist 0,1. Die Anzahl der Bits, die entliehen werden können, wird zu potential_bitsn = datan + α T.
  • Eine Zuweisungsfunktion wird eingesetzt, um Bits Programmen zuzuweisen. Es gilt, dass ai die Anzahl der tatsächlichen Bits für das Programm i darstellt, Σai = A, und wobei ti eine Zielzahl für das Programm i darstellt, Σti ≤ T. Eine Zuweisungsfunktion f(ai) = ti ist eine Funktion, so dass Σt1 ≤ T gilt. Die einfachste Zuweisungsfunktion ist die einheitliche Zuordnung ti = (T/A)ai. Eine Zuweisungsfunktion, deren Einzelheiten von den Grundsätzen des statistischen Multiplexers abhängig sind, wird eingesetzt, um eine Zuordnung von Bits für die GOPs zuzuweisen, welche dem Transrating-Abschnitt des Algorithmus zugeführt werden. Die Eingabe in den Transrating-Abschnitt umfasst die Zielbitrate für jede anzupassende GOP und für jede anzupassende GOP die Größe und die Art jedes Bilds in der GOP. Darüber hinaus wird die potenzielle Anzahl von Bits, die entliehen werden können, als potential_bitsn weitergeleitet. Zusätzlich zu den angepassten GOPs gibt der Transrating-Abschnitt auch die Anzahl der entliehenen Bits b zurück, so dass folgendes gilt: borrowed_bitsn borrowed bitsn-1 + b.
  • Über eine externe Steuerung kann ein Programm hinzugefügt oder gelöscht bzw. entfernt werden. Programme können auch von einer Videoquelle auf eine andere geschaltet werden. Logisch treten diese Änderungen auf zwischen Iterationen des Zuweisungsabschnitts des Algorithmus. Diese Fälle werden wie folgt behandelt.
    • • Löschen eines Programms. Die Zuweisungsfunktion wird angepasst, um die Bits über ein Programm weniger zu verteilen. Der Wert von N wird um Eins herabgesetzt. Wenn Programm 1 gelöscht wird, wird ein neues Programm 1 bezeichnet.
    • • Hinzufügen eines Programms. Der Wert von N wird um Eins heraufgesetzt. Der Index des neuen Programms wird der neue Wert von N, und die Funktion InN(t) ist so definiert, dass InN(DTSN(nN)) kn + mn zugewiesen wird. Die Zuweisungsfunktion wird so angepasst, dass die Bits über ein zusätzliches Programm verteilt werden.
    • • Quellenänderung. Programm j wechselt von einer Videoquelle zu einer anderen, entweder durch externe Mittel über eine PSI-Tabellenänderung oder durch einen Unterbrechungsindikator, und die Transrating-Funktion wird über die Änderung benachrichtigt. Die Funktion Inj(t) wird neu definiert, so dass Inj(DTSN(nN)) kn + mn zugewiesen wird. Die Zuweisungsfunktion bleibt die gleiche.
  • Die in die abgehenden MTS-Pakete einzufügenden Programmströme werden durch den DSLAM 34 zu einem Transrating-Modul 40 über eine Schnittstelle 42 zu einem Speicher 44 übertragen, wo sie in N einzelnen Eingangspuffern gespeichert werden. In der folgenden Beschreibung wird als Beispiel von N gleich 3 ausgegangen. Die Eingangspuffer sind entsprechend mit IDA, IBB und IBC bezeichnet. Eine Transrating-Steuereinrichtung 46 verwendet JA, JB und JC Bilder von den entsprechenden Eingangspuffern zur Analyse gemäß dem Transrating-Abschnitt des Algorithmus, wie dies in der Abbildung aus 3 dargestellt ist. JA, JB und JC sind anwendungsabhängige Parameter. Je größer JA, JB und JC sind, desto besser ist die Performance des Transrating-Moduls 40. Die Obergrenzen von JA, JB und JC sind von Verzögerungseinschränkungen abhängig. Die unteren Grenzen sind JA > = MA + 1, JB > = MB + 1 und JC > = MC + 1, wobei MA, MB und MC die Anzahl der Bilder in einer MPEG2 Sub-GOP darstellen, d. h. den Abstand von P Bildern in den entsprechenden Videoströmen. Die drei Videosignale A, B, C werden durch die Transrating-Steuereinrichtung 46 analysiert, bei der es sich um einen Mikroprozessor/digitalen Signalprozessor (MP/DSP) handeln kann, um zu bestimmen, welches Transrating, sofern überhaupt, erforderlich ist, bevor die Videoprogrammströme zu dem Teilnehmer weitergeleitet werden.
  • Ein Segment eines Videoprogrammstroms kann auf eine von drei unterschiedliche Arten während dem Transrating behandelt werden; Durchleitung, Ratenreduzierung in dem komprimierten Strombereich oder Ratenreduzierung in dem Pixelbereich durch eine Decodierer-Codierer-Kaskade.
  • Wie dies in der Abbildung aus 4 dargestellt ist, wird zu Beginn eine bestimmte Anzahl von Bildern von jedem der komprimierten Videoströme A, B und C in entsprechenden Eingangspuffern IBA, IBB und IBC gespeichert. Die Bitraten der Bilder MA, MB und MC von jedem der Bilder JA, JB und JC in den Eingangspuffern berechnet, BitsMA, BitsMB und BitsMC, sowie die Bitraten für JA, JB und JC, BitsJA, BitsJB und BitsJC sowie die Gesamtbitrate Bits3 = BitsMA + BitsMB + BitsMC. Ein Ratenbudget BudgetMA, BudgetMB, BudgetMC und BudgetS für jeden Videostrom und der Gesamtwert für den Videostrom können anhand von vorher definierten Zielen ermittelt werden, wobei sie jedoch neu angepasst werden müssen auf der Basis der Größen der Decodierer-Eingangspuffer VB_A, VB_B und VB_C, der Bitraten und dem Pufferfüllstand, d. h. BudgetMA = 1/2VBV_A + (gewünschte Bitrate für Strom A nach dem Transrating) × MA/PA – VBV_A Füllstand, wobei PA die Bildrate des Stroms A darstellt, wobei VBV_A den Ausgangspuffer des Codeumsetzers für Strom A darstellt (gleich dem Eingangspuffer des Decodierers an diesem Enden), etc. und BudgetS = BudgetA + BudgetB + BudgetC. Wenn das vorher berechnete Budget höher ist als target + potential_bitsn (Ziel + potenzielle_Bitsn), so wrid das Budget neu angepasst, so dass es unter target + potential_bitsn liegt. Anfängliche Schwellen- bzw. Grenzwerte TA1, TB1 und TC1 werden auf der Basis der Budgets und der Raten der Bilder JA, JB und JC bestimmt, d. h. es handelt sich dabei um anpassbare Parameter, welche Toleranzen einer fehlenden Übereinstimmung zwischen BitsMA und BudgetMA, BitsMB und BudgetMB sowie BitsMC und BudgetMC dartellen. Zum Beispiel sieht die Codeumsetzersteuerung die Bitrate der Bilder MA + 1, MA + 2, ..., MA + (JA – MA) vorher; wenn die Rate höher oder niedriger ist als erwartet, so wird der Schwellenwert TA1 entsprechend niedriger/höher festgelegt.
  • Wenn die fehlende Übereinstimmung zwischen BitsMA und BudgetMA sich innerhalb des Toleranzbereichs befindet, so wird ein Kennzeichen bzw. eine Flagge FlagMApass auf Eins gesetzt, um anzuzeigen, dass die Transrating-Steuerung den Strom der MA-Bilder ohne Ratenreduzierung hindurch lässt. Die Flagge stellt einen temporären Status da, da die Transrating-Steuerung den Status unter Bedingungen, die nachstehend beschrieben werden, verändern kann. Wenn eine und nur eine der Flaggen, wie etwa FlagMApass weiterhin auf Null gesetzt ist, was einen Zustand außerhalb des Toleranzbereichs in Bezug auf das entsprechende Budget darstellt, so wird ein Ratenreduzierungsverhältnis RA für diesen Strom als RA=BitsMA-(BudgetS-BitsMB-BitsMC) bestimmt. Wenn RA größer ist als ein zweiter Schwellenwert T2, d. h. zu hoch, so verschlechtert sich die Qualität des Stroms A über den Toleranzbereich hinaus, da nu ein Strom eine Transrating unterzogen wird. Wenn das Ratenreduzierungsverhältnis zu hoch ist, so wird für eines der anderen Videosignale dessen Flagge auf Null zurückgesetzt auf der Basis der kleinsten fehlenden Übereinstimmung zwischen der Bitrate und dem Bitratenbudget. Der Schwellenwert TA2 stellt einen anwendungsabhängigen und anpassbaren Parameter dar, welcher den Toleranzbereich der Verschlechterung der Videoqualität darstellt.
  • Wenn zwei Flaggen auf Null gesetzt sind, werden die Ratenreduzierungsverhältnisse für die beiden entsprechenden Videos auf der Basis des Gesamtbudgets proportional zugewiesen. Wenn zum Bespiel FlagMApas und FlagMBpass auf Null zurückgesetzt werden, während FlagMCpass gesetzt wird, gilt für die Ratenreduzierung RA + RB = (BitsMA + BitsMB) – (BudgetS – BitsMC). Die Ratenreduzierungen RA und RB werden proportional für die Ströme A und B zugewiesen. Wenn RA und RB zu hoch sind im Vergleich zu den entsprechenden Schwellenwerten TA2 und TB2 verschlechtert sich die Videoqualität der Ströme A und B über den Toleranzbereich hinaus. Um dies zu vermeiden, wird FlagMCpass auf Null zurückgesetzt.
  • Wenn FlagMApass gesetzt ist und das aktuelle Bild aus MA letzten Bildern des Stroms einen Ausgangs-Frame darstellt, d. h. einen I- oder P-Frame, so ist das aktuelle Bild codiert. Dieses decodierte Basisbandsignal kann später zur zukünftigen Codeumsetzung eingesetzt werden oder nicht eingesetzt werden. Es ist möglich, dass zukünftige Bilder in dem Pixelbereich einer Codeumsetzung unterzogen werden, wobei dieses Basisbandbild benötigt wird. Wenn das aktuelle Bild kein Ausgangsbild darstellt, wird der Strom des aktuellen Bilds an einen Ausgangspuffer OBA in dem Speicher des Transrating-Moduls gesendet, d. h. der Strom tritt einfach hindurch.
  • Wenn FlagMApass nicht gesetzt ist, ist eine Ratenreduzierung erforderlich. Ferner kann es sein, dass der Strom B und/oder der Strom C einem Transrating unterzogen werden müssen, so dass die Ratenreduzierung RA0 für das MA-Bild proportional zugewiesen wird. Wenn die Ratenreduzierung geringfügig ist, wird sie in dem Bereich des komprimierten Stroms implementiert, ansonsten wird sie in dem Pixelbereich durch eine Decodierer-Codierer-Kaskade implementiert. Diese Entscheidung basiert auf dem Wert WAHR oder FALSCH von RA0<TA3, wobei TA3 einen dritten Schwellenwert darstellt, der einen anpassbaren und anwendungsabhängigen Parameter darstellt, der einem Kompromiss zwischen der Geschwindigkeit des Transrating und der Einheitlichkeit der Verschlechterung der Videoqualität bei unterschiedlichen räumlichen Frequenzen entspricht.
  • Wenn das aktuelle Bild ein B-Bild darstellt, wird ein bildbezogener Parameter Kb proportional bestimmt auf der Basis der erforderlichen Ratenreduzierung. Nach der variablen Längendecodierung werden die Koeffizienten Kb DCT, welche die höchsten räumlichen Koeffizienten darstellen, in jedem Block auf Null zurückgesetzt, um die Bildrate zu reduzieren. Die Gesamtanzahl der DCT-Koeffizienten beträgt in einem Block von 8 × 8 allgemein 64. Einige dieser Koeffizienten können einen Wert von Null aufweisen. Wenn einige der Kb Koeffizienten in einem DCT-Block bereits gleich Null sind, so werden weniger als Kb Koeffizienten auf Null zurückgesetzt, wobei eine obere Begrenzung darstellt, welche der Beschränkung der Einheitlichkeit der Verschlechterung der Videoqualität bei unterschiedlichen räumlichen Frequenzen unterliegt. Nach dem Zurücksetzen der Kb höchsten räumlichen Frequenzkoeffizienten nimmt der Codeumsetzer eine VLC-Codierung vor und berechnet eine neue Bildrate. Wenn die neue Rate nicht nah an der gewünschten Rate liegt, springt die Codeumsetzer-Steuereinrichtung zurück, um den Kb Parameter zu modifizieren, und die Schleife beginnt von Neuem, bis die gewünschte Ratenreduzierung erreicht wird. Bei dem Parameter Kb handelt es sich um eine bildweite Konstante, die von B-Frame zu B-Frame variiert. Zur Vermeidung eines erkennbaren Ungleichgewichts der Videoqualität zwischen B-Bildern und Ausgangsbildern vermeidet der Codeumsetzer die unzweckmäßige Auswahl eines hohen Wertes für Kb, so dass die Ratenreduzierung für das B-Bild innerhalb von TA3 liegt. Wenn die Ratenreduzierung über TA3 und gleichzeitig unter einem anderen Schwellenwert TA4 liegt, wird an dem B-Bild eine neue Quantisierung vorgenommen, d. h. etwaige DCT-Koeffizienten unterhalb eines Schwellenwertes Tq werden auf Null zurückgesetzt. Tq wird iterativ angepasst, bis die gewünschte Ratenreduzierung erreicht worden ist.
  • Wenn die Ratenreduzierungsanforderung höher ist als TA4, so wird eine Decodierer-Codierer-Kaskade in dem Pixelbereich eingesetzt für ein Transrating für ein, zwei oder drei Segmente des Stroms. Da die Datensegmente des Stroms vorab in den drei Eingangspuffern gespeichert werden, sind die Puffer ausreichend lang, damit die Codeumsetzer-Steuereinrichtung das mögliche Geschwindigkeitsproblem vorhersehen und es versuchen kann, das Transrating aller drei Segmente der Ströme in dem Pixelbereich zu vermeiden, was eine höhere Geschwindigkeit erfordern kann als die Geschwindigkeit, die der Prozessor bearbeiten kann. Der Puffer wirkt unterstützend in Bezug auf eine Entspannung der erforderlichen Spitzengeschwindigkeit durch eine größere Ratenreduzierung als wie dies aktuell erforderlich ist, um die Pufferbelegung ausreichend gering zu gestalten, um eine zukünftige Anforderung hinsichtlich der Reduzierung der Spitzenrate zu entspannen, oder durch Ablegen von mehr Bits in Puffern als wie dies bei einem Spitzenwert wünschenswert ist, wenn es sich bei Bildern nach diesem Spitzenwert um Bilder mit geringer Rate handelt, d. h. um die Spitzenrate bei hohem Verhältnis nicht zu reduzieren, so dass das Transrating nicht in dem Pixelbereich ausgeführt werden muss.
  • Wenn ein Transrating aller drei Segmente des Stroms in dem Pixelbereich unvermeidbar ist, so kann die Codeumsetzer-Steuereinrichtung die Spitzenratenreduzierung innerhalb eines längeren Zeitraums als dem gewünschten Zeitraum ausführen, ohne einen Verlust der Synchronisierung ZU bewirken, da in den Ausgangspuffern abgelegte Bilder nach einer Verzögerung erfasst werden, wie dies in der gleichzeitig anhängigen U. S. Patentanmeldung 09/535.676, eingereicht am 23. März 2000, von Mayer Schwartz et al mit dem Titel "Demultiplexing a Statistically Multiplexed MPEG Transport Stream into CBR Single Program Transport Stream" beschrieben ist. Nachdem ein Bild hindurch getreten ist oder einem Transrating unterzogen worden ist, wird das Bild zu dem Ausgangspuffer bewegt, wobei ein neues Bild in den Eingangspuffer geladen wird, und wobei die Steuerparameter zurückgesetzt werden. Das Verfahren fährt mit dem nächsten Bild in jedem Videostrom fort.
  • Wenn es sich bei einem der Videoströme um ein Prioritätsvideosignal handelt, wie etwa eine aktive Sportveranstaltung, wobei die Bitrate den Großteil der Leitung in Anspruch nimmt, d. h. die durchschnittliche Bitrate beträgt 4 Mbps oder mehr, so können die anderen beiden Videoströme durch das Teilnehmerprofil unterdrückt und dem Teilnehmer nicht angezeigt werden, während das Sportvideo zur primären Ansicht ausgewählt ist. Zum Zeitpunkt einer Dienstanforderung durch den Teilnehmer, wenn der Teilnehmer bis zu drei Programmströme anfordert:
    • (a) wenn drei Ströme empfangen werden und der Teilnehmer einen Sport- oder Pay-per-View-Kanal (PPV-Kanal) einschaltet, hat der Teilnehmer die Wahl, sich den Kanal mit der verfügbaren Bitrate anzusehen oder einen der anderen Programmströme "abzuwählen", um eine bessere Bitrate zu erhalten; oder
    • (b) wenn weniger als drei Programmströme empfangen werden und einer einen Dienst mit hoher Anforderung darstellt, wie etwa Ports oder PPV, so würde dieser Strom die höhere Bitrate verwenden, und es würde verhindert, dass ein zusätzlicher Programmstrom diesem Teilnehmer-Mix hinzugefügt wird, bis der Kanal mit hoher Anforderung erschöpft ist.
  • Diese Modi können in den meisten Fällen wählbar sein und durch den Teilnehmer in einer Settop-Box (STB) konfiguriert werden, so dass das Teilnehmerprofil festgelegt wird, und dies kann zu dem Algorithmus der vorliegenden Erfindung kommuniziert werden.
  • Vorgesehen ist gemäß der vorliegenden Erfindung die Raten- und Übermittlungszeit-Multiplexierung zur Bandbreitenoptimierung innerhalb einer Leitung mit konstanter Bitrate, indem zuerst die Anzahl der Bits für jede Gruppe von Bildern zugewiesen und danach ein Transrating der Bilder in der Gruppe von Bildern ausgeführt wird, wobei die Gesamtanzahl der Bits für die Gruppe von Bildern innerhalb eines Berücksichtigungsbereichs größer ist als eine Gesamtanzahl der verfügbaren Bits nach dem Zulassen der Bitentleihung. Das Transrating kann in dem komprimierten Bereich erfolgen, wo die Bitreduzierung gering ist, entweder durch Nullstellung der höchsten Raumfrequenzlcoeffizienten oder durch neue Quantisierung, oder in dem Pixelbereich durch Codeumsetzung dort, wo die Bitreduzierung hoch ist.

Claims (10)

  1. Verfahren zur Bandbreitenoptimierung für einen paketisierten Transportstrom mit konstanter Bitrate mit N Programmströmen, wobei jeder Programmstrom in Gruppen von Bildern aufgeteilt ist, wobei das Verfahren die folgenden Schritte umfasst: das Auswählen eines Berücksichtigungsbereichs, der mindestens eine vollständige Gruppe von Bildern jedes der Programmströme aufweist; das Bestimmen einer Anzahl verfügbarer Bits für jede Gruppe von Bildern aus jedem. Programmstrom in dem Berücksichtigungsbereich, und gekennzeichnet durch: das Einfugen jeder Gruppe von Bildern in den paketisierten Transportstrom mit konstanter Bitrate, wenn die Anzahl der Bits für die genannte Gruppe von Bildern kleiner oder gleich der Anzahl der verfügbaren Bits für die genannte Gruppe von Bildern ist; und das Transrating jeder Gruppe von Bildern, wenn die Anzahl der Bits in der genannten Gruppe von Bildern größer ist als die Anzahl der verfügbaren Bits für die genannte Gruppe von Bildern, so dass die Gesamtanzahl der Bits in den Gruppen von Bildern kleiner oder gleich der Gesamtanzahl der verfügbaren Bits ist; und das Einfügen jeder einem Transrating unterzogenen Gruppe von Bildern in den paketisierten Transportstrom mit konstanter Bitrate.
  2. Verfahren nach Anspruch 1, wobei der Schritt des Bestimmens die folgenden Schritte umfasst: das Bestimmen der Gesamtanzahl von Bits für die vollständigen Gruppen von Bildern innerhalb des Berücksichtigungsbereichs; das Vergleichen der Gesamtanzahl von Bits mit einer ursprünglichen Anzahl von verfügbaren Bits für den Berücksichtigungsbereich; das Entleihen von Bits zum Hinzufügen zu der ursprünglichen Anzahl der verfügbaren Bits, wenn die Gesamtanzahl der Bits größer ist als die ursprüngliche Anzahl von verfügbaren Bits, um eine Gesamtanzahl von verfügbaren Bits zu erhalten; und das Zuweisen der Gesamtanzahl von verfügbaren Bits unter den Gruppen von Bildern in dem Berücksichtigungsbereich als die Anzahl der verfügbaren Bits für jede Gruppe von Bildern.
  3. Verfahren nach Anspruch 2, wobei der Schritt des Entleihens die folgenden Schritte umfasst: das Platzieren einer in dem Berücksichtigungsbereich verfügbarer Datenbits in einem Entleihungs-Bitpool; und das Hinzufügen von Bits aus dem Entleihungs-Bitpool zu der ursprünglichen Anzahl von verfügbaren Bits, bis die Gesamtanzahl der verfügbaren Bits der Gesamtanzahl von Bits entspricht oder die Bits in dem Entleihungs-Bitpool erschöpft sind.
  4. Verfahren nach Anspruch 2, wobei der Schritt des Entleihens die folgenden Schritte umfasst: das Bestimmen einer Anzahl von Bits zum Entleihen aus einem nächsten Berücksichtigungsbereich; das Platzieren der bestimmten Anzahl von Bits in einem Entleihungs-Bitpool; und das Hinzufügen der Bits aus dem Entleihungs-Bitpool zu der ursprünglichen Anzahl von verfügbaren Bits, bis die Gesamtanzahl der verfügbaren Bits der Gesamtanzahl von Bits entspricht oder die Bits in dem Entleihungs-Bitpool erschöpft sind.
  5. Verfahren nach Anspruch 3 oder 4, wobei der Schritt des Entleihens ferner vor dem Schritt des Hinzufügens den Schritt des Platzierens einer Anzahl von in dem Berücksichtigungsbereich verfügbaren Datenbits in dem Entleihungs-Bitpool umfasst.
  6. Verfahren nach Anspruch 2, 3, 4 oder 5, wobei der Schritt des Zuweisens den Schritt des Reduzierens der Anzahl von verfügbaren Bits für jede Gruppe von Bildern in dem Berücksichtigungsbereich um einen übereinstimmenden Prozentsatz umfasst, bis die Gesamtanzahl von verfügbaren Bits für die Gruppen von Bildern der Gesamtanzahl von verfügbaren Bits in dem Berücksichtigungsbereich entspricht.
  7. Verfahren nach Anspruch 2, 3, 4 oder 5, wobei der Schritt des Zuordnens die folgenden Schritte umfasst: das Identifizieren eines Prioritätsprogramms unter den Programmströmen; und das Reduzieren der Anzahl von verfügbaren Bits für jede Gruppe von Bildern, mit Ausnahme derer in dem Prioritätsprogramm, um einen übereinstimmenden Prozentsatz, bis die Gesamtanzahl von verfügbaren Bits für die Gruppen von Bildern der Gesamtanzahl von verfügbaren Bits für den Berücksichtigungsbereich entspricht.
  8. Verfahren nach einem der vorstehenden Ansprüche, wobei der Transrating-Schritt die folgenden Schritte umfasst: das Bestimmen einer Ratenreduzierungshöhe für jeden Programmstrom; das Vergleichen der Ratenreduzierungshöhe mit einem ersten Grenzwert für jeden Programmstrom; das Ausführen eines Transrating in einem komprimierten Bereich für die Programmströme, wobei die Ratenreduzierungshöhe kleiner ist als ein spezifizierter Wert; und das Ausführen eines Transrating in einem Pixelbereich für die Programmströme, wobei die Ratenreduzierung höher ist als der spezifizierte Wert.
  9. Verfahren nach Anspruch 8, wobei der Schritt des Transrating ferner die folgenden Schritte umfasst: das Löschen eines Programmstroms aus dem abgehenden MTS, wenn dies durch ein Teilnehmerprofil spezifiziert wird, wenn die Ratenreduzierungshöhe so hoch ist, dass eine unzulässige Verschlechterung bewirkt wird; und das Wiederholen der obigen Schritte für die reduzierte Anzahl von Programmströmen.
  10. Verfahren nach Anspruch 8 oder 9, wobei der Schritt des Ausführens des Transrating in dem komprimierten Bereich die folgenden Schritte umfasst: das Nullstellen hoher räumlicher Frequenzkoeffizienten, wenn die Ratenreduzierungshöhe kleiner ist als ein erster Schwellenwert für den spezifizierten Wert; und das neue Quantisieren der Koeffizienten, wenn die Ratenreduzierungshöhe größer ist als der erste Grenzwert und kleiner als ein zweiter Grenzwert für den spezifizierten Wert, wobei ein Transrating in dem Pixelbereich auftritt, wenn die Ratenreduzierungshöhe größer ist als der zweite Grenzwert.
DE60131602T 2000-07-14 2001-07-10 Multiplexabhängige Videokomprimierung Expired - Lifetime DE60131602T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/616,109 US6931059B1 (en) 2000-07-14 2000-07-14 Rate and delivery time multiplexing for bandwidth optimization
US616109 2000-07-14

Publications (2)

Publication Number Publication Date
DE60131602D1 DE60131602D1 (de) 2008-01-10
DE60131602T2 true DE60131602T2 (de) 2008-10-23

Family

ID=24468069

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60131602T Expired - Lifetime DE60131602T2 (de) 2000-07-14 2001-07-10 Multiplexabhängige Videokomprimierung

Country Status (3)

Country Link
US (1) US6931059B1 (de)
EP (1) EP1173023B1 (de)
DE (1) DE60131602T2 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8218439B2 (en) * 2004-11-24 2012-07-10 Sharp Laboratories Of America, Inc. Method and apparatus for adaptive buffering
JP4266218B2 (ja) * 2005-09-29 2009-05-20 株式会社東芝 動画像データの再圧縮符号化方法、装置及びプログラム
US8380864B2 (en) * 2006-12-27 2013-02-19 Microsoft Corporation Media stream slicing and processing load allocation for multi-user media systems
US20080205389A1 (en) * 2007-02-26 2008-08-28 Microsoft Corporation Selection of transrate and transcode processes by host computer
US10003851B2 (en) 2009-11-24 2018-06-19 Imagine Communications Corp. Managed multiplexing of video in an adaptive bit rate environment
CN102118796B (zh) * 2009-12-31 2013-04-24 华为技术有限公司 带宽的控制方法、装置及系统
US20140301481A1 (en) * 2013-04-04 2014-10-09 Magnum Semiconductor, Inc. Apparatuses and methods for pooling multiple channels into a multi-program transport stream
US10142259B2 (en) 2014-03-03 2018-11-27 Ericsson Ab Conflict detection and resolution in an ABR network
US9455932B2 (en) * 2014-03-03 2016-09-27 Ericsson Ab Conflict detection and resolution in an ABR network using client interactivity
US9888052B2 (en) 2015-09-21 2018-02-06 Imagine Communications Corp. ABR allocation for statistical multiplexing

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6240103B1 (en) * 1997-03-21 2001-05-29 Scientific-Atlanta, Inc. Method and apparatus for detecting and preventing bandwidth overflow in a statistical multiplexer
US6351471B1 (en) * 1998-01-14 2002-02-26 Skystream Networks Inc. Brandwidth optimization of video program bearing transport streams
GB9815615D0 (en) * 1998-07-18 1998-09-16 Nds Ltd Statistical multiplexing
US6167084A (en) * 1998-08-27 2000-12-26 Motorola, Inc. Dynamic bit allocation for statistical multiplexing of compressed and uncompressed digital video signals
US6275536B1 (en) * 1999-06-23 2001-08-14 General Instrument Corporation Implementation architectures of a multi-channel MPEG video transcoder using multiple programmable processors

Also Published As

Publication number Publication date
EP1173023A2 (de) 2002-01-16
EP1173023B1 (de) 2007-11-28
EP1173023A3 (de) 2003-09-03
US6931059B1 (en) 2005-08-16
DE60131602D1 (de) 2008-01-10

Similar Documents

Publication Publication Date Title
DE69221028T2 (de) Puffersteuerung für einen Kanal mit variabler Bitrate
DE60131993T2 (de) Verfahren und gerät zur bestimmung der übertragungsbitrate in einem statistischen multiplexer
DE60023576T2 (de) Verfahren und Vorrichtung zur Bewegtbilddatentranscodierung
DE60003636T2 (de) Verfahren zür erfassung und verhinderung von bandbreiteüberlauf in einem statistischen multiplexer
DE69736537T2 (de) Ratenregelung für stereoskopische digitale Videokodierung
DE60106286T2 (de) Zeitbasisreferenzdatumregeneration für mpeg-transportströme
DE69838869T2 (de) Vorrichtung und Verfahren zum Spleißen von codierten Datenströmen sowie Vorrichtung und Verfahren zur Erzeugung von codierten Datenströmen
DE69913990T2 (de) System zum editieren komprimierter bildsequenzen
DE69535553T2 (de) Videokompression
DE69921108T2 (de) Verfahren und vorrichtung zur adaptiven codierung eines videodatenstroms
US7266133B2 (en) Methods and apparatus for statistical multiplexing with distributed multiplexers
US8400918B2 (en) Video traffic smoothing
DE60106640T2 (de) Prozessorzuweisung für kanäle in einem videomultiprozessorsystem
CN1384958A (zh) 广播数据用自适应带宽系统和方法
Wang et al. Bit allocation and constraints for joint coding of multiple video programs
EP2422517A1 (de) Verfahren und vorrichtung zur modifikation eines kodierten datenstroms
DE60131602T2 (de) Multiplexabhängige Videokomprimierung
DE60031145T2 (de) System mit adaptiver bandbreite und verfahren für datenrundsendung
US6763070B1 (en) Methods and apparatus for selecting a cut-off index
CN102326403A (zh) 利用外部图片属性标记来加快频道改变时间
US6950464B1 (en) Sub-picture level pass through
DE60200938T2 (de) Drahtloses bildübertragungsgerät und -verfahren
DE10035109A1 (de) Terminal und Verfahren zum Transportieren von Standbildern
CN108924555A (zh) 一种适用于视频切片的码率控制比特分配方法
EP2206311B1 (de) Verfahren und system zur bandbreite-optimierten übertragung von hdtv-datenströmen über ein ip-basiertes verteilernetz

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: HEYER, V., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 806