DE10392280T5 - Verfahren und Vorrichtung zum Unterstützen von AVC in MP4 - Google Patents

Verfahren und Vorrichtung zum Unterstützen von AVC in MP4 Download PDF

Info

Publication number
DE10392280T5
DE10392280T5 DE10392280T DE10392280T DE10392280T5 DE 10392280 T5 DE10392280 T5 DE 10392280T5 DE 10392280 T DE10392280 T DE 10392280T DE 10392280 T DE10392280 T DE 10392280T DE 10392280 T5 DE10392280 T5 DE 10392280T5
Authority
DE
Germany
Prior art keywords
metadata
sample
sub
multimedia data
data
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
DE10392280T
Other languages
English (en)
Inventor
Mohammed Zubair Santa Clara Visharam
Ali Cupertino Tabatabai
Toby Seattle Walker
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.)
Sony Electronics Inc
Original Assignee
Sony Electronics 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 Sony Electronics Inc filed Critical Sony Electronics Inc
Publication of DE10392280T5 publication Critical patent/DE10392280T5/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • 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/8451Structuring of content, e.g. decomposing content into time segments using Advanced Video Coding [AVC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • 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/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4621Controlling the complexity of the content stream or additional data, e.g. lowering the resolution or bit-rate of the video stream for a mobile client with a small screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • 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/84Generation or processing of descriptive data, e.g. content descriptors
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback

Abstract

Verfahren, welches aufweist:
Erzeugen von Subabtast-Metadaten, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; und
Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten aufweist.

Description

  • Verwandte Anmeldungen
  • Diese Anmeldung bezieht sich auf und beansprucht den Vorteil der provisorischen US-Patentanmeldungen mit den Serial-Nummern 60/359,606, angemeldet am 25. Februar 2002, 601361,773, angemeldet am 5. März 2002, und 60/363,643, angemeldet am 8. März 2002, die hiermit unter Bezugnahme eingeführt werden.
  • Gebiet der Erfindung
  • Die Erfindung bezieht sich allgemein auf das Speichern und auf das Wiederauffinden von audiovisuellem Inhalt in einem Multimedia-Dateiformat, insbesondere auf Dateiformate, die mit dem ISO-Mediadateiformat kompatibel sind.
  • Copyright-Notiz/Erlaubnis
  • Ein Teil der Offenbarung dieses Patentdokuments enthält Material, welches dem Copyright-Schutz unterworfen ist. Der Copyright-Eigner hat keinen Einwand gegen eine Faksimilieübertragungs-Reproduktion durch irgendeinen des Patentdokuments oder Patentoffenbarung, wie diese in Patent and Trademark Office patent file oder records erscheint, hält jedoch ansonsten alle Copyright-Rechte, die darüber hinaus gehen, zurück. Die folgende Notiz richtet sich auf die Software und die Daten, wie anschließend und in den dazugehörigen Zeichnungen beschrieben wird: Copyright © 2001, Sony Electronics, Inc., All Rights Reserved.
  • Hintergrund der Erfindung
  • Im Soge eines schnell anwachsenden Wunsches nach Netzwerk-, Multimedia-, Datenbank- und anderer digitaler Kapazität wurden viele Multimediacodier- und Speicherprogramme entwickelt. Eines der bekannten Dateiformate zum Codieren und zum Speichern von audiovisuellen Daten ist das QuickTime ®-Dateiformat, welches durch Apple Computer Inc. Entwickelt wurde. Das QuickTime – Dateiformat wurde als Startpunkt zum Bilden des International Organization for Standardization (ISO) – Multimedia-Dateiformats verwendet, ISO/IEC 14496-12, Information Technology-Coding of audio-visuell objects – Teil 12: ISO Mediadateiformat (auch als ISO-Dateiformat bekannt), welches wiederum als Dokumentvorlage für zwei Standarddateiformate verwendet wurde: (1) für ein MPEG-4-Dateiformat, entwickelt durch Moving Picture Experts Group, bekannt als MP4 (ISO/IEC 14496-14, Information Technology – Coding of audio-visuell objects (Codierung von audio-visuellen Objekten) – Teil 14: MP4-Dateiformat); und (2) ein Dateiformat für JPEG 2000 (ISO/IEC 15444-1), entwickelt durch Joint Photographic Experts Group (JPEG).
  • Das ISO-Mediadateiformat besteht aus objekt-orientierten Strukturen, die als Boxen bezeichnet werden (auch als Atome oder Objekte bezeichnet). Die zwei wichtigen Top-Pegel-Boxen enthalten entweder Mediadaten oder Metadaten. Die meisten Boxen beschreiben eine Hierarchie von Metadaten, die erklärende strukturelle und zeitliche Information über die aktuellen Mediadaten bereitstellen. Diese Kollektion von Boxen ist in einer Box enthalten, welche als Movie-Box bekannt ist. Die Mediadaten selbst können in Mediadaten-Boxen oder extern angeordnet sein. Jeder Mediadatenstrom wird als ein Track bezeichnet (auch als Elementarstrom oder einfach als Strom bekannt).
  • Die primären Metadaten sind das Movie-Objekt. Die Movie-Box umfasst Track-Boxen, welche zeitlich dargestellte Mediadaten beschreiben. Die Mediadaten für einen Track können aus verschiedenen Arten bestehen (beispielsweise Videodaten, Audiodaten, Binärformat-Bildschirmdarstellungen (BIFS), usw.). Jeder Track ist weiter in Abtastungen unterteilt (auch als Zugriffseinheiten oder Bilder bekannt). Eine Abtastung stellt eine Einheit von Mediadaten bei einem bestimmten Zeitpunkt dar. Abtast-Metadaten sind in einem Satz von Abtast-Boxen enthalten. Jede Track-Box enthält eine Abtasttabellenbox-Metadaten-Box, welche Boxen enthält, welche die Zeit für jede Abtastung, deren Größe in Bytes und deren Lage (extern oder intern zur Datei) für ihre Mediadaten, usw., enthält. Eine Abtastung ist die kleinste Daten-Entität, die den Zeitablauf, den Ort und andere Metadaten-Information zeigen kann.
  • Seit einiger Zeit begannen MPEG's-Video Group und Video Coding Experts Group (VCEG) von International Telecommunication Union (ITU) zusammen als Joint Video Team (JVT) zu arbeiten, um einen neuen Videocodier-/Decodier-Standard (Codec-Standard), der als ITU-Empfehlung H.264 oder MPEG 4-Teil 10, Advanced Video Codec (AVC) oder JVT-Codec bezeichnet wurde, zu entwickeln. Diese Begriffe und deren Abkürzungen, beispielsweise H.264, und JVT und AVC werden hier als untereinander austauschbar verwendet.
  • Der JVT-Codec-Entwurf unterschied zwischen zwei unterschiedlichen Konzept-Ebenen, der Videocodierebene (VCL) und der Netzwerk-Abstraktions-Ebene (NAL). Die VCL enthält die Codierbezugsteile des Codec, beispielsweise Bewegungskompensation, Transformationscodierung von Koeffizienten und die Entropy-Codierung. Das Ausgangssignal der VCL sind Slices (Scheiben), von denen jede eine Serie von Makroblöcken und damit verknüpfter Datenkopfinformation enthält. Die NAL abstrahiert die VCL von den Details der Transportebene, die verwendet wird, die VCL-Daten zu führen. Sie definiert eine allgemeine und unabhängige Transportdarstellung für Information über den Pegel des Slice. Die NAL definiert die Schnittstelle zwischen dem Videocodec selbst und der Außenwelt. Intern verwendet die NAL NAL-Pakete. Ein NAL-Paket besitzt ein Typusfeld, welches den Typus der Nutzlast zusätzlich einem Satz von Bits in der Nutzlast zeigt. Die Daten innerhalb eines einzelnen Slice können weiter in unterschiedliche Datenpartitionen unterteilt sein.
  • Bei vielen existierenden Videocodierformaten umfassen die codierten Stromdaten verschiedene Arten von Datenköpfen, die Parameter enthalten, die den Decodierprozess steuern. Beispielsweise umfasst der MPEG-2-Videostandard Sequenzdatenköpfe, verbesserte Gruppen von Bildern (GOP) und Bilddatenköpfe vor den Videodaten entsprechend zu diejenigen Posten. Bei JVT wird die Information, die benötigt wird, die VCL-Daten zu decodieren, in Parametersätze gruppiert. Jedem Parametersatz wird ein Identifizierer zugeteilt, der nachfolgend als eine Referenz von einem Slice verwendet wird. Anstelle des Sendens der Parametersätze innerhalb des Stroms (im Band) können sie außerhalb des Stroms (außerhalb des Bandes) gesendet werden.
  • Existierende Dateiformate liefern nicht eine Möglichkeit, die Parametersätze in Verbindung mit codierten Mediadaten zu speichern; weiter liefern sie keine Einrichtung, um Mediadaten (d.h., Abtastungen oder Subabtastungen) mit Parametersätzen effektiv zu verknüpfen, so dass Parametersätze effektiv wiederaufgefunden und übertragen werden können.
  • Beim ISO-Mediadateiformat ist die kleinste Einheit, auf die zugegriffen werden kann, ohne Mediadaten zu definieren, eine Abtastung, d.h., ein Gesamtbild in AVC. Bei vielen Codierformaten kann eine Abtastung weiter in kleinere Einheiten unterteilt werden, welche als Subabtastungen bezeichnet werden (auch als Abtastfragmente oder Zugriffseinheitsfragmente bezeichnet). Im Fall von AVC entspricht eine Subabtastung einem Slice. Existierende Dateiformate unterstützen jedoch nicht das Zugreifen auf Subteile einer Abtastung. Für Systeme, die benötigen, flexibel Daten zu bilden, die in einer Datei in Paketen zur Strombildung gespeichert sind, behindert dieser Mangel an Zugriff auf Subabtastungen eine flexible Paketbildung der JVT-Mediadaten für das Strombilden.
  • Eine andere Beschränkung von existierenden Speicherformaten befasst sich mit dem Umschalten zwischen gespeicherten Datenströmen mit unterschiedlicher Bandbreite als Antwort auf sich ändernde Netzwerkbedingungen, wenn Mediadaten strömen. Bei einem typischen Datenstrom-Szenario besteht eine der Schlüsselerfordernisse darin, die Bitrate der komprimierten Daten als Antwort auf sich ändernde Netzwerkzustände zu skalieren. Dies wird üblicherweise durch Codieren von Mehrfachströmen mit unterschiedlicher Bandbreite und Qualitätseinstellungen für repräsentative Netzwerkbedingungen erzielt und durch Speichern von diesen in einer oder mehreren Dateien. Der Server kann unter diesen vorcodierten Datenströmen als Antwort auf Netzwerkbedingungen umschalten. Bei existierenden Dateiformaten ist lediglich das Umschalten zwischen Datenströmen bei Abtastungen möglich, die nicht von früheren Abtastungen zur Rekonstruktion abhängen. Solche Abtastungen werden als I-Rahmen bezeichnet. Es ist zurzeit keine Unterstützung zum Umschalten zwischen Datenströmen bei Abtastungen vorgesehen, die von früheren Abtastungen zur Rekonstruktion abhängen (d.h., ein P-Rahmen oder ein B-Rahmen, welche von mehreren Abtastungen zur Referenz abhängen).
  • Der AVC-Standard stellt ein Werkzeug bereit, bekannt als Umschaltbilder (bezeichnet als SI- und SP-Bilder), um wirksames Umschalten zwischen Datenströmen, einen wahlfreien Zugriff und eine Fehlerabfederung wie auch andere Merkmale zu ermöglichen. Ein Umschaltbild ist eine spezielle Art eines Bilds, dessen rekonstruierter Wert exakt äquivalent dem Bild ist, von dem angenommen wird, zu diesem umzuschalten. Umschaltbilder können Referenzbilder verwenden, die gegenüber denjenigen unterschiedlich sind, die verwendet werden, das Bild, mit dem sie übereinstimmen, vorherzusagen, wodurch somit eine effizientere Codierung als unter Verwendung von I-Rahmen bereitgestellt wird. Um Umschaltbilder, welche in einer Datei gespeichert sind, wirksam zu nutzen, ist es notwendig, zu kennen, welche Sätze von Bildern äquivalent sind, und zu kennen, welche Bilder zur Vorhersage verwendet werden. Existierende Dateifarmate liefern diese Information nicht, und daher muss diese Information durch Definieren des Codierstroms extrahiert werden, was unwirksam und langsam ist.
  • Es besteht daher eine Notwendigkeit, Speicherverfahren zu verbessern, die sich auf neue Fähigkeiten richten, die durch zum Vorschein kommen von Videocodierstandards bereitgestellt werden und die sich auf existierende Beschränkungen dieser Speicherverfahren richten.
  • Überblick über die Erfindung
  • Subabtast-Metadaten, die Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, werden erzeugt. Außerdem wird eine Datei, die mit den Multimedia daten verknüpft ist, gebildet. Diese Datei enthält die Subabtast-Metadaten wie auch andere Information, die zu den Multimediadaten gehört.
  • Kurzbeschreibung der Zeichnungen
  • Die vorliegende Erfindung wird beispielhaft (nicht einschränkend) in den Figuren der beiliegenden Zeichnungen dargestellt, in denen gleiche Bezugszeichen sich auf ähnliche Elemente beziehen, und in denen:
  • 1 ein Blockdiagramm einer Ausführungsform eines Codiersystems ist;
  • 2 ein Blockdiagramm einer Ausführungsform eines Decodiersystems ist;
  • 3 ein Blockdiagramm eines Computerumfelds ist, welches geeignet ist, die Erfindung auszuüben;
  • 4 ein Flussdiagramm eines Verfahrens ist, um Subabtast-Metadaten in einem Codiersystem zu speichern;
  • 5 ein Flussdiagramm eines Verfahrens ist, um Subabtastung-Metadaten in einem Decodiersystem zu nutzen;
  • 6 ein erweitertes MP4-Media-Datenstrommodell mit Subabtastungen zeigt;
  • 7A7K beispielhafte Datenstrukturen zum Speichern von Subabtast-Metadaten zeigen;
  • 8 ein Flussdiagramm eines Verfahrens ist, um Parametersatz-Metadaten in einem Codiersystem zu speichern;
  • 9 ein Flussdiagramm eines Verfahrens ist, um Parametersatz-Metadaten in einem Decodiersystem zu nutzen;
  • 10A10E beispielhafte Datenstrukturen zeigen, um Parametersatz-Metadaten zu speichern;
  • 11 eine beispielhafte verbesserte Gruppe von Bildern (GOP) zeigt;
  • 12 ein Flussdiagramm eines Verfahrens ist, um Sequenzen von Metadaten in einem Codiersystem zu speichern;
  • 13 ein Flussdiagramm eines Verfahrens ist, um Sequenzen von Metadaten in einem Decodiersystem zu nutzen;
  • 14A14E beispielhafte Datenstrukturen zeigen, um Sequenzen von Metadaten zu speichern;
  • 15A und 15B die Verwendung eines Schaltabtastsatzes zur Bitstromumschaltung zeigen;
  • 15C ein Flussdiagramm einer Ausführungsform eines Verfahrens ist, um einen Punkt zu bestimmen, bei dem ein Schalten zwischen zwei Datenströmen durchzuführen ist;
  • 16 ein Flussdiagramm eines Verfahrens ist, um Schaltabtast-Metadaten in einem Codiersystem zu speichern;
  • 17 ein Flussdiagramm eines Verfahrens ist, um Schaltabtast-Metadaten in einem Decodiersystem zu nutzen;
  • 18 eine beispielhafte Datenstruktur zum Speichern von Schaltabtast-Metadaten zeigt;
  • 19A und 19B die Verwendung eines Schaltabtastsatzes zeigen, um Direktzugriffs-Eintragspunkte in einem Bitstrom zu erleichtern;
  • 19C ein Flussdiagramm einer Ausführungsform eines Verfahrens ist, um einen Direktzugriffspunkt für eine Abtastung zu bestimmen;
  • 20A und 20B die Verwendung eines Schaltabtastsatzes zeigen, um Fehlerregenerierung zu erleichtern; und
  • 20C ein Flussdiagramm einer Ausführungsform eines Verfahrens ist, um Fehlerregenerierung zu erleichtern, wenn eine Abtastung geliefert wird.
  • Ausführliche Beschreibung der Erfindung
  • In der folgenden ausführlichen Beschreibung von Ausführungsformen der Erfindung wird bezuggenommen auf die beiliegenden Zeichnungen, in den gleiche Bezugszeichen ähnliche Elemente zeigen, und denen beispielhaft spezielle Ausführungsformen gezeigt sind, bei denen die Erfindung praktiziert werden kann. Diese Ausführungsform sind in ausreichendem Detail beschrieben, um es dem Fachmann zu ermöglichen, die Erfindung auszuüben, und es soll verstanden sein, dass andere Ausführungsformen verwendet werden können, und dass logische, mechanische, elektrische, funktionelle oder andere Änderungen durchgeführt werden können, ohne den Rahmen der vorliegenden Erfindung zu verlassen. Die folgende ausführliche Beschreibung ist daher nicht in einem einschränkenden Sinne heranzuziehen, und der Rahmen der vorliegenden Erfindung ist lediglich durch die beigefügten Patentansprüche definiert.
  • Überblick
  • Beginnend mit einem Überblick über die Arbeitsweise der Erfindung zeigt 1 eine Ausführungsform eines Codiersystem 100. Das Codiersystem 100 umfasst einen Media codierer 104, einen Metadatengenerator 106 und einen Dateiersteller 108. Der Mediacodierer 104 empfängt Mediadaten, welcher Videodaten (beispielsweise Videoobjekte, welche von einer natürlichen Videoquellenszene und anderen externen Videoobjekten gebildet sein können), Audiodaten (beispielsweise Audioobjekte, die aus einer natürlichen Audioquellenszene und anderen externen Audioobjekten gebildet sind), künstliche Objekte oder eine Kombination der obigen aufweisen kann. Der Mediacodierer 104 kann aus einer Anzahl von individuellen Codierern bestehen, oder er kann Subcodierer aufweisen, um verschiedene Arten von Mediadaten zu verarbeiten. Der Mediacodierer 104 codiert die Mediadaten und liefert diese zum Metadatengenerator 106. Der Metadatengenerator 106 erzeugt Metadaten, die Information über die Mediadaten gemäß einem Mediadateiformat bereitstellen. Das Mediadateiformat kann von dem ISO-Mediadateiformat (oder irgendeinem von dessen Derivaten, beispielsweise MPEG-4, JPEG 200, usw.), QuickTime oder irgendeinem anderen Mediadateiformat hergeleitet sein, und kann außerdem einige zusätzliche Dateistrukturen aufweisen. Bei einer Ausführungsform sind die Zusatzdateistrukturen so definiert, um Metadaten zu speichern, welche zu Subabtastungen innerhalb der Mediadaten gehören. Bei einer anderen Ausführungsform sind Zusatzdatenstrukturen definiert, um Metadaten-Verknüpfungsbereiche von Mediadaten (beispielsweise Abtastungen oder Subabtastungen) entsprechend Parametersätzen zu speichern, welche Decodierinformation enthalten, die traditionell in den Mediadaten gespeichert wurde. Bei einer noch anderen Ausführungsform sind die Zusatzdatenstrukturen definiert, um Metadaten zu speichern, welche zu verschiedenen Gruppen von Abtastungen gehören, innerhalb der Metadaten, welche auf der Basis von Zwischenabhängigkeiten von Abtastungen in den Metadaten gebildet sind. Bei einer noch anderen Ausführungsform ist eine Zusatzdatenstruktur definiert, um Metadaten zu speichern, welche zu Schaltabtastsätzen gehören, welche mit den Mediadaten verknüpft sind. Ein Schaltabtastsatz bezieht auf sich auf einen Satz von Abtastungen, der identische Decodierwerte hat, jedoch von verschiedenen Abtastungen abhängen kann. Bei noch anderen Ausführungsformen sind verschiedene Kombinationen der Zusatzdatenstrukturen im Dateiformat, welches verwendet wird, definiert. Diese Zusatzdatenstrukturen und ihre Funktionalität werden anschließend ausführlicher beschrieben.
  • Der Dateiersteller 108 speichert die Metadaten in einer Datei, deren Struktur durch das Mediadateiformat definiert ist. Bei einer Ausführungsform enthält die Datei sowohl die codierten Mediadaten als auch Metadaten, welche zu diesen Mediadaten gehören. Alternativ sind die codierten Mediadaten teilweise oder gänzlich in einer separaten Datei enthalten, und sie sind mit den Mediadaten über Referenzen verknüpft, die in der Metadatendatei ent halten sind (beispielsweise über URLs). Die Datei, die durch den Dateiersteller 108 gebildet wird, ist auf einem Kanal 110 zur Speicherung oder zur Übertragung verfügbar.
  • 2 zeigt eine Ausführungsform eines Decodiersystems 200. Das Decodiersystem 200 besitzt einen Metadatenextrahierer 204, einen Mediadatenstrom-Prozessor 206, einen Mediadecoder 210, einen Zusammensetzer 212 und einen Bildaufbereiter 214. Das Decodiersystem 200 kann bei einer Kundeneinrichtung resident sein und für lokale Wiedergabe verwendet werden. Alternativ kann das Decodiersystem für Stromdaten verwendet werden und einen Serverbereich und einen Kundenbereich haben, welche miteinander über ein Netz (beispielsweise Internet) 208 kommunizieren. Der Server kann den Metadatenextrahierer 204 und den Mediadatenstrom-Prozessor 206 enthalten. Der Kundenbereich kann den Mediadecoder 210, den Zusammensetzer 212 und den Bildaufbereiter 214 enthalten.
  • Der Metadatenextrahierer 204 ist verantwortlich, Metadaten von einer Datei zu extrahieren, welche in einer Datenbank 216 gespeichert oder über ein Netzwerk empfangen wird (beispielsweise vom Codiersystem 100). Die Datei kann oder sie braucht nicht Metadaten in Verbindung mit den Metadaten, die extrahiert werden, aufweisen. Die Metadaten, welche von der Datei extrahiert werden, besitzen eine oder mehrere Zusatzdateistrukturen, die oben beschrieben wurden.
  • Die extrahierten Metadaten werden dem Metadatenstrom-Prozessor 206 zugeführt, der außerdem die verknüpften codierten Mediadaten empfängt. Der Mediadatenstrom-Prozessor 206 verwendet die Metadaten, um einen Mediadatenstrom zu bilden, der zum Mediadecoder 210 geliefert wird. Bei einer Ausführungsform nutzt der Mediadatenstrom-Prozessor 206 Metadaten, welche zu Subabtastungen gehören, um Subabtastungen in den Mediadaten zu lokalisieren (beispielsweise zur Paketierung). Bei einer anderen Ausführungsform nutzt der Metadatenstrom-Prozessor 206 Metadaten, welche zu Parametersätzen gehören, um Bereiche der Mediadaten mit ihren entsprechenden Parametersätzen zu verknüpfen. Bei einer noch anderen Ausführungsform nutzt der Mediadatenstrom-Prozessor 206 Metadaten, welche verschiedene Gruppen von Abtastungen innerhalb der Metadaten definieren, um auf Abtastungen in einer bestimmten Gruppe zuzugreifen (beispielsweise zur Skalierbarkeit durch Fallenlassen einer Gruppe, die Abtastungen enthält, von welcher keine weiteren Abtastungen abhängen, um die übertragene Bitrate als Antwort auf Übertragungszustände abzusenken).
  • Bei einer noch anderen Ausführungsform nutzt der Mediadatenstrom-Prozessor 206 Metadaten, welche Schaltabtastsätze definieren, um eine Schaltabtastung zu lokalisieren, welche den gleichen Decodierwert wie die Abtastung hat, von der angenommen wird, dass auf diese umgeschaltet wird, jedoch nicht von den Abtastungen abhängt, von der diese resultierende Ab tastung abhängen würde (beispielsweise, um das Umschalten auf einen Datenstrom mit einer verschiedenen Bitrate bei einem P-Rahmen oder einem B-Rahmen zu erlauben).
  • Wenn der Mediadatenstrom gebildet ist, wird dieser zum Mediadecoder 210 entweder unmittelbar (beispielsweise für lokale Wiedergabe) oder über ein Netzwerk 208 (beispielsweise für Stromdaten) zur Decodierung geliefert. Der Zusammensetzer 212 empfängt das Ausgangssignal des Mediadecoders 210 und setzt eine Szene zusammen, die durch einen Bildaufbereiter 214 auf einer Benutzeranzeigeeinrichtung aufbereitet wird.
  • Die folgende Beschreibung von 3 soll dazu dienen, eine Übersicht über eine Computer-Hardware und andere Betriebskomponenten zu liefern, die geeignet sind, die Erfindung auszuführen, jedoch nicht beabsichtigt ist, das Anwendungsumfeld zu beschränken. 3 zeigt eine Ausführungsform eines Computersystems, welches für die Verwendung als Metadatengenerator 106 und/oder einen Dateiersteller 108 von 1 geeignet ist, oder für ein Metadatenextrahierer 204 und/oder einen Mediadatenstrom-Prozessor 206 von 2.
  • Das Computersystem 340 besitzt einen Prozessor 350, einen Speicher 355 und eine Eingabe-/Ausgabemöglichkeit 360, die mit einem Systembus 365 gekoppelt sind. Der Speicher 255 ist ausgebildet, Instruktionen zu speichern, welche, wenn diese durch den Prozessor 350 ausgeführt werden, die Verfahren, die hier beschrieben werden, durchführen. Die Eingabe/Ausgabe 360 umfasst außerdem verschiedene Arten von computer-lesbaren Medien, einschließlich irgendeine Art von Speichereinrichtung, auf die durch den Prozessor 350 zugegriffen werden kann. Der Fachmann wird unmittelbar erkennen, dass der Ausdruck "computerlesbares Medium/Media" außerdem eine Trägerwelle aufweist, welche ein Datensignal codiert. Man wird außerdem schätzen, dass das System 340 durch eine Betriebssystem-Software, welche im Speicher 355 ausgeführt wird, gesteuert wird. Die Eingabe/Ausgabe und die verwandten Media 360 speichern computer-ausführbare Instruktionen für das Betriebssystem und Verfahren der vorliegenden Erfindung. Der Metadatengenerator 106, der Dateiersteller 108, der Metadatenextrahierer 204 und der Mediadatenstrom-Prozessor 206, welche in 1 und 2 gezeigt sind, können eine getrennte Komponente sein, welche mit dem Prozessor 350 gekoppelt sind, oder sie können in computer-ausführbaren Instruktionen eingebettet sein, welche durch den Prozessor 350 ausgeführt werden. Bei einer Ausführungsform kann das Computersystem 340 Teil sein oder gekoppelt sein mit einem ISP (Internet-Service-Provider) über eine Eingabe/Ausgabe 360, um Mediadaten über das Internet zu übertragen oder zu empfangen. Man erkennt schnell, dass die vorliegende Erfindung nicht auf den Internetzugriff oder auf Internet-Web-Sites beschränkt ist. Direkt gekoppelte und private Netzwerke werden ebenfalls ins Auge gefasst.
  • Man wird schätzen, dass das Computersysteme 340 ein Beispiel von vielen möglichen Computersystemen ist, die unterschiedliche Architekturen haben. Ein übliches Computersystem wird üblicherweise zumindest einen Prozessor, einen Speicher und einen Bus aufweisen, der den Speicher mit dem Prozessor koppelt. Der Fachmann wird schnell schätzen, dass die Erfindung mit anderen Computersystemen-Konfigurationen praktiziert werden kann einschließlich Multiprozessorsystemen, Minicomputern, Hauptrechnern und dgl. Die Erfindung kann außerdem in verteilten Berechnungsumgebungen praktiziert werden, wo Aufgaben durch Fernverarbeitungseinrichtungen durchgeführt werden, welche über ein Kommunikationsnetzwerk miteinander verknüpft sind.
  • Subabtast-Zugreifbarkeit
  • 4 und 5 zeigen Prozesse zum Speichern und zum Wiedergewinnen von Subabtast-Metadaten, welche durch das Codiersystem 100 bzw. das Decodiersystem 200 durchgeführt werden. Die Prozesse können durch Verarbeitungslogik durchgeführt werden, welche Hardware (beispielsweise Schaltungsanordnungen, dafür bestimmte Logik, usw.), Software (beispielsweise Arbeitsgang auf einem Allzweck-Computersystem oder einer eigens dafür bestimmten Maschine) oder eine Kombination von beiden aufweisen kann. Für durch Software ausgeführte Prozesse ermöglicht die Beschreibung eines Flussdiagramms es dem Fachmann, diese Programme zu entwickeln, welche Instruktionen enthalten, um die Prozesse auf geeignet konfigurierten Computern zu führen (dem Prozessor des Computers, der die Instruktionen von computer-lesbaren Medien durchführt, einschließlich eines Speichers). Die computerlesbaren Instruktionen können in einer Computerprogrammiersprache geschrieben sein oder sie können in eine Firmware-Logik eingebettet sein. Wenn diese in einer Programmiersprache geschrieben sind, die mit einem anerkannten Standard übereinstimmt, können diese Instruktionen auf einer Vielzahl von Hardware-Plattformen ausgeführt werden, die eine Schnittstelle mit einer Vielzahl von Betriebssystemen bilden. Zusätzlich sind die Ausführungsformen der vorliegenden Erfindung nicht unter Bezugnahme auf irgendeine bestimmte Programmiersprache beschrieben. Man wird es schätzen, dass eine Vielzahl von Programmiersprachen dazu verwendet werden kann, um die Verfahren, die hier beschrieben sind, auszuführen. Außerdem ist es auf dem Stand der Technik allgemein, von Software in einer Form oder einer anderen zu sprechen (beispielsweise Programm, Prozedur, Prozess, Anwendung, Modul, Logik ...), um eine Aktion zu bewirken oder um ein Ergebnis zu bewirken. Diese Ausdrücke sind lediglich eine Kurzform, um auszuführen, dass die Führung von Software durch einen Computer veranlasst, dass der Prozessor des Computers eine Aktion durchführt oder ein Ergebnis erzeugt. Man wird schätzen, dass mehrere oder weniger Operationen in den Prozessen, welche in 4 und 5 gezeigt sind, eingebettet sein können, ohne den Rahmen der Erfindung zu verlassen, und dass kein bestimmter Befehl durch die Anordnung von Blöcken darin enthalten ist, die hier gezeigt und beschrieben sind.
  • 4 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 400 zum Bilden von Subabtast-Metadaten im Codiersystem 100. Zunächst beginnt das Verfahren mit der Verarbeitungslogik zum Empfangen einer Datei mit codierten Mediadaten (Verarbeitungsblock 402). Danach extrahiert die Verarbeitungslogik Information, welche Grenzen von Subabtastungen in den Mediadaten identifiziert (Verarbeitungsblock 404). In Abhängigkeit von dem zu verwendenden Format wird die kleinste Einheit des Datenstroms, zu dem ein Zeitattribut hinzugefügt werden kann, als Abtastung (wie durch das ISO-Mediadateiformat oder QuickTime definiert), als Zugriffseinheit (wie durch MPEG4 definiert) oder als Bild (wie durch JVT definiert) usw. bezeichnet werden. Eine Subabtastung bezeichnet einen benachbarten Bereich eines Datenstroms unterhalb der Ebene einer Abtastung. Die Definition einer Subabtastung hängt vom Codierformat ab, jedoch im Allgemeinen ist eine Subabtastung eine bedeutungsvolle Subeinheit einer Abtastung, welche als einzelne Entität oder als eine Kombination von Subeinheiten decodiert werden kann, um eine Partialrekonstruktion einer Abtastung zu erlangen. Eine Subabtastung kann auch als ein Zugriffseinheitsfragment bezeichnet werden. Häufig zeigen Subabtastungen Unterteilungen eines Abtastdatenstroms, so dass jede Subabtastung weniger oder keine Abhängigkeiten von anderen Subabtastungen in der gleichen Abtastung hat. Beispielsweise ist in JVT eine Subabtastung ein NAL-Paket. Ähnlich würde für MPEG-4-Video eine Subabtastung ein Videopaket sein.
  • Bei einer Ausführungsform arbeitet das Codiersystem 100 in der Netzwerkabstraktionsebene, welche durch JVT wie oben beschrieben definiert ist. Der JVT-Mediadatenstrom besteht aus einer Reihe von NAL-Paketen, wobei jedes NAL-Paket (auch als NAL-Einheit bezeichnet) einen Datenkopfteil und einen Nutzlastteil enthält. Eine Art eines NAL-Pakets wird dazu verwendet, codierte VCL-Daten für jeden Slice oder eine einzelne Datenpartition eines Slice zu umfassen. Außerdem kann ein NAL-Paket ein Informationspaket sein, welches ergänzende Verbesserungsinformationsnachrichten (SEI) enthält. SEI-Nachrichten zeigen optionale Daten, welche beim Decodieren entsprechender Slices verwendet werden. Bei JVT könnte eine Subabtastung ein komplettes NAL-Paket mit sowohl einem Datenkopf als auch einer Nutzlast sein.
  • Im Verarbeitungsblock 406 bildet die Verarbeitungslogik Subabtast-Metadaten, welche Subabtastungen in den Mediadaten definieren. Bei einer Ausführungsform sind die Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen (beispielsweise einem Satz von Boxen) gegliedert. Der Satz vorher festgelegter Datenstrukturen kann eine Datenstruktur enthalten, welche Information über die Größe jeder Abtastung enthält, eine Datenstruktur, welche Information über die Gesamtzahl von Subabtastungen in jeder Abtastung enthält, eine Datenstruktur, welche Information enthält, welche jede Subabtastung beschreibt (beispielsweise, was als Subabtastung definiert ist), oder irgendeine andere Datenstruktur, welche Daten enthält, die zu den Subabtastungen gehören.
  • Anschließend bestimmt bei einer Ausführungsform die Verarbeitungslogik, ob irgendeine Datenstruktur eine Wiederholungssequenz von Daten enthält (Entscheidungsbox 408). Wenn diese Entscheidung positiv ist, setzt die Verarbeitungslogik jede Wiederholungssequenz von Daten in eine Referenz zu einem Sequenzvorkommnis und der Häufigkeit, mit der die Wiederholungssequenz auftritt, um (Verarbeitungsblock 410).
  • Danach nimmt im Verarbeitungsblock 412 die Verarbeitungslogik die Subabtast-Metadaten in eine Datei in Verbindung mit Mediadaten unter Verwendung eines speziellen Mediadateiformats (beispielsweise des JVT-Dateiformats) auf. In Abhängigkeit vom Mediadateiformat können die Subabtast-Metadaten mit Abtast-Metadaten (beispielsweise Subabtast-Datenstrukturen können in einer Abtasttabellenbox, welche Abtastdatenstrukturen enthält, enthalten sein) oder unabhängig von den Abtast-Metadaten gespeichert werden.
  • 5 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 500, um Subabtast-Mediadaten im Decodiersystem 200 zu nutzen. Anfangs beginnt das Verfahren 500 mit einer Verarbeitungslogik, welche eine Datei empfängt, welche mit codierten Mediadaten verknüpft ist (Verarbeitungsblock 502). Die Datei kann von einer Datenbank (lokal oder extern), vom Codiersystem 100 oder von irgendeiner anderen Einrichtung in einem Netzwerk empfangen werden. Die Datei umfasst Subabtast-Metadaten, welche Subabtastungen in den Mediadaten definieren.
  • Anschließend extrahiert die Verarbeitungslogik die Subabtast-Metadaten von der Datei (Verarbeitungsblock 504). Wie oben beschrieben können die Subabtast-Metadaten in einem Satz von Datenstrukturen gespeichert werden (beispielsweise einem Satz von Boxen).
  • Außerdem verwendet im Verarbeitungsblock 506 die Verarbeitungslogik die extrahierten Metadaten, um Subabtastungen in den codierten Mediadaten zu identifizieren (die in der gleichen Datei oder in einer anderen Datei gespeichert sind) und kombiniert verschiedene Subabtastungen zu Paketen, welche zu einem Mediadecoder zu liefern sind, womit eine flexible Paketierung von Mediadaten zur Datenstrombildung ermöglicht wird (beispielsweise um Fehlerabfederung, Skalierbarkeit, usw. zu unterstützen).
  • Beispielhafte Subabtast-Metadatenstrukturen werden mit Hilfe eines erweiterten ISO-Mediadateiformats (als erweiterte MP4 bezeichnet) beschrieben. Für den versierten Fachmann soll klar sein, dass andere Mediadateiformate leicht erweitert werden können, um ähnliche Datenstrukturen zum Speichern von Subabtast-Mediadaten einzuschließen.
  • 6 zeigt das erweiterte MP4-Mediadatenstrommodell mit Subabtastungen. Präsentationsdaten (beispielsweise eine Präsentation, welche synchronisiertes Audio und Video enthält) ist durch einen Filmstreifen (Movie) 602 dargestellt. Der Filmstreifen 602 besitzt einen Satz von Tracks 604. Jeder Track 604 stellt einen Mediadatenstrom dar. Jeder Track 604 ist in Abtastungen 606 unterteilt. Jede Abtastung 606 stellt eine Einheit von Mediadaten in einem bestimmten Zeitpunkt dar. Eine Abtastung 606 ist außerdem in Subabtastungen 608 unterteilt. Beim JVT-Standard kann eine Subabtastung 608 ein NAL-Paket oder eine Einheit darstellen, beispielsweise einen einzelnen Slice eines Bildes, eine Datenpartition eines Slice mit mehreren Datenpartitionen, einen Bandparametersatz oder ein SEI-Informationspaket. Alternativ kann eine Subabtastung 606 irgendein anderes strukturiertes Element einer Abtastung zeigen, beispielsweise die codierten Daten, welche einen räumlichen oder zeitlichen Bereich in den Medien zeigen. Bei einer Ausführungsform kann irgendeine Partition der codierten Mediadaten gemäß einem strukturellen oder semantischen Kriterium als eine Subabtastung behandelt werden.
  • 7A7L zeigen beispielhafte Datenstrukturen zum Speichern von Subabtast-Metadaten.
  • Gemäß 7A ist eine Abtasttabellenbox 700, welche Abtast-Metadatenboxen enthält, die durch das ISO-Mediadateiformat definiert sind, erweitert, so dass sie Subabtast-Zugriffsboxen, beispielsweise eine Subabtast-Größenbox 702, eine Subabtast-Beschreibungsverknüpfungsbox 704, eine Subabtast-Abtastbox 706 und eine Subabtast-Beschreibungsbox 708 enthält. Bei einer Ausführungsform ist die Verwendung von Subabtast-Zugriffsboxen optional.
  • Gemäß 7B kann eine Abtastung 710 beispielsweise in Slices, beispielsweise einen Slice 712, Datenpartitionen, beispielsweise Partitionen 714 und Bereichen von Interesse (ROIs), beispielsweise einen ROI 716 unterteilbar sein. Ein jedes dieser Beispiele zeigt eine unterschiedliche Art einer Unterteilung von Abtastungen in Subabtastungen. Subabtastungen innerhalb einer einzelnen Abtastung können unterschiedliche Größen aufweisen.
  • Eine Subabtast-Größenbox 718 enthält ein Versionsfeld, welches die Version der Subabtast-Größenbox 718 spezifiziert, eine Subabtast-Größenfeld, welches die Voreinstellungs-Subabtastgröße spezifiziert, ein Subabtast-Zählfeld, um die Anzahl von Subabtastungen im Track bereitzustellen, und ein Eintragsgrößenfeld, welches die Größe jeder Subabtastung spezifiziert. Wenn das Subabtast-Größenfeld auf 4 gesetzt ist, haben die Subabtastungen unterschiedliche Größen, welche in der Subabtast-Größentabelle 720 gespeichert sind. Wenn das Subabtast-Größenfeld nicht auf 0 gesetzt ist, gibt dies die konstante Subabtastgröße an, die zeigt, dass die Subabtast-Größentabelle 720 leer ist. Die Tabelle 720 kann eine feste Größe von 32 Bit oder ein variables Längenfeld haben, um die Subabtastgrößen zu zeigen. Wenn das Feld eine variable Länge hat, enthält die Subabtast-Tabelle ein Feld, welches die Länge in Bytes des Subabtast-Größenfelds zeigt.
  • Gemäß 7C besitzt eine Subabtast-Abtastbox 722 ein Versionsfeld, welches die Version der Subabtast-Abtastbox 722 spezifiziert, ein Eintragszählfeld, welches die Anzahl von Einträgen in der Tabelle 723 zeigt. Jeder Eintrag in der Subabtast-Abtasttabelle enthält ein erstes Abtastfeld, welches den Index der ersten Abtastung im Lauf von Abtastungen bereitstellt, welche sich die gleiche Anzahl von Subabtastungen pro Abtastung teilen, und Subabtastungen pro Abtastfeld, welches die Anzahl von Subabtastungen in jeder Abtastung innerhalb eines Laufs von Abtastungen bereitstellt.
  • Die Tabelle 723 kann dazu verwendet werden, um die Gesamtzahl von Subabtastungen im Track zu finden, indem berechnet wird, wie viele Abtastungen in einem Lauf sind, diese Anzahl mit der geeigneten Subabtast-Pro-Abtastung multipliziert wird und die Ergebnisse aller Läufe zusammen addiert werden.
  • Gemäß 7D besitzt eine Subabtast-Beschreibungsverknüpfungsbox 724 ein Versionsfeld, welches die Version der Subabtast-Beschreibungs-Verknüpfungsbox 724 angibt, einen Beschreibungsart-Identifizierer, der die Art von Subabtastungen, die zu beschreiben sind, zeigt (beispielsweise NAL-Pakete, Bereiche von Interesse usw.), und ein Eintragszählfeld, welches die Anzahl von Einträgen in der Tabelle 726 liefert. Jeder Eintrag in der Tabelle 726 besitzt eine Subabtast-Beschreibungsart-Identifizierfeld, welches eine Subabtast-Beschreibungs-ID zeigt, und ein erstes Subabtastfeld, welches den Index der ersten Subabtastung in einem Arbeitsgang von Subabtastungen angibt, welche sich die gleiche Subabtast-Beschreibungs-ID anteilig teilen.
  • Der Subabtast-Beschreibungsart-Identifizierer steuert die Verwendung des Subabtast-Beschreibungs-ID-Felds. Das heißt, dass in Abhängigkeit von dem Typus, der im Beschreibungsart-Identifizierer spezifiziert ist, das Subabtast-Beschreibungs-ID-Feld selbst eine Beschreibungs-ID spezifizieren kann, welche unmittelbar die Subabtast-Beschreibungen innerhalb der ID selbst codiert, oder das Subabtast-Beschreibungs-ID-Feld als Index zu einer unterschiedlichen Tabelle dienen kann (d.h., eine Subabtast-Beschreibungstabelle, welche anschließend beschrieben wird). Wenn beispielsweise der Beschreibungsart-Identifizierer eine JVT-Beschreibung zeigt, kann das Subabtast-Beschreibungs-ID-Feld einen Code aufweisen, der die Merkmale von JVT-Subabtastungen spezifiziert. In diesem Fall kann das Subabtast-Beschreibungs-ID-Feld ein 32-Bit-Feld sein, wobei die niedrigwertigsten 8 Bits wie eine Bitmaske verwendet werden, um das Vorhandensein der vorher festgelegten Datenpartition innerhalb einer Subabtastung zu zeigen, und die höherwertigeren 24 Bits, um die NAL-Paketart zu zeigen, oder für zukünftige Erweiterungen verwendet werden.
  • Gemäß 7E besitzt eine Subabtast-Beschreibungsbox 728 ein Versionsfeld, welches die Version der Subabtast-Beschreibungsbox 728 angibt, ein Eintragszählfeld, welches die Anzahl von Einträgen in der Tabelle 730 angibt, ein Beschreibungsart-Identifizierfeld, welches eine Beschreibungsart eines Subabtast-Beschreibungsfelds bereitstellt, welches Information über die Charakteristik von den Subabtastdaten liefert, und eine Tabelle, welche einen oder mehrere Subabtast-Beschreibungseinträge 730 enthält. Die Subabtast-Beschreibungsart identifiziert die Art, auf die sich die Beschreibungsinformation bezieht, und entspricht dem gleichen Feld in der Subabtast-Beschreibungs-Verknüpfungstabelle 724. Jeder Eintrag in der Tabelle 730 enthält einen Subabtast-Beschreibungseintrag mit Information über die Charakteristik der Subabtastungen in Verbindung mit diesem Beschreibungseintrag. Die Information und das Format des Beschreibungseintrags hängen von dem Beschreibungsartenfeld ab. Wenn beispielsweise die Beschreibungsart der Parametersatz ist, wird jeder Beschreibungseintrag den Wert des Parametersatzes enthalten.
  • Die beschreibende Information kann sich auf die Parametersatzinformation, die Information, welche zu ROI gehört, oder auf eine andere Information beziehen, die notwendig ist, die Subabtastungen zu charakterisieren. Für Parametersätze zeigt die Subabtast-Beschreibungs-Verknüpfungstabelle 724 den Parametersatz in Verbindung mit jeder Subabtastung an. In diesem Fall entspricht die Subabtast-Beschreibungs-ID dem Parametersatz-Identifizierer. Ähnlich kann eine Subabtastung unterschiedliche Bereiche von Interesse wie folgt darstellen. Definieren einer Subabtastung als einen oder mehrere codierter Makroblöcke und dann Verwendung der Subabtast-Beschreibungs-Verknüpfungstabelle, um die Unterteilung der codierten Makroblöcke eines Videorahmens oder eines Bilds in unterschiedlichen Bereichen darzustellen. Beispielsweise können die codierten Makroblöcke in einem Rahmen in Vordergrund- und Hintergrund-Makroblöcke mit zwei Subabtast-Beschreibungs-ID unterteilt werden (beispielsweise Subabtast-Beschreibungs-ID von 1 und 2), welche die Zuordnung mit dem Vordergrund- bzw. Hintergrundbereich zeigen.
  • 7F zeigt unterschiedliche Arten von Subabtastungen. Eine Subabtastung kann einen Slice 732 ohne Partition, einen Slice 734 mit mehreren Datenpartitionen, einen Datenkopf 736 innerhalb eines Slice, eine Datenpartition 738 in der Mitte eines Slice, die letzte Datenpartition 140 eines Slice, ein SEI-Informationspaket 742 usw. darstellen. Eine jede dieser Subabtastarten kann mit einem speziellen Wert einer 8-Bit-Maske 744 verknüpft sein, welche in 7G gezeigt ist. Die 8-Bit-Maske kann die 8 niedrigstwertigen Bits des 32-Bit-Subabtast-Beschreibungs-ID-Felds wie oben erläutert bilden. 7H zeigt die Subabtast-Beschreibungs-Verknüpfungsbox 724, welche den Beschreibungsart-Identifizierer gleich "jvtd" hat. Die Tabelle 726 enthält das 32-Bit-Subabtast-Beschreibungs-ID-Feld, in welchem die Werte, welche in 7G gezeigt sind, gespeichert sind.
  • 7H7K zeigen die Kompression von Daten in einer Subabtast-Beschreibungs-Verknüpfungstabelle.
  • Gemäß 7I enthält eine nichtkomprimierte Tabelle 726 eine Sequenz 750 von Subabtast-Beschreibungs-IDs, welche eine Sequenz 748 wiederholt. In einer Kompressionstabelle 746 wurde die Wiederholungssequenz 750 in eine Referenz zur Sequenz 748 und der Häufigkeit, mit der diese Sequenz auftritt, komprimiert.
  • Bei einer in 7J gezeigten Ausführungsform kann ein Sequenzvorkommnis im Subabtast-Beschreibungs-ID-Feld unter Verwendung von dessen höchstwertigen Bit als Sequenzfleck-Arbeitsgang 754 codiert werden, dessen nächste 23 Bits als Vorkommnisindex 756, und dessen niedrigwertigste Bits als Vorkommnislänge 758. Wenn das Flag 754 auf 1 gesetzt wird, zeigt dies, dass dieser Eintrag ein Vorkommnis einer Wiederholungssequenz ist. Ansonsten ist dieser Eintrag eine Subabtast-Beschreibungs-ID. Der Vorkommnisindex 756 ist der Index in der Subabtast-Beschreibungs-Verknüpfungsbox 724 des ersten Vorkommnisses der Sequenz, und die Länge 758 zeigt die Länge des Vorkommnisses der Wiederholungssequenz.
  • Bei einer anderen Ausführungsform, welche in 7K gezeigt ist, wird eine Wiederholungssequenz-Vorkommnistabelle 760 dazu verwendet, das Vorkommnis der Wiederholungssequenz zu zeigen. Das höchstwertige Bit des Subabtast-Beschreibungs-ID-Felds wird als Sequenzarbeitsgangflag 762 verwendet. welches zeigt, ob der Eintrag eine Subabtast-Beschreibungs-ID oder ein Sequenzindex 764 des Eintrags in der Wiederholungssequenz-Vorkommnistabelle 760 ist, welcher Teil der Subabtast-Beschreibungs-Verknüpfungsbox 724 ist. Die Wiederholungssequenz-Vorkommnistabelle 760 umfasst ein Vorkommnisindexfeld, um den Index in der Subabtast-Beschreibungs-Verknüpfungsbox 724 des ersten Postens in der Wiederholungssequenz anzugeben, und ein Längenfeld, um die Länge der Wiederholungssequenz zu spezifizieren.
  • Parametersätze
  • Bei bestimmten Mediaformaten, beispielsweise JVT, wird die "Datenkopf"-Information, welche die kritischen Steuerungswerte enthält, die benötigt werden, um die Mediadaten genau zu decodierten, vom Rest der codierten Daten getrennt/entkoppelt und in Parametersätzen gespeichert. Dann können bevorzugt zum Mischen dieser Steuerungsdaten im Datenstrom gemeinsam mit den codierten Daten die codierten Daten auf notwendige Parametersätze unter Verwendung eines Mechanismus, beispielsweise eines einzigartigen Identifizierers bezogen werden. Dieser Versuch entkoppelt die Übertragung von Codierparametern höherer Ebenen von codierten Daten. Im gleichen Zeitpunkt reduziert er außerdem die Redundanzen durch anteiliges Aufteilen gemeinsamer Sätze von Steuerungswerten wie Parametersätzen.
  • Um effiziente Übertragung von gespeicherten Mediadatenströmen zu unterstützen, welche Parametersätze nutzen, muss ein Sender oder Wiedergabegerät in der Lage sein, die codierten Daten mit einem entsprechenden Parameter schnell zu verknüpfen, um zu erkennen, wann und wo der Parametersatz zu übertragen oder auf diesen zuzugreifen ist. Eine Ausführungsform der vorliegenden Erfindung liefert diese Fähigkeit, wobei Daten, welche die Verknüpfungen zwischen Parametersätzen und entsprechenden Bereichen der Mediadaten als Parametersatz-Mediadaten in einem Mediadateiformat spezifizieren, gespeichert werden.
  • 8 und 9 zeigen Prozesse, um Parametersatz-Metadaten zu speichern und wiederaufzufinden, welche durch das Codiersystem 100 bzw. das Decodiersystem 200 entsprechend durchgeführt werden. Die Verfahren können durch Verarbeitungslogik durchgeführt werden, welche Hardware (beispielsweise Schaltungen, dafür bestimmte Logik, usw.), Software (beispielsweise den Arbeitslauf auf einem Allzweck-Computersystem oder einer dafür bestimmten Maschine), oder eine Kombination von beiden aufweist.
  • 8 zeigt ein Flussdiagramm einer Ausführungsform eines Verfahrens 800, um Parametersatz-Metadaten im Codiersystem 100 zu bilden. Anfangs beginnt das Verfahren 800 mit einer Logikverarbeitung, welche eine Datei mit codierten Mediadaten empfängt (Verarbeitungsblock 802). Die Datei enthält Sätze codierter Parameter, die spezifizieren, wie Bereiche der Mediadaten zu decodieren sind. Anschließend prüft die Verarbeitungslogik die Beziehungen zwischen den Sätzen von codierbaren Parametern, die als Parametersätze bezeichnet werden, und den entsprechenden Bereichen der Mediadaten (Verarbeitungsblock 804) und bildet Parametersatz-Metadaten, welche die Parametersätze und ihre Verknüpfungen mit den Mediadatenbereichen definieren (Verarbeitungsblock 806). Die Mediadatenbereiche können durch Abtastungen oder Subabtastungen dargestellt sein.
  • Bei einer Ausführungsform sind die Parametersatz-Metadaten in einen Satz vorher festgelegter Datenstrukturen (beispielsweise einen Satz von Boxen) gegliedert. Der Satz vorher festgelegter Datenstrukturen kann eine Datenstruktur aufweisen, welche beschreibende Information über die Parametersätze enthält, und eine Datenstruktur, welche Information enthält, welche die Verknüpfungen zwischen Abtastungen und entsprechenden Parametersätzen enthält. Bei einer Ausführungsform enthält der Satz definierter Datenstrukturen außerdem eine Datenstruktur, welche Information enthält, welche Verknüpfungen zwischen Subabtastungen und entsprechenden Parametersätzen definiert. Die Datenstrukturen, welche Subabtastung-Parametersatz-Verknüpfungsinformation enthalten, können die Datenstrukturen aufheben oder nicht, welche Abtast- zu Parametersatz-Verknüpfungsinformation enthalten.
  • Anschließend bestimmt bei einer Ausführungsform die Verarbeitungslogik, ob eine Parametersatz-Datenstruktur eine Wiederholungssequenz von Daten enthält (Entscheidungsbox 808). Wenn diese Bestimmung positiv ist, setzt die Verarbeitungslogik jede Wiederholungsdatensequenz in eine Referenz zu einem Sequenzvorkommnis und die Häufigkeit um, mit der die Sequenz auftritt (Verarbeitungsblock 810).
  • Danach nimmt im Verarbeitungsblock 812 die Verarbeitungslogik die Parametersatz-Metadaten in einer Datei in Verbindung mit den Mediadaten unter Verwendung eines spezifischen Mediadateiformats auf (beispielsweise das JVT-Dateiformat). In Abhängigkeit vom Mediadateiformat können die Parametersatz-Metadaten mit Track-Metadaten und/oder Abtastmetadaten (beispielsweise die Datenstruktur, welche die beschreibende Information über Parametersätze enthält, kann in einer Track-Box enthalten sein und die Datenstruktur (Strukturen), welche Verknüpfungsinformation enthalten, können in einer Abtasttabellenbox enthalten sein) oder unabhängig von den Track-Metadaten und/oder Abtast-Metadaten gespeichert werden.
  • 9 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 900, um Parametersatz-Metadaten im Decodiersystem 200 zu verwenden. Anfangs beginnt das Verfahren 900 mit der Verarbeitungslogik, welche eine Datei in Verbindung mit codierten Mediadaten empfängt (Verarbeitungsblock 902). Die Datei kann von einer Datenbank (lokal oder extern), vom Codiersystem 100 oder von einer anderen Einrichtung in einem Netzwerk empfangen werden. Die Datei umfasst Parametersatz-Metadaten, die Parametersätze für die Mediadaten und Verknüpfungen zwischen den Parametersätzen und entsprechenden Berei chen der Mediadaten definieren (beispielsweise entsprechende Abtastungen oder Subabtastungen).
  • Danach extrahiert die Verarbeitungslogik die Parametersatz-Metadaten von der Datei (Verarbeitungsblock 904). Wie oben erläutert können die Parametersatz-Metadaten in einem Satz von Datenstrukturen gespeichert werden (beispielsweise einem Satz von Boxen).
  • Weiter verwendet im Verarbeitungsblock 906 die Verarbeitungslogik die extrahierten Metadaten, um zu bestimmen, welcher Parametersatz mit einem spezifischen Metadatenbereich verknüpft ist (beispielsweise einer Abtastung oder Subabtastung). Diese Information kann dazu verwendet werden, die Übertragungszeit von Mediadatenbereichen und entsprechender Parametersätze zu steuern. Das heißt, dass ein Parametersatz, der dazu verwendet werden soll, eine spezielle Abtastung oder Subabtastung zu decodieren, vor einem Paket gesendet werden muss, welches die Abtastung oder Subabtastung enthält, oder mit dem Paket, welches die Abtastung oder Subabtastung enthält.
  • Somit ermöglicht die Verwendung von Parametersatz-Metadaten eine unabhängige Übertragung von Parametersätzen auf einem verlässlicheren Kanal, eine Reduzierung der Möglichkeit auf Fehler oder des Datenverlusts, der bewirkt, dass Teile des Mediadatenstroms verloren werden.
  • Beispielhafte Parametersätze-Metadatenstrukturen werden nun mit Bezugnahme auf ein erweitertes ISO-Mediadateiformat beschrieben (bezeichnet als erweiterte ISO). Es sei angemerkt, dass jedoch auch andere Mediadateiformate erweitert werden können, um verschiedene Datenstrukturen einzubeziehen, um Parametersatz-Metadaten zu speichern.
  • 10A10E zeigen beispielhafte Datenstrukturen zum Speichern von Parametersatz-Metadaten.
  • Gemäß 10A wird eine Track-Box 1002, welche Track-Metadateboxen enthält, die durch das ISO-Dateiformat definiert sind, erweitert, um eine Parametersatz-Beschreibungsbox 1004 zu enthalten. Zusätzlich wird eine Abtasttabellenbox 1006, welche Abtast-Metadatenboxen enthält, welche durch das ISO-Dateiformat definiert sind, erweitert, um eine Abtast-Parametersatzbox 1008 zu enthalten. Bei einer Ausführungsform weist die Abtasttabellenbox 1006 eine Subabtast-Parametersatzbox auf, welche die Abtast-Parametersatzbox 1008 ausschalten kann, wie ausführlicher unten beschrieben wird.
  • Bei einer Ausführungsform sind die Parametersatz-Metadatenboxen 1004 und 1008 ein Muss. Bei einer anderen Ausführungsform ist lediglich die Parametersatz-Beschreibungsbox 1004 ein Muss. Bei einer noch anderen Ausführungsform sind alle Parametersatz-Matedatenboxen optional.
  • Gemäß 10B enthält eine Parametersatz-Beschreibungsbox 1010 ein Versionsfeld, welches die Version der Parametersatz-Beschreibungsbox 1010 spezifiziert, ein Parametersatz-Beschreibungszählfeld, um die Anzahl von Einträgen einer Tabelle 1012 bereitzustellen, und ein Parametersatz-Eintragsfeld, welches Einträge für die Parametersätze selbst enthält.
  • Auf Parametersätze kann von der Abtastebene oder der Subabtastebene bezuggenommen werden. Bezugnehmend auf 10C liefert eine Abtast-Parametersatzbox 1014 Bezugnahmen auf Parametersätze von der Abtastebene. Die Abtastparametersatzbox 1014 umfasst ein Versionsfeld, welches die Version der Abtast-Parametersatzbox 1014 spezifiziert, eine Voreinstellungsparametersatz-ID-Feld, welches den Voreinstellungsparametersatz-ID spezifiziert, ein Eintragszählfeld, welches die Anzahl von Einträgen in der Tabelle 1016 liefert. Jeder Eintrag in der Tabelle 1016 enthält ein erstes Abtastfeld, welches den Index einer ersten Abtastung in einem Arbeitsgang von Abtastungen bereitstellt, die sich den gleichen Parametersatz anteilig teilen, und einen Parametersatzindex, der den Index zur Parametersatz-Beschreibungsbox 1010 spezifiziert. Wenn die Voreinstellungsparametersatz-ID gleich 0 ist, haben die Abtastungen verschiedene Parametersätze, welche in der Tabelle 1016 gespeichert werden. Ansonsten wird ein konstanter Parametersatz verwendet und es folgt keine Matrix.
  • Bei einer Ausführungsform werden Daten in der Tabelle 1016 komprimiert, indem jede Wiederholungssequenz in eine Referenz in bezug auf die Anfangssequenz umgesetzt wird, und in die Häufigkeit, mit der diese Sequenz auftritt, wie ausführlicher oben in Verbindung mit der Subabtast-Beschreibungsverknüpfungstabelle erläutert wurde.
  • Auf Parametersätze kann von der Subtastebene durch Definieren von Verknüpfungen zwischen Parametersätzen und Subabtasten bezug genommen werden. Bei einer Ausführungsform sind die Verknüpfungen zwischen Parametersätzen und Subabtastungen unter Verwendung einer Subabtast-Beschreibungs-Verknüpfungsbox, die oben beschrieben wurde, definiert. 10D zeigt eine Subabtast-Beschreibungs-Verknüpfungsbox 1018 mit dem Beschreibungsart-Identifizierer, der sich auf Parametersätze bezieht (beispielsweise ist der Beschreibungsart-Identifizierer gleich "pars") Auf der Basis dieses Beschreibungsart-Identifizierers zeigt die Subabtast-Beschreibungs-ID in der Tabelle 1020 den Index in der Parametersatz-Beschreibungsbox 1010.
  • Bei einer Ausführungsform, wenn die Subabtast-Beschreibungs-Verknüpfungsbox 1018 mit dem Beschreibungsart-Identifizierer, der sich auf Parametersätze bezieht, vorhanden ist, schaltet sie die Abtast-Parametersatzbox 104 aus.
  • Ein Parametersatz kann sich zwischen der Zeit, wo der Parametersatz gebildet wird, und der Zeit, wo der Parametersatz verwendet wird, ändern, um einen entsprechenden Bereich von Mediadaten zu decodieren. Wenn eine derartige Änderung auftritt, empfängt das Decodiersystem 200 ein Parameter-Update-Paket, welches eine Änderung zum Parametersatz spezifiziert. Die Parametersatz-Metadaten enthalten Daten, welche den Zustand des Parametersatzes sowohl vor dem Update als nach dein Update identifizieren.
  • Gemäß 10E weist die Parametersatz-Beschreibungsbox 1010 einen Eintrag für den Anfangsparametersatz 1022 auf, der im Zeitpunkt t0 erzeugt wird, und einen Eintrag für einen aktualisierten Parametersatz 1024, der als Antwort auf ein Parameter-Update-Paket 1026 gebildet wird, welches im Zeitpunkt t1 empfangen wird. Die Abtastbeschreibungs-Verknüpfungsbox 1018 verknüpft die beiden Parametersätze mit entsprechenden Subabtastungen.
  • Abtastgruppen
  • Obwohl die Abtastungen innerhalb eines Tracks unterschiedliche logische Gruppierungen (Partitionen) von Abtastungen in Sequenzen (möglich nicht aufeinanderfolgend) haben können, die Hochebenenstrukturen in den Mediadaten zeigen, liefern existierende Dateiformate keine bequemen Mechanismen, um diese Gruppierungen zu zeigen und zu speichern. Beispielsweise organisieren fortgeschrittene Codierformate, beispielsweise JVT, Abtastungen innerhalb eines einzelnen Tracks zu Gruppen auf der Basis ihrer Zwischenabhängigkeiten. Diese Gruppen (hier als Sequenzen oder Abtastgruppen bezeichnet) können dazu verwendet werden, Ketten von verfügbaren Abtastungen zu identifizieren, wenn durch Netzwerkbedingungen erforderlich, um somit die zeitliche Skalierbarkeit zu unterstützen. Das Speichern von Metadaten, welche Abtastgruppen in einem Dateiformat definieren, ermöglicht es dem Sender von Media, einfach und effizient die obigen Merkmale auszuführen.
  • Ein Beispiel einer Abtastgruppe ist ein Abtastsatz, deren Zwischenrahmenabhängigkeiten es diesem erlaubt, unabhängig von anderen Abtastungen decodiert zu werden. Bei JVT wird eine Abtastgruppe als eine fortgeschrittene Gruppe von Bildern bezeichnet (verbesserte GOP). Bei einer fortgeschrittenen GOP können Abtastungen in Subsequenzen unterteilt werden. Jede Subsequenz weist einen Satz von Abtastungen ab, die von einander abhängen und können als eine Einheit angeordnet (verfügbar) sein. Zusätzlich können Abtastungen einer fortgeschrittenen GOP hierarchisch in Ebenen strukturiert werden, so dass Abtastungen in einer höheren Ebene lediglich von Abtastungen in einer niedrigeren Ebene vorhergesagt werden, wodurch erlaubt wird, dass die Abtastungen der höchsten Ebene verfügbar sein können, ohne die Fähigkeit zu beeinträchtigen, andere Abtastungen zu decodieren. Die niedrigste Ebene, welche Abtastungen aufweist, welche nicht von Abtastungen in anderen Ebenen abhängt, wird als Basisebene bezeichnet. Jede andere Ebene, welche nicht die Basisebene ist, wird als eine fortgeschrittene Ebene bezeichnet.
  • 11 zeigt ein Beispiel einer verbesserten GOP, bei welcher die Abtastungen in zwei Ebenen unterteilt sind, einer Basisebene 1102 und einer verbesserten Ebene 1104, sowie zwei Subsequenzen 1106 und 1108. Jede der beiden Subsequenzen 1106 und 1108 kann unabhängig voneinander fallengelassen werden.
  • 12 und 13 zeigen Verarbeitungen, um Abtastgruppen-Metadaten zu speichern und wiederaufzufinden, welche durch das Codiersystem 100 bzw. das Decodiersystem 200 durchgeführt werden. Die Verarbeitungen können durch Verarbeitungslogik durchgeführt werden, die Hardware (beispielsweise eine Verschaltung, dafür speziell bestimmte Logik, usw.), Software (beispielsweise als Arbeitsgang in bezug auf ein Allgemeinzweck-Computersystem oder eine spezielle Maschine), oder eine Kombination von beiden aufweisen kann.
  • 12 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 1200, um Abtastgruppen-Metadaten im Codiersystem 100 zu bilden. Zunächst beginnt das Verfahren 1200 mit einer Verarbeitungslogik, welche eine Datei mit codierten Mediadaten empfängt (Verarbeitungsblock 1202). Abtastungen innerhalb eines Tracks der Mediadaten haben bestimmte Zwischenabhängigkeiten. Beispielsweise kann der Track I-Rahmen aufweisen, die nicht von anderen Abtastungen abhängen, P-Rahmen, welche von einer einzigen vorherigen Abtastung abhängen, und B-Rahmen, welche von zwei vorherigen Abtastungen abhängen, einschließlich einer Kombination von I-Rahmen, P-Rahmen und B-Rahmen. Auf der Basis ihrer Zwischenabhängigkeiten können die Abtastungen in einem Track zu Abtastgruppen logisch kombiniert werden (beispielsweise verbesserten GOPs, Ebenen, Subsequenzen, usw.).
  • Anschließend prüft die Verarbeitungslogik die Mediadaten, um Abtastgruppen in jedem Track (Verarbeitungsblock 1204) zu identifizieren, und bildet Abtastgruppen-Metadaten, welche die Abtastgruppen beschreiben und definiert, welche Abtastungen in jeder Abtastgruppe enthalten sind (Verarbeitungsblock 1206). Bei einer Ausführungsform sind die Abtastgruppen-Metadaten in einem Satz von vorher festgelegten Datenstrukturen organisiert (beispielsweise einem Satz von Boxen). Der Satz vorher festgelegter Datenstrukturen kann eine Datenstruktur aufweisen, welche beschreibende Information über jede Abtastgruppe enthält, und eine Datenstruktur, welche Information enthält, welche Abtastungen identifiziert, welche in jeder Abtastgruppe enthalten sind.
  • Anschließend bestimmt bei einer Ausführungsform die Verarbeitungslogik, ob eine Abtastgruppe-Datenstruktur eine Wiederholungsdatensequenz enthält (Entscheidungsbox 1208). Wenn diese Bestimmung positiv ist, setzt die Verarbeitungslogik jede Wiederholungssequenz von Daten in eine Referenz zu einem Sequenzvorkommnis und der Häufigkeit um, mit der die Sequenz auftritt (Verarbeitungsblock 1210).
  • Danach nimmt im Verarbeitungsblock 1212 die Verarbeitungslogik die Abtastgruppen-Mediadaten in eine Datei auf, welche mit Mediadaten verknüpft ist, wobei ein spezifisches Mediadateiformat verwendet wird (beispielsweise das JVT-Dateiformat). In Abhängigkeit vom Mediadateiformat können die Abtastgruppen-Metadaten mit Abtast-Metadaten (beispielsweise die Abtastgruppendatenstrukturen können in eine Abtasttabellenbox aufgenommen werden) oder unabhängig von den Abtast-Metadaten gespeichert werden.
  • 13 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 1300, um Abtastgruppen-Metadaten im Decodiersystem 200 zu nutzen. Zunächst beginnt das Verfahren 1300 mit einer Verarbeitungslogik, mit der eine Datei empfangen wird, welche mit codierten Mediadaten verknüpft ist (Verarbeitungsblock 1302). Die Datei kann von einer Datenbank (lokal oder extern), vom Codiersystem 100 oder von einer anderen Einrichtung in einem Netzwerk empfangen werden. Die Datei umfasst Abtastgruppen-Metadaten, welche Abtastgruppen in den Mediadaten definieren.
  • Anschließend extrahiert die Verarbeitungslogik die Abtastgruppen-Metadaten von der Datei (Verarbeitungsblock 1304). Wie oben erläutert können die Abtastgruppen-Metadaten in einem Satz von Datenstrukturen (beispielsweise einem Satz von Boxen) gespeichert werden.
  • Weiter verwendet im Verarbeitungsblock 1306 die Verarbeitungslogik die extrahierten Abtastgruppen-Metadaten, um Abtastketten zu identifizieren, die eingerichtet sein können, ohne die Fähigkeit zu beeinträchtigen, andere Abtastungen zu decodieren. Bei einer Ausführungsform kann diese Information dazu verwendet werden, um auf Abtastungen in einer spezifischen Abtastgruppe zuzugreifen und um zu bestimmen, welche Abtastungen als Antwort auf eine Änderung in der Netzwerkkapazität entfernt werden können. Bei anderen Ausführungsformen werden die Abtastgruppen-Metadaten dazu verwendet, Abtastungen zu filtern, so dass lediglich ein Bereich der Abtastungen in einem Track verarbeitet oder aufbereitet wird.
  • Folglich erleichtern die Abtastgruppen-Metadaten selektiven Zugriff auf Abtastungen sowie die Skalierbarkeit.
  • Beispielhafte Abtastgruppen-Metadatenstrukturen werden mit Hilfe auf ein erweitertes ISO-Mediadateiformat beschrieben (als erweiterte MP4 bezeichnet). Es sei jedoch angemerkt, dass andere Mediadateiformate erweitert werden können, um verschiedene Datenstrukturen zum Speichern von Abtastgruppen-Metadaten unterzubringen.
  • 14A14E zeigen beispielhafte Datenstrukturen, um Abtastgruppen-Metadaten zu speichern.
  • Gemäß 14A wird eine Abtasttabellenbox 1400, welche Abtastmetadatenboxen enthält, welche durch MP4 definiert sind, erweitert, um eine Abtastgruppenbox 1402 und eine Abtastgruppen-Beschreibungsbox 1404 aufzunehmen. Bei einer Ausführungsform sind die Abtastgruppen-Metadatenboxen 1402 und 1404 optional.
  • Gemäß 14B wird eine Abtastgruppenbox 1406 dazu verwendet, einen Satz von Abtastungen zu finden, welcher in einer bestimmten Abtastgruppe enthalten ist. Es wird Mehrfachbeispielen der Abtastgruppenbox 1406 erlaubt, dass diese unterschiedlichen Arten von Abtastgruppen entsprechen (beispielsweise verbesserten GOPs, Subsequenzen, Ebenen, Parametersätzen, usw.). Die Abtastgruppenbox 1406 enthält ein Versionsfeld, welches die Version der Abtastgruppenbox 1406 spezifiziert, ein Eintragszählfeld, um die Anzahl von Einträgen in einer Tabelle 1408 bereitzustellen, ein Abtastgruppen-Identifiziererfeld, um die Art der Abtastgruppe zu identifizieren, ein erstes Abtastfeld, welches den Index der ersten Abtastung in einem Arbeitsgang von Abtastungen bereitstellt, welche in der gleichen Abtastgruppe enthalten sind, und einen Abtastgruppen-Beschreibungsindex, der den Index in Bezug auf eine Abtastgruppen-Beschreibungsbox spezifiziert.
  • Gemäß 14C liefert eine Abtastgruppen-Beschreibungsbox 1410 Information über die Charakteristik einer Abtastgruppe. Die Abtastgruppen-Beschreibungsbox 1410 enthält ein Versionsfeld, welches die Version der Abtastgruppen-Beschreibungsbox 1410 spezifiziert, ein Eintragszählfeld, um die Anzahl von Einträgen in einer Tabelle 1412 zu liefern, ein Abtastgruppen-Identifiziererfeld, um die Art der Abtastgruppe zu identifizieren, und ein Abtastgruppen-Beschreibungsfeld, um Abtastgruppen-Deskriptoren bereitzustellen.
  • Mit Hilfe von 14D ist die Verwendung der Abtastgruppenbox 1416 für die Ebenen ("layr") Abtastgruppentyp gezeigt. Die Abtastungen 1 bis 11 sind in drei Ebenen auf der Basis der Zwischenabhängigkeiten von Abtastungen unterteilt. In der Ebene 0 (Basisebene) hängen Abtastungen (Abtastung 1, 6 und 11) lediglich voneinander ab, jedoch nicht von Abtastungen in anderen Ebenen. In der Ebene 1 hängen Abtastungen (Abtastungen 2, 5, 7, 10) von Abtastungen in der unteren Ebene (d.h., Ebene 0) und Abtastungen innerhalb dieser Ebene 1 ab. In der Ebene 2 hängen Abtastungen (Abtastung 3, 4, 8, 9) von Abtastungen in unteren Ebenen (Ebene 0 und 1) und Abtastungen innerhalb dieser Ebene 2 ab. Folglich kön nen die Abtastungen von Ebene 2 eingerichtet sein, ohne die Fähigkeit zu beeinträchtigen, Abtastungen von unteren Ebenen 0 und 1 zu decodieren.
  • Daten in der Abtastgruppenbox 1416 zeigen die obigen Verknüpfungen zwischen den Abtastungen und den Ebenen. Wie gezeigt ist umfassen diese Daten ein Wiederholungsebenenmuster 1414, welches komprimiert werden kann, indem jedes Wiederholungsebenenmuster in eine Referenz zu einem Anfangsebenenmuster umgesetzt wird, und der Häufigkeit, mit der dieses Muster auftritt, wie oben ausführlicher erläutert wurde.
  • Mit Hilfe von 14E wird die Verwendung einer Abtastgruppenbox 1418 für die Subsequenz-Abtastgruppenart ("sseq") gezeigt. Die Abtastungen 1 bis 11 sind in vier Subsequenzen auf der Basis von Zwischenabhängigkeiten von Abtastungen unterteilt. Jede Subsequenz mit Ausnahme der Subsequenz 0 in der Ebene 0 umfasst Abtastungen, von denen keine anderen Subsequenzen abhängen. Somit können die Abtastungen in der Subsequenz als eine Einheit wenn notwendig angeordnet (verfügbar bzw. eingerichtet) sein.
  • Daten in der Abtastgruppenbox 1418 zeigen Verknüpfungen zwischen den Abtastungen und den Subsequenzen. Diese Daten erlauben einen Direktzugriff auf Abtastungen am Anfang einer entsprechenden Subsequenz.
  • Datenstromschalten
  • Bei typischen Datenstromszenarien ist es eine der Schlüsselerfordernisse, die Bitrate der komprimierten Daten als Antwort auf sich ändernde Netzwerkzustände zu skalieren. Der einfachste Weg, um dies zu erreichen, besteht darin, mehrere Datenströme mit verschiedenen Bitraten zu codieren und durch Qualitätseinstellungen für entsprechende Netzwerkzustände. Der Server kann dann unter diesen vorcodierten Datenströmen als Antwort auf Netzwerkzustände umschalten.
  • Der JVT-Standard liefert eine neue Art von Bild, die als Umschaltbilder bezeichnet wird, die es erlaubt, dass ein Bild identisch mit einem anderen rekonstruiert wird, ohne dass erforderlich ist, dass die beiden Bilder den gleichen Rahmen zur Vorhersage verwenden. Insbesondere liefert JVT zwei Arten von Umschaltbildern: SI-Bilder, die, wie I-Rahmen unabhängig von irgendwelchen anderen Bildern codiert werden; und SP-Bilder, welche mit Bezugnahme auf andere Bilder codiert werden. Umschaltbilder können dazu verwendet werden, das Umschalten unter Datenströmen mit unterschiedlichen Bitraten auszuführen und durch eine Qualitätseinstellung als Antwort auf sich ändernde Lieferzustände, um eine Fehlerabfederung bereitzustellen und um Trickmodi wie schneller Vorlauf und Rücklauf auszuführen.
  • Um jedoch JVT-Umschaltbilder effektiv zu verwenden, wenn Datenstromschalten, Fehlerabfederung, Trickmodi und andere Merkmale ausgeführt werden, muss der Spieler wissen, welche Abtastungen in den gespeicherten Mediadaten die alternativen Darstellungen haben und wie deren Abhängigkeiten sind. Existierende Dateiformate liefern eine solche Fähigkeit nicht.
  • Eine Ausführungsform der vorliegenden Erfindung richtet sich auf die obige Beschränkung, indem Schaltabtastsätze bestimmt werden. Ein Schaltabtastsatz stellt einen Satz von Abtastungen dar, deren decodierte Werte identisch sind, die jedoch unterschiedliche Referenzabtastungen verwenden. Eine Referenzabtastung ist eine Abtastung, die verwendet wird, den Wert einer anderen Abtastung vorherzusagen. Jedes Teil eines Schaltabtastsatzes wird als Schaltabtastung bezeichnet. 15A zeigt die Verwendung eines Schaltabtastsatzes für Bitstromschalten.
  • Gemäß 15A sind der Strom 1 und der Strom 2 zwei Codierungen des gleichen Inhalts mit unterschiedlicher Qualität und Bitratenparametern. Die Abtastung S12 ist ein SP-Bild, welches in keinem Strom auftritt, das verwendet wird, Schalten vom Strom 1 zum Strom 2 durchzuführen (Schalten ist eine Zweirichtungs-Eigenschaft). Die Abtastungen S12 und S2 sind in einem Schaltabtastsatz enthalten. Sowohl S1 als auch S12 werden von der Abtastung P12 im Track 1 vorhergesagt, und S2 wird von der Abtastung P22 im Track 2 vorhergesagt. Obwohl die Abtastungen S12 und S2 unterschiedliche Referenzabtastungen verwenden, sind deren decodierte Werte identisch. Folglich kann das Schalten vom Strom 1 zum Strom 2 (bei Abtastung S1 im Strom 1 und S2 im Strom 2) über die Schaltabtastung S12 erreicht werden.
  • 16 und 17 zeigen Prozesse, um Schaltabtast-Metadaten zu speichern und wiederaufzufinden, welche durch das Codiersystem 100 bzw. das Decodiersystem 200 durchgeführt werden. Die Prozesse können durch die Verarbeitungslogik durchgeführt werden, welche Hardware (beispielsweise Schaltungsaufwand, dafür bestimmte Logik, usw.), Software (beispielsweise einen Arbeitsgang auf einem Allgemeinzweck-Computersystem oder einer dafür bestimmten Maschine) oder eine Kombination von beiden aufweisen kann.
  • 16 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 1600 zum Bilden von Schaltabtast-Metadaten im Codiersystem 100. Zunächst beginnt das Verfahren 1600 mit der Verarbeitungslogik, die eine Datei mit codierten Mediadaten empfängt (Verarbeitungsblock 1602). Die Datei weist eine oder mehrere alternative Codierungen für die Mediadaten auf (beispielsweise für eine verschiedene Bandbreite und Qualitätseinstellung für repräsentative Netzwerkbedingungen). Die alternativen Codierungen umfassen ein oder mehrere Schaltbilder. Diese Bilder können innerhalb der alternativen Mediadatenströme oder als separate Entitäten enthalten sein, welche spezielle Merkmale ausführen, beispielsweise Fehlerabfederung oder Trickmodi. Das Verfahren zum Bilden dieser Tracks und Schaltbilder ist nicht durch diese Erfindung spezifiziert, sondern es sind verschieden Möglichkeiten für den Fachmann offensichtlich. Beispielsweise die periodische (beispielsweise jede Sekunde) Anordnung von Schaltabtastungen zwischen jedem Paar von Tracks, welche alternative Codierungen enthalten.
  • Anschließend prüft die Verarbeitungslogik die Datei, um Schaltabtastsätze zu bilden, die diejenigen Abtastungen enthalten, welche die gleichen Decodierwerte haben, während unterschiedliche Referenzabtastungen verwendet werden (Verarbeitungsblock 1604) und bildet Schaltabtast-Metadaten, welche Schaltabtastsätze für die Mediadaten definieren und Abtastungen innerhalb der Schaltabtastsätze beschreiben (Verarbeitungsblock 1606). Bei einer Ausführungsform sind die Schaltabtast-Metadaten zu einer vorher festgelegten Datenstruktur organisiert bzw. gegliedert, beispielsweise einer Tabellenbox, welche einen Satz von verschachtelten Tabellen enthält.
  • Anschließend bestimmt bei einer Ausführungsform die Verarbeitungslogik, ob die Schaltabtast-Metadatenstruktur eine Wiederholungsdatensequenz enthält (Entscheidungsbox 1608). Wenn diese Entscheidung positiv ist, setzt die Verarbeitungslogik jede Wiederholungsdatensequenz in eine Referenz zu einer Sequenzvorkommnis und der Häufigkeit, mit der die Sequenz auftritt, um (Verarbeitungsblock 1610).
  • Danach nimmt im Verarbeitungsblock 1612 die Verarbeitungslogik die Schaltabtast-Metadaten in einer Datei in Verbindung mit den Mediadaten unter Verwendung eines spezifischen Mediadateiformats auf (beispielsweise das JVT-Dateiformat). Bei einer Ausführungsform können die Schaltabtast-Metadaten in einem separaten Track gespeichert werden, der für das Datenstromschalten bestimmt wird. Bei einer anderen Ausführungsform werden die Schaltabtast-Metadaten mit Abtast-Metadaten gespeichert (beispielsweise die Sequenzdatenstrukturen können in einer Abtasttabellenbox aufgenommen werden).
  • 17 ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 1700 zur Verwendung von Schaltabtast-Metadaten im Decodiersystem 200. Zunächst beginnt das Verfahren 1700 mit der Verarbeitungslogik, welche eine Datei empfängt, die mit den codierten Mediadaten verknüpft ist (Verarbeitungsblock 1702). Die Datei kann von einer Datenbank (lokal oder extern), dem Codiersystem 100 oder von einer anderen Einrichtung in einem Netzwerk empfangen werden. Die Datei umfasst Schaltabtast-Metadaten, welche Schaltabtastsätze in Verbindung mit den Mediadaten definieren.
  • Anschließend extrahiert die Verarbeitungslogik die Schaltabtast-Metadaten von der Datei (Verarbeitungsblock 1704). Wie oben erläutert können die Schaltabtast-Metadaten in einer Datenstruktur, beispielsweise einer Tabellenbox, welche einen Satz verschachtelter Tabellen enthält, gespeichert werden.
  • Weiter verwendet im Verarbeitungsblock 1706 die Verarbeitungslogik die extra- hierten Metadaten, um einen Schaltabtastsatz zu finden, der eine spezielle Abtastung enthält und wählt eine alternative Abtastung vom Schaltabtastsatz aus. Die alternative Abtastung, welche den gleichen Decodierwert wie die Anfangsabtastung hat, kann dann dazu verwendet werden, zwischen unterschiedlich-codierten Bitströmen als Antwort auf sich ändernde Netzwerkbedingungen umzuschalten, um einen Direktzugriffs-Eintragspunkt in einem Bitstrom bereitzustellen, um die Fehlerwiedergutmachung zu erleichtern usw.
  • Eine beispielhafte Schaltabtast-Metadatenstruktur wird nun mit Hilfe eines erweiterten ISO-Mediadateiformats beschrieben (als erweiterte MP4 bezeichnet). Es sei jedoch angemerkt, dass andere Mediadateiformate erweitert werden könnten, um verschiedene Datenstrukturen unterzubringen, um Schaltabtast-Metadaten zu speichern.
  • 18 zeigt eine beispielhafte Datenstruktur zum Speichern von Schaltabtast-Metadaten. Die beispielhafte Datenstruktur ist in Form einer Schaltabtast-Tabellenbox, die einen Satz verschachtelter Tabellen aufweist. Jeder Eintrag in einer Tabelle 1802 identifiziert einen Schaltabtastsatz. Jeder Schaltabtastsatz besteht aus einer Gruppe von Schaltabtastungen, deren Rekonstruktion objektiv identisch (oder prozentual identisch) ist, der jedoch von verschiedenen Referenzabtastungen, welche im gleichen Track (Datenstrom) wie die Schaltabtastung sein können oder nicht, vorhergesagt werden können. Jeder Eintrag in der Tabelle 1802 ist mit einer entsprechenden Tabelle 1804 verknüpft. Die Tabelle 1804 identifiziert jede Schaltabtastung, welche in einem Schaltabtastsatz enthalten ist. Jeder Eintrag in der Tabelle 1804 ist außerdem mit einer entsprechenden Tabelle 1806 verknüpft, welche die Stelle einer Schaltabtastung definiert (d.h., deren Track und Abtastnummer), wobei der Track Referenzabtastungen enthält, welche durch die Schaltabtastung verwendet werden, die Gesamtzahl von Referenzabtastungen, welche durch die Schaltabtastung verwendet werden, und jede Referenzabtastung, welche durch Schaltabtastung verwendet wird.
  • Wie in 15A gezeigt ist, können bei einer Ausführungsform die Schaltabtast-Metadaten verwendet werden, um zwischen unterschiedlich-codierten Versionen des gleichen Inhalts umzuschalten. Bei MP4 ist jedes alternatives Codieren als separater MP4-Track gespeichert, und die "alternative Gruppe" im Track-Datenkopf zeigt, dass dies eine alternative Codierung speziellen Inhalts ist.
  • 15B zeigt eine Tabelle, welche Metadaten enthält, die einen Schaltabtastsatz 1502 definiert, der aus Abtastungen S2 und S12 gemäß 15A besteht.
  • 15C zeigt ein Flussdiagramm einer Ausführungsform eines Verfahrens 1510 zum Bestimmen eines Punktes, bei dem ein Schalten zwischen zwei Bitströmen durchgeführt werden soll. Unter der Annahme, dass das Schalten vom Strom 1 auf den Strom 2 umgeschaltet werden soll, beginnt das Verfahren 1510 mit der Suche nach Schaltabtast-Metadaten, um alle Schaltabtastsätze zu finden, welche eine Schaltabtastung enthalten, mit einem Referenz-Track von Strom 1 und einer Schaltabtastung mit einem Schaltabtast-Track von Strom 2 (Verarbeitungsblock 1512). Anschließend werden die resultierenden Schaltabtastsätze ausgewertet, um einen Schaltabtastsatz auszuwählen, bei dem alle Referenzabtastungen einer Schaltabtastung mit dem Referenz-Track von Strom 1 verfügbar sind (Verarbeitungsblock 1514). Wenn beispielsweise die Schaltabtastung mit dem Referenz-Track von Strom 1 ein P-Rahmen ist, ist es erforderlich, dass eine Abtastung vor dem Schalten verfügbar ist. Weiter werden die Abtastungen im ausgewählten Schaltabtastsatz dazu verwendet, den Schaltpunkt zu bestimmen (Verarbeitungsblock 1516). Das heißt, der Schaltpunkt wird so angesehen, unmittelbar nach der höchsten Referenzabtastung der Schaltabtastung mit dem Referenz-Track von Strom 1 zu sein, über die Schaltabtastung mit dem Referenz-Track von Strom 1, und zur Abtastung, welche unmittelbar der Schaltabtastung mit dem Schaltabtast-Track von Strom 2 folgt.
  • Bei einer anderen Ausführungsform können Schaltabtast-Metadaten dazu verwendet werden, Direktzugriffs-Eintragspunkte in einen Bitstrom zu fördern, wie in 19A–-19C gezeigt ist.
  • Gemäß 19A und 19B besteht eine Schaltabtastung 1902 aus Abtastungen S2 und S12. S2 ist ein P-Rahmen, der von P22 vorhergesagt wird und der während üblicher Stromwiedergabe verwendet wird. S12 wird als Direktzugriffspunkt verwendet (beispielsweise zum Spleißen). Wenn S12 decodiert ist, läuft die Datenstromwiedergabe mit Decodieren von P14 weiter, als ob P24 nach S2 decodiert wurde.
  • 19C ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 1910 zum Bestimmen eines Direktzugriffspunkts für eine Abtastung (beispielsweise Abtastung S auf Track C). Das Verfahren 1910 beginnt mit der Suche nach Schaltabtast-Metadaten, um alle Schaltabtastsätze zu finden, welche eine Schaltabtastung mit einem Schaltabtast-Track C enthalten (Verarbeitungsblock 1912). Danach werden die resultierenden Schaltabtastsätze ausgewertet, um einen Schaltabtastsatz auszuwählen, bei dem eine Schaltabtastung mit dem Schaltabtast-Track T die nächste Abtastung vor der Abtastung S in der Codierreihenfolge ist (Verarbeitungsblock 1914). Weiter wird eine Schaltabtastung (Abtastung SS) anders als die Schaltabtastung mit dem Schaltabtast-Track T von dem ausgewählten Schaltabtastsatz für einen Direktzugriffspunkt ausgewählt, um S abzutasten (Verarbeitungsblock 1916). Während der Stromwiedergabe wird die Abtastung SS (worauf das Decodieren von irgendwelchen Referenzabtastungen folgt, welche im Eintrag für die Abtastung S5 spezifiziert sind) anstelle der Abtastung 5 decodiert.
  • Bei einer noch anderen Ausführungsform können Schaltabtast-Metadaten dazu verwendet werden, Fehlerwiedergutmachung zu erleichtern, wie in 20A20C gezeigt ist.
  • Gemäß 20A und 20B besteht eine Schaltabtastung 2002 aus Abtastungen S2, S12 und S22. Die Abtastung S2 wird von der Abtastung P4 vorhergesagt. Die Abtastung S12 wird von der Abtastung S1 vorhergesagt. Wenn ein Fehler zwischen Abtastungen P2 und P4 auftritt, kann die Schaltabtastung S12 anstelle der Abtastung S2 decodiert werden. Das Strömen läuft dann weiter mit der Abtastung P6 wie üblich. Wenn ein Fehler die Abtastung S1 beeinträchtigt, kann ebenfalls die Schaltabtastung S22 anstelle der Abtastung S2 decodiert werden, und dann wird das Strömen mit der Abtastung Pb wie üblich weitergehen.
  • 20C ist ein Flussdiagramm einer Ausführungsform eines Verfahrens 2010, um die Fehlerwiedergutmachung zu erleichtern, wenn eine Abtastung geliefert wird (beispielsweise Abtastung S6). Das Verfahren 2010 beginnt mit dem Suchen von Schaltabtast-Metadaten, um alle Schaltabtastsätze zu finden, welche eine Schaltabtastung enthalten, die gleich ist der Abtastung S6 oder der folgenden Abtastung S in der Decodierreihenfolge (Verarbeitungsblock 2012). Anschließend werden die resultierenden Schaltabtastsätze ausgewertet, um einen Schaltabtastsatz mit einer Schaltabtastung SS auszuwählen, die der Abtastung S am nächsten ist und deren Referenzabtastungen bekannt sind (über Rückführung oder eine andere Informationsquelle), um korrekt zu sein (Verarbeitungsblock 2014). Weiter wird die Schaltabtastung SS anstelle der Abtastung S geliefert (Verarbeitungsblock 2016).
  • Das Speichern und das Wiederauffinden von audio-visuellen Metadaten wurden beschrieben. Obwohl spezifische Ausführungsformen hier gezeigt und beschrieben wurden, soll durch den Fachmann gewürdigt werden, dass irgendeine Anordnung, die geplant wird, um den gleichen Zweck zu erreichen, durch die speziellen gezeigten Ausführungsformen ersetzt werden kann. Zweck dieser Anmeldung ist es, alle Adaptionen und Variationen der vorliegenden Erfindung abzudecken.
  • Zusammenfassung
  • Subabtast-Metadaten, die Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, werden erzeugt. Außerdem wird eine Datei, die mit den Multimediadaten verknüpft ist, gebildet. Diese Datei enthält die Subabtast-Metadaten wie auch andere Information, die zu den Multimediadaten gehört.
    2

Claims (74)

  1. Verfahren, welches aufweist: Erzeugen von Subabtast-Metadaten, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; und Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten aufweist.
  2. Verfahren nach Anspruch 1, wobei jede der mehreren Subabtastungen eine Subeinheit einer Abtastung ist, die decodiert werden kann, um eine Partialrekonstruktion der Abtastung zu erhalten.
  3. Verfahren nach Anspruch 1, wobei das Erzeugen von Subabtast-Metadaten aufweist: Empfangen einer Datei mit codierten Multimediadaten; Extrahieren von Information, die Grenzen der mehreren Subabtastungen in den Multimediadaten identifizieren; und Definieren der Subabtast-Metadaten auf der Basis der extrahierten Information.
  4. Verfahren nach Anspruch 1, wobei das Erzeugen von Subabtast-Metadaten aufweist: Gliedern der Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen.
  5. Verfahren nach Anspruch 4, wobei das Erzeugen von Subabtast-Metadaten außerdem aufweist: Umsetzen jeder Wiederholungssequenz von Daten innerhalb des Satzes vorher festgelegter Datenstrukturen in eine Referenz zu einem Sequenzvorkommnis und einer Anzahl von Vorkommnissen.
  6. Verfahren nach Anspruch 4, wobei der Satz vorher festgelegter Datenstrukturen eine erste Datenstruktur aufweist, welche Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über die Anzahl von Subabtastungen in jeder Ab tastung enthält, und eine dritte Datenstruktur, welche Information enthält, welche jede Subabtastung beschreibt.
  7. Verfahren nach Anspruch 1, welches außerdem aufweist: Senden der Datei, welche mit den Multimediadaten verknüpft ist, zu einem Decodiersystem; Empfangen der Datei, welche mit den Multimediadaten verknüpft ist, im Decodiersystem; und Extrahieren – im Decodiersystem – der Subabtast-Metadaten von der Datei, die mit den Multimediadaten verknüpft ist, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen.
  8. Verfahren, welches aufweist: Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren; und Extrahieren der Subabtast-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen.
  9. Verfahren nach Anspruch 8, wobei jede der mehreren Subabtastungen eine Subeinheit einer Abtastung ist, die decodiert werden kann, um eine Partialrekonstruktion der Abtastung zu erlangen.
  10. Verfahren nach Anspruch 8, welches außerdem aufweist: Identifizieren der mehreren Subabtastungen innerhalb der Multimediadatei unter Verwendung der extrahierten Subabtast-Metadaten; und Kombinieren ausgewählter der mehreren Subabtastungen zu einem Paket, welches zu einem Mediadecoder zu liefern ist.
  11. Verfahren nach Anspruch 8, wobei die extrahierten Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind.
  12. Verfahren nach Anspruch 11, wobei der Satz vorher festgelegter Datenstrukturen eine erste Datenstruktur aufweist, welche Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information enthält, die jede Subabtastung beschreibt.
  13. Verfahren, welches aufweist: Erzeugen von Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; Erzeugen von Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; und Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten und die Parametersatz-Metadaten aufweist.
  14. Verfahren nach Anspruch 13, wobei das Erzeugen von Subabtast-Metadaten aufweist: Gliedern der Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, die Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information enthält, die jede Subabtastung beschreibt.
  15. Verfahren nach Anspruch 13, wobei jede der mehreren Bereiche von Multimediadaten einer ist aus einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  16. Verfahren nach Anspruch 13, wobei das Erzeugen von Parametersatz-Metadaten aufweist: Gliedern der Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und eine zweite Datenstruktur, die Information enthält, die Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen der Multimediadaten definiert.
  17. Verfahren, welches aufweist: Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, und Parametersatz-Metadaten, welche einen oder mehrere Parametersätze für die Multimediadaten identifzieren; und Extrahieren der Subabtast-Metadaten und der Parametersatz-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen, und die extrahierten Parametersatz-Metadaten nachfolgend verwendet werden, um Beziehungen zwischen dem einen oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen.
  18. Verfahren nach Anspruch 17, wobei jeder der mehreren Bereiche der Multimediadaten einer ist von einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  19. Verfahren nach Anspruch 17, wobei die extrahierten Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und eine zweite Datenstruktur, welche Information enthält, die Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen der Multimediadaten definiert.
  20. Verfahren nach Anspruch 17, wobei die extrahierten Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine erste Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information enthält, die jede Subabtastung beschreibt.
  21. Verfahren, welches aufweist: Erzeugen von Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; Erzeugen von Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; Erzeugen von Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; und Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten, die Parametersatz-Metadaten und die Abtastgruppendaten aufweist.
  22. Verfahren nach Anspruch 21, wobei das Erzeugen von Subabtast-Metadaten aufweist: Gliedern der Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über eine Anzahl von Abtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information, die jede Subabtastung beschreibt, enthält.
  23. Verfahren nach Anspruch 21, wobei jeder der mehreren Bereiche von Multimediadaten einer ist von einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  24. Verfahren nach Anspruch 21, wobei das Erzeugen von Parametersatz-Metadaten aufweist: Gliedern der Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und eine zweite Datenstruktur, welche Information enthält, die Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen von Multimediadaten enthält.
  25. Verfahren nach Anspruch 21, wobei die Gruppierungen auf Zwischenabhängigkeiten der mehreren Abtastungen basieren.
  26. Verfahren nach Anspruch 21, wobei das Erzeugen von Abtastgruppen-Metadaten aufweist: Gliedern der Abtastgruppen-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die beschreibende Information über mehrere Abtastgruppen innerhalb der Multimediadaten enthält, und eine zweite Datenstruktur, welche Information enthält, die Abtastungen in jeder der mehreren Abtastgruppen identifiziert.
  27. Verfahren, welches aufweist: Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, Parametersatz-Metadaten, die einen oder mehrere Parametersätze für die Multimediadaten identifizieren, und Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; und Extrahieren der Subabtast-Metadaten, der Parametersatz-Metadaten und der Abtastgruppen-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen, wobei die extrahierten Parametersatz-Metadaten nachfolgend verwendet werden, um Beziehungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen der Multimediadaten zu bestimmen, und die extrahierten Abtastgruppen-Metadaten nachfolgend verwendet werden, Abtastungen, welche bei zukünftiger Verarbeitung verfügbar sein können, zu identifizieren.
  28. Verfahren nach Anspruch 27, wobei jeder der mehreren Bereiche der Multimediadaten einer ist von einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  29. Verfahren nach Anspruch 27, wobei die extrahierten Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und einen zweite Datenstruktur, welche Information enthält, die Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen der Multimediadaten definiert.
  30. Verfahren nach Anspruch 27, wobei die extrahierten Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine ersten Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, die Information, die jede Subabtastung beschreibt, enthält.
  31. Verfahren nach Anspruch 27, wobei die extrahierten Abtastgruppen-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine erste Datenstruktur aufweisen, die beschreibende Information über mehrere Abtastgruppen innerhalb der Multimediadaten enthält, und eine zweite Datenstruktur, welche Information enthält, welche Abtastungen in jeder der mehreren Abtastgruppen identifiziert.
  32. Verfahren, welches aufweist: Erzeugen von Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; Erzeugen von Parametersatz-Metadaten, welche einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; Erzeugen von Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; Erzeugen von Schaltabtast-Metadaten, welche mehrere Schaltabtastsätze definieren, die mit den Multimediadaten verknüpft sind; und Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten, Parametersatz-Metadaten, Abtastgruppen-Metadaten und Schaltabtast-Metadaten aufweist.
  33. Verfahren nach Anspruch 32, wobei das Erzeugen von Subabtast-Metadaten aufweist: Gliedern der Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine ersten Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, die Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, die Information enthält, die jede Subabtastung beschreibt.
  34. Verfahren nach Anspruch 32, wobei jeder der mehreren Bereiche von Multimediadaten einer ist von einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  35. Verfahren nach Anspruch 32, wobei das Erzeugen von Parametersatz-Metadaten aufweist: Gliedern der Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und eine zweite Datenstruktur, die Information enthält, die Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen von Multimediadaten definiert.
  36. Verfahren nach Anspruch 32, wobei die Gruppierungen auf Zwischenabhängigkeiten der mehreren Abtastungen basieren.
  37. Verfahren nach Anspruch 32, wobei das Erzeugen von Abtastgruppen-Metadaten aufweist: Gliedern der Abtastgruppen-Metadaten zu einem Satz vorher festgelegter Datenstrukturen, die eine erste Datenstruktur ausweisen, die beschreibende Information über mehrere Abtastgruppen innerhalb der Multimediadaten enthält, und eine zweite Datenstruktur, welche Information enthält, die Abtastungen in jeder der mehreren Abtastgruppen identifiziert.
  38. Verfahren nach Anspruch 32, wobei jeder der mehreren Schaltabtastsätze Abtastungen enthält, die identische Decodierwerte haben, während unterschiedliche Referenzabtastungen verwendet werden.
  39. Verfahren nach Anspruch 32, wobei das Erzeugen von Schaltabtast-Metadaten aufweist: Gliedern der Schaltabtast-Metadaten zu einer vorher festgelegten Datenstruktur, die als eine Tabellenbox dargestellt wird, die einen Satz verschachtelter Tabellen enthält.
  40. Verfahren, welches aufweist: Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, wobei Parametersatz-Metadaten einen oder mehrere Parametersätze für die Multimediadaten identifizieren, Abtastgruppen-Metadaten Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und Schaltabtast-Metadaten mehrere Schaltabtastsätze definieren, die mit den Multimediadaten verknüpft sind; und Extrahieren der Subabtast-Metadaten, der Parametersatz-Metadaten, der Abtastgruppen-Metadaten und der Schaltabtast-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen, die extrahierten Parametersatz-Metadaten nachfolgend verwendet werden, Beziehungen zwischen dem einen oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen, die extrahierten Abtastgruppen-Metadaten nachfolgend verwendet werden, um Abtastungen zu identifizieren, die bei der zukünftigen Verarbeitung verfügbar sein können, und die extrahierten Schaltabtast-Metadaten nachfolgend verwendet werden, einen Ersatz für eine spezifische Abtastung zu finden.
  41. Verfahren nach Anspruch 40, wobei jeder der mehreren Bereiche der Multimediadaten einer ist von einer Abtastung und einer Subabtastung innerhalb der Multimediadaten.
  42. Verfahren nach Anspruch 40, wobei die extrahierten Parametersatz-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, die eine erste Datenstruktur aufweisen, die beschreibende Information über den einen oder mehrere Parametersätze enthält, und eine zweite Datenstruktur, welche Information enthält, welche Verknüpfungen zwischen dem einen oder mehreren Parametersätzen und den mehreren Bereichen der Multimediadaten definiert.
  43. Verfahren nach Anspruch 40, wobei die extrahierten Subabtast-Metadaten zu einem Satz vorher festgelegter Datenstrukturen organisiert sind, die eine erste Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, welche Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information enthält, die jede Subabtastung beschreibt.
  44. Verfahren nach Anspruch 40, wobei die Gruppierungen auf Zwischenabhängigkeiten der mehreren Abtastungen basieren.
  45. Verfahren nach Anspruch 40, wobei die extrahierten Abtastgruppen-Metadaten zu einem Satz vorher festgelegter Datenstrukturen gegliedert sind, welche eine erste Datenstruktur aufweisen, welche beschreibende Information über mehrere Abtastgruppen innerhalb der Multimediadaten enthält, und eine zweite Datenstruktur, die Information enthält, welche Abtastungen in jeder der mehreren Abtastgruppen identifiziert.
  46. Verfahren nach Anspruch 40, wobei jeder der mehreren Schaltabtastsätze Abtastungen enthält, die identische Decodierwerte haben, während unterschiedliche Referenzabtastungen verwendet werden.
  47. Verfahren nach Anspruch 40, wobei die extrahierten Schaltabtast-Metadaten zu einer vorher festgelegten Datenstruktur gegliedert sind, die als eine Tabellenbox dargestellt wird, die einen Satz verschachtelter Tabellen enthält.
  48. Speicher zum Speichern von Daten zum Zugriff durch ein Anwendungsprogramm, welches bei einem Datenverarbeitungssystem ausgeführt wird, der aufweist: mehrere Datenstrukturen, welche im Speicher gespeichert sind, wobei die mehreren Datenstrukturen in einer Datei resident sind, die durch das Anwendungsprogramm verwendet wird, wobei die Datei mit Multimediadaten verknüpft ist und Subabtast-Metadaten enthält, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren.
  49. Speicher nach Anspruch 48, wobei die Datei, welche die Subabtast-Metadaten aufweist, außerdem die verknüpften Multimediadaten enthält.
  50. Speicher nach Anspruch 48, wobei die Datei, welche die Subabtast-Metadaten aufweist, Referenzen zu einer Datei enthält, die die verknüpften Multimediadaten enthält.
  51. Speicher nach Anspruch 48, wobei die mehreren Datenstrukturen eine erste Datenstruktur aufweisen, die Information über Subabtastgrößen enthält, eine zweite Datenstruktur, die Information über eine Anzahl von Subabtastungen in jeder Abtastung enthält, und eine dritte Datenstruktur, welche Information enthält, die jede Subabtastung beschreibt.
  52. Speicher zum Speichern von Daten für einen Zugriff durch ein Anwendungsprogramm, welches auf einem Datenverarbeitungssystem ausgeführt wird, der aufweist: mehrere Datenstrukturen, welche im Speicher gespeichert sind, wobei die mehreren Datenstrukturen in einer Datei resident sind, die durch das Anwendungsprogramm verwendet wird, wobei die Datei mit Multimediadaten verknüpft ist und aufweist: Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, und Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten definieren.
  53. Speicher zum Speichern von Daten zum Zugriff durch ein Anwendungsprogramm, welches bei einem Datenverarbeitungssystem ausgeführt wird, der aufweist: mehrere Datenstrukturen, welche im Speicher gespeichert sind, wobei die mehreren Datenstrukturen in einer Datei resident sind, die durch das Anwendungsprogramm verwendet wird, wobei die Datei mit Multimediadaten verknüpft ist und aufweist: Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten definieren, und Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren.
  54. Speicher zum Speichern von Daten zum Zugriff durch ein Anwendungsprogramm, welches bei einem Datenverarbeitungssystem ausgeführt wird, der aufweist: mehrere Datenstrukturen, welche im Speicher gespeichert sind, wobei die mehreren Datenstrukturen in einer Datei resident sind, die durch das Anwendungsprogramm verwendet wird, wobei die Datei mit Multimediadaten verknüpft ist und aufweist: Subabtast-Metadaten, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, Parametersatz-Metadaten, welche einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten definieren, Abtastgruppen-Metadaten, welche Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und Schaltabtast-Metadaten, welche mehrere Schaltabtastsätze definieren, die mit den Multimediadaten verknüpft sind.
  55. Vorrichtung, welche aufweist: einen Metadatengenerator, um Subabtast-Metadaten zu erzeugen, welche mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; und einen Dateiersteller, um eine Datei, welche mit den Multimediadaten verknüpft ist, zu bilden, wobei die Datei die Subabtast-Metadaten aufweist.
  56. Vorrichtung nach Anspruch 55, wobei jede der mehreren Subabtastungen eine Subeinheit einer Abtastung ist, die decodiert werden kann, um eine Partialrekonstruktion der Abtastung zu erhalten.
  57. Vorrichtung nach Anspruch 55, wobei der Metadatengenerator dazu dient, Subabtast-Metadaten zu erzeugen, wobei eine Datei mit codierten Multimediadaten empfangen wird, Information, welche Grenzen der mehreren Subabtastungen in den Multimediadaten identifiziert, extrahiert wird und die Subabtast-Metadaten auf der Basis der extrahierten Information definiert werden.
  58. Vorrichtung, welche aufweist: einen Metadatenextrahierer, um eine Datei, welche mit Multimediadaten verknüpft ist, zu empfangen, wobei die Datei Subabtast-Metadaten aufweist, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, und um die Subabtast-Metadaten von der Datei zu extrahieren; und einen Mediadatenstrom-Prozessor, um die Subabtast-Metadaten zu verwenden, um auf eine der mehreren Subabtastungen zuzugreifen.
  59. Vorrichtung nach Anspruch 58, wobei jede der mehreren Subabtastungen eine Subeinheit einer Abtastung ist, welche decodiert werden kann, um eine Partialrekonstruktion der Abtastung zu erlangen.
  60. Vorrichtung nach Anspruch 58, wobei der Mediadatenstrom-Prozessor weiter dazu dient, die mehreren Subabtastungen innerhalb der Multimediadatei zu identifizieren, die die extrahierten Subabtast-Metadaten verwendet, und um die ausgewählten der mehreren Subabtastungen zu einem Paket zu kombinieren, welches zu einem Mediadecoder zu liefern ist.
  61. Vorrichtung, welche aufweist: einen Metadatengenerator, um Subabtast-Metadaten zu erzeugen, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, und um Parametersatz-Metadaten zu erzeugen, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; und einen Dateiersteller, um eine Datei zu bilden, die mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten und die Parametersatz-Metadaten aufweist.
  62. Vorrichtung, welche aufweist: einen Metadatenextrahierer, um eine Datei, welche mit Multimediadaten verknüpft ist, zu empfangen, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, und Parametersatz-Metadaten, welche einen oder mehrere Parametersätze für die Multimediadaten identifizieren, und um die Subabtast-Metadaten und die Parametersatz-Metadaten von der Datei zu extrahieren; und einen Mediadatenstrom-Prozessor, um die extrahierten Subabtast-Metadaten zum Zugriff auf eine der mehreren Subabtastungen zu verwenden und um die extrahierten Parametersatz-Metadaten dazu zu verwenden, um Beziehungen zwischen dem einen oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen.
  63. Vorrichtung, welche aufweist: einen Metadatengenerator, um Subabtast-Metadaten zu erzeugen, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, um Parametersatz-Metadaten zu erzeugen, welche einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren, und um Abtastgruppen-Metadaten zu erzeugen, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; und einen Dateiersteller, um eine Datei zu bilden, die mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten, die Parametersatz-Metadaten und die Abtastgruppen-Metadaten aufweist.
  64. Vorrichtung, welche aufweist: einen Metadatenextrahierer, um eine Datei zu empfangen, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Abtastungen innerhalb jeder Abtastung der Multimediadaten definieren, wobei die Parametersatz-Metadaten einen oder mehrere Parametersätze für die Multimediadaten identifizieren, und die Abtastgruppen-Metadaten Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und um die Subabtast-Metadaten, die Parametersatz-Metadaten und die Abtastgruppen-Metadaten von der Datei zu extrahieren; und einen Mediadatenstrom-Prozessor, um die extrahierten Subabtast-Metadaten zu verwenden, um auf eine der mehreren Subabtastungen zuzugreifen, um die extrahierten Parametersatz-Metadaten zu verwenden, um Beziehungen zwischen einem oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen, und um die extrahierten Abtastgruppen-Metadaten zu nutzen. um Abtastungen zu identifizieren, die in der zukünftigen Verarbeitung verfügbar sein können.
  65. Vorrichtung, welche aufweist: einen Metadatengenerator, um Subabtast-Metadaten zu erzeugen, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, um Parametersatz-Metadaten zu erzeugen, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren, um Abtastgruppen-Metadaten zu erzeugen, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und um Schaltabtast-Metadaten zu erzeugen, welche mehrere Schaltabtastsätze definieren, die mit den Multimediadaten verknüpft sind; und einen Dateiersteller, um eine Datei zu bilden, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten, die Parametersatz-Metadaten, die Abtastgruppen-Metadaten und die Schaltabtast-Metadaten aufweist.
  66. Vorrichtung, welche aufweist: einen Metadatenextrahierer, um eine Datei zu empfangen, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren, die Parametersatz-Metadaten einen oder mehrere Parametersätze für die Multimediadaten identifizieren, die Abtastgruppen-Metadaten Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und die Schaltabtast-Metadaten mehrere Schaltabtastsätze definieren, die mit dem Multimediadaten verknüpft sind, und um die Subabtast-Metadaten, die Parametersatz-Metadaten, die Abtastgruppen-Metadaten und die Schaltabtast-Metadaten von der Datei zu extrahieren; und einen Mediadatenstrom-Prozessur, um die extrahierten Subabtast-Metadaten zu verwenden, um auf eine der mehreren Subabtastungen zuzugreifen, um die extrahierten Parametersatz-Metadaten zu verwenden, um Beziehungen zwischen einem oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen, um die extrahierten Abtastgruppen-Metadaten zu nutzen, um Abtastungen zu identifizieren, die bei zukünftiger Verarbeitung verfügbar sein können, und um die extrahierten Schaltabtast-Metadaten zu verwenden, um einen Ersatz für eine spezifische Abtastung zu finden.
  67. Vorrichtung, welche aufweist: eine Einrichtung zum Erzeugen von Subabtast-Metadaten, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; und eine Einrichtung zum Bilden einer Datei, die mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten aufweist.
  68. Vorrichtung, welche aufweist: eine Einrichtung zum Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, welche mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definiert; und eine Einrichtung zum Extrahieren der Subabtast-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, auf eine der mehreren Subabtastungen zuzugreifen.
  69. Vorrichtung, welche aufweist: eine Einrichtung, um Subabtast-Metadaten zu erzeugen, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; eine Einrichtung, um Parametersatz-Metadaten zu erzeugen, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; und eine Einrichtung, um eine Datei bilden, die mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten und die Parametersatz-Metadaten aufweist.
  70. Vorrichtung, welche aufweist: eine Einrichtung zum Empfangen einer Datei, welche mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, und Parametersatz-Metadaten, die einen oder mehrere Parametersätze für die Multimediadaten identifizieren; und eine Einrichtung zum Extrahieren der Subabtast-Metadaten und der Parametersatz-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, auf eine der mehreren Abtastungen zuzugreifen, und die extrahierten Parametersatz- Metadaten nachfolgend verwendet werden, Beziehungen zwischen einem oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen.
  71. Vorrichtung, welche aufweist: eine Einrichtung zum Erzeugen von Subabtast-Metadaten, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; eine Einrichtung zum Erzeugen von Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; eine Einrichtung zum Erzeugen von Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; und eine Einrichtung zum Bilden einer Datei, welche mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten, die Parametersatz-Metadaten und die Abtastgruppen-Metadaten aufweist.
  72. Vorrichtung, welche aufweist: eine Einrichtung zum Empfangen einer Datei, die mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, wobei die Parametersatz-Metadaten einen oder mehrere Parametersätze für die Multimediadaten identifizieren, und die Abtastgruppen-Metadaten Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; und eine Einrichtung zum Extrahieren der Subabtast-Metadaten, der Parametersatz-Metadaten und der Abtastgruppen-Metadaten von der Datei, wobei die extrahierten Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen, die extrahierten Parametersatz-Metadaten nachfolgend verwendet werden, Beziehungen zwischen einem oder mehreren Parametersätzen zu bestimmen und mehrere Bereichen der Multimediadaten zu bestimmen, und die extrahierten Abtastgruppen-Metadaten nachfolgend verwendet werden, Abtastungen, welche bei zukünftiger Verarbeitung verfügbar sein können, zu identifizieren.
  73. Vorrichtung, welche aufweist: eine Einrichtung zum Erzeugen von Subabtast-Metadaten, die mehrere Subabtastungen innerhalb jeder Abtastung von Multimediadaten definieren; eine Einrichtung zum Erzeugen von Parametersatz-Metadaten, die einen oder mehrere Parametersätze für mehrere Bereiche der Multimediadaten identifizieren; eine Einrichtung zum Erzeugen von Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren; eine Einrichtung zum Erzeugen von Schaltabtast-Metadaten, die mehrere Schaltabtastsätze definieren, die mit den Multimediadaten verknüpft sind; und eine Einrichtung zum Bilden einer Datei, die mit den Multimediadaten verknüpft ist, wobei die Datei die Subabtast-Metadaten, die Parametersatz-Metadaten, die Abtastgruppen-Metadaten und die Schaltabtast-Metadaten aufweist.
  74. Vorrichtung, welche aufweist: eine Einrichtung zum Empfangen einer Datei, die mit Multimediadaten verknüpft ist, wobei die Datei Subabtast-Metadaten aufweist, die mehrere Subabtastungen innerhalb jeder Abtastung der Multimediadaten definieren, Parametersatz-Metadaten, die einen oder mehrere Parametersätze für die Multimediadaten identifizieren, Abtastgruppen-Metadaten, die Gruppierungen von mehreren Abtastungen innerhalb der Multimediadaten definieren, und Schaltabtast-Metadaten, die mehrere Schaltabtastsätze, die mit den Multimediadaten verknüpft sind, definieren; und eine Einrichtung zum Extrahieren der Subabtast-Metadaten, der Parametersatz-Metadaten, der Abtastgruppen-Metadaten und der Schaltabtast-Metadaten von der Datei, wobei die Subabtast-Metadaten nachfolgend verwendet werden, um auf eine der mehreren Subabtastungen zuzugreifen, wobei die extrahierten Parametersatz-Metadaten nachfolgend verwendet werden, um Beziehungen zwischen einem oder mehreren Parametersätzen und mehreren Bereichen der Multimediadaten zu bestimmen, wobei die extrahierten Abtastgruppen-Metadaten nachfolgend verwendet werden, Abtastungen zu identifizieren, die bei zukünftiger Verarbeitung verfügbar sein können, und die extrahierten Schaltabtast-Metadaten nachfolgend verwendet werden, um einen Ersatz für eine spezifische Abtastung zu finden.
DE10392280T 2002-02-25 2003-02-24 Verfahren und Vorrichtung zum Unterstützen von AVC in MP4 Withdrawn DE10392280T5 (de)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US35960602P 2002-02-25 2002-02-25
US60/359,606 2002-02-25
US36177302P 2002-03-05 2002-03-05
US60/361,773 2002-03-05
US36364302P 2002-03-08 2002-03-08
US60/363,643 2002-03-08
US10/371,464 US20030163477A1 (en) 2002-02-25 2003-02-21 Method and apparatus for supporting advanced coding formats in media files
US10/371,464 2003-02-21
PCT/US2003/005630 WO2003073767A1 (en) 2002-02-25 2003-02-24 Method and apparatus for supporting avc in mp4

Publications (1)

Publication Number Publication Date
DE10392280T5 true DE10392280T5 (de) 2005-04-21

Family

ID=27761577

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10392280T Withdrawn DE10392280T5 (de) 2002-02-25 2003-02-24 Verfahren und Vorrichtung zum Unterstützen von AVC in MP4

Country Status (9)

Country Link
US (1) US20030163477A1 (de)
EP (1) EP1481552A1 (de)
JP (2) JP2005525627A (de)
KR (1) KR20040091664A (de)
CN (1) CN1653818A (de)
AU (1) AU2003213554B2 (de)
DE (1) DE10392280T5 (de)
GB (1) GB2402575B (de)
WO (1) WO2003073767A1 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8879641B2 (en) 2004-02-10 2014-11-04 Thomson Licensing Storage of advanced video coding (AVC) parameter sets in AVC file format
US7813562B2 (en) * 2004-09-27 2010-10-12 Intel Corporation Low-latency remote display rendering using tile-based rendering systems
WO2006041260A1 (en) * 2004-10-13 2006-04-20 Electronics And Telecommunications Research Institute Extended multimedia file structure and multimedia file producting method and multimedia file executing method
DE102005002981A1 (de) * 2005-01-21 2006-08-03 Siemens Ag Adressierungs- und Zugriffsverfahren für Bild-Objekte in computergestützten medizinischen Bild-Informationssystemen
KR101406843B1 (ko) * 2006-03-17 2014-06-13 한국과학기술원 멀티미디어 컨텐츠 부호화방법 및 장치와, 부호화된멀티미디어 컨텐츠 응용방법 및 시스템
US8699583B2 (en) * 2006-07-11 2014-04-15 Nokia Corporation Scalable video coding and decoding
KR101356737B1 (ko) * 2006-07-12 2014-02-03 삼성전자주식회사 디코딩 정보 업데이트를 위한 방법 및 장치
JP4360428B2 (ja) * 2007-07-19 2009-11-11 ソニー株式会社 記録装置、記録方法、コンピュータプログラムおよび記録媒体
WO2010100089A1 (en) * 2009-03-02 2010-09-10 Thomson Licensing Method and device for displaying a sequence of pictures
JP5652642B2 (ja) 2010-08-02 2015-01-14 ソニー株式会社 データ生成装置およびデータ生成方法、データ処理装置およびデータ処理方法
US9549197B2 (en) * 2010-08-16 2017-01-17 Dolby Laboratories Licensing Corporation Visual dynamic range timestamp to enhance data coherency and potential of metadata using delay information
EP2613464A4 (de) 2010-08-31 2015-04-29 Humax Holdings Co Ltd Verfahren zum senden und empfangen einer medieninformationsdatei für http-streaming
CN102726042B (zh) * 2010-09-02 2016-04-27 英特赛尔美国有限公司 视频处理系统和视频解码系统
US20120057640A1 (en) 2010-09-02 2012-03-08 Fang Shi Video Analytics for Security Systems and Methods
CN104641638B (zh) * 2012-06-28 2018-08-03 阿克西斯股份公司 使用虚拟帧内帧对视频内容进行编码的系统和方法
US20140177706A1 (en) * 2012-12-21 2014-06-26 Samsung Electronics Co., Ltd Method and system for providing super-resolution of quantized images and video
EP2958328A1 (de) * 2014-06-20 2015-12-23 Thomson Licensing Verfahren und Vorrichtung zur Signalisierung in einem Bitstrom eines Bild-/Videoformats eines LDR-Bildes und eines Bild-/Videoformats eines codierten HDR-Bildes von besagtem LDR-Bild und Beleuchtungsbild
EP3200460A4 (de) * 2014-10-16 2017-08-23 Samsung Electronics Co., Ltd Verfahren und vorrichtung zur verarbeitung von codierten videodaten und verfahren und vorrichtung zur erzeugung von codierten videodaten
GB2538997A (en) * 2015-06-03 2016-12-07 Nokia Technologies Oy A method, an apparatus, a computer program for video coding
WO2018230809A1 (ko) * 2017-06-15 2018-12-20 엘지전자 주식회사 360도 비디오를 전송하는 방법, 360도 비디오를 수신하는 방법, 360도 비디오 전송 장치, 360도 비디오 수신 장치
GB2585052B (en) * 2019-06-26 2023-07-26 Canon Kk Method and apparatus for encapsulating panorama images in a file
CN113191140B (zh) * 2021-07-01 2021-10-15 北京世纪好未来教育科技有限公司 文本处理方法、装置、电子设备及存储介质
GB2623523A (en) * 2022-10-17 2024-04-24 Canon Kk Method and apparatus describing subsamples in a media file

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6400996B1 (en) * 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US6181822B1 (en) * 1993-05-12 2001-01-30 The Duck Corporation Data compression apparatus and method
US5619501A (en) * 1994-04-22 1997-04-08 Thomson Consumer Electronics, Inc. Conditional access filter as for a packet video signal inverse transport system
US5706493A (en) * 1995-04-19 1998-01-06 Sheppard, Ii; Charles Bradford Enhanced electronic encyclopedia
US5754700A (en) * 1995-06-09 1998-05-19 Intel Corporation Method and apparatus for improving the quality of images for non-real time sensitive applications
US5659539A (en) * 1995-07-14 1997-08-19 Oracle Corporation Method and apparatus for frame accurate access of digital audio-visual information
TW436777B (en) * 1995-09-29 2001-05-28 Matsushita Electric Ind Co Ltd A method and an apparatus for reproducing bitstream having non-sequential system clock data seamlessly therebetween
US6353703B1 (en) * 1996-10-15 2002-03-05 Matsushita Electric Industrial Co., Ltd. Video and audio coding method, coding apparatus, and coding program recording medium
US6038256A (en) * 1996-12-31 2000-03-14 C-Cube Microsystems Inc. Statistical multiplexed video encoding using pre-encoding a priori statistics and a priori and a posteriori statistics
JP4832619B2 (ja) * 1997-04-07 2011-12-07 エイ・ティ・アンド・ティ・コーポレーション 対象物をベースとするオーディオ・ビジュアル情報を処理するためのシステムおよび方法
US6044397A (en) * 1997-04-07 2000-03-28 At&T Corp System and method for generation and interfacing of bitstreams representing MPEG-coded audiovisual objects
US6092107A (en) * 1997-04-07 2000-07-18 At&T Corp System and method for interfacing MPEG-coded audiovisual objects permitting adaptive control
WO1999019864A2 (en) * 1997-10-15 1999-04-22 At & T Corp. Improved system and method for processing object-based audiovisual information
US6134243A (en) * 1998-01-15 2000-10-17 Apple Computer, Inc. Method and apparatus for media data transmission
US6426778B1 (en) * 1998-04-03 2002-07-30 Avid Technology, Inc. System and method for providing interactive components in motion video
US6370116B1 (en) * 1998-05-26 2002-04-09 Alcatel Canada Inc. Tolerant CIR monitoring and policing
JP3382159B2 (ja) * 1998-08-05 2003-03-04 株式会社東芝 情報記録媒体とその再生方法及び記録方法
US6574378B1 (en) * 1999-01-22 2003-06-03 Kent Ridge Digital Labs Method and apparatus for indexing and retrieving images using visual keywords
JP3899754B2 (ja) * 1999-12-01 2007-03-28 富士電機機器制御株式会社 熱動形過負荷継電器
FR2803002B1 (fr) * 1999-12-22 2002-03-08 Hutchinson Support antivibratoire hydraulique actif et systeme antivibratoire actif comportant un tel support
US6937770B1 (en) * 2000-12-28 2005-08-30 Emc Corporation Adaptive bit rate control for rate reduction of MPEG coded video
US6920175B2 (en) * 2001-01-03 2005-07-19 Nokia Corporation Video coding architecture and methods for using same
US20040006745A1 (en) * 2001-08-31 2004-01-08 Van Helden Wico Methods, apparatuses, system, and articles for associating metadata with datastream

Also Published As

Publication number Publication date
KR20040091664A (ko) 2004-10-28
AU2003213554A1 (en) 2003-09-09
CN1653818A (zh) 2005-08-10
EP1481552A1 (de) 2004-12-01
GB0421323D0 (en) 2004-10-27
GB2402575A (en) 2004-12-08
GB2402575B (en) 2005-11-23
JP2005525627A (ja) 2005-08-25
AU2003213554B2 (en) 2008-07-24
US20030163477A1 (en) 2003-08-28
JP2010141900A (ja) 2010-06-24
WO2003073767A1 (en) 2003-09-04

Similar Documents

Publication Publication Date Title
DE10392282T5 (de) Verfahren und Vorrichtung zum Unterstützen von AVC in MP4
DE10392280T5 (de) Verfahren und Vorrichtung zum Unterstützen von AVC in MP4
DE10392598T5 (de) Unterstützung von fortschrittlichen Codierungsformaten in Mediendateien
DE10392281T5 (de) Verfahren und Vorrichtung zum Untersützten von AVC in MP4
DE60130180T2 (de) Verfahren zur kodierung und dekodierung, aufzeichnungsmedium und programm
DE60311231T2 (de) Verfahren zum ermöglichen von direktzugriff und spleissen in einem verschlüsselten videostrom
DE69917971T2 (de) Verfahren und Vorrichtung zur Verarbeitung von komprimierten Videodatenströmen
DE69936264T2 (de) Verfahren und vorrichtung zur verwaltung einer multimediadatei
DE69838869T2 (de) Vorrichtung und Verfahren zum Spleißen von codierten Datenströmen sowie Vorrichtung und Verfahren zur Erzeugung von codierten Datenströmen
DE69913990T2 (de) System zum editieren komprimierter bildsequenzen
US20040199565A1 (en) Method and apparatus for supporting advanced coding formats in media files
DE69937462T2 (de) Effiziente macroblockheaderkodierung zur videokompression
DE69727372T2 (de) System und verfahren zur erzeugung von trickwiedergabe-videodatenströmen aus einem komprimierten normalwiedergabe-videodatenstrom
DE10392586T5 (de) Allgemeine Anpassungsschicht für JVT-Video
DE69835211T2 (de) Umschaltung zwischen komprimierten videobitströmen
DE69535627T2 (de) Editiervorrichtung für videosignale
EP1836853A1 (de) Verfahren und vorrichtung zur verarbeitung von skalierbaren daten
DE60008233T2 (de) Übertragung von profilierten mediadateien an kunden über ein netzwerk
DE112017006610T5 (de) Bildverarbeitungsvorrichtung und Verfahren
DE10392284T5 (de) Verfahren und Vorrichtung zum Unterstützen von AVC in MP4
EP1967007A2 (de) Verfahren und vorrichtung zum generieren eines markierten datenstroms, verfahren und vorrichtung zum einfügen eines wasserzeichens in einen markierten datenstrom und markierter datenstrom
DE69433537T2 (de) Vorrichtung zur Dekodierung von Bewegtbilddaten
EP0836785B1 (de) Verfahren zur dekodierung und kodierung eines komprimierten videodatenstroms mit reduziertem speicherbedarf
DE19717453C2 (de) Verfahren zum Einblenden eines neuen Bildabschnittes an einer vorbestimmten Stelle eines datenreduzierten Video-Datenstromes
WO2007143981A2 (de) Verfahren und vorrichtung zum erzeugen eines digitalen transportstroms für ein video-programm

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110901