DE69724357T2 - System und Verfahren zur Synchronisierung von Medienstrom-Spiellisten in Echtzeit - Google Patents

System und Verfahren zur Synchronisierung von Medienstrom-Spiellisten in Echtzeit Download PDF

Info

Publication number
DE69724357T2
DE69724357T2 DE69724357T DE69724357T DE69724357T2 DE 69724357 T2 DE69724357 T2 DE 69724357T2 DE 69724357 T DE69724357 T DE 69724357T DE 69724357 T DE69724357 T DE 69724357T DE 69724357 T2 DE69724357 T2 DE 69724357T2
Authority
DE
Germany
Prior art keywords
playlist
media stream
media
time
synchronization
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
DE69724357T
Other languages
English (en)
Other versions
DE69724357D1 (de
Inventor
Michael A. Demoney
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems 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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of DE69724357D1 publication Critical patent/DE69724357D1/de
Application granted granted Critical
Publication of DE69724357T2 publication Critical patent/DE69724357T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/002Programmed access in sequence to a plurality of record carriers or indexed parts, e.g. tracks, thereof, e.g. for editing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/40Combinations of multiple record carriers
    • G11B2220/41Flat as opposed to hierarchical combination, e.g. library of tapes or discs, CD changer, or groups of record carriers that together store one title

Description

  • Die Erfindung betrifft Multimedia-Serversysteme und insbesondere die Synchronisation von Medienstromabspiellisten (Playlists) mit Echtzeit, d. h. tatsächlicher Taktzeit, in einer Videoserverumgebung.
  • Medienserver stellen kosteneffektive Video-, Audio- und andere Multimediastrom-Fähigkeiten zur Verfügung für die Verwendung in sowohl Geschäfts- als auch Konsumentenumgebungen. Beispielsweise kann ein Videoserver eine Bibliothek von Videoquellen enthalten, wie z. B. Videofilme, und kann es einem oder mehreren Benutzern erlauben, einen oder mehrere der Filme für die Betrachtung auszuwählen. Der Videoserver beinhaltet typischerweise magnetische Speicherfestplattenlaufwerke, auf denen aufgezeichnete Blöcke von den benutzerausgewählten Videoquellen magnetisch gespeichert werden. Filme sind typischerweise zwei Stunden lang und werden mit einer Geschwindigkeit von zwischen vielleicht einem MB/Sekunde und etwa acht MB/Sekunde codiert (z. B. unter Verwendung von MPEG). Somit kann ein Film zwischen einem und acht GB Speichermedium erfordern.
  • Eine Zugangsentscheidungseinheit wird typischerweise bereitgestellt, um die Gesamtzahl von Benutzern des Videoservers bei einer gegebenen Zeit zu begrenzen und eine Überlast des Netzwerks oder des Festplattenspeichersystems zu verhindern. Solch eine Überlastung könnte veranlassen, daß Filme zu langsam ablaufen oder auf eine ruckelnde Art und Weise vorwärts- (oder rückwärts-) laufen. Die Zeit, zu der ein bestimmter Film abgespielt werden sollte, und die Ordnung, mit der die Filme abgespielt werden, wird durch eine Spielliste bzw. Playlist gesteuert. Eine Playlist ist eine zusammenhängende Liste von Multimedia-Titeln, die in einer bestimmten Position auf der Zeitachse der Playlist plaziert sind. Jeder Titel hat eine spezifizierte Dauer. Sobald ein Befehl gegeben wird, die Playlist abzuspielen, wird das Abspielen entlang der Zeitachse der Playlist in gleichem Maße wie die Tageszeit ablaufen.
  • Es ist häufig nicht praktikabel, einen gesamten Film in einer einzelnen Festplatteneinheit zu speichern, da eine typische Festplatteneinheit nur Daten mit einer Geschwindigkeit von ein paar MB/Sekunde ausgeben kann. Um dieses Speicherproblem zu umgehen, ist es üblich, Blöcke des Films (z. B. vielleicht 0,5-Sekunden-Sequenzen) über mehrere Festplatteneinheiten verteilt abzulegen. Diese Blöcke werden dann ausgelesen oder zu einem Pufferspeicher übertragen und über das Netzwerk kommuniziert. Wenn diese Blöcke über das Netzwerk gesendet werden, werden neue Blöcke von dem Film von der Festplatteneinheit ausgelesen. An dem Empfangsende werden die Blöcke decodiert für die Benutzerbetrachtung auf einem Videomonitor, einem Fernsehempfänger oder dergleichen.
  • Die Verwendung von Festplattenlaufwerken, um Informationen magnetisch zu speichern, ist bekannt. Ein einzelnes Festplattenlaufwerk beinhaltet typischerweise verschiedene sich drehende Scheiben oder Platten, auf deren Oberflächen Information von einem Lese-/Schreibkopf geschrie ben oder gelesen werden kann. Innerhalb eines Festplattenlaufwerks drehen sich die Platten zusammen und alle Lese-/Schreibköpfe werden typischerweise gemeinsam bewegt, um auf unterschiedliche Plattenpositionen zuzugreifen. Eine Platte wird typischerweise in konzentrischen Spuren, die gemeinsam von Platte-zu-Platte eine Familie von konzentrischen Zylindern definieren, und in Sektoren formatiert, die einen Abschnitt einer Spur bzw. eines Tracks darstellen. Ein Controller, der mit der Festplatteneinheit verknüpft ist, bestimmt, auf welchen Zylinder, Lese-/Schreibkopf und auf welchen Sektor für das Lesen oder Schreiben zugegriffen wird.
  • Die Platten können ebenso als in Zonen aufgeteilt angesehen werden. Da sie physikalisch größer sind, enthalten Spuren bzw. Tracks in Zonen an dem äußeren Plattendurchmesser mehr Sektoren als Spuren bzw. Tracks in Zonen, die näher an der Drehachse der Platte angeordnet sind. Daher ist unter der Annahme, daß die Platten mit einer konstanten Geschwindigkeit w rotieren, die verfügbare Datenbandbreite an den äußersten Zonen größer als die verfügbare Datenbandbreite an den innersten Zonen. Selbst mit den modernsten Festplattenlaufwerken kann es eine 2 : 1-Variation zwischen dem schlechtesten Fall und dem Durchschnittsfall der Plattenübertragungsbandbreite geben aufgrund der Sektor-/Trackvariationen zwischen den äußeren und inneren Zonen.
  • Unglücklicherweise ist das Bereitstellen eines Videobitstroms von dem Ausgang eines Videoservers zu der exakten Zeit, die durch die Playlist spezifiziert wird, schwierig aufgrund der Verzögerungen, die Multimediaplayern inhärent sind, was eine Eigenschaft der Plattenzugriffszeiten und anderer Verzögerungen ist, die mit dem Multimediaserver verknüpft sind. Die Verzögerung zwischen der Zeit; zu der das Abspielen eines bestimmten Titels der Playlist befohlen wird, und der tatsächlichen Initialisierung des Abspielens wird als "Zugriffsverzögerung" bzw. "admission delay" bezeichnet.
  • Die Länge einer Zugriffsverzögerung ist im allgemeinen nicht von vorhersagbarer Dauer. Die Dauer irgendeiner bestimmten Zugriffsverzögerung ist eine Eigenschaft der gegenwärtigen Belastung auf dem Multimediaserver und der spezifischen Taktbeziehung der Anfrage, um das Abspielen zu initiieren, in Bezug auf die Position des ersten angefragten Datenblockes innerhalb der Festplattenanordnung, die den Multimediastrom enthält. Im Ergebnis wird die exakte Zeit, mit der der Videobitstrom von dem Multimediaserver bereitgestellt wird, in Bezug auf die Echtzeit verschoben. Wenn der Tag fortschreitet, kann sich die Verschiebung zwischen der Playlist und der Echtzeit erhöhen aufgrund der Addition der Zugriffsverzögerung der Filme innerhalb der Playlist.
  • Daher wären ein System und ein Verfahren wünschenswert, um die Präsentation der Medienstromplaylist mit Echtzeit zu synchronisieren und einem Systemoperator zu erlauben, die Art und Weise, in der den Zugriffsverzögerungen Rechnung getragen wird, flexibel zu spezifizieren.
  • Die oben ausgeführten Probleme werden zum großen Teil gelöst durch ein System und ein Verfahren für die Synchronisierung der Darstellung von Medienströmen, z. B. Filmen, mit Echtzeit in Übereinstimmung mit der vorliegenden Erfindung. Besondere und bevorzugte Aspekte der Erfindung werden in den begleitenden unabhängigen Ansprüchen ausgeführt.
  • In einer Ausführungsform beinhaltet ein Multimediaserversystem ein Plattenanordnungsuntersystem einschließlich einer Mehrzahl von Multimediadateien, einen Mediadateisystemmanager für die Verwaltung der Speicherung der Mehrzahl von Multimediadateien in dem Plattenanordnungsuntersystem und eine Playlist, die eine Liste von Einträgen (Identifizierern) beinhaltet, die einer bestimmten Untergruppe der Multimediadateien entspricht, die zu bestimmten Zeiten abgespielt werden sollen. Das Multimediaserversystem beinhaltet mit Vorteil Synchronisationsparameter, die mit jedem der Einträge, die durch die Playlist spezifiziert werden, verknüpft sind. Die Synchronisationsparameter, die von einem Systemoperator oder einem Endbenutzer programmiert werden, spezifizieren die Art und Weise, in der die Multimediadateien, die jedem Eintrag in der Playlist entsprechen, abgeschnitten werden sollten, um Zugriffsverzögerungen zu kompensieren.
  • Eine Zugriffsverzögerungssynchronisationseinheit empfängt die Synchronisationsparameter und schneidet die Multimediadateien ab, wie von den Synchronisationsparametern spezifiziert wird. In einer Implementierung wird ein erster Synchronisationsparameter verwendet, um zu spezifizieren, daß die gegenwärtige Multimediadatei zu dem Zeitpunkt für das Abspielen der nächsten Multimediadatei abgeschnitten werden soll. Ein zweiter Synchronisationsparameter wird bereitgestellt, um zu spezifizieren, daß zu Beginn der nächsten Multimediadatei bis hin zu einer gegebenen Zeitmenge Zeit geopfert werden sollte, um der Zugriffsverzögerung der gegenwärtigen Multimediadatei Rechnung zu tragen. Auf diese Weise wird der Beginn der nächsten Multimediadatei abgeschnitten.
  • Ein dritter Synchronisationsparameter wird bereitgestellt, um eine Zeitmenge zu spezifizieren, bis zu der die gegenwärtige Multimediadatei (an ihrem Ende) abgeschnitten werden kann, um jeglicher Zugriffsverzögerung Rechnung zu tragen. Mit anderen Worten kann durch das Gestatten, daß die tatsächliche Abspieldauer ("abgespielte Dauer") jeder Multimediadatei kürzer sein kann als die vorgesehene Zuweisung von Abspielzeit für die Multimediadatei, der Unterschied zwischen der geplanten und der abgespielten Dauer, d. h. die "Überschußzeit", verwendet werden, um etwaige Zugriffsverzögerungen zu absorbieren, wodurch die Probleme vermieden werden, die mit der Aufsummierung von Zugriffsverzögerungen über eine Zeitperiode verknüpft sind.
  • Im Ergebnis erlaubt das Multimediaserversystem mit Vorteil die Synchronisierung der Darstellung der Medienströme mit Echtzeit über die Zeitperiode durch Gestatten, daß ein Systemoperator jegliche Zugriffsverzögerungen flexibel abfängt.
  • Beispielhafte Ausführungsformen der Erfindung werden im folgenden lediglich beispielhaft unter Bezug auf die begleitenden Zeichnungen beschrieben, in denen:
  • 1 ein funktionales Blockdiagramm eines Multimediaserwersystems in Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung ist.
  • 2 ist ein Diagramm, das eine beispielhafte Auflistung von Multimediatiteln darstellt, die von einem User spezifiziert wurden, und beispielhafte verknüpfte Synchronisationsparameter darstellt.
  • 3 ist ein Flußdiagramm, das den Betrieb einer Zugriffsverzögerungssynchronisationseinheit darstellt.
  • 4 ist ein Diagramm, das die Synchronisation der Einträge, die durch eine Playlist spezifiziert werden, in Echtzeit darstellt.
  • Während die Erfindung verschiedenen Modifikationen und alternativen Formen zugänglich ist, sind spezifische Ausführungsformen hiervon beispielhaft in den Zeichnungen gezeigt und werden im Detail beschrieben. Es versteht sich jedoch, daß die Zeichnungen und die detaillierte Beschreibung hierzu nicht dafür vorgesehen sind, die Erfindung auf die bestimmten beschriebenen Formen zu beschränken, sondern es im Gegenteil beabsichtigt ist, alle Modifikationen, Äquivalente und Alternativen, die in den Schutzbereich der vorliegenden Erfindung fallen, abzudecken.
  • In 1 ist ein funktionales Blockdiagramm eines Multimediaserversystems gezeigt in Übereinstimmung mit einer Ausführungsform der vorliegenden Erfindung. Wie unten mehr im Detail beschrieben wird, können verschiedene der funktionellen Blöcke, die in 1 dargestellt sind, mittels Software implementiert werden.
  • Das Multimediaserversystem 10 von 1 beinhaltet ein Plattenanordnungsuntersystem 12, das ein oder mehrere magnetische Plattenlaufwerke aufweist, das Video speichert. Videodateien, die durch ein Plattenanordnungsuntersystem gespeichert werden, werden von einem Mediendateisystemmanager 14 verwaltet. Genauer gesagt erlaubt es der Mediendateisystemmanager 14, daß spezifizierte Dateien von dem Multimediaserversystem 10 ausgegeben werden durch das Planen von Zugriffen auf das Plattenanordnungsuntersystem 12 über ein Steuerprogramm 16 und ein Plattenlaufwerk 18. Ein Multimediabitstrom wird von dem Multimediaserveruntersystem 10 über eine Bitpumpeinheit 20 einschließlich Pufferspeichern 22, die zeitweilig Daten speichern, auf die von dem Plattenanordnungsuntersystem 12 in Antwort auf Befehle von dem Plattenlaufwerk 18 zugegriffen wird, ausgegeben. Der Ausgang der Bitpumpe 20 ist ein Bitstrom aus codierter Videoinformation (und Audio, falls vorhanden). Beispielsweise kann der Ausgang der Bitpumpe 20 in einem MPEG-(Motion Pictures Experts Group) Format codiert sein.
  • Neue Videodateien können innerhalb des Plattenanordnungsuntersystems 12 über eine Dateieingangsschnittstelle 24 abgelegt werden. Die Speicherung von Dateien innerhalb des Plattenanordnungssubsystems 12 wird durch den Mediendateisystemmanager 14 verwaltet.
  • Es sei bemerkt, daß die Dateieingabeschnittstelle 24 mit dem Mediendateisystemmanager 14 über Schnittstellen zwischen Betriebssystem und Anwendungs- und Systemprogrammen (API) kommunizieren kann. Es sei weiterhin bemerkt, daß der Mediendateisystemmanager 14, das Planungsprogramm 16, das Plattenlaufwerk 18, die Dateieingabeschnittstelle 24 und/oder die Playlist 26 entweder teilweise oder vollständig mittels Software implementiert sein können, und daß ein oder mehrere Mikroprozessoren als Teil der Hardware, die das Multimediaserveruntersystem 10 bildet, eingesetzt werden können, um die Funktionalität dieser Blöcke zu steuern.
  • Es sei weiterhin bemerkt, daß die oben beschriebenen Merkmale des Multimediaserveruntersystems 10 üblich sind und daß eine Vielzahl von anderen spezifischen Implementierungen eines Multimediaserversystems ebenso möglich ist, die das System und das Verfahren für die Synchronisierung der Darstellung der Medienstromplaylisten mit Echtzeit in Übereinstimmung mit der folgenden Beschreibung und den angefügten Ansprüchen einsetzen.
  • Das funktionale Blockdiagramm des Multimediaserversystems 10, wie es in 1 dargestellt ist, stellt ebenso Synchronisationsparameter 30 dar, die mit einer Playlist 26 verknüpft sind. Die Playlist 26 ist ebenso mit einer Zugriffsverzögerungssynchronisierungseinheit 32 verbunden gezeigt. Genauer gesagt erlauben die Synchronisationsparameter 30 es einem Benutzer, die Art und Weise zu spezifizieren, in der das Multimediaserversystem 10 den Ausgang der Multimedien, wie es durch die Playlist 26 spezifiziert wird, in Echtzeit synchronisiert.
  • Schließlich zeigt 1 eine Zugriffsverzögerungssynchronisationseinheit 32, die die Synchronisationsparameter 30 und die Playlist 26 empfängt und die Synchronisation des Videoausgangs von dem Multimediaserversystem 10 entsprechend steuert. Die Playlist 26 beinhaltet Befehle, die spezifizieren, welche Dateien gespielt werden und zu welcher Zeit die spezifizierten Dateien abgespielt werden sollen. Die Zugriffsverzögerungssynchronisationseinheit 32 verwendet diese Information zusammen mit der gegenwärtigen Tageszeit ("Echtzeit"), wie sie durch die Echtzeituhr 28 angezeigt wird, um Ausgangsanforderungen an das Plattenordungssubsystem 12 über das Planungsprogramm 16 bereitzustellen.
  • Die spezifische Art und Weise, in der die Zugriffsverzögerungssynchronisationseinheit 32 die Playlist 26 synchronisiert, hängt von den Synchronisationsparametern 30 ab. Details betreffend weitere Aspekte der Synchronisationsparameter 30 und der Zugriffsverzögerungssynchronisationseinheit 32 werden unten in Verbindung mit der Beschreibung der 2 bis 4 bereitgestellt. Es sei bemerkt, daß ähnlich zu verschiedenen anderen funktionalen Blöcken von 1 die Synchronisationsparameter 30 und die Zugriffsverzögerungssynchronisationseinheit 32 teilweise oder vollständig mittels Software implementiert sein können.
  • 2 stellt eine Playlist 26 dar einschließlich einer beispielhaften Auflistung von Multimediatiteln mit Eintragsdauern, wie von dem Benutzer geplant worden ist, wie sie von dem Multimediaserversystem 10 in der spezifizierten Abfolge ausgegeben werden sollen. Verknüpft mit jedem aufgelisteten Film ist eine Echtzeitgröße (Uhrzeit), die für das Abspielen jedes Films zugewiesen ist, die "Eintragsdauer" genannt wird.
  • 2 illustriert zusätzlich die Synchronisationsparameter 30, die einen Satz von Synchronisationsparametern beinhalten, die mit jedem Film auf der Playlist 26 verknüpft sind. Jeder Satz von Parametern beinhaltet einen Parameter "Ist Zeitverriegelt?", einen Parameter "Zugriffsdauer" und einen Parameter "Abspieldauer". Wie vorher festgestellt wurde, werden die Synchronisationsparameter 30 durch die Synchronisationseinheit 32 verwendet, um die gegebene Eintragsdauer für jeden Film beizubehalten, unter der Erwartung, daß Störungen der Abspielzeit durch Zugriffsverzögerungen eingefügt werden.
  • 3 ist ein Flußdiagramm, das den Berieb der Zugriffsverzögerungssynchronisationseinheit 32 darstellt. In der folgenden Beschreibung bezieht sich abhängig vom Kontext ein "Eintrag" entweder auf einen Identifizieren eines Medienstroms oder auf den Inhalt des Medienstroms. Das zeitsynchronisierte Abspielen der Playlist 26 wird initiiert durch Ausgeben eines Befehls an die Synchronisationseinheit 32, die die Einheit 32 anweist, das Abspielen der Playlist 26 zu einem bestimmten Punkt in Echtzeit durch Bezugnahme auf die Echtzeituhr 28 zu beginnen. Angenommen, daß beispielsweise der Synchronisationseinheit 32 befohlen wird, die Playlist 26 um 1:00 h (Echtzeit) zu beginnen. Bei gegebenen Eintragsdauern, die in 2 gezeigt sind, sollte Idealerweise der Film #1 bei 1:00 h beginnen, der Film #2 sollte eine Stunde und 30 Minuten danach, d. h. um 2:30 h beginnen, der Film #3 sollte eine Stunde und 30 Minuten nach dem Beginn des Films #2, d.h. um 4:00 h beginnen usw.
  • Die Synchronisationseinheit 32 stellt sicher, daß die Eintragsdauern, die in der Playlist 26 spezifiziert sind, in der Synchronisation mit dem Echtzeitplan, wie er von der Playlist 26 diktiert wird, beibehalten wird. Im Grunde genommen gewinnt, wann immer eine Zugriffsverzögerung, die von Eintragsdauerabweichungen von dem Echtzeitplan induziert wird, von der Synchronisationseinheit 32 erfaßt wird, die Einheit 32 die Synchronisation mit dem Echtzeitplan, wie er von den Synchronisationsparametern 30 geleitet wird, wieder.
  • Für jeden Eintrag in der Playlist 26 (Schritt 310) werden somit die folgenden beispielhaften Schritte durchgeführt. Während auf jeden Eintrag von der Playlist 26 innerhalb des Plattenanordnungsuntersystems 12 über das Planungsprogramm 16 und das Plattenlaufwerk 18 zugegriffen wird, erfaßt die Zugriffsverzögerungssynchronisationseinheit 32 die verknüpften Synchronisationsparameter für diesen Eintrag.
  • Wenn der Anzeiger "Ist Zeitverriegelt" WAHR ist für einen Eintrag auf der Playlist 26 (Schritt 320), wird der Eintrag abgespielt, bis er zuende ist oder bis es Zeit ist, den nächsten Eintrag zu starten, wenn der Beginn des nächsten Eintrags vor dem Ende des gegenwärtigen Eintrags geplant ist (Schritt 330). Mit anderen Worten kann die Zeitsynchronisierung wiedergewonnen werden durch Abschneiden bzw. Beenden des Abspielens des gegenwärtigen Eintrags zu der Tageszeit, zu der der nächste Eintrag initiiert werden sollte, ungeachtet der Tatsache, daß Zugriffsverzögerungen die Initiierung des Abspielens des gegenwärtigen Eintrags verzögert haben können und daß somit der gegenwärtige Titel nicht vollständig abgespielt sein kann. Wenn der gegenwärtige Eintrag vor der geplanten Startzeit des nächsten Eintrags zuende geht, dann wartet die Synchronisationseinheit 32 auf die geplante Startzeit des nächsten Eintrags (Schritte 340, 350).
  • Umgekehrt beginnt, wenn "Ist Zeitverriegelt" FALSCH ist (Schritt 320), die Synchronisationseinheit 32 mit dem Abspielen des gegenwärtigen Eintrags während der Abspieldauer (Schritt 360). Wenn bei Vollendung der Abspielung des gegenwärtigen Eintrags die Echtzeit größer als die geplante Startzeit des nächsten Eintrags ist und der nächste Eintrag eine "Einblenddauer" von nicht Null hat, dann wird der Startzeit des nächsten Eintrags erlaubt, zu gleiten, d. h. fortzuschreiten, und zwar um die Zeit, die geringer ist, entweder die "Einblendzeit" des nächsten Eintrags oder der Differenz zwischen der Echtzeit und der Startzeit des nächsten Eintrags (Schritte 390, 395). Im Grunde genommen wird bis zu der "Einblendzeit" von dem Beginn des nächsten Eintrags "geopfert" (d. h. abgeschnitten), um es dem gegenwärtigen Eintrag zu erlauben, bis zum Schluß zu laufen. Der nächste Eintrag wird das Abspielen bei einer Position beginnen, die äquivalent zu der Zugriffszeit des gegenwärtigen Eintrags ist.
  • Der Parameter "Abspieldauer" erlaubt es dem Systemoperator, eine alternative Abspielzeit zu spezifizieren, die geringer als die volle Dauer des Eintrags in der Playlist 26 ist. Der Zweck des Einschließens des Parameters "Abspieldauer" ist es, zu ermöglichen, daß mehr Zeit zugewiesen wird, als tatsächlich benötigt wird für das Abspielen eines Eintrags. Diese zusätzliche Zeit kann dann verwendet werden, um jegliche Zugriffsverzögerungen aufzufangen. Dieser Parameter kann in Verbindung mit den anderen beiden Parametern spezifiziert werden.
  • Wenn deshalb keiner der Parameter spezifiziert wird oder der "Einblend"- oder der "Abspieldauer"-Parameterwert nicht ausreichend wäre, um die Zugriffsverzögerung vollständig zu korrigieren, dann wird die Playlist 26 in Bezug auf die Tageszeit durch die gesammelten Zugriffsverzögerungen "rutschen" bzw. versetzt, wenn jeder Eintrag in der Playlist 26 initiiert wird. Das System 10 erlaubt es ferner, daß diese aufsummierten Verzögerungen durch die Synchronisationsparameter, die mit einem späteren Eintrag in der Playlist 26 verknüpft sind, angesprochen werden.
  • 4 ist ein Diagramm, das die Synchronisation der Einträge, die durch die Playlist 26 spezifiziert werden, und der Echtzeit darstellt. Der Film #1 ist derart spezifiziert, daß er um ein Uhr (1:00) startet. Aufgrund einer Zugriffsverzögerung 412 wird jedoch der tatsächliche Start des Films #1 verzögert und somit wird sich das erwartete Ende des Films #1 über die Zeitperiode, wie sie durch die Eintragsdauer zugewiesen wurde, erstrecken.
  • Da der Film #1 sein "Ist Zeitverriegelt" gesetzt hat, wird ein Endabschnitt 418 des Films #1 bei 2:30 abgeschnitten, was die geplante Startzeit für Film #2 ist. Folglich wird der Synchronisationseinheit 32 befohlen, das Abspielen des Films #2 zu beginnen, nachdem der Film #1 abgeschnitten wurde. Der Film #2 ist jedoch ebenso einer Zugriffsverzögerung 422 ausgesetzt. In diesem Beispiel kann, da die spezifizierte Abspieldauer des Films #2 geringer als die volle Eintragsdauer des Films #2 ist, jegliche geplante Versetzung, die durch die Zugriffsverzögerung 422 veranlaßt wird, durch die Differenz reduziert werden.
  • Gemäß der Playlist 26 ist es geplant, daß der Film #3 beginnt, nachdem der Film #2 vollständig abgespielt ist. Die tatsächliche Startzeit kann jedoch früher oder später als die geplante Startzeit sein, abhängig davon, ob die Differenz zwischen der Abspieldauer und der Eintragsdauer des Films #3 größer oder geringer als die Zugriffsverzögerung 432 ist. Obgleich der Film #3 unmittelbar mit Vollendung des Films #2 initiiert wird, ist der Film #3 nicht zeitverriegelt, hat eine Einblenddauer von Null und hat eine Abspieldauer, die identisch mit ihrer Eintragsdauer ist. Im Grunde genommen wird jede Planabweichung am Ende des Films #2 mit der Zugriffsverzögerung 432 des Films #3 addiert, was zu einer planmäßigen Verschiebung 431 führt, d. h. keine explizite Resynchronisierung tritt auf.
  • Mit Vollendung des Films #3 wird der Film #4 initiiert. Man bemerke, daß ein planmäßiges Versetzen 441 bereits stattgefunden hat. Der Film #4 spezifiziert eine Einblenddauer. Somit wird jeder aufsummierte Sprung hinter dem Rutschen bzw. Versetzen 441 bis zu dem Wert der Einblenddauer an diesem Zeitpunkt kompensiert durch Initiieren der tatsächlichen Abspielung des Films #4 mit einem Versatz in Bezug auf den Beginn, wie er durch ein übersprungenes Segment 444 definiert wird.
  • Es sei bemerkt, daß Kombinationen der Synchronisationsparameter 30, wie sie oben beschrieben wurden, für einen bestimmten Eintrag spezifiziert werden können. Auf diese Art und Weise kann ein bestimmter Eintrag sowohl an seinem Beginn als auch an seinem Ende abgeschnitten werden abhängig von dem (den) spezifizierten Parameter(n).
  • Das System und das Verfahren, wie es oben beschrieben wurde, für die Synchronisierung von durch eine Playlist spezifizierten Einträgen mit Echtzeit verhindert mit Vorteil die Aufsummierung von Zugriffsverzögerungen, wenn Playlisteinträge abgespielt werden. Das System und das Verfahren erlauben es dem Systemoperator weiterhin, flexibel unterschiedliche Abschneidetechniken für unterschiedliche Einträge zuzuweisen abhängig von der Wichtigkeit des Beginns und/oder des Endes eines bestimmten Eintrags.
  • Serversysteme und Untersysteme, die Merkmale der vorliegenden Erfindung beinhalten, können vollständig der Hardware oder in einer Kombination aus Hardware und Software (d.h. Programmodule, die im Speicher abgelegt sind) implementiert werden. Beispielsweise können die Zugriffsverzögerungssynchronisationseinheit und die Playlist vollständig mit Software implementiert werden. Geeignete Medien für die Serversoftware beinhalten beispielsweise magnetische Medien (z. B. Platten und Bänder), optische Medien (z. B. CD-ROMs), EPROM, DRAMs und SRAMs. Zusätzlich kann die Software entweder vorher in das Serversystem geladen werden oder elektronisch von dem Benutzer geladen werden mit oder ohne die Verwendung von flüchtigen Speichermedien, z. B. durch das Herunterladen von Programmodulen auf den Server des Benutzers von FTP-/Telnet- oder HTML-Sites aus dem Internet bzw. dem World-Wide Web.
  • Somit können Programmodule, die die Merkmale der Erfindung beinhalten, bequem beispielsweise durch CD-ROM oder durch Zugriff auf eine Website verteilt werden. Im letzteren Fall werden die Module typischerweise zeitweilig von dem permanenten Speicher in das RAM und/oder die Ausgangspufferspeicher des Webservers geladen, d. h. dies sind die Medien, die dazu dienen, die Programmodule der Erfindung zu speichern und zu verteilen, wann immer eine Herunterladungsanfrage erfolgt. Nach dem Laden in den RAM-Speicher überträgt der Webserver die Programmodule zu dem Hostcomputer des Benutzers.
  • Zahlreiche Variationen und Modifikationen sind für den Fachmann offensichtlich, sobald er die obige Beschreibung vollständig verstanden hat. Es ist beabsichtigt, daß die folgenden Ansprüche derart interpretiert werden, daß sie alle solche Variationen und Modifikationen umfassen. Es sei bemerkt, daß, obgleich spezifische Kombinationen von Merkmalen in den abhängigen Ansprüchen ausgeführt sind, Kombinationen von Merkmalen von den abhängigen Ansprüchen und denjenigen der unabhängigen Ansprüche, die sich von den spezifisch durch die Anspruchsabhängigkeiten numerierten unterscheiden, durchgeführt werden können, sofern dies gewünscht wird.

Claims (21)

  1. Verfahren für die Synchronisierung von Medienströmen, die von einem Multimedia-Serversystem abgespielt werden entsprechend einer Spielliste, die mit dem Multimedia-Serversystem verknüpft ist, wobei das Verfahren die Schritte aufweist: Speichern einer Liste von Spiellisteneinträgen in der Spielliste, wobei die Spiellisteneinträge einem Satz des Medienstromes entsprechen, Spezifizieren von zumindest einem Synchronisationsparameter, der mit der Liste von Spiellisteneinträgen zu verknüpfen ist, und Beenden eines gegenwärtigen Medienstroms des Satzes von Medienströmen entsprechend dem zumindest einen Synchronisationsparameter und Veranlassen, daß der Multimedia-Server den gegenwärtigen (beendeten) Medienstrom ausgibt.
  2. Verfahren nach Anspruch 1, wobei der Beendigungsschritt den gegenwärtigen Medienstrom zu einer Tageszeit beendet, die für das Abspielen eines nächsten Medienstroms entsprechend eines nächsten Spiellisteneintrages in der Spielliste vorgesehen ist.
  3. Verfahren nach Anspruch 2, das weiterhin aufweist den Schritt des Zugreifens auf einen Echtzeittakt, um die Tageszeit zu bestimmen.
  4. Verfahren nach Anspruch 1, das weiterhin den Schritt aufweist des Spezifizierens einer gegebenen Zeit, bis zu der ein nächster Medienstrom entsprechend einem nächsten Spiellisteneintrag in der Spielliste beendet wird, um eine Zuführ- bzw. Einlaßverzögerung des gegenwärtigen Medienstroms zu kompensieren.
  5. Verfahren nach Anspruch 1, wobei der spezifizierende Schritt ein Zeitintervall beginnend ab dem Start des gegenwärtigen Medienstroms spezifiziert, nachdem der gegenwärtige Medienstrom beendet wird.
  6. Verfahren nach Anspruch 5, wobei der Beendigungsschritt das Ende des gegenwärtigen Medienstroms an einem Punkt beendet, der zu dem zumindest einen Synchronisationsparameter korrespondiert.
  7. Multimedia-Serversystem, das aufweist: ein Speichersystem, das derart konfiguriert ist, daß es eine Mehrzahl von Medienströmen speichert, einen Mediensystemmanager, der derart konfiguriert ist, daß er den Zugriff auf die Mehrzahl von Medienströmen von der Speichereinheit steuert, eine Spielliste, die mit dem Mediensystemmanager verknüpft ist und konfiguriert ist, so daß sie eine Liste von Spiellisteneinträgen speichert, die einem Satz der Mehrzahl von bei bestimmten Zeiten abzuspielenden Medienströmen entspricht, Synchronisierungsparameter, die mit den Spiellisteneinträgen verknüpft sind, wobei die Synchronisationsparameter eine Art und Weise spezifizieren, in der zumindest einer des Satzes von Medienströmen beendet wird, um die Eintrittsverzögerungen) des Multimediaserversystems zu kompensieren und eine Eintrittsverzögerungssynchronisationseinheit, die derart verbunden ist, daß sie die Synchronisationsparameterempfängt und den zumindest einen Medienstrom gemäß den Synchronisationsparametern beendet.
  8. Multimedia-Serversystem nach Anspruch 7, das weiterhin einen Echtzeittakt aufweist, der mit der Einlaßverzögerungssynchronisationseinheit verbunden ist, für das zur Verfügung stellen eines Wertes, der die Echtzeit anzeigt.
  9. Multimedia-Serversystem nach Anspruch 7, wobei die Synchronisationsparameter einen ersten Parameter für das Spezifizieren, das ein gegenwärtiger Medienstrom des Satzes von Medienströmen zu einer Tageszeit für das Abspielen eines nächsten Medienstroms, der einem nächsten Spiellisteneintrag in der Spielliste entspricht, beendet wird, beinhalten.
  10. Multimedia-Serversystem nach Anspruch 9, wobei die Synchronisationsparameter weiterhin einen zweiten Parameter für das Spezifizieren einer Zeit, an der der nächste Medienstrom beendet wird, um einer Einlaßverzögerung des gegenwärtigen Medienstromes Rechnung zu tragen, beinhalten.
  11. Multimedia-Serversystem nach Anspruch 10, wobei die Synchronisationsparameter weiterhin einen dritten Parameter beinhalten für das Spezifizieren einer Zeitmenge in dem gegenwärtigen Medienstrom, innerhalb derer der gegenwärtige Medienstrom das Abspielen beenden sollte.
  12. Controller für das Synchronisieren einer Mehrzahl von Medienströmen, die gemäß einer Spielliste, die mit einem Multimedia-Senrersystem verknüpft ist, abgespielt werden, wobei das Serversystem ein Speichersystem beinhaltet, das derart konfiguriert ist, daß es die Mehrzahl von Medienströmen speichert, und ein Mediensystemmanager, der derart konfiguriert ist, daß er den Zugriff auf die Mehrzahl von Medienströmen von der Speichereinheit steuert, beinhaltet, wobei die Spielliste eine Liste von Spiellisteneinträgen beinhaltet, die ei nem Satz der Mehrzahl von Multimediaströmen entsprechen, die bei bestimmten Zeiten abgespielt werden sollen, wobei der Controller aufweist: eine Einlaßverzögerungssynchronisationseinheit, die derart konfiguriert ist, daß sie die Synchronisationsparameter empfängt, die mit den Spiellisteneinträgen verknüpft sind, und derart konfiguriert ist, daß sie zumindest einen aus dem Satz von Medienströmen gemäß den Synchronisationsparametern beendet, die eine Art und Weise spezifizieren, in der zumindest ein Medienstrom beendet wird, um die Eintrittsverzögerungen) des Multimedia-Serversystems zu kompensieren.
  13. Controller nach Anspruch 12, wobei das Multimedia-Serversystem weiterhin eine Echtzeituhr beinhaltet, die mit der Einlaßverzögerungssynchronisationseinheit verbunden ist für das zur Verfügung stellen eines Wertes, der die Echtzeit anzeigt.
  14. Controller nach Anspruch 12, wobei die Synchronisationsparameter einen ersten Parameter beinhalten für das Spezifizieren, daß ein gegenwärtiger Medienstrom des Satzes von Medienströmen zu einer Tageszeit beendet wird, die für das Abspielen eines nächsten Medienstroms entsprechend eines nächsten Spiellisteneintrags in der Spielliste vorgesehen ist.
  15. Controller nach Anspruch 14, wobei die Synchronisationsparameter weiterhin einen zweiten Parameter für das Spezifizieren einer Zeit beinhalten, bei der der nächste Medienstrom abgeschnitten wird, um einer Einlaßverzögerung des gegenwärtigen Medienstroms Rechnung zu tragen.
  16. Controller nach Anspruch 15, wobei die Synchronisationsparameter weiterhin einen dritten Parameter beinhalten für das Spezifizieren einer Zeitmenge in dem gegenwärtigen Medienstrom, innerhalb der der gegenwärtige Medienstrom das Abspielen beenden sollte.
  17. Computerlesbares Medium mit einem hierauf gespeicherten computerlesbaren Code für das Synchronisieren einer Mehrzahl von Medienströmen, die gemäß einer Spielliste, die mit einem Multimedia-Serversystem verknüpft ist, abgespielt werden, mit einem Speichersystem, das derart konfiguriert ist, daß es die Mehrzahl von Medienströmen speichert, und einem Mediensystemmanager, der derart konfiguriert ist, daß er den Zugriff auf die Mehrzahl von Medienströmen von der Speichereinheit steuert, wobei die Spielliste eine Liste von Spiellisteneinträgen beinhaltet, die einem Satz der Mehrzahl von Multimedienströmen entsprechen, die bei bestimmten Zeiten abgespielt werden sollen, wobei das computerlesbare Medium aufweist: ein Modul für die computerlesbare Codierung, das derart konfiguriert ist, daß es die mit den Spiellisteneinträgen verknüpften Synchronisationsparameter empfängt und derart konfiguriert ist, daß es zumindest einen Medienstrom des Satzes von Medienströmen gemäß den Synchronisationsparametern beendet, der eine Art und Weise spezifiziert, in der der zumindest eine Medienstrom beendet wird, um Eintrittsverzögerungen) des Multimedia-Serversystems zu kompensieren.
  18. Computerlesbares Medium nach Anspruch 17, wobei das Multimedia-Serversystem weiterhin einen Echtzeittakt beinhaltet, der mit der Eintrittsverzögerungssynchronisationseinheit verbunden ist für das zur Verfügung stellen eines Wertes, der Echtzeit anzeigt.
  19. Computerlesbares Medium nach Anspruch 17, wobei die Synchronisationsparameter einen ersten Parameter für das Spezifizieren, daß ein gegenwärtiger Medienstrom des Satzes von Medienströmen zu einer Tageszeit beendet wird, die für das Abspielen eines nächsten Medienstroms entsprechend eines nächsten Spiellisteneintrags in der Spielliste vorgesehen ist, beinhaltet.
  20. Computerlesbares Medium nach Anspruch 19, wobei die Synchronisationsparameter weiterhin einen zweiten Parameter beinhalten für das Spezifizieren einer Zeit, bei der der nächste Medienstrom beendet wird, um einer Eintrittsverzögerung des gegenwärtigen Medienstroms Rechnung zu tragen.
  21. Computerlesbares Medium nach Anspruch 20, wobei die Synchronisationsparameter weiterhin einen dritten Parameter für das Spezifizieren einer Zeitmenge in dem gegenwärtigen Medienstrom beinhalten, innerhalb der der gegenwärtige Medienstrom das Abspielen beenden sollte.
