DE69534861T2 - Netzwerkvideoanbietersystem - Google Patents

Netzwerkvideoanbietersystem Download PDF

Info

Publication number
DE69534861T2
DE69534861T2 DE69534861T DE69534861T DE69534861T2 DE 69534861 T2 DE69534861 T2 DE 69534861T2 DE 69534861 T DE69534861 T DE 69534861T DE 69534861 T DE69534861 T DE 69534861T DE 69534861 T2 DE69534861 T2 DE 69534861T2
Authority
DE
Germany
Prior art keywords
data
version
video data
user
fast
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69534861T
Other languages
English (en)
Other versions
DE69534861D1 (de
Inventor
John J. Cupertino Youden
Christopher R. Menlo Park Adams
Albert W. Santa Clara Kovalick
James E. San Jose Jensen
David John Cupertino Coggins
Kari Boulder Santos
Manu Fremont Thapar
Paolo L. Los Altos Siccardo
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Application granted granted Critical
Publication of DE69534861D1 publication Critical patent/DE69534861D1/de
Publication of DE69534861T2 publication Critical patent/DE69534861T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/16Multiplexed systems, i.e. using two or more similar devices which are alternately accessed for enqueue and dequeue operations, e.g. ping-pong buffers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/2312Data placement on disk arrays
    • H04N21/2318Data placement on disk arrays using striping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • 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
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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

  • Diese Erfindung bezieht sich allgemein auf den Bereich von digitalen Computersystemen und speziell auf den Bereich von Video- und Multimediacomputerservern.
  • Die nationale Datensuperautobahn, ein wachsendes Netz an Kommunikationskanälen mit einer breiten Bandbreite, die bald die meisten Haushalte und Unternehmen in den vereinigten Staaten miteinander verbinden dürften, verspricht die denjenigen die Bereitstellung vieler Dienste, die mit demselben verbunden sind. Diese Dienste können Bankgeschäfte von zu Hause aus, einen Sofortzugriff auf große Datenbanken, wie z. B. die Kongressbibliothek, und eine Echtzeitinteraktion mit virtuellen Kommunen von Menschen mit ähnlichen Interessen umfassen. Von den Diensten, die die Superautobahn zur Verfügung stellen kann, ist einer, der ein hohes Maß an Aufmerksamkeit seitens der Unternehmen und der Medien erhalten hat, die Bereitstellung von Video auf Abruf („VOD" = video on demand).
  • VOD verspricht, dass fast jeder Film, der je gemacht wurde, einem Benutzer des Dienstes jederzeit zur Verfügung gestellt wird. Anstatt zu einem Videoverleih zu fahren und einen Film auszuwählen, sind Benutzer in der Lage, einen beliebigen Film auszuwählen, der in der Videobibliothek des Systems gespeichert ist, und sich diesen Film über die Superautobahn liefern zu lassen.
  • Bevor das Versprechen von VOD realisiert werden kann, müssen viele Probleme gelöst werden. Selbst ein relativ kurzer Film von einer Dauer von zwei Stunden enthält näherungsweise 2,2 × 1010 Bits von Daten. Standardverfahren zum Komprimieren und Speichern der ungeheuren Menge an Daten, die in einer Filmbibliothek von Tausenden von Titeln enthalten sind, müssen vereinbart werden. Selbst nachdem die Daten erfasst und gespeichert worden sind, besteht keine Einigung bezüglich irgendeines Teil des Systems, der notwendig sein wird, um die gespeicherten Daten an die Benutzer zu liefern.
  • Die rigorosen Ansprüche der Benutzer muss ein jegliches vorgeschlagenes System erfüllen. Die Benutzer haben den Wunsch, sich irgendeinen Film, den sie ausgewählt haben, schnell liefern zu lassen. Sie wünschen sich auch die Fähigkeit, den Film zu einem beliebigen Punkt zu starten und zu stoppen, sowie die Fähigkeit, den Film auf eigenen Wunsch schnell vorzuspulen („FF" = fast forward) und schnell rückzuspulen („FR" = fast reverse). Die Bereitstellung dieser Fähigkeiten für jeden Benutzer zu jeder Zeit erhebt enorme Ansprüche an die Speicherungseinheiten, internen Busse und die Verarbeitungseinheiten des Systems. Selbst die enorme Bandbreite von Faseroptikkabels kann überschritten werden. Zusätzlich ist eine beliebige Zweiwegekommunikation zwischen dem Benutzer und dem System notwendig, um die Anforderungen des Benutzers zu kommunizieren sowie Informationen und dergleichen in Rechnung zu stellen. Diese Zweiwegekommunikation erlegt dem System zusätzliche Belastungen auf.
  • Ein grundlegender Aspekt eines VOD-Videoservers ist die Bereitstellung einer großen Menge an Daten von einem Datenspeicherungssystem an viele Benutzer ungefähr zum gleichen Zeitpunkt ohne beträchtliche Verarbeitung der ausgehenden Daten. Welche Verarbeitungsfähigkeit das System erfordert, ist üblicherweise relativ einfach, wie z. B. Abrechnung des Benutzerkontos und Archivieren der gespeicherten Videoquellenprogramme. Es ist hilfreich, sich dabei die Videoserver als asymmetrische Eingabe-/Ausgabemaschinen („I/O" = input/output) vorzustellen.
  • Die verschiedenen Systemarchitekturen, die für Videoserver vorgeschlagen wurden, zeigen an, dass die asymmetrische Beschaffenheit von Videoservern nicht begriffen worden ist. Viele Vorschläge legen die Verwendung von Großcomputern nahe, um die Videodaten zu leiten und zu überwachen, während sie zum Benutzer fließen. Jede Anfrage nach einem Film und die meisten Systemsteuerungsfunktionen werden in diesen System durch die CPU des Großcomputers verarbeitet. In einer solchen Umgebung kann eine Latenzzeit drastisch ansteigen, während die Anzahl von Benutzern zunimmt. Eine solche Verwendung eines Großcomputers ist eine Verschwendung der Verarbeitungsfähigkeit des Systems. Ein Videoserver, der auf dieser Architektur basiert, wäre kostspielig und schwierig zu erweitern.
  • Vorschläge, die die Verwendung von Netzen von Personalcomputern („PC") vorschlagen, um VOD zu liefern, mangelt es an Flexibilität, da die Architektur von PCs niemals auf mehrere Datenspeicherungsvorrichtungen zugreifen oder Hochgeschwindigkeits-Ausgabebusse mit breiter Bandbreite steuern sollte.
  • Die Arbeit „Staggered Striping in Multimedia Information Systems", ACM SIGMOD Bd. 23, Nr. 2, 24. Mai 1991, S. 79–90 (XP2181228) offenbart ein Multimediaspeichersystem, bei dem ein Multimediaobjekt in gestaffelter Weise über mehrere Plattenlaufwerke verteilt ist. Ein Schnellvorspul-Nachbildungsobjekt ist gespeichert, um Schnellvorspulabtastungen zu ermöglichen.
  • Das Dokument „Scalable Video Data Placement on Parallel Disk Arrays" Proceedings of the SPIE, Bd. 2185, 7. Februar 1994 (XP2011316) offenbart Verfahren zum Platzieren von Videodaten an Parallelplattenarrays.
  • Das Dokument „The Evaluation of Video Layout Strategies on a High-Bandwidth File Server", Network and Operating System Support for Digital Audio and Video, 4. Int. Workshop, 3. November 1993, S. 228–239 (XP725321) offenbart ein System zum Speichern von Mehrauflösungsvideo, das in Streifen über Platten eines Arrays geschrieben ist.
  • Die JP-A-6133262 offenbart ein Videosystem, bei dem Schnellvorspul- und Schnellrückspulversionen vorerzeugt sind.
  • Die EP 0625857 A1 offenbart einen Videoserver zum Übertragen von Video auf Abruf. Es sind Schnellvorspul- und Schnellrückspulversionen gespeichert. Speicherzuweisungstabellen werden verwendet, um aufzuzeichnen, wo spezielle Datenblöcke gespeichert sind, um eine Wiedererlangung zu ermöglichen.
  • Obwohl die vorgeschlagenen VOD-Systeme bisher nur bezüglich des Lieferns von Videodaten an Benutzer erörtert wurden, erzeugen dieselben Datenströme, die auch Audio-, Text-, Graphik- und andere Datentypen umfassen können. Alle Bezugnahmen auf Videodaten in der Spezifikation und den Ansprüchen sollen Daten umfassen, die entweder nur einen dieser aufgezählten Datentypen oder eine Mischung aus denselben aufweisen. Ferner soll der Inhalt dieser Offenbarung nicht als Einschränkung der vorliegenden Erfindung auf die Speicherung und Übertragung von speziell aufgezählten Datentypen ausgelegt werden.
  • Bevor VOD realisiert werden kann, muss eine neue Architektur, die zum Erzeugen und Steuern hunderter, wenn nicht tausender von Videoausgabeströmen bei relativ geringen Kosten fähig ist, erzeugt werden. Diese Architektur muss erweiterbar, fehlertolerant und zu einem effizienten Betrieb mit Videodaten fähig sein, die komprimiert und in einem beliebigen der mehreren konkurrierenden Formate gespeichert sind. Eine derartige Architektur ist derzeit nicht bekannt.
  • Gemäß einem Aspekt der vorliegenden Erfindung ist ein Verfahren gemäß Anspruch 1 vorgesehen. Gemäß einem anderen Aspekt der vorliegenden Erfindung ist ein System gemäß Anspruch 4 vorgesehen.
  • Die vorliegende Erfindung ist in einem System realisiert, das bei einem ersten Ausführungsbeispiel einen Videoserver aufweist, dessen Architektur ohne weiteres erweiterbar, redundant und relativ kostengünstig ist. Bei diesem ersten Ausführungsbeispiel betreiben zwei Steuerungssysteme den Videoserver und sind für zwei unterschiedliche Betriebsklassen optimiert. Die zwei Steuerungssysteme sind eine Systemsteuerung und eine Echtzeitsteuerung. Die Systemsteuerung funktioniert als der Pförtner des Servers, der bestimmt, welche Benutzer auf den Server zugreifen dürfen. Sie handhabt auch Abrechnungstransaktionen, andere Datenverarbeitungsaufgaben und behält die Verbindungen zu anderen Computern bei, die Unterstützungsdienste an den Videoserver liefern können. Der Echtzeitcomputer ist mit der Systemsteuerung gekoppelt und führt die zeitkritischen Funktionen aus, die zum Beliefern eines speziellen Benutzers mit einem speziellen Datenstrom notwendig sind. Diese Aufgabentrennung zwischen der Echtzeitsteuerung und der Systemsteuerung hilft dabei, das Systemverhalten zu optimieren und die Latenz einer speziellen Benutzeranforderung zu reduzieren.
  • Die Echtzeitsteuerung ist mit einer Mehrzahl von Komponenten gekoppelt, die die Videodaten speichern, wiedergewinnen, dieselben zur Übertragung formatieren und schließlich an die Benutzer übertragen. Bei diesem ersten Ausführungsbeispiel sind diese Komponenten ein Datenspeicherungssystem, eine Mehrzahl von Datenquellen und ein erster und zweiter Multiplex-/Demultiplexschalter (M/D).
  • Das Datenspeicherungssystem weist ein Archivspeicherungselement einer großen Kapazität mit einer relativ langsamen Datenzugriffs- und Übertragungsrate und eine Mehrzahl von Plattenlaufwerksarrays einer kleineren Kapazität mit höheren Datenzugriffs- und Übertragungsraten als das Archivspeicherungselement auf. Das Datenspeicherungssystem ermöglicht sowohl eine langfristige als auch kurzfristige Speicherung für die Videodaten. Bei einer typischen Verwendung müssen die Videodaten in dem Archivspeicherungselement an die Plattenlaufwerksarrays überschrieben werden, bevor die Videodaten für die Benutzer zugreifbar werden.
  • Das Datenspeicherungssystem ist wiederum mit einer Mehrzahl von Datenquellen durch einen ersten M/D-Schalter gekoppelt, wobei dieser erste M/D-Schalter wiederum mit der Echtzeitsteuerung gekoppelt ist und durch dieselbe gesteuert wird. Dieser erste M/D-Schalter liefert eine vollständige bidirektionale Konnektivität zwischen dem Datenspeicherungssystem und den Datenquellen. Jede Datenquelle kann mehrere Ströme von Videodaten von dem Datenspeicherungssystem empfangen und diese Ströme zu den entsprechenden Benutzern unter der Anleitung der Echtzeitsteuerung leiten.
  • Innerhalb jeder Datenquelle verbindet ein Hochgeschwindigkeits-I/O-Bus das Datenspeicherungssystem mit der Netzschnittstelle. Videodaten, die von dem Datenspeicherungssystem gesendet werden, kommen in die Datenquelle und werden in einem Zuerst-Hinein-Zuerst-Hinaus-Speicherpuffer (FIFO = first in, first out) angeordnet. Jede Datenquelle weist eine Mehrzahl von FIFOs und andere Komponenten auf, die mehrere unabhängige Datenströme unterstützen.
  • Die Datenquellen sind mit dem Netz durch einen zweiten M/D-Schalter gekoppelt. Die Echtzeitsteuerung ist mit dem zweiten M/D-Schalter gekoppelt. Unter dem Befehl der Echtzeitsteuerung liefert der zweite M/D-Schalter eine vollständige bidirektionale Konnektivität zwischen den Datenquellen und den Benutzern.
  • Die Echtzeitsteuerung bestimmt, welcher Benutzer die Daten anforderte, welches Plattenlaufwerksarray in dem Plattenspeicherungssystem verwendet wird, um die angeforderten Videodaten zu liefern, und welche Datenquelle diese Daten empfängt und verarbeitet. Die Echtzeitsteuerung erzeugt die ordnungsgemäßen Befehle für den ersten und den zweiten M/D-Schalter, die Datenquellen und die Datenspeicherungselemen te, so dass der Benutzer den angeforderten Datenstrom bei einer minimalen Verzögerung empfängt.
  • Bei einem zweiten Ausführungsbeispiel sind die Datenquellen direkt mit dem Datenspeicherungssystem gekoppelt.
  • Bei sowohl dem ersten als auch dem zweiten Ausführungsbeispiel ist typischerweise eine Ersatzdatenquelle vorgesehen. Die Ersatzdatenquelle und ein Datenspeicherungselement, das mit derselben gekoppelt ist, speichern eine Kopie von jedem Videoprogramm, das momentan gespielt wird. Alternativ kann ein beliebiger Teilsatz der aktiven Videodaten kopiert und gespeichert werden, sowie Videodaten, die nicht nur erst vor kurzem inaktiv geworden sind. Wenn eine Datenquelle ausfällt, oder wenn ein Datenspeicherungselement ausfällt, können die Ersatzdatenquelle und ihr Datenspeicherungselement durch den ersten und den zweiten M/D-Schalter mit den Benutzern gekoppelt werden, die durch die ausgefallene Datenquelle unterstützt wurden, und der Dienst für diese Benutzer wird ohne wahrnehmbare Unterbrechung fortgesetzt. Dieses Spiegeln der Daten und die Bereitstellung von zumindest einer Ersatzdatenquelle ermöglicht die vorliegende Erfindung mit einer adäquaten Fehlertoleranz.
  • In jedem Ausführungsbeispiel überwacht ein separates Teilsystem das Verhalten von allen Komponenten in dem System auf einer regelmäßigen Basis und liefert Warnungen und Informationen an die Betreiber darüber, wann und wo die Ausfälle aufgetreten sind. Diese Warnung und Informationen ermöglichen der Echtzeitsteuerung, ausfallende Einheiten zu trennen und betriebsfähige dafür einzusetzen.
  • Das erste und das zweite Ausführungsbeispiel können durch Hinzufügen von mehr Datenquellen sowie durch Erhöhen der Größe des Datenspeicherungssystems erweitert werden.
  • Während des Betriebs empfängt der Videoserver eine Benutzeranforderung, die von der Set-Top-Box („STB") des Benut zers durch ein Verteilungsnetz an den Server übertragen wurde. Die Anforderung wird durch den zweiten M/D-Schalter an die Echtzeitsteuerung geroutet, die dieselbe zur Systemsteuerung weiterleitet. Wenn die Systemsteuerung bestimmt, dass dem Benutzer der Zugriff erlaubt ist und dass die angeforderten Videodaten in dem Speicherungssystem sind, fordert die Systemsteuerung die Echtzeitsteuerung an, einen Benutzerzugriff zu ermöglichen und erzählt der Echtzeitsteuerung, wo die Videodaten gespeichert sind.
  • Wenn die angeforderten Videodaten nicht bereits auf einem der Plattenlaufwerksarray verfügbar sind, beginnt das Archivspeicherungsteilsystem, die Videodaten an die Mehrzahl von Platten zu überschreiben, die ein einzelnes Plattenlaufwerksarray aufweisen. Ein vorbestimmter Bruchteil der Videodaten wird auf jeder Platte in sequentieller Weise gespeichert, wobei jede Platte viele kleine Abschnitte des Films empfängt. Hierin wird diese Technik als „Datenabstreifung" bezeichnet. Obwohl es normalerweise mehrere Minuten dauert, um das gesamte Videodatenprogramm an das ausgewählte Plattenlaufwerksarray zu überschreiben, kann der Videoserver die Übertragung der Videodaten an den Benutzer beginnen, nachdem nur ein paar Minuten des Films überschrieben worden sind.
  • Das Bereitstellen von FF- und FR-Betrachtungsmodi an die Benutzer wird hierin durch Präparieren spezieller FF- und FR-Versionen von jedem Videodatenprogramm erreicht. Diese speziellen Versionen weisen ausgewählte Rahmen der ursprünglichen Videodaten auf, wobei diese Rahmen dann weiter editiert werden, um visuelle Details, die nicht erfasst werden können, wenn der Film in einem FF- oder FR-Modus betrachtet wird, zu entfernen. Die ausgewählten Videodaten für die FF-Version werden in der gleichen Reihenfolge wie die ursprünglichen Videodaten gespeichert, und die ausgewählten Videodaten für die FR-Version werden in der umgekehrten Reihenfolge zu den ursprünglichen Videodaten gespeichert. Diese Versionen werden zusammen mit der ur sprünglichen Version der Videodaten gespeichert. Wenn das Videodatenprogramm angefordert wird, werden alle drei Versionen des Programms streifenmäßig auf das Plattenarray geschrieben (gestreift), das zum Unterstützen des Benutzers ausgewählt worden ist.
  • Nachdem der anfängliche vorbestimmte Abschnitt der Videodaten auf das ausgewählte Plattenarray gestreift worden ist, kann das Abspielen beginnen. Ein spezielles anfängliches Holen im voraus von Videodaten liest parallel die beginnenden Segmente der Videodaten, die auf jeder der Platten gespeichert sind, und sendet diese Segmente in serieller Weise an die FIFO-Speicherpuffer, die den Benutzer unterstützen. Dieses anfängliche Holen im voraus versorgt den Benutzer für zumindest einige Sekunden mit genügend Videodaten zum Betrachten.
  • Jede Platte in dem Plattenarray kann mehrere Benutzer zu einem gegebenen Zeitpunkt unterstützen. In einem gegebenen Zeitintervall kann die Rate, mit der die Daten von den Platten gelesen werden können, mehr als adäquat sein, um die Bedürfnisse von mehreren Benutzern zu unterstützen, wenn ein ordnungsgemäßer Zugriffsterminplan beibehalten wird. Bei der vorliegenden Erfindung sind Benutzerzeitschlitze zugewiesen und werden beibehalten, um eine adäquate Videodatenversorgung von dem Plattenarray zu den Benutzern sicherzustellen.
  • Wenn der Benutzer von Abspielen auf entweder FF oder FR oder umgekehrt schaltet, liest der Videoserver das FF- oder FR-Videosegment auf der Platte, auf die zugegriffen wird, wobei der Server das Segment auswählt, das sich in der Zeitsequenz am nächsten zu den Videodaten befindet, die derzeit abgespielt werden.
  • Exemplarische Ausführungsbeispiele der vorliegenden Erfindung werden nun ausführlich unter Bezugnahme auf die aufgelisteten und nachstehend beschriebenen Figuren beschrieben.
  • 1 ist ein Blockdiagramm, das die Betriebsumgebung der vorliegenden Erfindung zeigt;
  • 2 ist ein Blockdiagramm eines ersten Ausführungsbeispiels der vorliegenden Erfindung;
  • 3 ist ein Blockdiagramm eines zweiten Ausführungsbeispiels der vorliegenden Erfindung;
  • 4 ist ein Blockdiagramm der Datenquellen, die in 2 und 3 gezeigt sind;
  • 5 stellt dar, wie der programmierbare Ratengenerator die ordnungsgemäße Zeitmultiplexierung des Datenquellenausgabekanals sicherstellt;
  • 6 ist ein Blockdiagramm des Datenspeicherungsteilsystems;
  • 7a bis 7d sind Flussdiagramme, die den Betrieb der vorliegenden Erfindung darstellen;
  • 8 ist eine graphische Darstellung des UTS-Prozesses (UTS = User Time Slot = Benutzerzeitschlitz);
  • 9 ist ein Flussdiagramm des Prozesses zum Zuweisen eines UTS;
  • 10 stellt den Status eines FIFO eines einzelnen Benutzers im Laufe der Zeit dar;
  • 11 ist ein Diagramm, wie die vorliegende Erfindung in den Vorwärts- und Rückwärtsmodi operiert; und
  • 12a bis 12d sind Flussdiagramme, die zeigen, wie die vorliegende Erfindung die Betriebsmodi wechselt.
  • 1 ist ein Blockdiagramm, das die Betriebsumgebung der vorliegenden Erfindung zeigt. Die vorliegende Erfindung, der Videoserver 10, ist mit einem Verteilungsnetz 20 und anderen Anwendungsservern 40 gekoppelt. Das Verteilungsnetz 20 kann ein Faseroptiknetz, Koaxialkabel, gedrillte Paare oder ein anderer Typ von digitalem Datennetz mit einer großen Anzahl von individuellen Kommunikationskanälen sein. Ein drahtloses Verteilungsnetz unter Verwendung von Infrarot- (IR-), elektromagnetischen Hochfrequenz- (RF-) oder Mikrowellen-Wellen kann alternativ verwendet werden. Das Netz weist typischerweise eine große Bandbreite auf, jedoch sind der Typ und die Fähigkeiten des Verteilungsnetzes für die Beschreibung und das Verständnis der vorliegenden Erfindung nur von peripherer Relevanz. Der Clientknoten 30 ist mit dem Videoserver 10 durch das Verteilungsnetz 20 gekoppelt. Die Kommunikationen zwischen dem Clientknoten, dem Verteilungsnetz und dem Videoserver sind typischerweise bidirektional. Der Clientknoten 30 kann ein TV-STB eines individuellen Benutzers, einen beliebigen Allzweckcomputer oder eine beliebige andere Entität aufweisen, die zum Anfordern und Empfangen von Videodaten fähig ist. Tatsächlich könnte der Clientknoten 30 einen anderen Videoserver 10 aufweisen. Die hierin erfolgenden Bezugnahmen auf „Benutzer" sind als ein Synonym für Clientknoten zu verstehen.
  • Die Anwendungsserver 40 sind mit dem Videoserver 10 mittels eines bidirektionalen Kommunikationskanals gekoppelt. Die Anwendungsserver 40 können solche Dienste wie Abrechnung, statistische Analyse von Videoprogrammnutzung etc. liefern.
  • Systemarchitektur
  • 2 ist ein Blockdiagramm des ersten bevorzugten Ausführungsbeispiels eines System, in dem die vorliegende Erfindung realisiert ist. Die M/D-Schalter 70 bzw. 80 koppeln die Datenquellen 100 mit dem Datenspeicherungssystem 90 und die Datenquellen 100 mit dem Verteilungsnetz 20 (siehe 1). Die M/D-Schalter 70 und 80 können eine beliebige ihrer Eingangsquellen mit einer beliebigen ihrer Ausgangsquellen koppeln und als Multiplexer-/Demultiplexer funktionieren. Die M/D-Schalter müssen nicht einheitlich sein. Es können mehrere kleinere M/D-Schalter, entweder blockierende oder nichtblockierende, verwendet werden. Bei diesem ersten Ausführungsbeispiel dient ein FiberChannel-M/D-Schalter (fibre channel = Faserkanal) als M/D-Schalter 70 und ein ATM-M/D-Schalter (ATM = Asynchronous Transfer Mode = asynchroner Übertragungsmodus) dient als M/D-Schalter 80. Diese Typen von M/D-Schaltern sind im Handel erhältlich und erfordern keine weitere Beschreibung. Andere M/D-Schalter, wie z. B. ein SCSI-Schalter oder ein Zeitteilungs-Kreuzschienenersatzschalter, könnten verwendet werden, ohne dieses erste Ausführungsbeispiel erheblich zu verändern.
  • Jede Datenquelle 100 ist mit den M/D-Schaltern 70 und 80 sowie mit der Echtzeitsteuerung 60 gekoppelt. Jede Datenquelle 100 liefert Videodaten an viele unabhängige, interaktive Benutzer gleichzeitig. Die Datenquellen ermöglichen eine kurzfristige Speicherung von Videodaten einschließlich MPEG-codierter Daten (MPEG = Motion Picture Entertainment Group), Skripten und Interpretierern und Metadaten über diese Videodaten. Die Datenquellen spielen auch die individuellen Datenströme für jeden Benutzer mit einer Rate ab, die einen kontinuierlichen Dienst sicherstellt. Zu diesem Zweck formatieren und puffern sie Daten, die von dem Datenspeicherungssystem 90 durch den M/D-Schalter 70 empfangen wurden, und übertragen dieselben mit der entsprechenden Rate durch den M/D-Schalter 80 an das Verteilungsnetz. Die Konstruktion und der Betrieb der Datenquellen 100 wird nachstehend ausführlicher erörtert.
  • Die Echtzeitsteuerung 60 ist mit den M/D-Schaltern 70 und 80, den Datenquellen 100 und dem Steuerungssystem 50 gekoppelt. Die Echtzeitsteuerung 60 leitet die Verbindung eines speziellen Plattenlaufwerksarrays 92 an eine spezielle Datenquelle 100 und die Verbindung einer speziellen Datenquelle 100 an einen der Kommunikationskanäle in dem Vertei lungsnetz. Die Echtzeitsteuerung steuert auch eine vorangehende Interaktion mit einem gegebenen Benutzer, wie z. B. FF- und FR-Befehle. Bei diesem bevorzugten Ausführungsbeispiel besteht die Echtzeitsteuerung 60 aus einer Arbeitsstation der HP-Reihe 700, die ein Allzweckdigitalcomputer ist und ein Echtzeitbetriebssystem betreibt. Da dieser Typ von Computer bekannt ist, ist keine weitere Beschreibung desselben notwendig. Andere Typen von digitalen Allzweckcomputern könnten anstelle der HP-Arbeitsstation verwendet werden.
  • Das Steuerungssystem 50 ist mit einer Echtzeitsteuerung 60, einem M/D-Schalter 80 und einem Anwendungsvideoserver 40 (siehe 1) gekoppelt. Das Steuerungssystem 50 liefert diese Dienste, die eine Datenverarbeitung erfordern, an einen gegebenen Benutzer. Diese Dienstleistungen umfassen ein Einloggen und Ausloggen, das ferner ein Überprüfen von PINs (PIN = personal identification number = persönliche Identifizierungsnummer) und Verifizieren eines Kredits, Abrechnen von Benutzern, möglicherweise durch die Anwendungsserver 40, eine Betriebsunterstützung, wie ein Hinzufügen von neuen Benutzern zu den Teilnehmerlisten und Hinzufügen neuer Filme zu der Bibliothek von Filmen, und eine interaktive Programmunterstützung umfasst. Bei diesem Ausführungsbeispiel wird ein digitaler Allzweckcomputer der HP-9000-Reihe 800, der das HP-UX-Betriebssystem betreibt, als Steuerungssystem 50 verwendet. Ein beliebiges Allzweckcomputersystem mit dem gleichen Verhaltenspegel wie der Computer der Reihe 800 könnte verwendet werden.
  • Eine Medienherzschlagüberwachungseinrichtung 85 ist mit der Ausgabe des M/D-Schalters 80 gekoppelt. Ein Medienherzschlagprogramm, das aus Videodaten eines geringen Informationsgehalts in einem MPEG-Format besteht, ist in einem gestreiften Format auf jeder der Platten in allen Plattenarrays gespeichert, die einen Teil des Datenspeicherungssystems 90 aufweisen. Das Programm wird kontinuierlich von allen Platten im System 90 durch jeden der M/D-Schalter und die Datenquellen übertragen und schließlich zu der Medienherzschlageinrichtung 85 geschaltet. Die Überwachungseinrichtung 85 berichtet der Echtzeitsteuerung 60 über beliebige Unregelmäßigkeiten, die in einer beliebigen der Komponenten erfasst wurden, wie z. B. ein Nichtempfangen des Programms von einer speziellen Platte oder Datenquelle. Ein beliebiger Datenwegausfall aufgrund von Hardware- oder Softwarefehlfunktionen wird erfasst und durch die Überwachungseinrichtung 85 durch einen Rückkanal an die Echtzeitsteuerung 60 gemeldet. Die Echtzeitsteuerung 60 kann dann die ordnungsgemäße Korrekturmaßnahme befehlen, wie z. B. ein Schalten einer anderen Datenquelle in den Dienst, Auswählen eines anderen Datenspeicherungsteilsystems 92 oder erneutes Ausgeben einer verlorengegangenen Nachricht.
  • Das erste Ausführungsbeispiel kann auf mehrere Arten und Weisen erweitert werden, um Dienste an mehr Benutzer zu liefern. Jede Datenquelle kann auf eine größere Speicherungsgröße durch Erhöhen der Speicherungsgröße von jeder Platte in ihrem zugeordneten Plattenarray skaliert werden. Mehr Datenquellen können dem System hinzugefügt werden, bis die gesamte Bandbreite zwischen den Komponenten voll gesättigt ist. Dieses erste Ausführungsbeispiel kann in seiner Grundkonfiguration 300 Video- und andere Datenströme mit drei 3 Megabit pro Sekunde pro Strom anbieten. Andere Bitraten pro Strom sind möglich, und das System kann auf über 300 Videodatenströme erweitert werden. Mehrere Videoserver können auch über ein Breitbandnetz miteinander verbunden sein, um die Gesamtkapazität zu erhöhen.
  • Ein zweites Ausführungsbeispiel eines Systems, in dem die vorliegende Erfindung realisiert ist, ist in 3 gezeigt. Die zwei Ausführungsbeispiele sind identisch, außer dass der M/D-Schalter bei diesem Ausführungsbeispiel entfernt worden ist und dass das Datenspeicherungssystem 90 direkt mit den Datenquellen 100 gekoppelt ist. Der Vorteil dieses Ausführungsbeispiels ist eine geringfügig einfachere Architektur, die etwas weniger kostet als das in 2 gezeigte Ausführungsbeispiel, ohne die Fähigkeiten des ersten Ausführungsbeispiels wesentlich zu mindern.
  • Datenquelle
  • 4 ist ein ausführliches Blockdiagramm einer einzelnen Datenquelle 100. Die Datenquelle 100 akzeptiert als Eingabe Videodaten vom Speicherungssystem 90 (siehe 2 und 3) sowie andere Typen von Daten von anderen Quellen. Aus diesen verschiedenen Quellen von Daten bilden die Datenquellen 100 einen einzelnen ausgehenden Bitstrom, wobei der Bitstrom aus nachfolgenden Paketen von Daten gebildet ist, wobei dieser Bitstrom eine Mehrzahl von Benutzern mit Videodiensten versorgt.
  • Daten, üblicherweise MPEG-Video-/Audiodaten vom Datenspeicherungssystem 90 (siehe 2 und 3), treten in die Datenquelle 100 durch den Platten-I/O-Port 104 ein. Dieser Port ist bidirektional. Ein SONET- oder ein anderer Netzport 106 ist ebenfalls bidirektional und trägt üblicherweise Text oder andere Daten von der Echtzeitsteuerung 60 und dem Steuerungssystem 50 in die Datenquelle 100. Der Port 106 kann verwendet werden, um Daten an den Port 104 zum Schreiben an das Datenspeicherungssystem 90 zu senden.
  • Jedem Benutzer, den die Datenquelle 100 unterstützt, ist ein Paar von FIFO-Speicherpuffern 101 und 103 zugeteilt. Für N Benutzer wären N Paare von FIFO-Speicherpuffern 101 und 103 notwendig. Obwohl die FIFO-Speicherpuffer in 4 als einzelne FIFO-Speicherpuffer dargestellt sind, können sie auf viele unterschiedliche Weisen implementiert sein. Zum Beispiel könnte auf einen einzelnen RAM (RAM = random access memory = Direktzugriffsspeicher) als eine Mehrzahl von FIFO-Speicherpuffern zugegriffen werden. Die FIFO-Speicherpuffer 101 empfangen Bytes von Daten vom Platten-I/O-Port 104, und die FIFO-Speicherpuffer 103 empfangen Bytes von Daten vom Netzport 106.
  • Die Verwendung von zwei FIFO-Speicherpuffern für jeden Benutzer ist keineswegs erforderlich. Ein einzelner Puffer könnte verwendet werden, der den Bedarf an einem Multiplexer/Demultiplexer zum Kombinieren der Inhalte des Paars von FIFO-Speicherpuffern aufhebt. Der Nachteil dieser Anordnung könnte die Unfähigkeit sein, Datenströme in Echtzeit zu kombinieren. Alternativ könnten mehr als zwei FIFO-Speicherpuffer verwendet werden, wodurch die Option des Kombinierens mehrerer Datentypen gleichzeitig in Echtzeit gegeben ist, wobei der Nachteil dabei die zusätzlichen Kosten und die Komplexität der zusätzlichen FIFO-Speicherpuffer ist.
  • Ein Auswählschalter 102, eine Ratensteuerung 105 und eine Datenquellensteuerung 107 kooperieren, um sicherzustellen, dass die Daten an jeden Benutzer mit der Rate gesendet werden, die der Benutzer benötigt. Wie in 5 gezeigt ist, besteht die Ausgabe des MUX 109 (4) aus Datenzellen, die in feststehenden Zeitschlitzen der Länge TC angeordnet sind. Jede Zelle enthält einen Abschnitt des kombinierten MPEG-Datenstroms für einen individuellen Benutzer. Die Zellen für die Benutzer, die dem Netzport 106 zugeordnet sind, sind in einer solchen Weise verschachtelt, um jedem Benutzer die Bandbreite bereitzustellen, die der Benutzer benötigt. In dem in 5 gezeigten Beispiel benötigt der Benutzer C1 Daten mit der doppelten Rate, die entweder der Benutzer C2 oder C3 benötigt, und sowohl C2 und C3 benötigen Daten mit der gleichen Rate. Während der dargestellten Zeitdauer empfängt C1 vier Zellen von Daten, während sowohl C2 und C3 jeweils zwei Zellen von Daten empfangen. Die Zellen für jeden Benutzer werden mit einer feststehenden Rate ausgegeben, indem eine festgelegte Zeitdauer zwischen jeder Zelle erlaubt wird.
  • Bei dem in 5 gezeigten Beispiel sind die festgelegten Zeitdauern zwischen den Zellen für jeden Benutzer ein ganzzahliges Vielfaches der festgelegten Zeitdauern zwischen den Zellen für andere Benutzer und auch ganzzahlige Vielfache der Zeitdauer TC von jedem Zeitschlitz. Dies muss nicht immer der Fall sein. Infolge von Fehlanpassungen zwischen den gewünschten Zeitdauern zwischen den Zellen und den verfügbaren Grenzen der Zeitschlitze der Länge TC muss ein Ausgeben von einer Zelle eventuell bis zur nächsten verfügbaren Zeitschlitzgrenze verzögert werden. Es ist auch für Zellen von mehr als einem Benutzer möglich, um den gleichen Zeitschlitz zu wetteifern, was zu einer Verzögerung der Ausgabe von einer oder mehreren Zellen führt. Die Ratensteuerung 105 muss verschiedene Taktgebungsraten von einer feststehenden Taktfrequenz in einer Weise erzeugen, die diese Verzögerungen innerhalb akzeptabler Limits hält und immer noch die durchschnittliche Benutzerrate liefert, die korrekt ist. Jeder Benutzer benötigt eine unabhängige Rate zum Sicherstellen einer ordnungsgemäßen Datenlieferung. Eine andere Implementierung der Ratensteuerung 105 verwendet eine im Handel erhältliche „ATMizer"-Integrierte-Schaltung, die von der Firma LSI Logic, Milpitas, Kalifornien, erhältlich ist.
  • Der Auswählschalter 102 (4), der die Rate verwendet, die durch die Steuerung 107 bestimmt wird und durch die Ratensteuerung 105 erzeugt wird, schaltet die Daten von den FIFO-Speicherpuffern 101 und 103 für jeden Benutzer auf den MUX 109.
  • Der MUX 109 empfängt die Video- und anderen Daten vom Schalter 102 und führt die zwei eingehenden Datenströme zu einem einzelnen ausgehenden legalen MPED-Datenstrom zusammen. Wenn andere Komprimierungsverfahren und Protokolle verwendet werden, kann der MUX 109 programmiert werden, um die Daten, die vom Schalter 102 empfangen wurden, zu einem Datenstrom zu formatieren, der diesem neuen Protokoll entspricht. Nachdem der MUX 102 den Datenstrom formatiert hat, sendet er den Datenstrom an den Port 106.
  • Die Datenquellensteuerung 107 ist mit der Echtzeitsteuerung 60 durch den Port 108 gekoppelt und stellt sicher, dass die Datenströme aus dem Netz über den Port 106 herausfließen. Die Steuerung 107 lenkt Informationen, die vom M/D-Schalter 80 ankommen, einschließlich Text und Graphiken, entweder an das Datenspeicherungssystem 90 oder die FIFO-Speicherpuffer 103, wo sie mit Videodaten von dem Datenspeicherungssystem gemischt und dann erneut an das Netz übertragen werden können. Die Fähigkeiten der Datenquellensteuerung 107 werden durch die Erzeugung des einzelnen ausgehenden Datenstroms nicht erschöpft. Es ist möglich, zusätzliche Datenströme zu erzeugen, indem eine zusätzliche Anordnung von FIFO-Speicherpuffern, Auswahlschaltern, MUXs und Ratensteuerungen bereitgestellt wird, die die bereits beschriebene Anordnung spiegelt. Dieses Paar von Anordnungen stünde unter dem Befehl einer einzelnen Datenquellensteuerung 107.
  • Die Busse 111, 113, 115 und 116, die die Komponenten der Datenquelle, wie in 4 gezeigt ist, miteinander verbinden, sind Hochgeschwindigkeits-I/O-Busse. Die Bandbreite dieser internen Busse ist breiter als die Bandbreite der Netzkanäle, die mit der Datenquelle gekoppelt sind. Die Steuerungsbusse 112 koppeln die Datenquellensteuerung 107 mit der Ratensteuerung 105 und dem Platten-I/O-Port 104.
  • Zumindest eine Datenquelle 100 dient als ein Systemersatz. Das Ersatzplattenarray des Datenspeicherungssystems 90, das mit der Ersatzdatenquelle gekoppelt ist, enthält eine Kopie von jedem Videodatenprogramm, das ein Benutzer des Systems betrachtet oder verwendet. Es kann auch alternativ einen Teilsatz der aktiven Filme sowie der vor kurzem inaktivierten Filme speichern. Wenn die Datenquelle oder das Plattenarray, das einen Benutzer unterstützt, ausfällt, kann die Ersatzdatenquelle mit den Benutzern der ausgefallenen Datenquelle oder des Plattenarrays gekoppelt werden, und die Videodatenprogramme, die auf demselben gespeichert sind, stehen dem Benutzer bei einer höchstens minimalen Unterbrechung zur Verfügung.
  • Datenspeicherungssystem
  • 6 ist ein ausführliches Blockdiagramm, das eine erste und eine zweite Gruppe von Plattenlaufwerksarrays 92 darstellt, die mit einer ersten und einer zweiten Datenquelle 100 gekoppelt sind. Jede Gruppe von Plattenlaufwerksarrays 92 besteht aus einer Reihe von Plattenlaufwerken 97, die durch eine Plattenlaufwerksschnittstelle 96 mit der Datenquelle 100 gekoppelt sind. Bei der zweiten Gruppe von Plattenlaufwerksarrays 92 ist eine vordefinierte Anzahl von Plattenlaufwerken 97 mit einer Arraysteuerung 99 gekoppelt. Die Arraysteuerung 99 kann eine Paritätsprüfung unter den Plattenlaufwerken, die mit derselben gekoppelt sind, erzeugen und überwachen. Dies trägt zu einem weiteren Redundanzpegel der vorliegenden Erfindung bei, da die Arraysteuerung 99 ein ausgefallenes Plattenlaufwerk von dem Array entfernen kann. Eine Archivspeicherung (nicht dargestellt) kann durch eine Band-„Jukebox" bereitgestellt werden, die zwei digitale Bandlaufwerke und 8-mm-Kassetten aufweist, auf die robotermäßig zugegriffen wird. Über 2.000 Stunden von Videodaten können in dem 1,5-Terabyte-Bandsystem beibehalten werden. Dieses System kann in 15 Minuten einen 90-Minuten-Film an einen primären Plattenspeicher übertragen. Obwohl nicht dargestellt, kann die Archivspeicherung direkt mit den Plattenlaufwerksschnittstellen 96 oder der Systemsteuerung 50 (siehe 2) gekoppelt sein. Optische CDs, digitale Audiobänder, Direktzugriffsspeicher oder ein redundantes Array von kostengünstigen Platten (RAID; RAID = redundant array of inexpensive disks = redundantes Array von kostengünstigen Platten) könnte einen Teil der oder alle Plattenlaufwerke 97 als akzeptable Speicherungselemente ersetzen. Bei dem bevorzugten Ausführungsbeispiel, das in 2 gezeigt ist, sind die Plattenlaufwerke, die zu eindimensionalen Arrays und zumindest einer Bandjukebox gebildet worden sind, die bevorzugten Speicherungselemente. Sie sind als eindimensionale Arrays logisch angeordnet, die mit den individuellen Datenquellen 100 gekoppelt sind.
  • Um eine Such- und Auffind-Zeit zu reduzieren, wird ein Mittlungsalgorithmus verwendet, wenn Daten an die Plattenspeicher geschrieben werden. Es ist bekannt, dass Teile des Plattenspeichers mit unterschiedlichen Geschwindigkeiten rotieren. Lesevorgänge vom äußeren Abschnitt der Platte erfordern mehr Daten pro Einheit Zeit als Lesevorgänge vom inneren Abschnitt. Der Unterschied kann sogar zweimal pro Zeiteinheit betragen. Bei der vorliegenden Erfindung werden Daten alternativ an die inneren und äußeren Abschnitte der Plattenspeicher geschrieben, während Videodaten über dem Plattenarray gestreift werden. Dies erhöht die Durchschnittsmenge von Videodaten, die pro Einheit Zeit gelesen werden können.
  • Betrieb
  • Datenkomprimierung und -speicherung
  • Die Videodaten auf dem Videoserver werden auf den Plattenlaufwerken organisiert, die die Datenspeicherungsteilsysteme aufweisen, indem ein gegebener Film in mehrere Stücke geteilt wird, die dann auf den Platten, die das Teilsystem aufweisen, verteilt werden. Diese Technik wird hierin als „Datenabstreifung" bezeichnet. Jeder Film wird in dieser Weise auf eine Mehrzahl von Platten gestreift, wenn der Film verwendet wird.
  • Die vorliegende Erfindung geht davon aus, dass die Videodaten an dieselbe in komprimierter Form geliefert werden. Die MPEG- und JPEG-Formate sind beide bekannt und können bei der vorliegenden Erfindung verwendet werden. Ein Großteil der, wenn nicht die gesamte Dekomprimierung tritt am Anschluss des Benutzers auf. Das spezielle Komprimierungs/Dekomprimierungsverfahren, das verwendet wird, ist kein wesentlicher Bestandteil der vorliegenden Erfindung. Tatsächlich müssen bestimmte Benutzer, wie z. B. Filmeditoren, mit Videodaten arbeiten, die nicht komprimiert worden sind. Die vorliegende Erfindung kann genauso einfach solche Daten speichern wie sie komprimierte Videodaten speichern kann, und die Verwendung solcher Daten würde nur die Menge von Daten beeinträchtigen, die gespeichert werden kann, und nicht den Betrieb der vorliegenden Erfindung.
  • Sobald die komprimierten Videodaten empfangen worden sind, werden sie an die Plattenlaufwerke, die einen Teil des Datenspeicherungssystems aufweisen, in Blöcke der Größe N geschrieben. Bei diesem ersten Ausführungsbeispiel ist die Blockgröße 128 KByte von Daten. Das erste Plattenlaufwerk in dem logischen Array von Plattenlaufwerken empfängt die ersten 128 KByte, das zweite empfängt die nächsten 128 KByte usw. Nachdem das letzte Plattenlaufwerk in den logischen Arrays seine Blöcke von Daten empfangen hat, wird das Schreiben bei der ersten Platte wieder aufgenommen, bis der gesamte Film an die Platten geschrieben worden ist.
  • Die Forderungen nach benutzerangeforderten FF und FR erfordern besondere Beachtung. Da alle Videodaten bereits in dem Datenspeicherungssystem gespeichert sind, scheint zumindest FF eine einfache Aufgabe zu sein. Leider können die Videodaten nicht einfach mit einer schnelleren Rate gelesen und dann durch das Verteilungsnetz an den Benutzer gesendet werden. Dies würde einen Datenstrom mit illegalen Zeitgebungsstempeln erzeugen, die durch die STB des Benutzers nicht decodiert werden können. Ein schnelleres Lesen der Daten und nur Senden eines Abschnitts derselben an die Benutzer erzeugt ebenfalls einen illegalen Datenstrom. Für FR scheitern diese Verfahren ebenfalls, da ein Film, der im MPEG-Format komprimiert ist, nicht rückwärts gespielt werden kann. Wenn beliebige Bilder unter Verwendung dieser Verfahren wiedergewonnen werden könnten, wären diese Bilder von geringer Qualität und würden eine Echtzeitverarbeitung der Videodaten sowie die Zusammenarbeit des STB des Benutzers erfordern.
  • Bei der vorliegenden Erfindung wird von jedem Film eine separate FF- und FR-Version erzeugt. Ein vorbestimmter Prozentsatz der Rahmen in der unkomprimierten Spielversion der Videodaten wird gelöscht. Details, die ein Benutzer während des Betrachtens von Videodaten in FF und FR nicht beobachten kann, werden dann aus den verbleibenden Rahmen gelöscht. Die ausgewählten und editierten Rahmen werden dann erneut komprimiert und in einem legalen komprimierten Format gespeichert. Die FR-Version erfordert, dass die editieren Rahmen im Vergleich zur FF-Version in einer umgekehrten Reihenfolge gespeichert werden. Ein erneutes Umordnen der Rahmen, um die FR-Version zu erzeugen, kann vor oder nach einer Komprimierung auftreten. Eine ordnungsgemäße Rahmenauswahl und ordnungsgemäße Eliminierung von nicht notwendigen Einzelheiten kann die ursprüngliche Spielversion der Videodaten um bis zu 98 % reduzieren. Wie bei dem Originalfilm werden die FF- und FR-Version auf den Plattenspeicherungseinheiten gestreift. Wenn der Benutzer die FF- und FR-Funktionen anfordert, werden diese FF- und FR-Versionen des Films verwendet und bei der normalen Systemabspielrate abgespielt. Bei diesem Ausführungsbeispiel spielen die FF- und FR-Version etwa 5 % der Zeit herein, die zum Spielen des Originalfilms erforderlich ist.
  • Dieses Verfahren des Erzeugens und Speicherns von FF- und FR-Versionen der Filme spart sowohl Bandbreite als auch Speicherplatz und erzeugt doch einen hochqualitativen Satz an FF- und FR-Bildern.
  • Ein gegebenes Plattenlaufwerk kann nur eine feststehende Höchstanzahl von Benutzern und ihre zugeordneten Ströme von Videodaten unterstützen. Durch Strifen aller Videodaten auf allen Platten kann eine Benutzerlastausgleichung effizient vorgenommen werden. Wenn alle Benutzer den gleichen Film anfordern, können beispielsweise alle Platten in dem Teilsystem am Liefern der Videodaten teilnehmen, da jede Platte einen Teil des Films enthält. Wenn jeder Benutzer einen anderen Film anfordert, nimmt wiederum jede Platte teil, da jede Platte zumindest einen Teil von jedem Film enthält.
  • Wenn jeder Film nur auf einer Platte gespeichert werden würde, würde der zweite Fall, wo jeder Benutzer einen anderen Film anfordert, immer noch eine adäquate Leistung erbringen, da jede Platte ein einzelnes Individuum unterstützen würde. Wenn alle Benutzer den gleichen Film anforderten, könnten jedoch nur jene Benutzer, die von einer einzelnen Platte unterstützt werden könnten, bedient werden.
  • Benutzerzugriff
  • 7a bis 7d sind Flussdiagramme, die typische Systemoperationen darstellen, die einen Benutzerzugriff und eine Videodatenanzeige involvieren. Bei Schritt 201 macht ein Benutzer, durch seine oder ihre STB, eine Anforderung, die über einen der Kommunikationskanäle im Verteilungsnetz 20 (siehe 1) an die Echtzeitsteuerung 60 (2) übertragen wird, um ein Videodatenprogramm zu starten. Bei Schritt 203 leitet die Echtzeitsteuerung diese Anforderung an das Steuerungssystem 50 weiter (2), um zu bestimmen, ob dem Benutzer ein Zugriff auf das System gewährt wird. Das Steuerungssystem 50 kann dann dem Benutzer einen Systemzugriff gewähren und den Film finden, den der Benutzer bei Schritt 205 anforderte. Bei Schritt 207 befiehlt das Steuerungssystem 50 der Echtzeitsteuerung 60, mit dem Abspielen des Filmes zu beginnen.
  • Zu einem beliebigen gegebenen Zeitpunkt wird das angeforderte Videodatenprogramm nicht auf ein Plattenarray gestreift, es sei denn, der Film ist sehr populär. Ein Überschreiben des Videodatenprogramms vom Archivspeicherungssystem an ein Plattenarray kann mehrere Minuten dauern, speziell, wenn der Videoserver stark ausgelastet ist. In solchen Fällen kann die Latenz ein akzeptables Limit überschreiten.
  • Um dieses Problem zu minimieren, können die ersten fünf Minuten der zweihundert populärsten Filme auf ein oder mehrere Plattenarrays „im voraus- gestreift" werden. Eine Anforderung nach einem dieser Filme würde mit den im voraus gestreiften Videodaten schnell bedient werden, während der Rest des Videodatenprogramms von der Archivspeicherung abgerufen und an das Plattenarray überschrieben wird. Da die Videodaten schneller überschrieben als sie verwendet werden, führt dieses Verfahren dazu, dass der Benutzer beim Empfangen der angeforderten Videodaten einige Verzögerungen erlebt. Die Liste von im voraus gestreiften Programmen könnte periodisch verändert werden.
  • Sobald die Echtzeitsteuerung 60 einen Befehl empfängt, ein Abspielen eines Filmes zu beginnen, beginnt sie einen Vorabruf, um die entsprechenden Puffer in der Datenquelle 100 (2) zu füllen. Dies geschieht bei Schritt 209 in 7b.
  • Nachdem dem Benutzer ein Zugriff auf das System gewährt worden ist, werden weitere VCR-Befehle, wie z. B. Pause und FF/FR, exklusiv durch die Echtzeitsteuerung 60 gehandhabt, die mit dem Datenspeicherungssystem, den Datenquellen und den Schaltern interagiert. Die Systemsteuerung ist in diese Anforderungen nicht involviert.
  • Schneller Vorabruf beim Starten
  • Wie zuvor angegeben, sind die Videodatenprogramme in einem „gestreiften" Muster auf Plattenlaufwerksarrays 92 gespeichert, die den kurzfristige Speicherungsabschnitt des Datenspeicherungssystems 90 aufweisen (siehe 2).
  • Die FIFO-Speicherpuffer in der zugeordneten Datenquelle sind entweder leer oder sie enthalten nichtrelevantes Material von einer früheren Zuordnung. Die Systemressourcen erlauben, dass die Datenquelle der Plattenlaufwerksschnittstelle (siehe 6) befiehlt, Daten von mehreren der Platten 97, über die der Film gestreift worden ist, gleichzeitig zu holen. Diese geholten Videodaten werden in se rieller Weise an die Datenquelle 100 übertragen, wobei die FIFO-Speicherpuffer möglichst schnell gefüllt werden. Dieses Verfahren, das hierin als „schneller Vorabruf beim Starten" bezeichnet wird, stellt sicher, dass jeder Benutzer unmittelbar genügend Daten in seinen zugeordneten FIFO-Speicherpuffern hat, um eine ununterbrochene Übertragung für einen Zeitraum von einigen Sekunden sicherzustellen.
  • Bei Schritt 211 weist eine Echtzeitsteuerung 60 dem Benutzer einen Benutzerzeitschlitz (UTS = user time slot) zu.
  • Benutzerzeitschlitz
  • Wenn nur einem einzelnen Benutzer der Zugriff auf ein einzelnes Array von Plattenlaufwerken erlaubt würde, bestünde kein Bedarf, die Videodaten auf dem Plattenlaufwerksarray zu streifen. Alle drei Versionen eines Videodatenprogramms könnten auf einer Platte angeordnet sein, wobei eine zweite Platte möglicherweise als Sicherung dient. Der Videoserver würde dann sequentiell von der Platte lesen, wobei er irgendeine Version der Videodaten, die der Benutzer anforderte, verwendet. Obwohl dieses Verfahren zur Verwendung konzeptionell einfach wäre, kann nicht ein beliebiger Videoserver, der ein separates Plattenlaufwerk jedem Benutzer widmet, für eine große Anzahl von Benutzern wirtschaftlich nicht praktikabel sein.
  • Da der hierin beschriebene Videoserver in all seinen Ausführungsbeispielen ein Bedienen vieler Benutzer gleichzeitig berücksichtigt, ist ein effizienteres Verfahren zum Maximieren der Plattenausnutzung notwendig.
  • Jede Platte in einem beliebigen der Plattenarrays, das verwendet wird, kann Videodaten an die Videoquelle, mit der sie gekoppelt ist, mit einer viel schnelleren Rate als irgendein Benutzer, der mit der Datenquelle gekoppelt ist, die Daten nutzen kann, lesen und übertragen. Angesichts der maximal beibehaltenen Videodatenleserate der Platte wird eine vorbestimmte Zeitdauer, die hierin als das Masterzeitintervall bezeichnet wird, ausgewählt. Die exakte Länge dieses Intervalls ist von der Konfiguration des Systems und den Typen von verwendeten Platten abhängig. Daher kann sie von einem Videoserver zum nächsten variieren, ohne die Lehre der vorliegenden Erfindung in irgendeiner Weise zu verändern. Die Menge von Videodaten, die im Masterzeitintervall gelesen werden, wird durch die Durchschnittsmenge von Daten, die ein Individuum benötigt, geteilt. Das Ergebnis ist die Anzahl von Benutzern, die die Platte während eines jeden Masterzeitintervalls unterstützen kann, und stellt die Anzahl von Benutzerzeitschlitzen dar, die in jedem Masterzeitintervall verfügbar sind. Indem jedem Benutzer, der mit dem gleichen Array von Plattenlaufwerken gekoppelt ist, ein spezieller Benutzerzeitschlitz in einem gegebenen Masterzeitintervall zugewiesen wird, können Konflikte über einen Plattenzugriff eliminiert und die Anzahl von Benutzern, die durch ein gegebenes Plattenlaufwerksarray zuverlässig unterstützt werden können, kann maximiert werden.
  • 8 ist ein Zeitgebungsdiagramm, das zeigt, wie die Masterzeitintervalle, Benutzerzeitschlitze und die Datenabstreifung der vorliegenden Erfindung einen Benutzerressourcenkonflikt bezüglich Plattenzugriff und Daten verhindern. Das in 8 dargestellte Array besteht aus drei Plattenlaufwerken, den Platten 1, 2 und 3. Die Masterzeitintervalle TM1, TM2, TM3 und TM4 erstrecken sich über X oder die Zeitachse der Figur. Innerhalb eines jeden Masterzeitintervalls ist im voraus bestimmt worden, dass acht Benutzer pro Platte mit Videodaten versorgt werden können, ohne einen unzureichenden Dienst für einen speziellen Benutzers zu riskieren. Daher ist jedes Masterzeitintervall in acht Benutzerzeitschlitze aufgeteilt worden, die gezeigt sind, wie sie jedes Masterzeitintervall unterteilen. Auch muss wiederholt werden, dass die Videodaten auf dem Plattenarray gestreift worden sind. Die Streifenanzahl zeigt die Streifenindizes des Videodatenprogramms an, das auf den drei Platten gestreift worden ist, die dieses Plattenarray aufweisen. „S" zeigt die Gesamtanzahl von Streifen in dem Videodatenprogramm an.
  • Innerhalb eines beliebigen Zeitschlitzes kann nur ein Benutzer auf eine beliebige Platte zugreifen. 8 zeigt den Zugriff auf die Platte in einem Zeitschlitz durch einen Benutzer mit einem dunklen „*" an.
  • Im Zeitschlitz 1 des Masterzeitintervalls TM1 liest der Benutzer V1 einen Streifen 1 von der Platte 1. Der Benutzer V2 liest einen Streifen 1 im Zeitschlitz 2. Die Benutzer V1 und V2 bewegen sich dann parallel durch das Plattenarray, lesen den Streifen 2 von der Platte 2 in jeweilige Zeitschlitze 1 und 2 des Masterzeitintervalls TM2 ein und lesen den Streifen 3 von der Platte 3 in jeweilige Zeitschlitze 1 und 2 des Masterzeitintervalls TM3 ein. Da sich der Streifen 4 auf der Platte 1 befindet, kehren die Benutzer V1 und V2 zur Platte 1 im Masterzeitintervall TM4 zurück, lesen den Streifen 4 in den Zeitschlitzen 1 bzw. 2. Die Benutzer V3 und V4 greifen auf die gleichen Videodaten wie die Benutzer V1 und V2 zu, jedoch von denselben zeitlich versetzt. Den Benutzern V3 und V4 sind die Zeitschlitze 3 und 4 zugewiesen worden, und sie fahren parallel in ähnlicher Weise wie V1 und V2 fort. Im Masterzeitintervall TM3 lesen die Benutzer V3 und V4 den zweiten Streifen der Videodaten von der zweiten Platte in den Zeitschlitzen 3 bzw. 6. Im Masterzeitintervall TM4 lesen die Benutzer V3 und V4 den Streifen 3 von der Platte 3 in den gleichen jeweiligen Zeitschlitzen.
  • Der Benutzer V5 beginnt ein Lesen von Videodaten im Masterzeitintervall TM3, und ihm wird der Zeitschlitz 3 zugewiesen. Obwohl dem Benutzer V3 der Zeitschlitz 3 zugewiesen worden ist, greifen die Benutzer V5 und V3 stets auf andere Platten in ihrem Zeitschlitz zu. Ihr Zugriff auf die gleiche Platte ist stets um zumindest ein Masterzeitintervall versetzt. Dies ermöglicht eine maximale Ausnutzung der Plattenlaufwerke ohne irgendwelche Konflikte.
  • Das Array, das in 8 dargestellt ist, kann eine adäquate Speicherunterstützung für acht Benutzer pro Platte pro Masterzeitintervall ermöglichen, wobei 24 Benutzer pro Masterzeitintervall die maximale Last des dargestellten Arrays sind. Wenn ein 25. Benutzer einen Zugriff auf das Plattenarray anfordert, würde der Zugriff verweigert werden. Es wird darauf hingewiesen, dass nur ein Benutzer zu einem beliebigen Zeitpunkt auf eine gegebene Platte zugreift.
  • 9 ist ein Flussdiagramm des Verfahrens des Zuweisens eines UTS. Das UTS-Modell wird bei Schritt 250 initialisiert und wartet darauf, dass ein Benutzer eine Anforderung bei Schritt 252 startet. Wenn die Anforderung empfangen worden ist, können einige Platten die Benutzer bedienen. Dieser Zeitpunkt, wenn die Anforderung empfangen wird, wird als der „aktuelle Zeitschlitz" bezeichnet. Die verbleibenden Schritte im Flussdiagramm, das in 9 gezeigt ist, werden innerhalb der Zeitdauer, die durch den aktuellen Zeitschlitz definiert ist, ausgeführt.
  • Sobald die Anforderung empfangen worden ist, bestimmt das System, welche Platte den ersten Datenblock enthält, der durch den Benutzer angefordert wird. Sobald das System bestimmt hat, welche Platte den ersten Datenblock enthält, untersucht das System diese Platte, um zu bestimmen, ob es die Anforderung des Benutzers realisieren kann. Jede Platte weist eine Tabelle auf, die anzeigt, welche UTSs durch die Benutzer besetzt sind. Das System untersucht die Tabelle unter Verwendung eines Index, der als „SIndex" bezeichnet wird. SIndex wird auf den Wert „aktueller Zeitschlitz" initialisiert, und auf die entsprechende Plattentabelle wird zugegriffen (Schritt 253). Das System untersucht dann die UTS-Tabelle der Platte, wobei der Tabellenindex mit SIndex gleichgesetzt ist.
  • Die Tabelle zeigt an, ob der UTS, auf den durch SIndex gezeigt wird, bereits durch einen anderen Benutzer besetzt ist (Schritt 254). Wenn der UTS verfügbar ist, wird er dem Benutzer zugewiesen und der Benutzer holt sofort die Daten von der Platte (Schritt 258). Wenn der UTS nicht verfügbar ist, wird SIndex inkrementiert (Schritt 260). Die Differenz zwischen SIndex und dem aktuellen Zeitschlitz wird dann untersucht (Schritt 262). Wenn diese Differenz eine Schwelle für eine akzeptable Benutzerlatenz überschreitet, wird der Prozess beendet und verweist den aktuellen Benutzer vom aktuellen UTS (Schritt 264).
  • Ein Verweisen eines Benutzers führt nicht zur Unterbrechung dieses Videodatenprogramms des Benutzers. Bei einem Verfahren, das nachstehend beschrieben ist, sind die FIFO-Speicherpuffer, die jedem Benutzer zugewiesen sind, tendenziell nahezu vollständig voll. Verliert man seinen Zeitschlitz in einem speziellen Masterzeitintervall, führt dies lediglich dazu, dass die Videodaten in den FIFO-Speicherpuffern verwendet werden. Bevor alle Videodaten verwendet worden sind, wird dem verwiesenen Benutzer erneut ein Zeitschlitz zugewiesen.
  • Wenn die bei Schritt 262 bewertete Latenz nicht überschritten worden ist, kehrt die Steuerung zu Schritt 254 zurück. Diese Berechnungen geschehen in der Datenschnittstelle, die das Plattenarray steuert.
  • Schneller Plattenabruf
  • Bei typischen Operationen werden viele Benutzer auf Filme zugreifen, die auf den Plattenlaufwerksarrays gespeichert sind, die mit einer einzelnen Datenquelle gekoppelt sind. Die Rate, mit der ein Benutzer die Daten nutzen kann, ist festgelegt. Bei diesem bevorzugten Ausführungsbeispiel benötigen die meisten Benutzer etwa 3 Megabit von Videodaten pro Sekunde. Die Benutzer einer gemeinsamen Datenquelle können eventuell die gleiche Datenverbrauchsrate aufweisen, oder sie können unabhängige Raten aufweisen. Dies beeinträchtigt den Betrieb der vorliegenden Erfindung nicht. Für einen optimalen Betrieb und um ein Zugreifen auf die richtigen Videodaten von der Ersatzdatenquelle in dem Fall zu ermöglichen, dass die zugeordnete Datenquelle oder ihr zugeordnetes Datenspeicherungsteilsystem ausfällt, sollten die einzelnen FIFO-Speicherpuffer in den Datenquellen so voll wie möglich gehalten werden.
  • Bei der vorliegenden Erfindung werden die Daten von den Plattenarrays mit einer Rate abgerufen, die etwas größer als die durchschnittliche Rate ist, mit der die Daten verwendet werden. Dies hält die FIFO-Speicherpuffer durchschnittlich näher an einem vollen Zustand als an einem leeren Zustand. Da die Systemausnutzung erwartungsgemäß hoch sein soll, gelingt es dem stochastischen Prozess des Befüllens der Puffer mit einer schnelleren Rate als die Daten verwendet werden nicht immer, den Puffer vollständig voll zu halten, jedoch stellt er tendenziell sicher, dass sie sich ihrer maximalen Kapazität nähern. Diese aggressive Zeitplanung ist mit Videodaten möglich, da sie mit einer konstanten Rate über einen sehr langen Zeitraum beibehalten wird.
  • 10 ist ein Diagramm, das die Menge von Videodaten in einem typischen FIFO-Speicherpuffer in der vorliegenden Erfindung über einen Zeitraum zeigt. TD stellt die Menge der Zeit dar, die eine volle Operation von dem Plattenarray benötigt, und TC stellt die Menge der Zeit dar, die eine Entleerungsoperation von den FIFO-Speicherpuffern erfordert. Die FIFO-Speicherpuffer 101 und 103 (4) werden vom Speicherungssystem 90 (siehe 2 und 3) während der Zeiten TD befüllt und während der Zeiten TC geleert. Obwohl 10 zeigt, wie Befüllungs- und Entleerungsoperationen in sequentieller Weise eintreten, treten diese Operationen tatsächlich gleichzeitig auf, da die Speicherpuffer als FIFO-Puffer funktionieren.
  • Wie 10 zeigt, ist die durchschnittliche Befüllungsrate etwas höher als die durchschnittliche Entleerungsrate, was sicherstellt, dass die Puffer tendenziell voller werden, während die Operation fortgesetzt wird. Wenn die Puffer sich einer vollständigen Befüllung nähern, wird eine Befüllungsoperation übersprungen. Dies ist durch TSkip in 10 angezeigt. Der schnelle Vorabruf beim Start ist ebenfalls in 10 als Zeit TP dargestellt. TP sollte vorzugsweise < 3 TD sein.
  • Gelegentlich muss einem neuen Benutzer ein UTS unmittelbar erteilt werden und ein aktueller Benutzer muss verwiesen werden. Für den verwiesenen Benutzer werden ein oder mehr Befüllungszyklen ausgelassen. TSkip könnte in dieser Bedingung begründet sein. Da die Puffer nahezu voll gehalten worden sind, führt ein Überspringen des Befüllungszyklus nicht zu einem Verlust des Dienstes gegenüber dem verwiesenen Benutzer.
  • Videodatenanzeigemodi
  • Sobald der UTS zugewiesen worden ist, beginnt bei Schritt 213 (7b) das Playback und das System tritt in einen neuen Betriebsmodus ein. In diesem Modus überprüft das System bei Schritt 215 zuerst, ob ein VCR-Befehl vom Benutzer übertragen worden ist. Wenn kein Befehl empfangen worden ist, überprüft das System bei Schritt 233 das Ende des Films, der angefordert wurde. Wenn der Film noch nicht beendet worden ist, kehrt das System zu Schritt 215 zurück.
  • Wenn ein VCR-Befehl bei Schritt 215 empfangen wurde, überprüft das System zuerst bei Schritt 217, ob der Befehl ein Pause-Befehl ist (7d). Wenn der Befehl Pause ist, wird das Steuerungssystem 50 bei Schritt 219 benachrichtigt, der Film in den Pausezustand versetzt, der UTS freigegeben, jedoch werden die zugewiesenen Puffer in der Datenquelle 101 nicht freigegeben. Bei einigen Ausführungsbeispielen der vorliegenden Erfindung würde die Echtzeitsteuerung angewiesen, anzunehmen, dass entweder ein FF- oder ein FR-Befehl kurz nach einem Pause-Befehl folgt, und die Echtzeitsteuerung würde der Datenquelle befehlen, den Vorabruf von entweder der FF- oder der FR- oder von beiden Versionen des Films, der betrachtet wird, zu beginnen. In jedem Ausführungsbeispiel kehrt das System bei Schritt 221 zum Warten auf den Befehlsbetriebsmodus zurück.
  • Wenn der bei Schritt 215 empfangene Befehl ein Pause-Befehl ist, dann muss er ein FF-, FR- oder Spiele-Befehl sein. In diesem Fall wird das Steuerungssystem bei Schritt 223 benachrichtigt, ein Vorabruf der relevanten Version des angeforderten Films wird bei Schritt 225 geordert, ein neuer UTS wird bei Schritt 227 zugewiesen, wenn der ursprüngliche UTS freigegeben wurde, der neue Film wird bei Schritt 229 abgespielt und das Warten auf einen Befehlsbetriebsmodus beginnt erneut bei Schritt 231.
  • FF-/FR-Betrieb
  • Die FF- und FR-Versionen von Filmen werden als separate Filme gespeichert und auf den Plattenspeichern gestreift. Das Layout der FF- und FR-Versionen der Filme ist so, dass, wenn ein Benutzer zwischen Spielen, FF und FR in einer beliebigen Reihenfolge schaltet, sie sich immer noch in demselben UTS und auf der gleichen Platte befinden. Dies macht eine Platten- und Benutzer-I/O-Zeitplanung auf unterer Ebene unabhängig vom Betriebsmodus, den der Benutzer anfordert.
  • Das Diagramm von 11 und die Flussdiagramme von 12a bis d stellen dar, wie FF und FR bei der vorliegenden Erfindung ausgeführt werden. Die Nummern in 11 sind Programmstreifenindizes und werden hierin als die Position des Films bezeichnet. Wenn das System ein Video spielt und ein Vorspulen anfordert, findet das System die nächste frühere Position der FF-Filmversion, die auf der Platte gestreift ist, auf die der Benutzer derzeit zugreift (12a, Schritt 301). Sobald diese Position gefunden worden ist, beginnt das System, die FF-Version des Films an diesem Punkt zu spielen (Schritt 303). Dies ist in 11 in der ersten Spalte gezeigt. Hier wird der Befehl an der Position 21 in der normalen Filmversion empfangen. Der nächste frühere FF-Abschnitt des Films ist Segment 1. Die FF-Version wird an dieser Position gestartet.
  • Das Schalten von FF auf Spielen involviert ein Finden des nächsten früheren Segments des Films auf der normalen Version des Videodatenprogramms (Schritt 305, 12b). Sobald diese Position gefunden ist, beginnt das Spielen an diesem Punkt (Schritt 307). Wie in 11, dritte Spalte, gezeigt ist, wird der Spielbefehl empfangen, wenn das FF-Segment 20 gespielt wird. Auf der Platte 3 ist das nächste frühere Segment der Spielversion 19, was dort ist, von wo aus die Spielversion abgespult wird.
  • Das Schalten vom Spielmodus in FR erfordert, dass das System das nächste spätere Zeitsegment auf der FR-Version des Videodatenprogramms findet, das auf der Platte gespeichert ist, auf die zugegriffen wird (Schritt 309, 12c). Die FR-Version wird dann ab diesem späteren Punkt gespielt. In 11, zweite Spalte, ist die Spielversion des Videodatenprogramms bei Segment 26. Das nächste spätere Segment der FR-Version des Videodatenprogramms, das auf der gleichen Platte gespeichert ist, ist Segment 60. Von hier aus wird die FR-Version gespielt.
  • Schließlich erfordert das Schalten von FR in ein normales Spielen, dass der nächste frühere Punkt der Spielversion des Videodatenprogramms, das auf der gleichen Platte gespeichert ist, die die FR-Version derzeit verwendet, gefunden wird (Schritt 311, 12d). Die Spieloperationen werden ab diesem Punkt (Schritt 313) fortgesetzt. In 11, Spalte vier, wird das FR-Versionssegment 40 gezeigt, wenn der Befehl empfangen wird, um zum Spielmodus zurückzukehren. Dieses nächste frühere Segment der Spielversion auf der gleichen Platte ist das Segment 40, von wo aus die Spieloperationen fortgesetzt werden.
  • Wenn das System bei Schritt 233 (7b) bestimmte, dass das Videodatenprogramm, das betrachtet wird, beendet ist, dann gibt das System bei Schritt 235 (7c) den UTS, die FIFO-Puffer in der Datenquelle 100 sowie beliebige andere Systemressourcen frei, die dem Benutzer zugewiesen worden waren. Am Ende des Videodatenprogramms kann es eine Pause geben, um dem Benutzer zu ermöglichen, rückzuspulen und einen Abschnitt des Films erneut zu betrachten, bevor die Systemfreigaben auftreten. Zahlreiche solche Betrachtungsoptionen können angeboten werden, ohne die vorliegende Erfindung in irgendeiner Weise zu verändern. Ein Menü von verfügbaren Diensten taucht dann auf (Schritt 237), und das System kehrt zum Warten auf den Befehlsmodus bei Schritt 239 zurück. Wenn der Benutzer bereit ist, die Verwendung des Systems (Schritt 241) zu beenden, wird das Steuerungssystem bei Schritt 245 benachrichtigt, und alle Ressourcen werden freigegeben. Wenn der Benutzer nicht bereit ist, Schluss zu machen, kehrt die Operation zu Schritt 201 (7a) zurück.

Claims (4)

  1. Ein Verfahren zum Versehen eines Benutzers, der mit einem Kommunikationskanal gekoppelt ist, mit Videodaten, wobei das Verfahren folgende Schritte aufweist: Speichern einer Mehrzahl von Videodatenprogrammen, wobei der Schritt des Speicherns einer Mehrzahl von Videodatenprogrammen ferner folgende Schritte aufweist: Aufbauen einer Mehrzahl von Arrays von Datenspeicherungseinheiten (97); Speichern jedes der Mehrzahl von Videodatenprogrammen auf zumindest einem der Arrays von Datenspeicherungseinheiten (97); Teilen des Videodatenprogramms in eine Mehrzahl von Datenblöcken, wobei jeder Datenblock eine vordefinierte Größe aufweist; Speichern eines ersten Datenblocks auf einer ersten Datenspeicherungseinheit (97) des Arrays von Datenspeicherungseinheiten (97); Speichern aufeinanderfolgender Datenblöcke auf aufeinanderfolgenden Datenspeicherungseinheiten (97); und Wiederholen der Schritte des Speicherns eines ersten Datenblocks und des Speicherns aufeinanderfolgender Datenblöcke; Abrufen eines Videodatenprogramms, wenn eine Anforderung nach dem Videodatenprogramm von dem Benutzer durch den Kommunikationskanal empfangen wird; Formatieren des abgerufenen Videodatenprogramms für eine Übertragung zu dem Benutzer; und Übertragen des formatierten Videodatenprogramms zu dem Benutzer; dadurch gekennzeichnet, dass jedes Videodatenprogramm aus einer Abspielversion, einer Schnellvorlaufversion und einer Schnellrücklaufversion gebildet ist, wobei die Abspiel-, die Schnellvorlauf- und die Schnellrücklaufversion jeweils in Datenblöcke geteilt sind, wobei der erste Datenblock jeder der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion auf der ersten Datenspeicherungseinheit (97) gespeichert ist und aufeinanderfolgende Datenblöcke der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion auf aufeinanderfolgenden Datenspeicherungseinheiten (97) gespeichert sind, wobei der Prozess zum Speichern auf der ersten und auf aufeinanderfolgenden Datenspeicherungseinheiten weitergeht, bis der letzte Datenblock jeder Version auf einer Datenspeicherungseinheit (97) gespeichert wurde, wobei das Verfahren ferner folgende Schritte aufweist: Annehmen einer Anforderung von einem Benutzer nach irgendeiner der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion während einer Lieferung eines Videodatenprogramms zu dem Benutzer; und wobei, wenn der Benutzer von einer ersten Version zu einer zweiten Version eines Videodatenprogramms umschaltet, das Verfahren ferner ein Auswählen eines nächsten Datenblocks der zweiten Version, die auf der gleichen Datenspeicherungseinheit (97) wie der Datenblock der ersten Version gespeichert ist, auf die aktuell zugegriffen wird, in Abhängigkeit von dem Datenblock der ersten Version, von der umgeschaltet wird, und ein Durchführen der Abruf-, Formatier- und Übertragungsschritte hinsichtlich des Datenblocks der zweiten Version aufweist.
  2. Ein Verfahren gemäß Anspruch 1, bei dem eine vordefinierte Anzahl der Mehrzahl von Videodatenprogrammen in einer Bandspeicherungseinheit gespeichert sind und das ferner folgende Schritte aufweist: Bestimmen, ob der Benutzer ein Videodatenprogramm angefordert hat, das in der Bandspeicherungseinheit gespeichert ist; und Umschreiben des angeforderten Videodatenprogramms, das in der Bandspeicherungseinheit gespeichert ist, zu einem Array von Datenspeicherungseinheiten (97) unter Verwendung der Schritte des Teilens, Speicherns eines ersten Datenblocks, Speicherns aufeinanderfolgender Datenblöcke und Wiederholens der Speicherschritte, falls die Anzahl von Datenblöcken die Anzahl von Datenspeicherungseinheiten (97) in dem Array von Datenspeicherungseinheiten (97) überschreitet.
  3. Ein Verfahren gemäß Anspruch 1, bei dem die Schnellvorlauf- und die Schnellrücklaufversion einen vordefinierten Bruchteil der Abspielversion aufweisen, wobei die Videodaten der Schnellvorlaufversion in der gleichen Reihenfolge wie die Videodaten der Abspielversion aufgezeichnet sind und die Videodaten der Schnellrücklaufversion in umgekehrter Reihenfolge wie die Videodaten der Abspielversion aufgezeichnet sind.
  4. Ein System zum Liefern von zumindest Videodaten zu einer Mehrzahl von Benutzern, wobei das System folgende Merkmale aufweist: ein Datenspeicherungssystem (90) zum Speichern einer Mehrzahl von Videodatenprogrammen; eine Mehrzahl von Datenquellen (100), die mit dem Datenspeicherungssystem (90) gekoppelt sind, zum Formatieren der Videodaten, die aus dem Datenspeicherungssystem abgerufen werden, für eine Übertragung; einen ersten Schalter (80), der mit jeder der Datenquellen (100) und mit einer Mehrzahl von Kommunikationskanälen gekoppelt ist, wobei der Schalter (80) die gepackten Videodaten von einer Datenquelle (100) zu einem Kommunikationskanal richtet; eine erste Steuerung (60), die mit dem ersten Schalter, den Datenquellen (100) und dem Datenspeicherungssystem (90) gekoppelt ist, wobei die erste Steuerung (60) die Verbindung des Datenspeicherungssystems (90) mit den Datenquellen (100), der Datenquellen (100) mit dem Schalter (80) und des Schalters (80) mit dem Kommunikationskanal steuert, wobei die erste Steuerung (60) die Verbindungen ansprechend auf Ereignisse, einschließlich Benutzeranforderungen, die von Benutzern über die Kommunikationskanäle empfangen werden, herstellt; und eine zweite Steuerung (50), die mit der ersten Steuerung (60) gekoppelt ist, wobei die zweite Steuerung (60) einen Systemzugriff durch Benutzer steuert, dadurch gekennzeichnet, dass das Datenspeicherungssystem (90) eine Mehrzahl von Arrays von Datenspeicherungseinheiten (97) umfasst, wobei jedes der Mehrzahl von Videodatenprogrammen auf zumindest einem der Ar rays von Datenspeicherungseinheiten (97) gespeichert ist und eine Abspielversion, eine Schnellvorlaufversion und eine Schnellrücklaufversion aufweist, wobei die Abspiel-, die Schnellvorlauf- und die Schnellrücklaufversion in Datenblöcke einer vordefinierten Größe geteilt sind, wobei der erste Datenblock jeder der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion auf einer ersten Datenspeicherungseinheit (97) des Arrays gespeichert ist und aufeinanderfolgende Datenblöcke der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion auf aufeinanderfolgenden Datenspeicherungseinheiten (97) des Arrays gespeichert sind, wobei das System angeordnet ist, um eine Anforderung von einem Benutzer nach einer Lieferung einer der Abspiel-, der Schnellvorlauf- und der Schnellrücklaufversion während einer Lieferung einer Version des Videodatenprogramms zu dem Benutzer anzunehmen, und wobei, wenn eine Übertragung zu einem Benutzer von einer ersten Version zu einer zweiten Version eines Videodatenprogramms umgeschaltet wird, das System angeordnet ist, um einen nächsten Datenblock der zweiten Version, die auf der gleichen Datenspeicherungseinheit (97) wie der Datenblock der ersten Version, auf die gegenwärtig zugegriffen wird, gespeichert ist, in Abhängigkeit von dem Datenblock der ersten Version, von der umgeschaltet wird, auszuwählen und die zweite Version beginnend von dem ausgewählten nächsten Datenblock zu dem Benutzer zu liefern.
DE69534861T 1994-06-30 1995-06-09 Netzwerkvideoanbietersystem Expired - Fee Related DE69534861T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US269796 1994-06-30
US08/269,796 US5606359A (en) 1994-06-30 1994-06-30 Video on demand system with multiple data sources configured to provide vcr-like services

Publications (2)

Publication Number Publication Date
DE69534861D1 DE69534861D1 (de) 2006-05-11
DE69534861T2 true DE69534861T2 (de) 2006-09-28

Family

ID=23028684

Family Applications (2)

Application Number Title Priority Date Filing Date
DE69534861T Expired - Fee Related DE69534861T2 (de) 1994-06-30 1995-06-09 Netzwerkvideoanbietersystem
DE69529949T Expired - Fee Related DE69529949T2 (de) 1994-06-30 1995-06-09 Videoserversystem

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE69529949T Expired - Fee Related DE69529949T2 (de) 1994-06-30 1995-06-09 Videoserversystem

Country Status (4)

Country Link
US (2) US5606359A (de)
EP (2) EP0698999B1 (de)
JP (3) JPH0818947A (de)
DE (2) DE69534861T2 (de)

Families Citing this family (534)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6970834B2 (en) * 1990-06-15 2005-11-29 Arachnid, Inc. Advertisement downloading computer jukebox
US5253275A (en) 1991-01-07 1993-10-12 H. Lee Browne Audio and video transmission and receiving system
US5132992A (en) * 1991-01-07 1992-07-21 Paul Yurt Audio and video transmission and receiving system
US20080228517A1 (en) * 1992-03-06 2008-09-18 Martin John R Computer jukebox and jukebox network
CA2139861A1 (en) * 1992-07-08 1994-01-20 Bernard J. Craig Media server for supplying video and multi-media data over the public telephone switched network
US5495284A (en) * 1993-03-12 1996-02-27 Katz; Ronald A. Scheduling and processing system for telephone video communication
US20030185356A1 (en) * 1993-03-12 2003-10-02 Telebuyer, Llc Commercial product telephonic routing system with mobile wireless and video vending capability
US7019770B1 (en) * 1993-03-12 2006-03-28 Telebuyer, Llc Videophone system for scrutiny monitoring with computer control
US6323894B1 (en) * 1993-03-12 2001-11-27 Telebuyer, Llc Commercial product routing system with video vending capability
US8046800B2 (en) * 1993-03-29 2011-10-25 Microsoft Corporation Remotely controlling a video recorder
US20020048448A1 (en) * 1993-03-29 2002-04-25 Microsoft Corporation Pausing the display of a television program as a signal including the television program is received
US5583868A (en) * 1994-07-25 1996-12-10 Microsoft Corporation Method and system for combining data from multiple servers into a single continuous data stream using a switch
NL9401262A (nl) * 1994-08-01 1996-03-01 Sony Telecom Europ Nv Systeem voor telecommunicatie.
US5641319A (en) * 1994-08-10 1997-06-24 Lodgenet Entertainment Corporation Entertainment system for providing interactive video game responses to the game interrogations to the video game engines without being processed by the host computer
JPH0879685A (ja) * 1994-08-31 1996-03-22 Sony Corp ニア・ビデオ・オン・デマンドシステムにおけるプログラム再生装置
US5712976A (en) * 1994-09-08 1998-01-27 International Business Machines Corporation Video data streamer for simultaneously conveying same one or different ones of data blocks stored in storage node to each of plurality of communication nodes
CA2153445C (en) * 1994-09-08 2002-05-21 Ashok Raj Saxena Video optimized media streamer user interface
CA2159416A1 (en) * 1994-09-30 1996-03-31 Masayoshi Hirashima Signal distribution apparatus
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
DK0786121T3 (da) 1994-10-12 2000-07-03 Touchtunes Music Corp System til digital, intelligent audiovisuel gengivelse
US7424731B1 (en) 1994-10-12 2008-09-09 Touchtunes Music Corporation Home digital audiovisual information recording and playback system
US7188352B2 (en) 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
US7349976B1 (en) * 1994-11-30 2008-03-25 Realnetworks, Inc. Audio-on-demand communication system
US5793980A (en) * 1994-11-30 1998-08-11 Realnetworks, Inc. Audio-on-demand communication system
JP3472659B2 (ja) * 1995-02-20 2003-12-02 株式会社日立製作所 映像供給方法および映像供給システム
JPH11506575A (ja) 1995-03-07 1999-06-08 インターバル リサーチ コーポレイション 情報の選択記憶システム及び方法
US5956321A (en) * 1995-03-16 1999-09-21 Kabushiki Kaisha Toshiba Stream scheduling system for real time stream server
US6965724B1 (en) 1995-03-30 2005-11-15 Thomson Licensing S.A. Trick-play modes for pre-encoded video
GB9506493D0 (en) * 1995-03-30 1995-05-17 Thomson Consumer Electronics The implementation of trick-play modes for pre-encoded video
DE69527278T2 (de) * 1995-03-31 2003-02-20 Sony Service Ct Europe Nv Videodienstsystem mit der Funktion eines Videokassettenrekorders
ATE194448T1 (de) 1995-03-31 2000-07-15 Sony Europa Bv System für information auf anfrage
US5699503A (en) * 1995-05-09 1997-12-16 Microsoft Corporation Method and system for providing fault tolerance to a continuous media server system
JP2845162B2 (ja) * 1995-05-10 1999-01-13 日本電気株式会社 データ転送装置
US5793410A (en) * 1995-05-26 1998-08-11 Hyundai Electronics America Video pedestal network
US5940738A (en) * 1995-05-26 1999-08-17 Hyundai Electronics America, Inc. Video pedestal network
US6003030A (en) * 1995-06-07 1999-12-14 Intervu, Inc. System and method for optimized storage and retrieval of data on a distributed computer network
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
JP3154921B2 (ja) * 1995-06-09 2001-04-09 富士通株式会社 ビデオ・オン・デマンドシステムにおける映像再生位置割り出し方式
WO1997003521A2 (en) * 1995-07-11 1997-01-30 Philips Electronics N.V. Video-on-demand system
GB9515344D0 (en) * 1995-07-26 1995-09-20 Int Computers Ltd Multi-media services system
GB9515336D0 (en) * 1995-07-26 1995-09-20 Int Computers Ltd Multi-media services system
US5790794A (en) * 1995-08-11 1998-08-04 Symbios, Inc. Video storage unit architecture
US5905522A (en) * 1995-08-31 1999-05-18 Microsoft Corporation Resource allocation method for interactive televideo system
US5991811A (en) * 1995-09-04 1999-11-23 Kabushiki Kaisha Toshiba Information transmission system utilizing both real-time data transmitted in a normal-in-time direction and in a retrospective-in-time direction
WO1997009827A1 (en) * 1995-09-07 1997-03-13 Nec Australia Pty. Ltd. A distribution system
JPH0983979A (ja) * 1995-09-08 1997-03-28 Fujitsu Ltd 多重ビデオサーバ装置
JPH0991230A (ja) * 1995-09-26 1997-04-04 Matsushita Electric Ind Co Ltd データ転送システム
US5751336A (en) * 1995-10-12 1998-05-12 International Business Machines Corporation Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems
US6963783B1 (en) 1995-10-16 2005-11-08 Packard Bell Nec Audio compression in a wireless remote interface tablet
US5933603A (en) * 1995-10-27 1999-08-03 Emc Corporation Video file server maintaining sliding windows of a video data set in random access memories of stream server computers for immediate video-on-demand service beginning at any specified location
US5829046A (en) * 1995-10-27 1998-10-27 Emc Corporation On-line tape backup using an integrated cached disk array
US5948062A (en) * 1995-10-27 1999-09-07 Emc Corporation Network file server using a cached disk array storing a network file directory including file locking information and data mover computers each having file system software for shared read-write file access
US6061504A (en) * 1995-10-27 2000-05-09 Emc Corporation Video file server using an integrated cached disk array and stream server computers
JP2924739B2 (ja) * 1995-10-30 1999-07-26 日本電気株式会社 動画像データの復号方式
US5903774A (en) * 1995-11-13 1999-05-11 Intel Corporation External network network interface device without interim storage connected to high-speed serial bus with low latency and high transmission rate
EP0812513B1 (de) * 1995-12-01 2000-10-04 Koninklijke Philips Electronics N.V. Datenleseverfahren und -system für eine anzahl von verwendern
JP2882337B2 (ja) * 1996-02-15 1999-04-12 日本電気株式会社 マルチメディア通信端末装置
US6279039B1 (en) * 1996-04-03 2001-08-21 Ncr Corporation Resource management method and apparatus for maximizing multimedia performance of open systems
US6469753B1 (en) 1996-05-03 2002-10-22 Starsight Telecast, Inc. Information system
US6052797A (en) * 1996-05-28 2000-04-18 Emc Corporation Remotely mirrored data storage system with a count indicative of data consistency
US5901327A (en) * 1996-05-28 1999-05-04 Emc Corporation Bundling of write data from channel commands in a command chain for transmission over a data link between data storage systems for remote data mirroring
US6065050A (en) * 1996-06-05 2000-05-16 Sun Microsystems, Inc. System and method for indexing between trick play and normal play video streams in a video delivery system
US8107015B1 (en) 1996-06-07 2012-01-31 Virage, Incorporated Key frame selection
US5903727A (en) * 1996-06-18 1999-05-11 Sun Microsystems, Inc. Processing HTML to embed sound in a web page
US5859976A (en) * 1996-07-29 1999-01-12 Philips Electronics North America Corporation System and method for enabling a data/video server to implement operation in accordance with a new connection diagram, and a data/video server including that system
DE19631939A1 (de) * 1996-08-08 1998-02-12 Sel Alcatel Ag Digitaler ISDN-Video-Server
US6020189A (en) * 1996-08-30 2000-02-01 The Johns Hopkins University School Of Medicine Fibroblast growth factor homologous factors (FHFs) and methods of use
JPH1091360A (ja) * 1996-09-12 1998-04-10 Fujitsu Ltd ディスク制御方式
US5870553A (en) * 1996-09-19 1999-02-09 International Business Machines Corporation System and method for on-demand video serving from magnetic tape using disk leader files
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
US6032200A (en) * 1996-09-30 2000-02-29 Apple Computer, Inc. Process scheduling for streaming data through scheduling of disk jobs and network jobs and the relationship of the scheduling between these types of jobs
US6005600A (en) * 1996-10-18 1999-12-21 Silcon Graphics, Inc. High-performance player for distributed, time-based media
US7448062B1 (en) * 1996-10-18 2008-11-04 Microsoft Corporation Seamless playback of multiple clips of media data across a data network
JPH10124352A (ja) * 1996-10-24 1998-05-15 Matsushita Electric Ind Co Ltd ライブラリ内ファイルの管理方法、及びライブラリ用サーバ装置
US6055560A (en) * 1996-11-08 2000-04-25 International Business Machines Corporation System and method to provide interactivity for a networked video server
JP3640114B2 (ja) * 1996-11-27 2005-04-20 ソニー株式会社 データ記録再生装置および方法
US6543053B1 (en) * 1996-11-27 2003-04-01 University Of Hong Kong Interactive video-on-demand system
US6208655B1 (en) * 1996-11-27 2001-03-27 Sony Europa, B.V., Method and apparatus for serving data
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
US5935206A (en) * 1996-12-13 1999-08-10 International Business Machines Corporation Automatic replication of digital video as needed for video-on-demand
US20060031882A1 (en) * 1997-01-06 2006-02-09 Swix Scott R Systems, methods, and devices for customizing content-access lists
US20100257037A1 (en) * 2001-12-14 2010-10-07 Matz William R Method and system for targeted incentives
US8640160B2 (en) * 1997-01-06 2014-01-28 At&T Intellectual Property I, L.P. Method and system for providing targeted advertisements
US20050283401A1 (en) * 1997-01-06 2005-12-22 Swix Scott R Method and system for targeting incentives
US7587323B2 (en) * 2001-12-14 2009-09-08 At&T Intellectual Property I, L.P. System and method for developing tailored content
US7617508B2 (en) * 2003-12-12 2009-11-10 At&T Intellectual Property I, L.P. Methods and systems for collaborative capture of television viewer generated clickstreams
US8677384B2 (en) * 2003-12-12 2014-03-18 At&T Intellectual Property I, L.P. Methods and systems for network based capture of television viewer generated clickstreams
BR9807467B1 (pt) * 1997-01-06 2010-11-16 método e sistema para acompanhar o uso de rede de distribuição de mìdia televesiva.
US6983478B1 (en) * 2000-02-01 2006-01-03 Bellsouth Intellectual Property Corporation Method and system for tracking network use
US7802276B2 (en) * 1997-01-06 2010-09-21 At&T Intellectual Property I, L.P. Systems, methods and products for assessing subscriber content access
US6340978B1 (en) * 1997-01-31 2002-01-22 Making Everlasting Memories, Ltd. Method and apparatus for recording and presenting life stories
US7657835B2 (en) * 1997-01-31 2010-02-02 Making Everlasting Memories, L.L.C. Method and system for creating a commemorative presentation
US6173329B1 (en) * 1997-02-19 2001-01-09 Nippon Telegraph And Telephone Corporation Distributed multimedia server device and distributed multimedia server data access method
US6587640B1 (en) * 1997-03-13 2003-07-01 Sony Corporation Video and audio recording with audio being recorded in plural channels independently of video on different recording media
US6442604B2 (en) * 1997-03-25 2002-08-27 Koninklijke Philips Electronics N.V. Incremental archiving and restoring of data in a multimedia server
US9113122B2 (en) 1997-04-21 2015-08-18 Rovi Guides, Inc. Method and apparatus for time-shifting video and text in a text-enhanced television program
US5974503A (en) * 1997-04-25 1999-10-26 Emc Corporation Storage and access of continuous media files indexed as lists of raid stripe sets associated with file names
US5987621A (en) * 1997-04-25 1999-11-16 Emc Corporation Hardware and software failover services for a file server
US5892915A (en) * 1997-04-25 1999-04-06 Emc Corporation System having client sending edit commands to server during transmission of continuous media from one clip in play list for editing the play list
JPH10303840A (ja) * 1997-04-25 1998-11-13 Sony Corp マルチチャンネル放送システム
US6745226B1 (en) * 1997-05-02 2004-06-01 Roxio, Inc. Method and system for progressive encoding in an active desktop environment
JP2000515706A (ja) * 1997-05-26 2000-11-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ストリームサーバにおいてデータを取り出すシステム
US6029194A (en) * 1997-06-10 2000-02-22 Tektronix, Inc. Audio/video media server for distributed editing over networks
BRPI9812104B1 (pt) 1997-07-21 2016-12-27 Guide E Inc método para navegar por um guia de programa interativo
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
NL1007153C2 (nl) * 1997-09-29 1999-02-08 Koninkl Kpn Nv Systeem, alsmede terminal en server.
JP3578898B2 (ja) * 1997-10-16 2004-10-20 富士通株式会社 Catv伝送センタ装置、catv配信システム及び番組配信方法
US7301944B1 (en) * 1997-10-24 2007-11-27 Tranz-Send Broadcasting Network, Inc. Media file distribution with adaptive transmission protocols
US7581077B2 (en) 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US6418478B1 (en) * 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
US5996015A (en) * 1997-10-31 1999-11-30 International Business Machines Corporation Method of delivering seamless and continuous presentation of multimedia data files to a target device by assembling and concatenating multimedia segments in memory
AU2219399A (en) * 1998-01-08 1999-07-26 Streamgate, Inc. Video stream sharing
JPH11234627A (ja) * 1998-02-17 1999-08-27 Sony Corp データ再生装置及び方法
US6385771B1 (en) 1998-04-27 2002-05-07 Diva Systems Corporation Generating constant timecast information sub-streams using variable timecast information streams
JP3876949B2 (ja) * 1998-05-01 2007-02-07 ソニー株式会社 データ記録再生装置および方法
SE513146C2 (sv) * 1998-05-08 2000-07-17 Telia Ab System med abonnerbar tjänst för bearbetning av videoinformation
AU749314B2 (en) 1998-05-15 2002-06-20 Unicast Communications Corporation A technique for implementing browser-initiated network-distributed advertising and for interstitially displaying an advertisement
GB2337903B (en) * 1998-05-28 2000-06-07 3Com Corp Methods and apparatus for collecting storing processing and using network traffic data
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
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
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
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
IL141104A0 (en) * 1998-07-27 2002-02-10 Webtv Networks Inc Remote computer access
US7360230B1 (en) 1998-07-27 2008-04-15 Microsoft Corporation Overlay management
US8189662B2 (en) * 1999-07-27 2012-05-29 Microsoft Corporation Selection compression
US6567981B1 (en) 1998-08-03 2003-05-20 Elysium Broadband Inc. Audio/video signal redistribution system
US6353878B1 (en) 1998-08-13 2002-03-05 Emc Corporation Remote control of backup media in a secondary storage subsystem through access to a primary storage subsystem
US6269431B1 (en) 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
US6366987B1 (en) 1998-08-13 2002-04-02 Emc Corporation Computer data storage physical backup and logical restore
DK0982695T3 (da) 1998-08-21 2004-09-20 Nsm Music Group Ltd Multimediebox-netværk
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US6097422A (en) * 1998-10-05 2000-08-01 Panasonic Technologies, Inc. Algorithm for fast forward and fast rewind of MPEG streams
US6993787B1 (en) * 1998-10-29 2006-01-31 Matsushita Electric Industrial Co., Ltd. Providing VCR functionality for data-centered video multicast
JP2000152134A (ja) * 1998-11-11 2000-05-30 Mitsubishi Electric Corp 映像再生装置
US6708220B1 (en) * 1998-11-19 2004-03-16 X/Net Associates, Inc. System and method for in-stream data compression
US6598229B2 (en) * 1998-11-20 2003-07-22 Diva Systems Corp. System and method for detecting and correcting a defective transmission channel in an interactive information distribution system
US20010037506A1 (en) * 1998-11-24 2001-11-01 Norton Garfinkle Method for streaming interactive content products
WO2000031970A1 (en) * 1998-11-24 2000-06-02 Norton Garfinkle Method for streaming interactive content products
US7024678B2 (en) * 1998-11-30 2006-04-04 Sedna Patent Services, Llc Method and apparatus for producing demand real-time television
US6859799B1 (en) 1998-11-30 2005-02-22 Gemstar Development Corporation Search engine for video and graphics
US6389218B2 (en) 1998-11-30 2002-05-14 Diva Systems Corporation Method and apparatus for simultaneously producing compressed play and trick play bitstreams from a video frame sequence
US6289383B1 (en) * 1998-11-30 2001-09-11 Hewlett-Packard Company System and method for managing data retrieval bandwidth
US8290351B2 (en) 2001-04-03 2012-10-16 Prime Research Alliance E., Inc. Alternative advertising in prerecorded media
US6256071B1 (en) 1998-12-11 2001-07-03 Hitachi America, Ltd. Methods and apparatus for recording video files and for generating a table listing the recorded files and links to additional information
US6542961B1 (en) * 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
US7382736B2 (en) 1999-01-12 2008-06-03 Mcdata Corporation Method for scoring queued frames for selective transmission through a switch
JP3997640B2 (ja) 1999-02-01 2007-10-24 松下電器産業株式会社 情報記録再生装置
US8726330B2 (en) 1999-02-22 2014-05-13 Touchtunes Music Corporation Intelligent digital audiovisual playback system
US7730300B2 (en) * 1999-03-30 2010-06-01 Sony Corporation Method and apparatus for protecting the transfer of data
US6697489B1 (en) * 1999-03-30 2004-02-24 Sony Corporation Method and apparatus for securing control words
US7565546B2 (en) 1999-03-30 2009-07-21 Sony Corporation System, method and apparatus for secure digital content transmission
US6425129B1 (en) * 1999-03-31 2002-07-23 Sony Corporation Channel preview with rate dependent channel information
US6721794B2 (en) 1999-04-01 2004-04-13 Diva Systems Corp. Method of data management for efficiently storing and retrieving data to respond to user access requests
US8763053B1 (en) * 1999-04-01 2014-06-24 Cox Communications, Inc. File system for a file server of a video-on-demand system
JP4378576B2 (ja) * 1999-05-18 2009-12-09 ソニー株式会社 受信装置および方法、供給装置および方法、双方向通信システムおよび方法、並びに記録媒体
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
US7313808B1 (en) * 1999-07-08 2007-12-25 Microsoft Corporation Browsing continuous multimedia content
US7293280B1 (en) * 1999-07-08 2007-11-06 Microsoft Corporation Skimming continuous multimedia content
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
IL131192A (en) 1999-08-01 2009-08-03 Xtend Networks Ltd Reboot system and TV broadcast
US6801576B1 (en) 1999-08-06 2004-10-05 Loudeye Corp. System for accessing, distributing and maintaining video content over public and private internet protocol networks
AU6639800A (en) * 1999-08-13 2001-03-13 Vingage Corporation System and method for delivering video images
US6314452B1 (en) * 1999-08-31 2001-11-06 Rtimage, Ltd. System and method for transmitting a digital image over a communication network
US7325245B1 (en) 1999-09-30 2008-01-29 Intel Corporation Linking to video information
US7155735B1 (en) 1999-10-08 2006-12-26 Vulcan Patents Llc System and method for the broadcast dissemination of time-ordered data
US7240359B1 (en) * 1999-10-13 2007-07-03 Starz Entertainment, Llc Programming distribution system
US8806549B1 (en) 1999-10-13 2014-08-12 Starz Entertainment, Llc Pre-storing a portion of a program to allow user control of playback
US7809849B2 (en) * 1999-10-13 2010-10-05 Starz Entertainment, Llc Pre-storing multiple programs with user control of playback
CA2388214A1 (en) * 1999-10-22 2001-05-03 General Instrument Corporation Tuning of multiple application enabled digital communication terminals to access services
US7039614B1 (en) * 1999-11-09 2006-05-02 Sony Corporation Method for simulcrypting scrambled data to a plurality of conditional access devices
AU2252701A (en) * 1999-11-29 2001-06-04 Future Tv Technologies, Ltd. A system and method for maintaining fault tolerance when delivering media on demand
WO2001041449A2 (en) * 1999-12-06 2001-06-07 Streaming21, Inc. Method and system for delivering real time video and audio
US8429699B2 (en) * 1999-12-14 2013-04-23 Arturo A. Rodriguez Systems and methods for resource-adaptive processing of scaled video and graphics
US6968568B1 (en) * 1999-12-20 2005-11-22 International Business Machines Corporation Methods and apparatus of disseminating broadcast information to a handheld device
US20020019984A1 (en) * 2000-01-14 2002-02-14 Rakib Selim Shlomo Headend cherrypicker with digital video recording capability
US8584182B2 (en) * 2000-01-27 2013-11-12 Time Warner Cable Enterprises Llc System and method for providing broadcast programming, a virtual VCR, and a video scrapbook to programming subscribers
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
US7225164B1 (en) 2000-02-15 2007-05-29 Sony Corporation Method and apparatus for implementing revocation in broadcast networks
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
JP2001245268A (ja) * 2000-02-29 2001-09-07 Toshiba Corp コンテンツ伝送システム及びコンテンツ処理装置
US20030236861A1 (en) * 2000-03-03 2003-12-25 Johnson Scott C. Network content delivery system with peer to peer processing components
US20030236919A1 (en) * 2000-03-03 2003-12-25 Johnson Scott C. Network connected computing system
US20040123324A1 (en) * 2000-03-07 2004-06-24 Sazzad Sharif M. Methods and apparatus for providing video services such as Video-on-Demand, news and advertising services
US20010035903A1 (en) * 2000-03-27 2001-11-01 David Trane Consumer video system for recording and playing video programming
US7237254B1 (en) * 2000-03-29 2007-06-26 Microsoft Corporation Seamless switching between different playback speeds of time-scale modified data streams
AU5005601A (en) 2000-03-31 2001-10-15 United Video Properties Inc Systems and methods for reducing cut-offs in program recording
US7024046B2 (en) * 2000-04-18 2006-04-04 Real Time Image Ltd. System and method for the lossless progressive streaming of images over a communication network
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
US8086697B2 (en) * 2005-06-28 2011-12-27 Claria Innovations, Llc Techniques for displaying impressions in documents delivered over a computer network
US7475404B2 (en) 2000-05-18 2009-01-06 Maquis Techtrix Llc System and method for implementing click-through for browser executed software including ad proxy and proxy cookie caching
US20020175998A1 (en) * 2000-05-31 2002-11-28 Hoang Khoi Nhu Data-on-demand digital broadcast system utilizing prefetch data transmission
US20020066100A1 (en) * 2000-05-31 2002-05-30 Khoi Hoang Method for providing data services for a large number of small-sized data files
US20020049980A1 (en) * 2000-05-31 2002-04-25 Hoang Khoi Nhu Controlling data-on-demand client access
US20020138845A1 (en) * 2000-05-31 2002-09-26 Khoi Hoang Methods and systems for transmitting delayed access client generic data-on demand services
US20020026501A1 (en) * 2000-05-31 2002-02-28 Khoi Hoang Decreased idle time and constant bandwidth data-on-demand broadcast delivery matrices
US6557030B1 (en) * 2000-05-31 2003-04-29 Prediwave Corp. Systems and methods for providing video-on-demand services for broadcasting systems
US20020059635A1 (en) * 2000-05-31 2002-05-16 Hoang Khoi N. Digital data-on-demand broadcast cable modem termination system
US20020059620A1 (en) * 2000-05-31 2002-05-16 Hoang Khoi Nhu Selective inactivation and copy-protection
US20020023267A1 (en) * 2000-05-31 2002-02-21 Hoang Khoi Nhu Universal digital broadcast system and methods
WO2001093063A1 (en) * 2000-05-31 2001-12-06 Prediwave, Corp. Universal stb architectures and control methods
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
US20040205812A1 (en) * 2000-06-22 2004-10-14 Candelore Brant L. Method and apparatus for routing program data in a program viewing unit
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
FI20001570A (fi) * 2000-06-30 2001-12-31 Nokia Corp Synkronoitu palveluntarjonta tietoliikenneverkossa
US6820171B1 (en) 2000-06-30 2004-11-16 Lsi Logic Corporation Methods and structures for an extensible RAID storage architecture
AU2001273579A1 (en) * 2000-07-14 2002-01-30 Chinook Communications, Inc. System and method for virtual node distribution of data embedded in television signals
WO2002019716A1 (en) * 2000-08-31 2002-03-07 Mixed Signals Technologies, Inc. Systems and method for interacting with users over a communications network
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US7103906B1 (en) 2000-09-29 2006-09-05 International Business Machines Corporation User controlled multi-device media-on-demand system
KR20190096450A (ko) 2000-10-11 2019-08-19 로비 가이드스, 인크. 매체 콘텐츠 배달 시스템 및 방법
AU2002211570A1 (en) 2000-10-11 2002-04-22 United Video Properties, Inc. Systems and methods for caching data in media-on-demand systems
US20020174435A1 (en) * 2001-02-27 2002-11-21 Hillel Weinstein System, apparatus and method for expanding the operational bandwidth of a communication system
US20050283816A1 (en) * 2004-06-16 2005-12-22 Xtend Networks, Ltd. Wideband node in a cable TV network
US7616890B2 (en) * 2000-10-16 2009-11-10 Xtend Networks Ltd. System, device and method of expanding the operational bandwidth of a communication infrastructure
US6697368B2 (en) * 2000-11-17 2004-02-24 Foundry Networks, Inc. High-performance network switch
US20020091884A1 (en) * 2000-11-17 2002-07-11 Andrew Chang Method and system for translating data formats
US6735218B2 (en) * 2000-11-17 2004-05-11 Foundry Networks, Inc. Method and system for encoding wide striped cells
US7596139B2 (en) 2000-11-17 2009-09-29 Foundry Networks, Inc. Backplane interface adapter with error control and redundant fabric
US7356030B2 (en) * 2000-11-17 2008-04-08 Foundry Networks, Inc. Network switch cross point
US7236490B2 (en) * 2000-11-17 2007-06-26 Foundry Networks, Inc. Backplane interface adapter
US8352988B2 (en) * 2000-11-27 2013-01-08 Cox Communications, Inc. System and method for time shifting the delivery of video information
CN1486568A (zh) * 2000-11-28 2004-03-31 ϣ�����ʹ�˾ 内容/服务处理及输送
US6823394B2 (en) 2000-12-12 2004-11-23 Washington University Method of resource-efficient and scalable streaming media distribution for asynchronous receivers
CA2432128A1 (en) * 2000-12-13 2002-06-20 The Chinese University Of Hong Kong Method and system for delivering media selections through a network
AU2002229090A1 (en) * 2000-12-14 2002-06-24 Rtimage Inc. Three-dimensional image streaming system and method for medical images
US20020075860A1 (en) * 2000-12-19 2002-06-20 Young Gene F. High density serverlets utilizing high speed data bus
US7002980B1 (en) 2000-12-19 2006-02-21 Chiaro Networks, Ltd. System and method for router queue and congestion management
US20020085497A1 (en) * 2000-12-28 2002-07-04 Phillips Robert C. Non-volatile data storage to cell-based switch fabric interface
US20020178447A1 (en) * 2001-04-03 2002-11-28 Plotnick Michael A. Behavioral targeted advertising
US20020184047A1 (en) * 2001-04-03 2002-12-05 Plotnick Michael A. Universal ad queue
US20020157113A1 (en) * 2001-04-20 2002-10-24 Fred Allegrezza System and method for retrieving and storing multimedia data
US20030084461A1 (en) * 2001-10-25 2003-05-01 Khoi Hoang Method and apparatus for transmitting non-VOD services
US8479238B2 (en) 2001-05-14 2013-07-02 At&T Intellectual Property Ii, L.P. Method for content-based non-linear control of multimedia playback
US7206283B2 (en) * 2001-05-15 2007-04-17 Foundry Networks, Inc. High-performance network switch
US20050076134A1 (en) * 2001-05-17 2005-04-07 Gil Bialik Apparatus and method for multiple rich media formats video broadcasting
US20020172508A1 (en) * 2001-05-21 2002-11-21 Gabbi Zennou System and method for multichannel short range media transfer and storage
US20020184638A1 (en) * 2001-05-29 2002-12-05 Koninklijke Philips Electronics N.V. Video playback device capable of sharing resources and method of operation
US7124303B2 (en) 2001-06-06 2006-10-17 Sony Corporation Elementary stream partial encryption
US6757753B1 (en) 2001-06-06 2004-06-29 Lsi Logic Corporation Uniform routing of storage access requests through redundant array controllers
US7350082B2 (en) * 2001-06-06 2008-03-25 Sony Corporation Upgrading of encryption
US7747853B2 (en) 2001-06-06 2010-06-29 Sony Corporation IP delivery of secure digital content
US7895616B2 (en) * 2001-06-06 2011-02-22 Sony Corporation Reconstitution of program streams split across multiple packet identifiers
US20080040764A1 (en) * 2001-07-20 2008-02-14 Hillel Weinstein System, apparatus and method for expanding the operational bandwidth of a communication system
CN1190076C (zh) * 2001-08-06 2005-02-16 松下电器产业株式会社 数据流处理器
US20030051249A1 (en) * 2001-08-20 2003-03-13 Khoi Hoang System and method for data insertion (commercials) in client generic data-on-demand broadcast transmissions
US20030055915A1 (en) * 2001-09-14 2003-03-20 Ngo Kin Cuc Method and apparatus for transmitting data over a network
KR20030025386A (ko) * 2001-09-20 2003-03-29 한국전자통신연구원 비디오 시스템에서의 비디오 재생 일시 정지/해제 방법
FI115418B (fi) * 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US8713623B2 (en) 2001-09-20 2014-04-29 Time Warner Cable Enterprises, LLC Technique for effectively providing program material in a cable television system
US7107608B2 (en) * 2001-10-01 2006-09-12 Microsoft Corporation Remote task scheduling for a set top box
WO2003039154A1 (en) * 2001-10-10 2003-05-08 Xtend Networks Ltd. Method and system for a true-video-on-demand service in a catv network
WO2003041341A1 (fr) * 2001-11-05 2003-05-15 Matsushita Electric Industrial Co., Ltd. Serveur et terminal destines a un systeme de transmission video
US6738980B2 (en) * 2001-11-15 2004-05-18 Industrial Technology Research Institute Methods and systems for video streaming with VCR functionality
US20030095783A1 (en) * 2001-11-21 2003-05-22 Broadbus Technologies, Inc. Methods and apparatus for generating multiple network streams from a large scale memory buffer
US7209497B2 (en) * 2001-11-26 2007-04-24 Xtend Networks Ltd. System and method for spectral node splitting in a hybrid fiber optic-coaxial cable network
US7788396B2 (en) * 2001-11-28 2010-08-31 Interactive Content Engines, Llc Synchronized data transfer system
US7644136B2 (en) * 2001-11-28 2010-01-05 Interactive Content Engines, Llc. Virtual file system
US7437472B2 (en) * 2001-11-28 2008-10-14 Interactive Content Engines, Llc. Interactive broadband server system
US20090282444A1 (en) * 2001-12-04 2009-11-12 Vixs Systems, Inc. System and method for managing the presentation of video
US7212979B1 (en) 2001-12-14 2007-05-01 Bellsouth Intellectuall Property Corporation System and method for identifying desirable subscribers
US9967633B1 (en) 2001-12-14 2018-05-08 At&T Intellectual Property I, L.P. System and method for utilizing television viewing patterns
US7444658B1 (en) * 2001-12-14 2008-10-28 At&T Intellectual Property I, L.P. Method and system to perform content targeting
US20110178877A1 (en) * 2001-12-14 2011-07-21 Swix Scott R Advertising and content management systems and methods
US20050071863A1 (en) * 2001-12-21 2005-03-31 Matz William R. System and method for storing and distributing television viewing patterns form a clearinghouse
US7086075B2 (en) 2001-12-21 2006-08-01 Bellsouth Intellectual Property Corporation Method and system for managing timed responses to A/V events in television programming
US7274857B2 (en) * 2001-12-31 2007-09-25 Scientific-Atlanta, Inc. Trick modes for compressed video streams
US8086491B1 (en) 2001-12-31 2011-12-27 At&T Intellectual Property I, L. P. Method and system for targeted content distribution using tagged data streams
US7242773B2 (en) * 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US7039938B2 (en) 2002-01-02 2006-05-02 Sony Corporation Selective encryption for video on demand
US7233669B2 (en) * 2002-01-02 2007-06-19 Sony Corporation Selective encryption to enable multiple decryption keys
US7823174B2 (en) * 2002-01-02 2010-10-26 Sony Corporation Macro-block based content replacement by PID mapping
US7218738B2 (en) * 2002-01-02 2007-05-15 Sony Corporation Encryption and content control in a digital broadcast system
US7765567B2 (en) * 2002-01-02 2010-07-27 Sony Corporation Content replacement by PID mapping
US7155012B2 (en) * 2002-01-02 2006-12-26 Sony Corporation Slice mask and moat pattern partial encryption
US7215770B2 (en) * 2002-01-02 2007-05-08 Sony Corporation System and method for partially encrypted multimedia stream
US7292691B2 (en) 2002-01-02 2007-11-06 Sony Corporation Progressive video refresh slice detection
US7376233B2 (en) * 2002-01-02 2008-05-20 Sony Corporation Video slice and active region based multiple partial encryption
US7302059B2 (en) * 2002-01-02 2007-11-27 Sony Corporation Star pattern partial encryption
US20030149975A1 (en) * 2002-02-05 2003-08-07 Charles Eldering Targeted advertising in on demand programming
US8302144B2 (en) * 2002-03-13 2012-10-30 Cox Communications, Inc. Distribution of content in an information distribution system
GB2386738B (en) * 2002-03-18 2005-09-21 Hewlett Packard Co Media playing
US20030204856A1 (en) * 2002-04-30 2003-10-30 Buxton Mark J. Distributed server video-on-demand system
US20070063790A1 (en) * 2005-05-19 2007-03-22 Yeshayahu Strull Wideband CATV signal splitter device
AU2002258127A1 (en) * 2002-05-02 2003-11-17 Xtend Networks Ltd. A wideband catv signal splitter device
US8312504B2 (en) 2002-05-03 2012-11-13 Time Warner Cable LLC Program storage, retrieval and management based on segmentation messages
US8443383B2 (en) 2002-05-03 2013-05-14 Time Warner Cable Enterprises Llc Use of messages in program signal streams by set-top terminals
US7908626B2 (en) * 2002-05-03 2011-03-15 Time Warner Interactive Video Group, Inc. Network based digital information and entertainment storage and delivery system
US7614066B2 (en) 2002-05-03 2009-11-03 Time Warner Interactive Video Group Inc. Use of multiple embedded messages in program signal streams
US7610606B2 (en) * 2002-05-03 2009-10-27 Time Warner Cable, Inc. Technique for effectively providing various entertainment services through a communications network
US8392952B2 (en) 2002-05-03 2013-03-05 Time Warner Cable Enterprises Llc Programming content processing and management system and method
US7187687B1 (en) 2002-05-06 2007-03-06 Foundry Networks, Inc. Pipeline method and system for switching packets
US7649885B1 (en) 2002-05-06 2010-01-19 Foundry Networks, Inc. Network routing system for enhanced efficiency and monitoring capability
US7468975B1 (en) 2002-05-06 2008-12-23 Foundry Networks, Inc. Flexible method for processing data packets in a network routing system for enhanced efficiency and monitoring capability
US7266117B1 (en) 2002-05-06 2007-09-04 Foundry Networks, Inc. System architecture for very fast ethernet blade
US20120155466A1 (en) 2002-05-06 2012-06-21 Ian Edward Davis Method and apparatus for efficiently processing data packets in a computer network
US7069515B1 (en) * 2002-05-21 2006-06-27 Claria Corporation Method and apparatus for displaying messages in computer systems
US20090180025A1 (en) * 2002-05-28 2009-07-16 Sony Corporation Method and apparatus for overlaying graphics on video
US7530084B2 (en) * 2002-05-28 2009-05-05 Sony Corporation Method and apparatus for synchronizing dynamic graphics
JP4065142B2 (ja) * 2002-05-31 2008-03-19 松下電器産業株式会社 オーサリング装置およびオーサリング方法
AU2003278738A1 (en) * 2002-06-21 2004-01-06 Thomson Licensing S.A. Linearly expandable broadcast router configured for handling multiple audio input signal types
FR2842320A1 (fr) * 2002-07-12 2004-01-16 Thomson Licensing Sa Dispositif de traitement de donnees multimedia
US8818896B2 (en) * 2002-09-09 2014-08-26 Sony Corporation Selective encryption with coverage encryption
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US8151304B2 (en) 2002-09-16 2012-04-03 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8584175B2 (en) 2002-09-16 2013-11-12 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
US8370542B2 (en) * 2002-09-16 2013-02-05 Commvault Systems, Inc. Combined stream auxiliary copy system and method
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
US7724907B2 (en) * 2002-11-05 2010-05-25 Sony Corporation Mechanism for protecting the transfer of digital content
US8572408B2 (en) * 2002-11-05 2013-10-29 Sony Corporation Digital rights management of a digital device
US7603341B2 (en) 2002-11-05 2009-10-13 Claria Corporation Updating the content of a presentation vehicle in a computer network
EP1568208A4 (de) * 2002-11-27 2010-06-23 Rgb Networks Inc Verfahren undvorrichtung zur zeitgemultiplexten verarbeitung mehrerer digitalervideoprogramme
US8711923B2 (en) 2002-12-10 2014-04-29 Ol2, Inc. System and method for selecting a video encoding format based on feedback data
US8840475B2 (en) 2002-12-10 2014-09-23 Ol2, Inc. Method for user session transitioning among streaming interactive video servers
US9061207B2 (en) 2002-12-10 2015-06-23 Sony Computer Entertainment America Llc Temporary decoder apparatus and method
US9077991B2 (en) 2002-12-10 2015-07-07 Sony Computer Entertainment America Llc System and method for utilizing forward error correction with video compression
US9032465B2 (en) * 2002-12-10 2015-05-12 Ol2, Inc. Method for multicasting views of real-time streaming interactive video
US9003461B2 (en) 2002-12-10 2015-04-07 Ol2, Inc. Streaming interactive video integrated with recorded video segments
US8366552B2 (en) 2002-12-10 2013-02-05 Ol2, Inc. System and method for multi-stream video compression
US8949922B2 (en) 2002-12-10 2015-02-03 Ol2, Inc. System for collaborative conferencing using streaming interactive video
US9192859B2 (en) 2002-12-10 2015-11-24 Sony Computer Entertainment America Llc System and method for compressing video based on latency measurements and other feedback
US7684752B2 (en) 2002-12-10 2010-03-23 Onlive, Inc. Wireless network providing distributed video / data services
US20110122063A1 (en) * 2002-12-10 2011-05-26 Onlive, Inc. System and method for remote-hosted video effects
US9138644B2 (en) 2002-12-10 2015-09-22 Sony Computer Entertainment America Llc System and method for accelerated machine switching
US9108107B2 (en) 2002-12-10 2015-08-18 Sony Computer Entertainment America Llc Hosting and broadcasting virtual events using streaming interactive video
US8832772B2 (en) 2002-12-10 2014-09-09 Ol2, Inc. System for combining recorded application state with application streaming interactive video output
US7493078B2 (en) * 2002-12-10 2009-02-17 Onlive, Inc. Antenna assembly for satellite and wireless services
US20110126255A1 (en) * 2002-12-10 2011-05-26 Onlive, Inc. System and method for remote-hosted video effects
US9314691B2 (en) 2002-12-10 2016-04-19 Sony Computer Entertainment America Llc System and method for compressing video frames or portions thereof based on feedback information from a client device
US10201760B2 (en) 2002-12-10 2019-02-12 Sony Interactive Entertainment America Llc System and method for compressing video based on detected intraframe motion
US20040110468A1 (en) * 2002-12-10 2004-06-10 Perlman Stephen G. Wireless network with presentation and media layers for broadcast satellite and cable services
US8549574B2 (en) 2002-12-10 2013-10-01 Ol2, Inc. Method of combining linear content and interactive content compressed together as streaming interactive video
US8526490B2 (en) 2002-12-10 2013-09-03 Ol2, Inc. System and method for video compression using feedback including data related to the successful receipt of video content
US8468575B2 (en) 2002-12-10 2013-06-18 Ol2, Inc. System for recursive recombination of streaming interactive video
US8495678B2 (en) * 2002-12-10 2013-07-23 Ol2, Inc. System for reporting recorded video preceding system failures
US7849491B2 (en) 2002-12-10 2010-12-07 Onlive, Inc. Apparatus and method for wireless video gaming
US20090118019A1 (en) 2002-12-10 2009-05-07 Onlive, Inc. System for streaming databases serving real-time applications used through streaming interactive video
US8661496B2 (en) * 2002-12-10 2014-02-25 Ol2, Inc. System for combining a plurality of views of real-time streaming interactive video
US8964830B2 (en) 2002-12-10 2015-02-24 Ol2, Inc. System and method for multi-stream video compression using multiple encoding formats
US7558525B2 (en) * 2002-12-10 2009-07-07 Onlive, Inc. Mass storage repository for a wireless network
US8387099B2 (en) * 2002-12-10 2013-02-26 Ol2, Inc. System for acceleration of web page delivery
US9446305B2 (en) 2002-12-10 2016-09-20 Sony Interactive Entertainment America Llc System and method for improving the graphics performance of hosted applications
US8893207B2 (en) 2002-12-10 2014-11-18 Ol2, Inc. System and method for compressing streaming interactive video
WO2004054265A1 (en) * 2002-12-12 2004-06-24 Koninklijke Philips Electronics N.V. Intermediate storage of a/v data at the internet
US8667525B2 (en) * 2002-12-13 2014-03-04 Sony Corporation Targeted advertisement selection from a digital stream
US8645988B2 (en) * 2002-12-13 2014-02-04 Sony Corporation Content personalization for digital content
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
US7590084B2 (en) * 2003-02-14 2009-09-15 Onlive, Inc. Self-configuring, adaptive, three-dimensional, wireless network
US7215660B2 (en) 2003-02-14 2007-05-08 Rearden Llc Single transceiver architecture for a wireless network
JP2004246632A (ja) * 2003-02-14 2004-09-02 Hitachi Ltd データ分配サーバ、プログラム及びネットワークシステム
US7593361B2 (en) * 2003-02-14 2009-09-22 Onlive, Inc. Method of operation for a three-dimensional, wireless network
US20040165586A1 (en) * 2003-02-24 2004-08-26 Read Christopher Jensen PID filters based network routing
US8832758B2 (en) * 2003-03-17 2014-09-09 Qwest Communications International Inc. Methods and systems for providing video on demand
US7409702B2 (en) * 2003-03-20 2008-08-05 Sony Corporation Auxiliary program association table
US7292692B2 (en) 2003-03-25 2007-11-06 Sony Corporation Content scrambling with minimal impact on legacy devices
EP1614291B1 (de) 2003-04-17 2007-06-13 THOMSON Licensing Datenabrufende und -übertragende vorrichtungen und verfahren
CN1778062A (zh) * 2003-04-21 2006-05-24 Rgb网络有限公司 时分复用多程序加密系统
US20060051059A1 (en) 2004-09-08 2006-03-09 Krakirian Haig H Video recorder having user extended and automatically extended time slots
US9066131B1 (en) 2003-04-30 2015-06-23 The Directv Group, Inc. Advertising spots for fast-forward play
US6901072B1 (en) 2003-05-15 2005-05-31 Foundry Networks, Inc. System and method for high speed packet transmission implementing dual transmit and receive pipelines
WO2005003961A2 (en) * 2003-07-07 2005-01-13 Koninklijke Philips Electronics N.V. Data processing system and method for data processing
US20050022245A1 (en) * 2003-07-21 2005-01-27 Ramesh Nallur Seamless transition between video play-back modes
US20050097615A1 (en) * 2003-08-05 2005-05-05 G-4, Inc. System for selecting and optimizing display of video files
US20050165849A1 (en) * 2003-08-05 2005-07-28 G-4, Inc. Extended intelligent video streaming system
US20050036067A1 (en) * 2003-08-05 2005-02-17 Ryal Kim Annon Variable perspective view of video images
US20050033855A1 (en) * 2003-08-05 2005-02-10 Ahmad Moradi Method and apparatus for generating and marketing video e-mail and an intelligent video streaming server
IL157285A0 (en) * 2003-08-06 2004-02-19 Xtend Networks Ltd A wideband catv tap device
CN101065963B (zh) * 2003-08-29 2010-09-15 Rgb网络有限公司 提供低延迟类vcr效果和节目改变的视频多路复用器系统
US7966642B2 (en) * 2003-09-15 2011-06-21 Nair Ajith N Resource-adaptive management of video storage
US7286667B1 (en) 2003-09-15 2007-10-23 Sony Corporation Decryption system
US20050066357A1 (en) * 2003-09-22 2005-03-24 Ryal Kim Annon Modifying content rating
CN100458917C (zh) * 2003-10-16 2009-02-04 新科实业有限公司 硬盘驱动器悬架共振优化的方法和机构
US7346163B2 (en) * 2003-10-31 2008-03-18 Sony Corporation Dynamic composition of pre-encrypted video on demand content
US7263187B2 (en) * 2003-10-31 2007-08-28 Sony Corporation Batch mode session-based encryption of video on demand content
US20050097597A1 (en) * 2003-10-31 2005-05-05 Pedlow Leo M.Jr. Hybrid storage of video on demand content
US7620180B2 (en) * 2003-11-03 2009-11-17 Sony Corporation Preparation of content for multiple conditional access methods in video on demand
US20050097596A1 (en) * 2003-10-31 2005-05-05 Pedlow Leo M.Jr. Re-encrypted delivery of video-on-demand content
US7343013B2 (en) * 2003-12-16 2008-03-11 Sony Corporation Composite session-based encryption of video on demand content
US7853980B2 (en) * 2003-10-31 2010-12-14 Sony Corporation Bi-directional indices for trick mode video-on-demand
US20050102702A1 (en) * 2003-11-12 2005-05-12 Candelore Brant L. Cablecard with content manipulation
WO2005065084A2 (en) * 2003-11-13 2005-07-21 Commvault Systems, Inc. System and method for providing encryption in pipelined storage operations in a storage network
US20050169473A1 (en) * 2004-02-03 2005-08-04 Candelore Brant L. Multiple selective encryption with DRM
TWI417303B (zh) * 2004-03-11 2013-12-01 Fresenius Kabi De Gmbh 經由還原胺化作用製得之羥烷基澱粉及蛋白質的接合物
US20050216952A1 (en) * 2004-03-24 2005-09-29 Johnson Dan S Audio/video component networking system and method
US7817659B2 (en) 2004-03-26 2010-10-19 Foundry Networks, Llc Method and apparatus for aggregating input data streams
US8730961B1 (en) 2004-04-26 2014-05-20 Foundry Networks, Llc System and method for optimizing router lookup
US20060031879A1 (en) * 2004-04-30 2006-02-09 Vulcan Inc. Management and non-linear presentation of news-related broadcasted or streamed multimedia content
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
US20060013556A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Commercial information and guide
US20060013555A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Commercial progress bar
US20060013557A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Suppression of trick modes in commercial playback
US20060013554A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Commercial storage and retrieval
US8600217B2 (en) * 2004-07-14 2013-12-03 Arturo A. Rodriguez System and method for improving quality of displayed picture during trick modes
US8255413B2 (en) * 2004-08-19 2012-08-28 Carhamm Ltd., Llc Method and apparatus for responding to request for information-personalization
US8078602B2 (en) * 2004-12-17 2011-12-13 Claria Innovations, Llc Search engine for a computer network
US8086575B2 (en) 2004-09-23 2011-12-27 Rovi Solutions Corporation Methods and apparatus for integrating disparate media formats in a networked media system
US7657703B1 (en) 2004-10-29 2010-02-02 Foundry Networks, Inc. Double density content addressable memory (CAM) lookup scheme
US9723267B2 (en) 2004-12-15 2017-08-01 Time Warner Cable Enterprises Llc Method and apparatus for wideband distribution of content
US7895617B2 (en) * 2004-12-15 2011-02-22 Sony Corporation Content substitution editor
US8041190B2 (en) 2004-12-15 2011-10-18 Sony Corporation System and method for the creation, synchronization and delivery of alternate content
US7693863B2 (en) * 2004-12-20 2010-04-06 Claria Corporation Method and device for publishing cross-network user behavioral data
KR100660850B1 (ko) * 2005-01-11 2006-12-26 삼성전자주식회사 Vod 시스템 및 vod 시스템 재구성 방법
US7602820B2 (en) 2005-02-01 2009-10-13 Time Warner Cable Inc. Apparatus and methods for multi-stage multiplexing in a network
US7937379B2 (en) 2005-03-09 2011-05-03 Vudu, Inc. Fragmentation of a file for instant access
US9176955B2 (en) 2005-03-09 2015-11-03 Vvond, Inc. Method and apparatus for sharing media files among network nodes
US7698451B2 (en) * 2005-03-09 2010-04-13 Vudu, Inc. Method and apparatus for instant playback of a movie title
US20090025046A1 (en) * 2005-03-09 2009-01-22 Wond, Llc Hybrid architecture for media services
US20090019468A1 (en) * 2005-03-09 2009-01-15 Vvond, Llc Access control of media services over an open network
US8904463B2 (en) 2005-03-09 2014-12-02 Vudu, Inc. Live video broadcasting on distributed networks
US7191215B2 (en) * 2005-03-09 2007-03-13 Marquee, Inc. Method and system for providing instantaneous media-on-demand services by transmitting contents in pieces from client machines
US20080022343A1 (en) 2006-07-24 2008-01-24 Vvond, Inc. Multiple audio streams
US8219635B2 (en) 2005-03-09 2012-07-10 Vudu, Inc. Continuous data feeding in a distributed environment
US8073866B2 (en) * 2005-03-17 2011-12-06 Claria Innovations, Llc Method for providing content to an internet user based on the user's demonstrated content preferences
WO2006097937A2 (en) * 2005-03-17 2006-09-21 Videocells Ltd. A method for a clustered centralized streaming system
US8234679B2 (en) 2005-04-01 2012-07-31 Time Warner Cable, Inc. Technique for selecting multiple entertainment programs to be provided over a communication network
US9973817B1 (en) 2005-04-08 2018-05-15 Rovi Guides, Inc. System and method for providing a list of video-on-demand programs
US20070073837A1 (en) * 2005-05-24 2007-03-29 Johnson-Mccormick David B Online multimedia file distribution system and method
US8099511B1 (en) 2005-06-11 2012-01-17 Vudu, Inc. Instantaneous media-on-demand
US20060288367A1 (en) * 2005-06-16 2006-12-21 Swix Scott R Systems, methods and products for tailoring and bundling content
EP1911287A4 (de) * 2005-07-29 2010-11-03 Thomson Licensing Intelligente katastrophenbehebung für digitalkino-multiplex-vorstellungsräume
US20070240185A1 (en) * 2005-08-26 2007-10-11 Weaver Timothy H Methods, apparatuses, and computer program products for delivering audio content on demand
US20070250875A1 (en) * 2005-08-26 2007-10-25 Weaver Timothy H Methods, apparatuses, and computer program products for delivering one or more television programs for viewing during a specified viewing interval
US20070079342A1 (en) 2005-09-30 2007-04-05 Guideworks, Llc Systems and methods for managing local storage of on-demand content
EP1788774A1 (de) * 2005-11-18 2007-05-23 Alcatel Lucent Verfahren und System zur Einleitung oder Widerherstellung einer Medien-auf-Anfragen Sitzung
US7889765B2 (en) * 2005-11-30 2011-02-15 Time Warner Cable Inc. Apparatus and methods for utilizing variable rate program streams in a network
US8448162B2 (en) 2005-12-28 2013-05-21 Foundry Networks, Llc Hitless software upgrades
US9681105B2 (en) 2005-12-29 2017-06-13 Rovi Guides, Inc. Interactive media guidance system having multiple devices
US8607287B2 (en) 2005-12-29 2013-12-10 United Video Properties, Inc. Interactive media guidance system having multiple devices
US20070157267A1 (en) * 2005-12-30 2007-07-05 Intel Corporation Techniques to improve time seek operations
US7693171B2 (en) * 2006-01-03 2010-04-06 Time Warner Cable Inc. Methods and apparatus for efficient IP multicasting in a content-based network
US8185921B2 (en) 2006-02-28 2012-05-22 Sony Corporation Parental control of displayed content using closed captioning
US7555464B2 (en) * 2006-03-01 2009-06-30 Sony Corporation Multiple DRM management
US20070245392A1 (en) * 2006-03-31 2007-10-18 Masstech Group Inc. Disaster recovery
US20070245019A1 (en) 2006-04-12 2007-10-18 United Video Properties, Inc. Interactive media content delivery using a backchannel communications network
WO2007131221A2 (en) * 2006-05-05 2007-11-15 G-4, Inc. Presenting a link to a media file automatically selected for optimized rendering on a client device
US8280982B2 (en) 2006-05-24 2012-10-02 Time Warner Cable Inc. Personal content server apparatus and methods
US9386327B2 (en) * 2006-05-24 2016-07-05 Time Warner Cable Enterprises Llc Secondary content insertion apparatus and methods
US8024762B2 (en) 2006-06-13 2011-09-20 Time Warner Cable Inc. Methods and apparatus for providing virtual content over a network
US7903654B2 (en) 2006-08-22 2011-03-08 Foundry Networks, Llc System and method for ECMP load sharing
US8296812B1 (en) 2006-09-01 2012-10-23 Vudu, Inc. Streaming video using erasure encoding
US8442989B2 (en) * 2006-09-05 2013-05-14 Thomson Licensing Method for assigning multimedia data to distributed storage devices
US7805633B2 (en) * 2006-09-18 2010-09-28 Lsi Corporation Optimized reconstruction and copyback methodology for a disconnected drive in the presence of a global hot spare disk
US8873932B2 (en) * 2007-12-11 2014-10-28 Cisco Technology, Inc. Inferential processing to ascertain plural levels of picture interdependencies
US8875199B2 (en) 2006-11-13 2014-10-28 Cisco Technology, Inc. Indicating picture usefulness for playback optimization
US8416859B2 (en) 2006-11-13 2013-04-09 Cisco Technology, Inc. Signalling and extraction in compressed video of pictures belonging to interdependency tiers
US8155207B2 (en) 2008-01-09 2012-04-10 Cisco Technology, Inc. Processing and managing pictures at the concatenation of two video streams
US20080115175A1 (en) * 2006-11-13 2008-05-15 Rodriguez Arturo A System and method for signaling characteristics of pictures' interdependencies
US8238255B2 (en) 2006-11-22 2012-08-07 Foundry Networks, Llc Recovering from failures without impact on data traffic in a shared bus architecture
US20080148311A1 (en) * 2006-12-13 2008-06-19 Tischer Steven N Advertising and content management systems and methods
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US20080167943A1 (en) * 2007-01-05 2008-07-10 O'neil Douglas R Real time pricing, purchasing and auctioning of advertising time slots based on real time viewership, viewer demographics, and content characteristics
US8155011B2 (en) 2007-01-11 2012-04-10 Foundry Networks, Llc Techniques for using dual memory structures for processing failure detection protocol packets
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
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
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US9953481B2 (en) 2007-03-26 2018-04-24 Touchtunes Music Corporation Jukebox with associated video server
US8409270B2 (en) * 2007-04-16 2013-04-02 Boston Scientific Scimed, Inc. Radiopaque compositions, stents and methods of preparation
US20090019492A1 (en) 2007-07-11 2009-01-15 United Video Properties, Inc. Systems and methods for mirroring and transcoding media content
US8271859B2 (en) 2007-07-18 2012-09-18 Foundry Networks Llc Segmented CRC design in high speed networks
US8037399B2 (en) 2007-07-18 2011-10-11 Foundry Networks, Llc Techniques for segmented CRC design in high speed networks
US8625607B2 (en) 2007-07-24 2014-01-07 Time Warner Cable Enterprises Llc Generation, distribution and use of content metadata in a network
US8958486B2 (en) * 2007-07-31 2015-02-17 Cisco Technology, Inc. Simultaneous processing of media and redundancy streams for mitigating impairments
US20090033791A1 (en) * 2007-07-31 2009-02-05 Scientific-Atlanta, Inc. Video processing systems and methods
US8804845B2 (en) 2007-07-31 2014-08-12 Cisco Technology, Inc. Non-enhancing media redundancy coding for mitigating transmission impairments
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
US20090083141A1 (en) * 2007-09-25 2009-03-26 Ari Craine Methods, systems, and computer program products for detecting and predicting user content interest
US8509236B2 (en) 2007-09-26 2013-08-13 Foundry Networks, Llc Techniques for selecting paths and/or trunk ports for forwarding traffic flows
US8190881B2 (en) 2007-10-15 2012-05-29 Foundry Networks Llc Scalable distributed web-based authentication
EP2213097A2 (de) * 2007-10-16 2010-08-04 Cisco Technology, Inc. Übermittlung von verkettungseigenschaften und bildgeordnetheit in einem videostrom
US9168457B2 (en) 2010-09-14 2015-10-27 Sony Computer Entertainment America Llc System and method for retaining system state
JP5068197B2 (ja) 2008-02-26 2012-11-07 インターナショナル・ビジネス・マシーンズ・コーポレーション データをテープ媒体に書き込む装置及び方法
US8416858B2 (en) * 2008-02-29 2013-04-09 Cisco Technology, Inc. Signalling picture encoding schemes and associated picture properties
US20090225221A1 (en) * 2008-03-04 2009-09-10 Andrew Robert Gordon Flexible router
US8886022B2 (en) * 2008-06-12 2014-11-11 Cisco Technology, Inc. Picture interdependencies signals in context of MMCO to assist stream manipulation
US8699578B2 (en) 2008-06-17 2014-04-15 Cisco Technology, Inc. Methods and systems for processing multi-latticed video streams
US8971402B2 (en) * 2008-06-17 2015-03-03 Cisco Technology, Inc. Processing of impaired and incomplete multi-latticed video streams
US8705631B2 (en) * 2008-06-17 2014-04-22 Cisco Technology, Inc. Time-shifted transport of multi-latticed video for resiliency from burst-error effects
EP2297964A4 (de) * 2008-06-25 2017-01-18 Cisco Technology, Inc. Unterstützung der blockierung von spezialwiedergabeoperationen
US8578018B2 (en) * 2008-06-29 2013-11-05 Microsoft Corporation User-based wide area network optimization
US8849435B2 (en) 2008-07-09 2014-09-30 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US8300696B2 (en) * 2008-07-25 2012-10-30 Cisco Technology, Inc. Transcoding for systems operating under plural video coding specifications
US20100061709A1 (en) * 2008-09-05 2010-03-11 Davender Agnihotri Ad Menu for skipped advertisements
EP2356812B1 (de) * 2008-11-12 2015-06-10 Cisco Technology, Inc. Verarbeitung eines videoprogramms mit mehreren verarbeiteten darstellungen eines einzelvideosignals für rekonstruktion und ausgabe
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
CN101753973B (zh) * 2008-12-12 2013-01-02 华为技术有限公司 一种频道切换方法、装置和系统
US20100192183A1 (en) * 2009-01-29 2010-07-29 At&T Intellectual Property I, L.P. Mobile Device Access to Multimedia Content Recorded at Customer Premises
US8326131B2 (en) * 2009-02-20 2012-12-04 Cisco Technology, Inc. Signalling of decodable sub-sequences
US20100218232A1 (en) * 2009-02-25 2010-08-26 Cisco Technology, Inc. Signalling of auxiliary information that assists processing of video according to various formats
US9009338B2 (en) * 2009-03-03 2015-04-14 Viasat, Inc. Space shifting over return satellite communication channels
JP2010219669A (ja) * 2009-03-13 2010-09-30 Toshiba Corp ビデオサーバ
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
US10564804B2 (en) 2009-03-18 2020-02-18 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
US8782261B1 (en) 2009-04-03 2014-07-15 Cisco Technology, Inc. System and method for authorization of segment boundary notifications
US8949883B2 (en) * 2009-05-12 2015-02-03 Cisco Technology, Inc. Signalling buffer characteristics for splicing operations of video streams
US8090901B2 (en) 2009-05-14 2012-01-03 Brocade Communications Systems, Inc. TCAM management approach that minimize movements
US20100313135A1 (en) * 2009-06-05 2010-12-09 Mark Rogers Johnson Virtual Disc Enabled Media Player
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US8599850B2 (en) 2009-09-21 2013-12-03 Brocade Communications Systems, Inc. Provisioning single or multistage networks using ethernet service instances (ESIs)
US9014546B2 (en) 2009-09-23 2015-04-21 Rovi Guides, Inc. Systems and methods for automatically detecting users within detection regions of media devices
US8539535B2 (en) * 2009-11-30 2013-09-17 Time Warner Cable Enterprises Llc Methods and apparatus for supporting VOD requests in a system with hierarchical content stores
US20110161166A1 (en) * 2009-12-30 2011-06-30 Mindrum G Scott System and method for capturing, processing, and presenting information
WO2011094330A1 (en) 2010-01-26 2011-08-04 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US20110264530A1 (en) 2010-04-23 2011-10-27 Bryan Santangelo Apparatus and methods for dynamic secondary content and data insertion and delivery
US9300445B2 (en) 2010-05-27 2016-03-29 Time Warner Cable Enterprise LLC Digital domain content processing and distribution apparatus and methods
US9185341B2 (en) 2010-09-03 2015-11-10 Time Warner Cable Enterprises Llc Digital domain content processing and distribution apparatus and methods
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
JP5632418B2 (ja) * 2012-04-12 2014-11-26 株式会社東芝 ビデオサーバ、およびその映像信号出力制御方法
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US9998750B2 (en) 2013-03-15 2018-06-12 Cisco Technology, Inc. Systems and methods for guided conversion of video from a first to a second compression format
US9674563B2 (en) 2013-11-04 2017-06-06 Rovi Guides, Inc. Systems and methods for recommending content
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
WO2016068342A1 (en) * 2014-10-30 2016-05-06 Sharp Kabushiki Kaisha Media playback communication
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US10586023B2 (en) 2016-04-21 2020-03-10 Time Warner Cable Enterprises Llc Methods and apparatus for secondary content management and fraud prevention
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
CN109974012A (zh) * 2019-03-19 2019-07-05 天津中德应用技术大学 基于工业互联网和通讯高实时技术的危险废物焚烧系统
US11403849B2 (en) 2019-09-25 2022-08-02 Charter Communications Operating, Llc Methods and apparatus for characterization of digital content

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3002471B2 (ja) * 1988-08-19 2000-01-24 株式会社日立製作所 番組配信装置
US4949187A (en) * 1988-12-16 1990-08-14 Cohen Jason M Video communications system having a remotely controlled central source of video and audio data
US5421031A (en) * 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5166926A (en) * 1990-12-18 1992-11-24 Bell Communications Research, Inc. Packet address look-ahead technique for use in implementing a high speed packet switch
US5172413A (en) * 1990-12-20 1992-12-15 Sasktel Secure hierarchial video delivery system and method
JP3193117B2 (ja) * 1991-05-24 2001-07-30 キヤノン株式会社 動画像処理方法及びその装置
US5237658A (en) * 1991-10-01 1993-08-17 Tandem Computers Incorporated Linear and orthogonal expansion of array storage in multiprocessor computing systems
JPH05191781A (ja) * 1992-01-09 1993-07-30 Nippon Telegr & Teleph Corp <Ntt> 映像再生方法
CA2117422A1 (en) * 1992-02-11 1993-08-19 Mark C. Koz Adaptive video file server and methods for its use
US5341474A (en) * 1992-05-15 1994-08-23 Bell Communications Research, Inc. Communications architecture and buffer for distributing information services
CA2139861A1 (en) * 1992-07-08 1994-01-20 Bernard J. Craig Media server for supplying video and multi-media data over the public telephone switched network
AU4638093A (en) * 1992-08-10 1994-03-03 Digital Pictures, Inc. System and method of selecting among multiple data streams
JP3125470B2 (ja) * 1992-10-19 2001-01-15 富士通株式会社 動画像圧縮データ蓄積制御方法
JP2708683B2 (ja) * 1992-10-21 1998-02-04 日本電信電話株式会社 ディジタル動画ファイルの特殊再生制御処理方法
EP0598516A3 (de) * 1992-11-05 1996-07-03 Sony Corp Aufzeichnung und Wiedergabe von bewegten Bildern.
JPH06153130A (ja) * 1992-11-05 1994-05-31 Sony Corp 動画像再生装置及び動画像記録再生装置
JP3189963B2 (ja) * 1992-11-05 2001-07-16 ソニー株式会社 動画像再生装置
US5581784A (en) * 1992-11-17 1996-12-03 Starlight Networks Method for performing I/O's in a storage system to maintain the continuity of a plurality of video streams
US5442389A (en) * 1992-12-28 1995-08-15 At&T Corp. Program server for interactive television system
US5508732A (en) * 1993-03-22 1996-04-16 International Business Machines Corporation Data server, control server and gateway architecture system and method for broadcasting digital video on demand
ES2118217T3 (es) * 1993-05-19 1998-09-16 Alsthom Cge Alcatel Metodo de gestion de memoria de servidores de video.
EP0625857B1 (de) * 1993-05-19 1998-06-24 ALCATEL BELL Naamloze Vennootschap Videoserver
US5442390A (en) * 1993-07-07 1995-08-15 Digital Equipment Corporation Video on demand with memory accessing and or like functions

Also Published As

Publication number Publication date
JP2005110291A (ja) 2005-04-21
US5815146A (en) 1998-09-29
JPH0818947A (ja) 1996-01-19
DE69529949D1 (de) 2003-04-24
EP0698999A2 (de) 1996-02-28
EP1168845A1 (de) 2002-01-02
JP2005102242A (ja) 2005-04-14
EP0698999B1 (de) 2003-03-19
EP1168845B1 (de) 2006-03-15
EP0698999A3 (de) 1996-03-06
US5606359A (en) 1997-02-25
DE69534861D1 (de) 2006-05-11
DE69529949T2 (de) 2003-12-04

Similar Documents

Publication Publication Date Title
DE69534861T2 (de) Netzwerkvideoanbietersystem
DE69837726T2 (de) Verfahren und Vorrichtung zum Realisieren einer nahtlosen Wiedergabe von kontinuierlichen Medien-Zuführungen
Viswanathan et al. Metropolitan area video-on-demand service using pyramid broadcasting
DE69812994T9 (de) Verfahren und vorrichtung für nicht-sequentiellen zugang zu einem laufenden videoprogramm
DE60111039T2 (de) Speichersystem das aus mehreren speichergeräten besteht, mit verschiedenen fehlertoleranten verfahren
DE69633578T2 (de) Verfahren und Vorrichtung zum rastergenauen Zugriff auf digitale audiovisuelle Information
CA2154042C (en) Video optimized media streamer
DE69637410T2 (de) Video-auf-anfragesystem mit verzögerung und fernsehverfahren dazu
CA2153445C (en) Video optimized media streamer user interface
DE69632424T2 (de) Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe
DE69737904T2 (de) System und Verfahren zur Bearbeitung von Multimedia-Datenströmen in gemeinsamen Ringarchitektur-Multimedia-Teilsystemclustern
CA2154038C (en) Video optimized media streamer data flow architecture
US5586264A (en) Video optimized media streamer with cache management
DE69930127T2 (de) Kostengünstiger, skalierbarer medienserver mit offener architektur
DE60318771T2 (de) Verwaltung der Softwarekomponenten in einem Bildverarbeitungssystem
DE69631755T2 (de) Informationsverarbeitungsgerät, -system und verfahren für ein datenübertragungsnetzwerk
DE69731822T2 (de) Datenpuffersystem für mehrere datenspeicheranordnungen
US20020175998A1 (en) Data-on-demand digital broadcast system utilizing prefetch data transmission
Ghandeharizadeh et al. Design and implementation of scalable continuous media servers
US20030154246A1 (en) Server for storing files
DE69929449T2 (de) Algorithmus für schnellen vor- und rücklauf von mpeg datenströmen
DE69733199T2 (de) Verfahren und audio-server-system für ein unzuverlässiges netzwerk
DE69737962T2 (de) Netzwerkvideoserver
EP0701373B1 (de) Netzwerkvideoanbietersystem
Liu Effective schemes to guarantee the real-time retrieval of digital continuous media

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., HOUSTON

8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee