JP2008523693A - セクションフィルタ機構によってdsmccミドルウェアを迂回する方法 - Google Patents

セクションフィルタ機構によってdsmccミドルウェアを迂回する方法 Download PDF

Info

Publication number
JP2008523693A
JP2008523693A JP2007545097A JP2007545097A JP2008523693A JP 2008523693 A JP2008523693 A JP 2008523693A JP 2007545097 A JP2007545097 A JP 2007545097A JP 2007545097 A JP2007545097 A JP 2007545097A JP 2008523693 A JP2008523693 A JP 2008523693A
Authority
JP
Japan
Prior art keywords
modules
identifier
restored
file
client
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
JP2007545097A
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
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 Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2008523693A publication Critical patent/JP2008523693A/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/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/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4433Implementing client middleware, e.g. Multimedia Home Platform [MHP]
    • 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
    • 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/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
    • 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/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
    • H04N21/4349Demultiplexing of additional data and video streams by extracting from data carousels, e.g. extraction of software modules from a DVB carousel
    • 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/643Communication protocols
    • H04N21/6433Digital Storage Media - Command and Control Protocol [DSM-CC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

MHPクライアント等のクライアント150でのマルチメディアサービスアプリケーション181、252による使用のため、ファイルシステム105の所望ファイル182がデータストリーム160から復元される。潜在的問題を回避し且つ計算複雑性を低減するため、クライアントのミドルウェア254のDSMCCモジュール175が迂回される。DSM−CCカルーセルにおいて、ファイルシステムはモジュール130、140、151にて提供され、モジュールはセクション群161、163、165、167にて提供される。マルチメディアサービスアプリケーションは、セクション群を復元し且つ復元されたセクション群からモジュールを復元するように付随の識別子を用いてデータストリームをフィルタリングすることにより、所望ファイルを直接的に復元する。マルチメディアサービスアプリケーションは、復元されたモジュール内での所望ファイルの位置を示すオブジェクト鍵を用いて、復元されたモジュールから所望ファイルを復元する。

Description

本発明は、概して、マルチメディア広帯域サービスのファイルシステムに含まれるファイルをサーバからクライアントにダウンロードする方法及びシステムに関し、より具体的には、セクションフィルタを介してクライアント側でデータストリームからファイルを直接的に取り出すための合理化技術に関する。
マルチメディア広帯域サービスは、多様なアプリケーションを提供可能なことにより、ますます多く用いられるようになってきている。これらアプリケーションは、例えば、電子番組案内、情報サービス、プレイアロング・ゲーム、電子商取引、安全商取引及び教育アプリケーションを含む。また、このようなサービスは、しばしば、マルチメディア広帯域サービスの配信のためのISO/IEC規格であるデジタルストレージメディア−コマンド&コントロール(DSM−CC)を用いている。DSM−CCは、セットトップボックス、パーソナルコンピュータ(PC)及びその他の情報機器が複数のサービス提供者からの複数のサービスにアクセスすることを可能にするオープン・プロトコルである。DSM−CCは、対話式のフロー制御ダウンロードと、非フロー制御ダウンロード若しくはブロードキャスト・ダウンロードとの双方をサポートしている。
さらに、マルチメディア・ホーム・プラットフォーム(MHP)仕様は、対話式デジタルアプリケーションとそれらのアプリケーションが実行される端末との間の包括的なインターフェースを規定している。これは、デジタルコンテンツの提供者が、セットトップボックス、一体化デジタルTVセット及びマルチメディアPCを含む色々な種類の端末にアクセスすることを可能にする。MHPの基本設計概念は、リソース、システムソフトウェア及びアプリケーションのレイヤ群を含んでいる。
具体的には、MHPデジタルTV仕様は、放送者(ブロードキャスタ)/サーバから受信者/クライアントにファイルシステムを転送するためにDSMCCを用いる。一手法においては、クライアント側のジャバ(Java(登録商標))クラスローダ及びMHPアプリケーションがファイルシステムに、コード、画像及びデータを得るように要求する。アプリケーション(最高位)レベル上でDSMCCは、ファイル及びそのコンテンツを有するディレクトリ構造へのアクセスを提供する。すなわち、アプリケーションは1つのファイルシステムを含むDSMCCカルーセル(carousel)にアクセスするとき、ディレクトリ及びファイルを有するファイルシステムを見る。ブロードキャスト(最下位)レベルにおいて、ディレクトリ構造は、各々のモジュールが1つ又は複数のファイル及びディレクトリファイルを含む、複数のモジュールのブロードキャストを含んでいる。これらのファイル及びディレクトリは、例えば、ファイルが様々な制御メッセージ及びモジュールで編成されている場合、MPEG2を用いてブロードキャストされることが可能であり、また、セクション群に分けてブロードキャストされることが可能である。
しかしながら、幾つかのMHP実装は、特定のファイルのブロードキャストの更新を検出する際に問題を有する。なぜなら、ミドルウェアが非常に複雑であり、DSMCCブロードキャストが非常に複雑になり得るからである。具体的には、利用可能なミドルウェアはDSMCCカルーセルにおけるファイル更新に伴う問題を有する。クライアントのアプリケーションがこのような検出問題に遭遇すると、新たなブロードキャストファイル及び新たなブロードキャストコンテンツを取り出すことはできない。さらに、複数のDSMCCカルーセルを用いる場合、単一の所望ファイルにアクセスすることは、特にそのファイルがファイルシステム内で数ディレクトリ深いとき、計算的にかなり高コストになる。MHPシステムは、例えばファイルシステムを開始するなど、先ずカルーセルにマウントし、必要なファイルがどのモジュールに位置しているかを見つけ出すために全てのディレクトリファイルにアクセスしなければならない。
本発明は、上述及び他の問題を解決可能な、マルチメディアブロードバンドのファイルシステムに含まれる1つ以上のファイルをクライアントにてダウンロードすることを高速化する方法及びシステムを提供すること、より具体的には、受信されたデータストリームから1つ以上の所望ファイルを、セクションフィルタによって直接的に取り出す技術を提供することを目的とする。
本発明の一態様に従って、ファイルシステムに含まれる少なくとも1つの所望ファイルを、クライアントにて受信されたデータストリームから復元する方法が提供される。ファイルシステムは複数のモジュールにて提供され、複数のモジュールは複数のセクションにて提供される。当該方法は、クライアントにて作動するマルチメディアサービス・アプリケーションを、少なくとも1つの所望ファイルをデータストリームから復元するための情報を用いて設定する段階を有し、該情報は:(a)複数のモジュールの1つ内で少なくとも1つの所望ファイルを特定する第1の識別子、及び(b)複数のモジュールの1つを特定する第2の識別子を含む。当該方法は更に、複数のモジュールの前記1つが携えられているセクション群を復元し、且つ復元されたセクション群から第2の識別子を使用して複数のモジュールの前記1つを復元するため、マルチメディアサービス・アプリケーションに応答してデータストリームをフィルタリングする段階を有する。当該方法は更に、第1の識別子に従って、複数のモジュールの復元された前記1つから少なくとも1つの所望ファイルを復元するため、マルチメディアサービス・アプリケーションを使用する段階を有する。
本発明の更なる一態様に従って、クライアントにて受信されたデータストリームから復元された、ファイルシステムに含まれるファイルを検証する方法が提供される。ファイルシステムは複数のモジュールにて提供され、複数のモジュールは複数のセクションにて提供される。当該方法は:(a)クライアントにて作動するマルチメディアサービス・アプリケーションを、少なくとも1つの所望ファイルをデータストリームから復元するための情報を用いて設定する段階、(b)少なくとも複数のモジュールの1つが携えられているセクション群を復元し、且つ復元されたセクション群から複数のモジュールの前記1つを復元するため、マルチメディアサービス・アプリケーションに応答してデータストリームをフィルタリングする段階、(c)複数のモジュールの復元された前記1つが妥当であることを確かめるため、復元されたセクション群が共通のバージョン識別子を有することを検証する段階、及び(d)上記の検証に応答して、複数のモジュールの復元された前記1つから少なくとも1つの所望ファイルを復元するため、マルチメディアサービス・アプリケーションを使用する段階を有する。
復元されるセクション群は、予期されるバージョン識別子を有するセクション群に限定されてもよい。
対応するクライアント装置及びプログラム記憶装置も提供される。
図面全体において、対応する部分には同一の参照符号を付すこととする。
本発明は、例えばMHPクライアント等のマルチメディアサービス・クライアントのミドルウェアを用いて、ファイルシステムのファイルを復元(リカバリ)しようと試みる時に生じる問題を解決するものである。なお、本発明はまた、MHPに関連するがDVBではなくATSCに基づいているOCAP、米国ケーブルネットワーク用インタラクティブTV規格にも適用可能である。上記の目的は、例えばDSMCCアプリケーション・プログラミング・インターフェース(API)等のミドルウェアを迂回すること、及び受信されたデータストリームから例えばDSMCCモジュール等のファイルシステムモジュールをセクションフィルタを用いて直接的に取り出すことによって達成される。ファイルシステムのコンテンツは取り出されたモジュールから抽出されることが可能である。セクションフィルタによりDSMCCモジュールを取り出すため、アプリケーションはDSMCCパケット識別子(PID)及びモジュール識別子を使用する。また、ファイルシステムの特定のファイルを取り出すため、ファイル鍵又はオブジェクト鍵が使用される。この構成データは、例えば、データをアプリケーション内にハードコーディングすること、又は構成ファイルによってデータをハードコーディングすることによって、マルチメディアサービス・アプリケーションに提供され得る。
この手法の利点には、アプリケーションがMHPミドルウェア更新問題を迂回することが可能になること、及びアプリケーションが如何なる位置においても全カルーセル内で一度のDSMCCサイクルでファイルを取り出すことが可能になり、それにより処理が高速化されることが含まれる。すなわち、所望のファイルは、カルーセルのたった一度のサイクルにて復元されることができる。
図1は、本発明に従ったファイルシステムの転送の概略図を例示している。ブロック105及び180の双方は、(第1行)“\application\code.class”、(第2行)“\images\background.gif”、及び(第3行)“\data\content.txt”を示す。ブロック110は“DSMCCカルーセル生成器”を示す。ブロック115は“MPEGインジェクタ”を示す。ブロック121は“DSI”を示す。ブロック122は“DII1”を示す。ブロック123は“DII2”を示す。ブロック130は“モジュール1”である。ブロック131は“ファイル:ゲートウェイ”を示す。ブロック132は“ファイル:アプリケーション”を示す。ブロック133は“ファイル:code.class”を示す。ブロック140は“モジュール2”である。ブロック141は“ファイル:background.gif”を示す。ブロック151は“モジュール3”である。ブロック152は“ファイル:data”を示す。ブロック153は“ファイル:content.txt”を示す。ブロック161は“DSI”を示す。ブロック162は“ビデオ”を示す。ブロック163は“DII1”を示す。ブロック164は“オーディオ”を示す。ブロック165は“モジュール1a”を示す。ブロック166は“ビデオ”を示す。ブロック167は“モジュール1b”を示す。ブロック170は“セクションフィルタ”を示す。ブロック175は“クライアントのDSMCCモジュール”を示す。ブロック181は“アプリケーション”を示す。ブロック182は“ファイル”を示す。
例えばMHP等のマルチメディア・クライアント・プラットフォームは、サーバから例えばセットトップボックス等の多数のクライアントに、Java(登録商標)MHPアプリケーション及びそれらのデータをブロードキャストするためにDSMCCを使用する。図1においては、サーバ及びクライアントは、それぞれ、100及び150にておおまかに示されている。DSMCCコンテンツは典型的に、DVB MPEGトランスポートストリーム160内に埋め込まれる。取り得る一手法において、ブロードキャスタは、クライアントに配給したい関連データ及びリソースとともに、1つ又は複数の、MHPではエクスレット(xlet)と呼ばれる(インターネットドメインでのアプレットに似ている)小規模のJava(登録商標)アプリケーションを有する。アプリケーションは、1つ又は複数のファイルシステム内で束ねられた、クラス、画像及びその他のデータを有するファイルの束を含んでいる。このようなファイルシステムは、従来のパーソナルコンピュータ(PC)で使用されるような、多数のディレクトリファイル及びその他のファイルを含んでいる。ブロック105は、サーバ100からクライアント150にブロードキャストされて転送されたファイルシステム180をもたらす元のファイルシステムの一例を表している。
ファイルシステム105はDVB MPEGトランスポートストリーム160上でクライアント150に、カルーセルを用いて連続的且つ反復的に転送されることが可能である。この作業を行うためにDSMCCカルーセル生成器110が使用されてもよい。ブロードキャストされるべきファイルシステム105のファイルは、ディレクトリファイルを含め、低位のDSMCCカルーセル構造120内に示されるモジュールの例130、140及び151に編成される。モジュール当たり1つ以上のファイルが使用されてもよい。ディレクトリもファイルであると見なされる。各DSMCCオブジェクトカルーセルはカルーセルへの入口点である1つのDSI121を有している。具体的には、DSMCC規格の下のDSI(DownloadServiceInitiate)メッセージは、例えば第1のDIIメッセージ122及び第2のDIIメッセージ123等の幾つかのDIIメッセージを有するカルーセルの最高位の制御メッセージである。DSIメッセージは、多数のDIIメッセージ及びそれらに関するモジュールのグループを単一のスーパーグループへとグループ化する。DSMCC規格の下のDII(DownloadInfoIndication)メッセージは、多数のモジュール及びそれらを伝送するために使用されるパラメータの記述を格納している。同一のDIIメッセージにリストアップされる如何なるモジュールも、同一グループのメンバーであると言われる。これにより、例えば何れのモジュールも単一のデータブロックの相異なる部分を携えていることにより、グループを成すモジュールをブロードキャスタが特定する手法が提供される。
DSI121は第1のDII122を指し示すとともに、ファイルシステムのゲートウェイ若しくはルートディレクトリの位置を指し示す。各DII122及び123は1つ又は複数のモジュールを参照する。DIIにより格納される各ディレクトリは、そのディレクトリにより格納されるファイルを携えるDIIを参照する。
MPEGインジェクタ115は、モジュール130、140及び151をトランスポートストリーム160内にセクションに分けて注入する。トランスポートストリームパケットは、例えば、DVB及びATSCの基本コンテナである。トランスポートストリームパケットの各々は、パケット識別子(PID)を格納するヘッダーを有する。PIDは同一の基本ストリームに属するトランスポートストリームパケットを特定する番号である。例えば、特定のチャンネルのビデオコンテンツは、このビデオコンテンツとともに使用されるように割り当てられた同一のPIDを有するトランスポートストリームパケットに入れられる。オーディオコンテンツを伴うトランスポートストリームパケットは別のPIDを有する。このパケット構造の最高位にて、MPEGは、周期的にデータをブロードキャストするためのコンテナと考えられ得るセクションを規定している。各セクションは最大で4Kバイトのデータを格納することができる。相異なる種類のデータ(例えば、DII、DSI又はモジュールデータ等)を区別するため、セクションはテーブル識別子(TID)と呼ばれる識別子を有する。同一のTIDを有する複数のセクションを得ることができるように、セクションはセクション番号を有する。データ種類の各々は、そのセクションデータの何れの部分が一意的に、同一TIDを有する全てのセクションの中でのセクション番号を定めるかを規定する。取り得る一手法においては、DSI121、DII122及び123、並びにモジュール130、140及び151は分割され、4Kバイトのセクションに分けてクライアント側150にブロードキャストされる。例えば、トランスポートストリームパケット161、163、165及び167はファイルシステムデータを携える一方で、トランスポートストリームパケット162、164及び166はビデオ又はオーディオデータを携える。
具体的な例として、クライアントのセットトップボックスがファイル‘\application\code.class’のコンテンツを要求することを想定する。従来、これは以下の段階群を実行する、例えばDSMCCモジュール175を含む、クライアントのミドルウェアによって実現されてきた:
1.DSIを有するモジュールを得るためにセクションフィルタを開く、
2.ゲートウェイ(これはルートディレクトリである)の位置及び(第1の)DIIを得るためにDSIを解析する、
3.DIIを取り出す、
4.ゲートウェイを有するモジュールの位置が知られるようにDIIを解析する、
5.この特定のモジュールの全てのセクションを取り出す、
6.モジュールを再構築する、そして
7.モジュールからゲートウェイを得る。
ゲートウェイを用いて、ミドルウェアはディレクトリ‘application’が何れのDII、モジュール(及びこのモジュール内の何れの識別子)に位置しているかを決定することができる。上記の段階群はファイル‘application’が取り出されて解析されるまで繰り返される。この時点で、最終的に、ファイル‘code.class’が位置するモジュールが判明する。再び、上記の過程を用いて、ファイル‘code.class’が取り出される。カルーセル構成に応じて、DSI、DII及びモジュールは、先に取り出されたモジュールを再使用することもあるDSMCCモジュール175にキャッシュされることができる。MHP1.0.x仕様書(ETSI TS101812/TAM232R27、及びその、より最近のバージョン)の付録B.4もまた、ブロードキャストDSMCCカルーセルの低位構造の記述を、ダウンロード時間の短縮のためのキャッシング方法とともに含んでいる。
しかしながら、冒頭で述べられたように、ミドルウェアがトランスポートストリームからファイルシステムを復元する上述の手法は、計算的に高コストであるとともに誤りやすいものである。本発明は、クライアントのミドルウェアを用いた場合に被り得る潜在的な誤りを回避しながら、ファイル取りだし処理を高速化するものである。本発明に係る手法においては、クライアント側のマルチメディアサービスアプリケーション181に、特定のファイルのモジュール構成及び(モジュール内の)ファイル位置が提供される。この情報を用いて、アプリケーション181はクライアントのDSMCCミドルウェアを迂回することができ、モジュールを再構築し且つ所望ファイル182を取り出すために、モジュールをセクション毎に直接的に取り出すことができる。
この方法は様々な利点を有する。例えば、ファイル更新の場合、新ファイルが遙かに早期に利用可能にされる。例えば、データファイルが更新されるとき、ブロードキャスタはストリーム事象を送信する。クライアントはストリーム事象を直ちに検出し、新モジュールのフィルタリングを開始する。新ファイルコンテンツはカルーセルサイクル後に利用可能にされるべきである。代わりの方法は、新ファイルコンテンツを得るための時間が相異なるミドルウェア実装で変化する場合に、MHPミドルウェアのファイル検出機構を使用することである。さらに、開示される方法は新ファイルが利用可能にされることを確実に保証することができる。DSMCC機構は、特に、良好なキャッシング方式を用いる場合、かなり複雑である。ミドルウェアのバグ及び問題は、ファイル更新がミドルウェアによって検出されないため、アプリケーションを不適当に動作させることになり得る。開示される方法はこのようなミドルウェアのバグを回避するものである。
他の例では、ファイルディレクトリは独自仕様フォーマットのMPEGセクションに置かれてもよい。しかしながら、DSM−CCプロトコルに従ってデータをパッケージ化することが有利である。何故なら、このプロトコルは遙かに標準的であると考えられるフォーマットでデータを運ぶからである。すなわち、DSMCCに基づく他の規格も、ファイルを読み取る開示手法を実現する能力を有することなく、同一のファイルを読み取り且つ処理することができるかもしれない。
また、本発明は、DSMCCオブジェクトカルーセルが提供される従来のブロードキャストを用いて行われ得る。本発明は、より効率的にクライアント側で特定のファイルをブロードキャストから復元することに焦点を当てている。具体的には、例えばMHPアプリケーション等のクライアントアプリケーション181は、ミドルウェアのDSMCC機構を迂回し、セクションフィルタ170によってブロードキャストからファイル182を直接的に取り出す。セクションフィルタ170は、特定のヘッダーを有するセクションをMPEGブロードキャストから復元するため、例えばセットトップボックス等の多くのクライアント装置に存在している機構である。一度のフィルタ処理でファイルを取り出すため、アプリケーションは、モジュール130、140及び151がブロードキャストされるセクションに付随する、例えばパケット識別子(PID)等の識別子を用いて設定される。アプリケーション181はまた、ブロードキャストから(モジュールを含む)全セクションがフィルタリングされ且つ復元されるように、セクションフィルタを設定するために、例えばモジュール1、2又は3といったmoduleId等、のモジュールに付随する識別子を用いて設定される。取り得る一手法においては、特定のモジュールが含まれるセクションのみが復元される。他の一手法においては、フィルタ170は全てのモジュールを復元し、その後、<moduleId>を用いて興味ある特定モジュールを決定する。アプリケーション181はまた、ファイルがモジュール内の何処、例えば第1、第2、第3など、に位置しているかを決定するため、‘オブジェクト鍵’識別子を用いて設定される。具体的には、ファイルはFileMessage内に置かれ、ディレクトリはDirectoryMessage内に置かれる。モジュールは1つ又は複数のFileMessage及び/又はDirectoryMessageを含んでいる。FileMessage又はDirectoryMessageは、メッセージを一意的に特定するファイル鍵とも呼ばれるオブジェクト鍵を含んでいる。故に、オブジェクト鍵はモジュール内のファイルを一意的に特定する。なお、単一のモジュールから1つ以上の所望ファイルが、対応するオブジェクト鍵又はその他の適切な識別子を用いて取得され得る。
取り得る他の一手法においては、各々のモジュールに1つのファイルのみが置かれることができ、その場合、モジュール内の特定のファイルを特定するためにオブジェクト鍵は必要とされない。
従って、セクション識別子(PID)、モジュール識別子(moduleId)及びオブジェクト鍵識別子(objectKey)の組み合わせが所望ファイルを一意的に定める。なおも図1の例を参照するに、クライアントは3つのファイル、すなわち、(1)\application\code.class、(2)\images\background.gif、及び(3)\data\content.txtを順々に復元することが可能である。また、所望ファイル毎に、クライアントアプリケーション181はデータストリームをフィルタリングし、それにより、特定のPIDを有するセクションを復元し、特定のmoduleIdを有するモジュールを復元し、そして特定のobjectKeyを有する所望ファイルを復元する。モジュールを取り出すためには、<PID、moduleId>情報が必要である。モジュール内でobjectKeyがファイルを一意的に特定する。なお、DSMCCにおいては、DIIメッセージは互いに参照し合わない。ディレクトリはファイルリストを有しており、このファイルは<PID、トランザクションID(DIIを参照する)、moduleId、objectKey>への参照を有している。
さらに、アプリケーション181は、特定のモジュールの全てのセクションを有しているとき、全てのセクションが同一のバージョン番号又はその他の識別子を有することを検証するために検査を行うことができる。バージョンの不整合が存在する場合、及び検査が行われない場合、様々なモジュールバージョンからのセクションが集められ、これらのセクションを結合させることにより間違いを含むモジュールがもたらされることになる。故に、バージョン番号が整合しない場合には、アプリケーションは二度目にモジュールを取り出すことを試みるためにフィルタリングし続けたり、フィルタを再開したりする。復元されたセクションのバージョン番号が共通のバージョン識別子を有すると確認されたとき、又はマルチメディアサービスアプリケーションが、復元するセクションを予期するバージョン識別子を有するセクションに限定しているとき、再構築されるモジュールが妥当なものであることが保証され、アプリケーションは検証の成功に応答して1つ以上の所望ファイルを復元することができる。これにより、受信されたデータストリーム内で様々なバージョン番号を有するセクションが混合されることが回避される。セクションのバージョン番号は妥当なモジュールを再構築するために一致しなければならない。
図2は、本発明に従った、図1の転送を実現するサーバ及びクライアントのブロック図を例示している。ブロック102は“MHP生成器”を示す。ブロック104は“ブロードキャスト制御”を示す。ブロック106は“オーディオ・ビデオ符号器”を示す。ブロック108は“マルチプレクサ”を示す。ブロック252は“MHPアプリケーション”を示す。ブロック254は“MHPミドルウェア”を示す。ブロック256は“ハードウェア・セクションフィルタ”を示す。ブロック258は“ビデオ復号器”を示す。ブロック260は“遠隔制御”を示す。ブロック262は“ビデオ出力”を示す。ブロック264は“TV”を示す。
サーバ100にて、MHP生成器102はオブジェクトカルーセル及び関連するMHPテーブルを有するDVBストリームを生成する。オーディオ・ビデオ符号器106は符号化された音声及び映像を有するDVBストリームを生成する。ブロードキャスト制御104はMHP生成器102及びオーディオ・ビデオ符号器106を制御し、DVBブロードキャストを完成させるプログラム特定情報(PSI)/サービス情報(SI)を生成する。マルチプレクサ108は、音声、映像、MHPコンテンツ及びその他のデータを含む様々なDVBストリームを多重化し、クライアント150にブロードキャストされるべき妥当且つ完全なDVBストリームをもたらす。
クライアント/受信者150にて、図1のアプリケーション181に類似のアプリケーションを含むMHPアプリケーション252は、ブロードキャストMHPデータを受信し、受信されたマルチメディアデータに基づいて様々な機能を果たす。MHPミドルウェア254はクライアント150上に存在するソフトウェアスタックであり、MHPブロードキャストを取り扱ってMHPアプリケーション252を実行することができる。ハードウェア・セクションフィルタ256は、定められたフィルタ設定に従ってDVBセクションをフィルタリングすることが可能なハードウェア部品とし得る。アプリケーション252は、例えば、特定のPID及びmoduleIdを有するセクションのみがアプリケーション252に通されるようにフィルタマスクを構築するなどにより、フィルタ256の設定を定めることができる。このフィルタリングは、最初にアプリケーション252がフィルタ256を設定・開始し、完全なセクション群が見出されたときに、それらセクション群がコールバック機構によってアプリケーション252に戻されるように、アプリケーション252とは非同期とすることができる。モジュールを完成させる全てのセクションが到達すると、アプリケーション252はフィルタ256を停止させ、モジュールを再構築する。受信データストリームの広い帯域幅のため、フィルタリング自体はハードウェアにて実行され得る。例えば、DVBストリームは毎秒40Mビットの速度で提供されてもよい。これは、毎秒26600個のトランスポートストリームパッケージ又はパケットに相当し、これらの各々がフィルタ216によって処理される。
ビデオ復号器258は選択されたサービスの音声・映像データを復号化する。ビデオ出力装置262はビデオ復号器258からの映像を、MHPミドルウェア254からのグラフィックスと混合し、TV264又はその他の表示装置へのビデオ出力信号を提供する。遠隔制御装置260は視聴者がクライアント150及びMHPアプリケーション252を制御したり、それらと対話したりすることを可能にする。
なお、クライアント150はここに記載されるような機能を実現するためにメモリ及び処理リソースを含んでいてもよい。具体的には、少なくとも1つのプログラム記憶装置が、ここに記載される機能を実現するために少なくとも1つのプロセッサによって実行される命令を明確に具体化してもよい。例えばソフトウェア、ファームウェア及び/又はマイクロコード等の命令を格納するメモリがプログラム記憶装置と考えられてもよい。
以上により理解されるように、本発明は、クライアント側のマルチメディアサービスアプリケーションによって使用されるファイルシステムの1つ以上の所望ファイルを復元する技術を提供するものである。この技術はブロードキャストにおける変更を必要とせず、DSMCCブロードキャストを含む様々なマルチメディアサービス・ブロードキャストに適用可能である。アプリケーションは特定のファイルを復元するために<PID、moduleId、objectKey>識別子を用いて設定される。アプリケーションが、MHPミドルウェアのDSMCCモジュールに代わって、モジュールのフィルタリング及び解析を実行し、より高速、より直接的、且つより信頼できるファイル復元をもたらす。
本発明の好適実施形態と考えられる実施形態が示され、それについて説明されてきたが、当然に理解されるように、本発明の意図を逸脱することなく、形式上又は詳細な様々な変更及び変形が容易に為されるであろう。本発明は、故に、例示・説明された形態そのものに限定されるものではなく、添付の請求項の範囲内の全ての変更に及ぶものと解されるべきである。
本発明に従ったファイルシステムの転送及びファイルの復元を例示する概略図である。 本発明に従った、図1に示されたファイルの復元を実現するサーバ及びクライアントを例示するブロック図である。

Claims (22)

  1. ファイルシステムに含まれる少なくとも1つの所望ファイルを、クライアントにて受信されたデータストリームから復元する方法であって、前記ファイルシステムは複数のモジュールにて提供され、前記複数のモジュールは複数のセクションにて提供され、当該方法は:
    前記クライアントにて作動するマルチメディアサービス・アプリケーションを、前記少なくとも1つの所望ファイルを前記データストリームから復元するための情報を用いて設定する設定段階であり、該情報は:(a)前記複数のモジュールの1つ内で前記少なくとも1つの所望ファイルを特定する第1の識別子、及び(b)前記複数のモジュールの前記1つを特定する第2の識別子を含む、設定段階;
    少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元し、且つ復元された前記セクション群から前記第2の識別子を使用して前記複数のモジュールの前記1つを復元するため、前記マルチメディアサービス・アプリケーションに応答して前記データストリームをフィルタリングする段階;及び
    前記第1の識別子に従って、前記複数のモジュールの復元された前記1つから前記少なくとも1つの所望ファイルを復元するため、前記マルチメディアサービス・アプリケーションを使用する段階;
    を有する方法。
  2. 前記情報は更に:(c)前記複数のモジュールの前記1つが携えられているセクション群を特定する第3の識別子を含み;且つ
    前記フィルタリングする段階は、少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元するため、前記第3の識別子を使用する;
    請求項1に記載の方法。
  3. 前記複数のモジュールはサーバから前記クライアントにカルーセルにて伝送され;且つ
    前記少なくとも1つの所望ファイルは前記カルーセルの一度のサイクルで復元される;
    請求項1に記載の方法。
  4. 前記データストリームは、複数のクライアントにブロードキャストされる広帯域データストリームを有する;
    請求項1に記載の方法。
  5. 前記マルチメディアサービス・アプリケーションは、前記クライアントのDSM−CCミドルウェアが迂回されながら、前記少なくとも1つの所望ファイルを復元する;
    請求項1に記載の方法。
  6. 前記マルチメディアサービス・アプリケーションはマルチメディア・ホーム・プラットフォーム・アプリケーションを含む;
    請求項1に記載の方法。
  7. 前記ファイルシステムはDSM−CC規格に従って提供される;
    請求項1に記載の方法。
  8. 前記マルチメディアサービス・アプリケーションは、復元された前記セクション群が共通のバージョン識別子を有することを検証する;
    請求項1に記載の方法。
  9. 復元される前記セクション群は、予期されるバージョン識別子を有するセクション群に限定される;
    請求項1に記載の方法。
  10. ファイルシステムに含まれる少なくとも1つの所望ファイルを受信されたデータストリームから復元するマルチメディアサービス・アプリケーションを提供するため、少なくとも1つのプロセッサによって実行される命令を明確に具体化する少なくとも1つのプログラム記憶装置であり、
    前記ファイルシステムは複数のモジュールにて提供され、前記複数のモジュールは複数のセクションにて提供され、且つ
    前記マルチメディアサービス・アプリケーションは、前記少なくとも1つの所望ファイルを前記データストリームから復元するための情報を用いて設定され、該情報は:(a)前記複数のモジュールの1つ内で前記少なくとも1つの所望ファイルを特定する第1の識別子、及び(b)前記複数のモジュールの前記1つを特定する第2の識別子を含む、
    プログラム記憶装置;及び
    少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元するため、前記データストリームをフィルタリングし、且つ復元された前記セクション群から前記第2の識別子を使用して前記複数のモジュールの前記1つを復元する、前記マルチメディアサービス・アプリケーションに応じたフィルタであり、
    前記マルチメディアサービス・アプリケーションは、前記第1の識別子に従って、前記複数のモジュールの復元された前記1つから前記少なくとも1つの所望ファイルを復元するように設定されている、
    フィルタ;
    を有するクライアント装置。
  11. 前記情報は更に:(c)前記複数のモジュールの前記1つが携えられているセクション群を特定する第3の識別子を含み;且つ
    前記フィルタは、少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元するため、前記第3の識別子を使用する;
    請求項10に記載のクライアント装置。
  12. 前記複数のモジュールはサーバから前記クライアントにカルーセルにて伝送され;且つ
    前記所望ファイルは前記カルーセルの一度のサイクルで復元される;
    請求項10に記載のクライアント装置。
  13. 前記データストリームは、複数のクライアントにブロードキャストされる広帯域データストリームを有する;
    請求項10に記載のクライアント装置。
  14. 前記マルチメディアサービス・アプリケーションは、前記クライアントのDSM−CCミドルウェアが迂回されながら、前記少なくとも1つの所望ファイルを復元する;
    請求項10に記載のクライアント装置。
  15. 前記マルチメディアサービス・アプリケーションはマルチメディア・ホーム・プラットフォーム・アプリケーションを含む;
    請求項10に記載のクライアント装置。
  16. 前記ファイルシステムはDSM−CC規格に従って提供される;
    請求項10に記載のクライアント装置。
  17. 前記マルチメディアサービス・アプリケーションは、復元された前記セクション群が共通のバージョン識別子を有することを検証する;
    請求項10に記載のクライアント装置。
  18. 復元される前記セクション群は、予期されるバージョン識別子を有するセクション群に限定される;
    請求項10に記載のクライアント装置。
  19. ファイルシステムに含まれる少なくとも1つの所望ファイルをクライアントにて受信されたデータストリームから復元する方法を実行するため、少なくとも1つのプロセッサによって実行される命令を明確に具体化する少なくとも1つのプログラム記憶装置であって、前記ファイルシステムは複数のモジュールにて提供され、前記複数のモジュールは複数のセクションにて提供され、前記方法は:
    前記クライアントにて作動するマルチメディアサービス・アプリケーションを、前記少なくとも1つの所望ファイルを前記データストリームから復元するための情報を用いて設定する設定段階であり、該情報は:(a)前記複数のモジュールの1つ内で前記少なくとも1つの所望ファイルを特定する第1の識別子、及び(b)前記複数のモジュールの前記1つを特定する第2の識別子を含む、設定段階;
    少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元し、且つ復元された前記セクション群から前記第2の識別子に従って前記複数のモジュールの前記1つを復元するため、前記段階前記マルチメディアサービス・アプリケーションに応答してフィルタリングする段階;及び
    前記第1の識別子に従って、前記複数のモジュールの復元された前記1つから前記少なくとも1つの所望ファイルを復元するため、前記マルチメディアサービス・アプリケーションを使用する段階;
    を有する、少なくとも1つのプログラム記憶装置。
  20. 前記情報は更に:(c)前記複数のモジュールの前記1つが携えられているセクション群を特定する第3の識別子を含み;且つ
    前記フィルタリングする段階は、少なくとも前記複数のモジュールの前記1つが携えられているセクション群を復元するため、前記第3の識別子を使用する;
    請求項19に記載の少なくとも1つのプログラム記憶装置。
  21. クライアントにて受信されたデータストリームから復元された、ファイルシステムに含まれるファイルを検証する方法であって、前記ファイルシステムは複数のモジュールにて提供され、前記複数のモジュールは複数のセクションにて提供され、当該方法は:
    前記クライアントにて作動するマルチメディアサービス・アプリケーションを、少なくとも1つの所望ファイルを前記データストリームから復元するための情報を用いて設定する設定段階;
    少なくとも前記複数のモジュールの1つが携えられているセクション群を復元し、且つ復元された前記セクション群から前記複数のモジュールの前記1つを復元するため、前記マルチメディアサービス・アプリケーションに応答して前記データストリームをフィルタリングする段階;
    前記複数のモジュールの復元された前記1つが妥当であることを確かめるため、復元された前記セクション群が共通のバージョン識別子を有することを検証する段階;及び
    前記検証する段階に応答して、前記複数のモジュールの復元された前記1つから前記少なくとも1つの所望ファイルを復元するため、前記マルチメディアサービス・アプリケーションを使用する段階;
    を有する方法。
  22. 復元される前記セクション群は、予期されるバージョン識別子を有するセクション群に限定される;
    請求項21に記載の方法。
JP2007545097A 2004-12-13 2005-12-13 セクションフィルタ機構によってdsmccミドルウェアを迂回する方法 Pending JP2008523693A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US63567904P 2004-12-13 2004-12-13
PCT/IB2005/054223 WO2006064473A1 (en) 2004-12-13 2005-12-13 Bypass dsmcc middleware via section filter mechanism

Publications (1)

Publication Number Publication Date
JP2008523693A true JP2008523693A (ja) 2008-07-03

Family

ID=36095854

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007545097A Pending JP2008523693A (ja) 2004-12-13 2005-12-13 セクションフィルタ機構によってdsmccミドルウェアを迂回する方法

Country Status (6)

Country Link
US (1) US20090292761A1 (ja)
EP (1) EP1829359A1 (ja)
JP (1) JP2008523693A (ja)
KR (1) KR20070095946A (ja)
CN (1) CN101088279A (ja)
WO (1) WO2006064473A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7228425B1 (en) * 2000-02-07 2007-06-05 Koninklijke Philips Electronics N. V. Protecting content from illicit reproduction by proof of existence of a complete data set via self-referencing sections
DE102007002513B3 (de) * 2007-01-17 2008-03-13 Institut für Rundfunktechnik GmbH Verfahren zum Steuern von Set-Top-Boxen und Set-Top-Box, welche nach diesem Verfahren steuerbar ist
US8819056B2 (en) * 2010-11-19 2014-08-26 International Business Machines Corporation Facilitation of search, list, and retrieval operations on persistent data set using distributed shared memory
EP2809031B1 (en) * 2013-05-31 2023-09-27 Dassault Systèmes Communication middleware for managing multicast channels
EP3672258A1 (en) * 2018-12-23 2020-06-24 Advanced Digital Broadcast S.A. System and method for an improved, selective download of broadcast data

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL131937A (en) * 1997-03-21 2004-06-01 Canal Plus Sa Extraction of information divisions from a transmitted information sequence
CN1118772C (zh) * 1998-05-06 2003-08-20 松下电器产业株式会社 数字数据发送接收系统及其方法
JP2000032428A (ja) * 1998-07-15 2000-01-28 Sony Corp 情報受信装置、及びダウンロード方法
US6931198B1 (en) * 1998-07-15 2005-08-16 Sony Corporation Apparatus and method for downloading desired data signal to user-selectable storage unit
GB0016061D0 (en) * 2000-06-30 2000-08-23 Koninkl Philips Electronics Nv Efficient recording of object carousels
EP1227667A1 (en) * 2001-01-18 2002-07-31 Sony Service Centre (Europe) N.V. Method and device for providing downloaded objects to an application
GB0116116D0 (en) * 2001-06-30 2001-08-22 Koninkl Philips Electronics Nv Receiver apparatus and method
PL358659A1 (en) * 2003-02-10 2004-08-23 Advanced Digital Broadcast Ltd. Method for handling reception of round robin transmitted software
GB0313720D0 (en) * 2003-06-13 2003-07-16 Electra Guide Ltd England An improved television system
KR100574230B1 (ko) * 2003-11-14 2006-04-26 한국전자통신연구원 디지털 데이터 방송의 헤드엔드 또는 가입자 단말에서변경 어플리케이션 데이터 처리 방법
US7523145B2 (en) * 2004-04-22 2009-04-21 Opentv, Inc. System for managing data in a distributed computing system

Also Published As

Publication number Publication date
US20090292761A1 (en) 2009-11-26
KR20070095946A (ko) 2007-10-01
EP1829359A1 (en) 2007-09-05
CN101088279A (zh) 2007-12-12
WO2006064473A1 (en) 2006-06-22

Similar Documents

Publication Publication Date Title
US20100017832A1 (en) Network digital television middleware
JP4308433B2 (ja) インタラクティブテレビシステムのためのモジュールマネジャー
CN1898956B (zh) 验证和运行应用程序的方法
US20060179465A1 (en) Handling feature availability in a broadcast
AU2005238949B2 (en) A system for managing data in a distributed computing system
EP1766974A1 (en) Method for authenticating and executing an application program
US20070261090A1 (en) Interactive television application distribution, control, and communication system and methods
US20150281805A1 (en) Receiving device, receiving method, transmitting device, transmitting method, and program
CA2633582A1 (en) Data output device, equipment control device, and multimedia delivery system
JP2010524271A (ja) マルチメディアデータ送信装置およびマルチメディアデータ受信装置
US7523451B2 (en) Method for processing updated application data in headend or terminal of digital data broadcasting system
Pekowsky et al. The set-top box as" multi-media terminal"
US20110019099A1 (en) Method and apparatus for signaling transmission code set in data broadcasting
JP2008523693A (ja) セクションフィルタ機構によってdsmccミドルウェアを迂回する方法
JP2004520764A (ja) 対話型アプリケーションの記録
US20160105717A1 (en) Receiving device, receiving method, transmitting device, transmitting method, and program
EP3242490B1 (en) Self-adaptive streaming media processing method and device
JP2008515322A (ja) Mhpアプリケーションの起動時間を減少させるシステム及び方法
EP1222818A2 (en) Tuning of multiple application enabled digital communication terminals to access services