JP2007526507A - スケーラブルメディアを記述するデータを生成するための方法 - Google Patents

スケーラブルメディアを記述するデータを生成するための方法 Download PDF

Info

Publication number
JP2007526507A
JP2007526507A JP2006553262A JP2006553262A JP2007526507A JP 2007526507 A JP2007526507 A JP 2007526507A JP 2006553262 A JP2006553262 A JP 2006553262A JP 2006553262 A JP2006553262 A JP 2006553262A JP 2007526507 A JP2007526507 A JP 2007526507A
Authority
JP
Japan
Prior art keywords
data
scalable
media
profile data
scalable media
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.)
Pending
Application number
JP2006553262A
Other languages
English (en)
Inventor
アポストロポウロス・ジョン・ジー
ウィー・スージー・ジェイ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2007526507A publication Critical patent/JP2007526507A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network
    • H04N21/64792Controlling the complexity of the content stream, e.g. by dropping packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/20Manipulating the length of blocks of bits, e.g. padding or block truncation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • H04L2209/603Digital right managament [DRM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

【課題】スケーラブルメディアを記述するデータを生成するための方法が開示される。
【解決手段】復号することなく所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、スケーラブルメディアに関連付けられる(1101)。スケーラブルメディアの部分は暗号化される(1103)。スケーラブルメディアの部分を暗号化するのに使用される暗号化方式の保護属性を特定するデータが、スケーラブルメディアのそれらの部分に関連付けられる(1105)。
【選択図】図11

Description

本発明の実施の形態は、データをスケーリング(たとえば、トランスコード)するための方法に関する。
データ配信システムは、システム設計者に多くの課題を提示する。
たとえば、クライアントは、異なる表示能力、給電能力、通信能力、および計算能力を有する可能性がある。
加えて、システムにおける通信リンクは、異なる最大帯域幅、品質レベル、および時間変化する特性を有する可能性がある。
データ配信システムを成功させるには、時間変化する特性を有する異種ネットワークで多数の多様なクライアントへデータストリームを配信することを可能にすべきである。
盗聴者からコンテンツを保護するために適切なセキュリティを提供することが、データ配信システムの設計におけるもう1つの重要な考慮すべき事項である。
一般に、セキュリティを提供するために、データは、暗号化形式でトランスポートされる。
システムの中間ノードは、ストリーム適応またはトランスコードを行って、異なる下流のクライアント能力およびネットワーク状態にデータストリームをスケーリングするのに使用することができる。
トランスコーダは、圧縮データストリームまたは符号化データストリームを入力として取り込み、次いで、そのデータストリームを処理して、別の符号化データストリームを出力として生成する。
トランスコードオペレーションの例には、ビットレート削減、レートシェーピング、空間ダウンサンプリング(spatial downsampling)、およびフレームレート削減が含まれる。
トランスコードは、たとえば、画像の空間解像度を特定のクライアントの表示能力に適応させることにより、または、データストリームのビットレートを動的に調整して、ネットワークチャネルの時間変化する特性に適合させることにより、システムのスケーラビリティおよび効率を改善することができる。
中間ノードは、ローカルなネットワーク状態および下流のネットワーク状態並びに下流のクライアント能力に関する情報を収集して更新することができ、次いで、その情報に従ってデータをスケーリングすることができる。
これは、データ源でデータをスケーリングするよりも効率的なものとすることができる。
その理由は、データ源が、ネットワーク内の状態に関する最新でかつ詳細な情報を収集することの方が困難であるからであり、特に、データ源から比較的遠く離れたネットワークのロケーションにおけるそのような情報を収集することは困難である。
また、データ源は、配信パスの開始部における1つの制御ポイントしか提供しないのに対して、中間トランスコードノードは、配信パスに沿ったより多くの戦略的なロケーションに多くの制御ポイントを追加して提供する。
ネットワークトランスコードによって、データ配信システムにおけるスケーラビリティが容易にされる一方、ネットワークトランスコードは、いくつかの課題も提示する。
トランスコードのプロセスは、かなりの計算負荷をトランスコードノードに課す可能性がある。
計算効率の良いトランスコードアルゴリズムが開発されているが、それらアルゴリズムは、中間ネットワークノードで数百または数千のストリームを処理するのにあまり適していない場合がある。
さらに、従来のトランスコードオペレーションは、一般に、暗号化ストリームをトランスコード前に解読することを必要とするので、トランスコードは、配信システムのセキュリティに脅威を与える。
トランスコードされた結果は、再暗号化されるが、次のトランスコーダで解読される。
各トランスコーダは、このように、システムのセキュリティに裂け目が起こり得ることを提示する。
これは、エンドツーエンドのセキュリティが必要とされる場合に許容できる状況ではない。
圧縮技法または符号化技法は、データの冗長な情報を削減するのに使用され、それによって、実際には、データの品質を低下させることにより、データの記憶および配信を容易にする。
JPEG(ジョイントフォトグラフィックエキスパートグループ)標準規格は、画像データを符号化するための1つのよく知られた現代の方式を記述している。
JPEGは、多くの点で満足の行くものであるが、現在のニーズになると限界を有する。
より新しい標準規格であるJPEG2000標準規格が、それらのニーズを満たすように開発中である。
しかしながら、JPEG2000標準規格によっても、暗号化データの解読がトランスコードには必要とされ、トランスコードプロセスには、依然として多量の計算が必要とされるままである。
さらに、JPEG2000等の新しい標準規格の導入は、多数のネットワークノードおよびクライアントデバイスのそれぞれを、JPEG2000標準規格に準拠するために更新する必要があることを意味する。
MUKHERJEE D ET AL: "Structured Scalable Meta-formats (SSM) version 1.0 for content agnostic Digital Item Adaptation" ISO/IEC WG11 - N9131, December 2002 (2002-12), XP002321533 AWAJI, JAPAN MUKHERJEE D ET AL: "Structured scalable meta-formats (SSM) for digital item adaptation" PROCEEDINGS OF THE SPIE, SPIE, BELLINGHAM, VA, US, vol. 5018, 22 January 2003 (2003-01-22), pages 148-167, XP002321532 ISSN: 0277-786X WEE S ET AL: "Secure scalable streaming and secure transcoving with JPEG2000" PROCEEDINGS 2003 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP-2003. BARCELONA, SPAIN, SEPT. 14 - 17, 2003, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, vol. VOL. 2 OF 3, 14 September 2003 (2003-09-14), pages 205-208, XP010670279 ISBN: 0-7803-7750-8 WEE S J ET AL: "Secure scalable streaming enabling transcoding without decryption" PROCEEDINGS 2001 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 2001. THESSALONIKI, GREECE, OCT. 7 - 10, 2001, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, vol. VOL. 1 OF 3. CONF. 8, 7 October 2001 (2001-10-07), pages 437-440, XP010564890 ISBN: 0-7803-6725-1 WEE, S.J. APOSTOPOULOS, J. G.: "Secure Scalable Video Streaming for Wireless Networks" IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH, AND SIGNAL PROCESSING, 2001 (ICASSP 01), vol. 4, 7 May 2001 (2001-05-07), pages 2049-2052, XP002330821 SALT LAKE CITY, UT SUSIE WEE AND JOHN APOSTOPOULOS: "Secure Scalable Streaming Technology to Enable Secure Transcoding Functionality in JPEG 2000 and JPSEC (version 0.9)" ISO/IEC JTC1/SC29/WG1 N3136, no. n3136, December 2003 (2003-12), XP002330822
したがって、安全でかつ計算効率の良い方法でデータのスケーリング(たとえば、トランスコード)を可能にできる方法および/またはシステムが有利である。
レガシーデバイスにおいてそれらの目的を達成できるシステムおよび/または方法は、より有利である。
本発明は、これらの利点および他の利点を提供する。
[発明の開示]
スケーラブルメディアを記述するデータを生成するための方法が開示される。
復号することなく所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、スケーラブルメディアに関連付けられる。
スケーラブルメディアの部分は暗号化される。
スケーラブルメディアの部分を暗号化するのに使用される暗号化方式の保護属性を特定するデータが、スケーラブルメディアのそれらの部分に関連付けられる。
添付図面は、本明細書に援用されて、本明細書の一部を成す。
これらの添付図面は、本発明の実施の形態を示し、明細書本文と共に、本発明の原理を説明する役割を果たす。
本明細書本文で参照される図面は、特に注釈がある場合を除き、一律の縮尺で描かれていると理解されるべきではない。
次に、本発明のさまざまな実施の形態を詳細に参照する。
さまざまな実施の形態の例は添付図面に示されている。
本発明は、これらの実施の形態と共に説明されるが、これらの実施の形態は、それら実施の形態に本発明を限定することを目的としているものではないことが理解されよう。
逆に、本発明は、代替的なもの、変更したもの、および均等なものを網羅することを目的としている。
これら代替的なもの、変更したもの、および均等なものは、添付の特許請求の範囲によって規定される本発明の精神および範囲内に含めることができる。
さらに、本発明の以下の説明では、本発明の十分な理解を提供するために、多数の具体的な詳細が述べられる。
それ以外の場合には、本発明の態様を不必要に分かりにくくしないように、既知の方法、手順、コンポーネント、および回路は詳細に説明されていない。
[概要]
本発明による実施の形態は、主としてデジタル画像データとの関連で解説され、特に静止画像について解説される。
デジタル画像データは、たとえば、デジタルカメラを使用した「現実世界」のキャプチャーに由来することがある。
また、デジタル画像データは、たとえば、ペイントプログラム、スクリーンキャプチャー、または図形のビットマップ画像への変換を使用してコンピュータ生成することもできる。
しかしながら、本発明は、デジタル画像データに限定されるものではない。
それどころか、本発明の実施の形態は、音声ベースのデータ、オーディオベースのデータ、ビデオベースのデータ、ウェブページベースのデータ、グラフィックデータ、テキストベースのデータ(たとえば、電子文書)等との使用にもよく適している。
さらに、本発明による実施の形態は、JPEG2000標準規格に準拠しているか、または、概ね準拠している符号化方式を使用してスケーラブル符号化されるデータについて説明されている。
しかしながら、本発明はそのように限定されるものではない。
一般に、本発明による実施の形態は、スケーラブル符号化できるいかなるデータをも対象とし、具体的には、スケーラブル符号化をプログレッシブ暗号化(progressive encryption)と結合するいかなるデータをも対象とする。
本出願において、スケーラブル符号化は、原データを入力として取り込み、スケーラブル符号化データを出力として作成するプロセスとして定義される。
このスケーラブル符号化では、スケーラブル符号化データは、その一部が、異なるレベルの品質、解像度等で原データを再現するのに使用できる特性を有する。
具体的には、スケーラブル符号化データは、多くの場合、組み込みビットストリーム(embedded bit stream)と考えられる。
このビットストリームの一部は、ビットストリームの他の部分からの情報を何ら必要とすることなく、原データのベースライン品質の再現物を復号するのに使用することができる。
ビットストリームの一部が次第に大きくなるにつれて、その部分は、原データの改善された再現物を復号するのに使用することができる。
JPEG2000は、スケーラブル符号化方式の一例である。
本発明の実施の形態に従って使用できる他のスケーラブル符号化方式には、3Dサブバンド符号化およびMPEG−4 FGS(ムービングピクチャエキスパートグループ−4 細粒度スケーラビリティ)が含まれるが、これらに限定されるものではない。
本出願において、プログレッシブ暗号化は、原データ(平文)を入力として取り込み、プログレッシブ暗号化されたデータ(暗号文)を出力として作成するプロセスとして定義される。
このプログレッシブ暗号化では、プログレッシブ暗号化されたデータは、暗号化データの最初の部分を、原データの残り部分からの情報を必要とすることなく単独で解読できる特性を有する。
次第に大きくなる部分も、この同じ特性で解読することができる。
次第に大きくなる部分では、解読は、ビットストリームの前の部分からのデータを必要とすることがあるが、後の部分からのデータを必要としない。
本発明に従って使用できるプログレッシブ暗号化技法には、データ暗号化標準規格(DES)、トリプルDES(3DES)、アドバンスト暗号化標準規格(AES)等のよく知られた暗号化の基本要素が含まれるが、これらに限定されるものではない。
[JPEG2000符号化の一般的解説]
一般に、いくつかの段階が、JPEG2000標準規格に準拠した符号化プロセスを構成する。
これらの段階は、本明細書では、1)前処理、2)離散ウェーブレット変換、3)量子化、4)組み込みブロック符号化(embedded block coding)、5)レート制御、および6)ビットストリーム編成と呼ばれる。
本発明の実施の形態は、これらの段階に限定されるものではなく、また、以下で説明するJPEG2000標準規格の詳細にも限定されるものではない。
実際には、理解されるように、本発明の実施の形態は、JPEG2000標準規格のシンタックスよりすぐれた特徴を導入し、その結果、スケーリング(たとえば、トランスコード)プロセスは計算効率がより良くなり、おそらくJPEG2000標準規格に気付かないデバイスによるスケーリングの実行が可能になる。
JPEG2000は、可逆圧縮および非可逆圧縮の双方を考慮している。
本明細書の焦点は非可逆圧縮に置かれている。
前処理中、オプションでタイリングが行われて、原画像をタイルに区画することができる。
また、前処理中、入力データが値0を中心とした公称のダイナミックレンジを有するように入力データを調整することもできる。
最後に、前処理中に、カラーデータをY色成分、C色成分、およびC色成分に変換することができる。
離散ウェーブレット変換中、画像タイルを高サブバンドおよび低サブバンドに分解することができる。
また、タイルは、符号ブロック(たとえば、64×64サンプルまたは32×32サンプル)に区画することもできる。
より具体的には、各サブバンドは、「プリシンクト(precinct)」と呼ばれる長方形ブロックに分割され、各プリシンクトは、符号ブロックと呼ばれる重なり合わない長方形にさらに分割される。
ウェーブレット係数は、量子化段階中に量子化される。
組み込みブロック符号化段階では、各符号ブロックが別々に符号化される。
レート制御は、ターゲットのビットレートに達することができるように、符号化ビットストリームを変更するプロセスである。
各符号化符号ブロックはレビューされて、ターゲットのビットレートを達成するためにその符号化符号ブロックをどの程度トランケートできるかを決定することができる。
ビットストリーム編成では、符号化データは、JPEG200標準規格において「パケット」と呼ばれるものに分割される(JPEG2000パケットのコンテンツは、JPEG2000標準規格によって記述される)。
これらのパケットは、次に、順番に、共に多重化されて、ビットストリームにされる。
JPEG2000による用語「パケット」の使用は、一般に、それよりも従来のその用語の使用とは異なることに留意されたい。
すなわち、JPEG2000パケットは、ビットストリームに多重化され、このビットストリームは、次に、たとえば、ネットワークで送信されるデータパケットにパケット化することができる。
JPEG2000によれば、ビットストリームにおけるデータ(たとえば、JPEG2000パケット)の順序は、「プログレッション」と呼ばれる。
パケットを順序付ける方法には、プリシンクト−コンポーネント−解像度−品質または解像度−品質−コンポーネント−プリシンクト等のいくつかの異なる方法がある。
JPEG2000によれば、「品質」は、代わりに「レイヤ」と呼ばれる場合がある。
これらの用語は、JPEG2000標準規格をよく知っている者には既知である。
ビットストリームにおけるデータの順序は、ビットストリームの長さを通して拡張することができる。
あるいは、ビットストリームにおけるデータの順序は、ビットストリームの或るポイントにおいて異なる順序に変化する場合がある。
ビットストリームにおけるどの特定のポイントにおけるデータの順序も、本明細書の解説には重要ではない。
重要なことは、データが、符号化方式によって規定された特定の順序にあるということであり、この場合、JPEG2000標準規格に準拠するか、または、概ね準拠する符号化方式によって規定された特定の順序にあるということである。
図1は、本発明の一実施の形態によるヘッダ11および符号化データ12を含むJPEG2000ビットストリーム10の一例である。
ヘッダ11は、符号ストリームマーカの開始SOC、画像/タイルサイズマーカSIZ、符号化スタイルデフォルトマーカCOD、量子化デフォルトマーカQCD、タイル部マーカの開始SOT、およびデータマーカの開始SODを含む。
また、ビットストリーム10は、符号ストリームマーカの終了EOCも含む。
これらのマーカのそれぞれによって実行される機能は、JPEG2000標準規格をよく知っている者には理解される。
図1の例では、符号化データ12は、プリシンクト−コンポーネント−解像度のプログレッションに従って順序付けられている。
しかしながら、上記で提示したように、異なるプログレッションも使用することができる。
図1の例では、n個のプリシンクト(P0、P1、…、Pn)、3つのコンポーネント(C0、C1、およびC2)、並びに3つの解像度(R0、R1およびR2)がある(図を簡単にするために、品質はプログレッションに含まれていない)。
符号化データ12は、重要度の最も高いものから最も低いものへ順序付けられている。
図1の例では、符号化データ12は、最初にプリシンクトにより、次いでコンポーネントにより、次いで解像度により順序付けられている。
符号化データのビットストリームを復号するために、基本的に、上記で解説した符号化器のプロセスと逆のプロセスが使用される。
符号化ビットストリームは、たとえば、表示デバイスの能力および他の実用面で考慮すべき事項の能力、並びに、観察者の特定の興味(たとえば、或る使用は、低解像度の画像で満足する場合がある一方、別の使用は高解像度の画像を所望する場合がある)に応じて、多くの異なる方法で復号することができる。
JPEG2000によれば、ビットストリーム全体を復号することなしに、所望の画像プロダクトに必要なデータを突き止めて抽出し、そして復号することができる。
しかしながら、従来抽出できるビットは、JPEG2000のシンタックスによって限られている。
また、それらのビットを抽出するには、データを符号化するのに使用される方式(たとえば、JPEG2000に準拠した方式)の知識も必要とされる。
たとえば、抽出するビットを見つけるには、デバイスは、ビットストリーム10を読み出すためにJPEG2000に気付いている必要がある。
理解されるように、本発明の実施の形態によれば、JPEG2000のシンタックスよりすぐれて、かつ、符号化方式の知識を必要とすることなく、ビットを抽出することが可能になる。
[符号化方式の知識を必要としない符号化データのスケーリング]
図1の例では、符号化データ12は、ラベル0からラベルNを有するNビット列を含む。
本発明の実施の形態によれば、このNビット列内に、異なるビットセグメントが特定される。
これらのセグメントは、図1では、データセグメント13、14、および15として特定されている。
図1によって示されるように、これらのデータセグメントは、互いに部分的にまたは完全に重なり合うことができる。
また、他のどのデータセグメントとも重なり合わないデータセグメントも存在することができる。
たとえば、セグメント13および14は重なり合うのに対して、セグメント15はセグメント13および14のいずれとも重なり合わない。
重要なことは、セグメント13、14、および15が、JPEG2000のシンタックスによる制約を受けないということである。
すなわち、データセグメントの開始ポイントおよび終了ポイントは、JPEG2000によって指示されるビットストリーム10のフォーマットから独立している。
このように、たとえば、セグメント13は、ビットストリーム10の、C0を含む部分からC1を含む部分に広がる。
また、セグメント13は、P0−C0−R1部の中央のポイントから開始して、P0−C1−R2部の中央で終了する。
さらに、理解されるように、ビットストリーム10におけるデータセグメント13、14および15のロケーションは、ヘッダ11の情報を含めて、ビットストリーム10を読み出すことなく求めることができる。
一般に、本発明によるデータセグメント(たとえば、データセグメント13、14、および15)は、ビットストリーム10のどの場所からも開始でき、どの場所でも終了でき、セグメントは、互いに重なり合うことができる。
このようなデータセグメントは、何個であっても特定することができ、セグメントは、符号化データ12内において任意の長さを有することができる。
このように、特定の1ビットまたはビット列は、2つ以上のデータセグメントのメンバーとなることができる。
セグメントは、必ずしも、符号化データ12の長さ全体を包含するとは限らない。
すなわち、本発明に従って定義されたデータセグメントに含まれない、符号化データ12の1つまたは2つ以上の部分が存在する場合がある。
さらに、本発明に従って定義されたデータセグメントは、これらの重要な特性:データセグメントが独立に復号可能であること;データセグメントが独立に暗号化可能であり、かつ、解読可能であること;および、データセグメントが独立にチェック可能であること、を有する。
すなわち、各データセグメントは、他のどのセグメントからも独立に復号することができる。
同様に、各データセグメントは、他のどのセグメントからも独立に暗号化および解読することができる。
また、他のどのセグメントからも独立に各データセグメントに、たとえばチェックサムを適用することができる。
図2は、本発明の一実施の形態によるビットストリームにおけるデータセグメントの例を示している。
今説明したように、符号化データ12は、符号化方式に応じて順序付けられかつフォーマットされたNビットを含む。
本発明の実施の形態によれば、いくつかのセグメントが符号化データ12内で特定される。
図2の例では、符号化データ12は、b1、b2、およびb3として特定されるビット、並びに、r1、r2、およびr3として特定される他のビットを含む(これらのビットは、すべて、符号化データ12内にある。しかしながら、これらのビットは、明確にするために別々に示されている)。
このように、たとえば、或るセグメントは、ビット0からビットb1に広がるものとして定義することができ、別のセグメントは、ビットb1からビットb2に広がるものとして定義することができ、それ以外のセグメントも同様である。
或るセグメントは、そうではなく、一定のビット番号から開始して、一定の長さ(ビットで測定される)を有するものとして特定することもできる。
たとえば、或るデータセグメントは、ビットb0から開始してb1ビットに等しい長さを有するものとして定義することができ、別のセグメントは、ビットb1から開始して、(b2−b1)ビットの長さを有するものとして特定することができ、それ以外のセグメントも同様である。
さらに、或るセグメントは、ビットb1からビットb3に広がることもできるし、ビットb1からビットN等に広がることもできる。
すなわち、上述したように、セグメントは、任意のビットから開始して、他の任意のビットで終了する任意の長さを有することができ、2つまたは3つ以上のセグメントは重なり合うことができる。
たとえば、ビットr2からビットr3によって定義されるデータセグメントは、ビットb2からビットb3によって定義されるデータセグメントと重なり合う。
セグメントは、異なる長さを有する場合もあるし、有する場合もある。
重要なことは、本発明によって定義され、図2によって例示されたデータセグメントが、符号化データ12の符号化方式によって指定されたフォーマットとは独立の開始ポイントおよび終了ポイントを有するということである。
理解されるように、本発明に従って定義されたデータセグメントにより、データ、特に符号化データを、そのデータを符号化するのに使用される符号化方式の知識を必要とすることなくビットストリーム10から抽出して解析することが可能になる。
その上、データは、そのデータが暗号化されている場合に当該データを解読することなく、ビットストリーム10(図1)から抽出することができる。
このようにデータを抽出/解析する能力は、理解されるように、データスケーリング(たとえば、トランスコード)および復号(伸張)に有利に適用することができる。
たとえば、ビットレートの削減を達成するために、ビット0からビットb1とビットb2からビットb3とに及ぶ2つのデータセグメントを、トランスコードオペレーションの一部としてビットストリーム10から抽出することができる。
次いで、それら2つのセグメントは、符号化データのスケーリングされたバージョンにおいて結合することができ、データ配信システムにわたって送信することができる。
フレームレートの削減を達成するために、たとえば、1つまたは2つ以上のデータセグメント(たとえば、r1からr2に及ぶデータセグメント)が同様に選ばれる。
このように、ビット0からビットNに及ぶ単一の組のデータ12を、いくつかの異なるスケーラブル属性(たとえば、ビットレート、フレームレート等)についてのスケーリングの実行を可能にするデータセグメントに編成することができる。
たとえば、単一の組のデータ12は、ビットレート削減に関係する第1の組のデータセグメント、フレームレート削減に関係する別の一組のデータセグメント等に編成することができる。
ビットレート削減用に選ばれた一組のデータセグメントは、フレームレート削減用に選ばれた一組のデータセグメントの或る部分を含む場合もあるし、含まない場合もあり、その逆も同様である。
重要なことは、上記例では、ビットレート削減用に選択されたセグメント、フレームレート削減用に選択されたセグメント等は、画像プロダクトに対する影響を実用的な程度にまで最小化しつつ所望のスケーリング結果を達成するために、符号化中に知的に選択されるということである。
また、データセグメント長の粒度を、図2によって示したものよりもはるかに細かく達成できることに留意することも重要である。
その結果、スケーリングオペレーションは、より細かな程度まで実行することができる。
図3は、本発明の一実施の形態による簡略化したデータ配信システム30の機能要素を示すブロック図である。
図3の例では、システム30は、符号化器32、トランスコーダ34、第1の復号器36、および第2の復号器38を含む。
システム30は、同様の機能要素だけでなく他のタイプの機能要素(たとえば、ストレージ要素、パケット化器、ストリーミング要素等)も含むより大きなシステムまたはネットワークの一部であってもよい。
本実施の形態では、符号化器32はデータを符号化(圧縮)し、トランスコーダ34は符号化データをトランスコード(たとえば、スケーリング)し、復号器36および38はデータを復号(伸張)する。
これらの機能は、単一のデバイスで実行することもできるし、或るタイプのネットワークにおいて接続することができる1つまたは2つ以上のデバイス間に分散させることもできる。
また、要素32、34、36、および38は、今説明した機能以外の機能も実行することができる。
たとえば、符号化器32は、データを暗号化して、データをチェックするためのチェックサムまたは暗号化チェックサムを計算することもでき、また符号化データを別のブロックへ送信する前に符号化データをスケーリングすることもでき、復号器38は、符号化データを復号する前に符号化データをスケーリングすることができる。
一実施の形態では、符号化器32は、JPEG2000標準規格に基づいた符号化方式を使用する。
加えて、トランスコーダ34は、そうではなくて、符号化データのスケーリングされたバージョンを別のトランスコーダへ送信することができ、別のトランスコーダは、次に、このスケーリングされたデータをスケーリングして、それを別のトランスコーダに送信し、この別のトランスコーダも同様に動作する。
また、復号器36は、たとえスケーリングされたデータをトランスコーダ34から受信しても、そのスケーリングされたデータをさらにスケーリングすることができる。
さらに、復号器36および38は、エンドユーザデバイスでなくてもよい。
たとえば、復号器36および38は、符号化データを復号して、その復号データを、たとえば移動電話へ送信することができる。
移動電話は、画像プロダクトをレンダリングして表示する。
その上、データスケーリング機能は、ストレージデバイスまたはストレージドライバによって実行することもできる。
たとえば、ストレージデバイス(たとえば、ディスクドライブまたはDVDプレイヤ)が、適切なデータセグメントを実際の復号器に渡すだけで、符号化データをスケーリングすることができる。
このように、不要な情報を送信して資源または時間が無駄にされることはない。
また、これによって、復号器はこの処理を実行する必要がないので、復号器を簡略化することもできる。
図4Aは、本発明の一実施の形態による符号化器32の内外へフローする情報を示している。
本実施の形態では、符号化器32は、入力データ(たとえば、符号化される画像データ等のデータ)を受信する。
また、符号化器32は、スケーラブル属性の値も受信する。
本出願において、スケーラブル属性は、符号化データをその後どのようにしてスケーリングするかを指定する値の範囲を有する属性として定義される。
画像データの場合、スケーラブル属性は、たとえば、ビットレート、フレームレート、解像度、カラー若しくは白黒、対象領域、タイル、品質、画像オブジェクト、または前景対背景とすることができる。
スケーラブル属性値は、スケーラブル属性について指定された値である。
たとえば、ビットレートのスケーラブル属性値には、フルビットレート(B)、2分の1ビットレート(B/2)、4分の1ビットレート(B/4)等が含まれ得る。
スケーラブル属性およびスケーラブル属性値は、他のタイプのデータ(たとえば、オーディオデータ、グラフィックスデータ等)についても同様に定義することができる。
たとえば、オーディオデータのスケーラブル属性値は、オーディオトラックがステレオであるのか、それともモノラルであるのかを示すことができる。
電子文書およびテキストベースのデータも、その文書またはテキストベースのデータの内容(たとえば、章、節、画像、グラフ、索引、付録、関連ソフトウェア、特別視聴覚資料等)を記述するスケーラブル属性を介して編成することができる。
内容の選択に加えて内容のサイズの選択も、エンドユーザの好みまたは利用可能なストレージ空間等のデバイス制約条件を満たすように適応させることができることが有益である。
加えて、機密上の理由または商業上の理由(たとえば、読み出しの支払い)のいずれかから、これらの文書の一定の部分を暗号化できる一方、これらの文書の他の部分を平文にすることができる。
本実施の形態では、符号化器32は、JPEG2000に基づく符号化方式等の符号化方式を使用して入力データを符号化する。
上述したように、符号化器32は、他の機能を提供することができる。
符号化プロセスの結果として、図1のビットストリーム10によって例示したようなビットストリーム、または、このようなビットストリームを含むファイルが生成される。
ファイルまたはビットストリームは、符号化方式に従って編成される。
すなわち、ビットは、符号化方式によって確立される一定の順序になる。
符号化データは、トランスコーダまたは復号器によってその後スケーリングすることができるので、符号化器32の出力は、本明細書でスケーラブルデータと呼ばれるものを含む。
符号化器32の別の出力は、本明細書でスケーラブルプロファイルデータと呼ばれるものを含む。
基本的に、スケーラブルプロファイルデータは、スケーラブル属性値と、スケーラブル符号化データ内の対応するデータセグメントとの相互参照を含む。
たとえば、スケーラブルプロファイルデータは、データセグメントとスケーラブル属性値とを相互参照するインデックス表または参照表の形とすることができ、(図2も参照して)以下の表1によって例示される。
Figure 2007526507
表1のフォーマットは単なる例示にすぎないこと、および、スケーラブルプロファイルデータはほとんどどのコンピュータ可読フォーマットでも記憶できることが十分理解される。
表1において、ビットは、ビット番号によって特定されるが、他のアドレス指定メカニズムも使用することができる。
また、データセグメントをそのビット範囲によって特定するのではなく、他のメカニズムを使用してデータセグメントを特定することもできる。
一般に、スケーラブルプロファイルデータは、スケーラブル属性の値を、図1のビットストリーム10における1つまたは2つ以上のデータセグメントと相関させるのに十分な情報を含む。
さらに、表1は、ビットレート(B)、解像度(R)、および品質(Q)にしか対処していないが、実際には、このような表は、ユーザにより符号化器32(図3)への入力として選択されたあらゆるスケーラブル属性およびスケーラブル属性値を含むことができる。
加えて、スケーラブルプロファイルデータは、各スケーラブル属性値について、データセグメントの複数の選択したものも含むことができる。
これによって、下流のトランスコーダまたは復号器においてより大きな柔軟性を提供することができる。
たとえば、或る用途では、2分の1のビットレート削減を、解像度レベル2(R2)および品質レベル2(Q2)、または、解像度レベル1(R1)および品質レベル3(Q3)で達成することができる。
R1は、R2よりも良好なものとすることができ、Q2は、Q3よりも良好なものとすることができ、その結果、解像度と品質とのトレードオフを伴うが、同じビットレートを達成することができる。
このように、スケーラブルプロファイルデータの各スケーラブル属性値についてデータセグメントの複数の選択したものを含めることにより、下流ノード(たとえば、トランスコーダまたは復号器)のユーザは、たとえば、ユーザ自身のニーズに適したスケーリングのタイプおよび程度を選択することができる。
一実施の形態では、スケーラブルプロファイルデータは、どのセグメントが抽出され、そして、どのセグメントが廃棄されるかに応じて生成される歪みに関する情報も含む。
この歪みは、従来の平均2乗誤差(MSE)の観点または知覚的な歪みの観点から測定することができる。
スケーラ(たとえば、トランスコーダ)は、歪みに関する情報を使用して、どのセグメントが最も重要であり保持(たとえば、抽出)されるべきか、および、どのセグメントが重要度が低く廃棄できるかを判断することができる。
歪みパラメータは、1つのデータセグメントにつき別々のものとすることもできるし、一群のセグメントにつき別々のものとすることもできるし、1つのスケーラブル属性値(たとえば、画像解像度、品質レベル、ビットレート等)につき別々のものとすることもできる。
したがって、どのセグメントを抽出または廃棄するかについての決定は、関連した歪みを、エンドユーザのニーズに適したスケーリングのタイプおよび程度、並びに、ネットワーク性能特性、下流デバイスの能力、および他のファクタに従って選択されたスケーリングのタイプおよび程度と組み合わせて考慮することにより実行することができる。
各データセグメント、各一群のセグメント、または各スケーラブル属性に関連した歪みは、測定歪みまたは見積もり歪みとすることができる。
たとえば、特定のデータセグメントを廃棄することに関連した測定歪みは、基本的に、そのデータセグメントをビットストリームから廃棄するとともに、残りのデータパケットを復号する時に生成される結果の歪みを計算することにより計算することができる。
この測定は、メディアが符号化される時に行うこともできるし、予備符号化されたデータについて行うこともできる。
予備符号化されたデータの場合、データセグメントを符号化(圧縮)ビットストリームから廃棄することができ、データの残りの部分を復号することができ、その結果生じた歪みを計算することができる。
測定歪みの代わりのものとして、見積もり歪みを得ることができる。
この見積もり歪みは、たとえば、特定のデータセグメントが廃棄された場合に結果として生じ得る歪みを示す情報を符号化ビットストリームから抽出することにより得られる。
測定歪みは、見積もり歪みよりも正確である。
一方、測定歪みは、計算がより複雑である。
予測歪みは、予想された歪みに対応する単一の数値とすることもできるし、予想された歪みの分布とすることもできるし、中間的存在(たとえば、1つの標準偏差に対応する許容帯域を有する予想された歪み)とすることもできることに留意されたい。
あるいは、歪みについての或る形態の累積分布関数を求めることもできる。
図4Aの実施の形態では、スケーラブルデータおよびスケーラブルプロファイルデータは共に記憶される。
たとえば、スケーラブルプロファイルデータは、スケーラブルデータを含むビットストリームまたはファイルに付加することができる。
大量のスケーラブルデータが存在する場合には、スケーラブルプロファイルデータの複数の部分をビットストリームまたはファイル内に間隔を置いて配置することができる。
あるいは、スケーラブルプロファイルデータは、図4Bによって示されるように、スケーラブルデータとは別に記憶して取り扱うこともできる。
図4Bの実施の形態では、スケーラブルプロファイルデータは、スケーラブルデータと共に移動する必要さえない。
たとえば、図2に関して、スケーラブルプロファイルデータは、スケーラブルデータが移動したパスとは異なるパスによって、トランスコーダ34、復号器36、または復号器38に移動することができる。
あるいは、スケーラブルプロファイルデータおよびスケーラブルデータを別々のロケーションに記憶することもでき、その後、必要な時はいつでも、トランスコーダ34、復号器36、または復号器38は、アクセスして相関させることができる。
動作時において、図4Aおよび図4Bの符号化器32は次のように機能する。
一実施の形態では、スケーラブル属性の値が、ユーザによって入力される。
あるいは、スケーラブル属性の値は、ネットワーク性能、下流デバイスの能力等について符号化器32が知っている情報に基づいて自動的に選択することもできる。
利用可能な帯域幅等のネットワーク性能特性を監視することができ、その情報を符号化器32に与えることができる。
また、下流デバイス(エンドユーザデバイスを含む)は、符号化器32と直接通信することもできる。
符号化器32は、次に、従来の方法で、自身が用いている符号化方式(たとえば、JPEG2000符号化方式)を使用して、入力データを符号化する。
加えて、符号化器32は、符号化ビットストリーム(スケーラブルデータ)のスケーラブルプロファイルデータを生成する。
すなわち、一実施の形態では、スケーラブル属性の入力値のそれぞれについて、符号化器32は、符号化データ内において対応するデータセグメントを特定する。
重要なことは、本発明の実施の形態によれば、符号化器32によって使用される符号化方式の知識を必要とすることなく、符号化器32によって出力されるスケーラブル(符号化)データをスケーリングできるということである。
データがJPEG2000方式を使用して符号化されようと、他の或る符号化方式を使用して符号化されようと、トランスコーダまたは復号器は、実行されるスケーリング(たとえば、ビットレートを4分の1に削減する)のタイプを指定して、ビットストリーム10(図1)から、そのスケーリングのタイプに関連したデータセグメント(複数可)を抽出/解析することしか必要とされない。
一実施の形態では、符号化器32は、スケーラブル属性の特定の値に対応するデータセグメントのいくつかの選択したものまたは結合したものを特定することができる。
たとえば、2分の1のビットレート削減(B/2)を達成するために、符号化器32は、満足できるデータセグメントのいくつかの異なる結合したものを特定することができる。
画像データの場合、或る結合の結果、削減されたビットレートを画像プロダクトのすべての部分に適用することができる。
別の結合の結果、平均ビットレートがB/2となるように、画像プロダクトの対象領域にはフルビットレート(B)を適用し、画像プロダクトの他の領域にはより大きく削減されたビットレート(たとえば、B/4)を適用することができる。
符号化段階において、符号化器32は、知能(プログラミングされた知能またはユーザ入力に基づく知能のいずれか)を適用して、データセグメントのどの1つまたは複数の結合したものをスケーラブルプロファイルデータに含めるかを決定することができる。
あるいは、すべての結合したものを含めることもできる。
トランスコーダまたは復号器は、その後、ユーザ入力、または、ネットワーク性能特性若しくはエンドユーザデバイスの能力等の他の考慮すべき事項に基づいて、データセグメントのどの結合したものを使用するかを決定することができる。
符号化器32によって最終的に符号化ビットストリームまたはファイルに含められたデータは、スケーラブル属性の入力値に依存することがあることに留意されたい。
たとえば、スケーラブルデータが、フルビットレートの場合に対応するデータを含む必要がないものと仮定する。
その代わり、B/2およびB/4の場合しか考慮されない。
符号化器32は、B/2およびB/4に対応するデータセグメントを特定するが、これらのデータセグメントは、符号化データのすべてを包含するとは限らない。
すなわち、符号化データには、スケーラブルプロファイルデータのB/2またはB/4へインデックスされない或る部分が存在する。
データのその部分が別のスケーラブル属性に関連付けられない場合、符号化器32は、符号化ビットストリームまたはファイルにそのデータを含めないことを決定することができる。
別の実施の形態では、スケーラブル属性のさまざまな値に関連したデータセグメントを前もって定義することができる。
基本的に、表1によって例示されたスケーラブルプロファイルデータは、データ符号化よりも前に確立される。
この実施の形態では、データは、符号化され、次いで、スケーラブルプロファイルデータによって定義された順序に対応する順序でビットストリームに配置される。
たとえば、図2を参照して、スケーラブルプロファイルデータは、ビット0〜b2が、2分の1のビットレート削減(B/2)用に予約されることを事前に定義することができる。
したがって、符号化器32は、B/2に関連したデータをビット0〜b2に組み込むのに必要な量だけデータを圧縮し、そのデータをビットストリーム10内のそれらのロケーションに配置することになる。
さらに別の実施の形態では、符号化方式に従って編成された符号化ファイルは、所望の目的およびスケーラブル属性の知識に基づいて再編成され、次いで、たとえば、記憶またはストリーミングされる。
たとえば、スケーラブルプロファイルデータ(たとえば、データセグメントとスケーラブル属性との相互参照)を使用して、関係のあるデータセグメントを符号化ファイルにおいて突き止めると、第1に色成分により第2に解像度により編成された符号化ファイルを取り込んで、そのファイルを代わりに第1に解像度により第2に色成分により順序付けるように再編成することが有益な場合がある。
スケーラブルプロファイルデータを利用することによって、符号化フォーマットの詳細の知識を必要とすることなく再編成を達成することができる。
図5Aは、本発明の一実施の形態によるデータスケーラ54の内外へフローする情報を示している。
データスケーラ54は、図3のトランスコーダ34等のトランスコーダとすることもできるし、スケーリング機能または解析機能を実行する復号器(たとえば、図3の復号器38)とすることもできる。
図5Aのデータスケーラ54は、入力として、スケーラブルデータおよびスケーラブルプロファイルデータを受信する。
図4Aおよび図4Bと共に上述したように、スケーラブルデータおよびスケーラブルプロファイルデータは、(たとえば、同じビットストリームまたはファイルで)共に移動することもできるし、別々に移動することもできる。
入力は、(たとえば、符号化器32から)データスケーラ54へストリーミングすることもできるし、或るタイプのストレージ要素からデータスケーラ54が取り出すこともできる。
スケーラブルプロファイルデータを使用すると、スケーラ54は、スケーラブルデータを解析することができ、かつ、符号化データのスケーリングされたバージョンを作成することができる。
たとえば、スケーラ54がビットレートを4分の1に削減したい場合に、スケーラ54は、所望のビットレート削減を達成するために符号化データのどのビットを選択できるかをスケーラブルプロファイルデータから判断することができる(たとえば、表1参照)。
スケーラ54は、次に、特定されたデータセグメントを使用して、必要でないビットを廃棄することによるか、または、特定されたデータセグメントを抽出してそれらデータセグメントを新たなビットストリームまたはファイルに結合することにより、符号化データのスケーリングされたバージョンを作成することができる。
上述したように、スケーラ54に提示されたスケーラブルプロファイルデータは、各スケーラブル属性値についてデータセグメントの複数の選択したものを含むことができる(表1と共に行った解説を参照)。
どのセグメント(複数可)を抽出または廃棄するのかについての決定は、エンドユーザのニーズに適したスケーリングのタイプおよび程度、ネットワーク性能特性および/または下流デバイスの能力に従って選択されたスケーリングのタイプおよび程度、スケーラブルプロファイルデータに含まれる歪み情報または他のファクタ、並びにそれらを結合したものを考慮することによって行うことができる。
たとえば、スケーラ54が、ビットレートを2分の1に削減するが、そのビットレート削減を達成する異なる方法を提示されている場合、スケーラ54は、エンドユーザデバイスの特性および/または各可能な選択に関連した歪みの量を考慮して選択を行うことができる。
おそらく、エンドユーザデバイスは、カラー表示を可能にする比較的小さな表示スクリーンを有する移動電話である。
この場合、スケーラ54は、色成分を保存すると同時に解像度を低くするビットレート削減を達成するデータセグメントを抽出することもできるし、歪みの量を最小にすると同時に所望のビットレート削減を達成するデータセグメントを抽出することもできる。
重要なことは、スケーラ54が、データを符号化するのに使用された符号化方式の知識を必要とすることなく自身の機能を実行できるということである。
また、データが暗号化されている場合、スケーラ54は、符号化データを解読することなく、これらの機能を実行することもできる。
スケーラブルデータを解析するために、スケーラ54は、単に、どのビット(データセグメント)を抽出するかを特定し、それらのビット(データセグメント)をビットストリームまたはファイルにおいて突き止め、そして、それらのビット(データセグメント)を抽出するだけである。
スケーラ54は、データセグメントのビットを読み出す必要もなければ、ヘッダ11(図1)の情報を読み出してビット(データセグメント)を突き止める必要もない。
したがって、計算資源に過度に重い負担をかけることなく、スケーリングオペレーションを効率的に達成することができる。
さらに、スケーラ54は、データセグメントのビットを読み出す必要がないので、符号化方式の知識を必要としない。
したがって、符号化方式が比較的新しく、おそらくスケーラ54に未知のものであっても、レガシーデバイスでスケーリングを達成することができる。
具体的には、スケーラ54は、符号化データをスケーリングするのに、JPEG2000に気付く必要はない。
その上、データスケーリング機能は、符号化シンタックスの知識を必要とすることなく、ストレージデバイスまたはストレージドライバによって実行することもできる。
たとえば、ストレージデバイス(たとえば、ディスクドライブまたはDVDプレイヤ)は、適切なデータセグメントを実際の復号器に渡すだけで、符号化データをスケーリングすることができる。
このように、不要な情報を送信して資源または時間が無駄にされることはない。
また、これによって、復号器はこの処理を実行する必要がないので、復号器を簡略化することもできる。
スケーラブルプロファイルデータによって指示されるデータセグメントを突き止めて抽出するために、さまざまな手段によってスケーラブルプロファイルデータを読み出す能力をスケーラ54に提供することができる。
たとえば、ドライバをスケーラ54に事前にロードすることもできるし、このようなドライバにスケーラブルプロファイルデータを提供することもできる。
あるいは、スケーラブルプロファイルデータは、たとえば、拡張可能マークアップ言語(XML)に基づくこともでき、XMLは、スケーラ54が読み出して動作させることができる。
スケーリングオペレーションの結果として、スケーラ54が受信したスケーラブルプロファイルデータを変更することが必要な場合がある。
たとえば、符号化データがスケーリングされた後、スケーラブルプロファイルデータで参照されたいくつかのデータセグメントが、符号化データに存在しない場合もあるし、いくつかのスケーリングオペレーションがもはや可能でない場合もある。
さらに、スケーリング後、データセグメントが、異なるビット番号によって特定される場合があるので、いくつかのスケーリングオペレーションを、それらスケーリングオペレーションの関連したデータセグメントに関して再定義することが必要な場合がある。
スケーラブルプロファイルデータを変更する他の理由も存在する場合がある。
図5Bは、本発明の第2の実施の形態によるデータスケーラ54の内外へフローする情報を示している。
この第2の実施の形態では、スケーラ54は、変更されたスケーラブルプロファイルデータを作成する。
スケーラ54は、符号化器32がスケーラブルプロファイルデータを作成したのとほぼ同じ方法で、スケーラブルプロファイルデータを変更することができる。
本実施の形態では、変更されたスケーラブルプロファイルデータは、その後、上述したように、符号化データのスケーリングされたバージョンと共にスケーラ54から出力されるか、または、そのバージョンとは別にスケーラ54から出力される。
図6は、本発明の一実施の形態に従ってデータをスケーリング(たとえば、トランスコード)するためのプロセスのフローチャート60である。
図7は、本発明の一実施の形態に従ってデータを符号化するためのプロセスのフローチャート70である。
図8は、本発明の一実施の形態に従ってデータを復号するためのプロセス80のフローチャートである。
具体的なステップがフローチャート60、70、および80に開示されているが、このようなステップは例示である。
すなわち、本発明の実施の形態は、さまざまな他のステップ、または、フローチャート60、70、および80に列挙されたステップを変形したものを実行することにもよく適している。
フローチャート60、70、および80のステップは、提示したものとは異なる順序で実行できること、並びに、フローチャート60、70、および80のステップのすべてが実行されるとは限らない場合があることが十分理解される。
フローチャート60、70、および80によって記述された方法の全部または一部は、コンピュータ可読でかつコンピュータ実行可能な命令を使用して実施することができる。
これらの命令は、たとえば、コンピュータシステムのコンピュータ使用可能媒体に存在する。
一般に、フローチャート60は、図5Aおよび図5Bのスケーラ54(たとえば、図3のトランスコーダ34または復号器38)によって実施され、フローチャート70は、図3、図4A、および図4Bの符号化器32によって実施され、フローチャート80は、図3の復号器36によって実施される。
しかしながら、上述したように、異なる機能ブロックが、異なる機能を実行することもできるし、1つのデバイスが、複数の機能を実行することもできるし、1つまたは複数の機能を複数のデバイス間に分散することもできる。
最初に図6を参照して、ステップ61において、符号化データ列が、(たとえば、ビットストリームまたはファイルにおいて)アクセスされる。
符号化データは、そのデータを符号化するのに使用された符号化方式に従って編成されている。
一実施の形態では、符号化方式は、JPEG2000標準規格に基づいている。
符号化データの一部または全部は暗号化されている場合もある。
ステップ62において、スケーラブル属性の値が決定される。
スケーラブル属性は、符号化データをどのようにスケーリングするかを特定する。
スケーラブル属性は、たとえば、ビットレート(B)とすることができ、スケーラブル属性の値は、B/4とすることができる。
一実施の形態では、スケーラブル属性の値は、スケーリングデバイスと通信する別のデバイスから受信される。
このような一実施の形態において、その別のデバイスが、符号化データのスケーリングされたバージョンの受信者となる場合、符号化データは、その別のデバイスの特性に基づいてスケーリングされることになる。
それらの特性を求めるために、スケーリングデバイスは、その別のデバイスの特性を提供するプロファイル情報にアクセスすることができ、そのプロファイル情報に従ってスケーラブル属性の値を選択することができる。
あるいは、スケーリングデバイスは、その別のデバイスからプロファイル情報を受信することもでき、それに応じてスケーラブル属性の値を選択することができる。
ステップ63において、スケーラブル属性に関連付けられた符号化データのセグメントへの参照子を含む情報(たとえば、スケーラブルプロファイルデータ)がアクセスされる。
重要なことは、この参照子が符号化方式のシンタックスよりもすぐれているということである。
一実施の形態では、参照情報(たとえば、スケーラブルプロファイルデータ)は、符号化データ列と共に記憶される。
別の実施の形態では、参照情報は、符号化データ列とは別に記憶される。
ステップ64において、スケーラブルプロファイルデータが、符号化データにおいてセグメントを突き止めるのに使用される。
重要なことは、セグメントが、スケーリングデバイスによる符号化方式の知識を必要とすることなく見つけられるということである。
ステップ65において、符号化データのスケーリングされたバージョンが、セグメントを使用して作成される。
また、符号化データのスケーリングされたバージョンは、暗号化データを解読することなく作成される。
ステップ66において、一実施の形態では、符号化データのスケーリングされたバージョンが下流デバイスへ転送される。
ステップ67において、一実施の形態では、変更された参照情報(たとえば、変更されたスケーラブルプロファイルデータ)が、符号化データのスケーリングされたバージョンに基づいて生成される。
スケーリングされたバージョンのセグメントは、符号化方式とは独立に、スケーラブル属性の選択された値に関連付けられ、それによって、別のデバイスが、符号化方式の知識を必要とすることなく、スケーリングされたバージョンにおいてセグメントを突き止めることが可能になり、スケーリングされたバージョンをスケーリングすることが可能になる。
変更された参照情報は、符号化データのスケーリングされたバージョンと共に記憶することもできるし、それとは別に記憶することもできる。
次に図7を参照して、ステップ71において、データが、符号化方式を使用して符号化され、ファイルに記憶される。
一実施の形態では、この符号化方式は、JPEG2000標準規格に概ね準拠している。
ステップ72において、ファイルにおけるデータセグメントのロケーションが特定される。
ステップ73において、データセグメントおよびスケーラブル属性の選択された値がインデックスされる。
スケーラブル属性は、その後のスケーリングオペレーションで符号化データをどのようにスケーリングするかを指定する。
インデックスは、符号化方式とは独立であり、デバイスが、符号化方式の知識を必要とすることなく、セグメントを突き止めることを可能にし、かつ符号化データをスケーリングすることを可能にする。
一実施の形態では、スケーラブル属性の選択された値は、符号化デバイスに入力される。
ステップ74において、データセグメントおよびスケーラブル属性の選択された値のインデックスを含む参照情報が記憶される。
一実施の形態では、このインデックスは、符号化データのファイルに追加される。
別の実施の形態では、このインデックスは、ファイルとは別に記憶される。
ステップ75において、一実施の形態では、符号化データの少なくとも一部が暗号化される。
このような一実施の形態では、符号化データの各データセグメントは、プログレッシブ暗号化される。
次に、図8を参照して、ステップ81において、符号化データ列がアクセスされる。
符号化データは、そのデータを符号化するのに使用される符号化方式に従って順序付けられる。
一実施の形態では、符号化方式は、JPEG2000標準規格に概ね準拠している。
ステップ82において、復号デバイスが、復号のために符号化データをどのようにスケーリングするかを判断する。
ステップ83において、符号化データの一定のセグメントを特定する情報(たとえば、スケーラブルプロファイルデータ)がアクセスされる。
この情報は、符号化方式のシンタックスを補うものである。
データセグメントは、復号のために符号化データをどのようにスケーリングするかに基づいて特定される。
より具体的に、一実施の形態では、スケーラブル属性の値が決定される。
この値は、ユーザ入力とすることもできるし、復号デバイスの特性および能力に基づいて導出することもできる。
スケーラブル属性の値は、符号化データをどのようにスケーリングするかを特定する。
スケーラブルプロファイルデータは、スケーラブル属性値から符号化データにおける一定のデータセグメントへの参照子を含む。
ステップ84において、ステップ83からの情報を使用して、データセグメントが符号化データにおいて見つけられる。
重要なことは、セグメントが、復号デバイスによる符号化方式の知識を必要とすることなく突き止められるということである。
ステップ85において、ステップ84で見つけられたデータセグメントに含まれる符号化データが復号される。
符号化データが暗号化されている場合、データセグメントのデータを解読することもできる。
要約すれば、本発明の実施の形態によって、安全でかつ計算効率の良い方法で符号化データをスケーリング(たとえば、トランスコード)することが可能になる。
スケーリングは、データを符号化するのに使用される方式の知識を必要とすることなく達成することができ、したがって、符号化方式が比較的新しく、おそらくスケーリングデバイスに未知のものであっても、スケーリングをレガシーデバイスで達成することができる。
[保護プロファイルデータ生成システムおよび方法]
図9Aは、本発明の一実施の形態によるスケーラブルメディアとデータを接続するためのシステムを示している。
図9Aは、本発明の一実施の形態による符号化器32の内外への情報フローを示している。
図9Aの実施の形態では、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合することができるスケーラブルメディアの部分を特定するデータが、スケーラブルメディアに関連付けられる。
その後、スケーラブルメディアは暗号化される。
加えて、スケーラブルメディアの個々の部分を暗号化するのに使用される暗号化方式の保護属性を特定するデータが、スケーラブルメディアの個々の部分に関連付けられる。
本実施の形態では、符号化器32は、入力データ(たとえば、符号化される画像データ等のデータ)を受信する。
また、符号化器32は、入力データを暗号化するのに使用される暗号化方式の属性を詳述するデータも受信する。
本出願において、符号化データをどのように保護するかを指定する保護属性は、範囲パラメータおよび関連した値を有する属性として定義される。
保護属性には、暗号化プリミティブ、暗号化モード、CCS、およびスケーラブルメディアセグメントへのクリプトのマッピングが含まれ得るが、これらに限定されるものではない。
保護属性値は、保護属性について指定された値である。
たとえば、暗号化プリミティブの保護属性値には、DES、3−DES、AEC等が含まれ得る。
保護属性および保護属性値は、他のタイプのデータ(たとえば、オーディオデータ、グラフィックスデータ等)についても同様に定義することができる。
たとえば、オーディオデータの保護属性値は、オーディオトラックが、暗号チェックサムとしてMACを使用して保護されるのか、それとも鍵付きハッシュを使用して保護されるのかを指定することができる。
前述したように、符号化器32は、JPEG2000に基づく符号化方式等の符号化方式を使用して入力データを符号化する。
上述したように、符号化器32は、他の機能を提供することができる。
符号化プロセスの結果として、図1のビットストリーム10によって例示されたビットストリーム等のビットストリームまたはこのようなビットストリームを収容するファイルが生成される。
符号化データは、その後、トランスコーダまたは復号器によってスケーリングされるので、符号化器32の出力は、本明細書でスケーラブルデータと呼ばれるものを含む。
図9Aを再び参照して、符号化器32のもう1つの出力は、本明細書で保護プロファイルデータと呼ばれるものを含む。
基本的に、保護プロファイルデータは、保護属性値と、スケーラブルデータ内の対応するデータセグメントとの相互参照を含む。
たとえば、保護プロファイルデータは、以下の表2(図2も参照して)に例示するように、データセグメントと保護属性値とを相互参照するインデックス表または参照表として構成することができる。
Figure 2007526507
表2のフォーマットは単なる例示にすぎないこと、および、保護プロファイルデータはほとんどどのコンピュータ可読フォーマットでも記憶できることが十分理解される。
表2において、バイトは、バイト番号によって特定されるが、他のアドレス指定メカニズムも使用することができる。
また、データセグメントを、そのバイト若しくはビットまたはブロック(たとえば、8バイト)の範囲によって特定するのではなく、他のメカニズムを使用してデータセグメントを特定することもできる。
一般に、保護プロファイルデータは、保護属性の値を、図1のビットストリーム10における1つまたは2つ以上のデータセグメントと相関させるのに十分な情報を含む。
表2は、ユーザによって選択されるあらゆる保護属性および保護属性値を符号化器32(図3)の入力として含むことができることが十分理解されるはずである。
加えて、特定の保護属性が適用されるデータセグメントのリストは、各保護属性値について、データセグメントの複数の選択したものも含むことができる。
これによって、符号化器において広範囲のデータ保護の柔軟性を提供することができる。
このように、各保護属性値についてデータセグメントの複数の選択したものを保護プロファイルデータに含めることを可能にする例示の実施の形態の選択の柔軟性によって、(たとえば、符号化器に入力を提供する)ユーザは、ユーザ自身のニーズに適した保護のタイプおよび程度を選択することが可能になる。
符号化器32によって出力される(符号化され、かつ、暗号化された)スケーラブルデータは、符号化方式の知識も符号化器32によって使用される暗号化方式の知識も必要とすることなくスケーリングできることに留意すべきである。
データがJPEG2000方式を使用して符号化されようと、他の或る符号化方式を使用して符号化されようと、トランスコーダまたは復号器は、実行されるスケーリングのタイプ(たとえば、ビットレートを4分の1に削減する)を指定して、ビットストリーム10(図1)から、そのスケーリングのタイプに関連したデータセグメント(複数可)を抽出/解析することしか必要とされない。
図9Aの実施の形態では、スケーラブルデータおよび保護プロファイルデータは共に記憶される。
たとえば、保護プロファイルデータは、スケーラブルデータを含むビットストリームまたはファイルに付加することができる。
大量のスケーラブルデータが存在する場合には、スケーラブルプロファイルデータの複数の部分をビットストリームまたはファイル内に間隔を置いて配置することができる。
あるいは、保護プロファイルデータは、図9Bによって示されるように、スケーラブルデータとは別に記憶して取り扱うこともできる。
図9Bの実施の形態では、スケーラブルプロファイルデータは、スケーラブルデータと共に移動する必要さえない。
たとえば、図3に関して、保護プロファイルデータは、スケーラブルデータが移動したパスとは異なるパスによって、トランスコーダ34、復号器36、または復号器38に移動することができる。
あるいは、保護プロファイルデータおよびスケーラブルデータを別々のロケーションに記憶することもでき、その後、必要な時はいつでも、トランスコーダ34、復号器36、または復号器38は、アクセスして相関させることができる。
動作時において、図9Aおよび図9Bの符号化器32は次のように機能する。
一実施の形態では、保護属性の値が、ユーザによって入力される。
ユーザには、コンテンツ作成者、コンテンツ分配者、またはコンテンツ消費者が含まれ得る。
あるいは、保護属性の値は、ネットワーク性能、下流デバイスの能力、デジタル著作権管理(DRM)のポリシー、セキュリティ上の問題または脆弱性等について符号化器32が知っている情報に基づいて自動的に選択することもできる。
利用可能な帯域幅等のネットワーク性能特性を監視することができ、その情報を符号化器32に与えることができる。
また、下流デバイス(エンドユーザデバイスを含む)は、符号化器32と直接通信することもできる。
符号化器32は、次に、従来の方法で、自身が用いている符号化方式(たとえば、JPEG2000符号化方式)を使用して、入力データを符号化する。
加えて、符号化器32は、符号化ビットストリーム(スケーラブルデータ)の保護プロファイルデータを生成する。
すなわち、一実施の形態では、保護属性の入力値のそれぞれについて、符号化器32は、符号化データ内において、保護属性を関連付けることができる対応するデータセグメントを特定する。
一実施の形態では、符号化器32は、保護属性の特定の値に関連付けられるデータセグメントのいくつかの選択したものまたは結合したものを特定することができる。
たとえば、画像プロダクトの場合、特定の暗号化プリミティブについて、符号化器32は、その暗号化プリミティブを使用して暗号化できるデータセグメントのいくつかの異なる結合したものを特定することができる。
一実施の形態によれば、或る結合の結果、同じ暗号化プリミティブを画像プロダクトのすべての部分に適用することができる。
別の結合の結果、或る暗号化プリミティブを画像プロダクトの或る対象領域に適用することができ、別の暗号化プリミティブを画像プロダクトの他の対象領域に適用することができる。
符号化段階において、符号化器32は、知能(プログラミングされた知能またはユーザ入力に基づく知能のいずれか)を適用して、データセグメントのどの1つまたは複数の結合したものを保護プロファイルデータに関連付けるかを決定することができる。
あるいは、すべての結合したものを保護プロファイルデータに関連付けることもできる。
符号化器は、ユーザ入力、または、ネットワーク性能特性、エンドユーザデバイスの能力、デジタル著作権管理のポリシー(DRM)、セキュリティの脆弱性等の他の考慮すべき事項に基づいて、データセグメントのどの結合したもの(たとえば、一部または全部)を特定の保護属性に関連付けるかを決定することができる。
別の実施の形態では、保護属性のさまざまな値に関連したデータセグメントを前もって定義することができる。
基本的に、表1によって例示された保護プロファイルデータは、データ符号化よりも前に確立される。
この実施の形態では、データは、符号化され、次いで、保護プロファイルデータによって定義された方法に対応する方法で暗号化される。
たとえば、図2を参照して、保護プロファイルデータは、バイト0〜b2が、保護属性値AESを有する暗号化プリミティブを使用して暗号化されることを事前に定義することができる。
符号化器は、その後、それに応じて、これらのバイトを暗号化する。
図10は、本発明の第2の実施の形態によるデータスケーラ54の内外へフローする情報を示している。
この第2の実施の形態では、スケーラ54は、変更された保護プロファイルデータを作成する。
スケーラ54は、符号化器32が保護プロファイルデータを作成したのとほぼ同じ方法で、保護プロファイルデータを変更することができる。
本実施の形態では、変更されたスケーラブルプロファイルデータは、その後、上述したように、符号化データのスケーリングされたバージョンと共にスケーラ54から出力されるか、または、そのバージョンとは別にスケーラ54から出力される。
本実施の形態では、スケーラブルメディアの個々の部分に関連付けられる保護プロファイルデータは、保護属性を特定する。
この保護属性には、表2に示すような暗号化プリミティブ、暗号化モード、暗号チェックサム、およびスケーラブルメディアへのクリプトのマッピングが含まれ得るが、これらに限定されるものではない。
その上、保護プロファイルデータは、暗号化アルゴリズムの解読と、スケーラブルメディアの個々の部分を暗号化するのに使用される暗号化方式とで使用される暗号化技法とで使用される。
本実施の形態では、スケーラブルメディアのそれぞれの個々の部分は、スケーラブルメディアの個々の部分を解読するのに使用される異なる鍵を有することができ、異なる暗号化アルゴリズムを使用することができ、そして、異なるCCSを使用することができる。
鍵の各クラスは、スケーラブルメディアの各クラスを解読するのに必要とされる場合があることが十分理解されるはずである。
たとえば、第1の鍵は、第1の解像度を有するメディアを収容するファイルにアクセスするのに必要とされる場合がある一方、第2の鍵は、第2の解像度を有するメディアを収容するファイルにアクセスするのに必要とされる場合がある。
一実施の形態によれば、保護プロファイルデータのパラメータは、経時的に変化する場合がある。
関連付けられるデータ列に対して行われる変更を反映するように、保護プロファイルデータを再マッピングできることが十分理解されるはずである。
図11は、本発明の一実施の形態によるスケーラブルメディアの部分をスケーリングするための方法で実行されるステップを示している。
ステップ1101において、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、スケーラブルメディアに関連付けられる。
本実施の形態では、スケーラブルメディアの個々の部分に関連付けられるスケーラブルプロファイルデータは、スケーラブルメディアに接続することもできるし、信号で遠隔に伝えることもできる。
ステップ1103において、ステップ1101で特定されたスケーラブルメディアの部分が暗号化される。
一実施の形態によれば、本明細書で解説したように、スケーラブルメディアを構成するスケーラブルメディアの部分は、同じ方式を使用して暗号化することもできるし、異なる方式を使用して暗号化することもできる。
ステップ1105において、スケーラブルメディアの特定された部分を暗号化するのに使用される暗号化方式の保護属性を特定するデータが、スケーラブルメディアの特定された部分に関連付けられる。
本実施の形態では、スケーラブルメディアの個々の部分に関連付けられる保護プロファイルデータは、スケーラブルメディアに接続することもできるし、信号で遠隔に伝えることもできる。
図12は、本発明の一実施の形態による、復号することなく暗号化スケーラブルメディアをスケーリングする方法で実行されるステップのフローチャートである。
ステップ1201において、暗号化スケーラブルメディアに関連付けられるデータであって、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合する暗号化スケーラブルメディアの部分を特定するデータが、アクセスされる。
ステップ1203において、暗号化スケーラブルメディアの部分の1つまたは2つ以上および関連した暗号チェックサムが結合されて、送信可能なデータ列にされる。
ステップ1205において、スケーラブルメディアに関連付けられるデータであって、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、再マッピングされる。
ステップ1207において、スケーラブルメディアの部分に関連付けられるデータであって、スケーラブルメディアの部分を暗号化するのに使用される暗号化システムの保護属性を特定するデータが、再マッピングされる。
暗号化スケーラブルメディアの1つまたは2つ以上の部分および関連した暗号チェックサムは、暗号化スケーラブルメディアのスケーリングされたバージョンを構成できることが十分理解されるはずである。
図13は、本発明の一実施の形態によるスケーラブルメディアを復号する方法で実行されるステップのフローチャートである。
ステップ1301において、スケーラブルメディアの部分に関連付けられるデータであって、スケーラブルメディアの部分を暗号化するのに使用される暗号化システムの保護属性を特定するデータが、アクセスされる。
ステップ1303において、スケーラブルメディアに関連付けられるデータであって、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、アクセスされる。
スケーラブル1305において、スケーラブルメディアの部分に関連付けられるデータであって、スケーラブルメディアの部分を暗号化するのに使用される暗号化システムの保護属性を特定するデータに基づいて、スケーラブルメディアの部分が解読される。
ステップ1307において、スケーラブルメディアに関連付けられるデータであって、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータに基づいて、スケーラブルメディアの部分が復号される。
要約すれば、スケーラブルメディアの部分にデータを関連付けるための方法が開示される。
所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータは、スケーラブルメディアに関連付けられる。
スケーラブルメディアの部分は暗号化される。
スケーラブルメディアの部分を暗号化するのに使用される暗号化システムの保護属性を特定するデータは、スケーラブルメディアの部分に関連付けられる。
[符号化方式の知識を伴わないプログレッシブ暗号化されたデータのスケーリング]
図14は、本発明の一実施の形態による、プログレッシブ暗号化されたスケーラブルデータ列を符号化する方法を示している。
図14の実施の形態では、プログレッシブ暗号化されたデータ列のスケーリングされたバージョンを生成するために結合するスケーラブルデータ列の結合可能部分を特定するデータ(たとえば、図4Aおよび図4Bに関して解説したスケーラブルプロファイルデータ)が、スケーラブルデータ列に関連付けられる。
本実施の形態では、プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンは、プログレッシブ暗号化されたスケーラブルデータ列の暗号化方式の知識なしでスケーリングされる。
その上、暗号チェックサム(CCS)を計算して、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの結合可能部分に関連付けることができる。
図14は、プログレッシブ暗号化されたメディアコンテンツ列301を示している。
このメディアコンテンツ列301は、312において、セグメント304、305、306、および307(たとえば、結合可能部分)に分割される。
各セグメント(たとえば、結合可能部分)は、少なくとも1つの独立復号可能部分を含むことができることが十分理解されるはずである。
図14の実施の形態では、独立復号可能部分に、ラベルA、B、C、およびDが付けられている。
各セグメントは、独立復号可能部分を1つしか含まない。
代替的な実施の形態では、2つ以上の独立復号可能部分を1つのセグメントに含めることができる。
一実施の形態によれば、暗号チェックサムは、各セグメント304、305、306、および307について計算することができる。
図14の実施の形態では、暗号チェックサムの計算後、313において、特定された各セグメント304、305、306、および307が、対応する暗号チェックサム314、315、316、および317に関連付けられる。
これらの特定されたセグメント(たとえば、結合可能部分)およびそれらに関連付けられた暗号チェックサムは結合されて、メディアセグメント321、322、323、および324にされる。
各セグメントの長さは、本発明の実施の形態では、各セグメントの長さに、そのセグメントに関連付けられたCCSの長さを加えたものが、ネットワークに許容可能な最大メディアセグメントペイロードサイズまたはネットワークに許容可能な最大送信可能単位(MTU)よりも小さくなるように選ばれることが十分理解されるはずである。
本明細書で解説するように、メディアセグメントは、単一のトランケート可能単位または複数のトランケート可能単位を含むことができる。
また、図14には4つのメディアセグメントが示されているが、任意の個数のメディアセグメントを使用できることにも留意されたい。
本明細書でなされる本発明の実施の形態の説明において、用語「独立復号可能部分」および「トランケート可能単位」は異なる意味を有することがあることが十分理解されるはずである。
メディアセグメントの独立復号可能部分は、メディアセグメントペイロードの他の部分を復号する必要なく復号できる、メディアセグメントのペイロードの一部である。
その上、暗号化されている場合には、独立復号可能部分は、ペイロードの残りの部分を解読する必要なく解読することもできる。
トランケート可能単位は、解読の有無を問わず、メディアセグメントの残りの部分に有害な影響を与えることなく、メディアセグメントからトランケートできるメディアセグメントペイロードの一部である。
これらの用語は、幾分交換可能に使用することができるが、本明細書でなされる解説では、それらの個々の意味を維持していることが十分理解されるはずである。
図15Aは、本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルメディアコンテンツ列のトランケートによるトランスコードを示している。
図15Aに示す実施の形態では、メディアコンテンツ411は、412において、それぞれが1つまたは2つ以上の独立復号可能部分(A、B等)を含むセグメントに分割される。
図14に関して上記で解説したように、メディアセグメントのペイロードは、1つまたは2つ以上の独立復号可能部分を含むことができる。
その上、いくつかの実施の形態によれば、独立復号可能部分は、独立トランケート可能単位をさらに含むことができる。
図15Aの実施の形態では、暗号チェックサムが、メディアセグメント413の復号可能部分またはトランケート可能単位のそれぞれについて優先度の順番で計算され、かつ、直前のパケットペイロード全体について計算される。
最初に、暗号チェックサム415が、第1のトランケート可能単位A(たとえば、403)について計算され、その結果、CCS(A)415が生成される。
その後、暗号チェックサム416が、独立復号可能部分A(たとえば、403)、暗号チェックサムCCS(A)(たとえば415)、および独立復号可能部分B(たとえば、404)を含む直前のメディアセグメントペイロード全体について計算される。
その結果生成されるチェックサムは、図4AにCCS(A,CCS(A),B)416として示されている。
第3の独立復号可能部分が含まれている場合、次の暗号チェックサムは、
CCS(A,CCS(A),B,CCS(A,CCS(A),B),C)
として表すことができることが十分理解されるはずである。
本実施の形態では、トランスコーダ可読ヘッダ414をメディアセグメント413に関連付けることができる。
例示の実施の形態によれば、トランスコーダ可読ヘッダは、メディアセグメント413等のスケーラブルメディアセグメントにおけるトランケートポイントのロケーション等の情報、および、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために抽出できるスケーラブルメディアセグメントデータ(たとえば、メディアセグメント)のセグメントを特定するスケーラブルプロファイルデータを含むことができる。
代替的な実施の形態では、スケーラブルプロファイルデータは、スケーラブルメディアセグメントの中央、端部、または異なるロケーションに存在することができる。
本実施の形態では、トランスコードセッションが行われると(たとえば、417)、トランスコーダは、所望のスケーリング結果を達成するために、選択されたトランケート可能単位をトランケートすることができる。
例示の実施の形態によれば、トランスコードされているメディアセグメントが暗号化されている場合、この形式のトランスコードを実行するのに、解読は必要とされない。
図14Aに示す例では、トランケート可能単位Bおよびその関連した暗号チェックサム416がトランケートされる。
トランケートされずかつ解読されない、メディアセグメントの残りの部分418は、その後、その必要な暗号チェックサムCCS(A)415、独立復号可能部分A403、およびヘッダ414が完全な状態のままで転送される。
図15Aに示す本発明の実施の形態では、トランケート要件を満たすのに(たとえば、所望のスケーラブル属性を得るのに)必要なだけ、任意の個数のトランケート可能単位およびそれらの関連した暗号チェックサムをメディアセグメントからトランケートすることができる。
各場合において、トランケート可能単位、その関連した暗号チェックサム、および後続のトランケート可能単位もトランケートされる。
なお、後続のトランケート可能単位の暗号チェックサムは、トランケートされた単位の計算を含む。
図15Bは、本発明の代替的な一実施の形態によるプログレッシブ暗号化されたスケーラブルメディアコンテンツ列のトランケートによるトランスコードを示している。
図15Bの実施の形態では、メディアコンテンツ421が422においてセグメントに分割される。
これらのセグメントは、上記で解説したように、A、B、C、D等として示す任意の個数の独立復号可能部分を含むことができる。
この例では、いくつかのセグメントが、各部分のサイズのために(図15B参照)、他のセグメントよりも多くの独立復号可能部分を含むことに留意されたい。
図15Bの実施の形態では、独立復号可能部分の個数の選択は、メディアセグメントの最大サイズに基づいている。
たとえば、独立復号可能部分A(たとえば、433)、B(たとえば、434)、およびC(たとえば、435)は、1つのセグメントに結合される一方、独立復号可能部分D436は、それ自体で同様のサイズのセグメントを構成する。
図15Bに示す実施の形態では、暗号チェックサムは、各独立復号可能部分について計算される。
この実施の形態によれば、暗号チェックサムの計算は、他の独立復号可能部分とは独立に行われる。
メディアセグメント423は、独立復号可能部分A(たとえば、433)およびCCS(A)(たとえば、425)と、独立復号可能部分B(たとえば、434)およびCCS(B)(たとえば、426)と、独立復号可能部分C(たとえば、435)およびCCS(C)(たとえば、427)との結合から形成される。
図15Bに示す実施の形態では、メディアセグメント423のトランスコード428は、次に、選択された独立復号可能部分またはトランケート可能単位、および、それらの関連した暗号チェックサムをトランケートすることを含む。
図15Bに示す例では、トランケート可能単位C(たとえば、435)およびCCS(C)(たとえば、427)がトランケートされる。
この実施の形態では、トランスコーダ可読ヘッダ424は、完全な状態のままであり、トランケートポイントに関する自身の情報を保持する。
トランケートされたメディアセグメント429は、したがって、その後、トランケート可能単位B(たとえば、434)およびCCS(B)(たとえば、426)、または、トランケート可能単位A(たとえば、433)およびCCS(A)(たとえば、425)のいずれかをトランケートすることによるトランケートによってトランスコードするのに利用可能である。
このように、トランスコードは、所望のトランスコード結果を達成するのにどのメディアセグメントも解読する必要なく、かつ、再暗号化する必要なく、ネットワークにおいて、どの所望のポイントでも行うことができる。
各トランケートの後、メディアセグメントの解読されていない残りの部分は、その必要な暗号チェックサムを保持し、データのセキュリティは完全な状態のままである。
いくつかの実施の形態では、トランスコードは、メディアセグメント全体をメディアコンテンツから削除することによって実行できることが十分理解されるはずである。
また、暗号チェックサムは、メディアセグメントの検証等のために、未暗号化メディアストリームでも使用できることにも留意されたい。
図16Aは、本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルメディアコンテンツ列のトランスコードを示している。
図16Aの実施の形態では、メディアコンテンツ500(スケーラブルデータ部分A、B、およびC等によって構成される)が、トランケート可能単位(たとえば、502)に分割される(たとえば、501)。
各メディアセグメントペイロードは、安全なメディアストリームにおいて、暗号化され(たとえば、503)、独立した暗号チェックサム(CCS)と共に追加される。
図16Aを参照して、暗号チェックサムは、CCS(A)(たとえば、506)、CCS(B)(たとえば、507)、およびCCS(C)(たとえば、508)として指定される。
例示の実施の形態によれば、暗号化されたトランケート可能単位は、それらの関連した暗号チェックサムと共に、適切な長さの送信可能メディアセグメントを形成するように結合される(図16A参照)。
ここで、暗号チェックサムは多くの異なるタイプを有することができることに留意されたい。
共通のチェックサムは、既知のハッシュ関数を含むことができ、この既知のハッシュ関数は、暗号化メディアセグメントに含まれるデータのフィンガープリントを提供し、受信データの認証および解読データの正当性を保証することができる。
暗号チェックサムの能力を提供するのに使用できるチェックサム関数の他の例には、メッセージ認証符号(MAC)、MD4およびMD5(メッセージダイジェストアルゴリズム)等の鍵付きハッシュ、SHA(セキュアハッシュアルゴリズム)、RIPEMD(RACE完全性プリミティブ評価メッセージダイジェスト)、およびHMAC(メッセージ認証用鍵付きハッシュ)が含まれる。
また、いくつかの実施態様では、デジタル署名方式も使用することができる。
本発明の別の実施の形態では、データセグメントのトランケート可能単位への分割は、セキュアスケーラブルストリーミング(SSS(secure scalable streaming))と呼ばれる。
各メディアセグメントは、そのメディアセグメントに含まれるヘッダで定義できる適切なトランケートポイントでそのメディアセグメントをトランケートすることによってトランスコードすることができる。
たとえば、トランスコード中、ビットレート削減、フレームレート削減等が、1つまたは2つ以上のトランケート可能単位をメディアセグメントからトランケートまたは削除することによって達成される。
図16Aの実施の形態では、トランスコーダ可読ヘッダ505が書き込まれて、送信可能メディアセグメントに接続される。
上記で図16Aに関して解説したように、トランスコーダ可読ヘッダ(たとえば、スケーラブルプロファイルデータ、保護プロファイルデータ等)は、メディアセグメントに付随するメディアセグメントペイロードに関する情報を含むが、メディアセグメントのペイロードのコンテンツを開示しない。
トランスコーダ可読ヘッダを読み出すことによって、トランスコーダは、図16Aの510に示すように、メディアセグメントの削除する部分も残りの部分も解読することなく、部分を削除することもできるし(たとえば、509)、送信可能メディアセグメントを「スケールダウン」することもできる。
図示した例では、独立復号可能部分AにもCにも影響を与えることなく、それらの関連した暗号チェックサムにも影響を与えることなく、独立復号可能部分Bが、その関連した暗号チェックサムと共に削除される。
その結果、ストリーミングされるメディアデータのエンドツーエンドのセキュリティが維持され、ストリーミングされたメディアの受信機は、トランスコードされたデータの完全性を確認することができる。
図16Aおよび図16Bに示す実施の形態では、トランスコードが完了した後、新しく構成されたメディアセグメント510のコンテンツを反映するように新しいトランスコーダ可読ヘッダ511を書き込むことができる。
前のトランスコーダ可読ヘッダと同様に、含まれるメディアセグメントペイロードの開始ポイントおよび終了ポイント並びにメディアセグメントペイロードの優先度に関する情報を含めることができるが、コンテンツを開示する情報は含まれない。
その上、この新しいトランスコーダ可読ヘッダは、メディアセグメントペイロードの解読またはCCSの評価を行うのに用いる鍵を有しないトランスコーダが書き込むことができるので、この新しいトランスコーダ可読ヘッダは、メディアセグメントペイロードのコンテンツを開示することができない。
新しいトランスコーダ可読ヘッダにより、さらにトランスコードおよびスケーリングがある場合に、それらトランスコードおよびスケーリングを他の下流ロケーションにおいて実行することができる。
メディアセグメントペイロードのサイズおよびロケーションに加えて、メディアセグメントペイロードの優先度もトランスコーダ可読ヘッダに含めることができる。
たとえば、ウェブページの所有者によって廃棄可能とみなされるウェブページのコンポーネントを特定する優先度等の優先度情報を含めることができる。
大きなデスクトップコンピュータよりも表示能力の低いハンドヘルドデバイスに送信する場合、複雑なウェブページの情報の多くは失われる可能性がある。
優先度の低い情報を早期のトランスコードで除去可能とすることによって、このような小さなデバイスへデータを送信する時に、貴重な帯域幅を他のユーザ用に保存することができる。
本発明の実施の形態は、ストリーミングされないメディアセグメントを処理することが可能である。
図16Bは、別の実施の形態のプロセスをブロックフォーマットで示している。
ここで、記憶されたデータは、暗号チェックサムを乱すことなく操作される。
大きなメディアセグメント514は、セグメントA、B、およびCを含み、記憶媒体521から取り出される。
図16Bの例では、データは、基本的に、ストレージ空間を削減するために圧縮される。
これは、トランスコード519によるデータのセグメントおよびその関連したCCS517の除去によって達成される。
データのセグメントは、この場合、セグメントBである。
このようなトランスコードの結果、より小さなメディアセグメント522が生成される。
このようにトランスコードすることによって、セグメントAおよびCは完全な状態のままであり、重要なことに、CCS(A)516およびCCS(C)518は乱されていないことに留意されたい。
後のオペレーションに必要な場合、トランスコーダ可読ヘッダ515は、新しいトランスコーダ可読ヘッダ511と取り替えることができる。
本発明の実施の形態によって提供されるトランスコード方式は、ストリーミングされたデータに限定されるものではなく、記憶されたデータと共に使用することもできることに留意されたい。
加えて、トランスコード技法は、暗号化データだけでなく、未暗号化データにも役立つ。
いずれの場合も、トランスコードは、暗号チェックサムを乱すことなく、かつ、符号化データを読み出す必要なく行うことができる。
本実施の形態では、メディアセグメントは、セグメントの1つまたは2つ以上およびそれらの関連した暗号チェックサムが通信メディアセグメントに適合することを可能にするものなら、どの適切な分割であってもよい。
適切に分割された独立復号可能部分の一例は、ジョイントピクチャエキスパートグループ(JPEG)によって開発された圧縮標準規格、たとえばJPEG2000で送信できるような、高精細圧縮画像の部分である。
多くの場合、最初の送信データは、高画素化画像(highly pixilated image)を生成するのに十分なデータを含んでいることが十分理解されるはずである。
その後に送信されるデータは、その後引き続いて画像の細部を精緻化するものである。
大きなディスプレイへのこのような画像の提示は、強化された細部を利用することができる。
一方、ハンドヘルドコンピュータのディスプレイは、最初の精緻化後の画像と、最後の最も高精細な精緻化との間の差を示すことができない。
その結果、論理的なトランスコードは、受信機が細部を使用できない場合に、より高精細なデータをストリームから除去することができる。
送信データのいくつかの例では、単一のパケットが、数個の詳細レベルを含んだデータを含むことができる。
一方、いくつかのより大きな画像は、必要なすべてのデータを搬送するのに、数個のメディアセグメントを必要とする場合がある。
図17〜図19は、プログレッシブ暗号化されたデータをその符号化方式の知識なしでスケーリングするための方法で実行されるステップのフローチャートである。
これらのフローチャートには具体的なステップが開示されているが、このようなステップは例示である。
すなわち、本発明の実施の形態は、さまざまな他のステップ、または、これらのフローチャートに列挙されたステップを変形したものを実行することにもよく適している。
フローチャートのステップは、提示したものとは異なる順序で実行できること、および、フローチャートのステップのすべてが実行されるとは限らない場合があることが十分理解される。
フローチャートによって記述された方法の全部または一部は、コンピュータ可読でかつコンピュータ実行可能な命令を使用して実施することができる。
これらの命令は、たとえば、コンピュータシステムのコンピュータ使用可能媒体に存在する。
図17は、一実施の形態による、プログレッシブ暗号化されたスケーラブルデータ列を符号化するための方法で実行されるステップのフローチャートである。
ステップ1701において、所望のスケーラブル属性を保有するようにスケーリングされるプログレッシブ暗号化されたスケーラブルデータ列のバージョンを生成するために結合するプログレッシブ暗号化されたスケーラブルデータ列の結合可能部分を特定するデータが、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられる。
一実施の形態によれば、上記プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンは、復号されることなくスケーリングされる。
ステップ1703において、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの部分について、暗号チェックサムが計算される。
ステップ1705において、暗号チェックサムが、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの部分に関連付けられる。
図18は、一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列をトランスコードする方法で実行されるステップのフローチャートである。
ステップ1801において、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータであって、所望のスケーラブル属性を保有するようにスケーリングされるデータ列のスケーリングされたバージョンを生成するために結合するプログレッシブ暗号化されたスケーラブルデータ列の結合可能部分を特定するデータが、アクセスされる。
一実施の形態によれば、上記プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンは、復号されることなくスケーリングされる。
ステップ1803において、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分の1つまたは2つ以上、および、それらの関連した暗号チェックサムが結合されて、送信可能データ列にされる。
図19は、本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列を復号する方法で実行されるステップのフローチャートである。
ステップ1801において、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列が、アクセスされる。
ステップ1803において、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータであって、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分をどのようにスケーリングして所望のスケーラブル属性を達成するかを特定するデータが、アクセスされる。
本実施の形態では、スケーリングは、プログレッシブ暗号化されたスケーラブルデータ列を復号することなく達成される。
ステップ1905において、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの結合可能部分のコンテンツを認証するために、暗号チェックサムが使用される。
ステップ1907において、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列が、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータに基づいて復号される。
このデータは、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータの結合可能部分をどのようにスケーリングして所望のスケーラブル属性を達成するかを特定するものである。
一実施の形態によれば、プログレッシブ暗号化されたスケーラブルデータの少なくとも1つの結合可能部分および暗号チェックサムを暗号化することができる。
例示の実施の形態では、少なくとも1つの結合可能部分を、プログレッシブ暗号化されたスケーラブルデータを構成する他の結合可能部分とは独立に解読することを可能にすることができる。
その上、暗号チェックサムは、プログレッシブ暗号化されたスケーラブルデータ列の各結合可能部分について計算することができる。
一実施の形態によれば、プログレッシブ暗号化されたスケーラブルデータ列のこの少なくとも1つの結合可能部分は、上記プログレッシブ暗号化されたスケーラブルデータ列を構成する他の部分とは独立に解読することが可能である。
本実施の形態では、プログレッシブ暗号化されたスケーラブルデータ列は、複数の結合可能部分を含む。
その上、第1の暗号チェックサムは、上記プログレッシブ暗号化されたスケーラブルデータ列の第1の結合可能部分について計算することができ、第2の暗号チェックサムは、プログレッシブ暗号化されたスケーラブルデータ列の第2の結合可能部分、プログレッシブ暗号化されたスケーラブルデータ列の第1の結合可能部分、および第1の暗号チェックサムを結合したものについて計算することができる。
一実施の形態によれば、暗号チェックサムは、ハッシュ関数を使用して計算することができる。
加えて、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータは、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムに関係した情報を含むことができる。
符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータによって、プログレッシブ暗号化されたスケーラブルデータ列のトランスコードを可能にできることが十分理解されるはずである。
一実施の形態によれば、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムを、トランスコーダ可読ヘッダとは独立に暗号化することを可能にすることができる。
その上、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムを、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータとは独立に解読することも可能にすることができる。
加えて、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータを、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムとは独立に読み出すことも可能にすることができる。
一実施の形態によれば、暗号チェックサムは、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分の1つに基づいて計算することができる。
暗号チェックサムは、複数の結合可能部分および関連したチェックサムに基づいて計算することができる。
その上、暗号チェックサムは、ハッシュ関数を使用して計算することができる。
代替的な一実施の形態では、暗号チェックサムは、メッセージダイジェスト関数を使用して計算することができる。
一実施の形態によれば、暗号チェックサムは、メッセージ認証符号関数を使用して計算することができる。
別の実施の形態では、暗号チェックサムは、メッセージ認証用鍵付きハッシュ関数を使用して計算することができる。
さらに別の実施の形態では、暗号チェックサムは、デジタル署名関数を使用して計算することができる。
一実施の形態によれば、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータは、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムとは独立に書き込むことが可能である。
プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分のそれぞれは、パケットにおけるプログレッシブ暗号化されたスケーラブルデータ列の他の結合可能部分とは独立に、送信可能パケットから抽出することを可能にすることができることが十分理解されるはずである。
本実施の形態では、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータは、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分と暗号チェックサムとに関係した情報を含む。
一実施の形態によれば、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータによって、データパケットのトランスコードが可能になる。
プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムを、トランスコーダ可読ヘッダとは独立に暗号化することを可能にできることが十分理解されるはずである。
一実施の形態では、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムは、符号化され、かつ、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータとは独立に解読することが可能である。
その上、プログレッシブ暗号化されたスケーラブルデータ列に関連付けられるデータを、プログレッシブ暗号化されたスケーラブルデータ列の結合可能部分および暗号チェックサムとは独立に読み出すことも可能にすることができる。
要約すれば、本発明の方法は、プログレッシブ暗号化されたスケーラブルデータ列を、その暗号化方式の知識を有しないでスケーリングするための方法を提供する。
この方法は、プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンを生成するために結合するプログレッシブ暗号化されたスケーラブルデータ列の結合可能部分を特定するデータを、プログレッシブ暗号化されたスケーラブルデータ列に関連付けることを含む。
プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンは、所望のスケーラブル属性を保有するようにスケーリングされる。
その上、プログレッシブ暗号化されたスケーラブルデータ列のスケーリングされたバージョンは、復号されることなくスケーリングされる。
暗号チェックサムは、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの結合可能部分について計算され、暗号チェックサムは、プログレッシブ暗号化されたスケーラブルデータ列の少なくとも1つの結合可能部分に関連付けられる。
[符号化器]
図20は、本発明の一実施の形態によるスケーラブルメディア符号化器を示すブロック図である。
一実施の形態によれば、スケーラブルメディア符号化器2020は、JPEG2000またはMPEG等の任意のタイプのスケーラブルメディアを符号化できる、ポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスである。
ポータブル通信デバイスの例には、ポケットパーソナルコンピュータ、ラップトップ、デジタルカメラ、ビデオカメラ、および携帯電話が含まれるが、これらに限定されるものではない。
固定計算デバイスの例には、パーソナルコンピュータ、テレビ、およびサーバが含まれるが、これらに限定されるものではない。
サーバは、ASICサーバとすることができる。
デジタル画像キャプチャーデバイスの例には、デジタルカメラおよびビデオカメラが含まれるが、これらに限定されるものではない。
一実施の形態によれば、スケーラブルメディア符号化器2020は、メディアデータ2012、スケーラブル属性判定基準2014、および保護属性判定基準2016を受信する。
スケーラブル属性判定基準2014は、スケーラブル属性を列挙したものとすることができる。
このスケーラブル属性は、本明細書で説明したように、スケーラブルメディア符号化器2020が、別のデバイスが抽出できるスケーラブルメディア2052のセグメントを生成するのに使用できるものである。
本明細書で説明したように、スケーラブル属性の例には、解像度、ビットレート、色が含まれるが、これらに限定されるものではない。
セグメントを抽出できるデバイスの例には、トランスレータおよび復号器が含まれるが、これらに限定されるものではない。
さらに別の実施の形態では、図20に示すように、スケーラブルメディア符号化器2020は、メディアデータ2012を受信するように構成されるメディアデータ受信機2022を含む。
メディアデータ2012は、一実施の形態によれば、JPEG2000フォーマットの画像等のスケーラブルメディアとすることもできるし、写真をスキャンした画像等の非スケーリング(non-scaled)画像とすることもできる。
スケーラブルメディア符号化器2020は、一実施の形態によれば、図20に示すように、メディアデータ受信機2022に接続されるスケーラブルメディアジェネレータ2024もさらに含む。
たとえば、一実施の形態では、スケーラブルメディアジェネレータ2024は、メディアデータ2012が非スケーリング画像である場合に、スケーラブルメディア2052を生成することができる。
図20をさらに参照して、スケーラブルメディア符号化器2020は、一実施の形態では、スケーラブルメディア出力器2026も含む。
このスケーラブルメディア出力器2026は、スケーラブルメディアジェネレータ2024に接続され、かつ、スケーラブルメディア2052を出力するようになっている。
スケーラブルメディア符号化器2020は、一実施の形態によれば、図20に示すように、スケーラブル属性判定基準受信機2032もさらに含む。
このスケーラブル属性判定基準受信機2032は、スケーラブル属性判定基準2014を受信するように構成されている。
さらに別の実施の形態によれば、スケーラブル属性判定基準受信機2032は、スケーラブルプロファイルデータ2054を生成するようになっているスケーラブルプロファイルデータジェネレータ2034に接続されている。
スケーラブルプロファイルデータ2054は、トランスレータまたは復号器等の別のデバイスが、本明細書で説明したように、1つまたは2つ以上のスケーラブル属性の所望の結果を達成するためにスケーラブルメディア2052から抽出できるセグメントを含むことができる。
スケーラブルプロファイルデータジェネレータ2034は、さらに別の実施の形態では、スケーラブルプロファイルデータ2054を出力するようになっているスケーラブルプロファイルデータ出力器2036に接続されている。
図20をさらに参照して、スケーラブルメディア符号化器2020は、一実施の形態によれば、本明細書ですでに説明したように、保護属性判定基準2016を受信するように構成される保護属性判定基準受信機2042をさらに含む。
保護属性判定基準受信機2042は、さらに別の実施の形態によれば、保護プロファイルデータジェネレータ2044に接続されている。
この保護プロファイルデータジェネレータ2044は、本明細書で説明した一実施の形態によれば、スケーラブルメディア符号化器2020が受信した保護属性判定基準2016に少なくとも部分的に基づいて、保護プロファイルデータ2056を生成するようになっている。
保護プロファイルデータジェネレータ2044は、別の実施の形態によれば、保護プロファイルデータ出力器2046に接続されている。
保護プロファイルデータ出力器2046は、保護プロファイルデータ2056を出力するようになっている。
さらに別の実施の形態では、スケーラブルメディア2052は、本明細書ですでに説明した実施の形態に従って、保護プロファイルデータ2056を使用して暗号化することができる。
さらに別の実施の形態では、スケーラブルメディア2052は、暗号化されていなくてもよい。
適用できる保護メカニズムにはいくつかのメカニズムがある。
たとえば、暗号チェックサムは、完全性チェックまたは認証用のデジタル署名等に適用することができる。
一実施の形態によれば、スケーラブル属性判定基準受信機2032および/または保護属性判定基準受信機2042は、汎用ユーザインターフェース(GUI)とすることができる。
たとえば、本明細書ですでに説明した実施の形態に従って、ユーザは、GUIを使用して、解像度、ビットレート等の属性を入力し、スケーラブルメディアジェネレータ2024がそれらの属性のスケーラブルプロファイルデータ2054をどのように生成できるかを示すことができる。
同様に、本明細書ですでに説明した実施の形態に従って、ユーザは、GUIを使用して、データ暗号化標準規格(DES)、電子コードブック(ECB)等の暗号化モード等の属性を入力し、保護プロファイルデータジェネレータ2044が、スケーラブルメディア2052の部分がそれらの属性でどのように保護されるべきかまたは保護されるかを示す保護プロファイルデータ2056をどのように生成できるかを示すことができる。
一実施の形態によれば、スケーラブルメディア符号化器2020によって実行される処理は、複雑な場合もあるし、簡単な場合もある。
たとえば、スケーラブルメディア符号化器2020のスケーラブルメディアジェネレータ2024は、本明細書ですでに説明したように、スケーラブルメディア2052を生成することができ、このスケーラブルメディア2052は、多くの代替的な方法でスケーリングされる場合もあるし、2〜3の代替的なものでしかスケーリングされない場合もある。
メディアデータ2012、スケーラブル属性判定基準2014、および/または保護属性判定基準2016は、一実施の形態によれば、ネットワークを使用してスケーラブルメディア符号化器2020へ通信することができる。
別の実施の形態では、メディアデータ2012、スケーラブル属性判定基準2014、および/または保護属性判定基準2016は、スケーラブルメディア符号化器2020がストレージデバイスから取り出すことができる。
このストレージデバイスは、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、直接アクセスストレージデバイス(DASD)等である。
図20に示すように、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056は、一実施の形態によれば、ネットワークを使用して、トランスコーダまたは復号器等の別のデバイスへ送信することができる。
別の実施の形態によれば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056は、ストレージデバイスを介して、トランスコーダまたは復号器等の別のデバイスへ送信することができる。
ストレージデバイスは、コンパクトディスク(CD)、デジタルビデオディスク(DVD)、直接アクセスストレージデバイス(DASD)等である。
さらに別の実施の形態では、出力器(2026、2036、2046)の2つまたは3つ以上を結合することができる。
たとえば、スケーラブルメディア出力器2052およびスケーラブルプロファイルデータ出力器2036を結合して、1つの出力器にすることができる。
同様に、スケーラブルメディア出力器2026および保護プロファイルデータ出力器2046を結合して、1つの出力器にすることもできる。
あるいは、3つすべての出力器(2026、2036、2046)を結合して、1つの出力器にすることもできる。
スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056は、一実施の形態によれば、別々のファイルとすることもできるし、任意の組み合わせで互いに結合して1つのファイルとすることもできる。
たとえば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を合わせて1つのファイルにすることができる。
第2の例では、スケーラブルメディア2052およびスケーラブルプロファイルデータ2054を合わせて1つにファイルにできる一方、保護プロファイルデータ2056は別個のファイルである。
第3の例では、スケーラブルメディア2052および保護プロファイルデータ2056を合わせて1つのファイルにできる一方、スケーラブルプロファイルデータ2054は別個のファイルである。
図21は、本発明の別の実施の形態によるスケーラブルメディア符号化器を示すブロック図である。
図21は、スケーラブルメディア符号化器2120を示し、このスケーラブルメディア符号化器2120は、保護属性判定基準2016を受信する保護属性判定基準受信機2042と、保護プロファイルデータジェネレータ2044と、保護プロファイルデータ2056を出力する保護プロファイルデータ出力器2046とを含まない点を除いて、図20に示すスケーラブルメディア符号化器2020と同様である。
一実施の形態では、スケーラブルメディア2052を暗号化するプロセスを、ウェブページを使用して実行することができる。
たとえば、スケーラブルメディア符号化器2120は、保護属性判定基準受信機2042、保護プロファイルデータジェネレータ2044、および保護プロファイルデータ出力器2046を含まないので、スケーラブルメディア2052は、ウェブページ等、スケーラブルメディア符号化器2020以外の或る場所で、保護プロファイルデータ2056を使用して暗号化することができる。
図22は、本発明の別の実施の形態によるスケーラブルメディア符号化器を示すブロック図である。
図22は、スケーラブルメディア符号化器2220を示し、このスケーラブルメディア符号化器2220は、スケーラブル属性判定基準2014を受信するスケーラブル属性判定基準受信機2032と、スケーラブルプロファイルデータジェネレータ2034と、スケーラブルプロファイルデータ2054を出力するスケーラブルプロファイルデータ出力器2036とを含まない点を除いて、図20に示すスケーラブルメディア符号化器2020と同様である。
[復号器]
図23は、本発明の一実施の形態による復号器を示すブロック図である。
一実施の形態によれば、復号器2320は、JPEG2000またはMPEG等の任意のタイプのスケーラブルメディアを復号できる、ポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスである。
通常、ユーザは、テレビ、PDA、DVDプレイヤ、コンピュータモニタ等のクライアントデバイスと対話して、1つまたは2つ以上の画像をクライアントデバイスに表示することを要求する。
復号器2320は、クライアントデバイス2380と通信することもできるし、クライアントデバイス2380の一部とすることもできる。
ユーザによる観察のために、クライアントデバイス2380に画像を提供することの一部として、復号器2320およびクライアント2380は、クライアント2380の画像表示能力、および/または、画像をどのように観察するかのユーザの要望について通信することができる。
この通信の一部として、復号器2320は、所望のスケーラビリティ属性2372を要求することができる。
たとえば、所望のスケーラビリティ属性2372は、クライアント2380が取り扱うことができる帯域幅、または、ユーザが画像を白黒で見たいのか、それともカラーで見たいのかを示すことができる。
クライアント2380は、所望のスケーラブル属性2374を復号器2320へ返すことができる。
クライアントデバイスの他の例には、ポータブル通信デバイス、固定計算デバイス、およびデジタル画像キャプチャーデバイスが含まれるが、これらに限定されるものではない。
JPEG2000ファイルまたはMPEGファイル等のスケーラブルメディアを復号および/または解読することができない多くのレガシー復号器が存在する。
一実施の形態によれば、復号器2320はレガシーデバイスである。
スケーラブルメディア受信機2330、スケーラブルプロファイルデータ受信機2340、保護プロファイルデータ受信機2350、およびレンダラ2362等のソフトウェアまたはコンポーネントをレガシー復号器2320にインストールすることによって、そのレガシー復号器2320は、本明細書ですでに説明した実施の形態に従って、スケーラブルメディア2052を復号および/または解読することを可能にすることができる。
たとえば、レンダラ2362は、スケーラブルメディア2052を復号および/または解読して、レンダリングされたメディアデータ2376をクライアント2380における観察用に提供することができる。
図23に示すように、スケーラブルメディア受信機2330は、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を受信するように構成されている。
一実施の形態によれば、スケーラブルメディア受信機2330は、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を受信するように構成される受信機2330、2340、2350を含む。
受信機2330、2340、2350は、別の実施の形態によれば、レンダラ2362に接続されている。
本明細書ですでに説明した実施の形態によれば、レンダラ2362は、スケーラブルプロファイルデータ2054を使用して、スケーラブルプロファイルデータ2054に基づきスケーラブルメディア2052の部分を抽出することによりスケーラブルメディア2052を復号し、かつ/または、保護プロファイルデータ2056を使用してスケーラブルメディア2052を解読する。
さらに別の実施の形態では、受信機(2330、2340、2350)の2つまたは3つ以上を結合することができる。
たとえば、スケーラブルメディア受信機2330およびスケーラブルプロファイルデータ受信機2340を結合して、1つの受信機にすることができる。
同様に、スケーラブルメディア受信機2330および保護プロファイルデータ受信機2350を結合して、1つの受信機にすることもできる。
あるいは、3つすべての受信機(2330、2340、2350)を結合して、1つの受信機にすることもできる。
スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056は、一実施の形態によれば、別々のファイルとすることもできるし、任意の組み合わせで互いに結合して1つのファイルとすることもできる。
たとえば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を合わせて1つのファイルにすることができる。
第2の例では、スケーラブルメディア2052およびスケーラブルプロファイルデータ2054を合わせて1つのファイルにできる一方、保護プロファイルデータ2056は別個のファイルである。
第3の例では、スケーラブルメディア2052および保護プロファイルデータ2056を合わせて1つのファイルにできる一方、スケーラブルプロファイルデータ2054は別個のファイルである。
図24は、本発明の別の実施の形態による復号器を示すブロック図である。
図24は、復号器2420を示し、この復号器2420は、保護プロファイルデータ2056を受信する保護プロファイルデータ受信機2350を含まない点を除いて、図23に示す復号器2320と同様である。
したがって、一実施の形態によれば、図23に示すレンダラ2362と異なり、図24のレンダラ2462は、保護プロファイルデータ2350を用いてスケーラブルメディア2052を解読しない。
一方、さらに別の実施の形態では、レンダラ2462は、別の技法を使用してスケーラブルメディア2052を解読することができる。
図25は、本発明のさらに別の実施の形態による復号器を示すブロック図である。
図25は、スケーラブルプロファイルデータ2054を受信するスケーラブルプロファイルデータ受信機を含まない復号器2520を示している。
したがって、一実施の形態によれば、図25のレンダラ2562は、スケーラブルプロファイルデータ2054なしでスケーラブルメディア2052を解析するためのロジックを含むことができる。
たとえば、スケーラブルメディア2052がJPEG2000ファイルであると仮定すると、レンダラ2562は、スケーラブルメディア2052を解読するために、スケーラブルメディア2052のコンテンツ表を読み出して、スケーラブルメディア2052のどのセグメントが、保護プロファイルデータ2056に関連付けられた暗号マッピングで参照されるセグメントに対応するかを判断することができる。
一方、さらに別の実施の形態では、レンダラ2462は、別の技法を使用してスケーラブルメディア2052を解読することができる。
さらに別の実施の形態では、レンダラ2462は、スケーラブルメディア2052に関連付けられたコンテンツ表に十分気づいていない場合があり、コンテンツ表の一定の側面を解析するための最低限のロジックしか有しない場合がある。
一実施の形態によれば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056のいずれか1つをネットワークで復号器2320、2420、2520へ通信することができる。
別の実施の形態によれば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056のいずれか1つを復号器2320、2420、2520がストレージデバイスから取り出すことができる。
このストレージデバイスは、復号器2320、2420、2520の一部とすることができる。
一実施の形態によれば、復号器2320、2420、2520は、レンダリングされたメディアデータ2376をネットワークでクライアント2380へ送信することができる。
さらに別の実施の形態では、レンダリングされたメディアデータ2376は、ストレージデバイスに記憶することができる。
この場合、レンダリングされたメディアデータ2376は、クライアント2380によってその後取り出される。
このストレージデバイスは、復号器2320、2420、2520の一部とすることができる。
この節における復号器2320、2420、2520の解説は、復号器2320、2420、2520が、符号化器、トランスコーダ、およびクライアント2380へ画像を配信する前の他の可能な復号器を含むデバイスのチェーンの最後にあるものと仮定している。
一実施の形態によれば、レンダラ2362、2462、2562は、スケーラブルメディア2052に関連付けられた十分なコンテンツ表を解析してスケーラブルメディア2052を伸張するためのロジックを有することができ、画像をクライアント2380に提供することができる。
[トランスコーダ]
JPEG2000ファイルまたはMPEGファイル等のスケーラブルメディアをトランスコードできないレガシーデバイスが存在する。
この節では、レガシーデバイスがスケーラブルメディアをトランスコードできるように、さまざまなソフトウェアコンポーネント、ハードウェアコンポーネント、および/またはマイクロコードコンポーネントでレガシーデバイスをアップグレードする多くの方法を解説することにする。
図26は、本発明の一実施の形態によるトランスコードユニットを示すブロック図である。
トランスコードユニット2620は、JPEG2000またはMPEG等のあらゆるタイプのスケーラブルメディアをトランスコードできるポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスとすることができる。
前述した復号器と同様に、トランスコードユニット2620は、一実施の形態によれば、所望のスケーラブル属性2372をデバイス2670に要求することができる。
この場合、デバイス2670は、所望のスケーラブル属性2374を提供することができる。
一実施の形態によれば、デバイス2670は、特に、別のトランスコードユニット、復号器、またはクライアントデバイスとすることができる。
図26に示すように、トランスコードユニット2620は、一実施の形態によれば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を受信する。
トランスコードユニット2620は、別の実施の形態によれば、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056に対してオペレーションを実行し、新たなスケーラブルメディア2662、新たなスケーラブルメディアデータ2664、および新たな保護プロファイルデータ2666を生成する。
さらに、トランスコードユニット2620は、さらに別の実施の形態によれば、本明細書で説明した実施の形態に従って、スケーラブルプロファイルデータ2054に基づきスケーラブルメディア2052からセグメントを抽出し、それらのセグメントを結合して符号化器2650へ通信されるトランスコードされたメディア2640を生成するトランスコーダ2630を含む。
符号化器2650は、一実施の形態によれば、トランスコードされたメディア2640を受信する。
このトランスコードされたメディア2640は、スケーラブルメディアの場合もあるし、ビットマップ等の非スケーリングデータの場合もある。
符号化器2650は、一実施の形態によれば、非スケーリングビットマップを取り込んで、新たなスケーラブルメディア2662を作成できるJPEG2000符号化器またはMPEG符号化器等のスケーラブルメディア符号化器とすることができる。
別の実施の形態では、符号化器2650は、一定の属性のスケーラブルメディア2662を生成するのに十分なロジックしか有しない場合がある。
さらに、図26に示すように、符号化器2650は、一実施の形態によれば、新たなスケーラブルプロファイルデータ2664を生成するスケーラブルプロファイルデータジェネレータ2654、および、新たな保護プロファイルデータ2666を生成する保護プロファイルデータジェネレータ2656を含む。
一実施の形態では、符号化器2650は、トランスコードされたメディア2640を分析することによって、スケーラブルプロファイルデータ2664および保護プロファイルデータ2666を生成する。
別の実施の形態では、符号化器2650は、本明細書ですでに説明したように、スケーラブル属性判定基準2014および/または保護属性判定基準2016等の入力を受信して、スケーラブルプロファイルデータ2664および保護プロファイルデータ2666を生成することができる。
さらに別の実施の形態では、符号化器2650は、本明細書ですでに説明した実施の形態に従って、新たなスケーラブルプロファイルデータ2054に示されたセグメントに関連したオフセットを変更して、一定のセグメントがスケーラブルメディア2052から抽出されたことを反映するように新たなスケーラブルプロファイルデータ2664を生成することにより、新たなスケーラブルプロファイルデータ2664を生成する。
さらに別の実施の形態では、符号化器2650は、本明細書ですでに説明した実施の形態に従って、どのトランスコードオペレーションが実行されたか、たとえば、どのセグメントが抽出されたかにマークを付けることによって、新たなスケーラブルプロファイルデータ2664を生成する。
同様に、別の実施の形態によれば、符号化器2650は、保護プロファイルデータ2056に関連付けられた暗号マッピングを変更して保護プロファイルデータ2666を生成することにより、新たな保護プロファイルデータ2666を生成することができる。
一実施の形態では、本明細書ですでに説明した実施の形態に従って、スケーラブルプロファイルデータ2054に基づいてスケーラブルメディア2052から抽出されたセグメントに関連したオフセットを変更することによって、暗号マッピングを変更することができる。
別の実施の形態では、暗号マッピングは、本明細書ですでに説明した実施の形態に従って、どのトランスコードオペレーションがスケーラブルメディア2052に対して実行されたかにマークを付けることによって変更することができる。
図27は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
トランスコードユニット2720は、JPEG2000またはMPEG等のあらゆるタイプのスケーラブルメディアをトランスコードできるポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスとすることができる。
図27は、スケーラブルプロファイルデータ2054を受信するスケーラブルプロファイルデータ受信機を含まないトランスコードユニット2720を示している。
したがって、一実施の形態によれば、図27のトランスコーダ2730は、スケーラブルプロファイルデータ2054なしでスケーラブルメディア2052を解析するためのロジックを含むことができる。
たとえば、スケーラブルメディア2052がJPEG2000ファイルであると仮定すると、トランスコーダ2730は、スケーラブルメディア2052をトランスコードして、トランスコードされたメディア2640を生成するために、スケーラブルメディア2052のコンテンツ表を読み出して、スケーラブルメディア2052のどのセグメントが、保護プロファイルデータ2056に関連付けられた暗号マッピングで参照されるセグメントに対応するかを判断することができる。
トランスコーダ2730は、コンテンツ表の一定の側面を解析するための最低限のロジックしか有しない場合がある。
トランスコードユニット2720は、一実施の形態によれば、トランスコードされたメディア2640を受信する符号化器2750をさらに含む。
このトランスコードされたメディア2640は、スケーラブルメディアの場合もあるし、ビットマップ等の非スケーリングデータの場合もある。
符号化器2750は、一実施の形態によれば、非スケーリングビットマップを取り込んで、新たなスケーラブルメディア2662を作成できるJPEG2000符号化器またはMPEG符号化器等のスケーラブルメディア符号化器とすることができる。
別の実施の形態では、符号化器2750は、一定の属性のスケーラブルメディア2662を生成するのに十分なロジックしか有しない場合がある。
図27に示すように、符号化器2750は、一実施の形態によれば、新たな保護プロファイルデータ2666を生成する保護プロファイルデータジェネレータ2656を含む。
一実施の形態では、保護プロファイルデータジェネレータ2656は、トランスコードされたメディア2640を分析することによって、保護プロファイルデータ2666を生成する。
別の実施の形態では、保護プロファイルデータジェネレータ2656は、本明細書ですでに説明したように、保護属性判定基準2016等の入力を受信して、保護プロファイルデータ2666を生成することができる。
図28は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
トランスコードユニット2820は、JPEG2000またはMPEG等のあらゆるタイプのスケーラブルメディアをトランスコードできるポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスとすることができる。
一実施の形態によれば、通常、トランスコードユニットは、受信したスケーラブルメディアデータ2052等のメディアデータを解読しないので、保護プロファイルデータ2656を必要としない。
たとえば、図28は、トランスコードユニット2820が保護プロファイルデータ受信機2626を含まない点を除いて、図26に示すトランスコードユニット2620と同様のトランスコードユニット2820を示している。
したがって、一実施の形態によれば、図28に示すトランスコーダ2830は、保護プロファイルデータ2056を解析するためのロジックを必要としない。
トランスコードユニット2820は、一実施の形態によれば、トランスコードされたメディア2640を受信する符号化器2850をさらに含む。
このトランスコードされたメディア2640は、スケーラブルメディアの場合もあるし、ビットマップ等の非スケーリングデータの場合もある。
符号化器2850は、一実施の形態によれば、非スケーリングビットマップを取り込んで、新たなスケーラブルメディア2662を作成できるJPEG2000符号化器またはMPEG符号化器等のスケーラブルメディア符号化器とすることができる。
別の実施の形態では、符号化器2750は、一定の属性のスケーラブルメディア2662を生成するのに十分なロジックしか有しない場合がある。
符号化器2850は、一実施の形態によれば、新たなスケーラブルプロファイルデータ2664を生成するスケーラブルプロファイルデータジェネレータ2654を含む。
一実施の形態では、スケーラブルプロファイルデータジェネレータ2654は、トランスコードされたメディア2640を分析することによって、スケーラブルプロファイルデータ2664を生成する。
別の実施の形態では、スケーラブルプロファイルデータジェネレータ2654は、本明細書ですでに説明したように、スケーラブル属性判定基準2014等の入力を受信して、スケーラブルプロファイルデータ2664を生成することができる。
図29は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
トランスコードユニット2920は、JPEG2000またはMPEG等のあらゆるタイプのスケーラブルメディアをトランスコードできるポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスとすることができる。
トランスコードユニット2620と同様に、トランスコードユニットは、一実施の形態によれば、各受信機(2622、2624、2626)によってスケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056を受信する。
さらに、トランスコードユニット2920は、別の実施の形態によれば、各出力器(2942、2944、2946)によりスケーラブルメディア2662、スケーラブルプロファイルデータj64、および保護プロファイルデータj66を出力する。
図29に示すように、一実施の形態によれば、トランスコードユニット2920は、本明細書で説明した実施の形態に従って、スケーラブルプロファイルデータ2054に基づきスケーラブルメディア2052からセグメントを抽出し、新たなスケーラブルメディア2662を生成するトランスコーダ2930を含む。
さらに、別の実施の形態によれば、トランスコーダ2930は、スケーラブルプロファイルデータ2054を処理して、新たなスケーラブルプロファイルデータ2664を生成する。
一実施の形態では、トランスコーダ2930は、本明細書ですでに説明した実施の形態に従って、新たなスケーラブルプロファイルデータ2054に示されたセグメントに関連したオフセットを変更して、一定のセグメントがスケーラブルメディア2052から抽出されたことを反映するようにスケーラブルプロファイルデータ2664を生成することにより、新たなスケーラブルプロファイルデータ2664を生成する。
別の実施の形態では、トランスコーダ2930は、本明細書ですでに説明した実施の形態に従って、どのトランスコードオペレーションが実行されたか、たとえば、どのセグメントがスケーラブルメディア2052から抽出されたかにマークを付けることによって、新たなスケーラブルプロファイルデータ2664を生成する。
トランスコーダ2930は、保護プロファイルデータ2056に関連付けられた暗号マッピングを変更して保護プロファイルデータ2666を生成することにより、新たな保護プロファイルデータ2666を生成することができる。
一実施の形態では、本明細書ですでに説明した実施の形態に従って、スケーラブルプロファイルデータ2054に基づいてスケーラブルメディア2052から抽出されたセグメントに関連したオフセットを変更することによって、暗号マッピングを変更することができる。
別の実施の形態では、暗号マッピングは、本明細書ですでに説明した実施の形態に従って、どのトランスコードオペレーションが実行されたかにマークを付けることによって変更することができる。
図30は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
トランスコードユニット3020は、JPEG2000またはMPEG等のあらゆるタイプのスケーラブルメディアをトランスコードできるポータブル通信デバイス、固定計算デバイス、デジタル画像キャプチャーデバイス等の任意のデバイスとすることができる。
図30は、スケーラブルプロファイルデータ2054を受信するスケーラブルプロファイルデータ受信機を含まないトランスコードユニット3020を示している。
したがって、一実施の形態によれば、図30のトランスコーダ3030は、スケーラブルプロファイルデータ2054なしでスケーラブルメディア2052を解析するためのロジックを含むことができる。
たとえば、スケーラブルメディア2052がJPEG2000ファイルであると仮定すると、トランスコーダ3030は、本明細書ですでに説明したように、暗号マッピングを変更するために、スケーラブルメディア2052のコンテンツ表を読み出して、スケーラブルメディア2052のどのセグメントが、保護プロファイルデータ2056に関連付けられた暗号マッピングで参照されるセグメントに対応するかを判断することができる。
さらに別の実施の形態では、トランスコーダ3030は、スケーラブルメディア2052に関連付けられたコンテンツ表に十分気付けていない場合があり、コンテンツ表の一定の側面を解析するための最低限のロジックしか有しない場合がある。
図31は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
図31は、トランスコードユニット3120を示し、このトランスコードユニット3120は、保護プロファイルデータ受信機2626を含まない点を除いて、図29に示すトランスコードユニット2920と同様である。
したがって、一実施の形態によれば、図28に示すトランスコーダ2830は、本明細書ですでに説明した実施の形態に従って、保護プロファイルデータを解析するためのロジックも、保護プロファイルデータの暗号マッピングを変更するためのロジックも必要としない。
図32は、本発明の別の実施の形態によるトランスコードユニットを示すブロック図である。
図32は、トランスコードユニット3220を示し、このトランスコードユニット3220は、保護変更器3232を有するトランスコーダ3230を含む点を除いて、図29に示すトランスコードユニット2920と同様である。
一実施の形態によれば、保護変更器3232は、本明細書で説明した実施の形態に従って、保護を変更することもできるし、保護のレイヤを追加することもできる。
図32のみが保護変更器3232を示しているが、別の実施の形態によれば、トランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)も保護変更器を含むことができる。
さらに別の実施の形態では、スケーラブル属性判定基準2014および/または保護属性判定基準2016等の入力は、符号化器2650、2750、2850(図26〜図28)がスケーラブルプロファイルデータ2664および/または保護プロファイルデータ2666を生成するために受信することができる。
一実施の形態によれば、スケーラブルプロファイルデータ2054および/または保護プロファイルデータ2056を暗号化することができ、この場合、データ(2054、2056)を受信するどのトランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)であっても、データ(2054、2056)を解読する鍵を必要とすることになる。
JPEG2000ファイルまたはMPEGファイル等のスケーラブルメディアをトランスコードすることができないレガシートランスコーダが存在する。
一実施の形態によれば、トランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)はレガシーデバイスである。
受信機2622、2624、2626、トランスコーダ2630、2730、2830、2930、3030、3130、3230、符号化器2650、2750、2850、および出力器2942、2944、2946等のソフトウェアコンポーネント、ハードウェアコンポーネント、および/またはマイクロコードコンポーネントを、トランスコードユニット2620、2720、2820、2920、3020、3120、3220にインストールすることによって、トランスコードユニット2620、2720、2820、2920、3020、3120、3220は、本明細書ですでに説明した実施の形態に従ってスケーラブルメディア2052をトランスコード可能とすることができる。
一実施の形態によれば、スケーラブルメディア2052は暗号化される。
たとえば、スケーラブルプロファイルデータ2054によって、トランスコーダ2630、2830、2930、3130、3230(図26、図28、図29、図31、図32)は、本明細書ですでに説明した実施の形態に従って、スケーラブルメディア2052からセグメントを抽出することが可能になる。
これを行うために、トランスコーダ2630、2830、2930、3130、3230は、鍵を受信して、スケーラブルメディア2052を暗号解除(unencrypt)することができる。
別の実施の形態によれば、スケーラブルメディア2052は暗号化されない。
スケーラブルメディアデータ2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056は、一実施の形態によれば、ネットワークを使用して、符号化器または別のトランスコーダ等の別のデバイスからトランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)へ通信することができる。
別の実施の形態では、スケーラブルメディアデータ2052、スケーラブルプロファイルデータ2054、および/または保護プロファイルデータ2056は、トランスコードユニット2620、2720、2820、2920、3020、3120、3220がストレージデバイスから取り出すことができる。
さらに別の実施の形態では、このストレージデバイスは、各トランスコードユニット2620、2720、2820、2920、3020、3120、3230の一部とすることができる。
スケーラブルメディア2662、スケーラブルプロファイルデータ2664、および/または保護プロファイルデータ2666(図26〜図32)は、一実施の形態によれば、ネットワークを使用して、別のトランスコーダまたは復号器等の別のデバイスへ送信することができる。
別の実施の形態によれば、スケーラブルメディア2662、スケーラブルプロファイルデータ2664、および/または保護プロファイルデータ2666は、ストレージデバイスに記憶することができ、この場合、トランスコーダまたは復号器等の別のデバイスは、それらを取り出すことができる。
さらに別の実施の形態では、このストレージデバイスは、各トランスコードユニット2620、2720、2820、2920、3020、3120、3220の一部とすることができる。
さらに別の実施の形態では、受信機2622、2624、2626(図26〜図32)の2つまたは3つ以上を結合して、1つの受信機にすることができる。
たとえば、スケーラブルメディア受信機2622およびスケーラブルプロファイルデータ受信機2624を結合して、1つの受信機にすることができる。
同様に、スケーラブルメディア受信機2622および保護プロファイルデータ受信機2626を結合して、1つの受信機にすることもできる。
あるいは、3つすべての受信機(2622、2624、2626)を結合して、1つの受信機にすることもできる。
さらに別の実施の形態では、出力器2942、2944、2946(図J29、図30、図31、図32)の2つまたは3つ以上を結合して、1つの出力器にすることができる。
たとえば、スケーラブルメディア出力器2942およびスケーラブルプロファイルデータ出力器2944を結合して、1つの出力器にすることができる。
同様に、スケーラブルメディア出力器2942および保護プロファイルデータ出力器2946を結合して、1つの出力器にすることもできる。
あるいは、3つすべての出力器(2942、2944、2946)を結合して、1つの出力器にすることもできる。
さらに別の実施の形態では、ジェネレータ2654、2656(図29、図30、図31、図32)を結合して、1つのジェネレータにすることができる。
すでに解説したように、スケーラブルメディア2052、スケーラブルプロファイルデータ2054、および保護プロファイルデータ2056(図26〜図32)は、一実施の形態によれば、別々のファイルとすることもできるし、任意の組み合わせで互いに結合して1つのファイルとすることもできる。
別の実施の形態によれば、スケーラブルメディア2052のセキュリティを維持するために、トランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)は、スケーラブルメディア2052を暗号化するのに使用された鍵を受信しない。
この場合、復号器(2320、2420、2520)のみが、スケーラブルメディア2052を解読するために鍵を受信することになる。
符号化器2020、2120、2220(図20〜図22)およびトランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)は、一実施の形態によれば、単一のデバイスとすることができる。
符号化器2020、2120、2220(図20〜図22)および復号器2320、2420、2520(図23〜図25)は、別の実施の形態によれば、単一のデバイスとすることができる。
さらに別の実施の形態では、トランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)および復号器2320、2420、2520(図23〜図25)は、単一のデバイスとすることができる。
符号化器2020、2120、2220(図20〜図22)、トランスコードユニット2620、2720、2820、2920、3020、3120、3220(図26〜図32)、および復号器2320、2420、2520(図23〜図25)は、3つすべてを単一のデバイスとすることができる。
図26〜図32に示す符号化器2020、2120、2220、トランスコードユニット2620、2720、2820、2920、3020、3120、3220、および復号器2320、2420、2520に関連した機能は、当業者には明らかである多くの方法で移動させることができ、かつ、結合することができる。
要約すれば、スケーラブルメディアを記述するデータを生成するための方法が開示される。
所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合するスケーラブルメディアの部分を特定するデータが、スケーラブルメディアに関連付けられる。
スケーラブルメディアの部分は暗号化される。
スケーラブルメディアの部分を暗号化するのに使用される暗号化方式の保護属性を特定するデータが、スケーラブルメディアのそれらの部分に関連付けられる。
本発明の実施の形態は、上記のように説明される。
本発明を特定の実施の形態で説明したが、本発明は、このような実施の形態に限定されるものと解釈されるべきではなく、逆に、添付の特許請求の範囲に従って解釈されるべきであるということが理解されるべきである。
本発明の一実施の形態によるデータを含むビットストリームの一例である。 本発明の一実施の形態によるビットストリームにおけるデータセグメントの例である。 本発明の一実施の形態による簡略化したデータ配信システムの機能要素を示すブロック図である。 本発明の一実施の形態による符号化器の内外へフローする情報である。 本発明の第2の実施の形態による符号化器の内外へフローする情報である。 本発明の一実施の形態によるデータスケーラの内外へフローする情報である。 本発明の第2の実施の形態によるデータスケーラの内外へフローする情報である。 本発明の一実施の形態に従ってデータをスケーリング(たとえば、トランスコード)するためのプロセスのフローチャートである。 本発明の一実施の形態に従ってデータを符号化するためのプロセスのフローチャートである。 本発明の一実施の形態に従ってデータを復号するためのプロセスのフローチャートである。 本発明の一実施の形態によるスケーラブルメディアとデータを接続するためのシステムである。 本発明の一実施の形態によるスケーラブルメディアとデータを接続するためのシステムである。 本発明の第2の実施の形態によるデータスケーラの内外へフローする情報である。 本発明の一実施の形態によるスケーラブルメディアの部分にデータを関連付けるための方法で実行されるステップである。 本発明の一実施の形態による暗号化スケーラブルメディアをスケーリングする方法で実行されるステップのフローチャートである。 本発明の一実施の形態によるスケーラブルメディアを復号する方法で実行されるステップのフローチャートである。 本発明の一実施の形態による、プログレッシブ暗号化されたスケーラブルデータ列を符号化する方法である。 本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列のトランケートによるトランスコードである。 本発明の代替的な一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列のトランケートによるトランスコードである。 本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列のトランケートによるトランスコードである。 本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列のトランケートによるトランスコードである。 一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列を符号化するための方法で実行されるステップのフローチャートである。 一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列をトランスコードする方法で実行されるステップのフローチャートである。 本発明の一実施の形態によるプログレッシブ暗号化されたスケーラブルデータ列を復号する方法で実行されるステップのフローチャートである。 本発明の実施の形態による符号化器のブロック図である。 本発明の実施の形態による符号化器のブロック図である。 本発明の実施の形態による符号化器のブロック図である。 本発明の実施の形態による復号器を示すブロック図である。 本発明の実施の形態による復号器を示すブロック図である。 本発明の実施の形態による復号器を示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。 本発明の実施の形態によるトランスコーダを示すブロック図である。
符号の説明
12・・・データ
32・・・符号化器
34・・・トランスコーダ
36,38・・・復号器
54・・・スケーラ
301・・・メディアコンテンツ
411・・・メディアコンテンツ
413・・・メディアセグメント
414・・・ヘッダ
417・・・トランスコード
421・・・メディアコンテンツ
422・・・セグメント
423・・・メディアセグメント
424・・・ヘッダ
428・・・トランスコード
500・・・メディアコンテンツ
504・・・高帯域幅メディアセグメント
505,511,515・・・トランスコーダ可読ヘッダ
519・・・トランスコード
521・・・記憶媒体
2012・・・メディアデータ
2014・・・スケーラブル属性判定基準
2016・・・保護属性判定基準
2020・・・スケーラブルメディア符号化器
2022・・・メディアデータ受信機
2024・・・スケーラブルメディアジェネレータ
2026・・・スケーラブルメディア出力器
2032・・・スケーラブル属性判定基準受信機
2034・・・SPDジェネレータ
2036・・・SPD出力器
2042・・・保護属性判定基準受信機
2044・・・PPDジェネレータ
2046・・・PPD出力器
2052・・・スケーラブルメディア
2120・・・スケーラブルメディア符号化器
2320・・・復号器
2330・・・スケーラブルメディア受信機
2340・・・SPD受信機
2350・・・PPD受信機
2362・・・レンダラ
2380・・・クライアント
2420・・・復号器
2520・・・復号器
2562・・・レンダラ
2620・・・トランスコードユニット
2622・・・スケーラブルメディア受信機
2624・・・SPD受信機
2626・・・PPD受信機
2630・・・トランスコーダ
2654・・・SPDジェネレータ
2656・・・PPDジェネレータ
2670・・・クライアント
2720・・・トランスコードユニット
2730・・・トランスコーダ
2830・・・トランスコーダ
2920・・・トランスコードユニット
2930・・・トランスコーダ
2942・・・SM出力器
2944・・・SPD出力器
2946・・・PPD出力器
3020・・・トランスコードユニット
3030・・・トランスコーダ
3120・・・トランスコードユニット
3130・・・トランスコーダ
3220・・・トランスコードユニット
3230・・・トランスコーダ
3232・・・保護変更器

Claims (10)

  1. スケーラブルメディアを記述するデータを生成するための方法であって、
    前記スケーラブルメディアを復号することなく、所望のスケーラブル属性を保有するようにスケーリングされるメディアを生成するために結合する前記スケーラブルメディアの部分を特定するデータを、前記スケーラブルメディアに関連付けること(1101)と、
    前記スケーラブルメディアの前記部分を暗号化すること(1103)と、
    前記スケーラブルメディアの前記部分を暗号化するために使用される暗号化方式の保護属性を特定するデータを、前記スケーラブルメディアの前記部分に関連付けること(1105)と、
    を含む方法。
  2. 前記スケーラブルメディアの前記部分に関連付けられる前記データは、
    保護プロファイルデータ
    を含む
    請求項1に記載の方法。
  3. 前記保護プロファイルデータは、暗号化プリミティブ、暗号化モード、暗号チェックサムおよびスケーラブルメディアへのクリプト(crypto)のマッピングを含む保護属性を特定する
    請求項2に記載の方法。
  4. 前記保護プロファイルデータは、暗号化アルゴリズムの解読と、前記暗号化方式で使用される暗号化技法とで使用される
    請求項1に記載の方法。
  5. 前記スケーラブルメディアの前記部分それぞれは、
    異なる鍵
    を有し、
    異なる暗号化アルゴリズムを使用し、異なるCCSを使用する
    請求項1に記載の方法。
  6. 鍵の各クラスが、スケーラブルメディアの各クラスを解読するために必要とされる
    請求項1に記載の方法。
  7. 前記保護プロファイルデータのパラメータは、経時的に変化する
    請求項1に記載の方法。
  8. 前記保護プロファイルデータは、前記スケーラブルメディアに取り付けられる
    請求項1に記載の方法。
  9. 前記保護プロファイルデータは、前記スケーラブルメディアに、遠隔で関連付けられる
    請求項1に記載の方法。
  10. 前記スケーラブル属性は、
    ビットレート、解像度、色および品質
    を含む
    請求項1に記載の方法。
JP2006553262A 2004-02-13 2005-02-11 スケーラブルメディアを記述するデータを生成するための方法 Pending JP2007526507A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/779,222 US8832434B2 (en) 2004-02-13 2004-02-13 Methods for generating data for describing scalable media
PCT/US2005/004372 WO2005081533A1 (en) 2004-02-13 2005-02-11 Methods for generating data for describing scalable media

Publications (1)

Publication Number Publication Date
JP2007526507A true JP2007526507A (ja) 2007-09-13

Family

ID=34838337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006553262A Pending JP2007526507A (ja) 2004-02-13 2005-02-11 スケーラブルメディアを記述するデータを生成するための方法

Country Status (4)

Country Link
US (1) US8832434B2 (ja)
EP (1) EP1714493A1 (ja)
JP (1) JP2007526507A (ja)
WO (1) WO2005081533A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013507084A (ja) * 2009-10-05 2013-02-28 アイ.シー.ヴイ.ティー リミテッド 画像処理のための方法およびシステム
US8908984B2 (en) 2009-10-05 2014-12-09 I.C.V.T. Ltd. Apparatus and methods for recompression of digital images
JP2015521405A (ja) * 2012-04-26 2015-07-27 華為技術有限公司Huawei Technologies Co.,Ltd. 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8472792B2 (en) 2003-12-08 2013-06-25 Divx, Llc Multimedia distribution system
US7519274B2 (en) 2003-12-08 2009-04-14 Divx, Inc. File format for multiple track digital data
US8130237B2 (en) * 2004-06-24 2012-03-06 Apple Inc. Resolution independent user interface design
JP5200204B2 (ja) 2006-03-14 2013-06-05 ディブエックス リミテッド ライアビリティー カンパニー 高信頼性システムを含む連合型デジタル権限管理機構
US8237830B2 (en) 2007-04-11 2012-08-07 Red.Com, Inc. Video camera
KR101503227B1 (ko) 2007-04-11 2015-03-16 레드.컴 인코포레이티드 비디오 카메라
FR2920067B1 (fr) * 2007-08-13 2014-11-28 Actimagine Procede et dispositif de chiffrement partiel d'un contenu numerique
WO2009065137A1 (en) 2007-11-16 2009-05-22 Divx, Inc. Hierarchical and reduced index structures for multimedia files
EP2384475A4 (en) 2009-01-07 2014-01-22 Sonic Ip Inc AUTOMATED SINGLE AND GROUP PRODUCTION OF A MEDIA LEADER FOR ONLINE CONTENT
US9866609B2 (en) * 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
CA2782825C (en) 2009-12-04 2016-04-26 Divx, Llc Elementary bitstream cryptographic material transport systems and methods
JP5695080B2 (ja) * 2009-12-16 2015-04-01 レッド.コム,インコーポレイテッド 圧縮画像データの解像度ベースのフォーマット
US8914534B2 (en) 2011-01-05 2014-12-16 Sonic Ip, Inc. Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol
US9467708B2 (en) 2011-08-30 2016-10-11 Sonic Ip, Inc. Selection of resolutions for seamless resolution switching of multimedia content
US8909922B2 (en) 2011-09-01 2014-12-09 Sonic Ip, Inc. Systems and methods for playing back alternative streams of protected content protected using common cryptographic information
US8964977B2 (en) 2011-09-01 2015-02-24 Sonic Ip, Inc. Systems and methods for saving encoded media streamed using adaptive bitrate streaming
WO2013188457A2 (en) * 2012-06-12 2013-12-19 Coherent Logix, Incorporated A distributed architecture for encoding and delivering video content
US9191457B2 (en) 2012-12-31 2015-11-17 Sonic Ip, Inc. Systems, methods, and media for controlling delivery of content
US9313510B2 (en) 2012-12-31 2016-04-12 Sonic Ip, Inc. Use of objective quality measures of streamed content to reduce streaming bandwidth
JP2016508700A (ja) 2013-02-14 2016-03-22 レッド.コム,インコーポレイテッド ビデオカメラ
US9906785B2 (en) 2013-03-15 2018-02-27 Sonic Ip, Inc. Systems, methods, and media for transcoding video data according to encoding parameters indicated by received metadata
US9094737B2 (en) 2013-05-30 2015-07-28 Sonic Ip, Inc. Network video streaming with trick play based on separate trick play files
US9351157B2 (en) 2013-10-17 2016-05-24 Motorola Solutions, Inc. Methods, systems, and devices to reduce audio truncation during transcoding
US9866878B2 (en) 2014-04-05 2018-01-09 Sonic Ip, Inc. Systems and methods for encoding and playing back video at different frame rates using enhancement layers
US10943573B2 (en) * 2018-05-17 2021-03-09 Mediatek Inc. Audio output monitoring for failure detection of warning sound playback
JP7313330B2 (ja) 2017-07-05 2023-07-24 レッド.コム,エルエルシー 電子機器でのビデオ画像データ処理
US11762644B2 (en) 2021-05-10 2023-09-19 International Business Machines Corporation Agentless installation for building deployments

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105449A (ja) * 1996-07-29 1998-04-24 Internatl Business Mach Corp <Ibm> 保護ファイルパッケージング作成方法
WO2003030542A2 (en) * 2001-10-04 2003-04-10 Hewlett-Packard Company Encoding and encrypting devices for secure scalable data streaming

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1996008912A2 (en) * 1994-09-09 1996-03-21 Titan Information Systems Corporation Conditional access system
US5999622A (en) * 1995-11-22 1999-12-07 Microsoft Corporation Method and apparatus for protecting widely distributed digital information
EP1177691B1 (en) * 2000-03-13 2011-01-26 Sony Corporation Method and apparatus for generating compact transcoding hints metadata
US7242773B2 (en) * 2002-09-09 2007-07-10 Sony Corporation Multiple partial encryption using retuning
US7167560B2 (en) * 2002-08-08 2007-01-23 Matsushita Electric Industrial Co., Ltd. Partial encryption of stream-formatted media
GB2392807A (en) * 2002-09-06 2004-03-10 Sony Uk Ltd Processing digital data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105449A (ja) * 1996-07-29 1998-04-24 Internatl Business Mach Corp <Ibm> 保護ファイルパッケージング作成方法
WO2003030542A2 (en) * 2001-10-04 2003-04-10 Hewlett-Packard Company Encoding and encrypting devices for secure scalable data streaming

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013507084A (ja) * 2009-10-05 2013-02-28 アイ.シー.ヴイ.ティー リミテッド 画像処理のための方法およびシステム
US8908984B2 (en) 2009-10-05 2014-12-09 I.C.V.T. Ltd. Apparatus and methods for recompression of digital images
US9503738B2 (en) 2009-10-05 2016-11-22 Beamr Imaging Ltd Apparatus and methods for recompression of digital images
US9866837B2 (en) 2009-10-05 2018-01-09 Beamr Imaging Ltd Apparatus and methods for recompression of digital images
US10362309B2 (en) 2009-10-05 2019-07-23 Beamr Imaging Ltd Apparatus and methods for recompression of digital images
US10674154B2 (en) 2009-10-05 2020-06-02 Beamr Imaging Ltd Apparatus and methods for recompression of digital images
JP2015521405A (ja) * 2012-04-26 2015-07-27 華為技術有限公司Huawei Technologies Co.,Ltd. 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法
US9401899B2 (en) 2012-04-26 2016-07-26 Futurewei Technologies, Inc. System and method for signaling segment encryption and key derivation for adaptive streaming
US9787652B2 (en) 2012-04-26 2017-10-10 Futurewei Technologies, Inc. System and method for signaling segment encryption and key derivation for adaptive streaming

Also Published As

Publication number Publication date
WO2005081533A1 (en) 2005-09-01
US20050182972A1 (en) 2005-08-18
EP1714493A1 (en) 2006-10-25
US8832434B2 (en) 2014-09-09

Similar Documents

Publication Publication Date Title
KR100812909B1 (ko) 매체 데이터 디코딩 장치
US6989773B2 (en) Media data encoding device
JP2007526507A (ja) スケーラブルメディアを記述するデータを生成するための方法
KR100805604B1 (ko) 데이터 스케일링 방법 및 데이터 처리 방법
US7797454B2 (en) Media data transcoding devices
JP2007534230A (ja) プログレッシブ暗号化されたスケーラブルデータ列をスケーリングするための方法
KR101002100B1 (ko) 보호 매체 콘텐츠에 대한 액세스 특권의 다수 레벨 제어를위한 방법
KR101026609B1 (ko) 스케일 가능한 미디어를 위한 스케일 가능하고 에러 탄력적인 drm을 위한 방법, 장치 및 키 관리 방법
JP4869938B2 (ja) データの完全性を保証するための方法及び装置
US8838954B2 (en) Media processing devices for adaptive delivery of on-demand media, and methods thereof
Zhu et al. Encryption and authentication for scalable multimedia: Current state of the art and challenges
US7409094B2 (en) Methods and systems for packetizing encoded data
Babel et al. Preserving data integrity of encoded medical images: the LAR compression framework
JP2010021931A (ja) 映像送信装置及び映像受信装置
Zhu et al. JPEG 2000 syntax-compliant encryption preserving full scalability
Apostolopoulos et al. Security applications for jpeg 2000 imagery

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100427

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100927

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101005

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20101217

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110715

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20110722