DE69634110T2 - Verfahren, Client und Server für Video-auf-Anfrage - Google Patents

Verfahren, Client und Server für Video-auf-Anfrage Download PDF

Info

Publication number
DE69634110T2
DE69634110T2 DE69634110T DE69634110T DE69634110T2 DE 69634110 T2 DE69634110 T2 DE 69634110T2 DE 69634110 T DE69634110 T DE 69634110T DE 69634110 T DE69634110 T DE 69634110T DE 69634110 T2 DE69634110 T2 DE 69634110T2
Authority
DE
Germany
Prior art keywords
broadcast
blocks
program
segment
multimedia
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
DE69634110T
Other languages
English (en)
Other versions
DE69634110D1 (de
Inventor
Charu Chandra Cambridge Aggarwal
Joel Leonard Katonah Wolf
Philip Shi-Lung Chappaqua 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.)
Cisco Systems Inc
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE69634110D1 publication Critical patent/DE69634110D1/de
Application granted granted Critical
Publication of DE69634110T2 publication Critical patent/DE69634110T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/16Arrangements for broadcast or for distribution of identical information repeatedly
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H20/00Arrangements for broadcast or for distribution combined with broadcast
    • H04H20/40Arrangements for broadcast specially adapted for accumulation-type receivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H40/00Arrangements specially adapted for receiving broadcast information
    • H04H40/09Arrangements for receiving desired information automatically according to timetables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/02Arrangements for generating broadcast information; Arrangements for generating broadcast-related information with a direct linking to broadcast information or to broadcast space-time; Arrangements for simultaneous generation of broadcast information and broadcast-related information
    • H04H60/06Arrangements for scheduling broadcast services or broadcast-related services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft ein Video-auf-Anfrage-System und ein Verfahren zum Rundsenden von Audioprogrammen, Videoprogrammen, audiovisuellen Programmen oder Ähnlichem zur Verwendung in einem Video-auf-Anfrage-System.
  • Bei herkömmlichen Video-auf-Anfrage-Systemen (Video on demand, VOD) sind die Benutzer sowohl bezüglich der Auswahl des gewünschten Films als auch bezüglich des Zeitpunktes flexibel, an dem sie den Film sehen möchten. Ein solches System beruht auf dem Modell einer Client-Server-Architektur, in welchem der Client aus einer Gruppe von Benutzer besteht, während der Videoserver eine Anzahl von Speicherplatten mit gespeicherten Videos enthält. Sobald ein Client ein Video anfordert, werden die entsprechenden Datenblöcke durch einen zentralen VOD-Server von den Platten abgerufen und gleichzeitig zum Client übertragen.
  • Sollte das Video jedoch nicht auf den Platten zur Verfügung stehen, wird es üblicherweise von einem dritten Speicher abgerufen. Somit muss für jede Einzelanforderung eines Clients ein E/A-Datenstrom eingeplant werden. Für jeden eingeplanten E/A-Datenstrom muss normalerweise ein großer Teil der Netzbandbreite in Anspruch genommen werden. Mit zunehmender Anzahl von Clients kann deshalb die Bandbreite zu einem ernsten Problem werden. Eine Lösung dieses Problems besteht darin, die Bandbreite durch mehrere Benutzer gemeinsam zu nutzen. Diese Lösung wird als benutzerzentrierter Ansatz bezeichnet.
  • Mit steigender Anzahl von Clients stellt das periodische Rundsenden einen alternativen Ansatz für Video-auf-Anfrage-Systeme dar.
  • Beim Rundsendeansatz ist die Bandbreite nicht den Benutzern, sondern einzelnen Videoobjekten zugeordnet. Angenommen, es gibt N Filme (beispielsweise die N gefragtesten Filme des jeweiligen Jahres), die periodisch rundgesendet werden. In diesem Fall wird also die Bandbreite auf die N verschiedenen Filme aufgeteilt. Dadurch ist die Bandbreitenauslastung dieses Verfahrens von der Anzahl der Clients unabhängig. Dieser Ansatz ist ein datenzentrierter Ansatz, da die Bandbreite auf die einzelnen Videoobjekte aufgeteilt wird.
  • Beim herkömmlichen Rundsendeverfahren ist die Zugriffszeit für jeden der N Filme durch die Rundsendefrequenz bestimmt. Die (auch als Latenzzeit oder als Wartezeit der Clients bezeichnete) Zugriffszeit für den Film ist einfach gleich der Zeit, die für den Zugriff auf das erste Segment benötigt wird. Somit nimmt die Zugriffszeit eines Films mit zunehmender Bandbreite linear ab. Einen alternativen Ansatz zur Verringerung der Bandbreitenanforderungen stellt das „Pyramidenschema" dar. Bei diesem Verfahren ist jedes Video in zahlreiche Segmente unterteilt, wobei die Anfangssegmente kleiner sind und öfter gesendet werden. Das Pyramidensystem wird in der Veröffentlichung „Pyramid Broadcasting for Video On Demand Service", von S. Vishwanathan und T. Imelinki, SPIE, Bd. 2417, S. 66 bis 77 (Februar 1995) erörtert. Im Folgenden wird dieses Schema als VI-Schema bezeichnet.
  • Beim VI-Verfahren zeigt sich, dass die Zugriffszeit für einen Film mit der Bandbreite exponentiell kürzer wird. Das VI-Verfahren setzt jedoch auf der Seite des Clients beträchtliche Pufferkapazitäten voraus, die sich mit der Bandbreite nicht wesentlich ändern. Das VI-Verfahren erfordert normalerweise bei jedem Client ein Speichervolumen, das deutlich mehr als 50% der Länge des Films beträgt. In diesem Bereich der Speichervolumina kann es erforderlich werden, Plattenspeicher zum Puffern zu verwenden. Da die Übertragungsraten ziemlich hoch sein können, muss der Client außerdem möglicherweise über eine Platte mit großer Bandbreite verfügen, um sie so schnell zu beschreiben, wie der Film empfangen wird.
  • Gemäß dem ersten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Rundsenden von Multimediaprogrammen zur Verwendung in einem System bereitgestellt, in welchem die Programme zu Empfangsstationen rundgesendet werden, wobei das Verfahren die folgenden Schritte umfasst: wiederholtes Rundsenden eines bestimmten Teils eines bestimmten Programms an die Empfangsstationen; und wiederholtes, aber seltener als bei diesem bestimmten Teil wiederholtes Rundsenden, eines nachfolgenden Teils des bestimmten Programms; wobei Datenblöcke mindestens dieses bestimmten Teils oder des nachfolgenden Teils in einer von einer zur nächsten Wiederholung wechselnden Reihenfolge rundgesendet werden.
  • Gemäß dem zweiten Aspekt der vorliegenden Erfindung wird eine Client-Station zum Empfangen rundgesendeter Multimediaprogramme zur Verwendung in einem System bereitgestellt, in welchem die Multimediaprogramme in Form einer Vielzahl wiederholt rundgesendeter Segmente übertragen werden und jedes der Segmente eine Anzahl von Blöcken in einer von einer Rundsendung zur nächsten Rundsendung wechselnden Reihenfolge enthält, wobei die Station Folgendes umfasst: einen Empfänger mit einer Kanalwahleinheit und einer Blockwahleinheit; wobei die Kanalwahleinheit ein Mittel zum Auffinden von Kanälen, über welche ein bestimmtes Programm rundgesendet wird, und ein Mittel zum Empfangen von Blöcken über die Kanäle enthält; und wobei die mit der Kanalwahleinheit verbundene Blockwahleinheit ein Mittel zum Festlegen einer natürlichen Betrachtungsfolge der Blöcke innerhalb jedes rundgesendeten Segments enthält; einen mit der Blockwahleinheit verbundenen Pufferspeicher zum Speichern eines nächsten Datenblocks der natürlichen Reihenfolge aus jedem rundgesendeten Segment; und einen angeschlossenen Decoder zum Empfangen der im Pufferspeicher gespeicherten Datenblöcke.
  • Ausgehend von einer Information, welche die durch den Server gewählte Reihenfolge anzeigt, wählt der Empfänger die (in einer Rundsendung vom Pyramidentyp) zu überspringenden Blöcke aus. Der Empfänger ermittelt die Anzahl der zu überspringenden Blöcke, bevor der nächste Block des betrachteten Videos gespeichert wird.
  • Gemäß dem dritten Aspekt der vorliegenden Erfindung wird ein Multimediaserver bereitgestellt, welcher Folgendes umfasst: eine Vielzahl von Speicherplatten mit darauf gespeicherten Datenblöcken einer Multimediapräsentation; eine Blockwahleinheit zum Formatieren der Multimediapräsentation in eine Vielzahl von Segmenten, wobei jedes der Segmente einen zeitlich verschiedenen Teil der Multimediapräsentation enthält; und Rundsendemittel zum wiederholten Rundsenden einer Vielzahl von Teilen eines Multimediaprogramms an die Empfangsstationen, wobei jeder Teil seltener rundgesendet wird als diejenigen Teile des Multimediaprogramms, welche in der Betrachtungsreihenfolge zeitlich weiter vorn liegen, und wobei jeder der Teile eine Vielzahl von Datenblöcken umfasst, deren Reihenfolge von einer zur nächsten Rundsendung des Teils variiert, und jeder Teil eine längere Betrachtungsdauer aufweist als diejenigen Teile des Multimediaprogramms, die in der Betrachtungsreihenfolge zeitlich früher liegen.
  • Der Multimedia-(Video-)Server teilt die Kanalbandbreite auf die rundzusendenden Videos auf. Jedes Video ist in nichtüberlappende Segmente und jedes Segment wiederum in Blöcke aufgeteilt, wobei ein Block eine Grundübertragungseinheit darstellt. Ebenso wie beim VI-Schema variieren die Größen und Übertragungshäufigkeit der verschiedenen Segmente eines Videos. Anstatt jedoch die Blöcke in jedem Segment in der normalen Reihenfolge zu senden, werden diese Blöcke in veränderlicher Reihenfolge gesendet.
  • Ein Verfahren/System, welches die Erfindung realisiert, weist den Vorteil auf, dass es in Systemen vom Pyramidentyp die Speicheranforderungen beim Client verringert. Ferner weist ein Verfahren/System, welches die Erfindung realisiert, den Vorteil auf, dass es die Datenrate verringert, mit der Daten in den Clientspeicher zur Pufferung in Systemen vom Pyramidentyp geschrieben werden müssen.
  • Im Folgenden wird die Erfindung beispielhaft unter Bezug auf die beiliegenden Zeichnungen beschrieben, in denen:
  • 1 die Segmentaufteilung darstellt:
  • 2 die Blocksendefolge gemäß einer Ausführungsart der vorliegenden Erfindung darstellt;
  • 3 ein Blockschaltbild eines Video-(Multimedia-)Serversystems gemäß einer Ausführungsart der vorliegenden Erfindung ist;
  • 4 ein Flussdiagramm der Blockwahleinheit im Server von 3 ist; und
  • 5 ein Flussdiagramm der Kanal-/Blockwahleinheit in den Clientstationen von 3 ist;
  • 6 ein Blockschaltbild einer Clientstation gemäß einer Ausführungsart der vorliegenden Erfindung ist.
  • 3 ist ein Blockschaltbild eines Videoserversystems gemäß einer Ausführungsart der vorliegenden Erfindung. Das System enthält einen Videoserver 100, in welchem Videos (zum Beispiel Filme) auf Speicherplatten 102 in Form einer Vielzahl von Blöcken 104 gespeichert sind, die über die Platten verteilt sein können. Der Videoserver 100 enthält einen Prozessor (CPU) 106, der durch einen im Hauptspeicher 108 gespeicherten Programmcode (Programme) gesteuert wird. Der Videoserver 100 enthält auch einen Speicherpuffer 110 zum Zwischenspeichern abgerufener Videoblöcke 104 und eine Netzwerkschnittstelle 112 zum Verbinden des Videoservers 100 mit einem Datenübertragungsnetzwerk 114. Die Netzwerkschnittstelle 112 teilt das Datenübertragungsnetzwerk 114 in eine Anzahl (R) von EDM-Kanälen auf, über welche die Videodaten rundgesendet werden.
  • Gemäß einer Ausführungsart der vorliegenden Erfindung ist eines der Programme zur Steuerung der Funktion des Videoservers 100 ein Fibonacci-Segmentplaner 116. Der Fibonacci-Segmentplaner 116 enthält eine Blockwahleinheit 118, zu dessen Funktionen die Auswahl der von den Speicherplatten 102 abzurufenden Videoblöcke und die Auswahl eines Netzwerkkanals zum Senden gehören. Die Blockwahleinheit 118 arbeitet mit diversen herkömmlichen Steuerprozessen 120 zusammen, um die ausgewählten Blöcke von den Speicherplatten abzurufen und das Rundsenden der ausgewählten Blöcke an die Clientstationen 122 über das Datenübertragungsnetzwerk 114 zu bewirken. Später wird genauer beschrieben, dass die Videoblöcke periodisch in Form von Segmenten unterschiedlicher Größe mit jeweils anderer Blockreihenfolge 124 über das Netzwerk 114 (rund-)gesendet werden. Der Videoserver 100 sendet auch Filmkennungen 126, welche (den Clientstationen) anzeigen, welche Filme auf welchen Kanälen rundgesendet werden.
  • Jede der Clientstationen 122 enthält eine Kanal-/Blockwahleinheit 128 (der durch einen Programmcode realisiert werden kann, der durch einen Mikroprozessor ausgeführt wird), welcher entsprechende Kanäle und darüber zu sendende Videoblöcke auswählt, die durch den Client decodiert und angeschaut werden sollen. Die ausgewählten Videoblöcke werden einem Puffer 130 zugeleitet, wo sie zwischengespeichert und dann in der richtigen zeitlichen Abspielreihenfolge zu einem Decoder 132 geleitet werden.
  • Der Videoserver 100 kann durch einen Prozessor realisiert werden, dessen Leistung für die zu unterstützende Anzahl von Videodatenströmen ausreicht. Zum Beispiel kann ein Videoserver mit niedriger Kapazität durch ein RISC-System/6000-TM-System und ein Videoserver mit großer Kapazität durch ein ES/9000-TM-System realisiert werden (beide erhältlich von International Business Machines Corporation, Armonk, New York). Bei den Speicherplatten 102 kann es sich beispielsweise um ein herkömmliches RAID-5-Plattenarray handeln. Das Datenübertragungsnetzwerk 114 kann zum Beispiel ein Lichtwellenleiternetz oder ein herkömmliches bidirektionales Kabelnetz sein. Die Clientstationen 122 können als Set-Top-Box mit dem Pufferspeicher 130 realisiert werden. Der Decoder 132 sollte so beschaffen sein, dass er das Format der Videoblöcke verarbeiten (vom Pufferspeicher 130 lesen) kann. Üblicherweise ist dies ein Decoder, der den Komprimierungsstandards MPED-1 oder MPEG-2 entspricht.
  • Jeder Film ist in Segmente S1, S2, ..., SR mit geometrisch zunehmender Größe eingeteilt, sodass Si = αSi–1 ist. Der geometrische Parameter α ist größer als 1. Alternativ kann diese Aufteilung mittels einer allgemeinen Fibonacci-Folge erfolgen, bei der sich die Segmentgrößen wie folgt verhalten:
  • Figure 00080001
  • Das Netzwerk 120 ist in R Kanäle aufgeteilt. Jedes der Segmente der Größe Si wird nur über den Kanal i übertragen.
  • 1 stellt die Segmentaufteilung im herkömmlichen VI-Schema dar. Diese Figur stellt den Fall für 2 Filme dar. (Das lässt sich für eine beliebige Anzahl von Filmen verallgemeinern.) Jeder der Filme ist in der Weise in 4 Segmente aufgeteilt, dass das (i + 1)-te Segment doppelt so groß wie das i-te Segment ist. Gemäß der Figur ist also der Film 1 in die 4 Segmente A1, B1, C1 und D1 und der Film 2 in die 4 Segmente A2, B2, C2 und D2 aufgeteilt.
  • Über den ersten Kanal werden nur die Segmente mit der kleinsten Größe übertragen. Somit werden über den ersten Kanal nur die Segmente A1 und A2 übertragen. Über den zweiten Kanal werden die nächstgrößeren Segmente B1 und B2, die nächstgrößeren Segmente C1 und C2 über den dritten Kanal und die größten Segmente C1 und D2 über den vierten Kanal übertragen.
  • Um mit dem Empfang des (beispielsweise) des übertragenen Films 1 zu beginnen, klinkt sich der Client in das erste Segment (A1) des Films ein. Die Übertragungsrate auf jedem Kanal ist größer als die Nutzungsrate. Folglich sammeln sich die Videodaten während der Übertragung eines bestimmten Segments auf der Clientseite an (werden gepuffert). Nach Beendigung der Übertragung des Segments A1 werden diese gepufferten Daten dazu verwendet, die ununterbrochene Übertragung zum Benutzer fortzusetzen, während der Client sich in das nächste Segment B1 einzuklinken versucht. Dieser Prozess wird bei jedem Segment so lange fortgesetzt, bis der ganze Film empfangen wurde. Die Übertragungs- und Empfangsparameter werden so gewählt, dass die Übertragung gleichmäßig ohne Unterbrechung erfolgen kann.
  • Bei der vorliegenden Ausführungsart ist jedes Segment in mehrere Blöcke aufgeteilt. Im Gegensatz zum VI-Schema werden die Blöcke jedoch nicht in ihrer natürlichen Reihenfolge übertragen. Vielmehr wird die Reihenfolge der Blöcke so variiert, dass die Anforderungen an das Speichervolumen stark verringert sind.
  • 2 zeigt ein Beispiel der allgemeinen Reihenfolge bei der Übertragung von Blöcken nach dem VI-Schema im Vergleich zum vorliegenden Schema. 2 zeigt den ersten Kanal von 1, über den die Segmente A1 und A2 übertragen werden. Das Segment A1 ist in 6 Blöcke aufgeteilt: a, b, c, d, e, f. Das Segment A2 ist in die 6 Blöcke p, q, r, s, t, u aufgeteilt. Die obere Hälfte von 2 zeigt die Reihenfolge, in welcher die Blöcke nach dem VI-Schema übertragen werden. Die untere Hälfte von 2 zeigt die Reihenfolge, in welcher die Blöcke nach dem vorliegenden Schema übertragen werden, das auf dem Verändern der Reihenfolge beruht.
  • Beim vorliegenden Schema staffelt und verschachtelt der Videoserver mehrere Kopien eines Segments. Jede Kopie wird als eine Übertragungsgruppe bezeichnet. Bei dem in 2 beispielhaft vorgestellten Schema gehört jeder sechste Block zu einer Folge und bildet eine Gruppe. Allgemein gehört jeder G-te Block zu einer Gruppe, wobei der Parameter G auf eine später beschriebene Art und Weise ermittelt wird.
  • In 2 sind drei Übertragungsgruppen gezeigt. Die Blöcke der ersten Gruppe a, b, c, d, e, f sind durch Kreise gekennzeichnet. Die Blöcke der zweiten Gruppe e, f, a, b, c, d sind mit der ersten Gruppe verschachtelt und um eine Position nach rechts versetzt. Die Blöcke der dritten Gruppe c, d, e, f, a, b sind ebenfalls mit der ersten Gruppe verschachtelt um gegenüber dieser um zwei Positionen nach rechts versetzt. Zyklisch zurückgerechnet beträgt der Staffelungsabstand der zweiten Gruppe zur ersten Gruppe 2, bei der dritten Gruppe hingegen 4. Die Verfahren zur Ermittlung der zu staffelnden Gruppen und des Staffelungsabstandes werden später angegeben.
  • Man beachte, dass in 2 alle zu einer bestimmten Gruppe gehörenden Blöcke durch Kreise gekennzeichnet sind. Alle diese Blöcke werden gemäß den Grundgedanken der vorliegenden Erfindung auf der Clientseite empfangen. Aus der Sicht des Clients muss also jeder G-te Block empfangen werden, der zu einer bestimmten Gruppe gehört. Wie bereits bei 2 erörtert, wird eine Gruppe durch jeden sechsten Block des Diagramms gebildet. Somit gibt es insgesamt 6 Gruppen, d. h. 3 Gruppen für jedes Video. Außerdem ist jedes Paar aufeinander folgender Gruppen eines Segments (zyklisch) durch zwei Blöcke voneinander getrennt. Allgemein wiederholt sich jeder G-te Block, und der Client klinkt sich in das Zeitintervall ein, von dem aus er auf diese Blöcke zugreifen kann.
  • 2 zeigt, dass die Latenzzeit beim VI-Schema dieselbe ist wie beim vorliegenden Schema, wenn Si = αSi–1 ist. Das vorliegenden Schema berücksichtigt jedoch eine allgemeine Fibonacci-Folge, bei der sich die Segmentgrößen wie folgt verhalten:
  • Figure 00110001
  • Dadurch verkürzt sich die Latenzzeit, und die Anforderungen an den Pufferspeicher gehen weiter zurück.
  • Das oben beschriebene Schema staffelt die verschiedenen Segmente in einer Weise, dass die Übertragungsrate stark verringert wird. Aufgrund dieser verringerten Übertragungsrate können die Anforderungen an den Pufferspeicher beim Client stark zurückgehen. Je größer die Anzahl der gestaffelten und verschachtelten Gruppen bei der Übertragung jedes Segments ist, desto stärker gehen die Anforderungen an den Pufferspeicher beim Client zurück. Gleichzeitig ist dies jedoch dadurch begrenzt, dass man bei einer übermäßigen Staffelung den gleichmäßigen Datenempfang auf der Clientseite nicht garantieren kann. Daher sollten die verschiedenen Segmente so stark wie möglich gestaffelt werden, ohne dass das fortlaufende Betrachten beim Client beeinträchtigt wird.
  • Der Abstand zwischen aufeinander folgenden Blöcken in einer Gruppe sollte innerhalb eines Segments kürzer als die Abspieldauer eines Blocks sein. Außerdem besteht für die aufeinander folgenden Segmente eines Films noch eine weitere Bedingung. Wenn der Empfang des i-ten Segments noch nicht begonnen hat, bevor das (i – 1)-te Segment verbraucht wurde, gerät die Filmdarbietung ins Stocken. Einerseits sollen zwar durch die Staffelung die Anforderungen an die Speicherkapazität verringert werden, andererseits ist jedoch auch darauf zu achten, dass es nicht zu Stockungen kommt. Hierzu ist zu erwähnen, dass das letzte Segment nur unter Berücksichtigung der Verbrauchsrate beim Client gestaffelt werden kann, weil es dann nicht zu Stockungen kommen kann.
  • Angenommen, die Bandbreite des Netzwerks ist B, die Verbrauchsrate ist c, und die Anzahl der zu zeigenden Filme beträgt N. Die Länge des Films soll L sein. p soll die Anzahl der bei der Übertragung jedes Segments zu staffelnden und zu verschachtelnden Gruppen und plast die entsprechende Anzahl der Gruppen für das letzte Segment sein.
  • Dann gilt bei der bevorzugten Ausführungsart:
    • 1. Für den Wert α ist eine kleine ganze Zahl zu wählen. α = 2 erweist sich in der Praxis als ein guter Wert.
    • 2. Für den Wert R ist die größte ganze Zahl kleiner als oder gleich 8 zu wählen, welche der folgenden Beziehung genügt:
      Figure 00130001
      Der Wert 8 ist beliebig gewählt, da die Latenzzeit des Benutzers für α = 2 und R = 8 so kurz ist, dass sich eine weitere Verbesserung erübrigt. Deshalb wird R wie folgt gewählt:
      Figure 00130002
    • 3. Den Film in generalisierte Fibonacci-Segmente S1, S2, ..., SR aufteilen, welche den beiden folgenden Bedingungen genügen:
      Figure 00140001
      und
      Figure 00140002
    • 4. Für den Wert p ist die größte ganze Zahl zu wählen, welche der folgenden Bedingung genügt:
      Figure 00140003
      Folglich wird p wie folgt gewählt:
      Figure 00140004
    • 5. Für die Anzahl der Gruppen des letzten Segments ist zu wählen:
      Figure 00140005
    • 6. Aufteilen jedes Segments Si in pLi Blöcke für jedes i ∈ 1, ..., (R – 1). Dadurch wird jedes Segment Si in eine Vielzahl von p Blöcken aufgeteilt. Der Wert Li wird für jedes Segment Si so groß wie möglich gewählt. Außerdem ist der letzte Block SR in plast·LR Blöcke aufgeteilt.
  • Man beachte, dass Li (beziehungsweise LR) den Staffelungsabstand zwischen den p (beziehungsweise plast) Übertragungsgruppen jedes Segments (beziehungsweise des letzten Segments) darstellt. Außerdem ist der Abstand zwischen aufeinanderfolgenden Blöcken eines Segments (G) für jeden Film gleich p, lediglich für das letzte Segment beträgt der Abstand plast Wenn die Kanäle also von N Filmen gemeinsam genutzt werden, beträgt der Abstand somit Np für jedes Segment und Nplast für das letzte Segment.
  • Die Übertragung der Blöcke für die verschiedenen Kanäle und Filme erfolgt dann in der grundlegenden Reihenfolge:
    für q = 1 bis N (Nummer des Films) und
    für i = 1 bis R (Nummer des Kanals)
    übertrage den nächsten Block in der Folge für den Kanal i und den Film q für das nächste I und das nächste q.
  • Es wird davon ausgegangen, dass die Übertragung auf R Kanäle aufgeteilt ist und die Übertragung eines bestimmten Films q über den i-ten Kanal betrachtet wird.
  • 4 stellt ein Flussdiagramm der Blockauswahleinheit 118 des Servers von 3 gemäß einer Ausführungsart der vorliegenden Erfindung darstellt. Das Flussdiagramm zeigt für einen bestimmten Kanals i und einen bestimmten Film q die Reihenfolge, in welcher Blöcke zum Client gesendet werden. Es ist jedoch klar, dass die Sendefolge in Wirklichkeit durch Zeitmultiplexen eingefügt wird. Der Kanal R verwendet einen von anderen Kanälen etwas verschiedenen Übertragungsalgorithmus.
  • In Schritt 201 werden die Indexierungsvariablen zum Übertragen der Blöcke initialisiert, wobei j gleich 1 und n gleich 0 gesetzt wird.
  • In Schritt 205 wird der Wert der Kanalnummer (i) geprüft. Wenn i kleiner als R (der letzte Kanal) ist, wird in Schritt 210 zur nächsten Übertragung der Block nLi + j ausgewählt. Dann wird in Schritt 215 n um 1 erhöht.
  • In Schritt 220 wird geprüft, ob n kleiner als p (die Anzahl der Gruppen je Segment außer dem letzten Segment) ist. Wenn n kleiner als p ist, wird der Schritt 210 für die nächste Übertragung noch einmal ausgeführt. Ansonsten wird die Kanalnummer j in Schritt 225 gleich (j + 1) mod p gesetzt.
  • Wenn in Schritt 205 festgestellt wird, dass i gleich der Nummer des letzten Kanals R gesetzt ist, wird in Schritt 240 für die nächste Übertragung der Block nLR + j ausgewählt. Dann wird in Schritt 245 n um 1 erhöht. Wenn in Schritt 250 n kleiner als plant (die Anzahl von Gruppen im letzten Segment) ist, wird der Schritt 240 für die nächste Übertragung noch einmal durchgeführt. Ansonsten wird j in Schritt 255 gleich (j + 1) mod plast gesetzt.
  • 5 zeigt ein Flussdiagramm der Kanal-/Blockauswahleinheit 128 der Clientstation gemäß einer Ausführungsart der vorliegenden Erfindung. Es wird davon ausgegangen, dass der Client das Video q empfangen will. In Schritt 300 wird die Indexierungsvariable i des nächsten zu empfangenden Segments gleich 1 gesetzt.
  • In Schritt 305 klinkt sich der Empfänger in einen zuerst auf Kanal i ankommenden Block des i-ten Segments des Videos q ein. Dann prüft die Kanal-/Blockauswahleinheit in Schritt 310, ob der Puffer 130 voll ist. Wenn dies der Fall ist, werden die nächsten pLi Blöcke des gerade übertragenen Videos q übersprungen. Ansonsten empfängt die Kanal-/Blockauswahleinheit 128 in Schritt 320 den nächsten auf Kanal i ankommenden Kanalblock des Segments Si des Videos q und speichert ihn im Puffer 130.
  • In Schritt 325 prüft die Kanal-/Blockauswahleinheit, ob alle Blöcke des Segments Si empfangen worden sind. Wenn dies der Fall ist, wird in Schritt 330 ermittelt, ob i gleich R ist. Wenn noch nicht alle Blöcke empfangen worden sind, springt die Kanal-/Blockauswahleinheit zurück zu Schritt 305.
  • Wenn in Schritt 330 festgestellt wird, dass i ungleich R ist, wird i in Schritt 335 um 1 erhöht, und anschließend springt die Kanal-/Blockauswahleinheit zurück zu Schritt 305. Wenn jedoch festgestellt wird, dass i gleich R ist, ist das gesamte Video empfangen worden, und die Kanal-/Blockauswahleinheit beendet den Prozess in Schritt 340.
  • Man beachte, dass beim Empfangsalgorithmus des Servers die Anzahl der vor dem Empfang des nächstfolgenden Blocks durch den Client zu überspringenden Blöcke fast, aber nicht ganz, konstant ist. Ab und zu ist der nächste zu empfangende Block um einen Block vor dem Abstand zwischen den beiden vorangehenden Blöcken in derselben Gruppe verschoben. Das erfolgt entweder durch Einbeziehen von Kopfdaten am Blockanfang, welche beschreiben, zu welchem Film ein Block gehört, oder einfach durch Überspringen eines Blocks, nachdem alle Li Blöcke des Segments Si empfangen wurden.
  • Die vorliegende Erfindung ist auch beim Frequenzmultiplexverfahren einsetzbar. Auch hier wird im Rundsendeserver jedes Video in mehrere Segmente und jedes Segment wiederum in Blöcke aufgeteilt. Jeder Kanal ist in p Teilkanäle aufgeteilt, und die versetzten Gruppen jedes Segments werden nun den Teilkanälen zugeordnet. Die Blöcke jedes Segments werden gleichzeitig mit unterschiedlich verschobener Phase über die mehreren Teilkanäle übertragen, welche dem Versetzungsabstand entspricht. Die Verfahren zum Ermitteln von p und des Versetzungsabstands sind dieselben wie oben. Auf der Clientseite wird entsprechend der Phasendifferenz der richtige Teilkanal zum Empfangen des nächsten Blocks ausgewählt, um den Speicherbedarf so niedrig wie möglich zu halten.
  • 6 ist ein Blockschaltbild einer Clientstation 130 gemäß einer Ausführungsart der vorliegenden Erfindung. Die Clientstation beinhaltet eine Netzwerkschnittstelle 602, über welche die elektrische und die Datenverbindung zum Netzwerk 114 hergestellt werden. Die Daten vom Netzwerk werden durch die Netzwerkschnittstelle 602 zu den richtigen Komponenten der Clientstation weitergeleitet.
  • Die Permutationsdaten 124, die Film-ID 126 sowie weitere herkömmliche Zeitdaten werden direkt über einen ersten Pfad geleitet. Die Permutationsdaten 124 und die Film-ID werden in einem Speicher 604 gespeichert, während die Zeitdaten zu einem Steuerprozessor 606 gelangen. Der Steuerprozessor 606 arbeitet programmgesteuert gemäß dem Flussdiagramm von 5.
  • Die Videoblöcke gelangen über einen zweiten Pfad zu einem TDM-Demultiplexer 608. Der TDM-Demultiplexer benutzt als speziellen Eingabewert den Kanaldatenteil der Film-ID (diejenigen Daten, welche anzeigen, über welche Kanäle ein Film und seine einzelnen Segmente laufen). Der Steuerprozessor lädt die entsprechenden Kanaldaten zum Empfangen eines gewünschten Segments in ein Register 610 (welches den speziellen Wert des TDM-Demultiplexers liefert).
  • Das ausgewählte Segment wird vom Ausgang des TDM-Demultiplexers zum Eingang eines Block-Demultiplexers 612 gesendet. Der spezielle Eingabewert des Block-Demultiplexers wird durch ein zweites Register 614 bereitgestellt, in welches der Steuerprozessor die entsprechenden gemäß Flussdiagramm von 5 ermittelten Blockauswahldaten lädt.
  • Der ausgewählte Block wird in einem Pufferspeicher 130 zwischengespeichert und dann zu einem Decoder 132 gesendet. Der Decoder 132 decodiert die gepufferten Blöcke in zeitlicher Reihenfolge und sendet daraufhin ein Videoausgangssignal zu einer Anzeigevorrichtung des Benutzers.
  • Dem Fachmann ist klar, dass jeder der Komponenten der Clientstation verschiedene, hier nicht ausführlich beschriebene Zeitsignale zugesendet werden, damit sie ordnungsgemäß arbeitet.

Claims (6)

  1. Verfahren zum Rundsenden von Multimediaprogrammen zur Verwendung in einem System, in welchem die Programme an Empfangsstationen (122) rundgesendet werden, wobei das Verfahren die folgenden Schritte umfasst: wiederholtes Rundsenden eines bestimmten Teils (A1) eines entsprechenden Programms an die Empfangsstationen (122); und wiederholtes Rundsenden eines nachfolgenden Teils (B1) des entsprechenden Programms an die Empfangsstationen (122), aber nicht so oft, wie des bestimmten Teils (A1); dadurch gekennzeichnet, dass Datenblöcke (a bis f) mindestens eines bestimmten Teils (A1) und des nachfolgenden Teils (B1) in wechselnder Reihenfolge rundgesendet werden, wobei sich die Reihenfolge von einer Wiederholung zur nächsten Wiederholung unterscheidet.
  2. Verfahren nach Anspruch 1, wobei der bestimmte Teil (A1) des entsprechenden Programms auf einem ersten Kommunikationskanal und der nachfolgende Teil (B1) des entsprechenden Programms auf einem zweiten Kommunikationskanal rundgesendet wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei der bestimmte Teil (A1) des Programms nicht so lange dauert wie der nachfolgende Teil (B1) des Programms.
  4. Verfahren nach einem der vorangehenden Ansprüche, wobei in dem bestimmten Teil der Beginn des Programms enthalten ist.
  5. Client-Station (122) zum Empfangen rundgesendeter Multimediaprogramme zur Verwendung in einem System, in welchem die Multimediaprogramme als Vielzahl wiederholt rundgesendeter Segmente (A1 bis D1, A2 bis D2) übertragen werden und jedes der Segmente eine Anzahl von Blöcken (a bis f, p bis u) mit einer von Rundsendung zu Rundsendung unterschiedlichen Reihenfolge enthält, wobei die Station Folgendes umfasst: einen Empfänger mit einer Kanalauswahleinheit (128, 608) und einer Blockauswahleinheit (128, 612); wobei die Kanalauswahleinheit (128, 608) ein Mittel zum Erkennen der Kanäle enthält, über welche ein bestimmtes Programm rundgesendet wird, und ein Mittel zum Empfangen von Blöcken von den Kanälen; und wobei die mit der Kanalauswahleinheit (128, 608) gekoppelte Blockauswahleinheit (128, 612) ein Mittel zum Ermitteln einer natürlichen Betrachtungsreihenfolge der Blöcke in jedem rundgesendeten Segment enthält; einen mit der Blockauswahleinheit (128, 612) gekoppelten Pufferspeicher (130) zum Speichern eines nächsten Datenblocks aus jedem rundgesendeten Segment in der natürlichen Reihenfolge; und einen Decoder (132), der so geschaltet ist, dass er die im Pufferspeicher (130) gespeicherten Datenblöcke empfängt.
  6. Multimediaserver (100), welcher Folgendes umfasst: eine Vielzahl von Platten (102) mit darauf gespeicherten Datenblöcken (104) einer Multimediapräsentation; eine Blockauswahleinheit (118) zum Formatieren der Multimediapräsentation in eine Vielzahl von Segmenten (A1 bis D1), wobei jedes Segment (A1 bis D1) einen anderen Zeitabschnitt (A1 bis D1) der Multimediapräsentation enthält; und ein Rundsendemittel zum wiederholten Rundsenden einer Vielzahl von Teilen (A1 bis D1) eines Multimediaprogramms an die Empfangsstationen (122), wobei jeder Teil (B1 bis D1) des Multimediaprogramms nicht so oft rundgesendet wird wie diejenigen Teile (A1 bis C1), die in der Betrachtungsreihenfolge jedes der Teile (A1 bis D1) zeitlich früher liegen, wobei die Teile (A1 bis D1) eine Vielzahl von Datenblöcken (a bis f) umfassen, deren Reihenfolge sich von einer Rundsendung des Teils (A1) zu einer nachfolgenden Rundsendung des Teils (A1) ändert, und wobei die Betrachtungsdauer jedes Teils (B1 bis D1) länger ist als die Betrachtungsdauer derjenigen Teile (A1 bis C1) des Multimediaprogramms, welche in der Betrachtungsreihenfolge zeitlich früher liegen.
