JP2010532605A - メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法 - Google Patents

メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法 Download PDF

Info

Publication number
JP2010532605A
JP2010532605A JP2010513776A JP2010513776A JP2010532605A JP 2010532605 A JP2010532605 A JP 2010532605A JP 2010513776 A JP2010513776 A JP 2010513776A JP 2010513776 A JP2010513776 A JP 2010513776A JP 2010532605 A JP2010532605 A JP 2010532605A
Authority
JP
Grant status
Application
Patent type
Prior art keywords
packets
data
media
stored
information
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.)
Granted
Application number
JP2010513776A
Other languages
English (en)
Other versions
JP5334335B2 (ja )
Inventor
クレゲロー,シュテファン
ドーラ,シュテファン
フェーバー,ニコラウス
フックス,ハラルド
Original Assignee
フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン
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

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a Uniform Resource Locator [URL] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a Uniform Resource Locator [URL] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/2368Multiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2381Adapting the multiplex stream to a specific network, e.g. an Internet Protocol [IP] network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2389Multiplex stream processing, e.g. multiplex stream encrypting
    • H04N21/23895Multiplex stream processing, e.g. multiplex stream encrypting involving multiplex stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/4302Content synchronization processes, e.g. decoder synchronization
    • H04N21/4307Synchronizing display of multiple content streams, e.g. synchronisation of audio and video output or enabling or disabling interactive icons for a given period of time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB, inside the home ; Interfacing an external card to be used in combination with the client device
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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, synchronizing decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving MPEG packets from an IP network
    • H04N21/4381Recovering the multiplex stream from a specific network, e.g. recovering MPEG packets from ATM cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/60Selective content distribution, e.g. interactive television, VOD [Video On Demand] using Network structure or processes specifically adapted for video distribution between server and client or between remote clients; Control signaling specific to video distribution between clients, server and network components, e.g. to video encoder or decoder; 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/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • H04N21/63345Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key by transmitting keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • H04N21/60Selective content distribution, e.g. interactive television, VOD [Video On Demand] using Network structure or processes specifically adapted for video distribution between server and client or between remote clients; Control signaling specific to video distribution between clients, server and network components, e.g. to video encoder or decoder; 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/643Control 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 using dedicated Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television, VOD [Video On Demand]
    • 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
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction

Abstract

関係するメディアデータコンテナ(104)およびメタデータコンテナ(106)を有するファイル(102)を記録するための装置(100)であって、装置は、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット(110)を受信し、第1のクロックとは異なる第2のクロックに基づく、第1の第1のメディアデータサンプルに関連する第2のメディアデータサンプルを含む第2のデータパケット(112)を受信し、基準クロックに対する第1のクロックの関係を示すための情報を含む第1の制御パケット(114)を受信し、基準クロックに対する第2のクロックの関係を示すための情報を含む第2の制御パケット(115)を受信するための受信器(108)と、受信された第1および第2のデータパケット(110,112)および受信された第1および第2の制御パケット(114,115)の少なくとも一部をメディアデータコンテナ(104)内に記憶し、関連したメタデータ(124,128)をメタデータコンテナ(106)内に記憶するためのレコーダ(116)とを含み、関連したメタデータは、受信された第1および第2のデータパケットおよび受信された第1および第2の制御パケットのタイミング情報、および、記憶された第1および第2のデータパケット、および、記憶された第1および第2の制御パケットの、メディアデータコンテナ内の位置を示す位置情報を含む。

Description

発明は、伝送プロトコルデータパケットおよびそれに関連したサイド情報を、たとえば、ISO(International Organization for Standardization)ベースのメディアファイルフォーマットに基づくファイルのような、メディアデータコンテナおよびメタデータコンテナを有するファイルに記憶すること、および/またはファイルから読み出すことに関する。

様々な電子デバイスが、メディアデータストリームを受信し、提供することが可能である。そのようなメディアデータストリームは、例えば、DVB−H標準(Digital Video Broadcasting−Handhelds)またはDVB−T標準(Digital Video Broadcasting Terrestrial)に従ってメディアストリームを送信するデジタルビデオブロードキャスティングネットワークから受信できる。

DVB−Tは、国際標準ISO/IEC13818(IEC=International Electrotechnical Commission)に従う、エレメンタリMPEG−2(MPEG=Moving Pictures Expert Group)ビデオおよびオーディオストリームを含む、自己完結型MPEG−2伝送ストリームを用いる。MPEG−2伝送ストリームは、今日の伝送システムの多くにおいて用いられている多重送信である。それは、一般的にはオーディオおよびビデオであるが、他のデータでもある、一つ以上のメディアプログラムのストリーム多重送信である。MPEG−2伝送ストリームは、全てのメディアストリームにおいて、共通のクロックを共有し、タイムスタンプされたメディアサンプル(アクセスユニット,AU)を用いる。これにより、送信器と受信器のクロックの同期およびオーディオストリームとビデオストリームのリップ同期化(lip-synchronization)が可能になる。

DVB−Hに対して、エレメンタリオーディオおよびビデオストリームは、IPデータのキャスティングのために、RTP(Real-Time Transport Protocol)、UDP(User Datagram Protocol)、IP(Internet Protocol)およびMPE(Multi-Protocol Encapsulation)の形式でカプセル化される。RTPは、IPネットワーク上でのマルチメディアデータの効果的なリアルタイム配信のために用いられる。多重送信は、典型的には、異なるネットワークポート、たとえば、ビデオのための一つのネットワークポートおよびオーディオのためのもう一つのネットワークポートを各々個別のメディアストリームに関連付けることによってなされる。異なるメディアは、大抵、異なるクロックまたはクロックレートを有する、異なるソースに端を発する。例えば、オーディオサンプルは、オーディオサンプリングデバイスのクロックレートに依存するサンプルレートを有し、ビデオフレームのフレームレートは、ビデオフレーム取得デバイスのクロックレートに依存する。そのようなクロックは、100万分の数百よりも大きい固有の周波数誤差を有し、結果的に、一日に数十秒の累積誤差となる。「クロックスキュー」という用語は、クロックの発振器の公称周波数からの実際の周波数の差として定義される。もし、送信器のクロックが受信器のクロックよりも早く動作すると、受信器においてパケットが累積されることになる。もし、送信器のクロックが受信器のクロックよりも遅く動作すると、受信器のバッファがアンダーフィルとなる結果となる。したがって、もし、受信器のクロックレートが送信器のクロックレートと異なっていれば、受信器のバッファは、徐々にいっぱいになるか、空になる。また、クロックスキューは、受信器において、関連するオーディオおよびビデオサンプル間の非同期化をもたらし得る。

RTCP(Real-Time Transport Control Protocol)は、RTPストリームに対して、クロックの復元および同期化を可能にする。RTCPチャネルは、各RTPストリームに関連付けられ、センダーレポート(SR)の形式での送信器から受信器への制御情報を含む。その逆も同様である。各RTCP SRは、2つのタイムスタンプ、すなわち、送信器のシステムクロック(基準時間)のNTP(Network Time Protocol)タイムスタンプおよび関連したRTPストリームの対応するメディアタイムスタンプを含む。これらのRTCP SRは、オーディオおよびビデオの両方に対して送られる。RTPおよびNTPの時間の値から、RTPパケットは、タイムライン上に配置され、メディアが完璧に同期され得る。

ストリーミングサービスは、受信中にすぐに消費するために、時間的に制約された、または制約されない態様で配信される同期されたメディアストリームの組として定義される。各ストリーミングセッションは、オーディオ、ビデオおよび/またはタイムドテキストのようなリアルタイムメディアデータを含み得る。たとえば、携帯テレビの手段により動画のためのメディアデータを受けるユーザは、動画を見ること、および/または動画をファイルに録画することができる。一般的に、この目的のため、受信されたメディアストリームの受信されたデータパケットは、ファイルの未加工のメディアデータを記憶するために非パケット化される。すなわち、受信されたRTPパケットまたはMPEG−2パケットは、メディアデータサンプルの形式でそれらのペイロードを得るために最初に非パケット化される。そして、非パケット化の後、得られたメディアデータサンプルは、リプレイされるか、またはファイルに記憶される。得られたメディアサンプルは、一般的に、H.264/AVC(AVC=Advanced Video Coding)ビデオフォーマット、および/またはMPEG−4 HE−AACv2(HE-AACv2=High-Efficiency Advanced Audio Coding version 2)オーディオフォーマットなどのフォーマットによって圧縮される。そのようなビデオおよび/またはオーディオフォーマットを有するメディアデータサンプルが記憶される場合、それらは、3GPP(3rd Generation Partnership Project)ファイルフォーマットとしても知られる、いわゆる3GPファイルフォーマット、またはMP4(MPEG−4)ファイルフォーマットの形で記憶され得る。3GPおよびMP4の両方とも、ISO/IEC国際標準14496−12:2005「オーディオビジュアルオブジェクトのインフォメーションテクノロジーコーディング−パート12:ISOベースのメディアファイルフォーマット」において規定された、ISOベースのメディアファイルフォーマットから派生した。このフォーマットのファイルは、メディアデータおよびメタデータを含む。そのようなファイルを動作可能にするために、これらのデータの両方が提供されなければならない。メディアデータは、ファイルに関連したメディアデータコンテナ(mdat)に記憶され、メタデータはファイルのメタデータコンテナ(moov)に記憶される。従来、メディアデータコンテナは、実際のメディアサンプルを含む。すなわち、それは、たとえば、例えば、交互的で、時間が順序付けされたビデオおよび/またはオーディオフレームを含む。それによって、各メディアは、メディアコンテンツプロパティを記述する、それ自身のメタデータトラック(trak)を、メタデータコンテナmoov内に有する。メタデータコンテナmoov内の付加的なコンテナ(ボックスともいう)は、ファイルプロパティ、ファイルコンテンツなどのについての情報を含み得る。

近年、国際標準化組織によって、ISOベースのメディアファイルフォーマットに基づいたファイルのための、いわゆる受信ヒントトラックが定義された。それらの受信ヒントトラックは、例えば、受信されたMPEG−2伝送ストリームまたはRTPパケットのような、多重送信された、および/またはパケット化されたストリームを記憶するために用いられ得る。受信ヒントトラックは、受信されたデータの、クライアント側での記憶およびプレイバックのために用いられ得る。それによって、一つのストリームの、受信されたMPEG−2 TSまたはRTPパケットが、例えば、予め計算されたサンプルまたはコンストラクタとして、直接的に、受信ヒントトラック内に記憶される。

この手法には、データパケットを非多重送信および/または非パケット化し、全てのエレメンタリメディアストリーム(オーディオおよび/またはビデオ)に対して別々のメディアトラックを記載することに比べて、2つの利点がある。一つ目は、受信されたデータパケットの非多重送信、または別の処理が必要でないため、記憶中において受信デバイスに要求される複雑性を低くすることである。受信されたデータパケットの修正されない形式でのファイル記憶だけが実行される。二つ目は、いくつかの場合において、特に、メディアが伝送/多重送信レベルにおいて暗号化されているか、またはパケット化スキームが不明であると、受信されたデータパケットを別々のメディアトラックに非多重送信することが全く不可能であることである。三つ目は、最初の2点により、PVR(PVR=Personal Video Recorder)アプリケーションにおいて、タイムシフト、すなわち、ファイルへの書込み、および、様々に時間をずらしての同じファイルからの即時読み出しが容易になる。

受信ヒントトラックからのプレイバックは、普通のストリーム受信をエミュレートし、受信ヒントトラックから、記憶されたデータパケットを、IP上で受信された通りに読み出すことによりなされ得る。メディアプレイバックタイミングを有するメディアトラックとは逆に、受信ヒントトラックは、全てのヒントトラックのように、伝送タイミングを有する。したがって、受信デバイスの受信タイムスタンプは、受信ヒントトラックに記憶された各データパケットに関連付けられる。

サーバ側のファイル内のRTPヒントトラックは、一つのストリームからRTPメディアデータパケットのみを記憶し、例えば、RTCP情報またはキーメッセージのような、対応するサイドまたは制御情報を含まない。RTCP情報は、ストリーミング状況の現在の状態、たとえばタイミングを記述するため、ストリーミングサーバによって、オンザフライで生成される。

ストリーミング受信器は、ダイレクトプレイバックのためにバッファオーバーフローおよびアンダーランをそれぞれ避けるため、受信時間から送信器のシステムクロックを復元し、受信器のシステムクロックを送信器のシステムクロックに合わせ得る。何でもクロックの復元のために用いられるRTPパケットまたはRTCPセンダーレポートパケットの到着時間におけるジッター(ネットワークジッター)のため、即時のクロックの復元は可能でない。同期していないサンプリングクロックを有する、独立したオーディオおよびビデオキャプチャユニットは、メディアタイムスタンプが固定レートで常時増加するにもかかわらず、RTPクロックをドリフトする結果になり得る。RTCP SRは、各々のストリームに対してNTPおよびRTPタイムスタンプを運び、それゆえ、関与するデバイスのドリフトを抽出するために用いることができる。多くのシステムにおいて、RTCP SRの作成、特にNTPクロックおよびRTPクロック間の関係に関与するジッターが存在し得る。したがって、ストリーミングクライアントは、起動直後に完璧なリップ同期化を達成し得ないことは一般的ではあるが、ビデオおよびオーディオストリーム間でのリップ同期化の前に、所定の数のRTCP SRを考慮する必要があることは間違いない。もし、送信器のシステムクロックが復元される必要があり、かつネットワークジッターが高ければ、何でもクロックの復元に用いられる所定の数のRTPパケットまたはRTCPセンダーレポートパケットも必要である。ネットワークジッターおよびクロックドリフトは、関連するデータパケットのRTPタイムスタンプに加えて、上述したような多重RTCP SRの情報を用いて、リアルタイムストリーム受信中に再計算され得る。

現時点では、RTP受信ヒントトラックは、メディアストリームの受信されたデータパケットを記憶するようにだけ規定され、それぞれがセンダーレポートからのタイミング情報である対応するRTCP SRを含まない。受信されたRTPパケットのRTPタイムスタンプだけでは、異なるストリームから受信されたメディアデータを同期するのに不十分である。これは、一般的に、各メディアストリームが、その初期のタイムスタンプおよび初期のシーケンス番号にランダムな値を割当て、タイムスタンプのクロック周波数が、運ばれるメディアデータのフォーマットに依存するからである。RTPパケットの到着時間もしくは受信時間は、ストリーム間の同期に用いられ得る。しかしながら、この手法の問題は、RTPはパケットの配信を保証せず、アウトオブバンド配信を防ぐこともないということである。その結果、受信時間のみに基づく同期では、精度を保証し得ない。

上述したように、異なるRTPストリーム間での同期を取る最も正確な方法は、RTPタイムスタンプと、NTPタイムスタンプフォーマットの形式でのストリームの間で共通のタイムスタンプとの間の変換を可能にする情報を含む、関連したRTCP SRを待つことを必要とする。これらのRTCPセンダーレポートは、大抵、所定のビットレートに対する各ストリームに対して5秒毎に送信され、2つのRTCP SR間の時間間隔は、ビットレートに依存する。

よって、正確なタイミングでのRTP受信ヒントトラックのプレイバックおよびリップ同期化は、次の二つの場合にのみ可能である。一つは、異なるメディアクロック間にクロックドリフトがなく、かつ、RTCPセンダーレポートのインターストリーム同期データが、受信された各RTPパケットに対して利用可能である場合である。しかしながら、これは、実際の環境においてとても起こりえない理想的な状況に相当する。二つ目は、受信されたRTPパケットのRTPタイムスタンプを記憶する前に調整することによって、受信デバイスが、RTCP SRのタイミング情報を考慮に入れる場合である。

最初の事例は、理論的な事例にすぎず、実際には起こらない。2つ目の事例は、たとえば、時間調整のためにいくらかのRTCP SRを考慮に入れるために、何秒かの間に受信されたストリームをバッファすることが必要となるなど、サーバに大きな負荷を与える。これは、タイムシフトアプリケーションにとって、同じファイルから即時に読み出す能力に影響をも与え得る。さらに、記憶後、元の受信状況が再現され得ない。すなわち、完全なストリームが受信され、記録された後の処理中において、ロングタームジッターが取り除かれないかも知れない。

現在のブロードキャストシステムは、キーストリーム(インバンドまたはアウトオブバンドのいずれか)を、関連するデータパケットのメディアデータを復号するために用いられるサイド情報としての、保護されたキーを伝送するために用いる。典型的には、キーストリームと暗号化されたメディアデータとの間には弱連結があるのみであり、タイミングの関連性はない。

DVB−HおよびOMA−BCAST(Open Mobile Alliance-Mobile Broadcast Services)において、キーストリームは、関連したメディアストリームとは異なるUDPポートに送信されたキーメッセージの、別個のストリームとして定義される。全てのキーメッセージが単一のUDPパケットとして送信される。OMA−BCASTでは、これらのメッセージをショートタームキーメッセージ(STKM)と呼び、DVB−Hでは、それらをキーストリームメッセージ(KSM)と呼ぶ。全てのキーメッセージはストリーミングされるサービスの購読のためにあり、それゆえ、認証された購読者/デバイスのみがアクセスできるため、キーメッセージの記憶は、ストリーミングシステムのセキュリティに害を与えない。キーメッセージ内の実際の暗号化キーは、サービスまたはプログラムキーを用いて保護される。

各キーは、関連した、暗号化されたメディアアクセスユニットでも示される、関連したキーインジケータ(キーID)を有する。復号器は、暗号化アクセスユニット内のキーIDに関連したキーの存在を確かめる。

暗号化されたメディアアクセスユニットと関連したキーメッセージとの同期は、オーバーラップする有効期間とともにキーを周期的に送信することにより処理される。キーは、暗号化されたビデオパケットによりも前に送信され、対応するキーインジケータを用いて印が付される。そして、キーは、少なくともメディアデータがこの特定のキーを使用している間は有効である。

メディアタイミングはストリーム内のキーメッセージに関連付けられていないため、ファイルの記録中にメディアトラックとしてキーを記憶することは実用的ではない。キーと対応する暗号化されたアクセスユニットとの間でのメディアタイミングの関連付けは、キーとメディアストリームとの両方の連結を取り計らうキーIDを処理し、分析した後にのみなされ得る。この分析の後でのみ、どのキーが、どのアクセスユニットまたはビデオフレームに用いられるかが明らかになる。

したがって、本発明の目的は、例えば、記録または記憶処理中に著しい複雑性を加えることなく、記録されたメディアのプレイバック中に正確なリップ同期化または復号化ができるような、効果的な方法で、受信されたパケットおよびファイル内の関連したサイド情報を記録し、処理するコンセプトを提供することである。

この目的は、請求項1に従うファイルを記録するための装置、請求項20に従うファイルを記録するための方法、請求項22に従うファイルを読み出すための装置および請求項27に従うファイルを読み出すための方法によって解決される。

上述した目的の解決のため、本発明の実施例は、発明に係る方法を実行するためのコンピュータプログラムをも提供する。

本発明は、受信された、ストリーム配信(streamed)されたメディアデータパケットだけでなく、サイド情報を運ぶ受信中の関連したデータ、特に、たとえば、RTCPセンダーレポートを含むRTCPメッセージのように、メディアストリームと平行に配信された全ての関連したデータも記憶することによって、または、受信された、ストリーム配信されたメディアデータパケットに含まれたメディアデータに関連した暗号化キーを含む、関連した、受信されたキーメッセージを記録することによって、上述した課題が同時に解決され得るという発見に基づく。

この、受信された、関連したデータまたはサイド情報は、いわゆる関連した受信ヒントトラック(「arht」)の形式で、メディアデータコンテナおよびメタデータコンテナを含むファイル内に記憶される。このトラックは、例えば、ISO/IEC14496−12のトラック参照メカニズムを用いる、関係したメディアパケットを含む、対応する受信ヒントトラックのためのものである。関係した受信ヒントトラックのように、関連した受信ヒントトラックも、例えば、受信器のシステムクロックのタイムスタンプの形式で、伝送タイミングを記憶する。これは、プレイバック中の後の段階にて、元のパケット受信のタイミング状況の復元を可能にし得る。

受信ヒントトラックおよび関連した受信ヒントトラックは、ファイルの、メディアデータコンテナ内にパケットデータ部分を含み、メタデータコンテナ内にメタデータ部分を含む。

本発明の実施例によれば、RTCP SRのようなメッセージおよび関係した伝送タイミング情報は、関連した受信ヒントトラックの記録中に保存される。平行して、受信されたメディアRTPパケットおよび関係した伝送タイミングは、受信ヒントトラックに直接記憶される。記録の間、非ジッター処理またはリップ同期化補正は行なわれない。

この目的のため、本発明のある実施例は、関係するメディアデータコンテナおよびメタデータコンテナを有するファイルを記録するための装置を提供する。装置は、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケットを受信し、第1のクロックとは異なる第2のクロックに基づく第2のメディアデータサンプルを含む第2のデータパケットを受信するための受信器を含み、第2のメディアデータサンプルは、第1のメディアデータサンプルに関連付けられる。受信器は、さらに、基準クロックに対する第1のクロックの関係を示すための情報を含む第1の制御パケットを受信し、基準クロックに対する第2のクロックの関係を示すための情報を含む第2の制御パケットを受信するように適合される。装置は、また、メディアデータコンテナ内に、受信された第1および第2のデータパケット、および、受信された第1および第2の制御パケットの少なくとも一部を記憶し、メタデータコンテナ内に、関連したメタデータを記憶するためのレコーダを含み、関連したメタデータは、受信された第1および第2のデータパケットおよび受信された第1および第2の制御パケットのタイミング情報を含み、記憶された第1および第2のデータパケットおよび記憶された第1および第2の制御パケットの、メディアデータコンテナ内の位置を示す位置情報を含む。

本発明のある実施例によれば、レコーダは、第1および第2の受信されたデータパケットを、メディアデータコンテナの第1のチャンク内にサンプルとして記録し、受信された、関連した第1および第2の制御パケットの少なくとも一部を、サンプルとしてメディアデータコンテナの第2のチャンクに記録するように適合される。

本発明のある実施例によれば、レコーダは、第1および第2のデータパケットのタイミング情報および位置情報を、ファイルのメタデータコンテナの第1のトラック内に記録し、第1および第2の制御パケットのタイミング情報および位置情報を、ファイルのメタデータコンテナの第2のトラック内に記録するように適合される。

本発明のある実施例によれば、ファイルは、ISOベースのメディアファイルフォーマットに基づく。本発明のある好ましい実施例によれば、ファイルは、3GP−またはMP4−ファイルである。

本発明のある実施例によれば、第1のデータパケットは、パケット化された第1のメディアサンプル(たとえば、圧縮されたビデオ)を含む第1のストリーム配信されたRTPパケットであり、第1の制御パケットは、第1のRTCPセンダーレポートを含む第1のストリーム配信されたRTPパケットに関係するRTCPパケットである。第2のデータパケットは、パケット化された第2のメディアデータサンプル(例えば、ビデオに関係する圧縮されたオーディオ)を含む第2のストリーム配信されたRTPパケットであり、第2の制御パケットは、第2のRTCPセンダーレポートを含む第2のストリーム配信されたRTPパケットに関係するRTCPパケットである。

第1および第2のデータパケットと関連した制御パケットとの平行的な記憶は、記録処理がさらに軽量であり、後の段階で記録ファイルからメディアストリームをプレイバックするために必要な全ての情報を取得し得る点で有利である。関連した受信ヒントトラック、すなわち、メディアデータコンテナ内の記憶された制御パケットおよびメタデータコンテナ内の関連したメタ情報は、受信ヒントトラック、すなわち、ファイルのメディアデータコンテナ内の記憶された第1および/または第2のデータパケット、および、ファイルのメタデータコンテナ内に記憶された、それらの関連したメタ情報のプレイバック中に用いられる。

記録されたファイルのプレイバックの目的のために、本発明の実施例は、ファイルを読み出すための装置を提供し、ファイルは、ファイルに関係するメディアデータコンテナ内に記憶され、第1のデータパケットは、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含み、第2のデータパケットは、第1のクロックとは異なる第2のクロックに基づくパケット化された第2のメディアデータサンプルを含む。ファイルは、また、基準クロックに対する第1のクロックの関係を示すための情報を含む関連した第1の制御パケットの少なくとも一部、および、基準クロックに対する第2のクロックの関係を示すための情報を含む関連した第2の制御パケットの少なくとも一部を記憶する。ファイルは、ファイルのメタデータコンテナ内に、記憶された、関連したメタデータを有し、関連したメタデータコンテナは、受信された第1および第2のデータパケット、および、受信された第1および第2の制御パケットのタイミング情報、および、メディアデータコンテナ内の、記憶された第1および第2のデータパケットの位置、および記憶された第1および第2の制御パケットの位置を示す位置情報を含む。ファイルを読み出すための装置は、メタデータコンテナにアクセスし、メディアデータコンテナ内に記憶された第1および第2のデータパケットおよび記憶された第1および第2の制御パケットのタイミング情報を解析することによって、記憶された第1および第2のデータパケットの出力スケジュールを決定するためのプロセッサを含む。装置は、メディアデータコンテナにアクセスし、データパケットをメディアデータコンテナから読み出すことによって、第1および第2のデータパケットを決定された出力スケジュールに従って出力するための出力コントローラをさらに含む。

本発明の実施例に従って、記憶された第1および第2のデータパケットおよび関連した、記憶された第1および第2の制御パケットは、リップ同期化、クロックの復元および/またはクロックドリフトの調整のためにオンザフライで処理され得る。この種類のプレイバックは、記録されたメディアストリームの模擬的なライブ受信と同等である。

記録された受信ヒントトラック(第1/第2のデータパケット)および記録された、関連した受信ヒントトラック(第1/第2の制御パケット)は、全記録にわたる。プレイバックまたはリプレイの間、関連した受信ヒントトラックの制御データは、例えば、多重の将来のRTCP SRを考慮に入れることによる、正確なリップ同期化のために、例えば、RTCP SRの形式で、プリフェッチされる。ここで、将来のRTCP SRは、現在のプレイバックの時点の将来の時点に関係する。

本発明の利点は、関連した受信ヒントトラック、すなわち、メディアストリームの受信中の間の制御情報の記録が、単に複雑性を加えることなく、ファイルからのストリームの同期したプレイバックに関係する全ての情報の軽量な記録処理を可能にすることである。

記録されたファイルが長期間の記憶のために意図されたものであり、最終的には何回もプレイバックされる場合、各々のプレイバックの間、記憶された第1/第2のデータパケットおよび記憶された第1/第2の制御パケットを、それぞれ、関連したメタデータと一緒に分析することを避け、その代わり、さらなる処理をすることなく直接利用可能な、メディアタイミング、すなわち、第1/第2の記憶されたデータパケットによって含まれる第1/第2のメディアデータサンプルをリプレイするためのタイミングを有することが望ましい。

通常、これは、受信ヒントトラックからの記憶されたデータパケットの非パケット化、および、それを、トラック毎に一つのエレメンタリストリームとともに、関係したメディアデータコンテナ内のメディアトラックに保存することを意味する。これは、たとえば、伝送暗号化がストリームパケットに適用された場合、または記憶容量が限られている場合、常に可能であったり、望ましいわけではない。

伝送パケットの正確なタイミングに加えて、受信ヒントトラック(記憶された、第1/第2のデータパケットとメタ情報)について利用可能な、拡張された情報、特に、第1/第2データパケット内部のメディアデータ、たとえば、フレームアキュレイト(frame−accurate)SMPTEタイムスタンプ(SMPTE=Society of Motion Picture and Television Engineers)またはビデオトラックのサブタイトルについての情報を有することが望ましい。

この目的のため、本発明の実施例は、ファイルに関係するメディアデータコンテナ内に記憶された伝送プロトコルに関係するデータパケットを処理し、ファイルのメタデータコンテナ内の、記憶された、関連したメタ情報を処理するための装置を提供し、関連したメタ情報は、伝送タイミング情報および、メディアデータコンテナ内の、記憶されたデータパケットの位置を示す位置情報を含む。装置は、記憶されたデータパケットおよび記憶された、関連したメタ情報に基づいて、記憶されたデータパケットのペイロードのための符号化情報を決定するためのプロセッサを含み、復号化情報は、どの時点で、記憶されたデータパケットのどのペイロードをリプレイするかを示す。処理するための装置は、スタンドアロンのデバイスであってもよく、上述した、ファイルを記憶するための装置に組み込まれてもよい。

ある実施例によれば、記憶されたデータパケットは、MPEG−2伝送ストリームパケットを含んでもよい。別の実施例によれば、記憶されたデータパケットは、パケット化されたメディアデータを含むRTPパケットを含んでもよい。

本発明の実施例によれば、復号化情報は、メディアアクセスユニットについて決定される。すなわち、各アクセスユニット、たとえばメディアフレームに対して、復号化情報のサンプルが、ファイルのメディアデータコンテナ内に記憶され、復号化情報のサンプルは、メディア(たとえば、ビデオ/オーディオ)フレームを取得するために、記憶されたデータパケットのどの部分から、どのメディアデータサンプルを入手するかを示す。復号化情報のサンプルに関係するメタ情報は、メタデータコンテナ内の復号化情報メタデータトラック内に記憶される。それにより、復号化情報メタデータトラック(ISOベースのメディアファイルフォーマットの「トラック」ボックス/アトム)は、復号化のサンプルのためのタイミングおよび維持情報を含む。