DE69724357T 1996-06-24 1997-06-12 System und Verfahren zur Synchronisierung von Medienstrom-Spiellisten in Echtzeit Expired - Lifetime DE69724357T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US669018 1996-06-24
US08/669,018 US6064379A (en) 1996-06-24 1996-06-24 System and method for synchronizing presentation of media stream playlists with real time

Publications (2)

Publication Number Publication Date
DE69724357D1 DE69724357D1 (de) 2003-10-02
DE69724357T2 true DE69724357T2 (de) 2004-06-24

Family

ID=24684690

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69724357T Expired - Lifetime DE69724357T2 (de) 1996-06-24 1997-06-12 System und Verfahren zur Synchronisierung von Medienstrom-Spiellisten in Echtzeit

Country Status (4)

Country Link
US (1) US6064379A (de)
EP (1) EP0817489B1 (de)
JP (1) JPH10117334A (de)
DE (1) DE69724357T2 (de)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108637A (en) * 1996-09-03 2000-08-22 Nielsen Media Research, Inc. Content display monitor
US6199076B1 (en) * 1996-10-02 2001-03-06 James Logan Audio program player including a dynamic program selection controller
US6243725B1 (en) * 1997-05-21 2001-06-05 Premier International, Ltd. List building system
US7240094B2 (en) * 1997-07-03 2007-07-03 Centra Software Inc. Method and system for synchronizing and serving multimedia in a distributed network
US20020095613A1 (en) * 1997-07-25 2002-07-18 Shinya Matsuoka Synchronizing motion and time-based data for transfer between a server and a client
US6516356B1 (en) * 1997-09-30 2003-02-04 International Business Machines Corporation Application interface to a media server and a method of implementing the same
EP0974110A2 (de) * 1997-10-30 2000-01-26 Koninklijke Philips Electronics N.V. Verfahren zum kodieren einer präsentation
US20020002039A1 (en) 1998-06-12 2002-01-03 Safi Qureshey Network-enabled audio device
US6976208B1 (en) * 1998-11-03 2005-12-13 International Business Machines Corporation Progressive adaptive time stamp resolution in multimedia authoring
US6748421B1 (en) * 1998-12-23 2004-06-08 Canon Kabushiki Kaisha Method and system for conveying video messages
US6434621B1 (en) * 1999-03-31 2002-08-13 Hannaway & Associates Apparatus and method of using the same for internet and intranet broadcast channel creation and management
US7281199B1 (en) 1999-04-14 2007-10-09 Verizon Corporate Services Group Inc. Methods and systems for selection of multimedia presentations
AU4855300A (en) * 1999-05-26 2000-12-18 Gte Laboratories Incorporated Synchronized spatial-temporal browsing of images for selection of indexed temporal multimedia titles
JP4009922B2 (ja) * 1999-06-07 2007-11-21 ソニー株式会社 編集装置及び編集方法
US6845398B1 (en) * 1999-08-02 2005-01-18 Lucent Technologies Inc. Wireless multimedia player
US6519648B1 (en) * 2000-01-24 2003-02-11 Friskit, Inc. Streaming media search and continuous playback of multiple media resources located on a network
US6389467B1 (en) * 2000-01-24 2002-05-14 Friskit, Inc. Streaming media search and continuous playback system of media resources located by multiple network addresses
US7281034B1 (en) * 2000-01-24 2007-10-09 Friskit, Inc. System and method for media playback over a network using links that contain control signals and commands
JP4654407B2 (ja) 2000-04-08 2011-03-23 オラクル・アメリカ・インコーポレイテッド サーバ・ソケットで受け取ったイベントを扱うための方法および装置
EP1273151B1 (de) 2000-04-08 2004-09-29 Sun Microsystems, Inc. Wiedersynchronisierung von medien während strömung
DE60121930T2 (de) 2000-04-08 2007-07-26 Sun Microsystems, Inc., Santa Clara Methode zum streamen einer einzelnen medienspur zu mehreren clients
US7668936B1 (en) * 2000-05-26 2010-02-23 Krikorian Thomas M Continuous media playback system controlled over a distributed communication system
AU2001271980B2 (en) 2000-07-11 2004-07-29 Excalibur Ip, Llc Online playback system with community bias
GB0103130D0 (en) * 2001-02-08 2001-03-28 Newsplayer Ltd Media editing method and software thereof
US7890661B2 (en) 2001-05-16 2011-02-15 Aol Inc. Proximity synchronizing audio gateway device
US8732232B2 (en) * 2001-05-16 2014-05-20 Facebook, Inc. Proximity synchronizing audio playback device
US7962482B2 (en) * 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US7620363B2 (en) 2001-05-16 2009-11-17 Aol Llc Proximity synchronization of audio content among multiple playback and storage devices
WO2002103484A2 (en) * 2001-06-18 2002-12-27 First International Digital, Inc Enhanced encoder for synchronizing multimedia files into an audio bit stream
AU2002351232A1 (en) * 2001-12-04 2003-06-17 Yahoo!Inc. Method and system for providing listener-requested music over a network
US7096234B2 (en) 2002-03-21 2006-08-22 Microsoft Corporation Methods and systems for providing playlists
US7220910B2 (en) * 2002-03-21 2007-05-22 Microsoft Corporation Methods and systems for per persona processing media content-associated metadata
US7159000B2 (en) 2002-03-21 2007-01-02 Microsoft Corporation Methods and systems for repairing playlists
US6941324B2 (en) * 2002-03-21 2005-09-06 Microsoft Corporation Methods and systems for processing playlists
WO2004047104A1 (en) * 2002-11-20 2004-06-03 Lg Electronics Inc. Recording medium having data structure for managing reproduction of data recorded thereon and recording and reproducing methods and apparatuses
JP4165895B2 (ja) * 2003-01-20 2008-10-15 エルジー エレクトロニクス インコーポレーテッド 記録された静止映像の再生を管理するためのデータ構造を有する記録媒体、それによる記録と再生の方法及び装置
US7246356B1 (en) 2003-01-29 2007-07-17 Adobe Systems Incorporated Method and system for facilitating comunications between an interactive multimedia client and an interactive multimedia communication server
US7617278B1 (en) 2003-01-29 2009-11-10 Adobe Systems Incorporated Client controllable server-side playlists
US8145033B2 (en) * 2003-02-05 2012-03-27 Lg Electronics Inc. Recording medium having data structure for managing reproducton duration of still pictures recorded thereon and recording and reproducing methods and apparatuses
US7272658B1 (en) 2003-02-13 2007-09-18 Adobe Systems Incorporated Real-time priority-based media communication
US7287256B1 (en) 2003-03-28 2007-10-23 Adobe Systems Incorporated Shared persistent objects
US7512622B2 (en) * 2003-06-11 2009-03-31 Yahoo! Inc. Method and apparatus for organizing and playing data
US8381252B2 (en) 2003-07-15 2013-02-19 Digi International Inc. Network systems and methods to pull video
US20050015807A1 (en) * 2003-07-15 2005-01-20 Digi International Inc. Network systems and methods to push video
KR100609852B1 (ko) * 2004-05-04 2006-08-08 삼성전자주식회사 디스플레이장치
US8028038B2 (en) * 2004-05-05 2011-09-27 Dryden Enterprises, Llc Obtaining a playlist based on user profile matching
US9826046B2 (en) 2004-05-05 2017-11-21 Black Hills Media, Llc Device discovery for digital entertainment network
US8028323B2 (en) * 2004-05-05 2011-09-27 Dryden Enterprises, Llc Method and system for employing a first device to direct a networked audio device to obtain a media item
CN1926866B (zh) * 2005-02-01 2012-09-12 三菱电机株式会社 视频信息分配显示系统
US8161159B1 (en) 2005-10-31 2012-04-17 Adobe Systems Incorporated Network configuration with smart edge servers
US7945615B1 (en) 2005-10-31 2011-05-17 Adobe Systems Incorporated Distributed shared persistent objects
US7669070B2 (en) * 2007-02-14 2010-02-23 Microsoft Corporation Efficient communication power usage
US7805471B2 (en) * 2008-01-14 2010-09-28 International Business Machines, Corporation Method and apparatus to perform incremental truncates in a file system
US8725740B2 (en) 2008-03-24 2014-05-13 Napo Enterprises, Llc Active playlist having dynamic media item groups
US8051287B2 (en) 2008-10-15 2011-11-01 Adobe Systems Incorporated Imparting real-time priority-based network communications in an encrypted communication session
US9014832B2 (en) 2009-02-02 2015-04-21 Eloy Technology, Llc Augmenting media content in a media sharing group
US8412841B1 (en) 2009-08-17 2013-04-02 Adobe Systems Incorporated Media content streaming using stream message fragments
US8166191B1 (en) 2009-08-17 2012-04-24 Adobe Systems Incorporated Hint based media content streaming
US10338794B2 (en) 2015-05-15 2019-07-02 Spotify Ab Playback of media streams in dependence of a time of a day
US20170311005A1 (en) * 2016-04-26 2017-10-26 Szu-Tung Lin Method of wireless audio transmission and playback

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3002471B2 (ja) * 1988-08-19 2000-01-24 株式会社日立製作所 番組配信装置
US5420801A (en) * 1992-11-13 1995-05-30 International Business Machines Corporation System and method for synchronization of multimedia streams
WO1994027234A1 (en) * 1993-05-10 1994-11-24 Taligent, Inc. Multimedia synchronization system
US5515490A (en) * 1993-11-05 1996-05-07 Xerox Corporation Method and system for temporally formatting data presentation in time-dependent documents
US5642497A (en) * 1995-01-30 1997-06-24 Tektronix, Inc. Digital disk recorder using a port clock having parallel tracks along a timeline with each track representing an independently accessible media stream
US5608651A (en) * 1995-01-31 1997-03-04 Intel Corporation Method and apparatus for scheduling and mixing media in a multi-media environment
US5596705A (en) * 1995-03-20 1997-01-21 International Business Machines Corporation System and method for linking and presenting movies with their underlying source information
US5661665A (en) * 1996-06-26 1997-08-26 Microsoft Corporation Multi-media synchronization

Also Published As

Publication number Publication date
US6064379A (en) 2000-05-16
DE69724357D1 (de) 2003-10-02
EP0817489A3 (de) 2002-06-19
EP0817489B1 (de) 2003-08-27
JPH10117334A (ja) 1998-05-06
EP0817489A2 (de) 1998-01-07

Similar Documents

Publication Publication Date Title
DE69724357T2 (de) System und Verfahren zur Synchronisierung von Medienstrom-Spiellisten in Echtzeit
DE69635707T2 (de) Digitale haus-fernseh-einheit mit kombiniertem archiv-und hochzugangspeicher
DE602005003553T2 (de) Audio-video-inhaltssynchronisation durch playlists
DE69832831T2 (de) Vorrichtung und Verfahren zur Signalaufzeichnung/-wiedergabe
DE69837726T2 (de) Verfahren und Vorrichtung zum Realisieren einer nahtlosen Wiedergabe von kontinuierlichen Medien-Zuführungen
DE69812994T9 (de) Verfahren und vorrichtung für nicht-sequentiellen zugang zu einem laufenden videoprogramm
DE69627134T2 (de) Verfahren und anordnung zur steuerung des zugriffs auf eine aufzeichnungsplatte
DE60123396T2 (de) Diskzuordnungssystem mit umordnung einer begrenzten anzahl von anforderungen
DE69636874T2 (de) Datenaufzeichnungs- und Wiedergabegerät und Verfahren
US7823056B1 (en) Multiple-camera video recording
DE69919938T2 (de) Aufzeichnungsmedium für Audiodaten sowie Standbilder und zugehöriges Wiedergabegerät, welches die Anzeige eines Standbildes während einer Mehrzahl von vorgegebenen Zeitabschnitten während der Wiedergabe von aufgezeichneten Audiodaten zulässt
DE69627766T2 (de) Datenaufzeichnungsverfahren, -gerät und -medien sowie Datenwiedergabeverfahren und -gerät
Federighi et al. Distributed hierarchical storage manager for a video-on-demand system
DE60005704T2 (de) Gleichzeitige Aufnahme und Wiedergabe für beschreibbare DVD mit verringerter Reaktionszeit auf Benutzereingaben
US5959690A (en) Method and apparatus for transitions and other special effects in digital motion video
DE69839388T2 (de) Vorrichtung und Verfahren zum Aufzeichnen bzw. zum Aufzeichnen und Wiedergeben von Informationen auf bzw. von einem Aufzeichnungsträger sowie Aufzeichnungsträger
DE10164686B4 (de) Automatische Erkennung und Anpassung von Tempo und Phase von Musikstücken und darauf aufbauender interaktiver Musik-Abspieler
DE69824240T2 (de) Informationsdatenaufzeichnungsverfahren
DE69534861T2 (de) Netzwerkvideoanbietersystem
DE69910682T2 (de) Aufzeichnungsmedium, Datenaufzeichnungseinheit und Datenwiedergabeeinheit zum Lesen vom und Schreiben auf dem Aufzeichnungsmedium
DE60310960T2 (de) Halten von informationen in einem oder mehreren virtuellen volumenaggregaten mit mehreren virtuellen volumen
DE69633365T2 (de) Verfahren und Gerät zur Aufzeichnung von Daten auf einem Aufzeichnungsträger und Verfahren und Gerät zur Wiedergabe derselben, und ein Aufzeichnungsträger
DE69930267T2 (de) Identifikation von videospeichermedien
DE112011102139B4 (de) Bandspeichereinheit und Schreibverfahren dafür
DE69831972T2 (de) Verfahren zur bereitstellung und ermittlung von daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition