DE112011102878T5 - Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen - Google Patents

Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen Download PDF

Info

Publication number
DE112011102878T5
DE112011102878T5 DE112011102878T DE112011102878T DE112011102878T5 DE 112011102878 T5 DE112011102878 T5 DE 112011102878T5 DE 112011102878 T DE112011102878 T DE 112011102878T DE 112011102878 T DE112011102878 T DE 112011102878T DE 112011102878 T5 DE112011102878 T5 DE 112011102878T5
Authority
DE
Germany
Prior art keywords
user
fragment
content
media
server
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.)
Withdrawn
Application number
DE112011102878T
Other languages
English (en)
Inventor
Kay Johansson
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.)
MobiTv Inc
Original Assignee
MobiTv 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 MobiTv Inc filed Critical MobiTv Inc
Publication of DE112011102878T5 publication Critical patent/DE112011102878T5/de
Withdrawn legal-status Critical Current

Links

Images

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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4524Management of client data or end-user data involving the geographical location of the client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/02Comparing digital values
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4126The peripheral being portable, e.g. PDAs or mobile phones
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Collating Specific Patterns (AREA)

Abstract

Ein Nutzer erhält Zugriff auf bestimmte Dienstleistungslevels, die Medieninhalten zugeordnet sind. Ein Nutzer und dem Nutzer zugeordnete Geräte können authentifiziert werden, um Zugriff auf Inhalte auf einem bestimmten Dienstleistungslevel, wie beispielsweise einem bestimmten Qualitätslevel, Inhaltslevel, Auflösung, begrenztes Betrachten, unbegrenztes zeitgleiches Betrachten, etc., zu erhalten. Wenn der Nutzer an einem Gerät authentifiziert ist, werden Inhalte auf einem geeigneten Dienstleistungslevel gewählt und dem Gerät zugeführt. Das Authentifizieren eines Nutzers an einem Gerät, wie einem Computer oder einer Set-Top-Box, kann das Empfangen eines manuell eingegebenen Logins und eines Passworts, eines von einem Mobilgerät übertragenen Passcodes, Gesichtserkennung, eines unter Verwendung von Infrarot- oder Funkfrequenzübertragung gesendeten Mobilgerät-Autorisationscodes, oder anderer Mechanismen umfassen, welche erkennen, dass der Nutzer oder das Mobilgerät sich in der Nähe befinden oder sich periodisch in der Nähe des Computers oder der Set-Top-Box befindet.

Description

  • Querverweis auf verwandte Anmeldungen
  • Die vorliegende Anmeldung beansprucht gemäß 35 U.S.C. 119(e) die Priorität der Vorläufigen US-Anmeldung Nr. 61/378,172 (MOBI052P) mit dem Titel ”USER AND DEVICE AUTHENTICATION FOR MEDIA SERVICES”, angemeldet am 30. August 2010, deren Inhalt in vollem Umfang durch Bezugnahme Teil des Gegenstandes der vorliegenden Anmeldung ist.
  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft die Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen.
  • Beschreibung des Standes der Technik
  • Herkömmliche Mediendienstleistungen verwenden üblicherweise die Authentifizierung von Vorrichtungen oder Nutzern. Ein Mobilgerätenutzer kann ein mobiles Abspielgerät besitzen, das für den Empfang einer bestimmten Gruppe von Kanälen konfiguriert ist. Eine Set-Top-Box kann zum Empfang einer anderen Gruppe von Kanälen berechtigt sein. Verschiedene Nutzer, welche die gleiche Set-Top-Box verwenden, können sämtlich diese Kanäle ansehen, ungeachtet der Anzeigevorrichtung, mit der die Set-Top-Box verbunden ist. In anderen Beispielen kann ein Nutzer einen Namen und ein Passwort eingeben, um Zugang zu einer weiteren Gruppe von Inhalten auf einem Computersystem zu erhalten.
  • Jedoch sind die Mechanismen für das Handhaben der Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen begrenzt. Es ist daher erwünscht, verbesserte Mechanismen für das Medienrechte-Management zu schaffen.
  • Kurzbeschreibung der Zeichnungen
  • Die Offenbarung ist am besten unter Bezugnahme auf die nachfolgende Beschreibung in Verbindung mit den zugehörigen Zeichnungen zu verstehen, welche besondere Ausführungsbeispiele darstellen.
  • 1 zeigt ein Beispiel für ein Medienausgabesystem.
  • 2 zeigt ein weiteres Beispiel für ein Medienausgabesystem.
  • 3 zeigt Beispiele für Kodierströme.
  • 4 zeigt ein Beispiel für einen mit einem Medienausgabesystem verwendeten Austausch.
  • 5 zeigt ein Verfahren für die fragmentierte Medienstromausgabe.
  • 6 zeigt ein Verfahren zum Implementieren einer Qualitätsänderung bei einem fragmentierten Medienstrom.
  • 7 zeigt ein Beispiel für ein System zum Implementieren von fragmentierter Medienausgabe.
  • Beschreibung bevorzugter Ausführungsbeispiele
  • Im Folgenden wird detailliert auf einige spezifische Beispiele für die Erfindung Bezug genommen, welche die von den Erfindern gegenwärtig als beste Arten der Durchführung der Erfindung angesehenen Ausführungsbeispiele beinhalten. Beispiele für diese spezifischen Ausführungsbeispiele sind in den beigefügten Zeichnungen dargestellt. Zwar wird die Erfindung in Zusammenhang mit diesen spezifischen Ausführungsbeispielen beschrieben, jedoch ist es ersichtlich, dass nicht beabsichtigt ist, die Erfindung auf die beschriebenen Ausführungsbeispiele zu beschränken. Im Gegenteil ist es beabsichtigt, Alternativen, Modifikationen und Äquivalente abzudecken, die dem Geist und dem Rahmen der Erfindung entsprechen, wie diese durch die beigefügten Ansprüche definiert ist.
  • Die Verfahren gemäß der vorliegenden Erfindung werden beispielsweise im Zusammenhang mit einer bestimmten Art der Kodierung beschrieben. Es sei jedoch darauf hingewiesen, dass die erfindungsgemäßen Verfahren auf eine Vielzahl verschiedener Kodierungsmechanismen anwendbar sind. In der folgenden Beschreibung werden zahlreiche spezifische Details angeführt, um ein umfassendes Verständnis der vorliegenden Erfindung zu vermitteln. Besondere exemplarische Ausführungsbeispiele der vorliegenden Erfindung können ohne einige oder sämtliche dieser spezifischen Details implementiert werden. In anderen Fällen wurden hinreichend bekannte Verfahrensabläufe nicht im Detail beschrieben, um das Verständnis der vorliegenden Erfindung nicht unnötig zu erschweren.
  • Verschiedene Verfahren und Mechanismen der vorliegenden Erfindung werden manchmal aus Gründen der Klarheit in Singularform beschrieben. Es sei jedoch darauf hingewiesen, dass einige Ausführungsbeispiele mehrere Durchläufe eines Verfahrens oder mehrfache Instantiierungen eines Mechanismus beinhalten, sofern dies nicht anders angegeben ist. Es ist jedoch ersichtlich, dass ein System mehrere Prozessoren verwenden kann, ohne den Rahmen der vorliegenden Erfindung zu verlassen, sofern dies nicht anders angegeben ist. Ferner beschreiben die Verfahren und Mechanismen der vorliegenden Erfindung manchmal eine Verbindung zwischen zwei Einheiten. Es sei darauf hingewiesen, dass eine Verbindung zwischen zwei Einheiten nicht notwendigerweise eine direkte, uneingeschränkte Verbindung bezeichnet, da eine Vielzahl anderer Einheiten zwischen den beiden Einheiten vorhanden sein kann. Ein Prozessor kann beispielsweise mit einem Speicher verbunden sein, jedoch ist offensichtlich, dass eine Vielzahl von Brücken und Steuerungen zwischen dem Prozessor und dem Speicher vorgesehen sein kann. Dementsprechend bedeutet eine Verbindung nicht notwendigerweise eine direkte, uneingeschränkte Verbindung, sofern die nicht anders angegeben ist.
  • Überblick
  • Ein Nutzer erhält Zugriff auf bestimmte Dienstleistungslevels, die Medieninhalten zugeordnet sind. Ein Nutzer und dem Nutzer zugeordnete Geräte können authentifiziert werden, um Zugriff auf Inhalte auf einem bestimmten Dienstleistungslevel, wie beispielsweise einem bestimmten Qualitätslevel, Inhaltslevel, Auflösung, begrenztes Betrachten, unbegrenztes zeitgleiches Betrachten, etc., zu erhalten. Wenn der Nutzer an einem Gerät authentifiziert ist, werden Inhalte auf einem geeigneten Dienstleistungslevel gewählt und dem Gerät zugeführt. Das Authentifizieren eines Nutzers an einem Gerät, wie einem Computer oder einer Set-Top-Box, kann das Empfangen eines manuell eingegebenen Logins und eines Passworts, eines von einem Mobilgerät übertragenen Passcodes, Gesichtserkennung, eines unter Verwendung von Infrarot- oder Funkfrequenzübertragung gesendeten Mobilgerät-Autorisationscodes, oder anderer Mechanismen umfassen, welche erkennen, dass der Nutzer oder das Mobilgerät sich in der Nähe befinden oder sich periodisch in der Nähe des Computers oder der Set-Top-Box befindet.
  • Exemplarische Ausführungsbeispiele
  • Die herkömmliche Authentifizierung für Fernseh- oder Video-Dienstleistungen basiert hauptsächlich auf der Geräte-Authentifizierung. Das Mobiltelefon eines Nutzers ist authentifiziert und konfiguriert, um eine bestimmte Gruppe von Kanälen zu empfangen, oder eine Set-Top-Box ist authentifiziert und konfiguriert, um bestimmte Pay-per-View-Filme zu empfangen. Es wird jedoch erkannt, dass Nutzer oftmals den gleichen Inhalt auf unterschiedlichen Dienstleistungsleveln auf mehreren Geräten zu sehen wünschen. Beispielsweise kann ein Nutzer, der eine Sendung auf einem Einzelnutzer-Mobilgerät ansieht, wünschen, die Sendung übergangslos auf einem für mehrere Nutzer geeignet großen Fernsehbildschirm weiter anzusehen. Herkömmliche Authentifizierungs- und Medienrechtsmanagementmechanismen handhaben die Authentifizierung und Autorisierung über mehrere unterschiedliche Geräte, von denen einige von mehreren Nutzern gemeinsam genutzt werden können, nicht effektiv.
  • Bei verschiedenen Ausführungsbeispielen sind die Nutzer-Autorisierung und die Geräte-Authentisierung voneinander getrennt. Bei bestimmten Ausführungsbeispielen ist der Nutzer für mehrere Geräte autorisiert oder mehrere Geräte können registriert sein, so dass die Bedeutung des Nutzers minimal ist. Bei einem für mehrere Nutzer vorgesehenen Gerät, wie einer Set-Top-Box, kann sich ein Nutzer für jede Sitzung oder für die Dauer des Betriebs des Geräts einloggen. Ein besonderer PIN oder ein Passwort können bei einer Set-Top-Box verwendet werden, damit der Nutzer auf personalisierten Inhalt oder speziell für den Nutzer vorgesehene Inhalte zugreifen kann. Alternativ kann die Autorisierung eines Geräts automatisch erfolgen oder nur geringe Interaktion mit dem Nutzer erfordern. Eine Set-Top-Box oder ein Computersystem kann Informationen darüber erhalten, welche Dienstleistungslevels den Nutzern in der Nähe der Set-Top-Box oder des Computersystems zugeordnet sind. Eine Set-Top-Box kann beispielsweise erkennen, dass ein Nutzer mit einem eingeschränkten Inhaltspaket sich gegenwärtig in der Nähe der Set-Top-Box befindet, indem sie Mobilgerätstandortservices, Infrarotkommunikation, Funkkommunikation, Gesichtserkennung, Mobilgeräterkennung, etc. verwendet. Die Set-Top-Box kann sodann Inhalte anzeigen, zu deren Betrachtung auf der Set-Top-Box der Nutzer berechtigt ist.
  • Bei besonderen Ausführungsbeispielen ist ein Gerät zum Empfangen von Inhalten auf dem höchsten Dienstleistungslevel unter mehreren auf das Gerät zugreifenden Nutzern autorisiert. Wenn beispielsweise ein Nutzer ein unbegrenztes Inhaltspaket besitzt und eine Set-Top-Box registriert, kann an dieser Set-Top-Box unbegrenzter Inhalt von mehreren Mitgliedern einer Familie angesehen werden, selbst wenn andere Familienmitglieder über eingeschränktere Inhaltspakete oder über keine Inhaltspakete verfügen. Es wird erkannt, dass dies den Abonnenten eines unbegrenzten Inhalts dazu veranlassen könnte, mehrere Geräte zu registrieren, einschließlich solcher Geräte, die nicht wirklich von dem Abonnenten des unbegrenzten Inhalts benutzt werden.
  • Bei bestimmten Ausführungsbeispielen kann diese übermäßige Registrierung verhindert werden, indem entweder die Anzahl der mehreren Nutzergeräte oder der Geräte im Allgemeinen, welche der Nutzer registrieren kann, begrenzt wird. bei anderen besonderen Ausführungsbeispielen kann eine exzessive Registrierung verhindert werden, indem Inhalte nur an Geräte geliefert werden, die sich periodisch an dem gleichen Ort befinden wie der Nutzer. Es können beispielsweise Mobilgerätestandortdienstleistungen verwendet werden, um zu erkennen, wann sich ein Nutzer an dem gleichen Ort wie ein Gerät befindet und um das Gerät automatisch zu autorisieren, Inhalte auf dem diesem Nutzer zugeordneten Dienstleistungslevel zu empfangen. Bei bestimmten Ausführungsbeispielen kann ein Mobilgerät verwendet werden, um einen Autorisierungscode an eine Set-Top-Box zu übertragen, wobei alphanumerische Sequenzen, Infrarot- oder Funkfrequenzübertragungen verwendet werden.
  • Eine Set-Top-Box kann automatisch Autorisierungscodes von Mobilgeräten in der Umgebung anfordern, um mit geringer oder ohne Nutzerinteraktion festzustellen, welches Dienstleistungslevel zu einem bestimmten Zeitpunkt gewährt werden kann.
  • Bei bestimmten Ausführungsbeispielen wird der Inhalt derart verwaltet, dass eine Erkennung dessen erfolgt, was der Nutzer auf welchem Gerät mit welchem Qualitätslevel und zu welcher Zeit zu sehen erlaubt ist. Bei einigen Beispielen kann ein Nutzer berechtigt sein, eine bestimmte Sendung auf einem personalisierten Gerät, beispielsweise einem Mobiltelefon oder einem Computer, anzusehen, jedoch nicht auf einem für mehrere Nutzer vorgesehenen Gerät, wie einer Set-Top-Box. Bei anderen Beispielen kann ein Nutzer berechtigt sein, ein Programm nur für eine Woche auf einem großen Fernseher unter Verwendung von WiFi anzusehen, aber dauerhaft auf einem Mobilgerät. Bei weiteren Beispielen kann der Nutzer in der Lage sein, auf eine Klingelton-Version eines Medienelements, jedoch nicht auf die volle Version des Inhalts zuzugreifen.
  • Nach verschiedenen Ausführungsbeispielen kann ein Nutzer unbegrenzten Zugang zu sämtlichen Inhalten über sämtliche Geräte haben, jedoch nur, wenn sich der Nutzer in der Nähe der Vorrichtung befindet, wie aufgrund von Mobilgerätstandortdaten festgestellt wird. Bei bestimmten Ausführungsbeispielen umfasst das Autorisieren einer Dienstleistung das Verfolgen der Art der Produkte, der Kanalpakete, der Inhaltspakete, der Medienprogramme etc., die der Nutzer gekauft oder gemietet hat sowie der Anzahl der Geräte, für die dies zutrifft. Bei einigen Beispielen wird der Inhalt nur dann autorisiert, wenn sich das Gerät in einem bestimmten Bereich befindet, und Blackouts können gehandhabt werden, indem Inhalte an bestimmten Orten eingeschränkt werden, der gleiche Inhalt jedoch zugelassen wird, wenn das Gerät in einen anderen Bereich bewegt wird.
  • Zahlreiche verschiedene Mechanismen werden für das Ausgeben von Medienströmen an Geräte verwendet. In bestimmten Beispielen eröffnet ein Client eine Sitzung, beispielsweise eine Real-Time-Stroming-Protocol-Sitzung (RTSP). Ein Servercomputer empfängt eine Verbindung für einen Medienstrom, eröffnet eine Sitzung, und liefert einen Medienstrom an ein Clientgerät. Der Medienstrom enthält Pakete, die Frames, beispielsweise MPEG-4-Frames, kapseln. Die MPEG-4-Frames selbst können Schlüsselbilder oder Differenzbilder sein. Die von dem Server verwendete spezifische Datenkapselungsmethode hängt von der Art des Inhalts, dem Format dieses Inhalts, dem Format der Nutzdaten, und den für das Senden der Daten verwendeten Anwendungs- und Übertragungsprotokollen ab. Nachdem das Clientgerät den Medien-Strom empfangen hat, entkapselt das Clientgerät die Pakete, um die MPEG-Frames zu erhalten, und dekodiert die MPEG-Frames, um die eigentlichen Mediendaten zu erhalten.
  • Herkömmliche MPEG-4-Dateien machen es erforderlich, dass ein Abspielgerät den gesamten Dateikopf parst, bevor irgendwelche Daten dekodiert werden können. Das Parsen des gesamten Dateikopfs kann erhebliche Zeit in Anspruch nehmen, insbesondere bei Geräten mit begrenzten Netzwerk- und Verarbeitungsressourcen. Infolgedessen wird durch die Verfahren und Mechanismen der vorliegenden Erfindung ein fragmentiertes MPEG-4-Framework geschaffen, das ein Abspielen während des Empfangs eines ersten MPEG-4-Dateifragments ermöglicht. Ein zweites MPEG-4-Dateifragment kann unter Verwendung von in dem ersten MPEG-4-Dateifragment enthaltenen Informationen angefordert werden. Gemäß verschiedenen Ausführungsbeispielen kann es sich beiden angeforderten zweiten MPEG-4-Dateifragment um ein Fragment handeln, das einem Strom entspricht, der eine höhere oder geringere Bitrate aufweist, als der dem ersten Dateifragment zugeordnete Strom.
  • MPEG-4 ist ein erweiterbares Containerformat ohne eine festgelegte Struktur für die Beschreibung von Medientypen. Stattdessen weist MPEG-4 eine Objekthierarchie auf, welche das Definieren individueller Strukturen für jedes Format ermöglicht. Die Formatbeschreibung ist in dem Beispielbeschreibungsfeld (”stsd”) für jeden Strom gespeichert. Das Beispielbeschreibungsfeld kann Informationen enthalten, die nicht bekannt werden, bevor sämtliche Daten kodiert sind. Das Beispielbeschreibungsfeld kann beispielsweise eine durchschnittliche Bitrate enthalten, die vor der Kodierung nicht bekannt ist.
  • Gemäß verschiedenen Ausführungsbeispielen werden MPEG-4-Dateien fragmentiert, so dass ein Live-Strom nahezu live aufgezeichnet und wiedergegeben werden kann. MPEG-4-Dateien können erzeugt werden, ohne warten zu müssen, bis der gesamte Inhalt für das Vorbereiten der Film-Dateiköpfe geschrieben ist. Um eine MPEG-4-Fragmentierung ohne band-externe Signalgebung zu ermöglichen, ist eine Feldstruktur vorgesehen, welche Synchronisierungsinformationen, Dateiende-Informationen und Kapitelinformationen enthält. Gemäß verschiedenen Ausführungsbeispielen dienen Synchronisierungsinformationen der Audio- und Video-Synchronisierung, wenn die Wiedergabe einen Beginn mitten in einem Strom mit sich bringt. Die Dateiende-Informationen geben das Ende des gegenwärtigen Programms oder der Datei an. Dies kann Informationen zum Fortsetzen des Stromübertragung des nächsten Programms oder der nächsten Datei enthalten. Die Kapitelinformationen können für Video-on-Demand-Inhalte verwendet werden, die in Kapitel, welche möglicherweise durch Werbeslots getrennt sind, unterteilt sind.
  • TCP findet häufiger Anwendung als UDP, und Netzwerktechnologien, die Schalt-, Load-Balancer- und Netzwerkkartentechnologien verwenden, werden häufiger für TCP als für UDP entwickelt. Infolgedessen werden Verfahren und Mechanismen zum Ausgeben von fragmentierten Live-Medien über TCP bereitgestellt. Sequenzinformationen werden ebenfalls beibehalten und/oder modifiziert, um einen übergangslosen Betrieb des Clientgeräts zu ermöglichen. Die Zeitsteuerungs- und Sequenzinformationen in einem Medienstrom bleiben erhalten.
  • Anforderungen werden als separate Dateien einem Client angezeigt, und Dateien sollten auf Abspielgeräten, die fragmentiertes MPEG-4 umsetzen können, wiedergebbar sein. Live-Inhalte oder nahezu live gesendete Inhalte, Video-on-Demand- (VOD) und Digital-Video-Record-Inhalte (DVR) sind sämtlich unter Verwendung von Fragmentierung verarbeitbar.
  • Nach verschiedenen Ausführungsbeispielen wird das Anhalten der Wiedergabe auf einem Inhalt-Server oder einem Fragmentierungsserver erkannt. Bei einigen Beispielen sendet ein Gerät eine Anforderung zum Anhalten der Wiedergabe. Bei anderen Beispielen erkennt ein Inhaltsserver, dass keine Anforderung eines nachfolgenden Fragments empfangen wurde. Der Inhaltssever speichert die Nutzerinformationen und die Medienstrompositionsinformationen. Bei einigen Beispielen speichert der Inhaltsserver auch Geräteinformationen und Qualitäts- oder Bitratendaten. Wenn eine Anforderung nach einem Fragment oder die Anforderung nach der Wiederaufnahme der Wiedergabe von Seiten des selben Geräts oder von einem dem selben Nutzer zugeordneten anderen Gerät empfangen wird, identifiziert der Inhaltsserver die Bitrate und den Medienstrom zusammen mit dem an den Nutzer zu sendenden richtigen Fragment. Das Fragment kann Mediendaten entsprechen, die in der Vergangenheit als Live-Übertragung gesendet wurden und nicht länger live sind, wobei der Nutzer jedoch in der Lage ist, den Medienstrom weiter nahtlos mit einer für das gegenwärtige Betrachtungsgerät geeigneten Auflösung anzusehen.
  • Die Anforderung seitens des Gerätes kann eine Bitrate und eine Auflösung enthalten, oder ein Inhaltsserver kann eine geeignete Bitrate und Auflösung unter Verwendung von Geräteinformationen erkennen. Eine Wiederaufnahme-Anforderung zusammen mit einer gewünschten Nitrate kann ebenfalls von Seiten eines anderen, einem Nutzer zugeordneten Geräts empfangen werden. In einem Inhaltsserver gespeicherte Fragmente können verwendet werden, um auf Anforderungen von Seiten zahlreicher Nutzer auf zahlreichen verschiedenen Geräten zu reagieren, die das Abspielen von Medienströmen zu unterschiedlichen Zeitpunkten und mit unterschiedlichen Qualitätsleveln anfordern. Nach verschiedenen Ausführungsbeispielen können Fragmente zugleich auf unterschiedlichen Qualitätsleveln gespeichert sein und effizient zwischengespeichert werden, obwohl eine Vielzahl unterschiedlicher Anforderungen nach dem selben Medienstrom oder unterschiedlichen Medienströmen empfangen werden.
  • 1 ist eine schematische Darstellung eines Beispiels für ein Fragmentierungssystem 101, das einem Inhaltsserver zugeordnet ist, der die erfindungsgemäßen Verfahren und Mechanismen verwenden kann. Kodierer 105 empfangen Mediendaten von Satelliten, Inhaltsbibliotheken und anderen Inhaltsquellen und senden RTP-Multicast-Daten an einen Fragmentschreiber 109. Die Kodierer 105 senden ferner Session-Announcement-Protocol-Bekanntgaben (SAP) an einen SAP-Empfänger 121. Gemäß verschiedenen Ausführungsbeispielen erzeugt der Fragmentschreiber 109 Fragmente für das Live-Streaming und schreibt Dateien zur Aufzeichnung auf eine Platte. Der Fragmentschreiber 109 empfängt RTP-Multicast-Ströme von den Kodierern 105 und parst die Ströme, um die Audio-/Video-Daten als Teil von fragmentierten MPEG-4-Dateien neu zu packen. Wenn ein neues Programm beginnt, erzeugt der Fragmentschreiber 109 eine neue MPEG-4-Datei im Fragmentspeicher und hängt Fragmente an. Bei bestimmten Ausführungsbeispielen unterstützt der Fragmentschreiber 109 Live- und/oder DVR-Konfigurationen.
  • Der Fragmentserver 111 versieht die Zwischenspeicherungsschicht mit Fragmenten für Clients. Die Designphilosophie hinter der Client/Server-API minimiert Leerläufe und verringert im Hinblick auf die Ausgabe der Mediendaten an den Client 115 die Komplexität so weit wie möglich. Der Fragmentserver 111 stellt Live-Streams und/oder DVR-Konfigurationen zur Verfügung.
  • Der Fragment-Controller 107 ist mit Anwendungsservern 103 verbunden und steuert die Fragmentierung von Live-Kanal-Streams. Der Fragment-Controller 107 integriert optional Führungsdaten, um die Aufzeichnungen für eine Global-/Netzwerk-DVR zu steuern. In bestimmten Ausführungsbeispielen sieht der Fragment-Controller 107 Logik um die Aufzeichnung vor, um die Fragmentschreiberkomponente 109 zu vereinfachen. Gemäß verschiedenen Ausführungsbeispielen läuft der Fragment-Controller 107 auf dem selben Host wie der Fragmentschreiber 109. Bei bestimmten Ausführungsbeispielen instanziiert der Fragment-Controller 107 Instanzen des Fragmentschreibers 109 und sorgt für eine hohe Verfügbarkeit.
  • Gemäß verschiedenen Ausführungsbeispielen verwendet der Client 115 eine Medienkomponente, welche fragmentierte MPEG-4-Dateien anfordert, Trick-Play ermöglicht, und Bandbreitenanpassung vornimmt. Der Client kommuniziert mit den dem HTTP-Proxy 113 zugeordneten Anwendungsdienstleistungen, um Führer zu erhalten und dem Nutzer den verfügbaren aufgezeichneten Inhalt anzuzeigen.
  • 2 zeigt ein Beispiel für ein Fragmentierungssystem 201, das für Video-on-Demand-Inhalte verwendbar ist. Der Fragger 203 erfordert eine Quelle kodierter Videoclips. Jedoch erzeugt der kommerzielle Kodierer keine Ausgangsdatei mit minimalem objektorientiertem Framework-Dateikopf (MOOF) und bettet stattdessen sämtliche Inhalt-Dateiköpfe in die Movie-Datei (MOOV) ein. Der Fragger liest die Eingangsdatei und erzeugt einen alternativen Ausgang, der mit MOOF-Dateiköpfen fragmentiert und mit individuellen Dateiköpfen erweitert wurde, welche das Erlebnis optimieren und als Hinweise für Server dienen.
  • Der Fragmentserver 211 versieht die Zwischenspeicherungsschicht mit Fragmenten für Clients. Die Designphilosophie hinter der Client/Server-API minimiert Leerläufe und verringert im Hinblick auf die Ausgabe der Mediendaten an den Client 215 die Komplexität so weit wie möglich. Der Fragmentserver 211 liefert VOD-Inhalte.
  • Gemäß verschiedenen Ausführungsbeispielen verwendet der Client 215 eine Medienkomponente, welche fragmentierte MPEG-4-Dateien anfordert, Trick-Play ermöglicht, und Bandbreitenanpassung vornimmt. Der Client kommuniziert mit den dem HTTP-Proxy 213 zugeordneten Anwendungsservices, um Führer zu erhalten und dem Nutzer den verfügbaren aufgezeichneten Inhalt anzuzeigen.
  • 3 zeigt Beispiele für Dateien, welche von dem Fragmentschreiber gespeichert werden. Gemäß verschiedenen Ausführungsbeispielen handelt es sich bei dem Fragmentschreiber um eine Komponente in der Gesamtheit des Fragmentierers. Es handelt sich dabei um ein Binärprogramm, das Befehlszeilenargumente verwendet, um ein bestimmtes Programm basierend entweder auf der NTP-Zeit aus dem kodierten Strom oder auf der Uhrzeit aufzuzeichnen. Bei bestimmten Ausführungsbeispielen ist dies als Teil der Argumente konfigurierbar und ist von dem Eingangs-Strom abhängig. Sobald der Fragmentschreiber das Aufzeichnen eines Programms abgeschlossen hat, wird er geschlossen. Für Live-Ströme werden Programme künstlich als kurze Intervalle von beispielsweise 5–15 Minuten Länge erzeugt.
  • Gemäß verschiedenen Ausführungsbeispielen handelt es sich bei den Fragmentschreiber-Befehlszeilenargumenten um die SDP-Datei des aufzuzeichnenden Kanals, die Startzeit, die Endzeit, den Namen der gegenwärtigen und der nächsten Ausgangsdatei. Der Fragmentschreiber beobachtet den RTP-Verkehr von den Live-Video-Kodierern und schreibt die Mediendaten als fragmentierte MPEG-4 erneut auf die Platte. Gemäß verschiedenen Ausführungsbeispielen werden Mediendaten als fragmentierte MPEG-4 geschrieben, wie die in MPEG-4 Teil 12 (ISO/IEC 14496-12) definiert ist. Jede übertragene Sendung wird als separate Datei, die durch eine Sendungs-ID (welche aus dem EPG abgeleitet ist) identifiziert ist, auf eine Platte geschrieben. Clients fügen die Sendungs-ID als Teil des Kanalnamens hinzu, wenn sie das Ansehen einer vorab aufgezeichneten Sendung anfordern. Der Fragmentschreiber nimmt jede der verschiedenen Kodierungen auf und speichert sie als verschiedene MPEG-4-Fragmente.
  • Bei bestimmten Ausführungsbeispielen schreibt der Fragmentschreiber die RTP-Daten für eine bestimmte Kodierung und die Sendungs-ID in eine einzelne Datei. In dieser Datei befinden sich Metadateninformationen, welche die gesamte Datei (MOOV-Blöcke) beschreiben. Atome werden als Gruppen von MOOF/MDAT-Paaren gespeichert, um das Speichern einer Sendung als einzelne Datei zu ermöglichen. Am Ende der Datei befinden sich Direktzugriffsinformationen, die verwendet werden können, um einem Client das Durchführen von Bandbreitenanpassungen und Trickplay-Funktionen zu ermöglichen.
  • Gemäß verschieden Ausführungsbeispielen enthält der Fragmentschreiber eine Option, welche Fragmente verschlüsselt, um die Stream-Sicherheit während des Aufzeichnungsvorgangs zu gewährleisten. Der Fragmentschreiber fordert einen Kodierschlüssel von dem Lizenzmanager an. Die verwendeten Schlüssel sind denen ähnlich, die für das DRM verwendet werden. Das Kodierformat ist bei der Kodierung von MOOF geringfügig anders. Die Verschlüsselung erfolgt ein Mal, so dass dadurch keine übermäßigen Kosten während der Ausgabe an die Clients entstehen.
  • Der Fragmentserver antwortet auf HTTP-Anforderungen von Inhalten. Gemäß verschiedenen Ausführungsbeispielen stellt er API bereit, die von Clients genutzt werden können, um erforderliche Dateiköpfe zu erhalten, die für das Dekodieren des Videos sowie das Suchen eine beliebigen gewünschten Zeitabschnitts in dem Fragment notwendig sind, und API für das Live-Ansehen von Kanälen. Tatsächlich werden Live-Kanäle mit den zuletzt geschriebenen Fragmenten einer Sendung auf diesem Kanal gespeist. Der Fragmentschreiber sendet den Mediendateikopf (der für das Initialisieren von Dekodierern erforderlich ist), bestimmte Fragmente und den Direktzugriffsblock an die Clients zurück. Gemäß verschiedenen Ausführungsbeispielen ermöglichen die unterstützen API eine Optimierung, wenn die Metadatendateikopfinformationen dem Client zusammen mit dem ersten Fragment zurück gesendet werden. Der Fragmentschreiber erzeugt eine Reihe von Fragmenten innerhalb der Datei. Fordert ein Client einen Stream an, fordert er jedes dieser Fragmente an und der Fragmentserver liest den Teil der Datei, welcher das Fragment betrifft, und sendet dieses an den Client zurück.
  • Gemäß verschiedenen Ausführungsbeispielen verwendet der Fragmentserver eine REST API, die zwischenspeicherfreundlich ist, so dass die meisten an den Fragmentserver gerichteten Anforderungen zwischengespeichert werden können. Der Fragmentserver verwendet Zwischenspeicher-Control-Dateiköpfe und ETag-Dateiköpfe, um den Zwischenspeicher die richtigen Hinweise zu geben. Diese API verleiht ferner die Fähigkeit, zu verstehen, an welcher Stelle ein bestimmter Nutzer die Wiedergabe angehalten hat, und die Wiedergabe von diesem Punkt an zu starten (die Fähigkeit zur Pause bei einem Gerät und zur Fortsetzung bei einem anderen vorausgesetzt).
  • Bei bestimmten Ausführungsbeispielen folgen die Client-Anforderungen nach Fragmenten dem folgenden Format: http://{HOSTNAME}/frag/{CHANNEL}/{BITRATE}/[{ID}/]{COMMAND}[/{ARG}], z. B. http://frag.hosttv.com/frag/1/H8QVGAH264/1270059632.mp4/fragment/42.
  • Gemäß verschiedenen Ausführungsbeispielen ist der Kanalname der selbe wie der Backend-Kanalname, der als Kanalbereich der SDP-Datei verwendet wird. VOD verwendet den Kanalnamen ”vod”. Die BITRATE sollte dem BIRA-TE/AUFLÖSUNG-Identifikatorschema entsprechen, die für RTP-Streams verwendet wird. Die ID wird dynamisch zugewiesen. Bei Live-Streams kann es sich dabei um den UNIX-Zeitstempel handeln; bei DVR handelt es sich dabei um eine einzigartige ID für die Sendung; bei VoD handelt es sich dabei um die Posten-ID. Die ID ist optional und nicht in LIVE-Befehl-Anforderungen enthalten. Der Befehl und das Argument dienen der Angabe des genauen gewünschten Befehls und jedweder Argumente. Um beispielsweise den Teil 42 anzufordern, lautet dieser Bereich ”fragment/42”.
  • Das URL-Format macht die Anforderungen geeignet für Inhaltsausgabenetzwerke (CDN), da die Fragmente sich nach diesem Punkt nie mehr verändern, so dass zwei separate Clients, welche den gleichen Strom ansehen, unter Verwendung eines Zwischenspeichers bedient werden können. Insbesondere nutzt die Headend-Architektur dies, um das Eintreffen zu vieler dynamischer Anforderungen an dem Fragmentserver zu vermeiden, indem sie für das Zwischenspeichern von Anforderungen einen HTTP-Proxy am vorderen Ende verwendet.
  • Gemäß verschiedenen Ausführungsbeispielen handelt es sich bei dem Fragment-Controller um ein Daemon, das auf dem Fragmentierer abläuft und die Fragmentschreiberprozesse verwaltet. Es wird vorgeschlagen, hierin ein konfiguriertes Filter zu verwenden, das von dem Fragment-Controller ausgeführt wird, um die Liste der aufzuzeichnenden Übertragungen zu erzeugen. Dieses Filter fügt sich in externe Komponenten ein, wie beispielsweise einen Führerserver, um zu bestimmen, welche Sendungen aufzuzeichnen sind und welche Übertragungs-ID zu verwenden ist.
  • Gemäß verschiedenen Ausführungsbeispielen weist der Client eine Anwendungslogikkomponente und eine Medienwiedergabekomponente auf. Die Anwendungslogikkomponente liefert die UI für den Benutzer und teilt dem Front-end-Server ferner mit, dass er Sendungen beschaffen soll, die für den Benutzer verfügbar sind, und die Authentifizierung vornehmen soll. Als Teil dieses Vorgangs sendet der Server URLs zu Medieninhalten zurück, die an die Medienwiedergabekomponente weitergeleitet werden.
  • In besonderen Ausführungsbeispielen verlässt sich der Client auf die Tatsache, dass jedes Fragment in einer fragmentierten MPEG-4-Datei eine Sequenznummer hat. Unter Nutzung dieser Kenntnis und einer gut definierten URL-Struktur für die Kommunikation mit dem Server, fordert der Client Fragmente einzeln an, also ob er separate Dateien aus dem Server lesen würde, indem er einfach URLs für Dateien anfordert, die ansteigenden Sequenznummern zugeordnet sind. Bei einigen Ausführungsbeispielen kann der Client Dateien anfordern, die Streams mit einer höheren oder einer geringeren Bitrate entsprechen, je nachdem, welche Geräte- und Netzwerkressourcen gegeben sind.
  • Da jede Datei die zum Erzeugen der URL für die nächste Datei erforderlichen Informationen enthält, sind keine speziellen Playlist-Dateien erforderlich, und alle Aktionen (Start, Kanalwechsel, Suche) können mittels einer einzigen HTTP-Anforderung durchgeführt werden. Nachdem jedes Fragment heruntergeladen wurde, beurteilt der Client unter anderem die Größe des Fragments und die für dessen Download erforderliche Zeit, um festzustellen, ob eine Verlangsamung erforderlich ist, oder ob ausreichend Bandbreite verfügbar ist, um eine höhere Bitrate anzufordern.
  • Da jede an den Server gerichtete Anforderung wie eine Anforderung nach einer separaten Datei erscheint, kann die Reaktion auf die Anforderungen in jedem HTTP-Proxy zwischengespeichert oder über jedes HTTP-basierte CDN verteilt werden.
  • 4 zeigt eine Interaktion für einen Client, der einen Live-Strom empfängt. Der Client startet die Wiedergabe, während das Fragment 41 aus dem Server abgespielt wird. Der Client verwendet die Fragmentnummer, so dass er das korrekte nachfolgende Dateifragment anfordern kann. Eine Anwendung, wie beispielsweise eine Abspielgerätanwendung 407 sendet eine Anforderung an ein Mediakit 405. Die Anforderung kann eine Basisadresse und eine Bitrate umfassen. Das Mediakit 405 sendet eine HTTP-Get-Anforderung an die Caching-Schicht 403. Gemäß verschiedenen Ausführungsbeispielen befindet sich die Live-Antwort nicht im Zwischenspeicher und die Zwischenspeicherungsschicht leitet die HTTP-Get-Anforderung an einen Fragmentserver 401 weiter. Der Fragmentserver 401 führt eine Verarbeitung durch und sendet das richtige Fragment an die Zwischenspeicherungsschicht 403, welche die Daten an das Mediakit 405 sendet.
  • Das Fragment kann für einen kurzen Zeitraum in der Zwischenspeicherungsschicht 403 zwischengespeichert werden. Das Mediakit 405 identifiziert die Fragmentnummer und stellt fest, ob die Ressourcen zum Abspielen des Fragments ausreichen. In einigen Beispielen sind die Ressourcen, wie beispielsweise die Verarbeitungs- oder Bandbreitenressourcen, unzureichend. Das Fragment wurde möglicherweise nicht schnell genug empfangen oder das Gerät hat Schwierigkeiten mit einer ausreichend schnellen Dekodierung des Fragments. Folglich kann das Mediakit 405 ein nächstes Fragment anfordern, das eine andere Datenrate hat. In einigen Fällen kann das Mediakit 405 ein nächstes Fragment mit einer höheren Datenrate anfordern. Gemäß verschiedenen Ausführungsbeispielen hält der Fragmentserver 401 Fragmente für verschiedene Service-Stromqualitäten mit Zeitsteuerungssynchronisierungsinformationen bereit, um eine genaue Wiedergabezeitsteuerung zu ermöglichen.
  • Das Mediakit 405 fordert ein nächstes Fragment unter Verwendung von Informationen aus dem empfangenen Fragment an. Gemäß verschiedenen Ausführungsbeispielen kann das nächste Fragment für den Medienstrom auf einem anderen Server gespeichert sein, eine andere Bitrate aufweisen oder eine andere Autorisierung erfordern. Die Zwischenspeicherungsschicht 403 stellt fest, dass sich das nächste Fragment nicht in dem Zwischenspeicher befindet und sendet die Anforderung an den Fragmentserver 401. Der Fragmentserver 401 sendet das Fragment an die Zwischenspeicherungsschicht 403 und das Fragment wird für einen kurzen Zeitraum zwischengespeichert. Das Fragment wird sodann an das Mediakit 405 gesendet.
  • 5 zeigt ein Beispiel für ein Verfahren zum Ausgeben von Medienstrom-Fragmenten. Gemäß verschiedenen Ausführungsbeispielen wird eine Anforderung nach einem Medienstrom von Seiten eines Client-Geräts bei 501 empfangen. Bei bestimmten Ausführungsbeispielen handelt es sich bei der Anforderung um eine HTTP-Get-Anforderung mit einer Basis-URL, eine Bitrate und einem Dateinamen. Bei 503 wird festgestellt, ob aktuelle Fragmente, die dem angeforderten Medienstrom zugeordnet sind, verfügbar sind. Gemäß verschiedenen Ausführungsbeispielen werden Fragmente für mehrere Minuten in einer Zwischenspeicherungsschicht zwischengespeichert, um eine nahezu live erfolgende Ausgabe von Medienströmen zu ermöglichen. Bei 505 wird die der Anforderung zugeordnete Bitrate identifiziert. Gemäß verschiedenen Ausführungsbeispielen wird bei 507 ein aktuelles Fragment für den Medienstrom erhalten und mit einer Fragmentnummer und einer Feldstruktur, welche Synchronisierungsinformationen, Kapitelinformationen und Dateiende-Informationen unterstützt, gesendet. Es sei darauf hingewiesen, dass nicht jedes Fragment Synchronisierungs-, Kapitel- und Dateiende-Informationen enthält.
  • Gemäß verschiedenen Ausführungsbeispielen dienen die Synchronisierungsinformationen dem Synchronisieren von Audio und Video, wenn die Wiedergabe einen Start mitten in einem Strom mit sich bringt. Die Dateiende-Informationen geben an, wann das aktuelle Programm oder die Datei zu Ende ist. Dies kann Informationen hinsichtlich des Fortsetzens des Übertragens des nächsten Programms oder der nächsten Datei beinhalten. Die Kapitelinformationen können für Video-on-Demand-Inhalte verwendet werden, die in Kapitel, welche möglicherweise durch Werbeslots getrennt sind, unterteilt sind.
  • Bei 509 wird das übertragene Fragment für einen begrenzten Zeitraum im Zwischenspeicher gehalten. Bei 511 wird eine Anforderung nach einem nachfolgenden Fragment empfangen. Gemäß verschiedenen Ausführungsbeispielen weist das nachfolgende Fragment eine Fragmentnummer auf, die in direktem Zusammenhang mit dem zuvor übertragenen Fragment steht. Bei einigen Beispielen kann das Client-Gerät eine andere Bitrate oder die gleiche Bitrate anfordern. Bei 513 wird festgestellt, ob ein Fragment mit der korrekten Fragmentnummer im Zwischenspeicher verfügbar ist. Falls nicht, werden die Bitrate und die Fragmentnummer festgestellt, um bei 515 das korrekte Fragment zu erhalten. Bei einigen Beispielen ist die Fragmentnummer um eins höher als die Fragmentnummer des vorhergehenden übertragenen Fragments.
  • In einigen Beispielen kann das Client-Gerät eine erheblich abweichende Fragmentnummer anfordern, die einem anderen Zeitindex entspricht. Dies ermöglicht einem Client-Gerät nicht nur eine Qualitätsänderung durch das Anfordern einer anderen Bitrate, sondern auch eine Zeitverschiebung durch das Anfordern eines bereits zuvor übertragenen früheren Segments. Gemäß verschiedenen Ausführungsbeispielen wird ein aktuelles Fragment für den Medien-Stream erhalten und mit einer Fragmentnummer und einer Feldstruktur, die Synchronisierungsinformationen, Kapitelinformationen und Dateiende-Informationen unterstützt, bei 517 gesendet.
  • Das System kann sodann auf Anforderungen nach weiteren Fragmenten warten, die nahezu live gesendeten Stroms zugeordnet sind.
  • 6 zeigt ein Verfahren zur Durchführung der Qualitätsanpassung unter Verwendung eines fragmentierten Medienstroms. Bei 601 wird eine von einem Clientgerät kommende Anforderung nach einem Medienfragment empfangen. Bei der Anforderung kann es sich um eine HTTP-Get-Anforderung handeln, die eine bestimmte Bitrate und einen Medienidentifikator aufweist. Bei 605 identifiziert ein Inhaltsserver oder ein Fragmentserver die Bitrate und das Medium. Gemäß verschiedenen Ausführungsbeispielen erkennt der Inhaltsserver auch den Nutzer und das Gerät, um zu verifizieren, dass der Nutzer berechtigt ist, den Medieninhalt auf dem bestimmten Gerät anzusehen. Bei einigen Beispielen werden der Nutzer und das Gerät identifiziert, um einen Medienstrom geeigneter Qualität oder die korrekte Version des Medienstroms zu bestimmen, die an das Clientgerät zu liefern ist. Bei 607 wird ein Fragment mit einer Fragmentnummer und einer Feldstruktur gesendet, welche Synchronisierungsinformationen, Kapitelinformationen, und Dateiende-Informationen unterstützt.
  • Gemäß verschiedenen Ausführungsbeispielen dienen die Synchronisierungsinformationen der Audio- und Video-Synchronisierung, wenn die Wiedergabe einen Beginn mitten in einem Strom mit sich bringt. Die Dateiende-Informationen geben das Ende des gegenwärtigen Programms oder der Datei an. Dies kann Informationen zum Fortsetzen des Streamings des nächsten Programms oder der nächsten Datei enthalten. Die Kapitelinformationen können für Video-on-Demand-Inhalte verwendet werden, die in Kapitel, welche möglicherweise durch Werbeslots getrennt sind, unterteilt sind.
  • Bei 609 wird das Anhalten der Wiedergabe erkannt. Das Anhalten der Wiedergabe kann anhand der seitens eines Clientgeräts erfolgenden Anforderung nach einem Anhalten der Wiedergabe erkannt werden. Bei anderen Ausführungsbeispielen kann das Anhalten der Wiedergabe erkannt werden, wenn ein Inhaltsserver innerhalb eines vorbestimmten Zeitraums von dem Clientgerät keine Anforderung nach weiteren Medienfragmenten empfängt. Bei weiteren Ausführungsbeispielen kann das Anhalten der Wiedergabe erkannt werden, wenn ein Inhaltsserver keine geeignete Bestätigung von Seiten eines Clientgeräts empfängt. Bei 611 werden die Nutzer- und Medieninformationen zwischengespeichert. Bei einigen Ausführungsbeispielen können Bitraten-, Versions-, Geräte- und andere Qualitäts- und Positionsinformationen zwischengespeichert werden.
  • Bei 613 wird eine von einem Nutzer kommende Anforderung nach einem nächsten Medienfragment empfangen. Gemäß verschiedenen Ausführungsbeispielen wird die Anforderung von Seiten eines anderen Geräts her empfangen, oder sie wird unter Netzwerkbedingungen empfangen, die nunmehr eine andere Bitrate unterstützen. Bei 615 werden der Nutzer, das Gerät und die Bitrate, die autorisiert sind, erkannt. Gemäß verschiedenen Ausführungsbeispielen werden Nutzer- und Medienpositionsinformationen erfasst. Bei 617 wird das Fragment mit der nächstfolgenden Fragmentnummer entsprechend der zwischengespeicherten Medienpositionsinformationen mit einer Feldstruktur gesendet, welche Synchronisierungsinformationen, Kapitelinformationen, und Dateiende-Informationen unterstützt. Bei einigen Beispielen müssen nicht sämtliche welche Synchronisierungsinformationen, Kapitelinformationen, und Dateiende-Informationen gesendet werden. Bei einigen Beispielen kann die Feldstruktur lediglich die Synchronisierungsinformationen enthalten, während sie andere Arten von Informationen unterstützt, jedoch nicht enthält.
  • 7 zeigt ein Beispiel für einen Fragmentserver. Gemäß bestimmten Ausführungsbeispielen weist ein System 700, das zum Implementieren bestimmter Ausführungsbeispiele der vorliegenden Erfindung geeignet ist, einen Prozessor 701, einen Speicher 703, ein Interface 711 und einen Bus 715 (beispielsweise einen PCI-Bus oder eine andere Verbindungsstruktur) auf und arbeitet als Streaming-Server. Wenn er unter Steuerung durch geeignete Software oder Firmware arbeitet, ist der Prozessor 701 für das Modifizieren und Übertragen von Live-Mediendaten an einen Client verantwortlich. Verschiedene speziell konfigurierte Vorrichtungen können ebenfalls anstelle des Prozessors 701 oder zusätzlich zu dem Prozessor 701 verwendet werden. Das Interface 711 ist üblicherweise zum Senden und Empfangen von Datenpaketen oder Datensegmenten über ein Netzwerk konfiguriert.
  • Besondere Beispiele für unterstützte Interfaces umfassen Ethernet-Interfaces, Frame-Relay-Interfaces, Kabel-Interfaces, DSL-Interfaces, Token-Ring-Interfaces und dergleichen. Darüber hinaus können verschiedene sehr schnelle Interfaces vorgesehen sein, wie beispielsweise Fast-Ethernet-Interfaces, Gigabit-Ethernet-Interfaces, ATM-Interfaces, HSSI-Interfaces, POS-Interfaces, FDDI-Interfaces und dergleichen. Im Allgemeinen können diese Interfaces Ports aufweisen, welche für die Kommunikation mit geeigneten Medien geeignet sind. In einigen Fällen können sie auch einen unabhängigen Prozessor und in einigen Fällen einen flüchtigen RAM aufweisen. Die unabhängigen Prozessoren können solch kommunikationsintensive Aufgaben wie Paketwechsel, Mediensteuerung und -verwaltung wahrnehmen.
  • Gemäß verschiedenen Ausführungsbeispielen handelt es sich bei dem System 700 um einen Fragmentserver, der ferner einen Transceiver, Streaming-Puffer und eine Programmführerdatenbank aufweist. Der Fragmentserver kann ferner mit Fähigkeiten für die Abonnementverwaltung, die Logging- und Berichterstellung und die Überwachung versehen sein. In bestimmten Ausführungsbeispielen besteht die Möglichkeit des Betriebs mit mobilen Geräten, wie Mobiltelefonen, die in einem bestimmten Mobilfunknetz betrieben werden, und der Bereitstellung einer Abonnementverwaltung. Gemäß verschiedenen Ausführungsbeispielen prüft ein Authentisierungsmodul die Identität von Geräten, einschließlich Mobilgeräten. Ein Logging- und Berichterstellungsmodul verfolgt Anforderungen von Seiten von Mobilgeräten und die entsprechenden Antworten. Ein Überwachungssystem ermöglicht es einem Administrator, Nutzungsmuster und die Systemverfügbarkeit zu beobachten. Gemäß verschiedenen Ausführungsbeispielen handhabt der Fragmentserver 791 Anforderungen und Antworten bezüglich Medieninhalte betreffenden Transaktionen, während ein separater Streaming-Server die eigentlichen Medien-Ströme liefert.
  • Zwar wurde ein bestimmter Fragmentserver 791 beschrieben, jedoch sollte ersichtlich sein, dass eine Vielzahl alternativer Konfigurationen möglich ist. Beispielsweise sind einige Module wie das Logging- und Berichterstellungsmodul 753 und ein Monitormodul 751 möglicherweise nicht in jedem Server erforderlich. Alternativ können die Module in einer anderen Vorrichtung ausgebildet sein, welche mit dem Server verbunden ist. In einem anderen Beispiel weist der Server 691 kein Interface zu einer Abstraktkaufmaschine aus und kann tatsächlich die Abstraktkaufmaschine selbst aufweisen. Eine Vielzahl von Konfigurationen ist möglich.
  • In der vorangehenden Beschreibung wurde die Erfindung unter Bezugnahme aus spezifische Ausführungsbeispiele beschrieben. Für den Fachmann auf diesem Gebiet ist jedoch ersichtlich, dass verschiedene Modifizierungen und Änderungen vorgenommen werden können, ohne den in den Ansprüchen nachfolgend ausgeführten Rahmen der Erfindung zu verlassen. Die Beschreibung und die Figuren sind daher eher als illustrativ, denn als einschränkend anzusehen, und sämtliche derartigen Modifizierungen gelten als in den Rahmen der Erfindung eingeschlossen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • ISO/IEC 14496-12 [0040]
    • http://{HOSTNAME}/frag/{CHANNEL}/{BITRATE}/[{ID}/]{COMMAND}[/{ARG}] [0045]
    • http://frag.hosttv.com/frag/1/H8QVGAH264/1270059632.mp4/fragment/42 [0045]

Claims (4)

  1. Verfahren mit: dem Empfangen einer Anforderung nach einem Inhalt an einem Gerät; dem Identifizieren einer Vielzahl von dem Gerät zugeordneten Nutzern; dem Authentifizieren eines ersten Nutzers an dem Gerät, wobei das Authentifizieren des ersten Nutzers an dem Gerät beinhaltet, zu verifizieren, dass ein dem ersten Nutzer zugeordnetes Mobilgerät sich in der Nähe des Geräts befindet; dem Bestimmen eines Dienstleistungslevels für Inhalte, die für den ersten Nutzer zugänglich sind; dem Abspielen von Inhalten auf dem für den ersten Nutzer zugänglichen Dienstleistungslevel.
  2. Verfahren nach Anspruch 1, bei welchem ein zweiter Nutzer an dem Gerät authentifiziert wird und bestimmt wird, dass das Dienstleistungslevel für Inhalte, die für den zweiten Nutzer zugänglich sind, niedriger als das Dienstleistungslevel für Inhalte ist, die für den ersten Nutzer zugänglich sind.
  3. Verfahren nach Anspruch 1, bei welchem durch das Empfangen eines Passcodes von dem Mobilgerät verifiziert wird, dass sich das Mobilgerät in der Nähe des Geräts befindet.
  4. Verfahren nach Anspruch 1, bei welchem das Mobilgerät ein Smartphone und das Gerät eine Set-Top-Box ist.
DE112011102878T 2010-08-30 2011-08-29 Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen Withdrawn DE112011102878T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US37817210P 2010-08-30 2010-08-30
US61/378,172 2010-08-30
PCT/US2011/049591 WO2012030734A1 (en) 2010-08-30 2011-08-29 User and device authentication for media services

Publications (1)

Publication Number Publication Date
DE112011102878T5 true DE112011102878T5 (de) 2013-06-06

Family

ID=45698967

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112011102878T Withdrawn DE112011102878T5 (de) 2010-08-30 2011-08-29 Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen

Country Status (4)

Country Link
US (2) US8719921B2 (de)
DE (1) DE112011102878T5 (de)
GB (1) GB2497887A (de)
WO (1) WO2012030734A1 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9602425B2 (en) * 2009-12-31 2017-03-21 Cable Television Laboratories, Inc. Zero sign-on authentication
KR20120119790A (ko) * 2011-04-22 2012-10-31 삼성전자주식회사 미디어 데이터 전송 방법 및 장치와 미디어 데이터 수신 방법 및 장치
US8806188B2 (en) 2011-08-31 2014-08-12 Sonic Ip, Inc. Systems and methods for performing adaptive bitrate streaming using automatically generated top level index files
US8752206B2 (en) * 2012-09-12 2014-06-10 The Directv Group, Inc. Method and system for authorizing playback from multiple devices
US11070860B2 (en) 2013-02-14 2021-07-20 Comcast Cable Communications, Llc Content delivery
US9563755B2 (en) * 2013-06-18 2017-02-07 Google Inc. NFC triggered two factor protected parental controls
CN105247528B (zh) * 2013-06-27 2018-05-18 英特尔公司 连续多因素认证
US9264774B2 (en) * 2013-08-12 2016-02-16 Verizon Patent And Licensing Inc. Seamless multi-channel TV everywhere sign-in
US10440499B2 (en) 2014-06-16 2019-10-08 Comcast Cable Communications, Llc User location and identity awareness
US10045090B2 (en) 2014-08-11 2018-08-07 Comcast Cable Communications, Llc Merging permissions and content access
US9800576B2 (en) 2014-10-14 2017-10-24 Audible Magic Corporation Authentication for over the top broadcast streaming using automated content recognition
CN104519060B (zh) * 2014-12-16 2018-05-25 深圳市共进电子股份有限公司 读取参数和调用服务的方法及装置
ES2874748T3 (es) 2015-01-06 2021-11-05 Divx Llc Sistemas y métodos para codificar y compartir contenido entre dispositivos
US9918129B2 (en) 2016-07-27 2018-03-13 The Directv Group, Inc. Apparatus and method for providing programming information for media content to a wearable device
CN107231568A (zh) * 2017-08-01 2017-10-03 腾讯科技(深圳)有限公司 一种媒体播放方法、服务器及终端设备
US10630487B2 (en) * 2017-11-30 2020-04-21 Booz Allen Hamilton Inc. System and method for issuing a certificate to permit access to information
CN113727143A (zh) * 2018-08-30 2021-11-30 华为技术有限公司 视频投屏方法、装置、计算机设备及存储介质
US11405689B2 (en) * 2020-12-09 2022-08-02 Rovi Guides, Inc. Systems and methods for providing recording of a blacked-out media content item

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003287497A1 (en) 2003-11-04 2004-06-06 Thomson Licensing Cache server at hotspots for downloading services
US7383983B2 (en) * 2004-05-07 2008-06-10 General Instrument Corporation System and method for managing content between devices in various domains
US8028320B1 (en) * 2006-05-02 2011-09-27 Nextel Communications, Inc. System and method for providing media to media playback device
CN101437725A (zh) 2006-08-03 2009-05-20 一诺溶液有限公司 具有通过表面上的突出部分相连接的两个台板的货物托盘
US8869189B2 (en) * 2006-12-29 2014-10-21 Echostar Technologies L.L.C. Controlling access to content and/or services
US8590028B2 (en) * 2007-07-09 2013-11-19 Infosys Limited Content licensing and conditional access using a mobile device
US8555330B2 (en) * 2007-10-03 2013-10-08 At&T Intellectual Property I, L.P. System for managing media services
JP4769276B2 (ja) 2008-08-04 2011-09-07 大陽日酸株式会社 無機質球状化粒子製造用バーナ
US8442498B2 (en) * 2008-12-19 2013-05-14 Verizon Patent And Licensing Inc. Methods, systems and computer program products for remote DVR interface provisioning
US8364011B2 (en) * 2009-05-06 2013-01-29 Disney Enterprises, Inc. System and method for providing a personalized media consumption experience
US8464320B2 (en) * 2010-05-24 2013-06-11 Verizon Patent And Licensing Inc. System and method for providing authentication continuity
US20110299586A1 (en) * 2010-06-04 2011-12-08 Mobitv, Inc. Quality adjustment using a fragmented media stream
US8701043B2 (en) * 2010-08-26 2014-04-15 Verizon Patent And Licensing Inc. Methods and systems for dynamically providing access to enhanced content during a presentation of a media content instance

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
http://{HOSTNAME}/frag/{CHANNEL}/{BITRATE}/[{ID}/]{COMMAND}[/{ARG}]
http://frag.hosttv.com/frag/1/H8QVGAH264/1270059632.mp4/fragment/42
ISO/IEC 14496-12

Also Published As

Publication number Publication date
GB201305423D0 (en) 2013-05-08
US8719921B2 (en) 2014-05-06
US20120054856A1 (en) 2012-03-01
WO2012030734A1 (en) 2012-03-08
GB2497887A (en) 2013-06-26
US20140201777A1 (en) 2014-07-17

Similar Documents

Publication Publication Date Title
DE112011102878T5 (de) Nutzer- und Vorrichtungsauthentifizierung für Mediendienstleistungen
DE112011103333T5 (de) Medienkonvergenzplattform
DE112011101911T5 (de) Fragmentierte Dateistruktur für die Ausgabe von Live-Medien-Streams
DE112012001770T5 (de) Auf Echtzeitverarbeitungsfähigkeit basierende Qualitätsanpassung
DE112012002159T5 (de) Kontextsensitive Client-Pufferschwellenwerte
US9787747B2 (en) Optimizing video clarity
DE112011102879T5 (de) Medienrechteverwaltung auf mehreren Geräten
US11252454B2 (en) System, devices and methods for providing stream privacy in an ABR OTT media network
DE112011101908T5 (de) Qualitätseinstellung unter Verwendung eines fragmentierten Medienstroms
DE112013001136T5 (de) Effiziente Abgrenzung und Verteilung von Media-Segmenten
DE112013002247T5 (de) Kombinierte Broadcast- und Unicast-Übermittlung
EP3289768A1 (de) Verfahren und vorrichtung zur durchsetzung von programm- und einrichtungsklassenberechtigungen in einem rundfunkdatenstrom unter verwendung einer manifestdatei
DE112013002234T5 (de) Verbundenes Mehrfachbilschirm-Video
US10659843B2 (en) Content rights management for mobile devices
DE112011101004T5 (de) Medienkonvergenzplattform
DE202013006341U1 (de) System zur Wiedergabe eines Medieninhalts aus dem World Wide Web
DE202013006281U1 (de) System zur Wiedergabe eines Medieninhalts aus dem World Wide Web
DE112016004560T5 (de) Gateway Multi-View-Video-Stream-Verarbeitung für Zweitbildschirminhalts-Überlagerung
US11985367B2 (en) Methods, systems, and media for ensuring consumption of portions of media content
DE112012004994T5 (de) Verbesserte Bildergruppen-(GOP)-Ausrichtung in Medienstromvarianten
US20200280760A1 (en) Capturing border metadata while recording content
DE112014000242T5 (de) Skalierbare digitale Videoaufzeichnungen auf Netzwerkbasis über eine Architektur auf Shard-Basis
AU2015101054A4 (en) A computer implemented system and method for on-demand multi-screen seamless streaming
US20160323624A1 (en) System and a method for a time shift function in a mobile content gateway
US20160323622A1 (en) System and a method for distributed processing of video content in a mobile content gateway

Legal Events

Date Code Title Description
R005 Application deemed withdrawn due to failure to request examination