【手続補正書】
【提出日】平成27年5月25日(2015.5.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の異なるユーザ・コンピューティング・プラットフォーム・タイプのうちの１つのタイプであるユーザ・コンピューティング・プラットフォーム上でビデオコンテンツをレンダリングするための、コンピュータ・システムによって実行される方法であって、
スクリプトを前記ユーザ・コンピューティング・プラットフォームに送信することを含み、前記スクリプトが、複数の前記ユーザ・コンピューティング・プラットフォーム・タイプのいずれか１つで動作するようにコンパイルされたアプリケーション・プログラムによって解釈されるように構成されており、前記アプリケーション・プログラムが、前記ユーザ・コンピューティング・プラットフォーム上で動作し、
前記スクリプトを送信することによって、前記ユーザ・コンピューティング・プラットフォーム上で動作する前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記解釈されたスクリプトによって、前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な符号化されたビデオ・データが、１つまたは複数のフレーム画像を含む復号済みビデオ・データに直接復号される、方法。
【請求項２】
前記ビデオコンテンツは、ビデオ・データおよび関連のオーディオ・データによって具体化され、
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、
前記ビデオ・データを構成するフレーム画像を表示することによって、前記ビデオ・データをレンダリングし、
前記関連のオーディオ・データを再生し、
前記関連のオーディオ・データの再生に関連するオーディオ再生時間基準を確認し、
前記解釈されたスクリプトによって、前記オーディオ再生時間基準に基づいて、前記フレーム画像の表示と前記関連のオーディオ・データの再生とが直接同期させられる、請求項１に記載の方法。
【請求項３】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記１つまたは複数のフレーム画像が前記ユーザ・コンピューティング・プラットフォーム上でネイティブに表示される、請求項１または２に記載の方法。
【請求項４】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記解釈されたスクリプトによって、前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な符号化されたオーディオ・データが、復号済みオーディオ・データに直接復号される、請求項１に記載の方法。
【請求項５】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記ユーザ・コンピューティング・プラットフォーム上で前記１つまたは複数のフレーム画像を表示することによって前記復号済みビデオ・データをレンダリングし、前記ユーザ・コンピューティング・プラットフォーム上で前記復号済みオーディオ・データを再生することによって前記復号済みオーディオ・データをレンダリングする、請求項４に記載の方法。
【請求項６】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記ユーザ・コンピューティング・プラットフォーム上で前記１つまたは複数のフレーム画像を表示することによって前記復号済みビデオ・データをネイティブにレンダリングし、前記復号済みオーディオ・データを再生することによって前記復号済みオーディオ・データをネイティブにレンダリングする、請求項４に記載の方法。
【請求項７】
前記ビデオ・データおよびオーディオ・データが、ビデオ・コンテンツ・アイテムの一部として互いに関連付けられており、前記１つまたは複数のフレーム画像が、複数のフレーム画像を含み、前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記解釈されたスクリプトによって、前記フレーム画像の表示と前記復号済みオーディオ・データの再生とが直接同期させられる、請求項５または６に記載の方法。
【請求項８】
前記ビデオ・データおよびオーディオ・データが、ビデオ・コンテンツ・アイテムの一部として互いに関連付けられており、前記１つまたは複数のフレーム画像が、複数のフレーム画像を含み、前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記復号済みオーディオ・データの再生に関連するオーディオ再生時間基準を確認し、前記解釈されたスクリプトによって、前記オーディオ再生時間基準に基づいて、前記フレーム画像の表示と前記復号済みオーディオ・データの再生とが直接同期させられる、請求項５または６に記載の方法。
【請求項９】
前記フレーム画像の表示と前記復号済みオーディオ・データの再生とが同期することは、前記ビデオ・データのレンダリングが時間の第１の閾値量だけ前記オーディオ再生時間基準より遅れていると判定されたことに基づいて１つまたは複数のフレーム画像の表示をスキップすることによって順序外れのフレーム画像の表示を進めること、および、前記ビデオ・データのレンダリングが時間の第２の閾値量だけ前記オーディオ再生時間基準より進んでいると判定されたことに基づいて１つまたは複数のフレーム画像を、前記ビデオ・データのフレームレートによって決まる期間より長い期間の間、表示させることのうちの少なくとも１つを含む、請求項２または８に記載の方法。
【請求項１０】
前記フレーム画像の表示と前記復号済みオーディオ・データの再生とを同期させることが、前記オーディオ再生時間基準を使用し、現在のフレーム・インデックスを決定すること、および、前記現在のフレーム・インデックスに関連付けられた前記フレーム画像が表示される準備ができている場合、前記現在のフレーム・インデックスに関連付けられた前記フレーム画像を表示することを含む、請求項２または８に記載の方法。
【請求項１１】
前記フレーム画像の表示と前記復号済みオーディオ・データの再生とを同期させることが、前記現在のフレーム・インデックスに関連付けられた前記フレーム画像がフレーム画像キュー内の１つまたは複数の他のフレーム画像より遅れていると判定すること、および、遅れている場合、前記１つまたは複数の他のフレーム画像の表示をスキップすることを含む、請求項１０に記載の方法。
【請求項１２】
前記フレーム画像の表示と前記復号済みオーディオ・データの再生とを同期させることが、前記現在のフレーム・インデックスに関連付けられた前記フレーム画像が表示される準備ができていないと判定すること、および、そのような判定とは独立して、ドロップ・フレーム・アクションを開始することを含み、前記ドロップ・フレーム・アクションが、前記現在のフレーム・インデックスに関連付けられた前記フレーム画像がレンダリングのための準備ができていなかったという指示を記録すること、復号済みオーディオ・データの再生を休止させる、または速度を落とさせること、符号化されたビデオ・データの復号のレートを増大させること、より低いフレームレートを有するビデオ・データへの切替えを引き起こすこと、前記画像フレームのサブセットを復号することによって前記ビデオ・データの事実上のダウンサンプリングへの切替えを引き起こすことのうちの１つまたは複数を含む、請求項１０に記載の方法。
【請求項１３】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記符号化されたビデオ・データを前記フレーム画像に直接復号することを含む第１のシミュレートされたスレッドを反復してスケジューリングおよび実行すること、および、前記フレーム画像を表示することによって前記ビデオ・データをレンダリングすることを含む第２のシミュレートされたスレッドを反復してスケジューリングおよび実行することによって、マルチスレッド型実行環境をシミュレートする、請求項２または５または６に記載の方法。
【請求項１４】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記符号化されたオーディオ・データを前記復号済みオーディオ・データに直接復号することを含む第３のシミュレートされたスレッドを反復してスケジューリングおよび実行すること、および、復号済みオーディオ・データをオーディオ・レンダラに供給するオーディオ・レンダラ・インターフェースを実行することを含む第４のシミュレートされたスレッドを反復してスケジューリングおよび実行することによって、マルチスレッド型実行環境をシミュレートする、請求項１３に記載の方法。
【請求項１５】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、方法を反復してスケジューリングおよび実行することによってマルチスレッド型実行環境をシミュレートし、前記方法が、反復ごとに、１つまたは複数の対応する条件を論理的に調査し、前記対応する条件の前記１つまたは複数に応じて、
前記符号化されたビデオ・データを前記フレーム画像に直接復号することを含む第１のシミュレートされたスレッド、
前記フレーム画像を表示することによって前記ビデオ・データをレンダリングすることを含む第２のシミュレートされたスレッド、
前記符号化されたオーディオ・データを前記復号済みオーディオ・データに直接復号することを含む第３のシミュレートされたスレッド、
前記復号済みオーディオ・データをオーディオ・レンダラに送るオーディオ・レンダラ・インターフェースを実行することを含む第４のシミュレートされたスレッドのうちの１つを選択および実行する、請求項２または５に記載の方法。
【請求項１６】
前記第１のシミュレートされたスレッドを実行することが、前記第１のシミュレートされたスレッドを複数のサブコンポーネントに分割すること、サブコンポーネントの対の実行の間で、１つまたは複数の対応する条件に対する１または複数の論理的な調査を行い、前記１つまたは複数の対応する条件に応じて、前記第１のシミュレートされたスレッドに一時的に割り込み、第２のシミュレートされたスレッド、および復号済みオーディオ・データをオーディオ・レンダラに送るオーディオ・レンダラ・インターフェースを実行することを含む別のシミュレートされたスレッドのうちの１つの反復を選択および実行する、請求項１３に記載の方法。
【請求項１７】
前記１つまたは複数のフレーム画像を表示することによって前記ビデオ・データをレンダリングすることが、少なくとも１対のフレーム画像を共にアルファブレンディングすることを含む、請求項２または５または６に記載の方法。
【請求項１８】
前記１つまたは複数のフレーム画像を表示することによって前記ビデオ・データをレンダリングすることが、前記フレーム画像の第１のフレーム画像を表示することと前記フレーム画像の第２のフレーム画像を表示することとの間の１回または複数回のそれぞれにおいて、前記フレーム画像の前記第１のフレーム画像と前記フレーム画像の前記第２のフレーム画像のアルファブレンドを含むアルファブレンディング済み画像を表示することを含む、請求項２または５または６に記載の方法。
【請求項１９】
前記フレーム画像の前記第１のフレーム画像を表示することと前記フレーム画像の前記第２のフレーム画像を表示することとの間の前記１回または複数回のそれぞれにおいて、前記アルファブレンディング済み画像を表示することが、
α＝［β＋ｌ−ｍｏｄ（ｆ＃，β）］−１
によって与えられるアルファブレンディング係数を使用して前記フレーム画像の前記第２のフレーム画像を以前に表示された画像上にアルファブレンディングすることを含み、
上式で、
・  βは、前記１回または複数回の数に等しいダウンサンプリング係数であり、
・  ｆ＃は、前記１回または複数回の現在の回の数を指すインデックスであり、
・  ｍｏｄ（ｘ，ｙ）は、ｘをｙで割った整数の余りを返すモジュロ演算子である、請求項１８に記載の方法。
【請求項２０】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記オーディオ・データから前記ビデオ・データを直接逆多重化する、請求項２または５または６に記載の方法。
【請求項２１】
前記符号化されたビデオ・データを前記ユーザ・コンピューティング・プラットフォームに送信することを含む、請求項１から２０のいずれかに記載の方法。
【請求項２２】
前記符号化されたビデオ・データを前記ユーザ・コンピューティング・プラットフォームに送信する前に前記ビデオコンテンツを前記符号化されたビデオ・データに符号化することを含み、前記ビデオコンテンツを符号化することが、
第１のファイル・フォーマットで提供される前記フレーム画像の少なくとも第１のフレーム画像について、フレーム画像の前記第１のフレーム画像のコンテンツを解析すること、前記フレーム画像の前記第１のフレーム画像の前記コンテンツの前記解析に基づいて複数の２次画像ファイル・フォーマットの中から１つを選択すること、前記第１のファイル・フォーマットが前記２次画像ファイル・フォーマットの前記選択されたフォーマットと異なる場合、前記フレーム画像の前記第１のフレーム画像の前記画像ファイル・フォーマットを前記２次ファイル・フォーマットの前記選択されたものに変換すること、および
第２のファイル・フォーマットで提供されるフレーム画像の少なくとも第２のフレーム画像について、フレーム画像の前記第２のフレーム画像のコンテンツを解析すること、前記フレーム画像の前記第２のフレーム画像の前記コンテンツの前記解析に基づいて前記複数の２次画像ファイル・フォーマットの中から異なる１つを選択すること、前記第２のファイル・フォーマットが前記２次画像ファイル・フォーマットの前記選択された異なるフォーマットと異なる場合、前記フレーム画像の前記第１のフレーム画像の前記画像ファイル・フォーマットを前記２次ファイル・フォーマットの前記選択されたものに変換することを含み、
前記複数の２次画像ファイル・フォーマットのそれぞれが、前記アプリケーション・プログラムによってネイティブにレンダリングされることが可能である、請求項２１に記載の方法。
【請求項２３】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記ユーザ・コンピューティング・プラットフォームの１つまたは複数の特性を照会し、前記ユーザ・コンピューティング・プラットフォームの前記１つまたは複数の照会された特性に応じて、前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な前記符号化されたビデオ・データを含むファイルを変更する、請求項２または５または６に記載の方法。
【請求項２４】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記ユーザ・コンピューティング・プラットフォームの１つまたは複数の特性を照会し、前記ユーザ・コンピューティング・プラットフォームの前記１つまたは複数の照会された特性に応じて、前記符号化されたビデオ・データの復号、および前記１つまたは複数のフレーム画像の再生のうちの１つまたは複数の少なくとも１つの特性を修正する、請求項２または５または６に記載の方法。
【請求項２５】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記符号化されたビデオ・データが前記ユーザ・コンピューティング・プラットフォームに送信されるデータ転送速度を決定し、前記決定に応じて前記ユーザ・コンピューティング・プラットフォームに転送される前記符号化されたビデオ・データを含むファイルを変更する、請求項２または５または６に記載の方法。
【請求項２６】
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記符号化されたビデオ・データが前記ユーザ・コンピューティング・プラットフォームに送信されるデータ転送速度を決定し、前記決定に応じて、前記符号化されたビデオ・データの復号、および前記フレーム画像の再生のうちの１つまたは複数の少なくとも１つの特性を修正する、請求項２または５または６に記載の方法。
【請求項２７】
ビデオコンテンツをレンダリングするために、ユーザ・コンピューティング・プラットフォーム上で実行される方法であって、
前記ユーザ・コンピューティング・プラットフォームにてスクリプトを受信し、前記スクリプトが、前記ユーザ・コンピューティング・プラットフォーム上で動作するアプリケーション・プログラムによって解釈されるように構成されることと、
前記コンピューティング・プラットフォーム上で前記アプリケーション・プログラムを使用して前記スクリプトを解釈することを含み、
前記スクリプトを解釈することが、前記解釈されたスクリプトに、前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な符号化されたビデオ・データを、１つまたは複数のフレーム画像を含む復号済みビデオ・データに直接復号させる、方法。
【請求項２８】
前記ビデオコンテンツは、ビデオ・データおよび関連のオーディオ・データによって具体化され、
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、
前記ビデオ・データを構成するフレーム画像を表示することによって、前記ビデオ・データをレンダリングし、
前記関連のオーディオ・データを再生し、
前記関連のオーディオ・データの再生に関連するオーディオ再生時間基準を確認し、
前記解釈されたスクリプトによって、前記オーディオ再生時間基準に基づいて、前記フレーム画像の表示と前記関連のオーディオ・データの再生とが直接同期させられる、請求項２７に記載の方法。
【請求項２９】
複数の異なるユーザ・コンピューティング・プラットフォーム・タイプのうちの１つのタイプであるユーザ・コンピューティング・プラットフォーム上でビデオコンテンツをレンダリングするためのシステムであって、
スクリプトを前記ユーザ・コンピューティング・プラットフォームに送信するためのサーバ・コンピューティング・デバイスであって、前記スクリプトが、前記複数のユーザ・コンピューティング・プラットフォーム・タイプのいずれか１つで動作するようにコンパイルされたアプリケーション・プログラムによって解釈されるように構成される、サーバ・コンピューティング・デバイスを備え、
前記スクリプトを送信することによって、前記ユーザ・コンピューティング・プラットフォーム上で動作する前記アプリケーション・プログラムに前記スクリプトを解釈させ、前記解釈されたスクリプトによって、前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な符号化されたビデオ・データが、１つまたは複数のフレーム画像を含む復号済みビデオ・データに直接復号される、システム。
【請求項３０】
前記ビデオコンテンツは、ビデオ・データおよび関連のオーディオ・データによって具体化され、
前記スクリプトを送信することによって、前記アプリケーション・プログラムに前記スクリプトを解釈させ、
前記ビデオ・データを構成するフレーム画像を表示することによって、前記ビデオ・データをレンダリングし、
前記関連のオーディオ・データを再生し、
前記関連のオーディオ・データの再生に関連するオーディオ再生時間基準を確認し、
前記解釈されたスクリプトによって、前記オーディオ再生時間基準に基づいて、前記フレーム画像の表示と前記関連のオーディオ・データの再生とが直接同期させられる、請求項２９に記載のシステム。
【請求項３１】
ユーザ・コンピュータ・プラットフォーム上でビデオコンテンツをレンダリングするためのシステムであって、
前記ユーザ・コンピューティング・プラットフォームにとってアクセス可能な前記符号化されたビデオ・データを、１つまたは複数のフレーム画像を含む復号済みビデオ・データに復号するための復号要素を提供するように構成されたプロセッサを備え、
前記プロセッサが、前記ユーザ・コンピューティング・プラットフォーム上でアプリケーション・プログラムを実行することによって復号要素を提供するように構成され、前記アプリケーション・プログラムがクロスプラットフォーム・スクリプトを解釈し、それにより前記解釈されたスクリプトが前記ビデオ・データを直接復号する、システム。
【請求項３２】
前記ビデオコンテンツは、ビデオ・データおよび関連のオーディオ・データによって具体化され、
前記アプリケーションは、クロスプラットフォーム・スクリプトを解釈し、
前記ビデオ・データを構成するフレーム画像を表示することによって、前記ビデオ・データをレンダリングし、
前記関連のオーディオ・データを再生し、
前記関連のオーディオ・データの再生に関連するオーディオ再生時間基準を確認し、
前記解釈されたスクリプトによって、前記オーディオ再生時間基準に基づいて、前記フレーム画像の表示と前記関連のオーディオ・データの再生とが直接同期させられる、請求項３１に記載のシステム。