DE69634110T 1995-10-12 1996-08-12 Verfahren, Client und Server für Video-auf-Anfrage Expired - Lifetime DE69634110T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US542002 1995-10-12
US08/542,002 US5751336A (en) 1995-10-12 1995-10-12 Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems

Publications (2)

Publication Number Publication Date
DE69634110D1 DE69634110D1 (de) 2005-02-03
DE69634110T2 true DE69634110T2 (de) 2005-07-07

Family

ID=24161952

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69634110T Expired - Lifetime DE69634110T2 (de) 1995-10-12 1996-08-12 Verfahren, Client und Server für Video-auf-Anfrage

Country Status (5)

Country Link
US (1) US5751336A (de)
EP (1) EP0768768B1 (de)
JP (1) JP3170461B2 (de)
KR (1) KR100230533B1 (de)
DE (1) DE69634110T2 (de)

Families Citing this family (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594688B2 (en) * 1993-10-01 2003-07-15 Collaboration Properties, Inc. Dedicated echo canceler for a workstation
DK0786121T3 (da) 1994-10-12 2000-07-03 Touchtunes Music Corp System til digital, intelligent audiovisuel gengivelse
US7188352B2 (en) 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
US7424731B1 (en) 1994-10-12 2008-09-09 Touchtunes Music Corporation Home digital audiovisual information recording and playback system
US8661477B2 (en) 1994-10-12 2014-02-25 Touchtunes Music Corporation System for distributing and selecting audio and video information and method implemented by said system
JPH11506575A (ja) 1995-03-07 1999-06-08 インターバル リサーチ コーポレイション 情報の選択記憶システム及び方法
ES2147651T3 (es) * 1995-07-21 2000-09-16 Koninkl Philips Electronics Nv Metodo para transmitir y recibir señales comprimidas de television.
EP0808064B1 (de) * 1995-12-01 2004-03-03 Matsushita Electric Industrial Co., Ltd. Informationsverarbeitungsgerät, -system und verfahren für ein datenübertragungsnetzwerk
US5936659A (en) * 1996-01-31 1999-08-10 Telcordia Technologies, Inc. Method for video delivery using pyramid broadcasting
CA2201679A1 (en) * 1996-04-15 1997-10-15 Raju C. Bopardikar Video data storage
GB2312319B (en) 1996-04-15 1998-12-09 Discreet Logic Inc Video storage
US7266686B1 (en) * 1996-05-09 2007-09-04 Two-Way Media Llc Multicasting method and apparatus
FR2753868A1 (fr) 1996-09-25 1998-03-27 Technical Maintenance Corp Procede de selection d'un enregistrement sur un systeme numerique de reproduction audiovisuel et systeme pour mise en oeuvre du procede
US5893062A (en) 1996-12-05 1999-04-06 Interval Research Corporation Variable rate video playback with synchronized audio
US6263507B1 (en) 1996-12-05 2001-07-17 Interval Research Corporation Browser for use in navigating a body of information, with particular application to browsing information represented by audiovisual data
US6047317A (en) * 1997-03-28 2000-04-04 International Business Machines Corporation System and method for enabling a user to rapidly access images in cyclically transmitted image streams
JP3810530B2 (ja) * 1997-09-18 2006-08-16 富士通株式会社 ビデオサーバシステム、コンテンツ動的配置装置及びコンテンツ動的配置方法
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
US6816904B1 (en) * 1997-11-04 2004-11-09 Collaboration Properties, Inc. Networked video multimedia storage server environment
US7024681B1 (en) * 1997-12-04 2006-04-04 Verizon Laboratories Inc. Method and apparatus for near video on demand
US6233656B1 (en) * 1997-12-22 2001-05-15 Lsi Logic Corporation Bandwidth optimization cache
FR2781582B1 (fr) 1998-07-21 2001-01-12 Technical Maintenance Corp Systeme de telechargement d'objets ou de fichiers pour mise a jour de logiciels
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
US8028318B2 (en) 1999-07-21 2011-09-27 Touchtunes Music Corporation Remote control unit for activating and deactivating means for payment and for displaying payment status
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6993787B1 (en) * 1998-10-29 2006-01-31 Matsushita Electric Industrial Co., Ltd. Providing VCR functionality for data-centered video multicast
US8726330B2 (en) 1999-02-22 2014-05-13 Touchtunes Music Corporation Intelligent digital audiovisual playback system
JP2000339279A (ja) * 1999-05-28 2000-12-08 Matsushita Electric Ind Co Ltd 映像分散キャッシュ装置、及び映像収集再生装置
US6502139B1 (en) 1999-06-01 2002-12-31 Technion Research And Development Foundation Ltd. System for optimizing video on demand transmission by partitioning video program into multiple segments, decreasing transmission rate for successive segments and repeatedly, simultaneously transmission
US6341375B1 (en) 1999-07-14 2002-01-22 Lsi Logic Corporation Video on demand DVD system
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
US7155735B1 (en) 1999-10-08 2006-12-26 Vulcan Patents Llc System and method for the broadcast dissemination of time-ordered data
US20020157103A1 (en) * 2000-01-07 2002-10-24 Deyang Song Method for digital media playback in a broadcast network
US6757682B1 (en) 2000-01-28 2004-06-29 Interval Research Corporation Alerting users to items of current interest
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
US6622305B1 (en) * 2000-02-25 2003-09-16 Opentv, Inc. System and method for displaying near video on demand
US7013479B2 (en) * 2000-04-14 2006-03-14 Matsushita Electric Industrial Co., Ltd. Broadcasting apparatus and method for pre-transmitting data carousel and receiving apparatus for receiving data carousel
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
US6557030B1 (en) * 2000-05-31 2003-04-29 Prediwave Corp. Systems and methods for providing video-on-demand services for broadcasting systems
MXPA02011840A (es) * 2000-05-31 2003-12-11 Prediwave Corp Metodos para proveer servicios de video a pedido para sistemas de transmision.
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US7072971B2 (en) 2000-11-13 2006-07-04 Digital Foundation, Inc. Scheduling of multiple files for serving on a server
US7240358B2 (en) * 2000-12-08 2007-07-03 Digital Fountain, Inc. Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources
US6823394B2 (en) 2000-12-12 2004-11-23 Washington University Method of resource-efficient and scalable streaming media distribution for asynchronous receivers
US7246369B1 (en) * 2000-12-27 2007-07-17 Info Valve Computing, Inc. Broadband video distribution system using segments
US8458754B2 (en) * 2001-01-22 2013-06-04 Sony Computer Entertainment Inc. Method and system for providing instant start multimedia content
US8091112B1 (en) * 2001-02-28 2012-01-03 Keen Personal Technologies, Inc. System and a method for transmitting and receiving a program with improved efficiency
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
JP2002271758A (ja) * 2001-03-13 2002-09-20 Sony Corp 送信装置、送信方法、受信装置、受信方法および送受信システム
GB2374749B (en) * 2001-04-20 2005-04-06 Discreet Logic Inc Image data processing
US7200669B2 (en) * 2001-07-31 2007-04-03 Dinastech Ipr Limited Method and system for delivering large amounts of data with interactivity in an on-demand system
US7574728B2 (en) * 2001-07-31 2009-08-11 Dinastech Ipr Limited System for delivering data over a network
US7174384B2 (en) * 2001-07-31 2007-02-06 Dinastech Ipr Limited Method for delivering large amounts of data with interactivity in an on-demand system
JP2003060638A (ja) * 2001-08-15 2003-02-28 Sony Corp コンテンツ提供装置及びコンテンツ提供方法
JP2003101604A (ja) * 2001-09-20 2003-04-04 Sony Corp データ伝送方法及び装置並びにデータ受信方法及び装置
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US8151304B2 (en) 2002-09-16 2012-04-03 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
KR101143282B1 (ko) * 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
US7404002B1 (en) * 2003-03-06 2008-07-22 Nvidia Corporation Method and system for broadcasting live data over a network
JP4306365B2 (ja) * 2003-08-07 2009-07-29 ソニー株式会社 サーバ及びコンテンツ受信装置
EP1665539B1 (de) 2003-10-06 2013-04-10 Digital Fountain, Inc. Soft-Dekodierung von Multi-Stage Chain Reaction Kodes
US20060031885A1 (en) * 2004-04-30 2006-02-09 Vulcan Inc. Management and non-linear presentation of music-related broadcasted or streamed multimedia content
US20060031916A1 (en) * 2004-04-30 2006-02-09 Vulcan Inc. Management and non-linear presentation of broadcasted or streamed multimedia content
US20060031879A1 (en) * 2004-04-30 2006-02-09 Vulcan Inc. Management and non-linear presentation of news-related broadcasted or streamed multimedia content
US7418651B2 (en) * 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
US7447978B2 (en) 2004-11-16 2008-11-04 Nokia Corporation Buffering packets of a media stream
US7760908B2 (en) * 2005-03-31 2010-07-20 Honeywell International Inc. Event packaged video sequence
BRPI0610404A2 (pt) 2005-04-07 2012-01-10 Nokia Corp método, sistema e dispositivo para armazenar pacotes de um fluxo de mìdia, dispositivo de comunicação sem fio, servidor, servidor de radiodifusão de multimìdia/serviço multipontos, dispositivo para receber os pacotes possuindo uma programação de transmissão e ao menos um quadro de transmissão, sinal associado a um fluxo de mìdia, produto de programa de computador
US20070071404A1 (en) * 2005-09-29 2007-03-29 Honeywell International Inc. Controlled video event presentation
WO2007095550A2 (en) 2006-02-13 2007-08-23 Digital Fountain, Inc. Streaming and buffering using variable fec overhead and protection periods
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9178535B2 (en) * 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9330529B2 (en) 2007-01-17 2016-05-03 Touchtunes Music Corporation Game terminal configured for interaction with jukebox device systems including same, and/or associated methods
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US9172918B2 (en) * 2007-02-02 2015-10-27 Honeywell International Inc. Systems and methods for managing live video data
US20080205229A1 (en) * 2007-02-26 2008-08-28 Yung-Chih Li Method of identifying optical disc
US9953481B2 (en) 2007-03-26 2018-04-24 Touchtunes Music Corporation Jukebox with associated video server
TWI335423B (en) * 2007-08-30 2011-01-01 Mitac Int Corp Navigation apparatus using image map and method thereof
CA2697764A1 (en) * 2007-09-12 2009-03-19 Steve Chen Generating and communicating source identification information to enable reliable communications
US9483405B2 (en) 2007-09-20 2016-11-01 Sony Interactive Entertainment Inc. Simplified run-time program translation for emulating complex processor pipelines
US9324064B2 (en) 2007-09-24 2016-04-26 Touchtunes Music Corporation Digital jukebox device with karaoke and/or photo booth features, and associated methods
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
US8849435B2 (en) 2008-07-09 2014-09-30 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US9100585B2 (en) 2008-10-28 2015-08-04 Sony Computer Entertainment Inc. Combined broadcast and backchannel delivery of streaming content
US20100125885A1 (en) * 2008-11-19 2010-05-20 Qualcomm Incorporated System and method of providing near video on demand
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8878931B2 (en) 2009-03-04 2014-11-04 Honeywell International Inc. Systems and methods for managing video data
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
KR101748448B1 (ko) 2009-03-18 2017-06-16 터치튠즈 뮤직 코포레이션 엔터테인먼트 서버 및 관련 소셜 네트워킹 서비스
US10719149B2 (en) 2009-03-18 2020-07-21 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
WO2011094330A1 (en) 2010-01-26 2011-08-04 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US8433759B2 (en) 2010-05-24 2013-04-30 Sony Computer Entertainment America Llc Direction-conscious information sharing
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
WO2015070070A1 (en) 2013-11-07 2015-05-14 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
EP3123293A4 (de) 2014-03-25 2017-09-27 Touchtunes Music Corporation Digitale jukebox-vorrichtung mit verbesserten benutzeroberflächen sowie entsprechende verfahren
US9825801B1 (en) 2016-07-22 2017-11-21 Spotify Ab Systems and methods for using seektables to stream media items

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0525894B1 (de) * 1991-08-02 2000-05-10 Koninklijke Philips Electronics N.V. Darstellungssystem für Nachrichten, die auf Anfrage Information erteilen, Sendestation und Empfängerstation zur Verwendung in einem derartigen Darstellungssystem
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
US5559764A (en) * 1994-08-18 1996-09-24 International Business Machines Corporation HMC: A hybrid mirror-and-chained data replication method to support high data availability for disk arrays
US5608448A (en) * 1995-04-10 1997-03-04 Lockheed Martin Corporation Hybrid architecture for video on demand server

Also Published As

Publication number Publication date
US5751336A (en) 1998-05-12
EP0768768B1 (de) 2004-12-29
KR970025130A (ko) 1997-05-30
DE69634110D1 (de) 2005-02-03
EP0768768A3 (de) 2000-08-16
EP0768768A2 (de) 1997-04-16
KR100230533B1 (ko) 1999-11-15
JPH09135222A (ja) 1997-05-20
JP3170461B2 (ja) 2001-05-28

Similar Documents

Publication Publication Date Title
DE69634110T2 (de) Verfahren, Client und Server für Video-auf-Anfrage
DE3614361C2 (de)
DE60032467T2 (de) Verfahren und System für Video-auf-Anfrage
DE60008928T2 (de) Verfahren zur steuerung des ablaufs eines stroms
DE69823168T2 (de) Verfahren und gerät zur kodierung und formatierung von daten eines videoprogramms zur erzeugung sich mehrfach überlappender darstellungen des videoprogramms
DE69935360T2 (de) Elektronischer Programmführer und entsprechenden MPEG-Datenstrom
DE60222276T2 (de) Softwaregesteuerte bidirektionale mehrmoduskommunikationsvorrichtung
DE69734064T2 (de) Anordnung und verfahren zur dynamischen bandbreitenzuordnung in einem paketstromkodierer
DE60126224T2 (de) Rundfunkdatenempfänger
DE60114650T2 (de) Adaptive videobestellung
DE4228221B4 (de) Vorrichtung zur Aufteilung von Videosignalen zwischen zwei Kanälen
DE10043188A1 (de) Fehlerkorrekturverfahren für Videokompressionskodierung unter Verwendung von mehreren Referenzpuffern und einem Nachrichtenkanal
DE69831972T2 (de) Verfahren zur bereitstellung und ermittlung von daten
DE60225010T2 (de) Verfahren und vorrichtung zur verbesserten erfassung und überwachung von ereignisinformationstabellenteilen
DE69733199T2 (de) Verfahren und audio-server-system für ein unzuverlässiges netzwerk
DE10004829B4 (de) Verfahren und Vorrichtung zum Übertragen von Dateneinheiten eines Datenstroms
EP0515980B1 (de) Raum- und Zeit-Koppelelement
EP0336510B1 (de) Prädiktiver Standbildcodierer
DE69834175T2 (de) Verfahren zur Bestimmung der Zugriffszeit von wiederholt übertragenen Objekte
DE60205837T2 (de) Verfahren zur effektiven Anfrageverarbeitung in einer Umgebung mit Funkdatenrundsendung
WO2013117514A1 (de) Verfahren zum schnellen umschalten zwischen alternativen übertragungswegen
EP0938236B1 (de) Verfahren zum Generieren einer Einsprungsstelle in einen Bildatenstrom und Vorrichtung zur Durchführung des Verfahrens
DE60128067T2 (de) Verfahren und system zur schleifendatenrundfunksendung
DE60310411T2 (de) Verfahren und Vorrichtung zur Übertragung von Daten, die mit übertragenen Informationen verknüpft sind
DE19641897C2 (de) System zur Übertragung und Verteilung von Fernsehsignalen mit dynamischer Zuweisung der Übertragungskapazität

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: CISCO SYSTEMS, INC., SAN JOSE, CALIF., US

8328 Change in the person/name/address of the agent

Representative=s name: BOSCH JEHLE PATENTANWALTSGESELLSCHAFT MBH, 80639 M