JP4766473B2 - メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法 - Google Patents

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

Info

Publication number
JP4766473B2
JP4766473B2 JP2010513775A JP2010513775A JP4766473B2 JP 4766473 B2 JP4766473 B2 JP 4766473B2 JP 2010513775 A JP2010513775 A JP 2010513775A JP 2010513775 A JP2010513775 A JP 2010513775A JP 4766473 B2 JP4766473 B2 JP 4766473B2
Authority
JP
Grant status
Grant
Patent type
Prior art keywords
media
information
stored
data
packets
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.)
Active
Application number
JP2010513775A
Other languages
English (en)
Other versions
JP2010531590A (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
Grant 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

Description

本発明は、転送プロトコルデータパケットとそれに関連付けられたサイド情報とを、たとえばISO(国際標準化機構)ベースメディアファイルフォーマットに基づくファイルのような、メディアデータコンテナとメタデータコンテナとを有するファイルに記憶すること、および/またはファイルから読出すことに関する。

さまざまな電子装置は、メディアデータストリームを受信し、かつ表示することが可能である。このようなメディアデータストリームは、たとえば、DVB−H標準(デジタルビデオ放送−携帯機器用)(Digital Video Broadcasting - Handhelds)またはDVB−T標準(デジタルビデオ放送−地上放送用)(Digital Video Broadcasting - Terrestrial)に従ってメディアストリームを放送するデジタルビデオ放送ネットワークから受信することができる。

DVB−Tは、国際標準ISO/IEC 13818(IEC=International Electrotechnical Commission)に従った基本MPEG−2映像および音声ストリームを含む内蔵MPEG−2(MPEG=Moving Pictures Expert Group)転送ストリームを使用する。MPEG−2転送ストリームは、今日の放送システムの多くにおいて使用されている多重通信である。これは、典型的には音声および映像であるが他のデータでもある1つ以上のメディアプログラムのストリーム多重通信である。MPEG−2転送ストリームは、すべてのメディアストリームにおいて、共通クロックを共有し、タイムスタンプ付きメディアサンプル(アクセスユニット、AU)を使用する。これにより、送信機のクロックと受信機のクロックとの同期化、および音声ストリームと映像ストリームとのリップシンクが可能となる。

DVB−Hについて、基本音声および映像ストリームは、RTP(リアルタイム転送プロトコル)(Real-Time Transport Protocol)、UDP(ユーザデータグラムプロトコル)(User Datagram Protocol)、IP(インターネットプロトコル)(Internet Protocol)、およびMPE(マルチプロトコルカプセル化)(Multi-Protocol Encapsulation)によってカプセル化されて、IPデータキャスティングされる。RTPは、IPネットワークによるマルチメディアデータの効果的なリアルタイム配信に使用される。多重通信は、典型的に、異なるネットワークポートを各別個のメディアストリームに関連付けることによって行なわれる。たとえば、あるネットワークポートは映像用であり、別のネットワークポートは音声用である。異なるメディアは、通常は、異なるクロックまたはクロックレートを有する異なるソースに由来する。たとえば、音声サンプルは、音声サンプリング装置のクロックレートに依存するサンプルレートを有し、映像フレームのフレームレートは、映像フレーム取込装置のクロックレートに依存する。このようなクロックは数百万分の1より大きい固有の周波数エラーを有することがあり、1日あたり数十秒のエラーが蓄積されることになる。「クロックスキュー」という用語は、クロックの実際の発振器周波数における公称周波数との差として規定される。送信機のクロックが受信機のクロックよりも速く動作する場合は、受信機においてパケット蓄積が引起され得る。送信機のクロックが受信機のクロックよりも遅く動作する場合は、受信機のバッファの充填不足を招くことになる。したがって、受信機のクロックレートが送信機のクロックレートと異なる場合、受信機のバッファは徐々に充填されるか、または空となる。さらに、クロックスキューは、受信機において、関係付けられた音声サンプルと映像サンプルとの非同期化を引起し得る。

RTCP(リアルタイム転送制御プロトコル)(Real-Time Transport Control Protocol)は、RTPストリームについてクロックリカバリおよび同期化を可能とする。RTCPチャネルは各RTPストリームに関連付けられ、送信者レポート(SR)の形態による送信機から受信機への、およびその逆の制御情報を含む。各RTCP SRは、2つのタイムスタンプ、すなわち送信機のシステムクロック(基準時間)のNTP(ネットワークタイムプロトコル)(Network Time Protocol)タイムスタンプと、関連付けられたRTPストリームの対応するメディアタイムスタンプとを含む。これらのRTCP SRは、音声および映像の両方について送信される。RTPパケットは、RTP時間およびNTP時間の値から時間軸で設定され得、メディアは完全に同期化され得る。

ストリーミングサービスは、受信中に即時に消費されるように、時間的に制約されてまたは制約されずに配信される、同期化されたメディアストリームのセットとして規定される。各ストリーミングセッションは、音声、映像、および/または時間が合わせられたテキストのようなリアルタイムメディアデータを含む。たとえば携帯型テレビによって映画のメディアデータを受信するユーザは、映画を観ること、および/または映画をファイルに記録することができる。一般に、この目的で、受信されたメディアストリームの受信されたデータパケットは、生メディアデータをファイルに記憶するためにパケット分解される。つまり、受信された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ベースメディアファイルフォーマット("Information technology - coding of audio-visual objects - part 12: ISO base media file format")」に明記されているISOベースメディアファイルフォーマットから派生している。このフォーマットのファイルは、メディアデータおよびメタデータを含む。このようなファイルを動作可能にするには、これらのデータの両方が存在しなければならない。メディアデータは、ファイルに関係付けられたメディアデータコンテナ(mdat)に記憶され、メタデータは、ファイルのメタデータコンテナ(moov)に記憶される。従来は、メディアデータコンテナは実際のメディアサンプルを含む。すなわち、たとえばインターリーブされた時間順の映像および/または音声フレームを含み得る。これにより、各メディアは、メディア内容特性を記述するメタデータコンテナmoov内に自身のメタデータトラック(trak)を有する。メタデータコンテナmoov内の追加的なコンテナ(ボックスとも称する)は、ファイル特性、ファイル内容などについての情報を含み得る。

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

この手法には、データパケットを多重分離および/またはパケット分解し、次いであらゆる基本メディアストリーム(音声および/または映像)について別個のメディアトラックを書込むことに比べて、2つの利点がある。第1に、記憶中に受信側装置に要求される複雑度が低下する。なぜなら、受信されたデータパケットの多重分離または他の処理が必要ではないからである。受信されたデータパケットの、未修正の形態でのファイル記憶のみが行なわれる。第2に、特にメディアが転送/多重通信レベルで暗号化されている場合、またはパケット化方式が不明である場合には、受信されたデータパケットを多重分離してメディアトラックを分離することが全く不可能なケースもある。第3に、PVR(PVR=パーソナルビデオレコーダ)用途におけるタイムシフティングが、最初の2点によってより容易となる。

受信ヒントトラックからの再生は、正常なストリーム受信をエミュレートし、かつ記憶されたデータパケットを受信ヒントトラックから、IPを利用することによって受信された通りに読出すことによって行なわれ得る。受信ヒントトラックは、すべてのヒントトラックのように、メディア再生タイミングを有するメディアトラックとは異なり、転送タイミングを有する。したがって、受信側装置の受信タイムスタンプは、受信ヒントトラックに記憶された各データパケットに関連付けられる。

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

ストリーミング受信機は、受信時間から送信機のシステムクロックを回復し、受信機のシステムクロックを送信機のシステムクロックに整合させて、直接再生するためにバッファオーバフロー、アンダーランそれぞれを回避し得る。RTPパケットまたはRTCP送信者レポートパケットのうちどれがクロックリカバリに使用されるとしても、その到着時間におけるジッター(ネットワークジッター)が原因で、瞬時にクロックリカバリができない。メディアタイムスタンプは固定レートで常に増大するものの、同期化されていないサンプリングクロックを有する独立した音声捕捉ユニットおよび映像捕捉ユニットは、RTPクロックのドリフトを引起し得る。RTCP SRは、ストリームの各々についてNTPおよびRTPタイムスタンプを有しており、したがって、関与する装置のドリフトを抽出するのに使用することができる。多くのシステムにおいて、RTCP SRの作成、特にNTPクロックとRTPクロックとの関係に関与するジッターが存在する。したがって、ストリーミングクライアントは起動後瞬時に完全なリップシンクを実現しなくてもよいが、映像ストリームと音声ストリームとのリップシンクが正確となる前に、ある一定数のRTCP SRを考慮する必要があることが一般的である。送信機のシステムクロックを回復する必要があり、かつ高いネットワークジッターが存在する場合は、RTPパケットまたはRTCP送信者レポートパケットのうちどれがクロックリカバリに使用されるとしても、ある一定数のRTPパケットまたはRTCP送信者レポートパケットが必要である。ネットワークジッターおよびクロックドリフトは、関係付けられたデータパケットのRTPタイムスタンプに加えて、上述の複数のRTCP SRの情報を用いて、リアルタイムストリーム受信中に再び算出され得る。

現在のところ、RTP受信ヒントトラックは、メディアストリームの受信されたデータパケットのみを記憶すると明記されており、それぞれ送信者レポートからのタイミング情報である対応するRTCP SRを含まない。受信されたRTPパケットのRTPタイム
スタンプだけでは、異なるストリームから受信されたメディアデータを同期化するには不十分である。これは、一般に各メディアストリームが、その初期タイムスタンプおよび初期シーケンス数にランダムな値を割当て、タイムスタンプのクロック周波数は、伝えられるメディアデータのフォーマットに依存するからである。RTPパケットの到着または受信時間は、ストリーム同士を同期化するのに使用され得る。しかしこの手法の問題点は、RTPがパケット配信を保証するものでも、帯域外配信を防ぐものでもない点である。その結果、受信時間に基づく同期化だけでは正確度を保証することができない。

上述のように、異なるRTPストリーム同士を同期化する最も正確な方法は、NTPタイムスタンプフォーマットのストリームのうち、RTPタイムスタンプと共通タイムスタンプとの変換を可能にする情報を含む、関連付けられたRTCP SRを待機することを必要とする。これらのRTCP送信者レポートは、通常、5秒ごとに各ストリームについてある一定のビットレートで送信される。2つのRTCP SR間の時間間隔は、ビットレートに依存する。

それゆえ、正確なタイミングによるRTP受信ヒントトラックの再生およびリップシンクは、次の2つのケースでのみ可能である。第1に、異なるメディアクロック間にクロックドリフトがなく、受信された各RTPパケットについてRTCP送信者レポートインターストリーム同期化データが利用可能である。しかしこれは、現実の環境では起こる可能性が極めて低い理想的な状態に相当する。第2に、受信側装置は、受信されたRTPパケットを記憶する前にそれらのRTPタイムスタンプを調整することによって、記憶中にRTCP SRのタイミング情報を考慮しなければならない。

第1のケースは理論的なケースに過ぎず、実際には発生しない。第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に記載のファイルを読出すための装置、および請求項23に記載のファイルを読出すための方法によって解決される。

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

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

この受信された関連付けられたデータまたはサイド情報は、いわゆる関連付けられた受信ヒントトラック(「arht」)の形態で、メディアデータコンテナとメタデータコンテナとを含むファイルに記憶される。このトラックは、たとえばISO/IEC 14496−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のデータパケットと、第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および第2の制御パケットは、リップシンク、クロックリカバリ、および/またはクロックドリフト調整のためにオンザフライで処理され得る。この種の再生は、記録されたメディアストリームのシミュレートされたライブ受信に等しい。

記録された受信ヒントトラック(第1/第2のデータパケット)および記憶された関連付けられた受信ヒントトラック(第1/第2の制御パケット)は記録全体に及ぶ。再生中、たとえばRTCP SRの形態の関連付けられた受信ヒントトラックの制御データは、複数の未来のRTCP SRを考慮することによって、たとえば正確なリップシンクのために先取りされ得る。未来のRTCP SRは、現在の再生時点の未来における時点に関係する。

本発明の利点は、関連付けられた受信ヒントトラックの概念、すなわちメディアストリームの受信中に制御情報を記録することによって、単に複雑度を増すことなく、ファイルからストリームを同期化して再生することに関係のあるすべての情報について、軽い記録プロセスが可能となる点である。

記録されたファイルが長期記憶向けであり、いずれ何回も再生されることになる場合は、記憶された第1/第2のデータパケットおよび記憶された第1/第2の制御パケットを、それぞれ関連付けられたメタデータと共に再生ごとに分析することを回避し、その代わり、メディアタイミング、すなわち記憶された第1/第2のデータパケットに含まれる第1/第2のメディアデータサンプルを再生するためのタイミングを、さらなる処理を行うことなく直接的に利用可能にすることが望ましいことがある。

通常、これは、記憶されたデータパケットを受信ヒントトラックからパケット分解し、かつトラックごとに1基本ストリームを有する関係付けられたメディアデータコンテナ内のメディアトラックに保存することを意味することになる。これは、たとえば転送暗号化がストリームパケットに適用された場合、または記憶容量が限られている場合、常に可能または望ましいとは限らない。

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

この目的で、本発明の実施例は、ファイルに関係付けられたメディアデータコンテナに記憶された転送プロトコルに関係付けられたデータパケットを処理し、かつファイルのメタデータコンテナに記憶された関連付けられたメタ情報を処理するための装置を提供する。関連付けられたメタ情報は、転送タイミング情報と、メディアコンテナに記憶されたデータパケットの位置を示す位置情報とを含む。当該装置は、記憶されたデータパケットと記憶された関連付けられたメタ情報とに基づいて、記憶されたデータパケットのペイロードについての復号化情報を決定するためのプロセッサを含む。復号化情報は、記憶されたデータパケットのどのペイロードをどの時点で再生するかを示す。当該処理するための装置は、スタンドアローンの装置、およびファイルを記憶するための上述の装置に一体化される装置であり得る。

一実施例によれば、記憶されたデータパケットは、MPEG−2転送ストリームパケットを含み得る。別の実施例によれば、記憶されたデータパケットは、パケット化されたメディアデータを有するRTPパケットを含み得る。

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

記憶された復号化情報サンプルおよび、以下で「仮想メディアトラック」とも称される、関連付けられた復号化情報メタデータトラックは、関連付けられた受信ヒントトラックの概念に基づき、再生について上述の利点を供する。仮想メディアトラックのメタデータ部分において、メディアデータコンテナ内の関係付けられた復号化情報サンプルについてのメディアタイミングが提供される。復号化情報サンプルは、どの記憶されたデータパケットまたは転送ユニットから、関係付けられたメディアアクセスユニットについてのメディアデータを取得するかの情報を提供し、メディアパケットのパケット分解を不要とする。仮想メディアトラックは、受信ヒントトラック、および必要であれば関連付けられた受信ヒントトラックからの情報を用いたメディアストリームの最終的な受信後に作成され得る。これは「逆ヒンティングプロセス」で行なわれ、結果として得られるファイルによって、再生装置は、ファイルをサーチし、メディアタイミングに基づいてメディアに対してランダムアクセスを行うことが可能となる。

仮想メディアトラックは、不完全なメディアトラックと見なされ得る。したがって、メディアトラックの(典型的に「サンプルテーブル」を用いることによって)RTPおよびRTCP受信ヒントトラックから回復されたタイミングならびにすべてのインデックスの両方を適用することができる。また、時間が合わせられたメタデータトラックは、仮想メディアトラックを参照し、それらを拡張し得る。

仮想メディアトラックは、受信ヒントトラック転送ユニットからアクセスユニットを再構築するためのコンストラクタを含み得る復号化情報サンプル(仮想メディアサンプル)で構成され得る。さらに、復号化情報サンプルは、アクセスユニット(不完全なコンストラクタ)の再構築に関係のある1つ以上の有意な伝送ユニットへのリンクを含み得る。また、たとえば受信プロセス中のパケット損失の場合には、仮想メディアトラックの復号化情報サンプルまたは仮想メディアサンプルは空であり得る。代替的に、以下で仮想メディアサンプルとも称される仮想トラックの復号化情報サンプルは、典型的なメディアトラックのように、完全に復元されたメディアサンプルを含み得る。

仮想メディアトラック(および時間が合わせられたメタデータトラックからのいずれかの関連付けられた情報)のサンプルテーブル内のインデックスからの情報は、受信ヒントトラックの対応する伝送ユニットへのリンクに従うことによって、基準受信ヒントトラックに論理的に適用することができる。

仮想メディアトラックは、記述をストリームから厳密に回復させることができなければ、仮想メディアサンプルの近似的かつ不完全な記述を含み得る。これは、特に、データパケットが暗号化されるかまたはパケット分解方式が完全に不明であるときに当てはまる。

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

記録中に、受信されたデータパケットをメディアトラックにオンザフライで変換することに比べて、仮想メディアトラックは、メディアデータ(記憶されたデータパケット)をパケット分解する必要なしにメディアタイミングおよびメタデータを供給し、したがって記憶空間を節約し得る。これらにより、再生装置がメディアタイミングに基づいてファイルをサーチすることが可能となる。仮想メディアトラックは、典型的なメディアトラックをファイルに追加した場合のようにファイルサイズを倍増することなく、メディアトラックおよび受信ヒントトラックの利点を組合せたものである。仮想メディアトラックの概念によって、当初の受信プロセスのすべての情報、たとえばエラー隠しに役立つ損失パケットについての情報と、リップシンクに役立つ受信タイミングについての情報とが保持される。同時に、従来のメディアトラックの、メディアアクセスのためのすべての可能性が、本発明の仮想メディアトラックによって提供される。従来のメディアトラックに比べて、
より一層の柔軟性が提供される。記憶された転送ユニット(データパケット)がアクセスユニット(メディアフレーム)に完全に復元されるか、またはたとえば記憶空間を節約するためにアクセスユニットの再構築用のコンストラクタもしくはリンクのみが記憶されるかは、サンプルごとに決定され得る。さらに、すべての可能性が1つの仮想メディアトラックに混合され得る。すなわち、復号化情報サンプルもしくは仮想メディアサンプルは、完全なアクセスユニット、コンストラクタ、リンクを含むか、または空である。

複数の仮想メディアトラックは、同一の受信ヒントトラックからの伝送ユニットまたはデータパケットを参照し得る。これにより、記録された同一のデータパケットストリームについて異なるインデックスが可能となる。たとえば、一方が音声に関係付けられ、他方が映像に関係付けられた、ランダムアクセスによる2つの仮想メディアトラックは、同一のMPEG−2転送ストリーム受信ヒントトラックの音声および映像についてのインデックスを示す。

受信され記憶されたデータパケット内の暗号化されたメディアデータサンプルの再生を可能とするには、データパケットに加えて、関連付けられたキーストリームメッセージもファイルのメディアデータコンテナに記憶され得る。キーストリームメッセージは、本発明の実施例に従って、キーストリーム受信ヒントトラックのサンプルに記憶される。キーメッセージを、対応する受信ヒントトラック内の暗号化されたメディアパケットに整合させるために、受信時間(転送時間)をキーストリームサンプルのタイムスタンプとして使用し得る。トラック基準は、キーストリーム受信ヒントトラックをメディア受信ヒントトラックに関連付けるのに使用される。

ファイルを記録する目的で、本発明の実施例は、関係付けられたメディアデータコンテナとメタデータコンテナとを有するファイルを記録するための装置を提供する。当該装置は、各々がペイロードを含むデータパケットを受信し、かつ複数の暗号キーを有するキーストリームパケットを受信するための受信機を含む。各暗号キーは、データパケットのペイロードに関連付けられる。当該装置は、受信されたデータパケットと受信されたキーストリームパケットとをメディアデータコンテナに記憶し、かつ関連付けられたメタデータをメタデータコンテナに記憶するための記録装置を含む。関連付けられたメタデータは、受信されたデータパケットおよび受信されたキーストリームパケットの転送タイミング情報と、メディアデータコンテナ内の記憶されたデータパケットおよび記憶されたキーストリームパケットの位置を示す位置情報とを含む。データパケットおよびキーストリームパケットを記録するための装置は、スタンドアローンの装置、ならびに上記の記憶および/または処理するための装置に一体化されるまたは組合せられる装置であり得る。

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

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

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

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

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

したがって、特に、暗号化されたアクセスユニットを伝送ユニットから再構築することができれば(内容暗号化の場合)、メディアアクセスユニットとキーメッセージとの正確なタイミング関係を生成することが可能である。

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

本発明の実施例は、キーメッセージの受信タイミングと、受信されたデータパケットに対するタイミング関係とを十分に維持する。ファイルが、記憶されたデータパケットを含むメディアトラック内の対応するメディアサンプルごとに、キーメッセージを有するメタデータトラックを含むとき、本発明の実施例は、記録されたファイルを再生に最適化されたファイルに変換することを可能とする。したがって、再生中に、記録されたキートラックを正しいキーにパーズする必要はない。

本発明の他の目的および特徴は、添付の図面と合せて考慮されると、以下の詳細な説明から明らかとなるであろう。

本発明の一実施例に係る、ファイルを記録するための装置の概略的なブロック図である。 本発明の一実施例に係る、関係付けられたメディアデータコンテナとメタデータコンテナとを有する記録されたファイルの概略的なファイル構造を示す図である。 ISOベースメディアファイルフォーマットに基づくファイルの概略的な構造を示す図である。 本発明の一実施例に係る、ファイルを記録するための方法のフローチャートである。 本発明のさらなる実施例に係る、ファイルを記録するための別の方法のフローチャートである。 本発明の一実施例に係る、仮想メディアトラックを取得するためにファイルを記録し処理するための装置の概略的なブロック図である。 本発明の一実施例に係る、仮想映像トラックを有する記録されたファイルの概略的な構造を示す図である。 本発明の一実施例に係る、データパケットを記録し、仮想メディアサンプルを作成し、かつ記憶されたデータパケットに含まれるメディアサンプルを仮想メディアサンプルによって再生するための方法のフローチャートである。 本発明の一実施例に係る、記憶されたデータのペイロードに含まれるメディアフレームを参照する仮想メディアサンプルの記述情報をどのように取得するかについての一例を示す図である。 本発明の一実施例に係る、受信ヒントトラックおよび仮想メディアトラックのサンプルのマッピングを示す図である。 本発明の一実施例に係る、ファイルを記録するための装置の概略的なブロック図である。 携帯型TV環境におけるキーストリームおよびメディア同期化の原理を示す図である。

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

装置100は、第1のクロックに基づくパケット化された第1のメディアデータサンプルを含む第1のデータパケット110を受信するため、および第1のクロックとは異なる第2のクロックに基づく、第1のメディアデータサンプルに関連付けられた第2のメディアデータサンプルを含む第2のデータパケット112を受信するための受信機108を含む。また、受信機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/IEC1449
6−14によって明記されたいわゆるMP4ファイルであり得る。MP4ファイルフォーマットは、メタデータコンテナ106に記憶されたメタデータから構成され、メタデータは、典型的にメディアデータコンテナ104に記憶されたメディアに関係付けられた情報を記述する。メディアデータコンテナ104は、ファイル102の外部にあってもよい。たとえば、メディアデータコンテナ104は、ファイル102内のリンクによって参照可能な別個の記憶位置であってもよい。普通、メディアデータコンテナ104に記憶されたメディアデータは、符号化された映像および/または音声データである。コンテナ104および106は、関連の明細書において“ボックス”(または“アトム”)と称されるデータ構造である。

典型的に、ボックスはサイズ欄、タイプ欄、およびデータ欄から構成される。バイトの数である、サイズ欄を含む全ボックスのサイズが、当該サイズ欄に含まれる。通常4文字のボックス識別子は、ボックスのタイプ欄に記憶される。実際のヘッダデータおよびメディアデータは、データ欄に記憶される。このようなボックス構造を用いた上述のMP4ファイルフォーマットを形成するメタデータコンテナ106は典型的に、ムービーボックス“moov”と称される。同様に、メディアデータコンテナ104は、メディアデータボックス、以下“mdat”と称される。

メディアデータコンテナmdat104は典型的に、いわゆるチャンクにグループ分けされたデータユニットまたはサンプルのシーケンスから構成される。チャンクは異なるサイズであり得、チャンク内のサンプルは異なるサイズであり得る。

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

チャンク118、122の記憶は、インターリーブによって行なわれ得る。
チャンクのサンプルはその結果、1つ以上の受信されたデータパケットを含み得る。すなわち、第1のチャンク118のサンプルは、1つ以上の受信された第1および/または第2のRTPパケット110、112を含み得、第2のチャンク122のサンプルは、受信された第1および/または第2の制御パケット114、115の1つ以上の第1および/または第2のRTCP SRを含み得る。

複数の第1のチャンク118は、(RTP−)受信ヒントトラックのメディアデータ部とみなされ得る。同様に、複数の第2のチャンク122は、受信ヒントトラックについての関連付けられた(RTCP−)受信ヒントトラックのメディアデータ部とみなされ得る。すなわち、図1および図2の場合、すべての受信されたRTPパケット110、112に対して1つのRTP受信ヒントトラックがあり、すべての受信されたRTCPパケット114、115、またはRTCP SRに対して1つの関連付けられたRTCP受信ヒントトラックがある。これは、再コード化複雑度が最小限であることを意味する。

RTCP受信ヒントトラックは、その関係付けられたベースRTP受信ヒントトラックのSDP(セッション記述プロトコル)(Session Description Protocol)情報との併用でのみ有用であるが、包括的なパケットペイロード構成データを全く必要としない。

RTCP受信ヒントトラックサンプルペイロードは、生RTCPパケットからなる。この生RTCPパケットは、そのRTCPヘッダに直接含まれ得るか、または1つのサンプ
ルに複数の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受信ヒントトラックおよび単一の関連付けられたRTCP受信ヒントトラックから、たとえばRTPパケットとともに記憶されたそれぞれのメディアタイプについてのSDP情報を用いて、識別され得る。

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

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

転送タイミングは、受信機108の受信クロックのタイムスタンプであり得るか、および/または受信されたRTPパケット110、112のRTPタイムスタンプであり得る。すなわち、各RTPパケットまたはサンプルについて、RTP受信ヒントトラックのメタデータ部124は、それぞれのRTPパケット110、112がいつ受信されたかについての表示、およびさらに、それぞれのRTPパケットがメディアデータコンテナ104のどこに記憶されたかについての情報を含む。

関連付けられたRTCP受信ヒントトラックのメタデータ部128についても同じことが言える。メタデータ部128は、第2のチャンク122に記憶された、受信されたRTCPパケットの転送タイミング情報を含む。転送タイミング情報は、たとえば、関係付けられたRTCPパケットの受信時間、またはRTCPパケットに関係付けられたRTPパケットのRTPタイムスタンプであり得る。関連付けられたRTCP受信ヒントトラックのメタデータ部128はさらに、RTCPパケットがメディアデータコンテナ104のど
こに記憶されたかを示す位置情報を含む。

他の実施例によると、それらの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のチャンクのサンプルは、1つ以上の受信された第1のデータパケット110を含み得、第2のチャンクのサンプルは、1つ以上の受信された第2のデータパケット112を含み得、第3のチャンクのサンプルは、受信された第1の制御パケット114の1つ以上の第1のRTCP SRを含み得、第4のチャンクのサンプルは、受信された第2の制御パケット115の1つ以上の第2のRTCP SRを含み得る。

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

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

次に図3を参照して、ISOメディアベースフォーマットに基づくファイルのメタデータコンテナ106をより詳細に説明する。

ISOメディアベースフォーマットに基づくファイルの“moov”と称されるメディアデータコンテナ106は、ボックスにさらに階層化されており、ヘッダ情報全体を含む、ムービーヘッダボックス“mvhd”の形態の必要なボックス302と、複数の“trak”ボックス304(図3では1つのみ図示)とを有する。trakボックス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のチャンクおよびサンプルの少なくとも1つのデータがこのボックスに含まれ、各項目にリンクされている。stbl320内の項目を説明するために、sttsボックス322は1つのサンプルの持続期間を含み、stsdボックス324はサンプルの詳細を含み、stsz326はサンプルサイズを含み、stsc328はチャンクに含まれるサンプルの数、すなわちデータパケットの数を含み、stcoボックス330はチャンクオフセットを含み、各々がメディアデータコンテナ104内のサンプル/パケットにリンクされていることが注目される。

上述のように、記録装置116は、受信されたデータパケット110、112の(転送)タイミング情報および位置情報を、関係付けられた受信ヒントトラックのメタデータ部124、128に記憶するように適合される。特に、受信タイムスタンプから導出されたタイミング情報であり得るか、またはその後受信されたデータ/制御パケットから導出された関連のタイミング情報であり得るタイミング情報は、トラック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へのサンプルを用いて、特定的なサンプル、その場所、および関連付けられたサンプル記述を含むチャンクを見つけることができる。各エントリによって、同一の特性のチャンクの実行の第1のチャンクのインデックスが与えられる。ここで、前のエントリから1つエントリを差し引くことによって、それぞれの実行にいくつのチャンクがあるのかを演算することができる。適切なチャンクごとのサンプルを乗算することによって、これをサンプル個数に変換することができる。

チャンクオフセットテーブルstcoまたはco64 330は、メディアデータコンテナ104内の各チャンクのインデックスを与える。2つの変形例があり、32ビットまたは64ビットのオフセットが使用可能である。後者は、非常に大きなファイル102を管理する際に有用である。オフセットは通常、ファイルオフセットであり、たとえばメディアデータコンテナなどのファイル内のいずれかのボックス内へのオフセットではない。したがって、いずれのボックス構造も用いることなく、ファイル内のメディアデータを参照することができる。

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

第1のステップ502においてデータパケットが受信機108によって受信された後、第2のステップ504において、受信されたデータパケット110、112が、ファイル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ボックスを追加する。このボックスは、ヒントトラックについての情報ヘッダを含む。
・新たに作成されたmdiaボックスに、新たなdinfボックスを追加する。
・新たに作成されたdinfボックスに、新たなdrefボックスを追加し、トラックの生データがファイル自身の内部にあるか、またはたとえば別のファイル内もしくはURI(統一資源識別子)(Uniform Resource Identifier)を介して利用可能であるなどの外部にあるのか、のいずれかを示す。
・新たに作成された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)受信ヒントトラックからのデータパケットのペイロードをパケット分解して、トラックごとに1つの基本ストリームの余分なメディアトラックに保存することを意味する。これは、たとえば記憶容量が限られている場合にストリームデータパケットに転送暗号化を適用したときなどは、可能または望ましいとは限らない。メディアデータコンテナ104に記憶された転送パケットの正確なタイミングに加えて、受信ヒントトラックについての利用可能な拡張情報、特に、たとえばフレームの正確なSMPTEタイムスタンプまたは映像トラックについてのサブタイトルなどの、内部のメディアストリームについての情報を有することが望ましい。

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

装置600は、記憶されたデータパケットおよび記憶された関連付けられたメタ情報に基づいて、記憶されたデータパケットのペイロードの復号化情報を決定するためのプロセッサ602が図1に示される装置100とは異なっており、復号化情報は、記憶されたデータパケットのどのペイロードをどの時点で再生するかを示す。装置600は装置100の拡張部であってもよいが、特に、たとえばMPEG−2 TSパケットなどの記憶された非RTP/RTCPパケットを処理するために用いられる場合は、別個であってもよい。

図6に示される実施例では、データパケットは、ファイル102に関係付けられたメディアデータコンテナ104に記憶される。メタ情報は、上述のように、ファイル102のメタデータコンテナ106に記憶される。記憶されたデータパケットは、メディアデータ
コンテナ104のチャンク118、122にサンプルとして記憶され得る。サンプルおよび/またはチャンクは、メタデータコンテナ106内の関連付けられたメタデータトラック124、128によって参照される。

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

本発明の別の実施例によると、記憶されたデータパケットは、典型的に音声および映像である1つ以上のプログラムのストリーム多重通信を含むMPEG−2転送ストリームデータパケットを含み得る。MPEG−2転送ストリームデータパケットの長さは典型的に188バイトである。

本発明の実施例によると、決定された復号化情報は、メディアデータコンテナ104内の復号化情報チャンク604に復号化情報サンプルの形態で記憶される。その結果、各復号化情報サンプルは、たとえば、受信ヒントトラックのメディアデータ部の記憶されたデータパケットから再構築され得る映像または音声フレームなどのアクセスユニットに関係する。

プロセッサ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に記憶されたデータパケットから、たとえばメディアフレームなどのアクセスユニットを再構築するためのコンストラクタを含み得る。仮想メディアサンプルは、特定のアクセスユニットの再構築に関する、1つ以上の有意な伝送ユニットへのリンクを含み得る(不完全なコンストラクタ)。また、仮想メディアサンプルは、たとえば受信時にパケット損失が起こった場合などは空であり得る。さらなる代替肢として、仮想メディアサンプルは、従来のメディアトラックの場合のように、メディアフレームを記述する完全に復元されたメディアサンプルを含む。

仮想メディアサンプルの包括的なペイロード構成データは、同一タイプの非仮想メディアトラックの包括的なペイロード構成データを含み、たとえば、H.264コード化映像のための仮想メディアトラックは、サンプル記述内部のavcCボックスにAVC構成記録も含む。さらに、受信ヒントトラックのデヒンティング処理についての情報、たとえば、仮想メディアトラックのサンプルペイロード内に与えられる情報を用いて受信ヒントトラックから再度組立てられるメディアサンプルの最大サイズなどを含み得る。

仮想メディアトラックのサンプルのペイロードは、受信ヒントトラックからメディアサンプルデータを抽出するプロセスを記述する“コマンド”からなる。これらのコマンドは、ヒントトラック用のパケットコンストラクタから導出され、“即時コンストラクタ”、“サンプルコンストラクタ”、および“サンプル記述コンストラクタ”を含む。即時コンストラクタは、“長さ”、“データ”、および“パッド”の欄からなる。“長さ”は、“データ”欄の長さを示す。“パッド”は、過剰に準備されたスペースを充填するために用いられ得る。