記憶された復号化情報のサンプル、および、それらの関連した復号化情報メタデータトラック(以下、「仮想メディアトラック」とも記載する」は、関連した受信ヒントトラックのアイデアの基に形成され、プレイバックに対する上述した利点を与える。仮想メディアトラックのメタデータ部分において、メディアデータコンテナ内の、関係した復号化情報のサンプルのためのメディアタイミングが提供される。復号化情報のサンプルは、情報を提供し、その情報から、記憶されたデータパケットまたは伝送ユニットが、不要なメディアパケットの非パケット化を行なう、関係したメディアアクセスユニットのためのメディアデータを取得する。仮想メディアトラックは、受信ヒントトラック、もし必要であれば、関連した受信ヒントトラックからの情報を用いて、メディアストリームの最終的な受信の後に形成されてもよい。これは、「リバースドヒンティング(reversed hinting)処理」においてなされ、結果的に得られるファイルは、プレイバックデバイスが、ファイル内を検索し、メディアタイミングに基づいてメディアにランダムにアクセスすることを可能にする。

仮想メディアトラックは、不完全なメディアトラックとして見え得る。したがって、RTPおよびRTCP受信ヒントトラックから復元されたタイミングと、メディアトラックの全てのインデックス(典型的には、「サンプルテーブル」が用いられることによる)との両方が、適用され得る。

仮想メディアトラックは、受信ヒントトラック伝送ユニットからアクセスユニットを再構築するためのコンストラクタを含み得る復号化情報サンプル(仮想メディアサンプル)から形成されてもよい。また、復号化情報サンプルは、アクセスの再構築(不完全なコンストラクタ)に関係がある、一つ以上の重要伝送ユニットへのリンクを含んでもよい。さらに、仮想メディアトラックの、復号化情報サンプルまたは仮想メディアサンプルは、例えば、受信処理中にパケットが喪失した場合に空であってもよい。代替的には、仮想トラックの復号化情報サンプル(以下、仮想メディアサンプルとも記載する)は、標準的なメディアトラック内のように完全に解凍されたメディアサンプルを含んでもよい。

仮想メディアトラックのサンプルテーブル内のインデックスからの情報(および、たとえばタイムドメタデータトラックからの、全ての関連した情報)は、受信ヒントトラックの、対応する伝送ユニットへのリンクをたどることによって、基準受信ヒントトラックに論理的に適用される。

ストリームから記述を正確に復元することができない場合、仮想メディアトラックは、仮想メディアサンプルの、近似のかつ不完全な記述を含み得る。このことは、データパケットが暗号化されたり、非パケット化スキームが完全には知られていない場合に適用される。

仮想メディアトラックをリプレイするために、本発明の実施例は、ファイルを読み出すための装置を提供し、ファイルは、ファイルに関係するメディアデータコンテナ内に記憶された、ペイロードを含むデータパケットを有し、メディアデータコンテナ内に記憶された、データパケットのペイロードのための復号化情報を有し、復号化情報は、どの時点で、記憶されたデータパケットのどのペイロードをリプレイするかを示し、ファイルは、メディアデータコンテナ内に記憶された、関連したメタデータを有し、関連したメタデータは、復号化時間およびメディアデータコンテナ内の復号化情報の位置を示す。装置は、メディアデータコンテナ内の関連したメタデータにアクセスし、メディアデータコンテナ内の復号化情報に、メタデータに基づいてアクセスし、記憶されたデータパケットのペイロードに、復号化情報に基づいてアクセスすることによって、記憶されたデータパケットのペイロードの出力スケジュールを決定するためのプロセッサを含む。出力コントローラは、決定された出力スケジュールに従ってペイロードを出力するように動作する。

記憶中における、受信されたデータパケットのメディアトラックへのオンザフライでの変換に比べて、仮想メディアトラックは、メディアデータ(記憶されたデータパケット)の非パケット化の必要とせずに、メディアタイミングおよびメタデータを提供し、よって、記憶領域を節約できる。仮想メディアトラックは、プレイバックデバイスが、メディアタイミングに基づいてファイル内を検索することを可能にする。もし、標準的なメディアトラックがファイルに加えられれば、ファイルサイズが倍になり得るが、仮想メディアトラックは、ファイルサイズを倍にすることなく、メディアトラックおよび受信ヒントトラックの利点を組み合わせることができる。仮想メディアトラックのコンセプトにより、たとえば、エラーの隠蔽を手助けする喪失したパケットについての情報およびリップ同期化を手助けする受信タイミングについての情報など、元の受信処理の全ての情報が保持される。同時に、メディアアクセスのための従来のメディアトラックの全ての可能性が、発明に係る仮想メディアトラックにより与えられる。従来のメディアトラックに比べてさらなる柔軟性が与えられる。記憶された伝送ユニット(データパケット)がアクセスユニット(メディアフレーム)に対して完全に解凍された場合、または、たとえば、記憶領域を節約するために、コンストラクタまたはアクセスユニットの再構築のためのリンクのみが記憶された場合、サンプル毎に、それを決定してもよい。さらに、全ての可能性が、一つの仮想メディアトラック内で混合される。すなわち、復号化情報サンプルまたは仮想メディアサンプルは、完全なアクセスユニット、コンストラクタ、リンクを含んでいたり、空であったりする。

多重仮想メディアトラックは、同じ記録されたデータパケットストリームの異なるインデックスを可能にする、同じ受信ヒントトラックからの伝送ユニットまたはデータパケットを参照してもよい。たとえば、一つはオーディオに関係し、もう一つはビデオに関係する、ランダムアクセスを有する2つの仮想メディアトラックは、同じMPEG−2伝送ストリームの受信ヒントトラックのオーディオおよびビデオのためのインデックスを指し示すようにしてもよい。

受信され、記憶されたデータパケットにおいて暗号化されたメディアデータサンプルのプレイバックまたはリプレイを可能にするため、関連したキーストリームメッセージは、データパケットは別にして、ファイルのメディアコンテナ内に記憶されてもよい。本発明の実施例によれば、キーストリームメッセージは、キーストリーム受信ヒントトラックのサンプル内に記憶される。受信時間(伝送時間)は、キーメッセージを対応する受信ヒントトラック内の暗号化されたメディアパケットに割当てるためのキーストリームサンプルのタイムスタンプとして用いられ得る。トラックリファレンスは、キーストリーム受信ヒントトラックをメディア受信ヒントトラックに関連付けるために用いられる。

ファイルを記録するという目的のため、本発明の実施例は、関係するメディアデータコンテナおよびメタデータコンテナを有するファイルを記録するための装置を提供する。装置は、各々がペイロードを含むデータパケットを受信し、複数の暗号化キーを含むキーストリームパケットを受信するための受信器を含み、各暗号化キーはデータパケットのペイロードに関連付けられる。装置は、メディアデータコンテナ内に受信されたデータパケットおよび受信されたキーストリームパメットを記憶し、メタデータコンテナ内に関連したメタデータを記憶するためのレコーダを含み、関連したメタデータは、受信されたデータパケットおよび受信されたキーストリームパケットの伝送タイミング情報と、メディアデータコンテナ内の、記憶されたデータパケットおよび記憶されたキーストリームパケットの位置を示す位置情報とを含む。データパケットおよびキーストリームパケットを記録するための装置は、スタンドアローンデバイスであってもよく、上述した、記憶および/または処理のための装置に内蔵された、または組み合わせされたデバイスであってもよい。

本発明の実施例によれば、レコーダは、メディアデータコンテナの第1のチャンク内のサンプルとして、受信されたデータパケットを記憶し、メディアデータコンテナの第2のチャンク内のサンプルとして、受信された、関連するキーストリームパケットを記憶するように適合される。本発明の実施例によれば、レコーダは、メディアデータコンテナの第1のトラック内にデータパケットの伝送タイミング情報および位置情報を記憶し、メタデータコンテナの第2のトラック内に、キーストリームパケットの伝送タイミング情報および位置情報を記憶するように適合される。

本発明のある実施例によれば、ファイルは、ISOベースのメディアファイルフォーマットに基づく。

本発明のある実施例によれば、データパケットは、MPEG−2伝送ストリームパケットを含む。

本発明の別の実施例によれば、データパケットは、パケット化されたメディアデータサンプルを含むRTPパケットを含む。

データパケットストリームおよび関連したキーストリームの受信後のプレイバックを容易にするため、キーストリーム受信ヒントトラックを仮想メタデータトラックに変換するためのワンタイム処理が行われ得る。伝送タイミングを有するキーストリーム受信ヒントトラックからのキーメッセージは、上述した仮想メディアトラックと同様に、メディアタイミングを有する仮想メタデータトラック内のキーサンプルに変換される。必要であれば、メディアトラック内の全てのメディアサンプルが、キートラック内に関連したキーサンプルを有するように、キーサンプルが仮想的に倍にされる。

したがって、特に、暗号化されたアクセスユニットが伝送ユニットから再構築される場合(コンテンツの暗号化の場合)、メディアアクセスユニットとキーメッセージとの間の正確な時間的な関係を作成することが可能である。

リプレイする実施例がファイルを読み出すための装置を提供するために、ファイルは、パケット化されたメディアデータサンプルを含む、記憶されたデータパケットを有し、ファイルは、ファイルに関係するメディアデータコンテナ内に、記憶された、関連したキーストリームパケットを有する。ファイルは、メタデータコンテナ内に、記憶された関連したメタデータを記憶し、関連したメタデータは、受信されたデータパケットおよび受信されたキーストリームパケットの伝送タイミング情報と、メディアデータコンテナ内の記憶されたデータパケットおよび記憶されたキーストリームパケットの位置を示す位置情報とを含む。また、装置は、データパケットに基づき、関連したメタ情報に基づき、かつ記憶されたキーストリームパケットおよび関連したキーストリームメタ情報に基づいて、復号化情報を記憶されたデータパケットのペイロードに割当てるためのプロセッサを含み、復号化情報は、記憶されたデータパケットのペイロードをリプレイするために、どの暗号化キーをどの時間で用いるかを示す。割当てられた復号化情報に基づいて、復号化されたデータパケットを出力するために、出力が提供される。

本発明の実施例は、キーメッセージの受信タイミングおよび受信されたデータパケットに対するタイミングの関係を十分に維持する。本発明の実施例は、記憶されたデータパケットを含むメディアトラック内の全ての対応するメディアサンプルに対して、ファイルが、キーメッセージを有するメタデータトラックを含む場合、記録されたファイルからプレイバックに最適化されたファイルへの変換を可能にする。したがって、プレイバック中に、正しいキーを求めて記憶されたキートラックを解析(parse)する必要はない。

本発明の他の目的および特徴は、添付の図面とともに考慮される以下の詳細な説明から明らかになる。

図1は、本発明のある実施例に従う、ファイルを記録するための装置の概略ブロック図である。 図2は、本発明のある実施例に従う、関係するメディアデータコンテナおよびメタデータコンテナを有する、記録されたファイルの概略的なファイル構造を示す。 図3は、ISOベースのメディアファイルフォーマットに基づくファイルの概略構造を示す。 図4は、本発明のある実施例に従う、ファイルを記録するための方法のフローチャートを示す。 図5は、本発明の他の実施例に従う、ファイルを記録するための他の方法のフローチャートを示す。 図6は、本発明のある実施例に従う、仮想メディアトラックを取得するために、ファイルを記録および処理するための装置の概略的なブロック図を示す。 図7は、本発明のある実施例に従う、仮想ビデオトラックを有する、記録されたファイルの概略構造を示す。 図8は、本発明のある実施例に従う、データパケットを記録し、仮想メディアサンプルを作成し、仮想メディアサンプルによってデータパケットを記憶することにより構成されたメディアサンプルをリプレイするための方法のフローチャートを示す。 図9は、本発明のある実施例に従う、記憶されたデータのペイロードによって形成されたメディアフレームを参照する仮想メディアサンプルの記述的な情報を取得する態様の例を示す。 図10は、本発明のある実施例に従う、受信ヒントトラックおよび仮想メディアトラックのサンプルのマッピングを示す。 図11は、本発明の別の実施例に従う、ファイルを記録するための装置の概略的なブロック図を示す。 図12は、携帯TV環境においてキーストリームとメディアとの同期化の原理を示す。

図1は、関係するメディアデータコンテナ104およびメタデータコンテナ106を有するファイル102を記録するための装置100の概略的なフローチャートを示す。

装置100は、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット110を受信し、第1のクロックとは異なる第2のクロックに基づく第2のメディアデータサンプルを含む第2のデータパケット112を受信するための受信器108を含み、第2のメディアデータサンプルは、第1のメディアデータサンプルに関連付けられる。さらに、受信器108は、基準クロックに対する第1のクロックの関係を示すための情報を含む、第1の制御パケット114を受信し、基準クロックに対する第2のクロックの関係を示すための情報を含む、第2の制御パケット115を受信するように動作する。さらに、装置100は、受信された第1および第2のデータパケット110,112、および、受信された第1および第2の制御パケット114,115の少なくとも一部を、メディアデータコンテナ104内に記憶し、関連したメタデータをメタデータコンテナ106内に記憶するためのレコーダ116を含む。関連したメタデータは、受信された第1および第2のデータパケット110,112、および、受信された第1および第2の制御パケット114,115のタイミング情報を含む。さらに、関連したメタデータは、メディアデータコンテナ104内の、記憶された第1および第2のデータパケット110,112、および、記憶された第1および第2の制御パケット114,115の位置を示す位置情報を含む。

本発明の実施例によれば、第1のデータパケット110は、パケット化された第1のメディアデータサンプル(例えば、ビデオ)を含む、第1のストリーム配信されたRTPパケットであり得、第2のデータパケット112は、パケット化された第2のメディアデータサンプル(例えば、オーディオ)を含む、第2のストリーム配信されたRTPパケットであり得る。したがって、第1の制御データパケット114は、第1のストリーム配信されたRTPパケット110に関連付けられたRTCPパケットであり得、第2の制御データパケット115は、第2のストリーム配信されたRTPパケット112に関連付けられた、RTCPパケットであり得る。

本発明の実施例によれば、ファイル102は、ISOベースのメディアファイルフォーマットに基づくファイルであり得る。例えば、ファイルフォーマットは、MPEG−4と互換性のあるファイルフォーマットであり得、すなわち、ファイル102は、ISO/IEC14496−14によって規定された、いわゆるMP4ファイルであり得る。MP4ファイルフォーマットは、メタデータコンテナ106に記憶されたメタデータから構成され、メタデータは、メディアデータコンテナ104内に記憶されたメディアに典型的に関係する情報を記述する。メディアデータコンテナ104は、ファイル102の外部にあってもよい。例えば、メディアデータコンテナ104は、ファイル102内のリンクによって参照され得る、別個の記憶位置にあってもよい。普通は、メディアデータコンテナ104内に記憶されたメディアデータは、暗号化されたビデオおよび/またはオーディオデータである。関係する明細書において、コンテナ104および106は、「ボックス」(または「アトム」)と呼ばれるデータ構造体である。

典型的には、ボックスは、サイズフィールド、タイプフィールドおよびデータフィールドから構成される。サイズフィールドを含むボックス全体の大きさ、すなわち、バイト数は、サイズフィールドに収容される。通常は4文字のボックス識別子は、ボックスのタイプフィールド内に記憶される。実際のヘッダーデータおよびメディアデータは、データフィールド内に記憶される。そのようなボックス構造体を用いて、上述したMP4ファイルフォーマットを形成するメタデータコンテナ106は、典型的には、ムービーボックス「moov」と呼ばれる。同様に、メディアデータコンテナ104は、メディアデータボックス(以下、「mdat」)と呼ばれる。

メディアデータコンテナmdat104は、典型的には、一連のデータユニットまたは、いわゆるチャンクにグループ化されるサンプルから構成される。チャンクは、異なるサイズのものなることができ、チャンク内のサンプルは異なるサイズを有することができる。

本発明の実施例によれば、レコーダ116は、メディアデータコンテナ104の第1のチャンク118内に、サンプルとして、第1および第2の受信されたデータパケット110,112を記憶するように適合される。図2から理解できるように、レコーダ116は、さらに、メディアデータコンテナ104の第2のチャンク122内に、サンプルとして、受信された、関連する第1および第2の制御パケット114,115の少なくとも一部を記憶するように適合される。

チャンク118,122の記憶は交互的な態様でなされる。
したがって、チャンクのサンプルは、一つ以上の、受信されたデータパケットを含み得る。すなわち、第1のチャンク118のサンプルは、一つ以上の、受信された第1および/または第2のRTPパケット110,112を含み得、第2のチャンク122のサンプルは、受信された第1および/または第2の制御パケット114,115の、一つ以上の第1および/または第2のRTCP SRを含み得る。

複数の第1のチャンク118は、(RTP−)受信ヒントトラックの、メディアデータ部分とみなされ得る。同じように、複数の第2のチャンク122は、受信ヒントトラックに対して関連した(RTCP−)受信ヒントトラックのメディアデータ部分とみなされ得る。すなわち、図1または図2の場合において、全ての、受信されたRTPパケット110,112に対して、一つのRTP受信ヒントトラックがあり、全ての、受信されたRTCPパケット114,115またはRTCP SRに対して、一つの、関連したRTCP受信ヒントトラックがある。これは、記録の複雑性が最小であることを意味する。

RTCP受信ヒントトラックは、RTCP受信ヒントトラックの、関係した基本RTP受信ヒントトラックのSDP(Session Description Protocol)情報との組み合わせにおいてのみ有用であるにも関わらず、RTCP受信ヒントトラックは、ジェネリックパケットペイロードコンフィギュレーションデータを必要としない。

RTCP受信ヒントトラックサンプルペイロードは、未加工のRTCPパケットから構成される。この未加工のRTCPパケットは、一つのサンプル内に多重のRTCPパケットの記憶ができるようにするために、RTCPパケットのRTCPヘッダーとともに直接含まれるか、別の構造体の内部で包含される。

RTCPサンプルのタイミングは、それに関係するRTP受信ヒントトラックのタイミング方法に依存する。もし、RTP受信ヒントトラックが、復号化時間をRTPタイムスタンプから引出していると、RTCP受信ヒントトラックも、RTCPパケット内のRTPタイムスタンプから、その復号化時間を引き出す。もし、受信タイミングがRTP受信ヒントトラックのために用いられるのであれば、受信タイミングは、RTCPパケットを記憶するためにも用いられる。一般的に、RTP受信ヒントトラックおよびRTCP受信ヒントトラックの両方とも、同期され、同じ時間に基づいて利用される。

図1および2に示すように、レコーダ116は、第1および第2の、受信されたデータパケット110,112のタイミング情報および位置情報をメディアデータコンテナ106の第1のメタデータトラック124内に記憶し、第1および第2のデータパケット110,112に関連した、受信された、第1および第2の制御パケット114,115のタイミング情報および位置情報を、メディアデータコンテナ106の第2のメタデータトラック128内に記憶するように適合される。記憶処理のより詳細な記述は、図3を参照して与えられる。

第1のメタデータトラック124は、RTP受信ヒントトラックのメタデータ部分としてみなされ得る。同様に、第2のメタデータトラック124は、受信ヒントトラックに関連したRTCPヒントトラックのメタデータ部分として見なされ得る。

図2の例では、個々のメディアストリーム(たとえば、ビデオ/オーディオ)は、たとえば、RTPパケットとともに記憶された各々のメディアタイプについてのSDP情報を用いることによって、後の段階において、単一のRTP受信ヒントトラックおよび単一の、関連したRTCP受信ヒントトラックとから識別される。

図2は、RTP受信ヒントトラックおよび関連したRTCP受信ヒントトラックを有する、ISOメディアファイル102の構造を示す。

前述したように、ファイル102は、メタデータコンテナ105を含み、メタデータコンテナ106は、メディアデータコンテナ104内で、第1のチャンク118−1,118−2内などのサンプルとして記憶された、受信されたRTPパケットに関係するタイミング情報を含むRTP受信ヒントトラックを含む。すなわち、RTP受信ヒントトラック124は、受信の間、記憶された(第1および第2の)RTPパケットの伝送タイミングの情報を含む。

この伝送タイミングは、受信器108の受信クロックのタイムスタンプ、および/または、受信されたRTPパケット110,112のRTPタイムスタップであり得る。すなわち、各RTPパケットまたはサンプルに対して、RTP受信ヒントトラックのメタデータ部分124は、RTPパケット110,112がいつ受信されたかについての標識および、付加的に、メディアデータコンテナ104内のどこにRTPパケットが記憶されたかについての情報を含む。

関連したRTCP受信ヒントトラックのメタデータ部分128にも同じことが当てはまる。RTCP受信ヒントトラックのメタデータ部分128は、第2のチャンク122内に記憶された、受信されたRTCPパケットの伝送タイミング情報を含む。

伝送タイミング情報は、たとえば、関係するRTCPパケットの受信時間、または、RTCPパケットに関係するRTPパケットのRTPタイムスタンプであり得る。さらに、関連したRTCP受信ヒントトラックのメタデータ部分128は、メディアデータコンテナ104内においてRTCPパケットがどこに記憶されたかを示す位置情報を含む。

別の実施例によると、それらのSDPパラメータは、異なるメディアに関係するRTPセッションが、別個のRTP受信ヒントトラックおよび別個の関係したRTCP受信ヒントトラックにすぐに記憶され得るように、記録処理中に直接分析され得る。

それゆえ、本発明の実施例によれば、レコーダ116は、第1の受信されたデータパケット110をサンプルとしてメディアデータコンテナ104の第1のチャンク内に記憶するように適合される。さらに、レコーダ116は、第2の受信されたデータパケット112をサンプルとしてメディアデータコンテナ104の第2のチャンク内に記憶するように適合される。レコーダ116は、関連した第1の制御パケット114の少なくとも一部をサンプルとしてメディアデータコンテナ104の第3のチャンク内に記憶し、受信された、関連した第2の制御パケット114の少なくとも一部をサンプルとしてメディアデータコンテナ104の第4のチャンク内に記憶するように適合される。

チャンクの記憶は、交互的な態様でなされ得る。すなわち、本発明の実施例によれば、第1のメディアストリーム(たとえばビデオ)に関係する第1のRTPパケットは、第2のメディアストリーム(たとえばオーディオ)に関係する第2のRTPパケット112、および関連した第1および第2のRTCPパケットまたは少なくとも第1および第2のRTCPセンダーレポートは、交互的な態様で、第1、第2、第3および第4のチャンクのサンプルとして記憶され得る。

したがって、チャンクのサンプルは、一つ以上の受信されたデータパケットを含み得る。すなわち、第1のチャンクのサンプルは、一つ以上の受信された第1のデータパケット110を含み、第2のチャンクのサンプルは、一つ以上の受信された第2のデータパケット112を含み、第3のチャンクのサンプルは、受信された第1の制御パケット114の一つ以上の第1のRTCP SRを含み、第4のチャンクのサンプルは、受信された第2の制御パケット115の一つ以上の第2のRTCP SRを含み得る。

複数の第1のチャンクは、第1のパケット110のメディアに関係する第1の受信ヒントトラックのメディアデータ部分としてみなされ得る。複数の第2のチャンクは、第2のパケット112のメディアに関係する第2の受信ヒントトラックのメディアデータ部分としてみなされ得る。複数の第3のチャンクは、第1の受信ヒントトラックに対して関連したヒントトラックのメディアデータ部分としてみなされ得る。同様に、複数の第4のチャンクは、第2の受信ヒントトラックに対して関連したヒントトラックのメディアデータ部分としてみなされ得る。すなわち、RTP受信ヒントトラックおよびRTCP関連した受信ヒントトラックの事例において、受信ヒントトラックは、全ての識別されたRTPセッションに対して記録され得、関連した受信ヒントトラックは、記録されたRTP受信ヒントトラックの各々に対して記録され得る。

本発明のある実施例によれば、レコーダ116は、メディアデータコンテナ106の第1のメタデータトラック内に、第1の受信されたデータパケット110のタイミング情報および位置情報を記憶し、メタデータコンテナ106の第2のメタデータトラック内に、第2の受信されたデータパケット112のタイミング情報および位置情報を記憶するように適合される。レコーダ116は、メディアデータコンテナ106の第3のメタデータトラック内に、第1のデータパケット110に関連した、受信された第1の制御パケット114のタイミング情報および位置情報を記憶し、メディアデータコンテナ106の第4のメタデータトラック内に、第2のデータパケット112に関連した、受信された第2の制御パケット115のタイミング情報および位置情報を記憶するように適合される。

図3に移って、ISOメディアベースのフォーマットに基づくファイルのメタデータコンテナ106のより詳細な説明が与えられる。

ISOメディアベースのフォーマットに基づくファイルに対して「moov」と呼ばれるメディアデータコンテナ106は、全体的なヘッダー情報を含む、ムービーヘッダーボックス「mvhd」の形式の、要求されたボックス302と、複数の「trak」ボックス304(図3中では一つのみ示される)とを用いて、ボックスの層にされる。トラックボックス304は、さらに、2層にされ、トラックヘッダーボックス「tkhd」306が、トラックの特性を規定する。

trakボックス304は、さらに、全てのオブジェクト、すなわち、トラック内のデータパケット(通常はメディアデータ)について公表情報を含むメディアボックス「mdia」308を含む。mdiaボックス308は、メディアヘッダーボックス「mdhd」310およびハンドラリファレンスボックス「hdlr」312を含む。メディアヘッダーボックスmdhd310は、メディアから独立し、受信ヒントトラック内の「メディア」、すなわち、データパケットのカバー特性に関係する全体的な情報を含む。ハンドラリファレンスボックスhdlr312は、トラック内の「メディアデータ」を提供するプロセスと、したがって、トラック、たとえば受信ヒントトラック内の「メディア」の特質とを公表する。

また、メディアボックスmdia308は、メディア情報ボックス「minf」314を含む。このボックスは、ヒントトラック内の「メディア」(データパケット)の特性情報を公表する全てのオブジェクトを含む。メディア情報ボックスminf314は、さらに、ヒントトラックのための一般的な情報を含むヒントメディアヘッダーボックス「hmhd」316を含む。さらに、データ情報ボックス「dinf」318は、メディア情報ボックスminf314によって含まれる。データ情報ボックスdinf318は、トラック内のメディア情報の位置を公表するオブジェクトを含む。

さらに、サンプルテーブルボックス「stbl」320が、メディア情報ボックスminf314によって含まれる。少なくとも一つのチャンクおよびメディアデータコンテナmdat104のサンプルのデータは、このボックス内に含まれ、各アイテムとリンク付けされる。stbl320内のアイテムを記述するために、sttsボックス322が一つのサンプルの持続時間を含み、stsdボックス324がサンプルの細目を含み、
stsz326がサンプルのサイズを含み、stsc328がチャンク内の含まれるサンプルの数、すなわちデータパケットの数を含み、stcoボックス330が、チャンクオフセットを含み、各々が、メディアデータコンテナ104内のサンプル/パケットにリンク付けされるということが観察される。

前述したように、レコーダ116は、関係する受信ヒントトラックのメタデータ部分14,128内に、受信されたデータパケット110,112の(伝送)タイミング情報および位置情報を記録するように適合される。特に、受信タイムスタンプから引出されたタイミング情報もしくは後の受信されたデータ/制御パケットから引出された相対的なタイミング情報であり得るタイミング情報が、トラック124,128の関係したサンプルテーブルボックスstbl320内に記憶される。

メタデータトラック124,128トラックにより含まれるサンプルテーブルボックスstbl320内の受信されたデータパケットの、時間に関係したメタデータ情報を受信し、記憶する処理を示すチャートが図4に示される。

第1のステップ402にて、RTPパケットまたはRTCPパケットであり得るデータパケットが、受信器108により受信される。第2のステップ404にて、受信されたデータパケットに関係するタイミング情報が、レシーバ108のシステムクロックによって受信タイムスタンプの形で、もしくは受信されたデータパケットのRTPタイムスタンプから取得される。後に続くステップ406にて、先行する受信されたデータパケットに対する時間差が演算される。ステップ408にて、演算された時間差が、個々のメタデータトラックのsttsボックス322に書き込まれる。sttsは、受信タイミングから夫々サンプル番号、すなわち、受信され、記憶されたパケットへの索引付けを可能する。すなわち、本発明の実施例によれば、サンプルボックスstts322についての復号化時間は、受信時間差:RT(n+1)=RT(n)+stts(n)を含む。ここで、RT(n)は、パケットnに対する受信時間を意味し、stts(n)は、パケットnに対する未圧縮のテーブルエントリである。

前述したように、メディアデータコンテナ104内のサンプル(パケット)は、チャック110,112にグループ分けされる。それらのチャンクは、サイズが異なってもよく、チャンク内のサンプルもサイズが異なってもよい。チャンクボックスstsc328へのサンプルは、特定のサンプルを含むチャンク、その位置および関連したサンプルの記述を見つけるために用いられ得る。各エントリは、同じ特性を有するチャンクのラン(run)の第1のチャンクのインデックスを与える。ここの一つのエントリを前のエントリから減じることにより、個々のランにチャンクがいくつあるかを演算することができる。チャンク毎の適切なサンプル数を乗じることにより、これをサンプルのカウントに変換することができる。

チャンクオフセットテーブルstcoまたはco64 330は、メディアデータコンテナ104に、各チャンクのインデックスを与える。32ビットまたは64ビットのオフセットの使用を許容する2つの型がある。後者は、非常に大きなファイル102を管理する際に有用である。オフセットは、大抵、ファイルオフセットであって、ファイル(たとえばメディアデータコンテナ)内のボックスに入れられるオフセットではない。これは、ボックス構造の無いファイル内のメディアデータを参照することを可能にする。

したがって、本発明の実施例によれば、レコーダ116は、ファイルに入れられる各第1のチャンクのインデックスを示す第1のチャンクオフセットテーブル330を記憶するように適合される。これは、図5を参照して説明される。

第1のステップ502にて、受信器108によるデータパケットの受信の後、受信されたデータパケット110,112は、第2のステップ504にて、ファイル102に関係するメディアデータコンテナ104内に記憶される。それによって、受信されたデータパケット110,112は、メディアデータコンテナ104内の記憶アドレスにてサンプルとして記憶される。第3のステップ506にて、ファイル102(メディアデータコンテナ104がファイル102に含まれる場合)の始め、または、メディアデータコンテナ104(メディアデータコンテナ104が別個のファイルに言及していた場合)の始めへの記憶アドレスのオフセットが演算される。その後、演算されたオフセットが、関係するメタデータトラック124のstcoまたはco64ボックス330に書き込まれる。

制御パケット114,115およびそれらの関係するメタデータトラック128についても同様のことが当てはまる。

上述したことを要約するため、以下においてより詳細に説明される、たとえば、RTP/RTCP受信ヒントトラックまたはキーストリーム受信ヒントトラックなどの、受信ヒントトラックまたは関連した受信ヒントトラックを作成するための実行される動作に対して外観が与えられる。以下において説明される仮想メディアトラックに対しても同様のことが当てはまる。ISOベースのメディアファイルに基づくファイル102にトラックが加えられる場合、典型的には、本発明の実施例に従う装置100によって以下の動作が実行される。

・moovボックスに新しいtrakボックスを加える。
・新たに作成されたtrakに新しいtkhdボックスを加える。このボックスは、トラックの特性(たとえば、作成時間、トラックID、「メディア」トラックの寸法および持続時間)を含むことになる。

・新たに作成されたtrakボックスに、新しいtrefボックスを加える。このボックスは、トラックのつながり、すなわち、トラックがそれ自身で成り立っているか、または他のトラックとの組み合わせにおいてのみ用いることができるかを示す。なお、あの受信ヒントトラックは、trefボックスを用いてトラックリファレンスを介してリンク付けされるか、または、たとえば、2つ以上のトラックをリンク付けするために用いられることができるデータを含むサンプル記述を介して、暗にリンク付けされる。

・新たに作成されたtrakボックスに新しいmdiaボックスを加える。
・新たに作成されたmdiaボックスに新しいmdhdボックスを加える。このボックスは、トラック内のメディアの特性(たとえば、メディアの持続時間および言語)を含むことになる。

・新たに作成されたmdiaボックスに新しいhdlrボックスを加える。このボックスは、典型的にはそのようなメディアを消費することができる処理のためのアイデンティフィケイションを含むことになる。アドバンスド受信ヒントトラック(たとえば、RTCP受信ヒントトラック)の場合、このアイデンティフィケイションは「hint」である。

・新たに作成されたmdiaボックスに新しいminfボックスを加える。
・新たに作成されたminfボックスに新しいhmhdボックスを加える。このボックスは、hintトラックに対する情報ヘッダーを含むことになる。

・新たに作成されたmdiaボックスに新しいdinfボックスを加える。
・新たに作成されたdinfボックスに、トラックの未加工のデータが、ファイル自体の中にあるか、外部にあるか、例えば、別のファイル内にあるか、またはURI(Uniform Resource Identifier)を介して利用可能であるかを示す、新しいdrefボックスを加える。

・新たに作成されたminfボックスに、新しいstblボックスを加える。このボックスは、タイミング、および、トラック内のサンプル(たとえば、RTP/RTCPまたはキーストリームパケット、仮想メディアサンプル)の索引付けをするデータを含むボックスのためのコンテナである。
・新たに作成されたstblボックスに新しいstsdボックスを加える。このボックスは、メディア(一般的には4CCと呼ばれる)のアイデンティフィケイション、および、サンプルのアウトオブバンド構造を含む。

・新たに作成されたstblボックスに、新しいsttsボックスを加える。このボックスは、トラック内のメディアの各個々のサンプル(たとえば、RTP/RTCPまたはキーストリームパケット、仮想メディアサンプル)の持続時間についての情報を含むことになる。

・新たに作成されたstblボックスに、新しいstscボックスを加える。このボックスは、チャンクにグループ分けされたサンプル(たとえば、RTP/RTCPまたはキーストリームパケット、仮想メディアサンプル)の数についての情報を含むことになる。

・新たに作成されたstblボックスに、新しいstszボックスを加える。このボックスは、トラック内のメディアの各個々のサンプル(たとえば、RTP/RTCPまたはキーストリームパケット、仮想メディアサンプル)のサイズについての情報を含むことになる。
・新たに作成されたstblボックスに、新しいstcoまたはco64ボックスを加える。このボックスは、各チャンクの第1のバイトのファイルオフセットについての情報を含むことになる。
・サンプルテーブルにおいて許容される別のボックス、たとえば、ランダムオフセットのために用いられることができるサンプル(たとえば、RTP/RTCPまたはキーストリームパケット、仮想メディアサンプル)を索引付けするstssボックスを、任意に加える。

サンプルは、ギャップのない、サンプルの連続的なブロックであるチャンクにグループ分けされる。サンプルがファイルに加えられない場合、サンプルは、既存のチャンクに添付されるか、新しいチャンクが開始される。各々の新しいサンプルのために、sttsおよびstszボックスにエントリが加えられ、stscボックスが、現在のチャンク内のサンプルの数を反映するように変更される。サンプルが新しいチャンクに書き込まれる場合、新しいエントリがstco(またはco64)に添付され、stscボックスは、新しいチャンク内のサンプルの数を反映するように変更される。チャンク、すなわち未加工のサンプルデータそのものは、mdatボックス内のファイルまたは(ファイル内から参照可能な)外部のファイルに書き込まれる。

デバイスの動作に依存して、アドバンスド受信ヒントトラックは、(RTCPおよびキーストリーム受信ヒントトラックと)平行にファイルに書き込まれる。すなわち、(仮想メディアトラックに対する)オフライン動作中の後の時点において、新しいデータが到着または加えられると、サンプルは、ファイルに加えられる。

受信ヒントトラックおよび関連した受信ヒントトラック内の、受信されたデータパケット110,112および関連した制御メッセージ114,115の平行的な記憶は、記録および/またはタイムシフティングアプリケーション中における理想的な解決手段である。しかしながら、記録されたファイル102が長期間の記憶を意図されており、結果的に、何回もプレイバックされる場合、全てのプレイバック中において記憶されたデータを分析することを避け、別の計算なしに直接利用可能なメディア時間を有することが望ましい。通常、これは、(RTP)受信ヒントトラックからのデータを非パケット化し、トラック毎に一つのエレメンタリストリームを用いてエキストラメディアトラックにそれを保存することを意味する。これは、たとえば、伝送暗号化が、ストリームデータパケットに対して適用されたり、記憶容量が制限されていた場合、いつも可能であったり、望ましいわけではない。メディアデータコンテナ104に記憶された伝送パケットの正確なタイミングに加えて、受信ヒントトラックについて利用可能な拡張された情報、特に、メディアストリーム内についての情報、たとえば、フレームアキュレイトSMPTEタイムスタンプまたはビデオトラックのためのサブタイトルを有することが望ましい。

記録されたメディアストリームの各プレイバック中における複雑な処理をすることなく、異なる記録されたメディアストリーム間で即時の正確なタイミング同期を提供することが望ましい。すなわち、記録されたメディアストリームがプレイバックされる度に記録されたメディアストリームが非ジッター化されることを必要とせず、記録されたファイルのプレイバックのために、全ての含まれるストリームのクロックの復元が必要でないことが望ましい。

図6に移って、本発明の実施例に従って、記憶されたデータパケットおよび記憶された関連したメタデータ情報を処理するための装置600が示される。

記録されたデータパケットおよび記録された関連したメタ情報に基づいて、どの時点で記憶されたデータパケットのどのペイロードをリプレイするかを示す、記憶されたデータパケットのペイロードのための復号化情報を決定するためのプロセッサ602において、装置600は、図1に示した装置100と異なる。装置600は、装置100を拡張したものであり得るが、特に、装置600が、記憶された、たとえばMPEG−2 TSパケットのような非RTP/RTCPパケットを処理するために用いられない場合、装置600は、別個のものでもあり得る
図6に示される実施例において、データパケットは、ファイル102に関係するメディアデータコンテナ104内に記憶される。メタ情報は、上述したように、ファイル102のメタデータコンテナ106内に記憶される。記憶されたデータパケットは、メディアデータコンテナ104のチャンク118,122内にサンプルとして記憶され得る。サンプルおよび/またはチャンクは、メタデータコンテナ106内の関連したメタデータトラック124,128によって参照される。

本発明のある実施例によれば、記憶されたデータは、上述したように、第1および第2のパケット化されたメディアデータを含む第1および第2のRTPパケット110,112、および、関連した第1および第2のRTCPパケット114,115を含み得る。

本発明の別の実施例によれば、記憶されたデータパケットは、一つ以上のプログラム、典型的には、オーディオおよびビデオのストリーム多重送信を含む、MPEG−2伝送ストリームデータパケットを含み得る。MPEG−2伝送ストリームデータパケットは、典型的には、188バイトの長さを有する。

本発明のある実施例によれば、決定された復号化情報は、メディアデータコンテナ104内に復号化情報サンプルの形で記憶される。したがって、各復号化情報サンプルは、アクセスユニット、たとえば、受信ヒントトラックのメディアデータ部分内に記憶されたデータパケットから再構築され得るビデオまたはオーディオフレームに関係する。

プロセッサ602は、復号化情報サンプルが、メディアアクセスユニットの開始アドレスおよび終了アドレスを示すように、メディアフレームに基づいて復号化情報サンプルを決定するように適合される。開始アドレスは、メディアアクセスユニットの開始を示すメディアデータサンプルの位置を示し、終了アドレスは、メディアアクセスユニットの終了を示すメディアデータサンプルの位置を示し、メディアデータサンプルは、メディアデータコンテナ104内のデータパケットによって含まれる。

プロセッサ602は、仮想メディアサンプルとしてメディアデータコンテナ104内のチャンク604内に復号化情報を記憶するためにメディアデータコンテナ104にアクセスし得る。さらに、プロセッサ602は、復号化情報サンプル(仮想メディアサンプル)に関係し、復号化時間およびメディアデータコンテナ104内のメタデータトラック606内における復号化情報サンプルの位置を示す復号化メタ情報を記憶するために、メディアデータコンテナ106にアクセスし得る。前述したように、復号化情報サンプルは、各々が関係したビデオまたはオーディオストリームのアクセスユニットを参照する仮想メディアサンプルとして見られ得る。仮想メディアサンプルは、関係するオーディオ/ビデオフレームをメディアデータコンテナ104内の記憶されたデータパケットからどのようにして再構築するかについての情報を含む。

図7に移って、メディアデータコンテナ104内に仮想メディアサンプル704を、メタデータコンテナ106内に関連した仮想メタデータトラック706を含むファイル702が示される。

ファイル702は、メディアデータコンテナ104に含まれるチャンク708内にRTPパケットを記憶し、チャンク710によって含まれるRTCPパケットを記憶する。RTPパケットを記憶するため、関連したRTPメタデータトラック712がある。RTCPパケットを記憶するために、RTCPメタデータトラック714がメタデータコンテナ106内にある。

矢印で示されるように、仮想メディアチャンク704内の仮想メディアサンプルは、チャンク708に記憶されたRTPパケットに関係する。仮想メディアサンプルは、チャンク708に記憶された、記憶された伝送ユニット、すなわちデータパケットから、アクセスユニット、すなわち、たとえばメディアフレームを再構築するためのコンストラクタを含んでもよい。仮想メディアサンプルは、特定のアクセスユニット(不完全なコンストラクタ)の再構築に関係する、一つ以上の重要な伝送ユニットへのリンクを含んでもよい。また、仮想メディアサンプルは、たとえば、受信中にパケットを損失した場合、空であってもよい。さらなる変形例は、仮想メディアサンプルが、標準的なメディアトラックの場合のように、メディアフレームを記述する、完全に解凍されたメディアサンプルを含むことである。

仮想メディアサンプルのジェネリックペイロードコンフィギュレーションデータは、同じ種類の非仮想メディアトラックのジェネリックペイロードコンフィギュレーションデータを含む。たとえば、H.264でコード化されたビデオのための仮想メディアトラックも、サンプル記述の内部のavcCボックス内にAVCコンフィギュレーションレコードを含むことになる。加えて、それは、受信ヒントトラックの非ヒンティング処理についての情報、たとえば、仮想メディアトラックのサンプルペイロードに与えられる情報を用いることによって受信ヒントトラックから再組み立てされるメディアサンプルの最大のサイズを含み得る。

仮想メディアトラックのサンプルのペイロードは、受信ヒントトラックからメディアサンプルデータを取り出す処理を記述した「コマンド」から構成される。これらのコマンドは、ヒントトラックのためのパケットコンストラクタから取り出され、「イミディエイトコンストラクタ」、「サンプルコンストラクタ」および「サンプル記述コンストラクタ」を含む。イミディエイトコンストラクタは、「Length」、「data」および「pad」のフィールドから構成される。「Length」は、「data」のフィールドの長さを示す。「pad」は、余分に容易された領域を埋めるために用いられ得る。

サンプルコンストラクタは、trackrefindex,length,samplenumberおよびsampleoffsetのフィールドから構成される。trackrefindexは、データが取り出される受信ヒントトラックを示し、samplenumberは、受信ヒントトラックのサンプルの数を示す。sampleoffsetのフィールドは、取り出されるべき長さ「length」のデータブロックの始まりを特定する。

サンプルコンストラクタを用いることにより、データをコピーせずに、メディアサンプルのコンパクトな表現が可能になる
サンプル記述コンストラクタは、trackrefindex,sampledescriptionindex、sampledescriptionoffsetおよびlengthのフィールドから構成される。サンプルコンストラクタと同様に、受信ヒントトラックのサンプル記述からのデータは、仮想メディアサンプル内への包含のために用いられる。

仮想メディアトラックは、メディアタイミングを用いる。すなわち、復号化タイムスタンプは、伝送の遅延またはクロック周波数の不正確性に影響を及ぼさない。タイミングは、仮想メディアトラックにおいて利用可能な情報から生成されうるメディアトラックのタイミングと同じである。

図8は、ストリームの記録およびオフラインファイルの最適化フローチャートを示す。
第1のステップ802にて、受信ヒントトラックおよび任意に関連した受信ヒントトラック(たとえば、RTPおよびRTCP)は、上述したようにファイル102に保存される。記録の完了後、すなわち、データパケットが、受信ヒントトラックの形でファイル102に保存され、結果として関連したコントロールパケットが関連した受信ヒントトラック内のファイルに保存されると、ステップ804にて、記録された受信ヒントトラック内で異なるメディアストリームが決定される。ステップ804が含む手段は、たとえば、オーディオおよびビデオストリームまたはオーディオおよびビデオストリームにそれぞれ関係するデータパケットを、記録された受信ヒントトラック内で決定する。これは、上述したように、セッション記述プロトコル(SDP)から適切な情報を取り出すことによってなされる。

それゆえ、プロセッサ602は、記憶されたデータパケットのどれが第1または第2のメディアデータサンプルに関係するかを決定し、メディアデータコンテナ104内の第2のメディアデータサンプルに関係する第2の復号化情報サンプル(第2の仮想メディアサンプル)を決定するように適合される。

別のステップ806において、各識別されたメディアストリームに対して、関係する受信ヒントトラックを参照する仮想メディアトラック(メディアおよびメタデータを含む)が作成される。

すなわち、プロセッサ602は、メディアデータコンテナ104内の第1のメディアデータサンプルに関係する第1の復号化情報サンプル(第1の仮想メディアサンプル)を記憶し、メディアコンテナ104内の第1の復号化情報サンプルの位置(たとえば、チャンクオフセット、サンプル番号など)を示す第1の復号化情報を、メタデータコンテナ106内に記憶するように適合される。プロセッサ602は、メディアコンテナ104内の第2の復号化情報サンプルの位置(たとえば、チャンクオフセット、サンプル番号など)を示す第2の復号化情報を、メタデータコンテナ106内に記憶するように適合される。

すなわち、作成された仮想メディアトラックは、夫々のメディアストリームに従うペイロードを有するデータパケットを含む受信ヒントトラックを参照する。仮想メディアトラックを作成した後、受信ヒントトラックのメディアデータ部分内のサンプルまたはパケットを指し示し、制御伝送ユニット(たとえば、RTCPセンダーレポート)から正確なタイミングを復元する仮想メディアサンプル(復号化情報サンプル)が仮想メディアトラックに加えられる。

RTCPセンダーレポートは、RTPタイムスタンプと、NTPタイムスタンプ形式の、ストリームの間で対応する共通タイムスタンプを含む。RTPタイムスタンプおよびNTPタイムスタンプは、変換値が決定されることを可能にする。このRTP/NTPタイムスタンプ変換値およびRTPタイムスタンプのクロック周波数を用いて、受信されたRTPパケットの、ストリームの間で対応するタイムスタンプをNTPタイムスタンプ形式で算出することが可能になる。このやり方によって、RTP受信ヒントトラックの各サンプル、すなわち、各記憶されたデータパケットに対するメディアタイミングが、データパケットの記憶に対して処理後に得られうる。

別のステップ810にて、記述的情報が仮想メディアトラックに(たとえば、このトラック内のテーブル、または、このトラックを参照する別のトラックを加えることによって)加えられる。それによって、加えられた記述的情報は、仮想メディアサンプルに関連したメディアフレームの開始アドレスおよび終了アドレスを示し得る。開始アドレスは、メディアフレームの開始を示すメディアデータサンプルの位置を意味し、終了アドレスは、メディアフレームの終りを示すメディアデータサンプルの位置を意味し、メディアデータサンプルは、メディアデータコンテナ104内のデータパケットのペイロードによって含まれる。

別の認知のプレイバックステップ812において、仮想メディアサンプルの記述的な情報が、受信ヒントトラック内の対応するサンプルを仮想メディアトラックを介して見つけるために用いられる。ステップ810は、たとえば、記憶されたデータパケットに含まれたメディアストリームをリプレイするために用いられる。

受信ヒントトラック内に記憶されたデータパケットのペイロードによって含まれるメディアフレームを参照する仮想メディアサンプルの記述的な情報をどのようにして取得するかの一例が図9に示される。

図9は、一連の、記憶されたRTPパケットRTP1,RTP2,RTP3を示す。RTPパケットRTP1,RTP2,RTP3は、仮想メディアコンテナ104内にサンプルとして記憶される。RTPパケットRTP1,RTP2,RTP3の各々は、ヘッダーH1,H2,H3、および、メディアデータサンプルを含むペイロードPL1,PL2,PL3を含む。一例として、夫々、ヘッダーの大きさはAビットであり、ペイロードの大きさは(B−A)ビットである。ビデオまたはオーディオフレームであり得る第1のメディアフレームのデータは、第1のRTPパケットRTP1のペイロードと第2のRTPパケットRTP2のペイロードとの間で分割される。一例として、第1のメディアフレームのメディアデータは、RTPパケットRTP1のバイトAからデータパケットRTP2のバイトA+Yまでである。第2のメディアフレームのメディアデータは、バイトアドレスA+Yで始まるデータパケットRTP2と、データパケットRTP3のバイトアドレスA+Zで終わるデータパケットRTP3との間で分割される。

仮想メディアサンプルVMS1およびVMS2は、夫々、第1のメディアフレームおよび第2のメディアフレームに関係する。本発明の実施例によれば、仮想メディアサンプルVMS1,VMS2は、記憶されたデータパケットRTP1,RTP2,RTP3内の第1および第2のメディアフレームのメディアデータをどこで見つけるかについての情報を含む。すなわち、仮想メディアパケットVMS1は、データパケットRTP1をバイトアドレスAからバイトアドレスBまでアクセスし、データパケットRTP2のアドレスをバイトアドレスaからバイトアドレスA+Yまで指定することによって、フレーム1のメディアデータが得られる情報を含む。仮想メディアサンプル2は、メディアフレーム2のためのメディアサンプルをどこで取得するかの情報を含む。すなわち、仮想メディアパケットVMS2は、メディアフレーム2がデータパケットRTP2中で始まり、バイトアドレスA+Yは最大でバイトアドレスBであり、バイトアドレスAからバイトアドレスA+ZまでであるデータパケットRTP3中に、フレーム2のあの別のメディアサンプルが見つけられるという情報を記憶する。

仮想メディアトラックのメディアデータ部分を形成する仮想メディアサンプルVMS1およびVMS2は、共に、メタデータコンテナ106内の仮想メディアトラックのメタデータ部分によって参照される。サンプルへの復号化時間(decoding-time-to-sample)情報が、各仮想メディアサンプルVMS1,VMS2のためのsttsボックス内で見つけられる。それによって、サンプルへの復号化時間情報は、上述したように、RTPパケットRTP1,RTP2,RTP3に関係する、記憶されたRTCPパケットを評価することによって決定され得るメディアタイミングを反映する。

図10は、受信ヒントトラックのサンプルの、仮想メディアトラックのサンプルへのマッピングを示す。

図9と比較して、図10は、MPEG−2伝送ストリームM2Tの、記憶されたデータパケットを示す。伝送ストリームM2Tは、オーディオサンプルを含むデータパケットA1〜A7およびビデオサンプルを含むデータパケットV1〜V7を含む。

仮想メディアサンプルVMSA1は、オーディオパケットA1のペイロードおよびオーディオパケットA2のペイロードの間で分けられる。仮想メディアアンプルVMSA1は、オーディオフレームを取得するために取り入れる、A1およびA2ペイロードの、部分を示す。同様に、仮想メディアサンプルVMSA2は、メディアデータが、オーディオパケットA2およびA3のペイロードにおいて見つけられ得る、第2のオーディオフレームに関係する。仮想メディアサンプルVMSA3は、第3のオーディオフレームを取得するために、オーディオパケットA4およびオーディオパケットA5の一部を参照する。仮想メディアサンプルVMSA4は、オーディオパケットA5の残りの部分および、オーディオフレーム4に対するオーディオパケットA6およびA7のペイロードを参照する。

同様に、第1のビデオフレームに関係する仮想メディアサンプルVMSV1は、第1のビデオフレームのためのビデオパケットV1,V2およびV3のペイロードを参照する。仮想メディアサンプルVMSV2は、第2のビデオフレームのためのメディアサンプルを取得するために、ビデオパケットV4,V5およびV6のペイロードを参照する。

記憶されたRTPパケットを参照する受信ヒントトラックおよび記憶されたRTCPパケットを参照する受信ヒントトラックに基づくメディアコンテンツをリプレイするために、本発明の実施例は、ファイルを読み出すための装置を提供する。ファイルは、ファイルに関係するメディアコンテナ内に記憶された、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケットと、第1のクロックとは異なる第2のクロックに基づくパケット化された第2のメディアデータサンプルを含む第2のデータパケットとを含む。ファイルは、さらに、記録された、基準クロックに対する第1のクロックの関係を示すための情報を含む、関連した第1の制御パケットの少なくとも一部と、基準クロックに対する第2のクロックの関係を示すための情報を含む、関連した第2の制御パケットの少なくとも一部とを含む。ファイルは、さらに、メタデータコンテナ内に記憶された関連したメタデータを有する。関連したメタデータは、受信された第1および第2のデータパケットおよび受信された第1および第2の制御パケットのタイミング情報および記憶された第1および第2のデータパケットおよび記憶された第1および第2の制御パケットの、メディアデータコンテナ内の位置を示す位置情報を含む。装置は、メディアデータコンテナにアクセスし、メディアデータコンテナ内の、記憶された第1および第2のデータパケットおよび記憶された第1および第2の制御パケットのタイミング情報を解釈することによって、記憶された第1および第2のデータパケットの出力スケジュールを決定するためのプロセッサを備える。装置は、メタデータコンテナにアクセスし、メディアデータコンテナからデータパケットを読み出すことによって、決定された出力スケジュールに従ってデータパケットを出力するための出力コントローラをさらに備える。

本発明のある実施例によれば、プロセッサは、受信の順番が受信された第1および第2のデータパケットの記憶されたタイミング情報によって示される場合に、第1および第2のデータパケットの受信の順番を出力スケジュールが反映するように出力スケジュールを決定するように適合される。すなわち、この実施例を用いて、元の受信シナリオのシミュレーションを実行することができる。

別の実施例によれば、プロセッサは、第1のデータパケットの出力スケジュールが、基準時間(NTP)に関して第2のデータパケットの出力スケジュールと同期するように、第1および第2のデータパケットの記憶されたタイミング情報と、記憶された第1および第2の制御パケット内に含まれる基準タイムスタンプとに基づいて、同期化情報を決定するように適合される。すなわち、この実施例を用いて、受信された記憶された第1および第2のパケットのタイミングの同期化が実現される。

受信ヒントトラックを読み出すデバイスは、ファイルを解析できるか否かを検出するために、典型的には、以下の動作の組を用いる。

・ファイルコンテンツおよび構造が、潜在的に解析可能であるか否かを検出するために、ftypボックスを解析する。ファイルを解析できない場合、ファイルの読み出し動作を停止する。

・moovボックスを解析し、内部のtrakボックスの数を検出する。トラックが無い場合、ファイルの読み出し動作を停止する。

・hdlrボックス内において定義されるハンドラの種類に対して利用可能なハンドラの処理があるか否かを検出するために、各トラックのminfボックス内のhdlrボックスを解析する。ハンドラが認識されない場合、このトラックに対するファイルの読み出し動作を停止する。

・各トラックのminfボックス内部のstblボックスおよびstsdボックスを解析する。stsdボックスは、トラックのコンテンツのアイデンティフィケイションを含み、コンテンツを記述する。コンテンツが把握されない場合、トラックの、ファイルの読み出し動作を停止する。

ファイルを解析できる場合、trakボックス内部のtrefボックスを解析することにより、トラックの関連性が判定される。代替的には、フォーマットがトラックの関連性を定義する場合、トラックのstsdボックス内で利用可能な情報を用いる。トラックの関連性を判定できない場合、トラックは、独立して成り立っており、別のトラックに含まれる情報が無くても解析することができると推定される。トラックの関連性は、読み出し装置の内部で記憶され、トラックに含まれる未加工のデータの把握の処理において必要である場合に用いられる。

デバイスの動作に依存して、把握したトラックおよびファイルの提供に対してどれが関係しているかを選択することができる。初期設定により全てのトラックが解析されるが、以下の規則が適用される。

・仮想メディアトラックに対し、RTPまたMEPG−2TS受信ヒントトラックの代わりに、仮想メディアトラックが用いられる。このトラックは、ヒンティング動作の反転のためのデータを含む。すなわち、エレメンタリストリームデータブロックを作成するために、受信ヒントトラックのどのデータを取り出し、他のデータを用いて拡張する必要があるかを、デコーダは、生来的に把握している。

・RTCP受信ヒントトラックに対し、動作の第1モードは、RTP受信ヒントトラックと平行にRTCPとラックが消費されるというものである。読み出しデバイスは、同期化ストリームに対してジェネリックなRTP/RTCP受信の利用可能なロジックを用いる。

・RTCP受信ヒントトラックに対し、動作の第2のモードは、初期同期化およびいくつかのRTP受信ヒントトラック間のクロックドリフトを検出するために、通常の読み出し動作の前に全体的なRTCP受信ヒントトラックの消費が開始されるというものである。このモードにおいては、たとえば、いくつかのRTP受信ヒントトラックのRTPクロックの調整に対して、線形回帰が適用される。多重RTP受信ヒントトラックの継続的に同期化されたプレイアウトを容易にするためにデータが消費されると、ストリームにスキューが適用される。

・キーストリーム受信ヒントトラックに対し、動作の第1のモードは、RTPまたはMPEG−2TS受信ヒントトラックと平行に、キーストリーム受信ヒントトラックが消費されるというものである。これは、受信ヒントトラックの特定の保護されたデータブロックに対してキーストリームが、実際の放送と同様の態様で利用可能であることを確かにする。

・動作の第2のモードは、有効期間がオーバーラップしないように、キーストリームデータおよび受信ヒントトラックのデータを調整することである。これは、キーストリームデータのタイミングを把握する必要なしに、後におけるトラックの編集を可能にする。

トラックからいわゆるサンプルを得るために、ファイルの内部の位置が引出される必要がある。k番目のサンプルSに対するこの動作は、以下によって遂行される。

・stscボックスのデータを用いることによって、サンプルSがあるチャンクCを決定する。

・チャンクCのファイルオフセットFを判定するために、stco(またはco64)を解析する。

・チャンク内の、サンプルSの大きさLおよび全ての前のサンプルPiの大きさKiを得るために、stszボックスを解析する。

したがって、データは、ファイル内の位置(F+sum(Ki))において利用可能である。

データがプレイアウトされる時間は、sttsボックス内で利用可能な情報によって定められる。このボックスは、各個々のサンプルjに対して、ラン長さ暗号化された持続時間Djを含む。したがって、k番目のサンプルSに対するプレイアウト時間は、j<kとして、全ての持続時間Djの合計である。

仮想メディアトラックが利用可能である場合、本発明の実施例は、ファイルを読み出すための装置を提供する。ファイルは、メディアデータコンテナ内に、ペイロードを含むデータパケットを記憶し、メディアデータコンテナ104内に、記憶されたデータパケットのペイロードのための復号化情報を記憶し、復号化情報は、記憶されたデータパケットのどのペイロードをどの時点でリプレイするかを示す。ファイルは、メタデータコンテナ106内に関連したメタデータを記憶し、関連したメタデータは、メディアデータコンテナ内の復号化情報の復号化時間および位置を示す。本発明の実施例に従う装置は、メタデータコンテナ106内の関連したメタデータにアクセスし、メタデータに基づいて、メディアデータコンテナ内の復号化情報にアクセスし、復号化情報に基づいて、記憶されたデータパケットのためのペイロードにアクセスすることにより、記憶されたデータパケットのペイロードの出力スケジュールを決定するためのプロセッサと、規定された出力スケジュールに従ってペイロードを出力するための出力コントローラとを備える。

この明細書の導入部において述べたように、本発明の他の局面は、受信されたデータパケットに加えて、キーストリームメッセージを記憶することである。

データまたはデータパケットにアクセスする権限は、権限管理システムを介して制御され得る。デジタル通信ネットワークを介してデータコンテンツを受信することは、あるエンドユーザに対して制限され、別のユーザから制約され得る。たとえば、ユーザは、プログラムに対する料金を支払うことによりプログラムへのアクセスを購入してもよい。ユーザが料金を支払えば、ユーザは、特定の期間プログラムへのアクセスが認められてもよく、一方、料金を支払わないユーザは、プログラムへのアクセスを有さない。プログラムへのアクセスは、伝送されたデータの暗号化により規制される。データを暗号化するのに、暗号化キーの使用を介して、標準的な暗号化をいくつ用いてもよい。受信器またはユーザの端末においてコンテンツを視聴できるように、受信器またはユーザの端末において、暗号化されたデータを復号化するためにキーが用いられ得る。暗号化されたデータパケットを復号化するためのキーは、同じデジタル通信ネットワークを介して配信されてもよく、暗号化されてもよい。一つ以上のキーを配信するために、他のデジタル通信ネットワークを用いることができる。したがって、プログラムまたはサービスへのアクセスまたは視聴を望むエンドユーザは、キーに対する権限を得る必要がある。

暗号化されたプログラムまたはサービスに関連した伝送暗号化キーは、キーストリームの形態でユーザ端末に伝送される。キーストリームは、予め定められた頻度で伝送されるキーストリームメッセージを含んでもよく、暗号化されたデータストリームが受信器またはユーザ端末で受信された場合、キーストリームメッセージも受信される。

図12は、各々、暗号化キーk0,k1,k2を用いて暗号化されたペイロードを有する、ストリーム配信されたデータパケット1302−1,1302−2,1302−3を示す。データパケット1302に関連して、キーストリームパケット1304−1,1304−2,1304−3および1304−4を含むキーストリームがある。キーストリームパケット1304−1は、その関連したデータパケット1302−1の前の時間に配信され、データパケット1302−1の、暗号化されたペイロードの復号化のために、暗号化キーk0を含む。したがって、暗号化キーk0は、それに関連し、関連したデータパケットが暗号化されることができることを確かにする存続期間d0を有する。第2のキーストリームパケット1304−2、および、関連したデータパケット1302−2のペイロードを復号化するために用いられ得る、その暗号化キーk1についても、同様のことが当てはまる。ここでも、肝炎したキーストリーム1304−2は、データパケット1302−2よりも十分前の時間に配信され、暗号化キーk1は、データパケット1302−2のペイロードの正しい復号化を確かにする存続時間d1を有する。

本発明の実施例によれば、データパケットおよび関連した制御パケットに対して前述したように、データパケットおよび関連したキーストリームパケットは、受信器端末において、メタデータコンテナ内にメディアデータコンテナを有するファイルに一緒に記憶され得る。

図11は、本発明のある実施例に従う、関係したメディアデータコンテナ1104およびメタデータコンテナ1106を有するファイル1102を記憶するための装置1100を示す。

装置1100は、各々がペイロードを含むデータパケット1110を受信し、複数の暗号化キーを含むキーストリームパケットを受信するための受信器1108を含み、各暗号化器は、受信されたデータパケットのペイロードに関連付けられる。さらに、装置1100は、メディアデータコンテナ1104内に受信されたデータパケット1110および受信されたキーストリームパケット1112を記憶し、メタデータコンテナ1106内に関連したメタデータを記憶するためのレコーダ1116を含み、関連したメタデータは、受信されたキーストリームパケット1112内の受信されたデータパケット1110の伝送タイミング情報を含み、かつ、メディアデータコンテナ1104内の、記憶されたデータパケット1110および記憶されたキーストリームパケット112の位置を示す位置情報を含む。

装置1100は、装置100と共に用いられてよく、または装置100に含まれてもよいことが強調されるべきである。すなわち、データパケットを関連した制御パケットと一緒に記憶するという発明に関するコンセプト、データパケットを関連したキーストリームパケットとともに記憶するという発明に関するコンセプト、および、記憶されたデータパケットおよび関連した制御パケットおよび/または関係したキーストリームパケットから生じるメディアトラックの形態で復号化情報を生成するという発明に関するコンセプトを組み合わせてもよい。

図11に再び移って、受信されたデータパケット1110は、メディアデータコンテナ1104の第1のチャンク1118内にサンプルとして記憶される。受信された関連したキーストリームパケットは、メディアデータコンテナ1104の第2のチャンク1120内にサンプルとして記憶される。本発明の好ましい実施例によれば、第1および第2のチャンク1118および1120は、メディアコンテナ1104内に交互的な態様で記憶されてもよい。

上述したように、ファイル1102は、ISOベースのメディアファイルフォーマットに基づくファイル、例えば、MP4ファイルである。それゆえ、レコーダ1116は、メタデータコンテナmoov1106の第1のメタデータトラック1124の第1のチャンクオフセットテーブルstcoまたはco64内に第1のチャンク1118を記憶するように適合され、第1のチャンクオフセットテーブルは、メディアデータコンテナ1104がファイル1102の一部であるか否かに基づいて、ファイル1102またはメディアデータコンテナ1104へ向かう各第1のチャンク118のインデックスを示す。メディアデータコンテナ1104に向かう第2のチャンクのインデックスは、第1のチャンクに対して説明したのと同様の態様で、メタデータコンテナ1106の第2のメタデータトラック1120の第2のチャンクオフセットテーブル内に記憶される。

受信ヒントトラックおよび関連した受信ヒントトラック内のデータパケット110,112および関連した制御パケット114,115の並行的な記憶の場合についてすでに説明したように、データパケット1110に対する伝送タイミング情報、すなわち、受信時間またはRTPタイムスタンプは、第1のメタデータトラック1124により含まれる第1のsttsボックスに記憶される。同様に、伝送タイミング情報またはディファレンシャル伝送タイミング情報は、第2のチャンク1120に関係する第2のメタデータ1128トラックの第2のsttsボックスに記憶される。

また、ストリームの受信が完了した後のプレイバックを容易にするため、キーストリーム受信ヒントトラックを仮想メタデータトラックに変換するように、ワンタイム処理が実行されてもよい。この目的のため、装置1100は、記憶されたデータパケット1110おおび関連したメタ情報1124に基づいて、かつ、記憶されたキーストリームパケット1112および関連したキーストリームメタ情報1128に基づいて、記憶されたデータパケット1110のペイロードのための復号化情報を割当てるプロセッサ(図示せず)を含み、復号化情報は、記憶されたデータパケット1110のペイロードのリプレイするために、どの暗号化キーをどの時点で用いるかを示す。

すなわち、伝送タイミングを有するキーストリーム受信ヒントトラックからのキーメッセージは、メディアタイミングを有する仮想メタデータトラック内のキーサンプルに変換される。これは、仮想メディアトラックについて上述したのと同じコンセプトに基づいてなされる。すなわち、キーサンプルは、生成され、メディアデータコンテナ1104内に記憶される。それによって、各キーサンプルは、アクセスユニットまたはメディアフレームと関係し、関係するメディアフレームに対して用いるための暗号化キーについての情報を含む。sttsボックスを含む関連したメタデータトラック1128において、キーサンプルへの復号化(decoding-to-key-sample)情報が与えられる。キーサンプルへの復号化情報は、夫々の暗号化メディアフレームを生じさせるために記憶されたデータパケットのペイロードデータを再び参照する、夫々のキーサンプルにどの時点でアクセスするかを示す。もし必要であれば、キーサンプルは、メディアトラック内の全てのメディアサンプルが、キートラック内に(同じキーIDを有する)関連したキーサンプルを有するように、仮想的に倍にされる。

したがって、特に、コンテンツの暗号化の場合に暗号化されたアクセスユニットが、伝送ユニット(データパケット)から再構築でくるのであれば、メディアアクセスユニット、たとえば、メディアフレームと、キーメッセージとの間で正確な時間的関係を生成することが可能である。

記憶されたデータパケット1110および記憶された関連したキーストリームパケット1112をメディアデータコンテナ1104内に有し、メタデータコンテナ1106内に記憶された関連したメタデータを有するファイル1102を読み出すため、本発明の実施例は、記憶されたデータパケット1110に基づき、関連したパケットメタ情報1124に基づき、および、記憶されたキーストリームパケット1112および関連したキーストリームメタ情報1128に基づいて、暗号化された情報を記憶されたデータパケットのペイロードに割当てるためのプロセッサを含み、復号化情報は、どの暗号化キーを用いて、どの時間に記憶されたデータパケットのペイロードをリプレイするかを示す。

復号化情報を割当てるためのプロセッサは、暗号化データデータパケット1110のペイロードのプレイヤーに対して用いられてもよい。この理由は、割当てられた復号化情報に基づいて、復号化データパケットがデコーダに出力されるからである。復号化情報を割当てるためのプロセッサは、仮想キーサンプルとしてメディアデータコンテナ1104に部分的に記憶される仮想復号化情報を生成するために用いられても良い。関連したメタ情報は、メタデータトラック1128に記憶される。これは、上述した仮想メディアトラックのコンセプトに対応する。

キーサンプルのペイロードは、受信されたままのキーストリームの未加工のペイロードを含んでもよい。これは、キーストリームのUDPパケットのコンテンツが、直接記憶されることを意味する。複数の受信されたキーストリームメッセージの記憶を可能にするために、別のストラクチャの内部にこのデータをラップ(wrap)するシステムがあってもよい。

キーストリームサンプルのタイミングは、その基本のRTP受信ヒントトラックのタイミング方法に依存する。RTP受信ヒントトラックが、その復号化時間をRTPタイムスタンプから取り出す場合、キーストリーム受信ヒントトラックもまた、その復号化時間をRTPタイムスタンプから取り出すことになるが、RTPタイムスタンプを推定する必要があり得る。受信時間がRTP受信ヒントトラックに対して用いられる場合は、受信タイミングがキーストリームメッセージを記憶するためにも用いられることになる。一般的に、RTP受信ヒントトラックおよびキーストリーム受信ヒントトラックの両方が同期され、同じ時間に基づいて用いられる。

要約すると、本発明は、典型的には、パケット化されたメディアデータ、たとえばビデオデータを含む、受信された「伝送ユニット」(TU)を、予め演算されたパケットまたはコンストラクタとして、ファイルのサンプル内の「制御伝送ユニット」(CTU)とともに、受信ヒントトラック内に記録するメディア記憶システムに関する。制御伝送ユニットは、受信ヒントトラックに関連した、別個の平行トラック内に記憶される。

CTUは、ファイルからのプレイバック中に受信ヒントトラックのメディアパケットを処理するのに必要また有用である付加的なデータを含む。CTUの例は、暗号化ストリームの場合におけるRTCPレポートまたはキーメッセージである。

記録されたストリームのローカルプレイバックを最適化するため、「仮想メディアトラック」は、逆ヒンティング処理を用いて、受信されたTUを「仮想メディアサンプル」にマッピングする。仮想メディアサンプルは、CTUを有するトラックおよび受信ヒントトラックから復元されることがあり、完全なメディアサンプルである必要がないメディアサンプルのタイミングを有する。適切であれば、仮想メディアトラックの索引付けが適用される。インデックスは、受信ヒントトラックのリンク付けされたサンプルに対しても適用される。仮想メディアトラックは、ファイル内の別のトラック(たとえば、「タイムドメタデータトラック)に対する参照として用いられ得る。アプリケーションは、仮想メディアトラックを介して受信ヒントトラックの対応するサンプルを検索し得る。

キーストリームメッセージは、関連した受信ヒントトラックとして記憶される。仮想メディアトラックは、メディアサンプルおよび復号化キーを正確にそろえるために用いられる。

近年、たとえば、米国特許出願US2007/0130498に記載されているように、動画片(movie fragments)と呼ばれる追加物によって、上述したISOベースのファイルフォーマットが補足された。本発明の実施例にも、前述した動画片を適用してもよいことが言及されなければならない。

状況に応じて、発明に係る方法は、ハードウェアまたはソフトウェアで実現され得る。方法が実行されるようにプログラム可能なコンピュータシステムと協働し得る、デジタル記憶媒体、特に、電気的に読取り可能な制御信号を有するディスクまたはCDにおいて実現される。したがって、一般的に、発明は、コンピュータプログラムプロダクトがコンピュータ上で実行されると発明に係る方法を行なうための、機械読取り可能なキャリアに記憶されたプログラムコードを有するコンピュータプログラムプロダクトにある。言い換えると、発明は、コンピュータプログラムがコンピュータ上で実行されると方法を行なうためのプログラムコードを有するコンピュータプログラムとして実現される。

この発明は、いくつかの好ましい実施例の観点で説明されてきたが、この発明の範囲内で変更、置換および均等物がある。本発明の方法および構成物を実現する多くの代替手段があることに留意すべきである。したがって、以下に添付された特許請求の範囲は、本発明の忠実な精神および範囲内で、全てのそのような変更、置換および均等物を含むものと解釈されることが意図される。

Claims (28)

  1. 関係するメディアデータコンテナ(104)およびメタデータコンテナ(106)を有するファイル(102)を記録するための装置(100)であって、
    第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット(110)を受信し、前記第1のクロックとは異なる第2のクロックに基づく、前記第1のメディアデータサンプルに関連する第2のメディアデータサンプルを含む第2のデータパケット(112)を受信し、基準クロックに対する前記第1のクロックの関係を示すための情報を含む第1の制御パケット(114)を受信し、前記基準クロックに対する前記第2のクロックの関係を示すための情報を含む第2の制御パケット(115)を受信するための受信器(108)と、
    前記受信された第1および第2のデータパケット(110,112)、および、前記受信された第1および第2の制御パケット(114,115)の少なくとも一部を前記メディアデータコンテナ(104)内に記憶し、関連したメタデータ(124,128)を前記メタデータコンテナ(106)内に記憶するためのレコーダ(116)とを含み、前記関連したメタデータは、前記受信された第1および第2のデータパケットおよび前記受信された第1および第2の制御パケットのタイミング情報、および、前記記憶された第1および第2のデータパケット、および、前記記憶された第1および第2の制御パケットの、前記メディアデータコンテナ内の位置を示す位置情報を含む、装置。
  2. 前記レコーダ(116)は、前記第1および第2の受信されたデータパケット(116)を、前記メディアデータコンテナ(104)の第1のチャンク(118)内にサンプルとして記憶し、前記受信された第1および第2の制御パケット(114,115)の前記一部を、前記メディアデータコンテナ(104)の第2のチャンク(122)内にサンプルとして記憶するように適合される、請求項1に記載の装置。
  3. 前記レコーダ(116)は、前記第1および第2のチャンク(118,122)を、交互的な態様で前記メディアデータコンテナ(104)内に記憶するように適合される、請求項2に記載の装置。
  4. 前記第1および第2の制御パケット(114,115)は、第1および第2のRTCPパケットであり、前記レコーダ(116)は、第1および第2のRTCPセンダーレポートを、前記受信された、関連した第1および第2の制御パケットの前記一部として記憶するように適合される、請求項1〜3のいずれかに記載の装置。
  5. 前記レコーダ(116)は、前記第1および第2のデータパケット(110,112)の前記タイミング情報および前記位置情報を、前記メタデータコンテナ(106)の第1のトラック(124)内に記憶し、前記第1および第2の制御パケット(114,115)の前記タイミング情報および前記位置情報を、前記メタデータコンテナ(106)の第2のトラック(128)内に記憶するように適合される、請求項1〜4のいずれかに記載の装置。
  6. 前記レコーダ(116)は、前記第1および第2のデータパケット(110,112)の前記タイミング情報を、第1および/または第2のデータパケットのタイミングから、前記第1のチャンク(118)内の第1および/または第2のデータパケットの関連したサンプル番号への索引付けを可能にする第1のサンプルテーブルボックス(stts)内に記憶し、第1のおよび/または第2の制御パケットのタイミングから、前記第2のチャンク(122)の前記第1のおよび/または第2の制御パケットに関連したサンプル番号への索引付けを可能にする第2のサンプルテーブルボックス(stts)内に、前記第1および第2の制御パケット(114,115)の前記タイミング情報を記憶するように適合される、請求項1〜5のいずれかに記載の装置。
  7. 前記レコーダ(116)は、データ/制御パケットの、受信時間および/または伝送プロトコルタイムスタンプを、それぞれ、前記タイミング情報として記憶するように適合される、請求項6に記載の装置。
  8. 前記レコーダ(116)は、前記ファイル(102)内に、各第1のチャンク(118)のインデックスを示す第1のチャンクオフセットテーブル(stco,co64)を記憶し、前記ファイル(102)内に、各第2のチャンク(122)のインデックスを示す第2のチャンクオフセットテーブル(stco,co64)を記憶するように適合される、請求項6に記載の装置。
  9. 前記装置(100)は、前記第1および第2のデータパケット(110,112)の記憶された伝送タイミング情報、および、前記第1および第2のデータパケットに関連した、前記記憶された第1および第2のデータ制御パケット(114,115)に含まれるNTPタイムスタンプに基づいて、前記第1および第2のメディアデータサンプルを同期化するための同期化情報を決定するためのプロセッサ(602)を含む、請求項1〜8のいずれかに記載の装置。
  10. 前記プロセッサ(602)は、前記記憶された第1および第2のデータパケット(100,112)に基づいて、前記記憶された第1および第2の制御パケット(114,115)を決定し、前記記憶された、関連したメタ情報(124,128)に基づいて、前記記憶されたデータパケット(110,112)のペイロードのための復号化情報(604,606,704,706)を決定するように構成され、前記復号化情報は、どの時点で前記記憶されたデータパケットのどのペイロードをリプレイするかを示す、請求項9に記載の装置。
  11. 前記プロセッサは、どの前記記憶されたデータパケット(110,112)が、前記第1または前記第2のメディアデータサンプルに関係するかを決定し、前記第1のメディアデータサンプルに関係する第1の復号化情報サンプル(602,702)を、前記メディアデータコンテナ(104)に記憶し、前記メディアコンテナ(104)内の前記第1の復号化情報サンプル(602,702)の位置を示す第1の復号化メタ情報(604,704)を、前記メタデータコンテナ(106)に記憶し、前記第2のメディアデータサンプルに関係する第2の復号化情報サンプル(602,702)を、前記メディアデータコンテナ(104)内に記憶し、前記メディアコンテナ(104)内の前記第2の復号化情報サンプル(602,702)の位置を示す第2の復号化メタ情報(604,704)を、前記メタデータコンテナ(106)内に記憶するように適合される、請求項10に記載の装置。
  12. 前記受信器(108,1108)は、さらに、複数の暗号化キー(kn)を含むキーストリームパケット(1112)を受信するように適合され、各暗号化キーは、前記第1および/または前記第2のデータパケット(110,112,1110)のうちの少なくともいずれか一つのペイロードに関連し、前記レコーダは、前記受信されたキーストリームパケットを前記メディアデータコンテナ(104,1104)内に記憶し、関連した伝送タイミング情報を前記メタデータコンテナ(106,1106)に記憶するように構成される、請求項1〜11のいずれかに記載の装置。
  13. 前記レコーダ(116,1116)は、前記キーストリームパケット(1112)を、サンプルとして前記メディアデータコンテナ(104,1104)のキーチャンク(1120)内に記憶し、前記関連した伝送タイミング情報、および、前記メディアデータコンテナ内の前記キーストリームパケットの位置を示す位置情報を、前記メタデータコンテナ(106,1106)のキートラック(1128)内に記憶するように適合される、請求項12に記載の装置。
  14. 前記レコーダ(116,1116)は、キーストリームパケットとの伝送タイミングから、前記キーチャンク(1120)内のキーストリームパケットの関連したサンプル番号への索引付けを許容するキーサンプルテーブルボックス(stts)内に、前記伝送タイミング情報を記憶するように適合される、請求項12または13に記載の装置。
  15. 前記レコーダ(116,1116)は、キーストリームパケットの受信時間インデックスを、関連した伝送タイミング情報として記憶する、または、前記キーストリームパケットの受信時間付近の予め定められた時間間隔で受信されたデータパケットのパケットタイムスタンプを、キーストリームパケットの関連したタイミング情報として記憶するように適合される、請求項12〜14のいずれかに記載の装置。
  16. 前記プロセッサ(602)は、前記記憶された第1および第2のデータパケット(110,112)に基づいて、前記記憶された第1および第2の制御パケット(114,115)に基づいて、前記関連したメタ情報(124,128)に基づいて、および、前記記憶されたキーストリームパケット(1112)および前記関連したキーストリームメタ情報(1128)に基づいて、前記記憶された第1および/または第2のデータパケット(110,112)のペイロードに、復号化情報を割当てるように適合され、前記復号化情報は、どの暗号化キーを用いてどの時間に前記記憶された第1および/または第2のデータパケットのペイロードをリプレイするかを示す、請求項12〜15のいずれかに記載の装置。
  17. 前記プロセッサ(602)は、復号化情報サンプル内の前記復号化情報を、前記メディアデータコンテナ(104)内に記憶し、関連する復号化指令メタ情報を前記メタデータコンテナ(106)内に記憶するように適合される、請求項16に記載の装置。
  18. 前記ファイル(102)は、前記ISOベースのメディアファイルフォーマットに基づく、請求項1〜17のいずれかに記載の装置。
  19. 前記第1のデータパケット(110)は、パケット化された第1のメディアデータサンプルを含む第1のストリーム配信されたRTPパケットであり、前記第2のデータパケット(112)は、パケット化された第1のメディアデータサンプルを含む第2のストリーム配信されたRTPパケットであり、前記第1の制御パケット(114)は、前記第1のストリーム配信されたRTPパケットに関係する第1のRTCPパケットであり、前記第2の制御パケット(115)は、前記第2のストリーム配信されたRTPパケット(112)に関係する第2のRTCPパケットである、請求項1〜18のいずれかに記載の装置。
  20. 関係するメディアデータコンテナ(104)およびメタデータコンテナ(106)を有するファイル(102)を記録するための方法であって、
    第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット(110)を受信し、前記第1のクロックとは異なる第2のクロックに基づく、前記第1の第1のメディアデータサンプルに関連する第2のメディアデータサンプルを含む第2のデータパケット(112)を受信し、基準クロックに対する前記第1のクロックの関係を示すための情報を含む第1の制御パケット(114)を受信し、前記基準クロックに対する前記第2のクロックの関係を示すための情報を含む第2の制御パケット(115)を受信するステップと、
    前記受信された第1および第2のデータパケット(110,112)、および、前記受信された第1および第2の制御パケット(114,115)の少なくとも一部を前記メディアデータコンテナ(104)内に記憶し、関連したメタデータ(124,128)を前記メタデータコンテナ(106)内に記憶するステップとを含み、前記関連したメタデータは、前記受信された第1および第2のデータパケットおよび前記受信された第1および第2の制御パケットのタイミング情報、および、前記記憶された第1および第2のデータパケット、および、前記記憶された第1および第2の制御パケットの、前記メディアデータコンテナ内の位置を示す位置情報を含む、方法。
  21. コンピュータまたはマイクロコントローラ上で実行されている場合に、請求項20に記載の方法を実行するためのコンピュータプログラム。
  22. ファイル(102)を読み出すための装置であって、前記ファイルは、前記ファイルに関係したメディアデータコンテナ(104)内に記憶された、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット(110)、および、第1のクロックとは異なる第2のクロックに基づくパケット化された第2のメディアデータサンプルを含む第2のデータパケット(112)を有し、かつ、前記ファイルは、記憶された、基準クロックに対する前記第1のクロックの関係を示すための情報を含む、関連した第1の制御パケット(114)の少なくとも一部を有し、かつ、記憶された、前記基準クロックに対する前記第2のクロックの関係を示すための情報を含む、関連した第2の制御パケット(115)の少なくとも一部を有し、前記ファイルは、前記ファイルのメタデータコンテナ(106)内に、記憶された、関連したメタデータ(124,128)を有し、前記関連したメタデータは、前記受信された第1および第2のデータパケット(110,112)および前記受信された第1および第2の制御パケット(114,115)のタイミング情報、および、前記記憶された第1および第2のデータパケットおよび前記記憶された第1および第2の制御パケットの、前記メディアデータコンテナ内の位置を示す位置情報を含み、前記装置は、
    前記メタデータコンテナ(106)にアクセスし、前記メディアデータコンテナ(104)内の前記記憶された第1および第2のデータパケットおよび前記記憶された第1および第2の制御パケット(114,115)のタイミング情報を解析することにより、前記記憶された第1および第2のデータパケット(110,112)の出力スケジュールを決定するためのプロセッサと、
    メタデータコンテナ(106)にアクセスし、前記メディアデータコンテナ(104)から前記データパケットを読み出すことによって、前記決定された出力スケジュールに従って、前記第1および第2のデータパケット(110,112)を出力するための出力コントローラとを含む、装置。
  23. 前記プロセッサは、前記出力スケジュールが前記第1および第2のデータパケット(110,112)の受信順序を反映するように前記出力スケジュールを決定するように適合され、前記受信順序は、前記受信された第1および第2のデータパケットの、記憶された伝送タイミング情報によって示される、請求項22に記載の装置。
  24. 前記プロセッサは、前記第1および第2のデータパケット(110,112)の、記憶されたタイミング情報、および、前記記憶された第1および第2のデータ制御パケット(114,115)に含まれる基準タイムスタンプに基づいて、前記第1のデータパケットの出力スケジュールが、前記第1および第2のメディアデータサンプルのメディアタイミングに関して、前記第2のデータパケットの出力スケジュールと同期するように同期化情報を決定するように適合され、前記メディアタイミングは、基準時間情報に基づく、請求項22に記載の装置。
  25. 前記ファイル(102)は、前記ISOベースのメディアファイルフォーマットに基づく、請求項22〜24のいずれかに記載の装置。
  26. 前記第1のデータパケット(110)は、パケット化された第1のメディアデータサンプルを含む第1のストリーム配信されたRTPパケットであり、前記第2のデータパケット(112)は、パケット化された第1のメディアデータサンプルを含む第2のストリーム配信されたRTPパケットであり、前記第1の制御パケット(114)は、前記第1のストリーム配信されたRTPパケットに関係する第1のRTCPパケットであり、前記第2の制御パケット(115)は、前記第2のストリーム配信されたRTPパケット(112)に関係する第2のRTCPパケットである、請求項22〜25のいずれかに記載の装置。
  27. ファイル(102)を読み出すための方法であって、前記ファイルは、前記ファイルに関係したメディアデータコンテナ(104)内に記憶された、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット(110)、および、第1のクロックとは異なる第2のクロックに基づくパケット化された第2のメディアデータサンプルを含む第2のデータパケット(112)を有し、かつ、前記ファイルは、記憶された、基準クロックに対する前記第1のクロックの関係を示すための情報を含む、関連した第1の制御パケット(114)の少なくとも一部を有し、かつ、記憶された、前記基準クロックに対する前記第2のクロックの関係を示すための情報を含む、関連した第2の制御パケット(115)の少なくとも一部を有し、前記ファイルは、前記ファイルのメタデータコンテナ(106)内に、記憶された、関連したメタデータ(124,128)を有し、前記関連したメタデータは、前記受信された第1および第2のデータパケット(110,112)および前記受信された第1および第2の制御パケット(114,115)のタイミング情報、および、前記記憶された第1および第2のデータパケットおよび前記記憶された第1および第2の制御パケットの、前記メディアデータコンテナ内の位置を示す位置情報を含み、前記方法は、
    前記メタデータコンテナ(106)にアクセスし、前記メディアデータコンテナ(104)内の、前記記憶された第1および第2のデータパケットおよび前記記憶された第1および第2の制御パケット(114,115)のタイミング情報を解析することにより、前記記憶された第1および第2のデータパケット(110,112)の出力スケジュールを決定するステップと、
    メタデータコンテナ(106)にアクセスし、前記メディアデータコンテナ(104)から前記データパケットを読み出すことによって、前記決定された出力スケジュールに従って、前記第1および第2のデータパケット(110,112)を出力するステップとを含む、方法。
  28. コンピュータまたはマイクロコントローラ上で実行されている場合に、請求項27に記載の方法を実行するためのコンピュータプログラム。
JP2010513776A 2007-07-02 2008-07-01 メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法 Active JP5334335B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US94753907 true 2007-07-02 2007-07-02
US60/947,539 2007-07-02
PCT/EP2008/005374 WO2009003684A1 (en) 2007-07-02 2008-07-01 Apparatus and method for storing and reading a file having a media data container and a metadata container

Publications (2)

Publication Number Publication Date
JP2010532605A true true JP2010532605A (ja) 2010-10-07
JP5334335B2 JP5334335B2 (ja) 2013-11-06

Family

ID=39865600

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2010513775A Active JP4766473B2 (ja) 2007-07-02 2008-07-01 メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法
JP2010513776A Active JP5334335B2 (ja) 2007-07-02 2008-07-01 メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2010513775A Active JP4766473B2 (ja) 2007-07-02 2008-07-01 メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法

Country Status (8)

Country Link
US (2) US9236091B2 (ja)
EP (2) EP2149264B1 (ja)
JP (2) JP4766473B2 (ja)
KR (2) KR101074585B1 (ja)
CN (2) CN101790886B (ja)
DE (1) DE602008004502D1 (ja)
RU (2) RU2459378C2 (ja)
WO (3) WO2009003684A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018517A1 (ja) * 2011-07-29 2013-02-07 ソニー株式会社 ストリーミング配信装置および方法、ストリーミング受信装置および方法、ストリーミングシステム、プログラム、並びに記録媒体
WO2014188960A1 (ja) * 2013-05-23 2014-11-27 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
JP2015524598A (ja) * 2012-11-30 2015-08-24 サムスン エレクトロニクス カンパニー リミテッド コンテンツを保存した情報記録媒体、コンテンツ提供方法、コンテンツ再生方法及びその装置
US9454995B2 (en) 2012-11-30 2016-09-27 Samsung Electronics Co., Ltd. Information storage medium storing content, content providing method, content reproducing method and apparatus therefor

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617278B1 (en) 2003-01-29 2009-11-10 Adobe Systems Incorporated Client controllable server-side playlists
DE102007004951A1 (de) * 2007-01-26 2008-07-31 Deutsche Thomson Ohg Verfahren zum paketvermittelten Übertragen von Mediendaten sowie Vorrichtung zum Bearbeiten von Mediendaten
US7941399B2 (en) 2007-11-09 2011-05-10 Microsoft Corporation Collaborative authoring
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US8300823B2 (en) * 2008-01-28 2012-10-30 Netapp, Inc. Encryption and compression of data for storage
FR2927208B1 (fr) * 2008-01-31 2010-02-12 Airbus France Procede et dispositif de mesure de la derive temporelle d'un equipement electronique relie a un reseau
US8077736B2 (en) * 2008-02-25 2011-12-13 Newport Media, Inc. Fast audio/visual reception in DVB-H systems
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
EP2114027A1 (en) * 2008-04-30 2009-11-04 Gemplus Method of detecting TV off event on a mobile terminal
US8825594B2 (en) 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
US8261312B2 (en) 2008-06-27 2012-09-04 Cisco Technology, Inc. Linear hint video streaming
US8776144B2 (en) * 2008-10-16 2014-07-08 Industrial Technology Research Institute Mobile TV system and method for synchronizing the rendering of streaming services thereof
JP2010181800A (ja) * 2009-02-09 2010-08-19 Mitsubishi Electric Corp 暗号化メディアファイルのデータ構造、暗号化メディア作成方法、暗号化メディア復号方法、暗号化メディア分割方法及び暗号化メディア結合方法並びに装置
JP5169947B2 (ja) * 2009-03-31 2013-03-27 富士通モバイルコミュニケーションズ株式会社 情報処理装置
US8346768B2 (en) * 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
US8166191B1 (en) * 2009-08-17 2012-04-24 Adobe Systems Incorporated Hint based media content streaming
EP2497269A1 (en) 2009-11-06 2012-09-12 Telefonaktiebolaget LM Ericsson (publ) File format for synchronized media
JP4746725B1 (ja) * 2009-12-14 2011-08-10 住友電工ネットワークス株式会社 コンテンツ受信装置、コンテンツ再生装置、コンテンツ受信再生装置、コンテンツ受信方法、及びプログラム
KR101842201B1 (ko) 2010-04-19 2018-03-26 엘지전자 주식회사 인터넷 기반 컨텐츠 송수신 방법 및 그를 이용한 송수신 장치
US8638818B2 (en) * 2010-04-20 2014-01-28 Samsung Electronics Co., Ltd Interface apparatus and method for transmitting and receiving media data
KR101294542B1 (ko) * 2010-12-09 2013-08-07 한국전자통신연구원 데이터 변경 장치 및 방법
JP2012235463A (ja) * 2011-04-28 2012-11-29 Samsung Electronics Co Ltd 共通インタフェースを介して受信制限モジュールに暗号化されたデータを送信するためのデータ送信装置及びそれに適用される方法、受信制限モジュール、そのシステム。
US8731597B1 (en) * 2011-05-26 2014-05-20 Sprint Spectrum L.P. Method and system of transmitting power control commands
US8938625B2 (en) 2011-06-29 2015-01-20 Sonic Ip, Inc. Systems and methods for securing cryptographic data using timestamps
US20130004142A1 (en) * 2011-06-29 2013-01-03 Rovi Corp. Systems and methods for device authentication including timestamp validation
US9451313B2 (en) 2011-06-29 2016-09-20 Harman International Industries, Incorporated Network media adapter
KR101885852B1 (ko) * 2011-09-29 2018-08-08 삼성전자주식회사 컨텐트 전송 및 수신 방법 및 장치
JP5848594B2 (ja) * 2011-12-14 2016-01-27 キヤノン株式会社 記録装置
JP5917123B2 (ja) * 2011-12-14 2016-05-11 キヤノン株式会社 記録装置
US8824680B2 (en) * 2012-08-08 2014-09-02 Verizon Patent And Licensing Inc. Centralized key generation
US9319878B2 (en) * 2012-09-14 2016-04-19 Qualcomm Incorporated Streaming alignment of key stream to unaligned data stream
DE102012022064A1 (de) 2012-11-09 2014-05-15 Thomas Klimpel System und Verfahren zur Wiedergabe von Musikstücken und/oder Multimediadaten
US20140149545A1 (en) * 2012-11-29 2014-05-29 Samsung Electronics Co., Ltd Method and apparatus for encapsulation of motion picture experts group media transport assets in international organization for standardization base media files
US20140192153A1 (en) 2013-01-04 2014-07-10 Qualcomm Incorporated Signaling of spatial resolution of depth views in multiview coding file format
EP2901449B1 (en) * 2013-01-21 2018-01-03 Dolby Laboratories Licensing Corporation Audio encoder and decoder with program loudness and boundary metadata
JP5641090B2 (ja) * 2013-03-14 2014-12-17 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
KR101484843B1 (ko) * 2013-04-19 2015-01-20 삼성전자주식회사 멀티미디어 전송 시스템에서 미디어 전송 패킷 전송 방법 및 장치
US9674569B2 (en) * 2013-05-29 2017-06-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Clock recovery in transponder-bonded systems using BCRs and marker packets at a set-top box
CN105325006A (zh) * 2013-06-12 2016-02-10 Lg电子株式会社 发送广播信号的装置、接收广播信号的装置、发送广播信号的方法以及接收广播信号的方法
US9826282B2 (en) * 2013-07-02 2017-11-21 Canon Kabushiki Kaisha Reception apparatus, reception method, and recording medium
US20160173556A1 (en) * 2013-07-05 2016-06-16 Lg Electronics Inc. Method and apparatus for transmitting/receiving media broadcasting signal in real time transport protocol-based broadcasting system
KR101871730B1 (ko) * 2013-09-27 2018-06-27 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법 및 방송 신호 수신 방법
JP2015119477A (ja) * 2013-12-16 2015-06-25 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 送信方法、受信方法、送信装置及び受信装置
KR101788066B1 (ko) * 2014-01-13 2017-11-15 엘지전자 주식회사 하나 이상의 네트워크를 통해 방송 컨텐츠를 송수신하는 장치 및 방법
WO2015105391A1 (en) * 2014-01-13 2015-07-16 Lg Electronics Inc. Apparatuses and methods for transmitting or receiving a broadcast content via one or more networks
WO2015108309A1 (en) * 2014-01-14 2015-07-23 Lg Electronics Inc. Broadcast transmission device and operating method thereof, broadcast reception device and operating method thereof
JP2016027512A (ja) * 2014-06-30 2016-02-18 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
KR20160047252A (ko) 2014-10-22 2016-05-02 삼성전자주식회사 전자장치 및 전자장치의 컨텐트 제어 방법
KR101555792B1 (ko) 2014-11-28 2015-09-25 주식회사 엘지유플러스 멀티미디어 청크(chunk)를 수신하는 통신 단말기의 제어방법과, 그 제어방법을 실행하기 위한 프로그램을 기록한 기록 매체
US9916458B2 (en) * 2015-03-31 2018-03-13 EMC IP Holding Company LLC Secure cloud-based storage of data shared across file system objects and clients
RU172157U1 (ru) * 2017-03-22 2017-06-29 Акционерное общество "МЦСТ" Контроллер межпроцессорного канала обмена данными второго поколения (IPCC2)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000078197A (ja) * 1998-09-03 2000-03-14 Toshiba Corp 通信ノード及びパケット転送方法
US6169843B1 (en) * 1995-12-01 2001-01-02 Harmonic, Inc. Recording and playback of audio-video transport streams
WO2007012062A1 (en) * 2005-07-19 2007-01-25 Apple Computer, Inc. Method and apparatus for media data transmission
JP2008061010A (ja) * 2006-08-31 2008-03-13 Toshiba Corp 映像音声送信装置
JP4766473B2 (ja) * 2007-07-02 2011-09-07 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765164A (en) * 1995-12-21 1998-06-09 Intel Corporation Apparatus and method for management of discontinuous segments of multiple audio, video, and data streams
US6377966B1 (en) * 1997-10-22 2002-04-23 Flashpoint Technology, Inc. Graphical interface to select characters representing phonetic articulation and no articulation groups
US6396874B1 (en) * 1997-11-12 2002-05-28 Sony Corporation Decoding method and apparatus and recording method and apparatus for moving picture data
US6311221B1 (en) * 1998-07-22 2001-10-30 Appstream Inc. Streaming modules
US6549922B1 (en) 1999-10-01 2003-04-15 Alok Srivastava System for collecting, transforming and managing media metadata
CA2397975C (en) 2000-01-28 2016-11-01 Diva Systems Corporation Method and apparatus for content distribution via non-homogeneous access networks
WO2001078346A3 (en) * 2000-04-08 2002-05-02 Sun Microsystems Inc Resynchronizing media during streaming
GB0021882D0 (en) 2000-09-06 2000-10-18 Sony Uk Ltd Combining material and data
JP3946965B2 (ja) * 2001-04-09 2007-07-18 ソニー株式会社 無体財産権を保護する情報を記録する記録装置、記録方法、記録媒体、およびプログラム
US7162479B2 (en) * 2001-08-15 2007-01-09 Bentley Systens, Incorporated Method and system for storing large data files
JP3925218B2 (ja) * 2002-01-30 2007-06-06 ソニー株式会社 ストリーミングシステム及びストリーミング方法、ストリーミングサーバ及びデータ配信方法、クライアント端末及びデータ復号方法、並びにプログラム及び記録媒体
US6912010B2 (en) * 2002-04-15 2005-06-28 Tektronix, Inc. Automated lip sync error correction
US7143132B2 (en) * 2002-05-31 2006-11-28 Microsoft Corporation Distributing files from a single server to multiple clients via cyclical multicasting
US7313236B2 (en) * 2003-04-09 2007-12-25 International Business Machines Corporation Methods and apparatus for secure and adaptive delivery of multimedia content
US7483532B2 (en) 2003-07-03 2009-01-27 Microsoft Corporation RTP payload format
WO2005029490A1 (en) 2003-09-25 2005-03-31 Samsung Electronics Co., Ltd. Apparatus and method for displaying audio and video data, and storage medium recording thereon a program to execute the displaying method
US7480382B2 (en) 2003-09-30 2009-01-20 Microsoft Corporation Image file container
JP4603551B2 (ja) 2003-10-24 2010-12-22 マイクロソフト コーポレーション リアルタイム制御プロトコル(rtcp)のメッセージへのセッション記述のメッセージの埋め込み
US7586938B2 (en) * 2003-10-24 2009-09-08 Microsoft Corporation Methods and systems for self-describing multicasting of multimedia presentations
US8472792B2 (en) * 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
KR101244308B1 (ko) * 2003-12-08 2013-03-18 삼성전자주식회사 동영상 파일의 암호화 방법 및 그를 이용한 디지털 저작권관리방법
EP1542488A1 (en) 2003-12-12 2005-06-15 Telefonaktiebolaget LM Ericsson (publ) Method and apparatus for allocating a pilot signal adapted to the channel characteristics
JP2006164378A (ja) 2004-12-06 2006-06-22 Toshiba Corp 情報記録媒体、情報記録方法、情報再生方法、情報記録装置、情報再生装置
US20060227813A1 (en) * 2005-04-11 2006-10-12 Mavrogeanes Richard A Method and system for synchronized video recording/delivery
CA2604203A1 (en) * 2005-04-13 2006-10-19 Nokia Corporation Coding, storage and signalling of scalability information
US20060293077A1 (en) * 2005-06-27 2006-12-28 Nokia Corporation System, terminal, method, and computer program product for allocating memory for storage of content
US7843974B2 (en) * 2005-06-30 2010-11-30 Nokia Corporation Audio and video synchronization
KR100927978B1 (ko) * 2005-09-01 2009-11-24 노키아 코포레이션 리치 미디어 콘텐츠의 프로그레시브 다운로딩 및스트리밍을 위해 iso 기반 미디어 파일 포맷으로 svg콘텐츠를 임베딩 하는 방법
DE102005062468A1 (de) 2005-12-27 2007-07-05 Robert Bosch Gmbh Verfahren zur Synchronisation von Datenströmen
US7995143B2 (en) * 2006-02-10 2011-08-09 Qualcomm Incorporated Wireless video link synchronization
US8065672B2 (en) * 2007-01-23 2011-11-22 Oracle International Corporation Simplifying rollback to prior versions of patches used to fix errors in pre-installed software
US20090169001A1 (en) * 2007-12-28 2009-07-02 Cisco Technology, Inc. System and Method for Encryption and Secure Transmission of Compressed Media

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6169843B1 (en) * 1995-12-01 2001-01-02 Harmonic, Inc. Recording and playback of audio-video transport streams
JP2000078197A (ja) * 1998-09-03 2000-03-14 Toshiba Corp 通信ノード及びパケット転送方法
WO2007012062A1 (en) * 2005-07-19 2007-01-25 Apple Computer, Inc. Method and apparatus for media data transmission
JP2008061010A (ja) * 2006-08-31 2008-03-13 Toshiba Corp 映像音声送信装置
JP4766473B2 (ja) * 2007-07-02 2011-09-07 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
JPN5010012584; 'INTERNET STREAMING MEDIA ALLIANCE IMPLEMENTATION SPECIFICATION VERSION 1.0 + CORRIGENDA' [ONLINE] , 20040603 *
JPN5010012585; JOINT PHOTOGRAPHIC EXPERT GROUP CONFERENCE , 20030305, P5-69, JPEG FORUM LTD *
JPN5010012586; VIDEO STANDARDS AND DRAFTS N.N5298, 20030430, P.I-VII, 1-10 *
JPN5010012587; H. SCHULZRINNE: 'RTP: A TRANSPORT PROTOCOL FOR REAL-TIME APPLICATIONS' Internet engineering task force P1,7,12-14, 20030701, IETF *
JPN5010012588; INTERNET STREAMING MEDIA ALLIANCE [ONLINE] , 20060915 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013018517A1 (ja) * 2011-07-29 2013-02-07 ソニー株式会社 ストリーミング配信装置および方法、ストリーミング受信装置および方法、ストリーミングシステム、プログラム、並びに記録媒体
JPWO2013018517A1 (ja) * 2011-07-29 2015-03-05 ソニー株式会社 ストリーミング配信装置および方法、ストリーミング受信装置および方法、ストリーミングシステム、プログラム、並びに記録媒体
US9113178B2 (en) 2011-07-29 2015-08-18 Sony Corporation Streaming distributing device and method, streaming receiving device and method, streaming system, program, and recording medium
JP2015524598A (ja) * 2012-11-30 2015-08-24 サムスン エレクトロニクス カンパニー リミテッド コンテンツを保存した情報記録媒体、コンテンツ提供方法、コンテンツ再生方法及びその装置
US9454995B2 (en) 2012-11-30 2016-09-27 Samsung Electronics Co., Ltd. Information storage medium storing content, content providing method, content reproducing method and apparatus therefor
WO2014188960A1 (ja) * 2013-05-23 2014-11-27 ソニー株式会社 送信装置、送信方法、受信装置および受信方法

Also Published As

Publication number Publication date Type
US20100189424A1 (en) 2010-07-29 application
WO2009003685A1 (en) 2009-01-08 application
RU2009148647A (ru) 2011-08-10 application
EP2149264B1 (en) 2011-01-12 grant
RU2009147728A (ru) 2011-08-10 application
EP2149264A1 (en) 2010-02-03 application
JP4766473B2 (ja) 2011-09-07 grant
WO2009003684A1 (en) 2009-01-08 application
CN101731013A (zh) 2010-06-09 application
CN101731013B (zh) 2013-06-12 grant
JP5334335B2 (ja) 2013-11-06 grant
KR20100025018A (ko) 2010-03-08 application
KR20100029137A (ko) 2010-03-15 application
US8462946B2 (en) 2013-06-11 grant
US9236091B2 (en) 2016-01-12 grant
RU2459378C2 (ru) 2012-08-20 grant
EP2160899A1 (en) 2010-03-10 application
JP2010531590A (ja) 2010-09-24 application
RU2492587C2 (ru) 2013-09-10 grant
WO2009003683A1 (en) 2009-01-08 application
US20100189256A1 (en) 2010-07-29 application
CN101790886A (zh) 2010-07-28 application
KR101074585B1 (ko) 2011-10-17 grant
DE602008004502D1 (de) 2011-02-24 grant
KR101199732B1 (ko) 2012-11-08 grant
CN101790886B (zh) 2012-12-05 grant

Similar Documents

Publication Publication Date Title
US6801544B1 (en) Method of converting a packetized stream of information signals into a stream of information signals with time stamps and vice versa
Zambelli IIS smooth streaming technical overview
US8806050B2 (en) Manifest file updates for network streaming of coded multimedia data
US20080273698A1 (en) Device for and a Method of Processing a Data Stream Having a Sequence of Packets and Timing Information Related to the Packets
WO2012096372A1 (ja) コンテンツ再生装置、コンテンツ再生方法、配信システム、コンテンツ再生プログラム、記録媒体、およびデータ構造
US20120265892A1 (en) Method and system for secure and reliable video streaming with rate adaptation
US20060107187A1 (en) Buffering packets of a media stream
US20060184790A1 (en) Protecting elementary stream content
US7231516B1 (en) Networked digital video recording system with copy protection and random access playback
US20070143807A1 (en) Data distribution apparatus, data provision apparatus and data distribution system comprised thereof
US20060037041A1 (en) Method and apparatus for transporting broadcast video over a packet network including providing conditional access
US20090288125A1 (en) Packet transmitting apparatus
US20050123136A1 (en) Motion picture file encryption method and digital rights management method using the same
US20090119594A1 (en) Fast and editing-friendly sample association method for multimedia file formats
US20020090086A1 (en) Pointers to encrypted data in RTP header
US20070130498A1 (en) Time-shifted presentation of media streams
US20090055417A1 (en) Segmented metadata and indexes for streamed multimedia data
US20070162981A1 (en) Packet transmitter apparatus
US20080304810A1 (en) Device for and a Method of Processing an Input Data Stream Comprising a Sequence of Input Frames
US20030167397A1 (en) Transparently embedding non-compliant data in a data stream
US20100262628A1 (en) Method and apparatus for media data transmission
US20090031390A1 (en) Method and apparatus for synchronized transmission and reception of audiovisual data and index data in internet protocol television applications for implementing remote network record with instant personal video recorder support
CN1902865A (zh) 从服务器到客户的流式传输
WO2005039131A1 (en) Container format for multimedia presentations
US20140019587A1 (en) Dynamic Adaptive Streaming over Hypertext Transfer Protocol as Hybrid Multirate Media Description, Delivery, and Storage Format

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120619

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120918

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120925

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121210

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130702

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130729

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250