DE69727100T2 - Vorrichtung und Verfahren zur Indexierung zwischen Videodatenfolgen mit Trick- und Normalwiedergabe in einem Videoverteilsystem - Google Patents

Vorrichtung und Verfahren zur Indexierung zwischen Videodatenfolgen mit Trick- und Normalwiedergabe in einem Videoverteilsystem Download PDF

Info

Publication number
DE69727100T2
DE69727100T2 DE1997627100 DE69727100T DE69727100T2 DE 69727100 T2 DE69727100 T2 DE 69727100T2 DE 1997627100 DE1997627100 DE 1997627100 DE 69727100 T DE69727100 T DE 69727100T DE 69727100 T2 DE69727100 T2 DE 69727100T2
Authority
DE
Germany
Prior art keywords
video
stream
normal
streams
time
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
DE1997627100
Other languages
English (en)
Other versions
DE69727100D1 (de
Inventor
Michael A. Los Gatos Demoney
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Application granted granted Critical
Publication of DE69727100D1 publication Critical patent/DE69727100D1/de
Publication of DE69727100T2 publication Critical patent/DE69727100T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends

Description

  • TECHNISCHER HINTERGRUND DER ERFINDUNG
  • Technisches Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft im allgemeinen die Videobelieferungs- und Video-On-Demand-Systeme und insbesondere ein Videoserversystem und ein Verfahren für die Indexierung zwischen Videoströmen mit unterschiedlichen Darstellungsgeschwindigkeiten, d. h. Videoströme mit normaler Abspielgeschwindigkeit, schnellem Vorlauf und schnellem Rücklauf.
  • Beschreibung des relevanten Standes der Technik
  • Video-On-Demand- oder Videobelieferungssysteme ermöglichen es einer Mehrzahl von Benutzern oder Zuschauern, selektiv Filme oder andere Audio-/Videosequenzen zu sehen, die auf einem oder mehreren Videoservern oder Medienservern abgelegt sind. Die Videoserver sind über Datentransferkanäle, wie z. B. ein Ausstrahlungskabelsystem oder ein Satellitenausstrahlungssystem, mit der Mehrzahl von Benutzern oder Teilnehmern verbunden. Die Videoserver speichern eine Mehrzahl von Filmen oder andere Audio-/Videosequenzen und jeder Benutzer kann einen oder mehrere Filme von dem Videoserver für die Betrachtung auswählen. Jeder Benutzer bezieht einen Fernseher oder eine andere Betrachtungseinrichtung ein sowie eine verknüpfte Decodierungslogik für das Auswählen und Betrachten der gewünschten Filme. Wenn ein Benutzer einen Film auswählt, wird der ausgewählte Film auf einem der Datentransferkanäle zu dem Fernseher des entsprechenden Benutzers übertragen.
  • Ein digitales Full-Motion-Video erfordert einen großen Speicherplatz und eine große Datenübertragungsbandbreite. Somit verwenden Video-On-Demand-Systeme verschiedene Typen von Videokomprimierungsalgorithmen, um den notwendigen Speicherplatz und die Datenübertragungsbandbreite zu reduzieren. Im allgemeinen existieren unterschiedliche Videokomprimierungsverfahren für stillstehende Grafikbilder und für Full-Motion-Videos. Videokomprimierungsverfahren für stillstehende Grafikbilder oder einzelne Videobilder werden als Intraframe- bzw. Intraeinzelbildkomprimierungsverfahren bezeichnet und Komprimierungsverfahren für bewegtes Video werden als Interframe- bzw. Intereinzelbildkomprimierungsverfahren bezeichnet.
  • Beispiele für die Datenkomprimierung für stillstehende Grafikbilder sind die RLE-(Lauflängencodierung) und die JPEG-(Joint Photographic Experts Group)Komprimierung. Das RLE-Komprimierungsverfahren funktioniert durch Suchen nach duplizierten Pixeln in einer einzelnen Zeile der Bitmap und durch Speichern der Anzahl von aufeinanderfolgenden duplizierten Pixeln statt den Daten für das Pixel selbst. Die JPEG-Komprimierung ist eine Gruppe von in Beziehung stehenden Normen, die entweder verlustfreie (keine Bildqualitätverschlechterung) oder verlustbehaftete (eine starke Verschlechterung ist nicht wahrnehmbar) Komprimierungstypen zur Verfügung stellen. Obgleich die JPEG-Komprimierung ursprünglich für die Komprimierung von stehenden Bildern anstelle von Video konstruiert wurde, wird die JPEG-Komprimierung in einigen bewegten Videoapplikationen verwendet.
  • Im Gegensatz zu den Komprimierungsalgorithmen für stillstehende Bilder sind die meisten Videokomprimierungsalgorithmen dafür vorgesehen, Full-Motion-Videos zu komprimieren. Die Videokomprimierungsalgorithmen für bewegtes Video verwenden ein Konzept, das als Interframe- bzw. Intereinzelbildkomprimierung bezeichnet wird, was die Speicherung nur der Unterschiede zwischen aufeinanderfolgenden Einzelbildern in dem Datenfile beinhaltet. Die Interframekomprimierung speichert das gesamte Bild eines Schlüsseleinzelbildes oder eines Referenzeinzelbildes im allgemeinen in einem mittelgradig komprimierten Format. Nachfolgende Einzelbilder werden mit dem Schlüsseleinzelbild verglichen und nur die Unterschiede zwischen dem Schlüsseleinzelbild und den nachfolgenden Einzelbildern werden gespeichert. Periodisch werden, wenn z. B. neue Szenen angezeigt werden, neue Schlüsseleinzelbilder gespeichert und die darauffolgenden Vergleiche beginnen von diesem Referenzpunkt. Es sei bemerkt, daß das Interframekomprimierungsverhältnis konstant gehalten werden kann, während die Videoqualität variiert. Alternativ können die Interframekomprimierungsverhältnisse inhaltsabhängig sein, d. h. wenn der zu komprimierende Videoclip viele abrupte Szenenübergänge von einem Bild zu einem anderen Bild beinhaltet, ist die Komprimierung weniger effizient. Beispiele der Videokomprimierung, die eine Interframekomprimierungstechnik verwenden, sind u. a. MPEG, DVI und Indeo.
  • MPEG-Hintergrund
  • Ein Komprimierungsstandard, der als MPEG-(Moving Pictures Experts Group)Komprimierung bezeichnet wird, ist ein Satz von Verfahren für die Komprimierung und Dekomprimierung von Full-Motion-Videobildern, die die oben beschriebene Interframekomprimierungstechnik verwenden. Die MPEG-Komprimierung verwendet sowohl Bewegungskompensationsprozesse als auch diskrete Kosinustranformationsprozesse (DCT) und kann Komprimierungsverhältnisse von mehr als 200 : 1 erzielen.
  • Ein allgemeiner Hintergrund hierzu und mehr Informationen über MPEG kann in der ISO/IEC-MPEG-Beschreibung gefunden werden, die als ISO/IEC 13818 bezeichnet wird. Der MPEG-Standard erfordert, daß Ton simultan mit den Videodaten aufgezeichnet ist, und die Video- und Audiodaten werden in einem einzigen File verschachtelt (interleaved), um Video und Audio während des Abspielens synchronisiert zu halten. Typischerweise sind die Audiodaten ebenso komprimiert und der MPEG-Standard spezifiziert ein Audiokomprimierungsverfahren, wie z. B. MPEG Layer II, was ebenso bekannt ist durch den Handelsnamen "MUSICAM" von Philips.
  • Ein MPEG-Strom beinhaltet drei Bildtypen, bezeichnet als das Intraframe bzw. Intraeinzelbild (I), das vorhergesagte Frame bzw. vorhergesagte Einzelbild (P) und das bidirektional interpolierte Frame bzw. Einzelbild (B). Die I- oder Intraeinzelbilder enthalten die Videodaten für das gesamte Videoeinzelbild und werden typischerweise alle 10 bis 15 Einzelbilder plaziert. Intraframes stellen Einfügepunkte in das File für den Direktzugriff zur Verfügung und werden im allgemeinen nur mittelgradig komprimiert. Vorhergesagte Einzelbilder werden unter Bezug auf ein vergangenes Einzelbild, d. h. ein vorheriges Intraframe oder vorhergesagtes Frame, codiert. Die P-Frames beinhalten somit nur Veränderungen relativ zu vorherigen I- oder P-Frames. Im allgemeinen enthalten vorhergesagte Einzelbilder eine ziemlich hohe Komprimierung und werden als Referenzen für zukünftige vorhergesagte Einzelbilder verwendet. Somit werden sowohl I- als auch P-Einzelbilder als Referenzen für nachfolgende Einzelbilder verwendet. Bidirektionale Bilder beinhalten die größte Komprimierungsmenge und erfordern sowohl eine Referenz in die Vergangenheit als auch in die Zukunft, um codiert zu werden. Bidirektionale Einzelbilder werden nicht als Referenzen für andere Einzelbilder verwendet.
  • Nachdem die I-Einzelbilder erzeugt wurden, teilt der MPEG-Codierer jedes I-Frame in ein Gitter einer geeigneten Größe auf, z. B. 16 × 16 Pixelquadrate, die Makroblöcke genannt werden. Das entsprechende I-Frame wird in Makroblöcke unterteilt, um die Bewegungskompensation durchzuführen. Jedes der nachfolgenden Bilder nach dem I-Frame wird ebenso in diese gleichen Makroblöcke unterteilt. Der Codierer sucht dann nach einer exakten oder nahezu exakten Übereinstimmung zwischen dem Makroblock des Referenzbildes und denjenigen in nachfolgenden Bildern. Wenn eine Übereinstimmung gefunden wird, überträgt der Codierer einen Vektorbewegungscode oder einen Bewegungsvektor. Der Vektorbewegungscode oder der Bewegungsvektor beinhaltet nur Information über den Unterschied zwischen dem Referenzeinzelbild und den entsprechenden nachfolgenden Bildern. Die Blöcke in nachfolgenden Bildern, die keine Veränderung relativ zu dem Block in dem Referenzbild oder Frame haben, werden ignoriert. Im allgemeinen unterscheiden sich für das Einzelbild (die Einzelbilder), die einem Referenzeinzelbild folgen, d. h. P- und B-Frames, die einem I- oder P-Referenzframe folgen, nur kleine Abschnitte dieser Einzelbilder bzw. Frames von den entsprechenden Abschnitten des jeweiligen Referenzeinzelbildes. Somit werden für diese Einzelbilder nur die Unterschiede festgehalten, komprimiert und gespeichert. Somit ist die Datenmenge, die tatsächlich für diese Einzelbilder gespeichert wird, signifikant reduziert.
  • Nachdem die Bewegungsvektoren erzeugt wurden, verfolgt der Codierer die Veränderungen unter Verwendung der örtlichen Redundanz. Somit reduziert der MPEG-Algorithmus nach dem Auffinden der Veränderungen an dem Ort der Makroblöcke die Daten weiter durch Beschreiben des Unterschiedes zwischen entsprechenden Makroblöcken. Dies wird verwirklicht durch einen mathematischen Prozeß, der als diskrete Kosinustransformation oder DCT bezeichnet wird. Dieser Prozeß unterteilt den Makroblock in eine geeignete Anzahl von Unterblöcken, z. B. vier Unterblöcke, was Veränderungen in der Farbe und Helligkeit ausfindig macht. Das menschliche Wahrnehmungsvermögen ist empfindlicher gegenüber Helligkeitsveränderungen als gegenüber Farbveränderungen. Somit widmet der MPEG-Algorithmus der Reduktion des Farbraumes mehr Anstrengung als der Helligkeit.
  • Jedes Bild oder Einzelbild beinhaltet ebenso eine Bildkopfzeile, die das Einzelbild identifiziert und Informationen für dieses Einzelbild enthält. MPEG-Standard beinhaltet ebenso Sequenzkopfzeilen, die den Beginn einer Videosequenz identifizieren. Sequenzkopfzeilen werden nur einmal vor dem Beginn einer Videosequenz benötigt. Der MPEG-2-Standard erlaubt es jedoch, daß eine Sequenzkopfzeile vor jedem I-Einzelbild oder P-Einzelbild übertragen wird. Die Sequenzkopfzeile bein haltet Informationen, die für die Videosequenz relevant sind, einschließlich der Einzelbildrate und der Bildgröße und anderer Information. MPEG-Videoströme, die in digitalen Fernsehanwendungen verwendet werden, beinhalten im allgemeinen eine Sequenzkopfzeile vor jedem I-Frame und P-Frame. Dies ist notwendig, um das Kanalsurfen zwischen unterschiedlichen Videokanälen zu erleichtern, was eine wichtige Benutzeranforderung ist. Im allgemeinen kann, wenn ein Benutzer zu einem neuen Kanal wechselt, das Video für den neuen Kanal nicht angezeigt werden, bis die nächste Sequenzkopfzeile in dem Strom erscheint. Dies liegt daran, daß die Sequenzkopfzeile wichtige Information über die Videosequenz beinhaltet, die der Decoder benötigt, bevor die Sequenz angezeigt werden kann. Wenn eine Sequenzkopfzeile nicht vor jedem I-Frame und/oder P-Frame eingefügt wäre, könnte, wenn der Benutzer zu einem neuen Kanal wechseln würde, das Video für den neuen Kanal möglicherweise nicht sofort angezeigt werden, d. h. das Video könnte bis zur nächsten Sequenzkopfzeile nicht angezeigt werden.
  • Die Sequenzkopfzeilen in einem MPEG-codierten Strom beinhalten Darstellungszeitstempel oder eine Zeitbasis innerhalb des codierten Stromes. Zeitstempel stellen einem Benutzer eine Zeitreferenz relativ zu dem Beginn eines Filmes zur Verfügung, was es dem Benutzer erlaubt, eine Sequenz, die mitten im Film lokalisiert ist, genau auszuwählen oder zu identifizieren, ohne Bezug auf den Filmbeginn zu nehmen.
  • Trick-Play-Ströme
  • In einem interaktiven Video-On-Demand-(VOD-) oder nahezu Video-On-Demand-(NVOD-)System ist es für den Benutzer sehr wünschenswert, in der Lage zu sein, selektiv einen schnellen Vorlauf und/oder einen schnellen Rücklauf durch den Film, der betrachtet wird, zu initiieren. Daher beinhalten einige Video-On-Demand-Systeme für jeden Film schnelle Vorlauf- und schnelle Rücklaufströme, die als Trick-Play-Ströme bezeichnet werden. Wenn der Benutzer wünscht, sich in einem Film mit schnellem Vorlauf oder schnellem Rücklauf zu bewegen, wählt der Benutzer die schnelle Vorlauf- oder schnelle Rücklaufoption. Der entsprechende schnelle Vorlauf- oder schnelle Rücklauf-Trick-Play-Strom wird dann zu dem Benutzer an dem geeigneten Punkt übertragen, wo der Benutzer den Film betrachtete, anstelle des normalen Abspielstroms, wodurch somit ein schneller Vorlauf oder ein schneller Rücklauf des betrachteten Films simuliert wird. Typischerweise wird ein einzelner Videostrom, wie z. B. ein Film, mit unterschiedlichen Darstellungsgeschwindigkeiten codiert, um es dem Videofile zu erlauben, zusätzlich zu der normalen Abspieldarstellungsgeschwindigkeit in der schnellen Vorlauf- oder schnellen Rücklaufgeschwindigkeit zu arbeiten.
  • Indexierung
  • Interaktive Video-On-Demand-Systeme, die Trick-Play-Ströme beinhalten, erfordern Verfahren für die Indexierung zwischen dem normalen Abspielstrom und den Trick-Play-Strömen sowie auch für die Indexierung zwischen den Trick-Play-Strömen. Mit anderen Worten, wenn ein Benutzer sich einen Film ansieht und auswählt, für eine bestimmte Zeitperiode einen schnellen Vorlauf zu aktivieren, wird ein Mechanismus für den Videoserver benötigt, um von dem normalen Abspielstrom zu dem geeigneten Punkt oder Einzelbild in dem schnellen Vorlaufstrom zu wechseln. Wenn der Benutzer dann wünscht, das Ansehen mit normaler Abspielgeschwindigkeit wiederaufzunehmen, wird ebenso ein Mechanismus für den Videoserver benötigt, von dem in dem schnellen Vorlaufstrom angesehenen Einzelbild zu dem entsprechenden Punkt oder Einzelbild in dem normalen Abspielstrom zu wechseln. Der Videoserver muß somit in der Lage sein, die geeigneten Positionen innerhalb der Videofiles zu bestimmen, wenn eine Schaltung bei der Ausgabe eines ersten Videofiles bei einer ersten Darstellungsrate zu einem zweiten Videofile mit einer zweiten Darstellungsrate auftritt.
  • Ein Ansatz für die Indexierung zwischen normalem Abspielstrom und Trick-Play-Strom beinhaltet die Verwendung von Nachschlagtabellen, um eine Indexierung zwischen den verschiedenen Strömen durchzuführen. Die Nachschlagtabellen beinhalten jeweils eine Mehrzahl von Indizes, die auf entsprechende Positionen oder I-Frames in den verschiedenen Strömen Bezug nehmen. Beispielsweise kann die Indexnachschlagtabelle unter Verwendung der MPEG-Darstellungszeitstempel von den Sequenzkopfzeilen des normalen Abspielstroms erzeugt werden.
  • Ein Nachteil dieses Ansatzes ist der, daß die MPEG-Darstellungszeitstempel nicht immer verfügbar sein müssen. Beispielsweise gibt es keine Anforderung, daß die MPEG-Darstellungszeitstempel kontinuierlich sind; z. B. könnte es Abbrüche oder Lücken in den Darstellungszeitstempeln geben.
  • Ein anderes Problem ist es, daß Darstellungszeitstempel darstellungsbasiert sind. Somit werden, wenn ein schneller Vorlaufstrom, der fünfmal so schnell ist, abgespielt wird, die Darstellungszeitstempel nicht fünfmal schneller vorrücken, sondern mit derselben Geschwindigkeit vorrücken, wie sie es im normalen Abspielstrom tun. Somit ist es in diesem Verfahren für den Server erforderlich, Berechnungen auf den Darstellungszeitstempeln durchzuführen, um den entsprechenden Ort in einem anderen Strom zu bestimmen. Dies erhöht die Echtzeitverarbeitungsbelastung auf dem Medienserver.
  • Dieser Ansatz erfordert ebenso, daß jeder Decoder intelligent ist, und weiterhin erfordert es, daß der Medienserver mit dem Decoder wechselwirkt, um die Wechsel zwischen den Strömen zu verwirklichen. Beispielsweise wird es, wenn der Benutzer die schnelle Vorlauf- oder schnelle Rücklaufoption auswählt, in diesem Verfahren erforderlich sein, daß der Decoder Information hinsichtlich des jeweiligen Darstellungszeitstempels zu dem Medienserver zurückgibt, betreffend die Positionen, wo der Decoder seine Abspielung beendete sowie auch die Darstellungsgeschwindigkeit des abgespielten Stromes betreffend. Der Medienserver verwendet dann diese Information, um den geeigneten Darstellungszeitstempelort zu bestimmen, um das Abspielen in dem neuen Strom zu beginnen. Diese Anforderung, daß der Decoder mit dem Medienserver wechselwirkt, um Stromschaltungen zu verwirklichen sowie die Berechnungen, die von dem Medienserver durchgeführt werden müssen, erhöhen den Overhead des Systems. Die Wechselwirkung zwischen dem Medienserver und dem Decoder erfordert ebenso, daß jeder Decoder intelligent ist, was die Kosten jedes Decoders erhöht.
  • Ein solcher Ansatz basierend auf den MPEG-Darstellungszeitstempeln ist das "Picture Number, Presentation Time Stamp, File Offset"-Format von HP für jeden Tabelleneintrag. Leider sind nicht alle Codierungsformate MPEG-basiert. Weiterhin kann die genaue Abbildung zwischen Dar stellungsraten nur verwirklicht werden, wenn die zugrundeliegende Annahme, daß die Darstellungsrate ein konstantes Verhältnis ist, d. h. man nimmt an, daß der codierte Videostrom eine gleichförmige Einzelbildrate hat, zutreffend ist. Umgekehrt deaktiviert eine gleichförmige Einzelbildrate bei allen Darstellungsraten Techniken, wie z. B. den "schnellen Szenenvorlauf".
  • Daher ist ein verbessertes System und ein Verfahren wünschenswert für die effiziente Indexierung zwischen normalen Abspielströmen und Trick-Play-Videoströmen in einem Videoliefersystem. Ein verbessertes System und ein Verfahren ist weiterhin wünschenswert, das die Verarbeitungsbelastungen des Medienservers reduziert.
  • Die US 5,479,303 beschreibt ein Verfahren und eine Vorrichtung für die visuelle Suchsteuerung von digitalen Videofiles, das ein hochqualitatives Bild selbst in den schnellen Vorlauf- und schnellen Rücklaufmodi bereitstellt, während ein schnelles Umschalten zwischen dem normalen Abspielmodus und dem schnellen Vorlauf-/schnellen Rücklaufmodus erleichtert. Jeder Videofile enthält normale Abspieldaten für den normalen Abspielmodus und schnelle Vorlauf- und Rücklaufdaten für den schnellen Vorlauf/Rücklaufmodus. Jeder Videofile enthält weiterhin Einzelbildverwaltungsinformation, die einen Eintrag von jedem Einzelbild in den normalen Abspieldaten und den schnellen Vorlauf-/Rücklaufdaten enthält, wobei jeder Eintrag eine Einzelbildnummer von jedem Einzelbild erfaßt, und eine Schaltzieleinzelbildnummer eine Einzelbildnummer eines nächsten Einzelbildes anzeigt, das auszulesen ist, wenn eine Modusschaltung auftritt.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Die vorliegende Erfindung weist ein System und ein Verfahren auf für das Indexieren zwischen in Bezug stehenden Videoströmen in einem interaktiven Videoliefersystem. Das interaktive Videoliefersystem weist vorzugsweise zumindest einen Medienserver auf, der Videoströme mit unterschiedlichen Darstellungsgeschwindigkeiten speichert. In der bevorzugten Ausführungsform speichert das System einen normalen Abspielstrom und einen oder mehrere entsprechende Trick-Play-Ströme. Die Trick-Play-Videoströme sind schnelle Vorlauf- und/oder schnelle Rücklaufvideoströme. Die vorliegende Erfindung erzeugt Indexnachschlagtabellen (ILUTs) zwischen dem normalen Abspiel- und Trick-Play-Videostrom, die die Indexierung zwischen den Strömen ermöglichen und die vorliegende Erfindung verwendet diese ILUTs, um zwischen den Strömen hin- und herzuschalten.
  • In der bevorzugten Ausführungsform speichert der Medienserver normale Abspielvideoströme, die vorzugsweise unter Verwendung von irgendeinem von verschiedenen Typen von Videokomprimierungsverfahren, vorzugsweise einem MPEG-Verfahren, komprimiert sind. Bei der Erzeugung der ILUTs analysiert das System als erstes den normalen Abspielstrom und erzeugt einen normalen Abspielzeitstandard basierend auf den Darstellungszeitstempeln, die der normale Abspielstrom aufweist. Das System erzeugt dann vorzugsweise eine Indexnachschlagtabelle für jeden der normalen Abspiel- und Trick-Play-Videoströme unter Verwendung des normalen Abspielzeitstandards. Jede Indextabelle weist eine Anordnung von Zwei-Tupeln auf, wobei die Zwei-Tupel der normale Abspielzeitstandard und ein Index oder ein Offsetwert in dem entsprechenden Strom sind. Die Indextabellen ermöglichen die Indexierung zwischen den Strömen.
  • Während der Videolieferung verwendet das System der vorliegenden Erfindung die jeweiligen Indextabellen, um zwischen dem normalen Abspielvideostrom und den Trick-Play-Videoströmen hin- und herzuschalten. Wenn ein Benutzer beispielsweise den normalen Abspielstrom betrachtet und es wünscht, per schnellem Vorlauf durch den Videostrom zu laufen, untersucht der Medienserver die gegenwärtige normale Abspielzeit und den Offsetwert des normalen Abspielstroms, der ausgegeben wird, um den normalen Abspielstrom bei einem geeigneten Punkt anzuhalten. Der Medienserver verwendet ebenso die gegenwärtige normale Abspielzeit, um den geeigneten Offsetwert in der Indextabelle des schnellen Vorlaufstroms abzurufen. Dieser Offsetwert wird dann verwendet, um das Abspielen des schnellen Vorlaufstroms an dem geeigneten Punkt oder Einzelbild zu beginnen, wenn der normale Abspielstrom angehalten wird. Wenn der Benutzer den schnellen Vorlauf unterbricht und das normale Abspielen auswählt, untersucht der Medienserver die gegenwärtige normale Abspielzeit und den Offsetwert des ausgegebenen schnellen Vorlaufstroms, um den schnellen Vorlaufstrom bei einem geeigneten Punkt anzuhalten. Der Medienserver verwendet ebenso die gegenwärtige normale Abspielzeit des schnellen Vorlaufstroms, um den geeigneten Offsetwert in der Indextabelle des normalen Abspielstroms abzurufen. Dieser Offsetwert wird dann verwendet, um das Abspielen des normalen Abspielstroms an dem Ort, wo der schnelle Vorlaufstrom angehalten wurde, zu beginnen. Ähnliche Operationen treten auf, wenn der Benutzer mittels schnellem Rücklauf sich durch den Videostrom bewegt. Die vorliegende Erfindung stellt ebenso einen glatten Übergang zwischen den unterschiedlichen Darstellungsgeschwindigkeiten zur Verfügung durch Sicherstellen, daß das Stoppen und das Initiieren der Ausgabe der unterschiedlichen Ströme, d. h. das Schalten des Ausgangs zwischen den unterschiedlichen Strömen nur an gut definierten Direktzugriffspunkten erfolgt.
  • Die vorliegende Erfindung erlaubt daher effizient die Indexierung zwischen dem normalen Abspielstrom und den Trick-Play-Strömen. Die vorliegende Erfindung erzeugt einen normalen Abspielzeitstandard, der als eine gemeinsame Referenz verwendet wird, was somit den Indexierungsprozeß vereinfacht. Dies eliminiert die Anforderung an eine Intelligenz in dem Decoder und reduziert die Verarbeitungsanforderungen des Videoservers.
  • BESCHREIBUNG DER FIGUREN
  • Ein besseres Verständnis der vorliegenden Erfindung kann erhalten werden, wenn die folgende detaillierte Beschreibung der bevorzugten Ausführungsform in Verbindung mit den folgenden Zeichnungen in Betracht gezogen wird, in denen:
  • 1 ein Videoliefersystem darstellt einschließlich eines oder mehreren Medienservern und einem oder mehreren Teilnehmern,
  • 2 den Medienserver von 1 darstellt,
  • 3 ein Blockdiagramm ist, das das Medienservercomputersystem von 2 darstellt,
  • 4 ein Flußdiagramm ist, das die Erzeugung von Indexnachschlagtabellen für normale Abspielströme und Trick-Play-Ströme gemäß der vorliegenden Erfindung darstellt,
  • 5 Indexnachschlagtabellen für normale Abspielströme und Trick-Play-Ströme gemäß der vorliegenden Erfindung darstellt und
  • 6 ein Flußdiagramm ist, das die Funktion des Medienservers darstellt und das Indexieren zwischen einem normalen Abspielstrom und Trick-Play-Strömen gemäß der vorliegenden Erfindung.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Videoliefersystem
  • In 1 ist ein Videoserver oder ein Videoliefersystem 30 für das Speichern und Übertragen von Videoströmen gezeigt. Das System ist vorzugsweise ein Video-On-Demand-(VOD-) oder ein Near-Video-On-Demand-(NVOD-)System oder irgendein anderer Typ eines Videoliefersystems, der in der Lage ist, Video- oder Multimediaströme zu einem oder mehreren Benutzern, vorzugsweise einer Mehrzahl von Benutzern, zu übertragen oder abzuspielen. In der vorliegenden Beschreibung wird der Begriff "Videostrom" verwendet, um einen File oder eine Sequenz von Daten für die Darstellung einer Videoanzeige zu bezeichnen. Der Begriff "Videostrom" beinhaltet ebenso einen Multimediastrom, der sowohl Video- als auch Audiokomponenten enthält.
  • Wie gezeigt, weist in einer Ausführungsform das Videoliefersystem 30 einen oder mehrere Medienserver oder Videoserver 30 auf, die über ein Breitbandnetzwerk 40 mit einer Mehrzahl von Teilnehmern 52 verbunden sind. Wie unten erörtert wird, beinhaltet jeder Medienserver 50 vorzugsweise ein Allzweckcomputersystem 60 (2). Das Breitbandnetzwerk 40 ist vorzugsweise ein Netzwerk, das für Multimediainhalt geeignet ist, wie z. B. ein ATM-(asynchroner Übertragungsmodus)Netzwerk. Die Teilnehmer 52 enthalten vorzugsweise Anzeigeeinrichtungen, wie z. B. Fernseher, Computer usw.
  • Der Medienserver 50 ist in der Lage, Video- oder Multimediaströme zu übertragen und mit unterschiedlichen Darstellungsraten abzuspielen. In der bevorzugten Ausführungsform ist das System 50 in der Lage, entweder einen normalen Abspielstrom oder einen oder mehrere Trick-Play-Ströme zu übertragen oder abzuspielen. Die Trick-Play-Ströme können einen oder mehrere schnelle Vorlauf- und/oder schnelle Rücklaufströme aufweisen. In der vorliegenden Beschreibung bezeichnet daher der Begriff "Trick-Play-Ströme" schnelle Vorlauf- und/oder schnelle Rücklaufvideoströme, vorzugsweise komprimierte Ströme, die aus einem normalen Abspielstrom erzeugt werden und die eine andere Darstellungsgeschwindigkeit haben als der normale Abspielstrom.
  • Wie oben bemerkt wurde, sind die normalen Abspielströme und Trick-Play-Ströme vorzugsweise komprimierte Videoströme. Eine Ausführungsform der Erfindung arbeitet unabhängig von dem Typ oder dem Format der Videoströme. Die Videoströme können somit in einem von verschiedenen Typen von Formaten komprimiert sein, einschließlich MPEG-1, MPEG-2, Motion-JPEG, Quicktime usw. Weiterhin arbeitet eine Ausführungsform der Erfindung unabhängig von der Einzelbildgeschwindigkeit und anderen Darstellungsmerkmalen.
  • 2 – Medienserver
  • In 2 weist in dieser Ausführungsform der Medienserver oder Videoserver 50 ein Computersystem 60 auf. 3 ist ein Blockdiagramm, das die Komponenten darstellt, die in dem Medienservercomputersystem 60 von 2 enthalten sind. Das Medienservercomputersystem 60 beinhaltet verschiedene Standardkomponenten einschließlich eines oder mehrerer Prozessoren, eines oder mehrerer Busse, eines Festplattenlaufwerks und Speicher. Es wird bemerkt, daß die 3 nur illustrativ ist und andere Computerarchitekturen verwendet werden können, so wie es gewünscht wird. Wie gezeigt, beinhaltet das Computersystem 60 zumindest einen Prozessor 80, der über die Chipsatzlogik 82 mit einem Systemspeicher 84 verbunden ist. Der Chipsatz 82 beinhaltet eine PCI-Brücke (periphere Komponenten-Zwischenverbindung) für das Bilden einer Schnittstelle zu dem PCI-Bus 86. Das Computersystem 60 beinhaltet eine RAID-(redundante Anordnung von kostengünstigen Platten)Plattenanordnung 90 oder ein anderes Speichermedium für das Speichern der normalen Abspielströme und der entsprechenden Trick-Play-Ströme. Das Computersystem 60 kann ebenso entweder einen MPEG-Decoder 74 oder einen MPEG-Codierer 76 oder beides beinhalten, die mit dem PCI-Bus 86 verbunden gezeigt sind. Das Computersystem 60 kann ebenso einen Videoschaltkreis 88 enthalten, wie gezeigt ist.
  • Unter erneuter Bezugnahme auf 2 beinhaltet das Computersystem 60 eine oder mehrere digitale Speichereinrichtungen oder Medienspeichereinrichtungen oder ist hiermit verbunden. Beispielsweise koppelt in der Ausführungsform von 2 das Computersystem 60 mit einer Medienspeichereinheit 62 über das Kabel 64. Die Medienspeichereinheit 62 kann zusätzlich oder anstelle des Plattenspeichersystems in dem Computersystem 60 sein. Die Medienspeichereinheit 62 beinhaltet ein oder mehrere RAID-Verbundlaufwerke für das Speichern der normalen Abspielströme und der entsprechenden Trick-Play-Ströme. Alternativ dazu kann die Medienspeichereinheit 62 ein oder mehrere CD-ROM-Laufwerke und/oder ein oder mehrere digitale Videodisk-(DVD-)Speichereinheiten oder andere Medientypen für das Speichern von digitalem Video beinhalten. Das Computersystem 60 kann ebenso ein oder mehrere interne CD-ROM-Laufwerke haben oder kann mit einem oder mehreren separaten digitalen Videodisk-(DVD-)Speichereinheiten verbunden sein. Das Computersystem 60 kann ebenso mit anderen Typen von digitalen oder analogen Speichereinrichtungen verbunden sein, wie es gewünscht wird.
  • Die komprimierten normalen Abspiel- und Trick-Play-Ströme können auf einem Speichermedium in dem Medienserver 50 enthalten sein, wie z. B. einer RAID-Plattenanordnung, einer CD-ROM oder einer digitalen Videodisk (DVD). Der Medienserver 50 liest den entsprechenden normalen Abspiel- oder Trick-Play-Strom von dem Speichermedium und stellt die Daten nach außen zu einer oder mehreren Anzeigeeinheiten oder Betrachtern (Teilnehmern) 52 zur Verfügung. Der Medienserver 50 kann die Videodaten ausgeben unter Verwendung verschiedener Kommunikationsmedien, wie z. B. ATM (asynchroner Übertragungsmodus), ISDN (Dienste integrierendes digitales Telekommunikationsnetz) oder über Satellit. Wie oben erwähnt wurde, können die Teilnehmeranzeigeeinheiten Fernseher, Computersysteme oder andere Systeme mit einem Anzeigeschirm für das Anzeigen von Videoinhalt aufweisen.
  • Wie oben erwähnt wurde, indexiert oder schaltet der Medienserver 50 zwischen dem normalen Abspielstrom und den Trick-Play-Videoströmen im allgemeinen basierend auf den Benutzerselektionen. Wie unten weiter erläutert wird, erzeugt der Medienserver 50 Indextabellen für die verschiedenen Ströme und verwendet diese Tabellen, um zwischen den verschiedenen Strömen umzuschalten. In dieser Ausführungsform werden die Indextabellenerzeugungs- und -indexierungsfunktionen von dem Medienserver 50 mittels Software durchgeführt, wobei die Software durch die Disketten 72 dargestellt wird. In einer anderen Ausführungsform beinhaltet das Computersystem 60 eine dedizierte Hardware, die die Indextabellenerzeugungsfunktion oder die Indexierungsfunktion oder beides durchführt.
  • Es sei bemerkt, daß der Medienserver 50 zwei oder mehrere miteinander verbundene Computer aufweisen kann, so wie es gewünscht wird. Es sei erwähnt, daß irgendeines von verschiedenen Typen von Videoliefersystemen verwendet werden kann gemäß der vorliegenden Erfindung, so wie es gewünscht wird.
  • 4 – Erzeugung von Indexnachschlagtabellen
  • In 3 ist ein Diagramm gezeigt, das die Erzeugung von Indexnachschlagtabellen (LUTs) entsprechend der vorliegenden Erfindung zeigt. Hier wird vorausgesetzt, daß ein normaler Abspielstrom und einer oder mehrere Trick-Play-Ströme in dem System gespeichert sind. Die unterschiedlichen Ströme codieren vorzugsweise denselben Inhalt für die Darstellung mit unterschiedlichen Geschwindigkeiten.
  • Wie in Schritt 102 gezeigt ist, empfängt der Server 50 einen normalen Abspielvideostrom oder Multimediastrom oder untersucht ihn. Wie oben erörtert wurde, weist der normale Abspielstrom einen Strom von Videodaten auf, die verwendet werden, um eine Videosequenz darzustellen, wie z. B. einen Fernsehausschnitt oder einen Film auf einem Schirm, wie z. B. einem Fernseher oder einem Computersystem. In dieser Ausführungsform ist der normale Abspielstrom ein komprimierter Strom, vorzugsweise ein MPEG-2-komprimierter Strom, obgleich andere Komprimierungstypen verwendet werden können, so wie es gewünscht wird. Folglich werden die Index-LUTs unter Verwendung des existierenden MPEG-codierten Videostroms erzeugt.
  • In Schritt 104 analysiert der Server 50 die Zeitstempel innerhalb des Stroms. In dieser Ausführungsform, wo der Strom ein MPEG-Strom ist, analysiert das System die Darstellungszeitstempel aus den Sequenzkopfzeilen in dem Strom. Wie oben erwähnt wurde, werden die Darstellungszeitstempel verwendet, um eine Zeitbasis für die Videosequenz bereitzustellen. Wie oben erörtert wurde, beinhaltet ein MPEG-codierter Strom eine Mehrzahl von I-Frames bzw. I-Einzelbildern, die intracodierte Bilder sind, und eine Mehrzahl von B- und P-Frames, die intercodierte Einzelbilder sind. Die I-Frames enthalten jeweils Videodaten für ein gesamtes Videoeinzelbild und werden periodisch in der Sequenz plaziert. Die P- und B-Frames beinhalten Veränderungsinformation relativ zu vorherigen oder nachfolgenden Einzelbildern. Jedes Bild oder Einzelbild beinhaltet ebenso eine Bildkopfzeile, die das Einzelbild identifiziert und Informationen für dieses Einzelbild beinhaltet. Ein MPEG-codierter Strom beinhaltet weiterhin eine oder mehrere Sequenzkopfzeilen, die verschiedene Infor mation betreffend die Videosequenz beinhalten, einschließlich u. a. der Einzelbildgeschwindigkeit und der Bildgröße. Die Sequenzkopfzeilen beinhalten Darstellungszeitstempel, die die Abspielzeit der Videosequenz anzeigen.
  • In Schritt 106 bildet der Server 50 die Darstellungszeitstempel auf einen "normale Abspielzeit"-(NPT-)Standard ab. Der Server 50 definiert somit einen Multimediaindex basierend auf dem Konzept der NPT, die mit einer "Position" innerhalb eines Multimediatitels verknüpft sein kann. Positionen werden als äquivalent zwischen den Multimedia- oder Videoströmen mit unterschiedlichen Darstellungsgeschwindigkeiten definiert, wenn der Inhalt, der an der entsprechenden Position vorhanden ist, im wesentlichen konzeptuell äquivalent ist. Somit wird für Videodaten die Position als äquivalent definiert, wenn dasselbe oder im wesentlichen dasselbe Bild in der Sequenz dargestellt wird, was Unterschiede in der Auflösung und anderen Codierungsparametern erlaubt, die für den Strom speziell sein können.
  • In einer Ausführungsform der Erfindung stellt NPT eine Anzeige der kontextuellen Position innerhalb eines komprimierten Videostroms oder irgendeinem anderen Multimediafile zur Verfügung durch Zuweisen eines ansteigenden numerischen Wertes zu nachfolgenden Elementen, z. B. Einzelbildern oder Sequenzen, in dem Strom. Im Ergebnis erlaubt NPT, daß der Ort eines bestimmten Inhaltseintrags innerhalb des Videostroms ungeachtet der Darstellungsgeschwindigkeit, des Codierungsschemas oder des Speichermediums bestimmt wird.
  • Bei der Erzeugung des normalen Abspielzeitstandards untersucht der Server 50 die Darstellungszeitstempel und beobachtet den ursprünglichen oder Basisdarstellungszeitstempel zu Beginn des Filmes. Der Server 50 subtrahiert dann den Basis- oder ursprünglichen Darstellungszeitstempel von nachfolgenden Zeitstempeln, um die normalen Abspielzeitwerte für den normalen Abspielstrom zu bestimmen, wodurch ein Basisdarstellungszeitstempel von nicht Null kompensiert wird. Mit anderen Worten subtrahiert das System, um die normale Abspielzeit für einen gegebenen Punkt in dem normalen Abspielstrom zu berechnen, den Basisdarstellungszeitstempel von einem zukünftigen Darstellungszeitstempel an einem entsprechenden Punkt oder Ort in dem normalen Abspielstrom, um den normalen Abspielzeitwert für diesen Ort zu bestimmen.
  • In dieser Ausführungsform ist die normale Abspielzeit (NPT) für eine Position in einem Multimediastrom die Zeit von dem Beginn des Titels bis zu der entsprechenden Position, wenn sie durch die Darstellung des Vorlaufstroms mit normaler Geschwindigkeit oder des normalen Abspielstroms gemessen wird. Daher wird das Konzept der normalen Abspielzeit verwendet. Die normale Abspielzeit entspricht der Geschwindigkeit des normalen Abspielstroms und hat eine 1 : 1-Korrespondenz mit der Taktzeit. Somit tickt mit jeder Sekunde, die der normale Abspielfilm vorwärtstickt, die normale Abspielzeit eine Sekunde vorwärts. In einem schnellen Vorlauffile oder schnellen Vorlauf-Trick-Play-Strom ist die normale Abspielzeit, wenn der schnelle Vorlaufstrom 5 × schneller ist, 5 × schneller als der Benutzer den Film betrachtet.
  • Im allgemeinen wird jede bestimmte Szene in dem Film durch eine normale Abspielzeit identifiziert.
  • Wenn somit eine bestimmte Szene bei X Minuten in dem Film in der normalen Abspielzeit auftritt, dann wird diese Position oder Szene als X Minuten bezeichnet bzw. hierdurch darauf Bezug genommen. Diese bestimmte Szene wird ebenso in jedem der anderen Trick-Play-Ströme als X Minuten normale Abspielzeit lokalisiert. Somit tritt in dem schnellen Vorlauf- und schnellen Rücklaufstrom, obgleich die Zeit viel schneller verstreicht, bei X Minuten normaler Abspielzeit die betreffende Szene auf.
  • In Schritt 108 erzeugt der Server 50 eine Indexnachschlagtabelle für jeden der Multimediaströme, d. h. für den normalen Abspielstrom und jeden der Trick-Play-Ströme. Die Indexnachschlagtabelle für den Multimediastrom mit normaler Abspieldauer weist einen Index oder eine Anordnung von Zwei-Tupeln auf. Die Indexnachschlagtabellen für einen normalen Abspiel-, schnellen Vorlauf- und schnellen Rücklaufstrom sind in 5 gezeigt. Wie gezeigt, weist jedes Tupel einen normalen Abspielzeitwert und einen entsprechenden File-Offsetwert innerhalb des Stroms auf.
  • Es sei bemerkt, daß die Einträge in jedem NPT-Index durch Anforderungen des Codierungsschemas beschränkt sein können. Beispielsweise können einige Codierungsschemata nur die wahlfreie Positionierung in dem codierten Strom bei bestimmten nicht-linearen Intervallen erlauben. Im Falle eines MPEG-2-Transportstroms wird der "Random Access Indicator" bzw. Indikator mit Direktzugriff innerhalb der Transportpaketkopfzeile eingestellt, um die File-Offsetwerte der entsprechenden codierten Datenpakete anzuzeigen und die resultierenden NPT-Indizes sind "wahlfrei zugreifbar".
  • Für den normalen Abspielstrom weisen die normalen Abspielzeiteinträge die normalen Abspielzeitwerte auf, die in Schritt 106 berechnet wurden. Für die skalierten Ströme, z. B. die schnellen Vorlauf- und schnellen Rücklaufströme, wird ein Skalierungsfaktor in die normalen Abspielzeitwerte der Indexnachschlagtabelle eingefügt, um die unterschiedlichen Darstellungsgeschwindigkeiten zu kompensieren. Die Skalierung der Darstellungszeitstempel kann verwirklicht werden durch Multiplizieren des komprimierten Darstellungszeitstempelwertes mit dem Verhältnis der Darstellungsgeschwindigkeit zu der normalen Darstellungsgeschwindigkeit.
  • Es sei bemerkt, daß äquivalente Positionen in den Multimediaströmen mit unterschiedlichen Darstellungsgeschwindigkeiten gleiche NPT-Werte haben werden, obgleich die tatsächliche Zeitdarstellung von dem Beginn des Stromes zu der Position sich für die unterschiedlichen Ströme unterscheiden wird. Es sei ebenso bemerkt, daß äquivalente Positionen in Multimediaströmen mit unterschiedlichen Darstellungsgeschwindigkeiten, obwohl sie gleiche NPT-Werte haben, unterschiedliche Byte-Offsetwerte haben werden aufgrund einer vermutlichen Längendifferenz der Ströme mit unterschiedlichen Darstellungsgeschwindigkeiten.
  • Die Indexnachschlagtabellen spezifizieren Indizes oder Einträge, die jeweils auf einer normalen Abspielzeit und einem File-Offsetwert basieren, um es dem Multimediaserver 50 zu erlauben, das Abspielen zu einem bestimmten normalen Abspielzeitpunkt in dem Multimediastrom zu initiieren oder zu stoppen. Die Indexnachschlagtabellenindizes erlauben es dem Multimediaserver 50 ebenso, zu und zwischen äquivalenten Positionen zwischen Strömen von unterschiedlichen Darstellungsgeschwindigkeiten zu übertragen, d. h. zwischen normalen Abspiel- und Trick-Play-Strömen. Die In dexnachschlagtabelle beinhaltet nur Tupel, die gültige Positionen für das Starten, Stoppen oder Transferieren zwischen den Strömen darstellen.
  • Die Erzeugung der Nachschlagtabellen ist unabhängig von irgendeinem bestimmten Typ der Videokomprimierung oder MPEG-Darstellung. Wo somit MPEG-Komprimierung verwendet wird, werden die Indexnachschlagtabellen erzeugt durch Scannen durch den MPEG-File, Notieren der Direktzugriffspunkte in dem MPEG-File, um die Darstellungszeitstempeldiskontinuitäten zu kompensieren, und dann Umwandeln von dem Darstellungszeitstempel in dem MPEG-File in den normalen Abspielzeitstandard. Konzeptuell weist jede Indextabelle eine Anordnung von normaler Abspielzeit gegenüber Szenen auf und jedes bestimmte Bild in dem Film kann durch den normalen Abspielzeitwert identifiziert werden. Wie oben erwähnt wurde, wird eine Indextabelle für jede Darstellungsgeschwindigkeit erzeugt, z. B. für den schnellen Vorlauf, den schnellen Rücklauf und das normale Abspielen. Jeder der in der Indextabelle gespeicherten Offsetwerte ist ein Index von der normalen Abspielzeit zu einem Byte-Offsetwert in diesem MPEG-File, wo die bestimmte Szene beginnt.
  • Der Server 50 verwendet somit einen normalen Abspielzeitstandard, anstatt Zeitstempel in dem Videostrom zu verwenden. Wie oben erwähnt wurde, sind die Darstellungszeitstempel in einer MPEG-Sequenz typischerweise nicht immer verfügbar. Beispielsweise gibt es keine Anforderung, daß die Zeitstempel kontinuierlich sind, z. B. könnte es Abbrüche oder Lücken in den Darstellungszeitstempeln geben. Daher verwendet im Gegensatz zu Verfahren des Standes der Technik eine Ausführungsform der Erfindung nicht die Darstellungszeitstempel als eine Basis für das Erzeugen der Indextabellen. Stattdessen bildet eine Ausführungsform der Erfindung die Darstellungszeitstempel auf einen normalen Abspielzeitstandard ab und dieser normale Abspielzeitstandard wird dann als Basis für das Erzeugen der Indextabellen verwendet.
  • 6 – Übertragen zwischen den Strömen
  • In 6 ist ein Flußdiagramm gezeigt, das den Betrieb des Systems der vorliegenden Erfindung, der Ausgänge zwischen Multimediaströmen mit unterschiedlichen Darstellungsgeschwindigkeiten überträgt, darstellt. Hier wird angenommen, daß ein gegenwärtiger Video- oder Multimediastrom von dem Medienserver 50 ausgegeben wird und daß der Medienserver 50 eine Benutzereingabe empfangen hat, die anzeigt, daß ein anderer Strom ausgegeben werden sollte. Beispielsweise kann der Medienserver den normalen Abspiel-Multimediastrom bereitstellen und der Medienserver 50 empfängt eine Benutzereingabe einer schnellen Vorlauf- oder schnellen Rücklaufauswahl, die anzeigt, daß entweder der schnelle Vorlauf- oder der schnelle Rücklauf-Trick-Play-Strom an einem geeigneten Punkt ausgegeben werden sollte.
  • Wenn eine Benutzereingabe empfangen wird, die eine gewünschte Veränderung in der Darstellungsgeschwindigkeit anzeigt, dann findet in Schritt 202 der Medienserver 50 ein Tupel in der Indextabelle des gegenwärtigen Stroms oder Files, der einen Offsetwert hinter dem gegenwärtigen Ausgabeoffset enthält. Mit anderen Worten findet der Medienserver 50 in Schritt 202 unter der Annahme, daß der gegenwärtige Strom abgespielt wird und an einem bestimmten Punkt oder Offset innerhalb des Stromes ist, das Tupel oder den Eintrag in der Indextabelle des gegenwärtigen Stroms, das einen Offsetwert enthält, der an oder gerade hinter dem gegenwärtigen Ausgabeoffsetwert ist. Der gegenwärtige Ausgabeoffsetwert wird vorzugsweise durch die Medienfilesystemsoftware (MFS), die in dem Medienserver 50 ausgeführt wird, bereitgestellt. In Schritt 202 empfängt der Medienserver 50 diesen Byte-Offsetwert der gegenwärtigen Ausgabe des Stroms und sucht in der Indextabelle nach dem nächsten Offsetwert, der größer oder gleich dem Byte-Offsetwert der gegenwärtigen Ausgabe des Stroms ist.
  • In Schritt 204 plant der Medienserver 50, bei dem gegenwärtigen Strom die Ausgabe an diesem Offsetwert, der in Schritt 202 bestimmt wird, zu beenden. Somit findet der Medienserver 50 vorzugsweise, um einen gegenwärtig ausgegebenen Strom zu beenden, das Tupel für die nächste nachfolgende normale Abspielzeit oder den nächsten Offsetwert des Ortes, der gegenwärtig abgespielt wird, und verwendet den verknüpften Offsetwert dieses Typs, um das Abspielen des gegenwärtigen Videostroms an diesem Offsetwert zu beenden.
  • In Schritt 206 bestimmt der Medienserver 50 die normale Abspielzeit für den gegenwärtigen Strom. Es wird bemerkt, daß die normale Abspielzeit für den gegenwärtigen Strom vorher in Schritt 202 bestimmt worden sein kann. Mit anderen Worten kann der gegenwärtige normale Abspielzeitwert in diesem Tupel, wenn der nächste Offsetwert größer als der Byte-Offsetwert des gegenwärtigen Ausgabestroms in Schritt 202 bestimmt wurde, als normale Abspielzeit für den gegenwärtigen Strom verwendet werden.
  • In Schritt 208 findet der Medienserver 50 das Tupel in der Indextabelle des neuen Stroms, d. h. den auszugebenden Strom mit der nächsten normalen Abspielzeit zu der normalen Abspielzeit des gegenwärtigen Stroms. In Schritt 210 verwendet der Medienserver 50 den Offsetwert des in Schritt 208 gefundenen Tupels, um die Ausgabe des neuen Stroms an diesem Offsetwert zu initiieren. Die Ausgabe des neuen Stroms wird vorzugsweise initiiert, nachdem der gegenwärtige Strom beendet wird, wobei der gegenwärtige Strom für die Beendigung in Schritt 204 terminiert wird, wie oben beschrieben wurde.
  • Die Initiierung und die Beendigung der Ausgabe eines entsprechenden auszugebenden Stroms bei einer gegebenen normalen Abspielzeit wird daher verwirklicht durch Auffinden des Tupels für die nächstliegende normale Abspielzeit in der entsprechenden Indextabelle und durch Verwenden des verknüpften File-Offsetwertes als dem Punkt, um das Abspielen des Stroms zu initiieren oder zu beenden. Das Übertragen zwischen verschiedenen Multimediadatenströmen mit unterschiedlichen Darstellungsgeschwindigkeiten wird verwirklicht durch Verwenden der Einträge in jeder der entsprechenden Tabellen des gegenwärtigen Stroms und der neue Strom wird abgespielt, um die Beendigung der Ausgabe des gegenwärtigen Stroms und des Beginns des Abspielens des neuen Stroms erneut zu terminieren.
  • Zusammenfassend stellt die vorliegende Erfindung ein System und ein Verfahren für die Indexierung zwischen normalen Abspielvideoströmen und Trick-Play-Videoströmen zur Verfügung. Eine Ausführungsform der Erfindung untersucht die Darstellungszeitstempel in den Sequenzkopfzeilen des normalen Abspielstroms und erzeugt einen normalen Abspielzeitstandard, der für alle Ströme verwendet wird. Das System erzeugt dann Indextabellen oder Nachschlagtabellen für den Strom. Die Indextabellen für die Ströme weisen normale Abspielzeitwerte und entsprechende Offsetwerte in den entsprechenden Strömen auf. Während des Abspielens verwendet das Videoliefersystem diese Indextabelle, um intelligent zwischen dem normalen Abspielstrom und den Trick-Play-Strömen hin- und herzuspringen oder zwischen diesen zu indexieren. Dieser Ansatz erlaubt ebenso nicht-konstante Darstellungsgeschwindigkeiten, wie z. B. Szenen-Vorwärtsgeschwindigkeiten oder Darstellungsgeschwindigkeiten basierend auf der Komplexität des Inhalts.
  • Andere Modifikationen können verwendet werden, um einen normalen Abspielzeitstandard für den normalen Abspielstrom zu erzeugen, ohne von der vorliegenden Erfindung abzuweichen. Beispielsweise können die NPT-Index-LUTs ebenso vor der Codierung der Videoströme codiert werden durch die Verwendung von Framezahlen oder Sequenzzahlen. Alternativ können die NPT-Indizes gleichzeitig mit der Videoinhaltscodierung erzeugt werden. In beiden Fällen können die NPT-Indizes durch Multiplizieren der Framezahl mit der Framegeschwindigkeit erzeugt werden. Diese NPT-Position kann dann mit dem File-Offsetwert des codierten Frames verknüpft sein.
  • In noch einer anderen beispielhaften Ausführungsform wird der Videoinhalt mit einer konstanten Bitgeschwindigkeit codiert. Folglich können die NPT-Einträge für irgendeine Untergruppe (möglicherweise echte Untergruppe) des Direktzugriffspunktes, der durch den codierten Videostrom spezifiziert wird, unter Verwendung der folgenden Gleichungen erzeugt werden:
  • Für die Vorwärtsdarstellungen (d. h. einen positiven Darstellungsgeschwindigkeitsskalierungsfaktor) kann der NPT-Wert für jeden File-Offsetwert, bei dem ein Direktzugriftspunkt auftritt, unter Verwendung der Gleichung berechnet werden: NPT = (PresentationRateScaleFactor*FileBitOffset)/ConstantBitRate
  • Im Gegensatz dazu kann für die Rückwärtsdarstellungen (d. h. einen negativen Darstellungsgeschwindigkeitsskalierungsfaktor) der NPT-Wert für jeden File-Offsetwert unter Verwendung der Gleichung berechnet werden: NPT = TotalNPT + ((PresentationRateScaleFactor*FileBitOffset)/ConstantBitRate)
  • Wobei:
    PresentationRateScaleFactor = Verhältnis der Darstellungsgeschwindigkeit in Bezug auf die normale Darstellungsgeschwindigkeit (z. B. zeigt ein Wert von 7 einen 7 × schnelleren Vorlauf an, ein Wert von –5 zeigt einen 5 × schnelleren Rücklauf an),
    FileBitOffset = die Anzahl von Bits von dem Beginn der Codierung zu dem File-Offsetwert, der als Direktzugriffspunkt spezifiziert ist,
    ConstantBitRate = die konstante Bitgeschwindigkeit, mit der beabsichtigt ist, die Codierung abzuspielen und
    TotalNPT = die Gesamtzeitdauer der Normalgeschwindigkeitsdarstellung (d. h. was gemeinhin als die Länge des Films erachtet wird).
  • Obgleich das System und das Verfahren der vorliegenden Erfindung in Verbindung mit den beschriebenen Ausführungsformen beschrieben wurden, ist es nicht beabsichtigt, die Erfindung auf die spezifische Form zu begrenzen, die hier ausgeführt wurde, sondern im Gegenteil ist es beabsichtigt, solche Alternativen, Modifikationen und Äquivalente abzudecken, soweit sie vernünftig innerhalb des Schutzbereiches der Erfindung aufgenommen werden können, wie er durch die angefügten Ansprüche definiert wird.

Claims (22)

  1. Computerimplementiertes Verfahren für das Indexieren zwischen einem ersten und einem zweiten in Bezug stehenden Videostroms mit unterschiedlichen Darstellungsraten, wobei das Verfahren den Schritt aufweist des Erzeugens von Index-Nachschlagtabellen (LUTs) für jeden der betroffenen Videoströme unter Verwendung eines Zeitstandards für das normale Abspielen, wobei jede der Index-LUTs eine Mehrzahl von Einträgen beinhaltet, die einen Zeitwert für das normale Abspielen und einen entsprechenden Offsetwert in dem entsprechenden Videostrom aufweist.
  2. Verfahren nach Anspruch 1, wobei die Videoströme einen normalen Abspielstrom beinhalten, wobei das Erzeugen der Index-Nachschlagtabellen für den ersten und den zweiten Videostrom beinhaltet: Empfangen des normalen Abspielstroms, wobei der normale Abspielstrom eine Mehrzahl von Zeitstempeln beinhaltet, und Abbilden der Mehrzahl von Zeitstempeln auf den Zeitstandard für das normale Abspielen, wobei das Erzeugen der Index-Nachschlagtabellen für den ersten und zweiten Videostrom den Zeitstandard für das normale Abspielen verwendet.
  3. Verfahren nach Anspruch 2, wobei die Videoströme verschiedene Darstellungsraten haben, die MPEG-komprimierte Ströme aufweisen, wobei das Abbilden der Mehrzahl von Zeitstempeln auf einen Zeitstandard für das normale Abspielen das Untersuchen einer Kopfzeilensequenz in dem MPEG-komprimierten normalen Abspielstrom für die Mehrzahl von Zeitstempeln aufweist.
  4. Verfahren nach einem der vorherigen Ansprüche, wobei die Videoströme Trickspielströme bzw. Trickplayströme beinhalten einschließlich einem schnellen Vorlaufstrom und einem schnellen Rücklaufstrom.
  5. Verfahren nach einem der vorherigen Ansprüche, wobei die normale Abspielzeit eine 1 : 1 Korrespondenz zur Taktzeit hat.
  6. Verfahren nach einem der vorherigen Ansprüche, das weiterhin aufweist: Übertragen von Videodaten von dem ersten Videostrom zu einem Ausgang des Computers und Umherschalten zwischen dem ersten Videostrom und dem zweiten Videostrom unter Verwendung der Index-Nachschlagtabellen.
  7. Verfahren nach Anspruch 6, wobei das Umschalten zwischen dem ersten und dem zweiten Strom beinhaltet: Bestimmen der normalen Abspielzeit des ersten Videostroms, Bestimmen eines Offsetwertes in dem zweiten Videostrom, basierend auf der normalen Abspielzeit des ersten Videostroms und Initiieren der Ausgabe des zweiten Videostroms bei dem bestimmten Offsetwert in dem zweiten Videostrom.
  8. Verfahren nach Anspruch 7, wobei das Bestimmen eines Offsetwertes in dem zweiten Videostrom, basierend auf der normalen Abspielzeit des ersten Videostroms aufweist: Auffinden eines Eintrags in einer Index-Nachschlagtabelle des zweiten Videostroms mit einem normalen Abspielzeitwert nahe der normalen Abspielzeit des ersten Videostroms und Bestimmen des Offsetwertes in dem gefundenen Eintrag in der Index-Nachschlagtabelle des zweiten Videostroms.
  9. Verfahren nach Anspruch 7, wobei das Umschalten zwischen dem ersten und zweiten Videostrom weiterhin aufweist: Bestimmen eines Eintrags in einer Indextabelle für den ersten Videostrom, der einen Offsetwert enthält, der über den Datenoffset, der gegenwärtig von dem zweiten Videostrom ausgegeben wird, hinausgeht und Einteilen der Ausgabe des gegenwärtigen Stroms, so daß er an dem Offset, der über den Datenoffset, der gegenwärtig von dem ersten Videostrom ausgegeben wird, hinausgeht, endet.
  10. Verfahren nach Anspruch 7, das weiterhin aufweist: Übertragen von Videodaten von dem ersten Videostrom zu einem Ausgang des Computers, Bezugnehmen auf die Index-Nachschlagtabelle (LUT) für jeden Videostrom, wobei jede LUT mit einem der Videoströme verknüpft ist und eine Mehrzahl von Einträgen aufweist, die einen normalen Abspielzeitwert (NPT) für den verknüpften Videostrom und einen entsprechenden Offsetwert in dem verknüpften Videostrom aufweist, Umschalten von dem ersten Videostrom zu dem zweiten Strom unter Verwendung der Index-LUTs und Übertragen der Videodaten von dem zweiten Videostrom zu dem Ausgang des Computers.
  11. Verfahren nach Anspruch 10, wobei das Umschalten zwischen dem ersten und dem zweiten Strom beinhaltet: Bestimmen der normalen Abspielzeit des ersten Videostroms, Bestimmen des Offsetwertes in dem zweiten Videostrom, basieren auf der normalen Abspielzeit des ersten Videostroms und Initiieren der Ausgabe des zweiten Videostroms an dem bestimmten Offsetwert in dem zweiten Videostrom.
  12. Verfahren nach einem der vorherigen Ansprüche, wobei die Videoströme einen schnellen Vorlaufstrom und einen schnellen Rücklaufstrom beinhalten, wobei die LUT für den schnellen Vorlaufstrom eine Mehrzahl von Einträgen aufweist, die jeweils einen normalen Abspielzeitwert und einen entsprechenden Offsetwert in dem schnellen Vorlaufstrom beinhaltet, wobei die LUT für den schnellen Rücklaufstrom eine Mehrzahl von Einträgen beinhaltet, die jeweils einen normalen Abspielzeitwert und einen entsprechenden Offsetwert in dem schnellen Rücklaufstrom aufweist.
  13. Verfahren nach Anspruch 12, wobei die Videoströme einen normalen Abspielstrom, einen schnellen Vorlaufstrom und einen schnellen Rücklaufstrom beinhalten, wobei die LUT für den normalen Abspielstrom eine Mehrzahl von Einträgen beinhaltet, die jeweils einen normalen Abspielzeitwert und einen entsprechenden Offsetwert in dem normalen Abspielstrom aufweist, wobei die LUT für den schnellen Vorlaufstrom eine Mehrzahl von Einträgen aufweist, die jeweils einen normalen Abspielzeitwert und einen entsprechenden Offsetwert in dem schnellen Vorlaufstrom aufweisen, wobei die LUT für den schnellen Rücklaufstrom eine Mehrzahl von Einträgen beinhaltet, die jeweils einen normalen Abspielzeitwert und einen entsprechenden Offsetwert in dem schnellen Vorlaufstrom aufweisen.
  14. Speichermedium, das Programmbefehle für das Durchführen der Verfahren nach einem der Ansprüche 1 bis 13 aufweist.
  15. Videoserver (50), der Videoströme bereitstellt mit unterschiedlichen Darstellungsgeschwindigkeiten, wobei der Videoserver zwischen den Videoströmen mit unterschiedlichen Darstellungsgeschwindigkeiten indexiert, wobei der Videoserver aufweist: einen Videospeicher (62), der derart konfiguriert ist, daß er die Videoströme mit unterschiedlichen Darstellungsgeschwindigkeiten speichert, eine Index-Nachschlagtabelle (LUT) für jeden der Videoströme, wobei die Index-Nachschlagtabelle auf einem Zeitstandard für das normale Abspielen basiert, wobei jede der Index-Nachschlagtabellen eine Mehrzahl von Einträgen beinhaltet, die einen normalen Ab spielzeitwert des verknüpften Videostroms und einen entsprechenden Offsetwert in dem verknüpften Videostrom aufweisen, ein oder mehrere Ausgangsanschlüsse, die mit dem Videospeicher verbunden sind, für das Übertragen von Videodaten aus einem der Videoströme und einen Schalter, der mit dem Videospeicher und der Index-LUT verknüpft ist und derart konfiguriert ist, daß er zwischen den Videoströmen an dem einen oder mehreren Ausgangsanschlüssen umschaltet, wobei der Schalter die Index-Nachschlagtabellen bei dem Umschalten zwischen den Videoströmen verwendet.
  16. Videoserver nach Anspruch 15, wobei die Videoströme einen normalen Abspielstrom beinhalten und der Videoserver weiterhin derart konfiguriert ist, daß er Indizes für die LUTs erzeugt durch Untersuchen des normalen Abspielstroms, der eine Mehrzahl von Zeitstempeln beinhaltet, und durch Abbilden der Mehrzahl von Zeitstempeln auf den normalen Abspielzeitstandard.
  17. Videoserver nach Anspruch 16, wobei die Videoströme MPEG-komprimierte Ströme beinhalten und das Abbilden der Mehrzahl von Zeitstempeln auf dem normalen Abspielzeitstandard verwirklicht wird durch Untersuchen der Abfolgekopfzeilen in einem MPEG-komprimierten normalen Abspielstrom für die Mehrzahl von Zeitstempeln.
  18. Videoserver nach einem der Ansprüche 15 bis 17, der weiterhin derart konfiguriert ist, daß er die normale Abspielgeschwindigkeitszeit eines gegenwärtigen Stroms, der abgespielt wird, bestimmt, daß er einen Offsetwert in einem neuen Strom, basierend auf der normalen Abspielgeschwindigkeitszeit des gegenwärtigen Stroms bestimmt, und daß er die Ausgabe des neuen Stroms bei dem bestimmten Offsetwert in dem neuen Strom anzeigt.
  19. Videoserver nach Anspruch 18, der weiterhin derart konfiguriert ist, daß er einen Eintrag in der Index-Nachschlagtabelle des neuen Stroms mit einem normalen Abspielgeschwindigkeitszeitwert nahe der normalen Abspielzeit des gegenwärtigen Stroms lokalisiert, und den Offsetwert in dem gefundenen Eintrag in der Index-Nachschlagtabelle des neuen Stroms bestimmt.
  20. Videoserver nach Anspruch 18, der weiterhin derart konfiguriert ist, daß er einen Eintrag in einer Indextabelle für den gegenwärtigen Strom bestimmt, der einen Offsetwert enthält, der über einen Offsetwert von Daten, die gegenwärtig von dem gegenwärtigen Strom ausgegeben werden, hinausgeht, und die Ausgabe des gegenwärtigen Stroms derart einteilt, daß er bei dem Offsetwert, der über dem Offsetwert der Daten, die gegenwärtig von dem gegenwärtigen Strom ausgegeben werden, hinausgeht, endet.
  21. Videoserver nach einem der Ansprüche 15 bis 20, wobei die Videoströme unterschiedliche Darstellungsraten haben, einschließlich Trickplayströmen, die einen schnellen Vorlaufstrom und einen schnellen Rücklaufstrom beinhalten.
  22. Videoserver nach einem der Ansprüche 15 bis 21, wobei die normale Abspielzeit eine 1 : 1 Korrespondenz zu der Taktzeit hat.
DE1997627100 1996-06-05 1997-06-04 Vorrichtung und Verfahren zur Indexierung zwischen Videodatenfolgen mit Trick- und Normalwiedergabe in einem Videoverteilsystem Expired - Fee Related DE69727100T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/665,267 US6065050A (en) 1996-06-05 1996-06-05 System and method for indexing between trick play and normal play video streams in a video delivery system
US665267 1996-06-05

Publications (2)

Publication Number Publication Date
DE69727100D1 DE69727100D1 (de) 2004-02-12
DE69727100T2 true DE69727100T2 (de) 2004-11-18

Family

ID=24669415

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1997627100 Expired - Fee Related DE69727100T2 (de) 1996-06-05 1997-06-04 Vorrichtung und Verfahren zur Indexierung zwischen Videodatenfolgen mit Trick- und Normalwiedergabe in einem Videoverteilsystem

Country Status (4)

Country Link
US (1) US6065050A (de)
EP (1) EP0812112B1 (de)
JP (1) JP4589466B2 (de)
DE (1) DE69727100T2 (de)

Families Citing this family (244)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7448063B2 (en) * 1991-11-25 2008-11-04 Actv, Inc. Digital interactive system for providing full interactivity with live programming events
US6973669B2 (en) * 1993-03-29 2005-12-06 Microsoft Corporation Pausing television programming in response to selection of hypertext link
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
US6138147A (en) * 1995-07-14 2000-10-24 Oracle Corporation Method and apparatus for implementing seamless playback of continuous media feeds
CN1113539C (zh) * 1995-07-21 2003-07-02 皇家菲利浦电子有限公司 接收压缩的图像信号的方法和接收机
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
US6208655B1 (en) * 1996-11-27 2001-03-27 Sony Europa, B.V., Method and apparatus for serving data
US7069575B1 (en) * 1997-01-13 2006-06-27 Sedna Patent Services, Llc System for interactively distributing information services
JP4005691B2 (ja) * 1998-03-19 2007-11-07 株式会社東芝 動画像符号化方法および動画像符号化装置
KR100263893B1 (ko) * 1998-05-06 2000-08-16 윤종용 Ieee 1394 네트웍 시스템 실시간 동작 표시 방법
JP2000013777A (ja) * 1998-06-26 2000-01-14 Matsushita Electric Ind Co Ltd 映像再生装置及び映像蓄積装置
US6233389B1 (en) 1998-07-30 2001-05-15 Tivo, Inc. Multimedia time warping system
US7558472B2 (en) 2000-08-22 2009-07-07 Tivo Inc. Multimedia signal processing system
JP2000090644A (ja) * 1998-09-08 2000-03-31 Sharp Corp 画像管理方法及び画像管理装置
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US6622171B2 (en) 1998-09-15 2003-09-16 Microsoft Corporation Multimedia timeline modification in networked client/server systems
KR100345235B1 (ko) * 1998-11-08 2005-07-29 엘지전자 주식회사 디지털데이터스트림기록방법및그장치
US6697489B1 (en) * 1999-03-30 2004-02-24 Sony Corporation Method and apparatus for securing control words
US7730300B2 (en) 1999-03-30 2010-06-01 Sony Corporation Method and apparatus for protecting the transfer of data
US8065708B1 (en) * 1999-03-31 2011-11-22 Cox Communications, Inc. Method for reducing latency in an interactive information distribution system
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
EP1056273A3 (de) * 1999-05-25 2002-01-02 SeeItFirst, Inc. Verfahren und System zur Lieferung von Hochqualitätsbildern aus einem digitalen Videostrom
US6934759B2 (en) * 1999-05-26 2005-08-23 Enounce, Inc. Method and apparatus for user-time-alignment for broadcast works
AU5140200A (en) * 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
EP1214842B1 (de) 1999-09-20 2010-11-17 TiVo, Inc. Untertitel-etikettiersystem
US7240359B1 (en) * 1999-10-13 2007-07-03 Starz Entertainment, Llc Programming distribution system
US8020186B1 (en) 1999-10-13 2011-09-13 Starz Entertainment, Llc Methods and systems for distributing on-demand programming
US8250617B2 (en) * 1999-10-29 2012-08-21 Opentv, Inc. System and method for providing multi-perspective instant replay
US7039614B1 (en) * 1999-11-09 2006-05-02 Sony Corporation Method for simulcrypting scrambled data to a plurality of conditional access devices
US7027713B1 (en) * 1999-11-30 2006-04-11 Sharp Laboratories Of America, Inc. Method for efficient MPEG-2 transport stream frame re-sequencing
KR100630061B1 (ko) * 1999-12-06 2006-09-28 삼성전자주식회사 복수의 서비스 데이터를 구별하기 위한 데이터 타입식별정보등록 및 재생방법
US7149359B1 (en) 1999-12-16 2006-12-12 Microsoft Corporation Searching and recording media streams
US20020019984A1 (en) * 2000-01-14 2002-02-14 Rakib Selim Shlomo Headend cherrypicker with digital video recording capability
US6681397B1 (en) * 2000-01-21 2004-01-20 Diva Systems Corp. Visual improvement of video stream transitions
US7028071B1 (en) * 2000-01-28 2006-04-11 Bycast Inc. Content distribution system for generating content streams to suit different users and facilitating e-commerce transactions using broadcast content metadata
US6675174B1 (en) * 2000-02-02 2004-01-06 International Business Machines Corp. System and method for measuring similarity between a set of known temporal media segments and a one or more temporal media streams
US6868440B1 (en) 2000-02-04 2005-03-15 Microsoft Corporation Multi-level skimming of multimedia content using playlists
US7908635B2 (en) 2000-03-02 2011-03-15 Tivo Inc. System and method for internet access to a personal television service
US8171520B2 (en) * 2000-03-02 2012-05-01 Tivo Inc. Method of sharing personal media using a digital recorder
US8812850B2 (en) * 2000-03-02 2014-08-19 Tivo Inc. Secure multimedia transfer system
US8261315B2 (en) * 2000-03-02 2012-09-04 Tivo Inc. Multicasting multimedia content distribution system
US7237254B1 (en) 2000-03-29 2007-06-26 Microsoft Corporation Seamless switching between different playback speeds of time-scale modified data streams
US6985966B1 (en) 2000-03-29 2006-01-10 Microsoft Corporation Resynchronizing globally unsynchronized multimedia streams
US7222163B1 (en) * 2000-04-07 2007-05-22 Virage, Inc. System and method for hosting of video content over a network
US8171509B1 (en) 2000-04-07 2012-05-01 Virage, Inc. System and method for applying a database to video multimedia
US7962948B1 (en) 2000-04-07 2011-06-14 Virage, Inc. Video-enabled community building
US7260564B1 (en) * 2000-04-07 2007-08-21 Virage, Inc. Network video guide and spidering
US7302490B1 (en) * 2000-05-03 2007-11-27 Microsoft Corporation Media file format to support switching between multiple timeline-altered media streams
JP4538908B2 (ja) * 2000-06-14 2010-09-08 ソニー株式会社 データ変換装置及び方法
US20040205812A1 (en) * 2000-06-22 2004-10-14 Candelore Brant L. Method and apparatus for routing program data in a program viewing unit
GB0016062D0 (en) * 2000-06-30 2000-08-23 Koninkl Philips Electronics Nv Playback of applications with non-linear time
US7548565B2 (en) * 2000-07-24 2009-06-16 Vmark, Inc. Method and apparatus for fast metadata generation, delivery and access for live broadcast program
US7269842B1 (en) * 2000-08-31 2007-09-11 Intel Corporation Time shifting enhanced television triggers
US6766376B2 (en) 2000-09-12 2004-07-20 Sn Acquisition, L.L.C Streaming media buffering system
US7716358B2 (en) 2000-09-12 2010-05-11 Wag Acquisition, Llc Streaming media buffering system
US8595372B2 (en) * 2000-09-12 2013-11-26 Wag Acquisition, Llc Streaming media buffering system
US20020124259A1 (en) * 2000-09-27 2002-09-05 Chang Edward Y. Client-based interactive digital television architecture
US7231132B1 (en) * 2000-10-16 2007-06-12 Seachange International, Inc. Trick-mode processing for digital video
US20020054029A1 (en) * 2000-11-28 2002-05-09 Glancy John Thomas Interactive display system
US7683903B2 (en) * 2001-12-11 2010-03-23 Enounce, Inc. Management of presentation time in a digital media presentation system with variable rate presentation capability
GB0030706D0 (en) * 2000-12-15 2001-01-31 British Telecomm Delivery of audio and or video material
WO2002049343A1 (en) * 2000-12-15 2002-06-20 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US7447791B2 (en) 2000-12-15 2008-11-04 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
US20020144276A1 (en) * 2001-03-30 2002-10-03 Jim Radford Method for streamed data delivery over a communications network
US20020145622A1 (en) * 2001-04-09 2002-10-10 International Business Machines Corporation Proxy content editing system
US8707357B1 (en) 2001-04-23 2014-04-22 Starz Entertainment, Llc Thematic VOD navigation
US7895616B2 (en) 2001-06-06 2011-02-22 Sony Corporation Reconstitution of program streams split across multiple packet identifiers
US7747853B2 (en) 2001-06-06 2010-06-29 Sony Corporation IP delivery of secure digital content
US7151831B2 (en) * 2001-06-06 2006-12-19 Sony Corporation Partial encryption and PID mapping
US7540011B2 (en) * 2001-06-11 2009-05-26 Arrowsight, Inc. Caching graphical interface for displaying video and ancillary data from a saved video
FI115418B (fi) * 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US7107608B2 (en) * 2001-10-01 2006-09-12 Microsoft Corporation Remote task scheduling for a set top box
US6738980B2 (en) * 2001-11-15 2004-05-18 Industrial Technology Research Institute Methods and systems for video streaming with VCR functionality
AU2002366679A1 (en) * 2001-12-12 2003-06-23 Koninklijke Philips Electronics N.V. Playback of interactive television applications
KR100614371B1 (ko) * 2001-12-22 2006-08-18 주식회사 휴맥스 디지털 방송 스트림의 변속재생 제어정보 기록방법과,그에 따른 디지털 방송수신기에서의 변속재생 제어방법
US7274857B2 (en) 2001-12-31 2007-09-25 Scientific-Atlanta, Inc. Trick modes for compressed video streams
US7765567B2 (en) 2002-01-02 2010-07-27 Sony Corporation Content replacement by PID mapping
US7039938B2 (en) * 2002-01-02 2006-05-02 Sony Corporation Selective encryption for video on demand
US7823174B2 (en) 2002-01-02 2010-10-26 Sony Corporation Macro-block based content replacement by PID mapping
US7215770B2 (en) * 2002-01-02 2007-05-08 Sony Corporation System and method for partially encrypted multimedia stream
US7242773B2 (en) * 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US7764863B1 (en) * 2002-03-06 2010-07-27 Bigband Networks Inc. System and method for providing trick modes
US8302144B2 (en) * 2002-03-13 2012-10-30 Cox Communications, Inc. Distribution of content in an information distribution system
US8214655B2 (en) 2002-03-29 2012-07-03 Kabushiki Kaisha Toshiba Data structure of multimedia file format, encrypting method and device thereof, and decrypting method and device thereof
US8312504B2 (en) 2002-05-03 2012-11-13 Time Warner Cable LLC Program storage, retrieval and management based on segmentation messages
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
US7073189B2 (en) 2002-05-03 2006-07-04 Time Warner Interactive Video Group, Inc. Program guide and reservation system for network based digital information and entertainment storage and delivery system
US8443383B2 (en) 2002-05-03 2013-05-14 Time Warner Cable Enterprises Llc Use of messages in program signal streams by set-top terminals
US8392952B2 (en) * 2002-05-03 2013-03-05 Time Warner Cable Enterprises Llc Programming content processing and management system and method
US20050034171A1 (en) * 2002-05-03 2005-02-10 Robert Benya Technique for delivering programming content based on a modified network personal video recorder service
US7610606B2 (en) * 2002-05-03 2009-10-27 Time Warner Cable, Inc. Technique for effectively providing various entertainment services through a communications network
FR2842690B1 (fr) * 2002-07-17 2004-10-08 Thomson Licensing Sa Procede et dispositif de transmission de donnees video pour la mise en oeuvre de modes speciaux
US8818896B2 (en) 2002-09-09 2014-08-26 Sony Corporation Selective encryption with coverage encryption
US7596298B2 (en) * 2002-10-10 2009-09-29 Koninklijke Philips Electronics N.V. Synchronizing interactive applications during trick-play
US20040093427A1 (en) * 2002-10-29 2004-05-13 Lopez Ricardo Jorge Service diversity for communication system
US20040081199A1 (en) * 2002-10-29 2004-04-29 Lopez Ricardo Jorge Multi-channel communication system and method based on class of service requirements
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
US7926080B2 (en) * 2002-11-07 2011-04-12 Microsoft Corporation Trick mode support for VOD with long intra-frame intervals
US7720999B2 (en) * 2002-11-26 2010-05-18 Qualcomm Incorporated System and method for optimizing multimedia compression using plural encoders
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
AU2003900137A0 (en) * 2003-01-14 2003-01-30 Canon Kabushiki Kaisha Process and format for reliable storage of data
US20040165586A1 (en) * 2003-02-24 2004-08-26 Read Christopher Jensen PID filters based network routing
CN1791939A (zh) * 2003-05-16 2006-06-21 皇家飞利浦电子股份有限公司 记录和重放的方法以及视频记录和重放系统
JP4165298B2 (ja) * 2003-05-29 2008-10-15 株式会社日立製作所 端末装置、及び通信網の切替え方法
US20050022245A1 (en) 2003-07-21 2005-01-27 Ramesh Nallur Seamless transition between video play-back modes
US20050155072A1 (en) * 2003-10-07 2005-07-14 Ucentric Holdings, Inc. Digital video recording and playback system with quality of service playback from multiple locations via a home area network
US7853980B2 (en) 2003-10-31 2010-12-14 Sony Corporation Bi-directional indices for trick mode video-on-demand
DE10353564A1 (de) * 2003-11-14 2005-06-16 Deutsche Thomson-Brandt Gmbh Verfahren zur abschnittsweisen, diskontinuierlichen Übertragung von Daten in einem Netzwerk verteilter Stationen sowie Netzwerkteilnehmerstation als Anforderungsgerät bei der Durchführung eines solchen Verfahrens als auch Netzwerkteilnehmerstation als Quellgerät bei der Durchführung eines solchen Verfahrens
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US20060200744A1 (en) * 2003-12-08 2006-09-07 Adrian Bourke Distributing and displaying still photos in a multimedia distribution system
EP1693999A4 (de) * 2003-12-11 2011-09-14 Panasonic Corp Paketsendervorrichtung
CN101659704A (zh) * 2004-03-11 2010-03-03 弗雷泽纽斯卡比德国有限公司 通过还原氨基化制备的羟烷基淀粉和蛋白质的偶联物
CN100382594C (zh) * 2004-05-27 2008-04-16 扬智科技股份有限公司 影音信号快进播放方法
TWI270855B (en) * 2004-06-08 2007-01-11 Ali Corp Digital video multiplexing method and device
US20060013556A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Commercial information and guide
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
US20060013555A1 (en) * 2004-07-01 2006-01-19 Thomas Poslinski Commercial progress bar
US8600217B2 (en) 2004-07-14 2013-12-03 Arturo A. Rodriguez System and method for improving quality of displayed picture during trick modes
US20060031892A1 (en) * 2004-08-05 2006-02-09 Bitband Technologies Ltd. Prevention of advertisement skipping
US7996871B2 (en) * 2004-09-23 2011-08-09 Thomson Licensing Method and apparatus for using metadata for trick play mode
US7870590B2 (en) * 2004-10-20 2011-01-11 Cisco Technology, Inc. System and method for fast start-up of live multicast streams transmitted over a packet network
US7797720B2 (en) * 2004-10-22 2010-09-14 Microsoft Corporation Advanced trick mode
US7412149B2 (en) * 2004-10-28 2008-08-12 Bitband Technologies, Ltd. Trick mode generation in video streaming
CN100579223C (zh) * 2004-12-02 2010-01-06 索尼株式会社 编码装置和方法
US8041190B2 (en) 2004-12-15 2011-10-18 Sony Corporation System and method for the creation, synchronization and delivery of alternate content
US7895617B2 (en) 2004-12-15 2011-02-22 Sony Corporation Content substitution editor
US7954128B2 (en) * 2005-02-11 2011-05-31 Time Warner Cable Inc. Methods and apparatus for variable delay compensation in networks
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
US8037501B2 (en) * 2005-05-06 2011-10-11 Starz Entertainment, Llc Methods for entertainment-programming distribution
US8584171B2 (en) * 2005-05-06 2013-11-12 Starz Entertainment Group Llc Local context navigation system
US20090013350A1 (en) * 2005-08-11 2009-01-08 Vvond, Llc Display of movie titles in a library
US8159959B2 (en) * 2005-11-07 2012-04-17 Vudu, Inc. Graphic user interface for playing video data
US8788933B2 (en) * 2005-12-01 2014-07-22 Nokia Corporation Time-shifted presentation of media streams
US20070157267A1 (en) * 2005-12-30 2007-07-05 Intel Corporation Techniques to improve time seek operations
EP1806919A1 (de) * 2006-01-05 2007-07-11 Alcatel Lucent System zur Bereitstellung von Medien mit inhaltsabhängigem Trickwiedergabe-Modus
US7577980B2 (en) * 2006-01-19 2009-08-18 International Business Machines Corporation Bit-rate constrained trick play through stream switching and adaptive streaming
US7965771B2 (en) 2006-02-27 2011-06-21 Cisco Technology, Inc. Method and apparatus for immediate display of multicast IPTV over a bandwidth constrained network
US8185921B2 (en) 2006-02-28 2012-05-22 Sony Corporation Parental control of displayed content using closed captioning
US8218654B2 (en) * 2006-03-08 2012-07-10 Cisco Technology, Inc. Method for reducing channel change startup delays for multicast digital video streams
JP5200204B2 (ja) 2006-03-14 2013-06-05 ディブエックス リミテッド ライアビリティー カンパニー 高信頼性システムを含む連合型デジタル権限管理機構
US7890985B2 (en) * 2006-05-22 2011-02-15 Microsoft Corporation Server-side media stream manipulation for emulation of media playback functions
US8031701B2 (en) 2006-09-11 2011-10-04 Cisco Technology, Inc. Retransmission-based stream repair and stream join
US8875199B2 (en) 2006-11-13 2014-10-28 Cisco Technology, Inc. Indicating picture usefulness for playback optimization
US8873932B2 (en) 2007-12-11 2014-10-28 Cisco Technology, Inc. Inferential processing to ascertain plural levels of picture interdependencies
US8416859B2 (en) 2006-11-13 2013-04-09 Cisco Technology, Inc. Signalling and extraction in compressed video of pictures belonging to interdependency tiers
US20090180546A1 (en) 2008-01-09 2009-07-16 Rodriguez Arturo A Assistance for processing pictures in concatenated video streams
US20080141091A1 (en) * 2006-12-06 2008-06-12 General Instrument Corporation Method and Apparatus for Recovering From Errors in Transmission of Encoded Video Over a Local Area Network
US8601515B2 (en) * 2006-12-28 2013-12-03 Motorola Mobility Llc On screen alert to indicate status of remote recording
CA2616440C (en) 2006-12-29 2015-02-17 Broadband Royalty Corporation Source optimized dynamic trickplay
JP5559544B2 (ja) 2007-01-05 2014-07-23 ソニック アイピー, インコーポレイテッド プログレッシブ再生を含む映像分配システム
CN100551043C (zh) * 2007-02-08 2009-10-14 华为技术有限公司 一种快进快退播放视频数据的方法和流媒体服务器
US8769591B2 (en) * 2007-02-12 2014-07-01 Cisco Technology, Inc. Fast channel change on a bandwidth constrained network
JP4405523B2 (ja) * 2007-03-20 2010-01-27 株式会社東芝 コンテンツ配信システム、このコンテンツ配信システムで使用されるサーバ装置及び受信装置
US20080253369A1 (en) 2007-04-16 2008-10-16 Cisco Technology, Inc. Monitoring and correcting upstream packet loss
GB2449068A (en) * 2007-05-08 2008-11-12 Edgeware Ab Data streaming using stored control data
US8804845B2 (en) 2007-07-31 2014-08-12 Cisco Technology, Inc. Non-enhancing media redundancy coding for mitigating transmission impairments
US8958486B2 (en) 2007-07-31 2015-02-17 Cisco Technology, Inc. Simultaneous processing of media and redundancy streams for mitigating impairments
US20090049186A1 (en) * 2007-08-16 2009-02-19 Sony Corporation, A Japanese Corporation Method to facilitate trick-modes for streaming video
KR101385956B1 (ko) * 2007-08-31 2014-04-17 삼성전자주식회사 미디어 신호 인코딩/디코딩 방법 및 장치
US8356324B2 (en) * 2007-09-21 2013-01-15 Broadcom Corporation Implementing network personal video recorder for digital video settop boxes
WO2009065137A1 (en) 2007-11-16 2009-05-22 Divx, Inc. Hierarchical and reduced index structures for multimedia files
US8787153B2 (en) * 2008-02-10 2014-07-22 Cisco Technology, Inc. Forward error correction based data recovery with path diversity
KR100916505B1 (ko) * 2008-02-20 2009-09-08 한국전자통신연구원 정상 재생 타임을 이용한 스케일러블 비디오 코딩 정보와어드밴스드 오디오 코딩 정보의 동기화 지원 방법 및 장치
US8060904B1 (en) 2008-02-25 2011-11-15 Qurio Holdings, Inc. Dynamic load based ad insertion
US8416858B2 (en) 2008-02-29 2013-04-09 Cisco Technology, Inc. Signalling picture encoding schemes and associated picture properties
EP2124449A1 (de) * 2008-05-19 2009-11-25 THOMSON Licensing Vorrichtung und Verfahren zum Synchronisieren eines interaktiven Zeichens auf strömenden Inhalt
WO2009152450A1 (en) 2008-06-12 2009-12-17 Cisco Technology, Inc. Picture interdependencies signals in context of mmco to assist stream manipulation
US8705631B2 (en) 2008-06-17 2014-04-22 Cisco Technology, Inc. Time-shifted transport of multi-latticed video for resiliency from burst-error effects
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
US20100061709A1 (en) * 2008-09-05 2010-03-11 Davender Agnihotri Ad Menu for skipped advertisements
US8761266B2 (en) 2008-11-12 2014-06-24 Cisco Technology, Inc. Processing latticed and non-latticed pictures of a video program
US8312487B1 (en) 2008-12-31 2012-11-13 Qurio Holdings, Inc. Method and system for arranging an advertising schedule
WO2010080911A1 (en) 2009-01-07 2010-07-15 Divx, Inc. Singular, collective and automated creation of a media guide for online content
WO2010096767A1 (en) 2009-02-20 2010-08-26 Cisco Technology, Inc. Signalling of decodable sub-sequences
US9215423B2 (en) 2009-03-30 2015-12-15 Time Warner Cable Enterprises Llc Recommendation engine apparatus and methods
US11076189B2 (en) 2009-03-30 2021-07-27 Time Warner Cable Enterprises Llc Personal media channel apparatus and 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
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
US8108541B2 (en) * 2009-11-19 2012-01-31 Alcatel Lucent Method and apparatus for providing collaborative interactive video streaming
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
JP5723888B2 (ja) 2009-12-04 2015-05-27 ソニック アイピー, インコーポレイテッド 基本ビットストリーム暗号材料伝送システムおよび方法
WO2011100727A1 (en) * 2010-02-11 2011-08-18 Echostar Advanced Technologies L.L.C. Systems and methods to provide trick play during streaming playback
US9510029B2 (en) 2010-02-11 2016-11-29 Echostar Advanced Technologies L.L.C. Systems and methods to provide trick play during streaming playback
US8745388B2 (en) * 2010-03-22 2014-06-03 EchoStar Technologies, L.L.C. Systems and methods for securely streaming media content
WO2011132879A2 (ko) * 2010-04-19 2011-10-27 엘지전자 주식회사 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
US8543724B2 (en) 2010-04-30 2013-09-24 Digital Keystone, Inc. Methods and apparatuses for a projected PVR experience
US20110271001A1 (en) * 2010-04-30 2011-11-03 Herve Brelay Methods & apparatuses for a projected pvr experience
US20110268427A1 (en) * 2010-04-30 2011-11-03 Brelay Herve Methods and apparatuses for a projected pvr experience
KR101737325B1 (ko) * 2010-08-19 2017-05-22 삼성전자주식회사 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치
KR101744977B1 (ko) * 2010-10-08 2017-06-08 삼성전자주식회사 멀티미디어 스트리밍 서비스에서 서비스 품질을 보장하는 방법
US9247312B2 (en) 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
US8812662B2 (en) 2011-06-29 2014-08-19 Sonic Ip, Inc. Systems and methods for estimating available bandwidth and performing initial stream selection when streaming content
US8639085B2 (en) * 2011-07-12 2014-01-28 Comcast Cable Communications, Llc Synchronized viewing of media content
US8818171B2 (en) 2011-08-30 2014-08-26 Kourosh Soroushian Systems and methods for encoding alternative streams of video for playback on playback devices having predetermined display aspect ratios and network connection maximum data rates
KR101928910B1 (ko) 2011-08-30 2018-12-14 쏘닉 아이피, 아이엔씨. 복수의 최대 비트레이트 레벨들을 사용하여 인코딩된 비디오를 인코딩하고 스트리밍하기 위한 시스템들 및 방법들
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8787570B2 (en) 2011-08-31 2014-07-22 Sonic Ip, Inc. Systems and methods for automatically genenrating top level index files
US8799647B2 (en) 2011-08-31 2014-08-05 Sonic Ip, Inc. Systems and methods for application identification
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US9015555B2 (en) 2011-11-18 2015-04-21 Cisco Technology, Inc. System and method for multicast error recovery using sampled feedback
US20130179199A1 (en) 2012-01-06 2013-07-11 Rovi Corp. Systems and methods for granting access to digital content using electronic tickets and ticket tokens
US9467723B2 (en) 2012-04-04 2016-10-11 Time Warner Cable Enterprises Llc Apparatus and methods for automated highlight reel creation in a content delivery network
US10452715B2 (en) 2012-06-30 2019-10-22 Divx, Llc Systems and methods for compressing geotagged video
US9936267B2 (en) 2012-08-31 2018-04-03 Divx Cf Holdings Llc System and method for decreasing an initial buffering period of an adaptive streaming system
US20140140417A1 (en) * 2012-11-16 2014-05-22 Gary K. Shaffer System and method for providing alignment of multiple transcoders for adaptive bitrate streaming in a network environment
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
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
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9100687B2 (en) 2013-05-31 2015-08-04 Sonic Ip, Inc. Playback synchronization across playback devices
US9380099B2 (en) 2013-05-31 2016-06-28 Sonic Ip, Inc. Synchronizing multiple over the top streaming clients
US9967305B2 (en) 2013-06-28 2018-05-08 Divx, Llc Systems, methods, and media for streaming media content
US20150067744A1 (en) 2013-08-27 2015-03-05 Home Box Office, Inc. Providing responsive video previews during rewind and fast forward
US9386067B2 (en) 2013-12-30 2016-07-05 Sonic Ip, Inc. Systems and methods for playing adaptive bitrate streaming content by multicast
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
EP3134995B1 (de) 2014-08-07 2021-12-22 DivX, LLC Systeme und verfahren zum schutz von elementaren bitströmen mit unabhängig codierten kacheln
US9948962B2 (en) 2014-11-13 2018-04-17 Time Warner Cable Enterprises Llc Apparatus and methods for efficient delivery of electronic program guide data
EP3910904A1 (de) 2015-01-06 2021-11-17 DivX, LLC Systeme und verfahren zur codierung und gemeinsamen nutzung von inhalten zwischen vorrichtungen
US10887663B2 (en) 2015-01-24 2021-01-05 Valens Semiconductor Ltd. Smooth switching of video sources sharing a common link
US10116676B2 (en) 2015-02-13 2018-10-30 Time Warner Cable Enterprises Llc Apparatus and methods for data collection, analysis and service modification based on online activity
CN107251008B (zh) 2015-02-27 2020-11-13 帝威视有限公司 在实况视频编码和流传输中进行帧复制和帧扩展的系统和方法
US10075292B2 (en) 2016-03-30 2018-09-11 Divx, Llc Systems and methods for quick start-up of playback
US10231001B2 (en) 2016-05-24 2019-03-12 Divx, Llc Systems and methods for providing audio content during trick-play playback
US10129574B2 (en) 2016-05-24 2018-11-13 Divx, Llc Systems and methods for providing variable speeds in a trick-play mode
US10687115B2 (en) 2016-06-01 2020-06-16 Time Warner Cable Enterprises Llc Cloud-based digital content recorder apparatus and methods
US10148989B2 (en) 2016-06-15 2018-12-04 Divx, Llc Systems and methods for encoding video content
CN106210884B (zh) * 2016-07-13 2019-02-26 腾讯科技(深圳)有限公司 视频文件的转码方法和装置
CN106713941A (zh) * 2017-01-04 2017-05-24 北京百度网讯科技有限公司 一种音视频直播的实现方法和服务器
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US11109290B2 (en) 2017-08-04 2021-08-31 Charter Communications Operating, Llc Switching connections over frequency bands of a wireless network
US11838588B2 (en) * 2017-12-29 2023-12-05 Comcast Cable Communications, Llc Performing trick plays of segmented video content
CN110392269B (zh) * 2018-04-17 2021-11-30 腾讯科技(深圳)有限公司 媒体数据处理方法和装置、媒体数据播放方法和装置
WO2020191406A1 (en) 2019-03-21 2020-09-24 Divx, Llc Systems and methods for multimedia swarms
CN111246314B (zh) * 2020-01-14 2021-12-17 深圳市华曦达科技股份有限公司 时移直播方法、服务端装置、客户端装置及直播系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623344A (en) * 1992-09-01 1997-04-22 Hitachi America, Ltd. Digital video recording device with trick play capability
JP2708683B2 (ja) * 1992-10-21 1998-02-04 日本電信電話株式会社 ディジタル動画ファイルの特殊再生制御処理方法
DE69319327T2 (de) * 1993-05-19 1998-10-29 Alsthom Cge Alcatel Videoserver
SG43131A1 (en) * 1994-03-23 1997-10-17 British Telecomm Video signal coding
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services

Also Published As

Publication number Publication date
EP0812112A2 (de) 1997-12-10
EP0812112A3 (de) 2002-01-02
US6065050A (en) 2000-05-16
JPH1075436A (ja) 1998-03-17
EP0812112B1 (de) 2004-01-07
DE69727100D1 (de) 2004-02-12
JP4589466B2 (ja) 2010-12-01

Similar Documents

Publication Publication Date Title
DE69727100T2 (de) Vorrichtung und Verfahren zur Indexierung zwischen Videodatenfolgen mit Trick- und Normalwiedergabe in einem Videoverteilsystem
DE69727372T2 (de) System und verfahren zur erzeugung von trickwiedergabe-videodatenströmen aus einem komprimierten normalwiedergabe-videodatenstrom
US5828370A (en) Video delivery system and method for displaying indexing slider bar on the subscriber video screen
DE69633552T2 (de) Verfahren und vorrichtung zum bildgenauen zugriff auf digitale audiovisuelle information
DE69938616T2 (de) Multimedia Zeitverschiebungssystem
DE69629921T2 (de) Trickwiedergabesteuerung für vorkodiertes video
US7716700B2 (en) Technique for delivering entertainment programming content including commercial content therein over a communications network
EP0701756B1 (de) System für audiovisuelle vorführung
DE69814642T2 (de) Verarbeitung codierter videodaten
US20090089846A1 (en) System and method providing enhanced features for streaming video-on-demand
DE69929449T2 (de) Algorithmus für schnellen vor- und rücklauf von mpeg datenströmen
Lippman Feature sets for interactive images
DE69730658T2 (de) Medienserver und Verfahren zur Unterlaufvermeidung eines Fifo-Servers während der Mehrkanalsanlaufphase
Andersen A proposed method for creating VCR functions using MPEG streams
EP0774867B1 (de) Verfahren zur Erzeugung von Bildsequenzen für einen schnellen Suchvorgang bei einem Filmabspielgerät und Vorrichtung zur Durchführung des Verfahrens
KR100487684B1 (ko) 비디오스트림내의위치들에인덱싱하기위한컴퓨터로구현된방법,대화식비디오딜리버리시스템,비디오디스플레이장치
DE112011103035T5 (de) Echtzeit-Schlüsselframe-Synchronisierung
Ghandeharizadeh et al. Scalable video browsing techniques for intranet video servers
KR100310777B1 (ko) 격행주사모드주문형비디오의특수재생서비스방법
KR100449200B1 (ko) 컴퓨터 구현 방법, 트릭재생 스트림 생성 시스템
Nagpal et al. Browsing operations on MPEG video
Girod et al. Group III Report: Digital Video in Multimedia Systems
Hofmann et al. Group III Report: Digital Video in Multimedia Systems
KR20000033731A (ko) 주문형 비디오의 특수 재생 서비스 제공 방법
KR20000033732A (ko) 주문형 비디오의 특수 재생 서비스 제공 방법

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee