【手続補正書】
【提出日】平成19年6月29日(2007.6.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定するための方法であって、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、および
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること
を含み、前記コンフィギュレーション情報が、
（１）ＯＳバージョン、
（２）ウェブ・ブラウザ・バージョン、
（３）ハードウェア・プラットフォーム、
（４）ユーザ・インターフェース言語タイプ、
（５）符号化フォーマット、または
（６）圧縮アルゴリズム、もしくは
（７）これらの組合せ
を含む方法。
【請求項２】
１つまたは複数のプロセッサをプログラムして、マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、および
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること
を含み、前記コンフィギュレーション情報が、
（１）ＯＳバージョン、
（２）ウェブ・ブラウザ・バージョン、
（３）ハードウェア・プラットフォーム、
（４）ユーザ・インターフェース言語タイプ、
（５）符号化フォーマット、または
（６）圧縮アルゴリズム、もしくは
（７）これらの組合せ
を含む、１つまたは複数のストレージ・デバイス。
【請求項３】
前記方法が、前記受信することの前に実施される、前記ユーザのコンピュータにおいて、配信管理サーバのドメインにクッキーを設定することをさらに含み、前記コンフィギュレーション情報が、前記クッキーとして受信される、請求項２に記載の１つまたは複数のストレージ・デバイス。
【請求項４】
（ａ）推定される帯域幅に基づいてタイミング・ブロックのサイズを決定すること、
（ｂ）前記タイミング・ブロックの転送が開始する時刻をマークすること、
（ｃ）前記タイミング・ブロックの転送が終了する時刻をマークすること、および
（ｄ）前記決定されたタイミング・ブロック・サイズおよび転送が開始し終了する前記時刻に基づいて接続速度を特定すること
を含む、コンピュータの接続速度を特定する方法。
【請求項５】
１つまたは複数のプロセッサをプログラムして、コンピュータの接続速度を特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）推定される帯域幅に基づいてタイミング・ブロックのサイズを決定すること、
（ｂ）前記タイミング・ブロックの転送が開始する時刻をマークすること、
（ｃ）前記タイミング・ブロックの転送が終了する時刻をマークすること、および
（ｄ）前記決定されたタイミング・ブロック・サイズおよび転送が開始し終了する前記時刻に基づいて前記接続速度を特定すること
を含む、１つまたは複数のストレージ・デバイス。
【請求項６】
前記タイミング・ブロック・サイズを決定することが、
（１）推定される帯域幅情報をフェッチすること、
（２）推定される時間を決定して、十分な分解能で前記接続速度を特定するためのデータを取得すること、および
（３）前記決定された推定される時間をかけて取得することになる前記タイミング・ブロック・サイズを決定すること
を含む、請求項５に記載の１つまたは複数のストレージ・デバイス。
【請求項７】
前記タイミング・ブロックが、プリファランス・ページの一部分としてのマークアップ言語コメント中で受信される、請求項５に記載の１つまたは複数のストレージ・デバイス。
【請求項８】
前記方法が、前記接続速度の情報をクッキーに格納することをさらに含む、請求項５に記載の１つまたは複数のストレージ・デバイス。
【請求項９】
前記方法が、前記クッキーを配信管理サーバに送信することをさらに含む、請求項８に記載の１つまたは複数のストレージ・デバイス。
【請求項１０】
前記タイミング・ブロックが、ランダム・データを含む、請求項５に記載の１つまたは複数のストレージ・デバイス。
【請求項１１】
（ａ）既知のサイズを有するデータのタイミング・ブロックを受信すること、
（ｂ）前記タイミング・ブロックの転送を開始すべき開始時刻を受信すること、
（ｃ）前記開始時刻において前記タイミング・ブロック転送を開始すること、
（ｄ）前記タイミング・ブロックの転送が終了する時刻をマークすること、および
（ｅ）前記タイミング・ブロック・サイズおよび転送が開始し終了する前記時刻に基づいて接続速度を特定すること
を含む、コンピュータの接続速度を特定する方法。
【請求項１２】
１つまたは複数のプロセッサをプログラムして、コンピュータの接続速度を特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）既知のサイズを有するデータのタイミング・ブロックを受信すること、
（ｂ）前記タイミング・ブロックの転送を開始すべき開始時刻を受信すること、
（ｃ）前記開始時刻において前記タイミング・ブロック転送を開始すること、
（ｄ）前記タイミング・ブロックの転送が終了する時刻をマークすること、および
（ｅ）前記タイミング・ブロック・サイズおよび転送が開始し終了する前記時刻に基づいて前記接続速度を特定すること
を含む、１つまたは複数のストレージ・デバイス。
【請求項１３】
前記タイミング・ブロックの前記既知のサイズが、
（１）推定される帯域幅情報をフェッチすること、
（２）推定される時間を決定して、十分な分解能で前記接続速度を特定するためのデータを取得すること、および
（３）前記決定された推定される時間をかけて取得することになる前記タイミング・ブロック・サイズを決定すること
によって決定される、請求項１２に記載の１つまたは複数のストレージ・デバイス。
【請求項１４】
前記タイミング・ブロックが、プリファランス・ページの一部分としてのマークアップ言語コメント中で受信される、請求項１２に記載の１つまたは複数のストレージ・デバイス。
【請求項１５】
前記方法が、前記接続速度の情報をクッキーに格納することをさらに含む、請求項１２に記載の１つまたは複数のストレージ・デバイス。
【請求項１６】
前記方法が、前記クッキーを配信管理サーバに送信することをさらに含む、請求項１５に記載の１つまたは複数のストレージ・デバイス。
【請求項１７】
前記タイミング・ブロックが、ランダム・データを含む、請求項１２に記載の１つまたは複数のストレージ・デバイス。
【請求項１８】
マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定するための方法であって、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること、および
（ｃ）修正された情報ヘッダ命令を送信すること
を含む方法。
【請求項１９】
マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定するための方法であって、
（ａ）ユーザのコンピュータにおいて、第２のコンピュータからプレーヤ検出コードを受信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を前記第２のコンピュータに送信すること、および
（ｃ）修正された情報ヘッダ命令を受信すること
を含む方法。
【請求項２０】
マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定するための方法であって、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること、および
（ｃ）前記受信されたコンフィギュレーション情報に基づいて前記ユーザのコンピュータのデジタル権限管理情報のタイプを特定すること
を含む方法。
【請求項２１】
１つまたは複数のプロセッサをプログラムして、マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること、および
（ｃ）修正された情報ヘッダ命令を送信すること
を含む、１つまたは複数のストレージ・デバイス。
【請求項２２】
前記方法が、固有のクライアントＩＤを送信することをさらに含む、請求項２１に記載の１つまたは複数のストレージ・デバイス。
【請求項２３】
前記命令を受信することが、前記送信することの後で行われ、前記修正された情報が、前記送信された情報中には含まれなかった何らかの情報を含む、請求項２１に記載の１つまたは複数のストレージ・デバイス。
【請求項２４】
前記命令を受信することが、前記送信することの後で行われ、前記修正された情報が、前記送信された情報中に含まれていた何らかの情報を除外する、請求項２１に記載の１つまたは複数のストレージ・デバイス。
【請求項２５】
前記修正された情報ヘッダ命令が、前記受信することに先立って送信され、前記受信されるコンフィギュレーション情報が、前記修正された情報ヘッダ命令に従って作成される、請求項２１に記載の１つまたは複数のストレージ・デバイス。
【請求項２６】
前記受信されたコンフィギュレーション情報が、１つまたは複数のアダプテーションを含む、請求項２１に記載の１つまたは複数のストレージ・デバイス。
【請求項２７】
前記１つまたは複数のアダプテーションが、ハードウェアアダプテーションを含む、請求項２６に記載の１つまたは複数のストレージ・デバイス。
【請求項２８】
前記１つまたは複数のアダプテーションが、ユーザ・インターフェース・バージョンアダプテーションを含む、請求項２６に記載の１つまたは複数のストレージ・デバイス。
【請求項２９】
前記修正されたヘッダ情報命令が、前記アダプテーション情報に従って作成される、請求項２６に記載の１つまたは複数のストレージ・デバイス。
【請求項３０】
１つまたは複数のプロセッサをプログラムして、マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）ユーザのコンピュータにおいて第２のコンピュータからプレーヤ検出コードを受信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を前記第２のコンピュータに送信すること、および
（ｃ）修正された情報ヘッダ命令を受信すること
を含む、１つまたは複数のストレージ・デバイス。
【請求項３１】
前記方法が、固有のクライアントＩＤを受信することをさらに含む、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項３２】
前記方法が、前記第２のコンピュータに送信するためのコンフィギュレーション情報と共に、クライアントＩＤポインタ・アドレスを追加することをさらに含む、請求項３１に記載の１つまたは複数のストレージ・デバイス。
【請求項３３】
前記方法が、前記受信されたヘッダ命令に基づいて、修正されたヘッダ情報を作成することをさらに含む、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項３４】
前記方法が、追加されたクライアントＩＤを有する前記修正されたヘッダ情報を前記第２のコンピュータに送信することをさらに含む、請求項３３に記載の１つまたは複数のストレージ・デバイス。
【請求項３５】
前記方法が、前記修正されたヘッダ情報の前記送信することに先立って、さらなるコンフィギュレーション情報要求を受信することをさらに含む、請求項３４に記載の１つまたは複数のストレージ・デバイス。
【請求項３６】
前記命令を受信することが、前記送信することの後で行われ、前記修正された情報が、前記送信された情報中には含まれなかった何らかの情報を含む、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項３７】
前記命令を受信することが、前記送信することの後で行われ、前記修正された情報が、前記送信された情報中に含まれていた何らかの情報を除外する、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項３８】
前記修正された情報ヘッダ命令が、前記送信することに先立って受信され、前記送信されるコンフィギュレーション情報が、前記修正された情報ヘッダ命令に従って作成される、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項３９】
前記送信されたコンフィギュレーション情報が、１つまたは複数のアダプテーションを含む、請求項３０に記載の１つまたは複数のストレージ・デバイス。
【請求項４０】
前記１つまたは複数のアダプテーションが、ハードウェアアダプテーションを含む、請求項３９に記載の１つまたは複数のストレージ・デバイス。
【請求項４１】
前記１つまたは複数のアダプテーションが、ユーザ・インターフェース・バージョンアダプテーションを含む、請求項３９に記載の１つまたは複数のストレージ・デバイス。
【請求項４２】
前記修正されたヘッダ情報命令が、前記アダプテーション情報に従って作成される、請求項３９に記載の１つまたは複数のストレージ・デバイス。
【請求項４３】
１つまたは複数のプロセッサをプログラムして、マルチメディア・コンテンツ・ユーザのコンピュータのコンフィギュレーションをリモートに特定する方法を実施するためのプロセッサ読取り可能コードを有する、１つまたは複数のプロセッサ読取り可能ストレージ・デバイスであって、前記方法が、
（ａ）前記ユーザのコンピュータにプレーヤ検出コードを送信すること、
（ｂ）前記ユーザのコンピュータに関するコンフィギュレーション情報を受信すること、および
（ｃ）前記受信されたコンフィギュレーション情報に基づいて前記ユーザのコンピュータ上でデジタル権限管理情報のタイプを特定すること
を含む、１つまたは複数のストレージ・デバイス。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】マルチメディア・コンテンツ・ユーザのコンフィギュレーションをリモートに特定するための方法、コンピュータの接続速度を特定する方法、およびストレージ・デバイス
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
しかし、現在では、かなり様々なユーザ・コンフィギュレーションが存在する。一部のユーザは、インテル（Intel）ベースのＰＣ（personal computerパーソナル・コンピュータ）を有するが、他のユーザは、アップル・マッキントッシュ（APPLE MACINTOSH）コンピュータを有することもある。更にこれらとも異なるオペレーティング・システムも存在する。一部のユーザは、マイクロソフト社（MICROSOFT, Inc.）からのあるバージョンのマイクロソフト・ウィンドウズ（登録商標）（MICROSFT WINDOWS（登録商標））を有することになるが、他のユーザは、アップル社（APPLE, Inc.）からのあるバージョンのＭＡＣ  ＯＳを有する。さらに、今ではこのユーザ・コミュニティにおいて、これらのオペレーティング・システムのそれぞれにはいくつかのバージョンが存在する。さらに、今ではいくつものソフトウェア・プログラムを使用して、ユーザのコンピュータ上でマルチメディアを再生することができる。これらのプレーヤは、（アップル社からの）クイックタイム（QUICKTIME）、（リアルネットワークス社（REALNETWORKS, Inc.）からの）リアルプレーヤ（REALPLAYER）、および（マイクロソフト社からの）ウィンドウズ・メディア・プレーヤ（WINDOWS MEDIAPLAYER）を含んでいる。さらに、これらのプレーヤのそれぞれには、このユーザ・コミュニティにおいて現在使用可能ないくつかのバージョンがある。最終的に、異なるユーザが、異なるデータ・レートで動作させることもある。一部のユーザは、高速ブロードバンド接続を有することもあるが、他のユーザは、５６Ｋモデム接続を有することもある。
【特許文献１】米国特許出願第０９／９８６，６８３号
【特許文献２】米国特許出願公開第２００３／００９３５０７号
【特許文献３】米国仮出願（速達郵便第ＥＶ３３１８７１９６９ＵＳ）Jody Shapiro、「System, Method, and Computer Program Product for Remotely Determining the Configuration of Multi-Media Content User」
【特許文献４】米国特許第３３９４３５２号
【特許文献５】米国特許第３９３７８８１号
【特許文献６】米国特許第５６５７０１５号
【特許文献７】米国特許第６５９３８６０号
【特許文献８】米国特許第６４０７６８０号
【特許文献９】米国特許第６４６６９３９号
【特許文献１０】米国特許第５９２８３３０号
【特許文献１１】米国特許第６３１７１３４号
【特許文献１２】米国特許第６０７０００２号
【特許文献１３】米国特許出願公開第２００３／０１５８９１３号
【特許文献１４】米国特許出願公開第２００３／００９３５０７号
【特許文献１５】米国特許出願公開第２００２／００９９８５８号
【特許文献１６】米国特許出願公開第２００２／００９９７７０号
【特許文献１７】米国特許出願公開第２００２／００９１８００号
【特許文献１８】米国特許出願第１０／６４４６０２号
【非特許文献１】Chapman, Nigel他、「Digital Multimedia」、John Wiley & Sons, Ltd.、Copyright 2000
【非特許文献２】Murray, James D.他、「Encyclopedia of Graphics File Formats: Second Edition」、O'Reilly & Associates, Inc.、Copyright 1994、1996
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
過去においては、コンテンツ・プロバイダは、何組かの一般的なユーザ・コンフィギュレーションのセットを選択することによってこの問題に対処してきている。例えばこのプロバイダは、最も一般的なメディア・プレーヤとこれらのバージョンを特定するかもしれない。このプロバイダは、これらのプレーヤのそれぞれについてこのコンテンツをフォーマットし、これら種々雑多なバージョンのコンテンツを記憶する。次いで、このプロバイダは、どのメディアプレーヤをこのユーザが有しているかについて、または、このユーザが複数のプレーヤを有している場合には、どのプレーヤをこのユーザが好むかについて実際に照会するために、このユーザに提供すべきメニューを開発するはずである。次いで、このユーザは、選択を行い、この選択されたフォーマットであらかじめ符号化されているコンテンツがこのユーザに対して配信される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
好ましい実施形態によれば、プリファランス・ページは、既知のサイズのデータのブロックを含んでいる。このブロックは、このユーザのコンピュータにこのプリファランス・ページの一部分として転送される。このユーザのコンピュータの接続速度を特定するために、このデータのブロックを転送するために必要とされる時間が測定される。この接続速度の情報は、追加の１つのコンフィギュレーション情報を表す。この接続速度の情報もまた、クッキーの形態でこのユーザのコンピュータにローカルに記憶される。このクッキーは、この配信管理サーバにこのユーザの接続レートを伝える方法として、この配信管理サーバに送信することもできる。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００３２
【補正方法】変更
【補正の内容】
【００３２】
メディア・プレーヤを検出する場合、理想的には、以下、すなわちインストールされたメディア・プレーヤ（例えば、クイックタイム（QuickTime）、ウィンドウズ・メディア・プレーヤ（Windows Media Player）、リアルプレーヤ（RealPlayer）など）と、インストールされたメディア・プレーヤのバージョン（例えば、クイックタイム５．０．２、ウィンドウズ・メディア・プレーヤ６．４、リアルプレーヤ８．０）と、各メディア・プレーヤにインストールされた個々のオーディオ・コーデックおよびビデオ・コーデック（クイックタイム用のソレンソン（Solenson）ν３、ウィンドウズ・メディア・ビデオ（Windows Media Video）Ｖ８、リアルプレーヤ用のソニー（Sony）ＡＴＲＡＣ（登録商標）など）のすべてを検出することが可能であることである。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
本発明のシステムの一実施形態が、図１に示されている。コンテンツ・プロバイダ１０５が、ユーザ１１０に対して情報を配信することが示されている。ウェブ・ページ１１５中にはサーバ・コンタクト・コード１２０が含まれている。ユーザ１１０のブラウザがサーバ・コンタクト・コード１２０にアクセスするときに、このブラウザは、配信管理サーバ１２５とのコンタクトを確立し、１つまたは複数のプレーヤ検出スクリプト１４０を要求する。サーバ１２５は、スクリプト１４０をこのユーザ１１０に送信することによって応答する。以下でさらに詳細に説明するようにして、このスクリプト１４０は、実行されるときに、ユーザ１１０についてのコンフィギュレーション情報１３５を特定する。本発明の一実施形態においては、このコンフィギュレーション情報は、コンフィギュレーション情報１３５を含むクッキーを設定するプロセスによって、ユーザ１１０の装置に記憶される。これらのクッキーはユーザ１１０によって保持され、ユーザ１１０がＨＴＴＰ要求１３０を行ってこのコンテンツにアクセスするときにこれらのクッキーの形態のコンフィギュレーション情報１３５は、配信管理サーバ１２５へと送信される。トランスコーダ（図示せず）は、コンフィギュレーション情報１３５によって指定されるようにマルチメディア・コンテンツをフォーマットする。次いで、この結果生ずるフォーマット済みのコンテンツは、ストリーミング・サーバ（図示せず）を介してユーザ１１０に配信することができる。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００３８
【補正方法】変更
【補正の内容】
【００３８】
以下でさらに詳細に説明しているように、このプリファランス・ページは、既知のサイズを有するデータのブロック１５５を含んでいる。ユーザ１１０の接続速度を特定するために、ブロック１５５の転送時間が計測される。本発明の一実施形態においては、（以降では、このタイミング・ブロックとして知られている）ブロック１５５が、プリファランス・ページ１５０中のＨＴＭＬコメント中に組み込まれる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００４６
【補正方法】変更
【補正の内容】
【００４６】
コンピュータ・システム２００は、通信インターフェース２２４を含むこともできる。通信インターフェース２２４により、ソフトウェアおよびデータをコンピュータ・システム２００と外部デバイスの間で転送することができるようになる。通信インターフェース２２４の実施例は、モデム、（イーサネット（登録商標）・カードなどの）ネットワーク・インターフェース、通信ポート、ＰＣＭＣＩＡスロットおよびカードなどを含むことができる。通信インターフェース２２４を介して転送されるソフトウェアおよびデータは、通信インターフェース２２４が受信することが可能な電子信号、電磁信号、光信号または他の信号とすることができる信号２２８の形式である。これらの信号２２８は、通信経路（すなわち、チャネル）２２６を介して通信インターフェース２２４に供給される。このチャネル２２６は、コンピュータ・システム２００へと、またそこから信号２２８を伝え、ワイヤまたはケーブル、光ファイバ、電話回線、携帯電話網、ＲＦリンクおよび他の通信チャネルを使用して実装することができる。本発明の一実施形態においては、信号２２８は、ＨＴＴＰ要求１３０やコンフィギュレーション情報１３５などの配信管理サーバ１２５によって必要とされる情報を伝えることができる。信号２２８はまた、スクリプト１４０やプリファランス・ページ１５０などの情報もユーザ１１０に対して伝送することもできる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００５３
【補正方法】変更
【補正の内容】
【００５３】
jsが有効なクッキーを受信しない場合（すなわち、このユーザの所のコンフィギュレーション情報が不十分であり、または存在しない場合）には、この方法は、ステップ３３２において継続される。ステップ３３２において、プリファランス・ページがこのユーザのために表示される。本発明の一実施形態においては、これは、このプリファランス・ページをロードする新しいウィンドウを開くジャバスクリプト（javascript）（登録商標）のセグメントをこのユーザに送信することによって実現される。このプリファランス・ページにより、このユーザは、この配信管理サーバに対して、このユーザのコンフィギュレーションまたはメディア・プレーヤに関するプリファランス、および／またはこのユーザの接続速度を意図的に示すことができるようになる。本発明の一実施形態においては、このプリファランス・ページは、このユーザに対して特定のメディア・プレーヤが選択されるように推奨することもできる。また以下でさらに詳細に説明しているように、このプリファランス・ページは、このユーザのコンピュータの接続速度を特定し、この配信管理サーバに対して中継することができるようにするメカニズムも含んでいる。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００５４
【補正方法】変更
【補正の内容】
【００５４】
ステップ３３３において、このユーザによって提供されたこれらのプリファランスがこのユーザのコンピュータによって受け取られる。ステップ３３４において、これらのプリファランスは、クッキーに格納される。次いで処理は、ステップ３３５において継続される。ステップ３３５において、このユーザは、ＨＴＴＰ要求を行うことにより、ウェブ・ページを介してこのコンテンツ・プロバイダが使用可能にしているマルチメディア・コンテンツを要求する。かかる要求は、例えばこのコンテンツ・プロバイダのウェブ・ページのある領域をクリックすることによって行うことができる。この要求の一部分として、コンフィギュレーション情報を含む任意のクッキーが、この配信管理サーバに対して送信される。これらのクッキーは、例えばこのメディア・プレーヤのタイプおよびバージョンを記述することができる。これらのクッキーは、このユーザが有しているかもしれない好ましい接続速度の情報だけでなく、この測定された接続速度の情報をも格納することもできる。このユーザは、例えばストリーミングするために使用可能な帯域幅の一部分しか使用したくないと思うこともある。ここで、このユーザは、このユーザのコンフィギュレーションによって許可された最大速度よりも遅い速度を選択するはずである。このプロセスは、ステップ３７０において終了する。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００６８
【補正方法】変更
【補正の内容】
【００６８】
これら以上の制約条件内で帯域幅測定を行うためには、ＨＴＭＬおよびジャバスクリプトのコードを介して帯域幅を測定することが、１つの方法となることもある。小さなジャバ・アプレット（Java（登録商標） applet）によって、より細かくより高度な測定アルゴリズムが可能になり得るが、この場合には、ダウンロードされたアプレットとジャバ・ランタイム環境を必要とすることもあり、これらの両方がこれらの設計制約条件に違反する可能性もある。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００７８
【補正方法】変更
【補正の内容】
【００７８】
クライアント・ハードウェア、クライアント・ユーザ・インターフェース・バージョン、または他のクライアント・コンフィギュレーション機能のアダプテーション情報は、このサーバによって要求され、またはこのクライアントから送信され、もしくはその両方が行われたコンフィギュレーション情報に含めることができる。この修正されたヘッダ情報命令は、このアダプテーション情報に従って作成することもできる。これらのアダプテーションは、例えばこのクライアントにおける特定のブラウザ・コンフィギュレーションに従うようにすることもできる。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００８４
【補正方法】変更
【補正の内容】
【００８４】
検出情報をこのサーバ側上で使用して、トランスコードされるビット・レートおよびメディア・プレーヤのフォーマット／バージョンを特定することができる。帯域幅とコーデックのすべての可能な組合せの形でトランスコードを実現することは、一般的に非効率的であり、リソースを非常に多く使用する。使用されるコーデックは、例えば、最も一般的にインストールされているものに限られ、符号化されるビット・レートは、最も一般的なターゲット視聴者に対応したビット・レートに、例えば２８．８ｋモデムでは２０ｋｂｐｓに、５６ｋモデムでは３４ｋｂｐｓに、ＩＳＤＮでは９０ｋｂｐｓに、ＤＳＬでは３００ｋｂｐｓに、ケーブル・モデムでは５００ｋｂｐｓに限られてしまうこともある。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００８５
【補正方法】変更
【補正の内容】
【００８５】
図３Ａのステップ３２５に戻って参照すると、プレーヤ検出を実施するステップは、図４Ａにさらに詳細に説明されている。このプロセスは、ステップ４０５から開始される。ステップ４１０において、このユーザがどのブラウザを有するかについての判定が行われる。一般的にこのユーザのブラウザは、ネットスケープ・ナビゲータ（NETSCAPE NAVIGATOR（登録商標））の１バージョン、またはＩＥ（INTERNET EXPLORERインターネット・エクスプローラ（登録商標））の１バージョンであることになる。このユーザが、ネットスケープ・ナビゲータを有する場合、次いでこのプロセスは、ステップ４１１から継続される。ステップ４１１において、所与のメディア・プレーヤについてのストリング探索は、この常駐のＭＩＭＥタイプ・アレイ（mimetype array）およびプラグイン・アレイを介して実施される。このＭＩＭＥタイプ・アレイは、所与のＭＩＭＥタイプを有する応答を受信するとすぐにどのアプリケーションをロードするかについてのマッピングである。所与の任意のメディア・プレーヤは、一般的にそれ自体のＭＩＭＥタイプを有する。このプラグイン・アレイは、インストールされているすべてのブラウザ・プラグインのリストであり、一般的に各ブラウザ・プラグインは、対応するＭＩＭＥタイプを登録している。結果として、これらのアレイは、一般的にこのユーザのコンピュータ上に常駐する１つ（または複数）のメディア・プレーヤを指し示すキャラクタ・ストリングを含むことになる。クイックタイムは、例えばストリング「QuickTime（登録商標）」によって指し示され、ウィンドウズ・メディア・プレーヤは、ストリング「video/x-msvideo」によって指し示される。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００９０
【補正方法】変更
【補正の内容】
【００９０】
ウィンドウズ（登録商標）・メディア・プレーヤの検出
図４Ｂは、本発明の例示の一実施形態によるクライアント側ウィンドウズ・メディア・プレーヤ（ＷＭＰ）検出を示すフロー・チャートである。ステップ４４１において、ＷＭＰは、このクライアントのＯＳ／プラットフォーム上で使用可能であるかどうかが検査される。ＷＭＰが使用可能でない場合、次いでステップ４５１においてＷＭＰバージョンはノー（no）に設定され、この方法は、この実施例に従ってリアルプレーヤ検出へと進む。ＷＭＰが使用可能である場合には、次いでステップ４４２において、アクティブエックス（ActiveX）がクライアント・ブラウザ上で使用可能であるかどうかが検査される。イエス（yes）である場合、次いでステップ４４３において、ＷＭＰ７．１またはＷＭＰ８についてのクラスＩＤを作成することができるかどうかが検査される。イエスである場合、次いでステップ４４４において、ＷＭＰバージョンは、バージョン７．１に設定され、このプロセスは、この実施例における図４Ｃによるリアルプレーヤ検出へと進む。ステップ４４３において、ＷＭＰ７．１またはＷＭＰ８についてのクラスＩＤを作成することができないと判定される場合には、次いでステップ４４５において、ＷＭＰ７についてのクラスＩＤを作成することができるかどうかが検査される。ＷＭＰ７についてのクラスＩＤを作成することができる場合、次いでＷＭＰバージョンは、ＷＭＰ７に設定され、このプロセスは、リアルプレーヤ検出へと進む。ステップ４４５において、ＷＭＰ７についてのクラスＩＤを作成することができないと判定される場合には、次いでステップ４４７において、ＷＭＰ６．４についてのクラスＩＤを作成することができるかどうかが検査され、作成することができる場合、ＷＭＰバージョンは、６．４に設定され、作成することができない場合には、次いでこのプロセスは、ステップ４４９へと進む。ここで、ＷＭＰオブジェクトを作成することができるかどうかが検査され、作成することができる場合には、ＷＭＰバージョンはイエス（yes）に設定され、作成することができない場合には、次いでＷＭＰバージョンは、ノーに設定され、どちらの場合にもこのプロセスは、図４Ｃに示されるリアルプレーヤ検出へと進む。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００９１
【補正方法】変更
【補正の内容】
【００９１】
ステップ４４２においてアクティブエックスがこのクライアント・ブラウザ上で使用可能であるかどうかについて検査した結果が、使用可能でない場合には、次いでこのプロセスは、ステップ４５２へと進む。ステップ４５２において、ＭＩＭＥタイプapplication/x-ms-wmdがプラグインによって登録されているかどうかが検査される。登録されている場合、次いでＷＭＰバージョンは、バージョン７に設定され、このＷＭＰ検出プロシージャが終了される。登録されていない場合には、次いでステップ４５３において、ＭＩＭＥタイプapplication/x-ms-wmvがプラグインに登録されているかどうかが検査される。登録されている場合、次いでＷＭＰバージョンは、バージョン６．４に設定され、このサブルーチンが終了される。登録されていない場合には、次いでステップ４５４においてＭＩＭＥタイプapplication/x-msplayer2がプラグインに登録されているかどうかが検査される。登録されている場合、次いでＷＭＰバージョンは、イエスにセットされ、登録されていない場合には、次いでＷＭＰバージョンは、ノーに設定され、どちらの場合にもこのプロセスは、リアルプレーヤ検出へと進む。
【手続補正１８】
【補正対象書類名】明細書
【補正対象項目名】０１０３
【補正方法】変更
【補正の内容】
【０１０３】
図５Ｂは、本発明の一実施形態による帯域幅検出方法を一般的に示すフロー・チャートである。この実施形態において、サブルーチンが、ステップ５５０から開始され、ステップ５５２へと進んで、例えば以前の帯域幅検出またはそれ以外の方法から決定される、推定帯域幅情報をフェッチする。ステップ５５４において、十分な分解能を伴う接続速度を割り出すために、すなわちこの推定された帯域幅情報を使用して、データを取得する推定時間が特定される。ここで、この理由としては、本発明者等がこのタイミング・ブロック・サイズまたはチャンク・サイズがこのステップのこれらの結果に基づいて選択されることを望み、本発明者らが、この推定時間が、許容可能な分解能の範囲内で帯域幅情報を特定することができる最小時間に比べて短くはなく、かつ長すぎないことを望むからである。例えば、この推定時間が、低速の接続速度を有するクライアントに対してあまりにも長すぎるとしたら、ひいてはこの帯域幅測定は、このユーザにとって、いらだたしい、必要とされない遅延を伴うことになるであろう。また一方、例えば非常に高速の接続速度を有するクライアントに対して、この推定された時間があまりにも短い場合には、この特定におけるエラーは、あまりにも大きすぎるか、またはエラーの許容可能なマージンの範囲を超えてしまうことになる。
【手続補正１９】
【補正対象書類名】明細書
【補正対象項目名】０１４５
【補正方法】変更
【補正の内容】
【０１４５】
図９は、本発明の一実施形態による例示のクライアント環境変数タイプを示す表である。この好ましい実施環境のシステムは、ＯＳ（operating systemオペレーティング・システム）バージョン、ウェブ・ブラウザ・バージョン、ハードウェア・プラットフォームおよびユーザ・インターフェース言語を含めてクライアント・システムのさらなる特性を特定することができる。この機能は、どのタイプのＯＳ、例えばＷｉｎｄｏｗｓ、ＭａｃまたはＬｉｎｕｘがこのクライアント・マシン上で使用されているかを識別する有利な機能を含むシステム以上にさらに有利な改善となっている。例えば、たとえこのシステムがＷｉｎｄｏｗｓを使用していることが既知であったとしても、このクライアントが実際に有するよりも新しいバージョンを仮定すると、このメディア・ストリームに完全な障害をもたらす可能性があり、またもっと以前のバージョンであるという保守的な仮定が、効率の悪さをもたらす可能性もある。
【手続補正２０】
【補正対象書類名】明細書
【補正対象項目名】０１４６
【補正方法】変更
【補正の内容】
【０１４６】
すなわちこのメディア・コンテンツが供給され、初期設定のＯＳバージョンとしてＷｉｎｄｏｗｓ  ＸＰ（登録商標）を有し、そのブラウザ・バージョンとしてナビゲータ３．０（Navigator 3.0）を有し、ペンティアム（登録商標）４（Pentium（登録商標） 4）処理チップがインストールされ、そのユーザ・インターフェース言語としてナビゲータ３．０についてのジャバスクリプトを使用するように構成されたソース・タイプ８１０についての一実施例が提供されている。これらのソース・タイプは、本明細書中の一実施形態に従って記述されるクライアント・コンフィギュレーションの特定と同様に提供されるか、または特定されることができる。次いで、宛先タイプ８５０は、Ｍａｃ  ＯＳ  Ｘオペレーティング・システム、Ｏｍｎｉｗｅｂ４．１ウェブ・ブラウザ・バージョン、Ｇ３プロセッサ・チップ、およびＯｍｎｉｗｅｂ４．１についてのユーザ・インターフェース言語ＸＳＬＴであるものとして示されている。宛先タイプ８５０が本明細書中の一実施形態に従ってリモートに特定され、ソース・タイプ８１０も特定された後に、次いで参照により本明細書に組み込まれている米国特許出願第１０／６４４６０２号に好ましく説明されていることなどもある有利なトランスコーディング・プロセスを使用して、これらの異なるタイプのハードウェアおよびソフトウェアが使用されているにもかかわらず、このソースからこの宛先へと提供されるメディア・コンテンツをストリーミングすることができる。