サンプルコンストラクタは、トラック参照インデックス、長さ、サンプル番号、およびサンプルオフセットの欄からなる。トラック参照インデックスは、データが抽出される受信ヒントトラックを示し、サンプル番号は、受信ヒントトラックのサンプル番号を示す。サンプルオフセット欄は、抽出される長さ“length”のデータブロックの先頭を明記する。

サンプルコンストラクタを用いることによって、データをコピーせずにメディアサンプルのコンパクトな表現が可能となる。

サンプル記述コンストラクタは、トラック参照インデックス、サンプル記述インデックス、サンプル記述オフセット、および長さの欄からなる。サンプルコンストラクタと同様に、受信ヒントトラックの同一の記述からのデータは、仮想メディアサンプルに含むために用いられる。

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

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

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

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

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

すなわち、作成された仮想メディアトラックは、それぞれのメディアストリームに従ってペイロードを有するデータパケットを含む受信ヒントトラックを参照する。仮想メディアトラックの作成後、仮想メディアトラックに仮想メディアサンプル(復号化情報サンプル)が追加され、仮想メディアサンプルは、受信ヒントトラックのメディアデータ部内のサンプルまたはパケットを示し、制御伝送ユニット(たとえば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は、第1および第2のメディアフレームのメディアデータを、記憶されたデータパケットRTP1、RTP2、RTP3内のどこに見つけるかについての情報を含む。すなわち、仮想メディアパケットVMS1は、フレーム1のメディアデータを、データパケットRTP1にバイトアドレスAからバイトアドレスBまでアクセスすることによって、およびデータパケットRTP2をバイトアドレスaからバイトアドレスA+Yまでアドレス指定することによって得ることができるという情報を含む。仮想メディアサンプル2は、メディアフレーム2についてのメディアサンプルをどこで得るかの情報を含む。すなわち、仮想メディアサンプル2は、メディアフレーム2がデータパケットRTP2内のバイトアドレスA+YからバイトアドレスBにまで及び、フレーム2のさらなるメディアサンプルをデータパケットRTP3内のバイトアドレスAからバイトアドレスA+Zに見つけることができるという情報を記憶している。

仮想メディアトラックのメディアデータ部を形成する仮想メディアサンプルVMS1およびVMS2は両方とも、メタデータコンテナ106内の仮想メディアトラックのメタデータ部によって参照される。サンプル復号化時間情報は、各仮想メディアサンプルVMS1、VMS2についてのsttsボックス内に見つけることができる。その結果、上述のように、サンプル復号化時間情報は、RTPパケットRTP1、RTP2、RTP3に関連付けられた記憶されたRTPパケットを評価することによって決定され得たメディアタイミングを反映する。

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

図9とは対照的に、図10は、MPEG−2転送ストリームM2Tの記憶されたデータパケットを示す。転送ストリームM2Tは、音声サンプルを含むデータパケットA1からA7、および映像サンプルを含むデータパケットV1からV7を含む。

仮想メディアサンプルVMSA1は、音声パケットA1およびA2のペイロード同士の間で分割された第1の音声フレームに関係する。仮想メディアサンプルVMSA1は、音
声フレーム1を得るためにA1およびA2のペイロードのどの部分を取るべきかを示す。同様に、仮想メディアサンプルVMSA2は、そのメディアデータが音声パケットA2およびA3のペイロード内に見つけられ得る第2のオーディオフレームに関係付けられる。仮想メディアサンプルVMSA3は、音声パケットA4と音声パケットA5の一部とを参照して、第3の音声フレームを得る。仮想メディアサンプルVMSA4は、音声フレーム4のために、音声パケットA5の残りの部分ならびに音声パケット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のデータパケットの記憶されたタイミング情報によって示される。すなわち、この実施例を用いると、当初の受信シナリオのシミュレーションが実行可能である。

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

受信ヒントトラックを読出す装置は、典型的に以下の一連の動作を用いて、ファイルをパーズ可能か否か検出する。
・ftypボックスをパーズして、ファイル内容および構造がパーズ可能であるか否か検
出する。ファイルがパーズ不可能であれば、ファイル読出動作を中止する。
・moovボックスをパーズして、内部のtrakボックスの数を検出する。トラックがなければ、ファイル読出動作を中止する。
・各トラックのminfボックス内部のhdlrボックスをパーズして、hdlrボックス内に規定されるハンドラタイプに利用可能なハンドラプロセスがあるか否か検出する。ハンドラが認識されなければ、このトラックに対するファイル読出動作を中止する。
・各トラックのminfボックス内部のstblボックスおよびstsdボックスをパーズする。stsdボックスは、トラックの内容の識別を含み、内容を記述する。内容が理解できなければ、トラックのファイル読出動作を中止する。

ファイルがパーズ可能であれば、trakボックス内部のtrefボックスをパーズすることによってトラックリンケージが決定される。代替的に、フォーマットが内部でトラックリンケージを規定している場合は、トラックのstsdボックス内のその利用可能な情報を用いる。トラックリンケージを決定できない場合、トラックは単独であり、かつ他のトラックに含まれる情報を用いずにパーズ可能であると仮定される。トラックリンケージは読出装置の内部に記憶され、トラックに含まれる生データを理解するプロセスにおいて必要であれば用いられる。

装置は自身の動作に依存して、自身が理解し、かつファイルの提示に関するトラックを選択することができる。デフォルトですべてのトラックがパーズされるが、以下の法則が適用される。
・仮想メディアトラックについて、RTPまたはMPEG−2 TS受信ヒントトラックの代わりに仮想メディアトラックが用いられる。このトラックは、ヒンティング動作を逆にするためのデータ、すなわち、復号器が固有に理解可能な基本ストリームデータブロックを作成するために受信ヒントトラックのどのデータを抽出して他のデータとともに拡張させる必要があるかについてのデータをすでに含む。
・RTCP受信ヒントトラックについて、第1の動作モードでは、RTCPトラックがRTP受信ヒントトラックと並行に消費される。読取装置は、ストリームを同期化するための包括的なRTP/RTCP受信の利用可能なロジックを用いる。
・RTCP受信ヒントトラックについて、第2の動作モードでは、初期の同期化を検出していくつかのRTP受信ヒントトラック同士の間でクロックドリフトするために、通常の読出動作が開始される前に、RTCP受信ヒントトラック全体が消費される。このモードでは、いくつかのRTP受信ヒントトラックのRTPクロックを整合させるために、たとえば線形回帰が適用される。次に、データが消費されるとストリームにスキューが適用され、複数のRTP受信ヒントトラックの連続的な同期化された再生が促進される。
・キーストリーム受信ヒントトラックについて、第1の動作モードでは、キーストリーム受信ヒントトラックがRTPまたはMPEG−2 TS受信ヒントトラックと並行に消費される。この結果、受信ヒントトラックの特定の保護されたデータブロックについてのキーストリームデータが、実際の放送と同様に確実に利用可能となる。
・第2の動作モードでは、有効性期間がもはや重複しないようにキーストリームデータと受信ヒントトラックのデータとが整合される。これによって、キーストリームデータのタイミングを理解しなくてもトラックを後で編集することが可能となる。

トラックからいわゆるサンプルを得るために、ファイル内部の位置を導出する必要がある。k番目のサンプルSについて、この動作は以下によって達成される。
・stscボックスのデータを用いることによって、サンプルSが存在するチャンクcを決定する。
・stco(またはco64)ボックスをパーズして、チャンクCのファイルオフセットFを決定する。
・stszボックスをパーズして、チャンク内部のサンプルSのサイズLおよびすべての
前のサンプルPiのサイズKiを得る。

データはその後、ファイル内の位置(F+合計(Ki))で利用可能であり、サイズLを有する。

データが再生されるべき時間は、sttsボックス内で利用可能な情報によって決定される。このボックスは、各個別サンプルjについて、実行長さのコード化持続期間Djを含む。そしてk番目のサンプルSの再生時間は、全持続期間Djの合計であり、j<kである。

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

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

データまたはデータパケットにアクセスする権利は、権利管理システムを介して制御され得る。デジタル通信ネットワークを介したデータ内容の受信は一定のエンドユーザに限定され、他のユーザから制限されることがある。たとえば、ユーザはプログラムに対する料金を支払うことによってそのプログラムへのアクセスを購入することができる。料金を支払えば、ユーザは特定の期間中そのプログラムへのアクセスを許可されるが、料金を支払っていないユーザはそのプログラムへのアクセスを有することができない。プログラムへのアクセスは、伝送データの暗号化によって規制され得る。データは、暗号化キーを用いて様々な暗号化規格によって暗号化され得る。受信者またはユーザ端末においてキーを用いて、内容が受信者またはユーザ端末で見えるように、暗号化されたデータを解読することができる。暗号化されたデータパケットを解読するためのキーは、同一のデジタル通信ネットワークを介して配信され得、これも暗号化され得る。1つ以上のキーを配信するために、他のデジタル通信ネットワークを使用することもできる。したがって、プログラムまたはサービスへのアクセスまたはこれらの視聴を希望するエンドユーザは、そのキーへの権利を得る必要があり得る。

暗号化されたプログラムまたはサービスに関連付けられた転送暗号化キーは、キーストリーム内でユーザ端末に送信され得る。キーストリームは、暗号化されたデータストリームの受信者またはユーザ端末での受信時に予め定められた周波数で送信されるキーストリームメッセージを含み得、キーストリームメッセージも受信され得る。

図12は、各々が暗号キーk0、k1、k2で暗号化されたペイロードを有する、ストリーム化されたデータパケット1302−1、1302−2、1302−3を示す。データパケット1302に関連付けられて、キーストリームパケット1304−1、1304−
2、1304−3、および1304−4を含むキーストリームがある。関連付けられたデータパケット1302−1よりも時間的に早く配信されるキーストリームパケット1304−1は、データパケット1302−1の暗号化されたペイロードを解読するための暗号キーk0を含む。その結果、暗号キーk0は、関連付けられたデータパケットが暗号化可能であることを保証する、自身に関連付けられた寿命d0を有する。第2のキーストリームパケット1304−2、およびそれに関連付けられたデータパケット1302−2のペイロードを解読するために用いられ得るパケット1304−2の暗号キーk1にも同じことが言える。ここでも、関連付けられたキーストリームパケット1304−2はデータパケット1302−2よりも時間的にかなり早く配信され、暗号キーk1は、データパケット1302−2のペイロードの正しい解読を保証する寿命d1を有する。

本発明の実施例によると、データパケットおよび関連付けられたキーストリームパケットは、データパケットおよび関連付けられた制御パケットについて先に説明したように、受信者端末において、メディアデータコンテナおよびメタデータコンテナを有するファイルにともに記憶され得る。

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

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

装置1100は、装置100とともに用いられてもよいし、または装置100に含まれてもよいことが強調される。すなわち、データパケットを関連付けられた制御パケットとともに記憶し、データパケットを関連付けられたキーストリームパケットとともに記憶して、記憶されたデータパケットと関連付けられた制御パケットおよび/または関連付けられたキーストリームパケットとからメディアトラックの形態の復号化情報を作成する発明概念を組合せてもよい。

再び図11を参照して、受信されたデータパケット1110は、メディアデータコンテナ1104の第1のチャンク1118にサンプルとして記憶される。受信された関連付けられたキーストリームパケットは、メディアデータコンテナ1104の第2のチャンク1120にサンプルとして記憶される。本発明の好ましい実施例によると、第1および第2のチャンク1118および1120は、メディアコンテナ1104内にインターリーブによって記憶され得る。

上述のように、ファイル1102は、たとえばMP4ファイルなどの、ISOベースメディアファイルフォーマットに基づくファイルであり得る。したがって、記録装置1116は、第1のチャンク1118を、メタデータコンテナをmoov1106の第1のメタデータトラック1124の第1のチャンクオフセットテーブルstcoまたはco64に記憶するように適合され、第1のチャンクオフセットテーブルは、メディアデータコンテ
ナ1104がファイル1102の一部であるか否かに依存して、ファイル1102またはメディアデータコンテナ1104内への各第1のチャンク1118のインデックスを示す。メディアデータコンテナ1104内への第2のチャンクのインデックスは、第1のチャンクについて説明したのと同じように、メタデータコンテナ1106の第2のメタデータトラック1128の第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において、キーサンプル復号化情報が与えられる。キーサンプル復号化情報は、それぞれのキーサンプルにどの時点でアクセスするかを示し、キーサンプルはここでもまた、記憶されたデータパケットのペイロードデータを参照してそれぞれの暗号化されたメディアフレームを得る。必要であれば、メディアトラック内のすべてのメディアサンプルが、関連付けられたキーサンプル(同一のキーIDを有する)をキートラック内に有するように、キーサンプルは実質的に2倍にされる。

したがって、特に内容暗号化の場合に暗号化されたアクセスユニットを転送ユニット(データパケット)から再構築可能であれば、たとえばメディアフレームなどのメディアアクセスユニットとキーメッセージとの正確なタイミング関係を作成することが可能である。

記憶されたデータパケット1110を有し、メディアデータコンテナ1104に記憶された関連付けられたキーストリームパケット1112を有し、メタデータコンテナ1106に記憶された関連付けられたメタデータを有するファイル1102を読出すために、本発明の実施例では、プロセッサを含む装置が与えられ、プロセッサは、記憶されたデータパケット1110に基づいて、関連付けられたパケットメタ情報1124に基づいて、ならびに記憶されたキーストリームパケット1112および関連付けられたキーストリームメタ情報1128に基づいて、記憶されたデータパケットのペイロードに暗号化情報を割当て、解読情報は、記憶されたデータパケットのペイロードを再生するためにどの暗号キ
ーをどの時点で用いるべきかを示す。

解読情報を割当てるためのプロセッサは、暗号化されたデータパケット1110のペイロードのプレイヤに対して用いられ得る。このため、解読されたデータパケットは、割当てられた解読情報に基づいて複合器に出力され得る。解読情報を割当てるためのプロセッサはまた、メディアデータコンテナ1104内に仮想キーサンプルとして部分的に記憶される仮想解読情報を生成するためにも用いられ得る。関連付けられたメタ情報は、メタデータトラック1128に記憶される。これは、上述の仮想メディアトラックの概念に対応する。

キーサンプルのペイロードは、受信された状態のキーストリームメッセージの生ペイロードを含み得る。つまり、キーストリームのUDPパケットの内容が直接記憶される。このデータを別の構造内に包んで、複数の受信されたキーストリームメッセージを記憶できるようにするシステムもある。

キーストリームサンプルのタイミングは、そのベースRTP受信ヒントトラックのタイミング方法に依存する。RTP受信ヒントトラックがRTPタイムスタンプから復号化時間を導出する場合、キーストリーム受信ヒントトラックも、RTPタイムスタンプから復号化時間を導出するが、RTPタイムスタンプを外挿する必要があり得る。RTP受信ヒントトラックに受信時間を用いる場合、キーストリームメッセージを記憶するためにも受信タイミングが用いられる。一般に、RTP受信ヒントトラックおよびキーストリーム受信ヒントトラックの両方は同期化され、同一の時間ベースを用いる。

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

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

記録されたストリームの最適化された局所的な再生のため、“仮想メディアトラック”は、逆ヒンティングプロセスを用いて、受信されたTUを“仮想メディアサンプル”にマップする。仮想メディアサンプルは、場合によってはCTUを有するトラックおよび受信ヒントトラックから回復され、かつ完全なメディアサンプルである必要のない、メディアサンプルのタイミングを有する。適宜、仮想メディアトラックのインデックス作成が適用される。インデックスは、受信ヒントトラックのリンクされたサンプルにも適用される。仮想メディアトラックは、ファイル内の他のトラック(たとえば“時間が合わされたメタデータトラック”)のための基準として用いられ得る。アプリケーションは、仮想メディアトラックを介して受信ヒントトラックの対応するサンプルを調べ得る。

キーストリームメッセージは、関連付けられた受信ヒントトラックとして記憶される。仮想メディアトラックは、メディアサンプルおよび解読キーを正確に整合させるために適用され得る。

近年、上述のISOベースメディアファイルフォーマットにはムービーフラグメントと称される付加物が追加されており、これは、たとえば米国特許出願US2007/0130498A1に記載されている。本発明の実施例はこのムービーフラグメントにも適用可
能である。

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

本発明はいくつかの好ましい実施例として説明されたが、本発明の範囲内にある変更、並び替え、および均等物が存在する。また、本発明の方法および構成を実現する多くの代替的な方法があることに留意すべきである。したがって、以下の添付の請求項は、本発明の真の思想および範囲内にあるすべてのそのような変更、並び替え、および均等物を含むと解釈されることが意図される。

Claims (21)

  1. ISOベースメディアファイルフォーマットに基づくファイル(702)のメディアデータコンテナ(104)に記憶された、パケット化されたメディアアクセスユニットのメディアペイロードおよび前記メディアアクセスユニットの正確なメディアタイミングを回復するための制御情報を含む転送データパケット(110;112)を処理するための、かつメタデータコンテナ(106)に記憶された関連付けられたメタ情報を処理するための装置(600)であって、前記関連付けられたメタ情報は、転送タイミング情報と、前記メディアデータコンテナ(104)内の前記記憶された転送データパケットの記憶位置を示す位置情報とを含み、前記装置は、
    前記制御および転送タイミング情報に基づいて、各メディアアクセスユニットについてのサンプル復号化時間情報(606;706)を決定するためのプロセッサ(602)を備え、前記サンプル復号化時間情報は、メディアタイミングを反映し、かつ前記記憶された転送データパケットのどのペイロードをどの時点で再生するかを示し、
    前記プロセッサは、各復号化情報サンプル(604;704)がメディアアクセスユニットに関係付けられ、かつ記憶された転送データパケット(110;112)からメディアアクセスユニットをパケット分解することに関係のある1つ以上の転送データパケットへのリンクを含むように、記憶された転送データパケット(110;112)の内容と記憶された関連付けられたメタ情報(124;128)とに基づいて、メディアアクセスユニットごとに復号化情報サンプル(604;704)を決定し、前記プロセッサ(602)は、記憶された転送データパケット(110;112)内の前記関係付けられたメディアアクセスユニットの開始アドレスおよび終了アドレスを示すように、前記復号化情報サンプル(604;704)を決定するように適合され、前記開始アドレスは、前記メディアアクセスユニットの先頭を示すメディアデータサンプルの位置を表わし、前記終了アドレスは、前記メディアアクセスユニットの終了を示すメディアデータサンプルの位置を表わし、
    前記プロセッサ(602)は、前記メディアペイロードのメディアアクセスユニットに関係付けられた復号化情報サンプルを、ISOベースメディアファイルフォーマットに基づくファイル(702)の前記メディアデータコンテナ(104)に記憶し、かつ関連付けられたサンプル復号化時間情報(606;706)を復号化メタ情報(606;706)として前記メタデータコンテナ(106)に記憶するように適合され、前記復号化メタ情報(606;706)は、前記メディアデータコンテナ(104)内の前記関連付けられた復号化情報サンプルについての復号化時間および位置を示す、装置。
  2. 前記プロセッサ(602)は、前記復号化情報サンプルを前記メディアデータコンテナ(104)の復号化情報チャンク(604;704)に記憶するように適合され、前記復号化情報チャンク(604;704)は、少なくとも1つの復号化情報サンプルを含む、請求項1に記載の装置。
  3. 前記プロセッサ(602)は、復号化情報メタデータトラック(606;706)のチャンクオフセットテーブルを記憶するように適合され、前記チャンクオフセットテーブルは、前記メディアデータコンテナ(104)への各復号化情報チャンク(704)のインデックスを示す、請求項2に記載の装置。
  4. 前記プロセッサ(602)は、前記復号化情報サンプルの前記復号化時間をサンプルテーブルボックス(stts)に記憶するように適合され、復号化情報サンプルの復号化時間を、前記復号化情報チャンク(704)内の関連付けられたサンプル番号にインデックスすることを可能とする、請求項2または3に記載の装置。
  5. 前記記憶された転送データパケット(110;112)は、MPEG−2転送ストリームパケットを含む、先行する請求項のうちいずれか1項に記載の装置。
  6. 前記記憶された転送データパケット(110;112)は、パケット化されたメディアデータサンプルを有するRTPパケットを含む、請求項1から4のいずれか1項に記載の装置。
  7. 前記記憶された転送データパケットは、第1および第2のメディアストリームに関係付けられた、第1の転送データパケット(110)および第2の転送データパケット(112)を含み、前記プロセッサ(602)は、前記記憶された転送データパケット(110;112)のどちらが前記第1または第2のメディアストリームに関係するかを決定するように適合される、先行する請求項のうちいずれか1項に記載の装置。
  8. 前記プロセッサ(602)は、第1/第2の復号化情報サンプルが、前記第1/第2のメディアストリームに属する関係付けられた第1/第2のメディアアクセスユニットの開始アドレスおよび終了アドレスを示すように、前記第1/第2のメディアアクセスユニットごとに、第1/第2の復号化情報を決定するように適合され、前記開始アドレスは、前記第1/第2のメディアアクセスユニットの先頭を示すメディアデータサンプルの位置を表わし、前記終了アドレスは、前記第1/第2のメディアアクセスユニットの終了を示すメディアデータサンプルの位置を表わし、前記メディアデータサンプルは、前記メディアデータコンテナ(104)内の前記記憶された第1/第2の転送データパケットに含まれる、請求項7に記載の装置。
  9. 前記プロセッサ(602)は、前記第1/第2の復号化情報サンプルを前記メディアデータコンテナ(104)に記憶し、かつ第1/第2の復号化メタ情報(606;706)を前記メタデータコンテナ(106)に記憶するように適合され、前記第1/第2の復号化メタ情報(606;706)は、前記メディアデータコンテナ(104)内の前記第1/第2の復号化情報サンプルについての第1/第2の復号化時間および第1/第2の位置を示す、請求項8に記載の装置。
  10. 前記プロセッサ(602)は、前記第1/第2の復号化情報サンプルを前記メディアデータコンテナ(104)の第1/第2の復号化情報チャンク(604;704)に記憶するように適合され、前記第1/第2の復号化情報チャンク(604;704)は、少なくとも1つの第1/第2の復号化情報サンプルを含む、請求項8または9に記載の装置。
  11. 前記プロセッサ(602)は、前記第1/第2の復号化情報サンプルの第1/第2の復号化時間を第1/第2のサンプルテーブルボックス(stts)に記憶するように適合され、第1/第2の復号化情報サンプルの前記第1/第2の復号化時間を、前記第1/第2の復号化情報チャンク(704)内の関連付けられたサンプル番号にインデックスすることを可能とする、請求項10に記載の装置。
  12. 前記記憶された第1の転送データパケット(110)は、パケット化された第1のメディアデータを有する第1のRTPパケットを含み、前記記憶された第2の転送データパケット(112)は、パケット化された第2のメディアデータを有する第2のRTPパケットを含む、請求項7から11のうちいずれか1項に記載の装置。
  13. 前記記憶された第1および第2のRTPパケット(110;112)は、前記第1および第2のRTPパケット(110;112)に関連付けられた第1および第2のRTCPパケット(114;115)の少なくとも一部分を追加的に含み、前記メタ情報は、前記メタデータコンテナ(106)内の前記第1および第2のRTCPパケットの転送タイミング情報と位置情報とを追加的に含み、前記記憶された関連付けられた第1および第2のRTCPパケットの一部分は、前記メディアデータコンテナ(104)のRTCPチャンク(122)にサンプルとして記憶され、前記RTCPパケット(114;115)のタイミング情報および位置情報は、前記メタデータコンテナ(106)のRTCPトラック(128)に記憶される、請求項12に記載の装置。
  14. 前記プロセッサ(602)は、前記記憶された第1および第2のRTPパケット(110;112)に基づいて、前記記憶された第1および第2のRTCPパケットと、前記記憶された関連付けられたメタ情報(124;128)に基づいて、第1および第2の復号化情報(604;704)とをそれぞれ決定するように構成され、前記第1および第2の復号化情報(604;704)は、前記記憶された第1および第2のRTPパケットのどのペイロードをどの時点でそれぞれ再生するかを示す、請求項13に記載の装置。
  15. 前記メディアデータコンテナ(104)は、各々が暗号キーを有するキーストリームパケット(1112)を含み、前記暗号キーは、前記記憶された転送データパケットのうち少なくとも1つのペイロードに関連付けられ、前記記憶されたキーストリームパケット(1112)の転送タイミング情報および位置情報は、前記メタデータコンテナ(106)に記憶される、先行する請求項のうちいずれか1項に記載の装置。
  16. 前記記憶された転送データパケット(110;112)に基づいて、前記関連付けられたメタ情報(124;128)に基づいて、かつ前記記憶されたキーストリームパケット(1112)および前記関連付けられたキーストリームメタ情報(1128)に基づいて、前記記憶された転送データパケット(110;112)のペイロードに解読情報を割当てるように適合され、前記解読情報は、前記記憶された転送データパケット(110;112)の前記ペイロードを再生するのにどの暗号キーをいつ使用するかを示す、請求項15に記載の装置。
  17. ISOベースメディアファイルフォーマットに基づくファイル(702)のメディアデータコンテナ(104)に記憶された、パケット化されたメディアアクセスユニットのメディアペイロードおよび前記メディアアクセスユニットの正確なメディアタイミングを回
    復するための制御情報を含む転送データパケット(110;112)を処理するための、かつメタデータコンテナ(106)に記憶された関連付けられたメタ情報を処理するための方法であって、前記関連付けられたメタ情報は、前記メディアデータコンテナ内の前記記憶された転送データパケットの転送タイミング情報と記憶位置を示す位置情報とを含み、前記方法は、
    前記制御および転送タイミング情報に基づいて、各メディアアクセスユニットについてのサンプル復号化時間情報(606;706)を決定するステップを含み、前記サンプル復号化時間情報は、メディアタイミングを反映し、かつ前記記憶された転送データパケットのどのペイロードをどの時点で再生するかを示し、さらに、
    各復号化情報サンプルがメディアアクセスユニットに関係付けられ、かつ記憶された転送データパケット(110;112)から前記メディアアクセスユニットをパケット分解することに関係のある1つ以上の転送データパケットへのリンクを含むように、記憶された転送データパケット(110;112)の内容と記憶された関連付けられたメタ情報(124;128)とに基づいて、メディアアクセスユニットごとに復号化情報サンプル(604;704)を決定するステップを含み、復号化情報サンプル(604;704)は、記憶された転送データパケット(110;112)内の前記関係付けられたメディアアクセスユニットの開始アドレスおよび終了アドレスを示すように決定され、前記開始アドレスは、前記メディアアクセスユニットの先頭を示すメディアデータサンプルの位置を表わし、前記終了アドレスは、前記メディアアクセスユニットの終了を示すメディアデータサンプルの位置を表わし、さらに、
    前記メディアペイロードのメディアアクセスユニットに関係付けられた復号化情報サンプルを、ISOベースメディアファイルフォーマットに基づくファイル(702)の前記メディアデータコンテナ(104)に記憶し、かつ関連付けられたサンプル復号化時間情報を復号化メタ情報(606;706)として前記メタデータコンテナ(106)に記憶するステップを含み、前記復号化メタ情報(606;706)は、前記メディアデータコンテナ(104)内の前記関連付けられた復号化情報サンプルについての復号化時間および位置を示す、方法。
  18. コンピュータおよび/またはマイクロコントローラ上で動作するときに、請求項17に記載の方法を実行するためのコンピュータプログラム。
  19. ISOベースメディアファイルフォーマットに基づくファイル(702)を読出すための装置であって、前記ファイルは、前記ファイルに関係付けられたメディアデータコンテナ(104)に記憶された、パケット化されたメディアアクセスユニットのメディアペイロードを含む転送データパケット(110;112)を有し、前記メディアデータコンテナ(104)に記憶された、各メディアアクセスユニットについての復号化情報サンプル(602;702)を有し、前記復号化情報サンプルは、前記記憶された転送データパケット(110;112)内の関係付けられたメディアアクセスユニットの開始アドレスおよび終了アドレスを示し、前記開始アドレスは、前記メディアアクセスユニットの先頭を示すメディアデータサンプルの位置を表わし、前記終了アドレスは、前記メディアアクセスユニットの終了を示すメディアデータサンプルの位置を表わし、前記ファイルは、各復号化情報サンプル(602;702)について、前記ファイルのメタデータコンテナ(106)に記憶された、関連付けられたサンプル復号化時間情報(606;706)を有し、前記関連付けられたサンプル復号化時間情報(606;706)は、前記メディアデータコンテナ(104)内の前記関連付けられた復号化情報サンプル(602;702)の復号化時間および位置を示し、前記装置は、
    前記メタデータコンテナ(106)内の前記関連付けられたサンプル復号化時間情報(606;706)にアクセスし、前記関連付けられたサンプル復号化時間情報(606;706)に基づいて、前記メディアデータコンテナ(104)内の前記復号化情報サンプル(602;702)にアクセスし、かつ前記復号化情報サンプル(602;702)に基づいて、前記記憶された転送データパケット(110;112)の前記関連付けられたメディアアクセスユニットにアクセスすることによって、前記記憶された転送データパケット(110;112)の前記メディアアクセスユニットの出力スケジュールを決定するためのプロセッサと、
    前記決定された出力スケジュールに従って前記メディアアクセスユニットを出力するための出力制御装置とを備える、装置。
  20. ISOベースメディアファイルフォーマットに基づくファイル(702)を読出すための方法であって、前記ファイルは、前記ファイルに関係付けられたメディアデータコンテナ(104)に記憶された、パケット化されたメディアアクセスユニットのメディアペイロードを含む転送データパケット(110;112)を有し、前記メディアデータコンテナ(104)に記憶された、各メディアアクセスユニットについての復号化情報サンプル(602;702)を有し、前記復号化情報サンプルは、前記記憶された転送データパケット(110;112)内の関係付けられたメディアアクセスユニットの開始アドレスおよび終了アドレスを示し、前記開始アドレスは、前記メディアアクセスユニットの先頭を示すメディアデータサンプルの位置を表わし、前記終了アドレスは、前記メディアアクセスユニットの終了を示すメディアデータサンプルの位置を表わし、前記ファイルは、各復号化情報サンプル(602;702)について、前記ファイルのメタデータコンテナ(106)に記憶された、関連付けられたサンプル復号化時間情報(606;706)を有し、前記関連付けられたサンプル復号化時間情報(606;706)は、前記メディアデータコンテナ(104)内の前記関連付けられた復号化情報サンプル(602;702)の復号化時間および位置を示し、前記方法は、
    前記メタデータコンテナ(106)内の前記サンプル復号化時間情報(602;702)にアクセスし、前記サンプル復号化時間情報(606;706)に基づいて、前記メディアデータコンテナ(104)内の前記復号化情報サンプル(602;702)にアクセスし、かつ前記復号化情報サンプル(602;702)に基づいて、前記記憶された転送データパケット(110;112)のペイロードをパケット分解してメディアアクセスユニットを取得することによって、前記記憶された転送データパケット(110;112)のメディアアクセスユニットの出力スケジュールを決定するステップと、
    前記決定された出力スケジュールに従って前記メディアアクセスユニットを出力するステップとを含む、方法。
  21. コンピュータおよび/またはマイクロコントローラ上で動作するときに、請求項20に記載の方法を実行するためのコンピュータプログラム。
JP2010513775A 2007-07-02 2008-07-01 メディアデータコンテナとメタデータコンテナとを有するファイルを処理し読出すための装置および方法 Active JP4766473B2 (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/005373 WO2009003683A1 (en) 2007-07-02 2008-07-01 Apparatus and method for processing and reading a file having a media data container and a metadata container

Publications (2)

Publication Number Publication Date
JP2010531590A true JP2010531590A (ja) 2010-09-24
JP4766473B2 true JP4766473B2 (ja) 2011-09-07

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 After (1)

Application Number Title Priority Date Filing Date
JP2010513776A Active JP5334335B2 (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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010532605A (ja) * 2007-07-02 2010-10-07 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法

Families Citing this family (55)

* 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
CN103688532B (zh) * 2011-07-29 2018-05-04 索尼公司 流式传输分发装置和方法、流式传输接收装置和方法、流式传输系统
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
KR20140070409A (ko) * 2012-11-30 2014-06-10 삼성전자주식회사 컨텐트를 저장한 정보저장매체, 컨텐트 제공 방법, 컨테 재생 방법 및 그 장치
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
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 삼성전자주식회사 멀티미디어 전송 시스템에서 미디어 전송 패킷 전송 방법 및 장치
JP2014230154A (ja) * 2013-05-23 2014-12-08 ソニー株式会社 送信装置、送信方法、受信装置および受信方法
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 (3)

* 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
JP2007518294A (ja) * 2003-12-08 2007-07-05 サムスン エレクトロニクス カンパニー リミテッド 動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法
JP2009503950A (ja) * 2005-07-19 2009-01-29 アップル インコーポレイテッド メディアデータ送信方法及び装置

Family Cites Families (33)

* 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
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
JP2000078197A (ja) * 1998-09-03 2000-03-14 Toshiba Corp 通信ノード及びパケット転送方法
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
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
JP2008061010A (ja) * 2006-08-31 2008-03-13 Toshiba Corp 映像音声送信装置
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 (3)

* 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
JP2007518294A (ja) * 2003-12-08 2007-07-05 サムスン エレクトロニクス カンパニー リミテッド 動画ファイルの暗号化方法及びそれを利用したデジタル著作権の管理方法
JP2009503950A (ja) * 2005-07-19 2009-01-29 アップル インコーポレイテッド メディアデータ送信方法及び装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010532605A (ja) * 2007-07-02 2010-10-07 フラウンホファー・ゲゼルシャフト・ツール・フォルデルング・デル・アンゲバンテン・フォルシュング・アインゲトラーゲネル・フェライン メディアデータコンテナおよびメタデータコンテナを有するファイルを記憶および読み出すための装置および方法

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
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
JP2010532605A (ja) 2010-10-07 application
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
US6134243A (en) Method and apparatus for media data transmission
US20070162568A1 (en) Dynamic media serving infrastructure
US20050123136A1 (en) Motion picture file encryption method and digital rights management method using the same
US20070022215A1 (en) Method and apparatus for media data transmission
US20100189122A1 (en) Efficiently storing transport streams
US20030061369A1 (en) Processing of multimedia data
US20120233345A1 (en) Method and apparatus for adaptive streaming
US7359006B1 (en) Audio module supporting audio signature
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
US20110314176A1 (en) Container format for multimedia presentations
US20140019587A1 (en) Dynamic Adaptive Streaming over Hypertext Transfer Protocol as Hybrid Multirate Media Description, Delivery, and Storage Format
US20050238316A1 (en) Hybrid video on demand using mpeg2 transport
US20030167397A1 (en) Transparently embedding non-compliant data in a data stream
US20090055417A1 (en) Segmented metadata and indexes for streamed multimedia data
US20090119594A1 (en) Fast and editing-friendly sample association method for multimedia file formats
US20100262628A1 (en) Method and apparatus for media data transmission
WO2005057865A1 (ja) パケット送信装置
US20080275905A1 (en) Media stream recording into a reception hint track of a multimedia container file
US20080304810A1 (en) Device for and a Method of Processing an Input Data Stream Comprising a Sequence of Input Frames
WO2005039131A1 (en) Container format for multimedia presentations
US20050105555A1 (en) Data processing method and apparatus, and data distribution method and information processing apparatus
US20070130498A1 (en) Time-shifted presentation of media streams
JP2001320413A (ja) データ送信装置及び方法
US20130086213A1 (en) Method and apparatus for transmitting and receiving content
WO2011027236A1 (en) Method and system for simultaneous recording of multiple programs on a dvr

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110502

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110606

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140624

Year of fee payment: 3

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250