特許拒絶査定不服審判
2023-013775
高帯域幅ネットワークでのデータのバッファリング
- 審判番号
- 2023-013775
- 法域
- 特許
- 審判種別
- 拒絶査定不服審判(拒絶査定不服の審決)
- 出願番号
- 特願2021-170653
- 請求日
- 2023年08月16日
- 審決日
- 2024年12月17日
- 公報発行日
- 2025年02月28日
- 結論
- 原査定取消(特許/登録すべき)
- 当事者
- 【請求人】ディズニー エンタープライゼス インコーポレイテッド
- 【請求人代理人】安齋 嘉章
- 審判長/審判官
- 審判長 山澤 宏
- 審判官 北元 健太
- 審判官 富澤 哲生
- 分類
- P18 .113-WY (H04L) / P18 .121-WY (H04L)
- 条文(本文から自動抽出・参考)
- 特許法第29条第2項、特許法第29条第1項第3号
- データ出所
- 審決公報(XML)
事件の表示
特願2021-170653「高帯域幅ネットワークでのデータのバッファリング」拒絶査定不服審判事件〔令和4年5月18日出願公開、特開2022-75540、請求項の数(20)〕について、次のとおり審決する。
結論
結 論
原査定を取り消す。
本願の発明は、特許すべきものとする。
理由
理 由
第1 手続の経緯
本願は、令和3年10月19日(パリ条約による優先権主張 2020年11月4日(以下「優先日」という。)米国)の外国語書面出願であって、その手続の経緯の概略は次のとおりである。
令和3年10月19日 翻訳文の提出
令和4年11月 1日付け 拒絶理由通知書
令和5年 2月24日 意見書、手続補正書の提出
令和5年 4月19日付け 拒絶査定
令和5年 8月16日 審判請求書、手続補正書の提出
令和6年 5月10日付け 拒絶理由通知書
令和6年11月10日 意見書、手続補正書の提出
第2 原査定の概要
原査定(令和5年4月19日付け拒絶査定)の概要は、次のとおりである。
1 理由1(新規性)
本願の請求項21に係る発明は、以下の引用文献Aに記載された発明であるから、特許法第29条第1項第3号に該当し、特許を受けることができない。
2 理由2(進歩性)
本願の請求項21に係る発明は、以下の引用文献Aに基づいて、請求項1-4,9-12,15-18,20に係る発明は、以下の引用文献A-Bに基づいて、請求項5,13,19に係る発明は、以下の引用文献A-Cに基づいて、請求項6-7,14に係る発明は、以下の引用文献A-B,Dに基づいて、請求項8に係る発明は、以下の引用文献A-B,Eに基づいて、その発明の属する技術の分野における通常の知識を有する者(以下「当業者」という。)が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
3 引用文献等一覧
A.特表2011-523298号公報
B.特開2012-80417号公報
C.特表2006-508621号公報
D.特表2015-515788号公報
E.特表2020-511811号公報
第3 当審拒絶理由の概要
令和6年5月10日付けで当審が通知した拒絶理由(以下「当審拒絶理由」という。)の概要は、次のとおりである。
1 理由1(進歩性)
本願の請求項21に係る発明は、以下の引用文献1に基づいて、請求項1-4,9-12,15-18,20に係る発明は、以下の引用文献1-2に基づいて、請求項5,13,19に係る発明は、以下の引用文献1-3に基づいて、請求項6-7,14に係る発明は、以下の引用文献1-2,4に基づいて、請求項8に係る発明は、以下の引用文献1-2,5に基づいて、当業者が容易に発明をすることができたものであるから、特許法第29条第2項の規定により特許を受けることができない。
2 引用文献等一覧
1.特表2011-523298号公報(原査定の引用文献A)
2.特開2012-80417号公報(原査定の引用文献B)
3.特表2006-508621号公報(原査定の引用文献C)
4.米国特許出願公開第2013/0262694号明細書
5.特表2020-511811号公報(原査定の引用文献E)
第4 本願発明
本願の請求項1-20に係る発明(以下、それぞれ「本願発明1」-「本願発明20」という。)は、令和6年11月10日付けの手続補正で補正された特許請求の範囲の請求項1-20に記載された事項により特定される発明であり、次のとおりの発明である。
「 【請求項1】
デバイスによって、第1のデータストリームに関連するデータの第1部分を第1ダウンロード速度でバッファにダウンロードする工程と、
バッファからデータの第1部分を出力する工程と、
デバイスは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断したことに応答して、
データの1つ以上の後続の部分にキャッシュを使用することを決定し、
同一の第1のデータストリームに関連するデータの第2部分をキャッシュにダウンロードする工程と、
バッファが空であると、判断すると、キャッシュからデータの第2部分を出力する工程とを含み、
データをダウンロードしているときにキャッシュを拡張することができ、データのダウンロードが切断された場合でもキャッシュはダウンロードされたデータを出力可能な方法。
【請求項2】
デバイスは第2ダウンロード速度でデータをダウンロードしていないと、判断すると、データの第3部分をバッファにダウンロードする工程をさらに含む、請求項1に記載の方法。
【請求項3】
データの第1及び第2部分は、第1データストリームに関連付けられたデータの複数の部分であり、
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断すると、データの複数の部分からデータの後続の部分をすべてキャッシュにダウンロードする工程をさらに含む、請求項1に記載の方法。
【請求項4】
データの複数の部分のすべてがキャッシュにダウンロードされたと、判断すると、
第1データストリームに少なくとも部分的に基づいて第2データストリームを識別し、
第2データストリームに関連付けられたデータの少なくとも一部をキャッシュにダウンロードする工程をさらに含む、請求項3に記載の方法。
【請求項5】
デバイスは第1ネットワークを使用してデータの第1部分をダウンロードし、
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断する工程は、デバイスは第2ネットワークを使用してデータのダウンロードを開始したと、判断する工程を含んでいる、請求項1に記載の方法。
【請求項6】
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断する工程は、第1ダウンロード速度と比較して、第2ダウンロード速度は所定の閾値を超えていると、判断する工程を含んでいる、請求項1に記載の方法。
【請求項7】
第2ダウンロード速度は所定の閾値を超えていると、判断する工程は、スライディングウィンドウを使用して第2ダウンロード速度を過去のダウンロード速度と比較する工程を含んでいる、請求項6に記載の方法。
【請求項8】
データの第2部分は第2ダウンロード速度でキャッシュにダウンロードされ、
データの第1部分及びデータの第2部分は両方とも複数のビットレートの第1ビットレートに関連付けられている、請求項1に記載の方法。
【請求項9】
コンピュータプログラムコードを含む非一時的なコンピュータ可読媒体であって、1つ以上のコンピュータプロセッサの動作によってコンピュータプログラムコードが実行された時に実行する動作は、
デバイスによって、第1のデータストリームに関連するデータの第1部分を第1ダウンロード速度でバッファにダウンロードする工程と、
バッファからデータの第1部分を出力する工程と、
デバイスは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断したことに応答して、
データの1つ以上の後続の部分にキャッシュを使用することを決定し、
同一の第1のデータストリームに関連するデータの第2部分をキャッシュにダウンロードする工程と、
バッファが空であると、判断すると、キャッシュからデータの第2部分を出力する工程とを含み、
データをダウンロードしているときにキャッシュを拡張することができ、データのダウンロードが切断された場合でもキャッシュはダウンロードされたデータを出力可能である、非一時的なコンピュータ可読媒体。
【請求項10】
前記動作は、
デバイスは第2ダウンロード速度でデータをダウンロードしていないと、判断すると、データの第3部分をバッファにダウンロードする工程をさらに含んでいる、請求項9に記載のコンピュータ可読媒体。
【請求項11】
データの第1及び第2部分は、第1データストリームに関連付けられたデータの複数の部分であり、
前記動作は、
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断すると、データの複数の部分からデータの後続の部分をすべてキャッシュにダウンロードする工程をさらに含んでいる、請求項9に記載のコンピュータ可読媒体。
【請求項12】
前記動作は、
データの複数の部分のすべてがキャッシュにダウンロードされたと、判断すると、
第1データストリームに少なくとも部分的に基づいて第2データストリームを識別し、
第2データストリームに関連付けられたデータの少なくとも一部をキャッシュにダウンロードする工程をさらに含んでいる、請求項11に記載のコンピュータ可読媒体。
【請求項13】
デバイスは第1ネットワークを使用してデータの第1部分をダウンロードし、
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断する工程は、デバイスは第2ネットワークを使用してデータのダウンロードを開始したと、判断する工程を含んでいる、請求項9に記載のコンピュータ可読媒体。
【請求項14】
デバイスは第2ダウンロード速度でデータをダウンロードしていると、判断する工程は、第1ダウンロード速度と比較して、第2ダウンロード速度は所定の閾値を超えていると、判断する工程を含んでいる、請求項9に記載のコンピュータ可読媒体。
【請求項15】
1つ以上のコンピュータプロセッサと、
プログラムを含むストレージ媒体であって、1つ以上のコンピュータプロセッサによってプログラムが実行された時に実行する動作は、
システムによって、第1のデータストリームに関連するデータの第1部分を第1ダウンロード速度でバッファにダウンロードする工程と、
バッファからデータの第1部分を出力する工程と、
システムは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断したことに応答して、
データの1つ以上の後続の部分にキャッシュを使用することを決定し、
同一の第1のデータストリームに関連するデータの第2部分をキャッシュにダウンロードする工程と、
バッファが空であると、判断すると、キャッシュからデータの第2部分を出力する工程とを含み、
データをダウンロードしているときにキャッシュを拡張することができ、データのダウンロードが切断された場合でもキャッシュはダウンロードされたデータを出力可能である、ストレージ媒体とを備えるシステム。
【請求項16】
前記動作は、
システムは第2ダウンロード速度でデータをダウンロードしていないと、判断すると、データの第3部分をバッファにダウンロードする工程をさらに含んでいる、請求項15に記載のシステム。
【請求項17】
データの第1及び第2部分は、第1データストリームに関連付けられたデータの複数の部分であり、
前記動作は、
システムは第2ダウンロード速度でデータをダウンロードしていると、判断すると、データの複数の部分からデータの後続の部分をすべてキャッシュにダウンロードする工程をさらに含んでいる、請求項15に記載のシステム。
【請求項18】
前記動作は、
データの複数の部分のすべてがキャッシュにダウンロードされたと、判断すると、
第1データストリームに少なくとも部分的に基づいて第2データストリームを識別し、
第2データストリームに関連付けられたデータの少なくとも一部をキャッシュにダウンロードする工程をさらに含んでいる、請求項17に記載のシステム。
【請求項19】
システムは第1ネットワークを使用してデータの第1部分をダウンロードし、
システムは第2ダウンロード速度でデータをダウンロードしていると、判断する工程は、システムは第2ネットワークを使用してデータのダウンロードを開始したと、判断する工程を含んでいる、請求項15に記載のシステム。
【請求項20】
メモリをさらに備え、
バッファはメモリの割り当てられた部分であり、
キャッシュはストレージ媒体の割り当てられた部分である、請求項15に記載のシステム。」
なお、請求項1,9,15には「ダウンロート」との記載があるが、通信の技術分野において「ダウンロート」は一般的な用語でなく、本願の明細書において「ダウンロート」の語は用いられておらず一貫して「ダウンロード」の語が用いられていることから、「ダウンロート」は「ダウンロード」の誤記と認め、本願発明1,9,15を上記のように認定した。
第5 引用文献、引用発明等
1 引用文献1及び引用発明
(1)引用文献1の記載
当審拒絶理由に引用された引用文献1(原査定の引用文献A)には、次の事項が記載されている(下線は当審による。以下同様。)。
ア 「【0013】
1つまたは複数の実施形態によれば、移行モジュール118はストリーミング待ち行列116と対話し、第1のビットレートでのメディアのストリームから第2のビットレートでのメディアのストリームに移行できる。たとえば、および制限なく、第1のビットレートでのメディアのストリームが、600kbpsで符号化されたビデオクリップであることがあり、一方、第2のビットレートでのメディアのストリームが、900kbpsで符号化された同じクリップであることがある。したがって、質(ピクセル、解像度、音声圧縮等)は異なる可能性があるが、そのメディアのストリームのコンテンツは同じである可能性がある。移行モジュール118によって、ホスト102は、ユーザ108へのプレイバックのために中断されないまたは実質的に中断されない、クライアント104へのメディアのストリームを維持しながら、第1ビットレートでのメディアのストリームから第2のビットレートでのメディアのストリームへの連続ストリーミング移行を容易にさせることができる。」
イ 「【0028】
図3は、本開示のいくつかの実施形態に従って帯域幅を監視し、ビットレートを選択する実例となるプロセス300の流れ図である。プロセス300の動作を説明する順序は、制限として解釈されることを意図されておらず、プロセスを実施するために、任意の数の説明されるブロックが任意の順序で、および/または並列で結合できる。説明のために、プロセス300は、図1の環境100を参照して説明する。
【0029】
302で、ホスト102は、ネットワーク106を経由してクライアント104との接続を開始する。いくつかの実施形態では、ホスト102は、以前の帯域幅決定を使用してネットワーク接続を分析することによって、または他の既知の技法によって等、接続の帯域幅を決定できる。304で、ホスト102は、クライアント104に常駐する初期バッファを満たすために第1ビットレートでメディアをストリーミングできる。上記に説明したように、ホスト102は単一のコンテンツのために多くの異なるビットレートで符号化されたメディアのストリームを含むことができる。ストリーミングモジュール114は、中断されないまたは実質的に中断されないメディアのストリームを維持しつつ、最高品質のメディアを提供するために、クライアント104へストリーミングのためのメディアの考えられる最高のビットレートを選択できる。いくつかの実施形態では、第1のメディアのストリームは、メディアの中断されないまたは実質的に中断されないストリーミングを保証するために、相対的に低いビットレート値を含むことがある。たとえば、ホスト102がそのメディアのストリームの4つの符号化ビットレートバージョンを有する場合、ホストは、動作304の間にクライアント104へ最低のまたは2番目に低いメディアのビットレートストリームを送信できる。初期バッファは、メディアの第1のストリームの時間またはデータサイズに基づいた所定の容量を含むことができる。いくつかの実施形態では、初期バッファは第1のメディアのストリームの2秒から5秒を含むことがある。一方、他の量のストリーミングメディアは、メディアのタイプ(たとえば音声および/またはビデオ)およびメディアの解像度(たとえば低解像度、高解像度等)に応じて初期のバッッファに記憶できる。
【0030】
いくつかの実施形態では、ホスト102は304で、クライアント104とのネットワーク接続の帯域幅を計算できる。たとえば、ホスト102は、クライアント104が既知のデータサイズをもつ初期バッファを充填するためにどのくらいの時間を要するのかを決定できる。計算された帯域幅は、以下により詳細に説明する、第2のビットレートを選択するために使用できる理想的なビットレートを決定するために使用できる。
【0031】
1つまたは複数の実施形態によれば、306で、第1のメディアのストリームがユーザ108に出力される。たとえば、クライアント104は、いったん初期バッファが容量まで充填されると、初期バッファ内に記憶されるデータを使用して第1のメディアのストリームを再生できる。いくつかの実施形態では、クライアント104は、初期バッファがいっぱいになるまでメディアを再生できず、それによってユーザがプレゼンテーションアプリケーション128上での中断されないまたは実質的に中断されないメディアのストリーミングを経験することを保証する。したがって、初期バッファのサイズは、いったんユーザがメディアのストリームの出力の受信を開始すると、ユーザ108によってメディアの中断されないまたは実質的に中断されないメディアのストリーミングの受信を保証するために選択される。
【0032】
308で、ホスト102は、クライアント104の上に常駐するより大きいバッファを充填するために、第1のビットレートでメディアをストリーミングできる。そのより大きいバッファは、初期バッファとしてデータを記憶するが、より大きい容量をもつ同じバッファであることがある。たとえば、初期バッファは、ストリームが動作306でいつ再生できるのかを示すための閾値決定であることがある。代わりに、そのより大きいバッファは、初期バッファとは異なるバッファであることもある。構成に関わらず、初期バッファおよびより大きいバッファは、クライアント104がユーザに中断されないまたは実質的に中断されないメディアのストリームを提供できるようにする。動作304と同様に、ホスト102は、308でクライアント104とのネットワーク接続の帯域幅を計算できる。プロセス300のいくつかの実施形態では、帯域幅は、動作304、動作308または両方で計算できる。
【0033】
310で、ホスト102は、上記に説明したように、バッファ充填速度の測定に加えて、またはバッファ充填速度を測定することなく、システム帯域幅チェックを使用して帯域幅を周期的に計算できる。たとえば、ホスト102は、クライアント104に既知のデータサイズを有するデータのパケットを送信できる。クライアント104は、そのデータのパケットのそれぞれを受信すると、ホスト102にメッセージを返し、したがってホストがホストとクライアントの間のネットワーク接続の帯域幅を計算できるようにする。帯域幅を計算する他の既知の技法は、ホスト102によって使用され得る。帯域幅の計算は、周期的に、または所定のイベントの後に固定された間隔で発生できる。たとえば、帯域幅の計算は毎秒1回または複数回発生し、ネットワーク帯域幅を連続して監視できる。
【0034】
1つまたは複数の実施形態によれば、ホスト102は、312でストリームのビットレートを加速するかどうかを決定する。ビットレートは、測定された帯域幅がメディアの使用可能なより高いビットレートストリームをサポートする場合、加速できる。312で決定されるようにより高いビットレートが実現可能である場合、ホスト102は、ステップ314でバッファ充填レベルのステータスを決定できる。たとえば、クライアント104はより大きいバッファのバッファ充填レベルを監視できる。より大きいバッファが低充填レベルまたは削減充填レベルを含む場合は、バッファは最終的に空で実行し、メディアのストリームの望ましくない中断を引き起すことがある。バッファ充填レベルが相対的に低い場合、プロセス300は、316で、ビットレートを減速することを先制して決定できる。
【0035】
いくつかの実施形態では、バッファ充填レベルは、ウォーターマークと呼ばれる所定の最小閾値を有することがある。ホスト102は、クライアント104を介してバッファ充填レベルを監視し、いつバッファ充填レベルがウォーターマークを下回るのかを判定する。いくつかの実施形態では、ヒューリスティックモジュール120がバッファの活動の統計分析を実施し、バッファの充填レベルがゼロバイトに近づく可能性があるかどうかを判定する。たとえば、クライアントは、バッファ充填レベルがウォーターマークを下回った後に、バッファの充填レベルの連続スナップショットとして周期的なサンプルを採取できる。バッファ充填レベルの減少を示す連続周期サンプルは、クライアント104への減速されたビットレートストリームのストリーミングを開始するためにホスト102を始動できる。しかし、統計分析が、バッファ充填レベルが空で動作しないと判定した場合、ビットレートは変化しないままとなることがあり、プロセス300は、動作306において等、第1のビットレートでストリーミングを続行できる。
【0036】
318で、ホスト102は、バッファ126の内の1つで記憶し、初期バッファを充填するために、クライアント104への新しいビットレートを有するメディアをストリーミングできる。新しいビットレートは、他の考えられる要因の中でもホスト102とクライアント104の間のネットワーク接続の帯域幅に基づいて、図1のヒューリスティックモジュール120によって選択され得る。たとえば、ホスト102は、帯域幅がより高いビットレートをサポートできる(つまり、動作312での決定が「はい」である)のか、または帯域幅が現在のストリームビットレートをサポートできず、ビットレートを引き下げる必要がある(つまり、動作316での決定が「はい」である)のかを判定できる。
【0037】
いくつかの実施形態では、ヒューリスティックモジュール120は、メディアの高品質を維持しつつ、ユーザ108へのメディアの中断されないまたは実質的に中断されないストリーミングを提供するために、ストリームにとって最も適した使用可能なビットレートを選択できる。たとえば、ホスト102は、A、B、C、DおよびEとして示される5つの異なるビットレートで符号化される1個のメディアを含むことがあり、その場合「A」が最低のビットレートで、「E」が最高のビットレートである。クライアント104は、最初に306でビットレート「C」でストリームを再生できる。次に、バッファ充填レベルが、ウォーターマークを下回ることがある。ヒューリスティックモジュール120は、ビットレートが、動作304、308、および310の内の1つまたは複数で測定された帯域幅に基づいて、ビットレート「A」またはビットレート「B」のどちらかに調整されるべきであると判定できる。いくつかの実施形態では、ヒューリスティックモジュール120は、新しいビットレートを選択するために使用できる理想的なビットレートを選択的に決定できる。その新しいビットレートは、使用できる次の大きさのビットレート(現在のビットレートよりも高いか、または低いかのどちらか)ではないことがあり、したがってホスト102は次に高いまたは次に低いビットレートを有さない別のビットレートにジャンプできる。
【0038】
320で、いったん初期バッファがいっぱいになると、クライアント104は新しいビットレートを有するメディアの新しいストリームを再生する。322で、308での動作と同様に、より大きいバッファがその新しいビットレートを有するストリーミングメディアで充填される。プロセス300では、無期限に帯域幅の監視および動作310~322でのビットレートへの調整を続けることができる。」
ウ 「【図3】
[図:0001418789000001.jpg]
」
(2)引用発明
上記(1)から、特に下線を付した記載に着目すると、引用文献1には次の発明(以下「引用発明」という。)が記載されていると認められる。
「接続の帯域幅を決定でき、
クライアント104に常駐する初期バッファを満たすために第1ビットレートでメディアをストリーミングでき、
初期バッファ内に記憶されるデータを使用して第1のメディアのストリームを再生でき、
ホスト102は、クライアント104に既知のデータサイズを有するデータのパケットを送信でき、クライアント104は、そのデータのパケットのそれぞれを受信すると、ホスト102にメッセージを返し、したがってホストがホストとクライアントの間のネットワーク接続の帯域幅を計算でき、
ストリームのビットレートを加速するかどうかを決定し、ビットレートは、測定された帯域幅がメディアの使用可能なより高いビットレートストリームをサポートする場合、加速でき、
初期バッファを充填するために、クライアント104への新しいビットレートを有するメディアをストリーミングでき、
初期バッファがいっぱいになると、クライアント104は新しいビットレートを有するメディアの新しいストリームを再生する
プロセス300であって、
第1のビットレートでのメディアのストリームが、600kbpsで符号化されたビデオクリップであり、第2のビットレートでのメディアのストリームが、900kbpsで符号化された同じクリップである、
プロセス300。」
2 引用文献2-5,D
(1)引用文献2の記載
当審拒絶理由に引用された引用文献2(原査定の引用文献B)には、次の事項が記載されている。
ア 「【0102】
図2において、コンテンツ再生装置100は、制御部110、プロトコル生成部120、送信部130、受信部140、受信データ処理部150、HDD160、高速メモリ170及び再生部180を備えた、本発明に係る「ストリーミング再生装置」の一例である。」
イ 「【図2】
[図:0001418789000002.jpg]
」
ウ 「【0117】
<ストリーミング再生制御の詳細>
次に、図3を参照し、ストリーミング再生制御の詳細について説明する。ここに、図3は、ストリーミング再生制御のフローチャートである。尚、本実施例では、データ提供ノード300が再生すべきコンテンツに係るコンテンツデータを全て保持しているものとする。
【0118】
図3において、制御部110は、準備処理(ステップS100)、初期フラグメント処理(ステップS200)、並列フラグメント処理(ステップS300)及び受信後処理(ステップS400)の順で順次各サブルーチンを実行する。受信後処理が終了すると、ストリーミング再生制御は終了する。
【0119】
<準備処理の詳細>
次に、図4を参照し、準備処理の詳細について説明する。ここに、図4は、準備処理のフローチャートである。
【0120】
図4において、制御部110は、ノード情報を取得する(ステップS101)。
【0121】
ここで、ノード情報とは、データ提供ノード300のIPアドレス、保持するフラグメントの情報及び各種ハードウェア性能に関する情報(CPUの処理速度やメモリの情報)等を意味する。ノード情報は、データ提供ノード300自身が保持しており、制御部110は、データ提供ノードに対してこれらの情報の提供を要求することができる。要求に応じてこれらの情報が提供されると、制御部110は、これらを順次受信データ解析部150を介して解析し、ノード情報としてRAMに格納する。
【0122】
次に、制御部110は、コンテンツ情報を取得する(ステップS102)。本実施例において、コンテンツ情報とは、コンテンツの再生速度P(byte/sec)及びコンテンツサイズN(byte)であるとする。ステップS102は、コンテンツの状態を特定する旨の、本発明に係る「第3特定手段」の動作の一例である。尚、この際、制御部110は、送信部130を介して、コンテンツ情報の送信を促すリクエストを送信し、受信部140を介し、当該リクエストに応じてデータ転送ノード300から送信されるコンテンツ情報を取得すると共に、その内容を受信データ解析部150により解析することによって、コンテンツ情報を取得し、RAMに格納する。
【0123】
次に、制御部110は、バッファ状態を取得する(ステップS103)。本実施例において、バッファ状態とは、HDD160及び高速メモリ170の空き容量及び負荷状態(ビジー状態)であるとする。ステップS103は、第1及び第2記憶装置の状態を特定する旨の、本発明に係る「第2特定手段」の動作の一例である。尚、HDD160及び高速メモリ170共にコンテンツ再生装置100の構成要素であるので、制御部110は、コンテンツ再生装置100の動作状態を制御する過程で常にこれらの情報を取得することができる。尚、先に述べた高速メモリ170の蓄積容量M(byte)とは、この段階でコンテンツの再生に供し得ると判断された空き容量であるとする。
【0124】
次に、制御部110は、ネットワーク状態を取得する(ステップS104)。本実施例において、ネットワーク状態とは、ネットワーク200を介したコンテンツ再生装置100とデータ提供ノード300との通信状態を意味し、より具体的には、コンテンツ再生装置100の受信帯域幅B(byte/sec)、データ提供ノード300の送信帯域幅C(byte/sec)、ネットワーク200の伝送遅延としてのRTT(Round Trip Time)及びTTL(Time To Live)であるとする。ステップS104は、ネットワークを介したデータ提供ノードとの間の通信状態を特定する旨の、本発明に係る「第1特定手段」の動作の一例である。
【0125】
尚、受信帯域幅B及び送信帯域幅Cは、コンテンツ再生装置100及びデータ提供ノード300における設定値である。また、RTTは、RTCP(Real-time Transport Control Protocol)のSR(Sender Report)やRR(Receiver Report)を利用する等して測定される。尚、各通信帯域幅については、ネットワーク200を介してランダムにデータの送受信を行った際のデータの実際の伝送状態に基づいて適宜推定されてもよい。
【0126】
ステップS101乃至S104において必要な情報を取得すると、制御部110は、コンテンツデータのフラグメントサイズを決定する(ステップS105)。ここで、本実施例におけるフラグメントサイズの決定方法について説明する。制御部110は先ず、コンテンツデータを、フラグメントN0、フラグメントN1及びフラグメントN2の三種類のフラグメントに分割する。即ち、下記(1)式が成立する。尚、下記(1)式において、N0、N1及びN2は、各フラグメントのデータ量(bit)を表すものとする。尚、フラグメントN0とフラグメントN1とにより、本発明に係る「フラグメントNa」が、フラグメントN2により本発明に係るフラグメントNbが、夫々構成される。
【0127】
N=N0+N1+N2・・・(1)
次に、制御部110は、フラグメントN0を下記(2)式に従って決定する。
【0128】
N0=min(M+(M-M0)/(B-P)×P,N)・・・(2)
ここで、(2)式右辺の左側の比較項のデータ量が、コンテンツサイズNよりも大きければ、N0=Nとなり、フラグメントN0とは即ちコンテンツデータそのものとなるが、通常、コンテンツサイズNは、高速メモリ170の蓄積容量Mよりも十分に大きいため、N0は、(2)式右辺の左側の比較項となる。
【0129】
尚、本実施例では、データ提供ノード300の送信帯域幅Cがコンテンツ再生装置100の受信帯域幅Bよりも十分に大きいものとし、これらの間の最大の転送速度は、受信帯域幅Bに等しいものとする。また、フラグメントN0の転送速度は、最大転送速度である受信帯域幅Bに相当する速度に、フラグメントN1の転送速度はコンテンツの再生速度Pに、フラグメントN2の転送速度は受信帯域幅Bから再生速度Pに相当する帯域幅を除く残余の帯域幅(即ち、B-Pである)に相当する速度に、夫々予め決定されている。
【0130】
尚、データ提供ノード300が単一のノードである場合、その送信帯域幅Cがコンテンツ再生ノード100の受信帯域幅B未満であれば、当然ながらこれらの間のデータ伝送速度は、送信帯域幅Cに律束される。
【0131】
次に、制御部110は、フラグメントN1及びN2を下記(3)及び(4)式に従って決定する。
【0132】
N1=(N-N0)/B×P・・・(3)
N2=(N-N0)/B×(B-P)・・・(4)
上記(3)式及び(4)式は、フラグメントN0を除いた残余のフラグメントを、フラグメントN1及びN2に割り当てられる受信帯域幅(即ち、転送速度である)の比率でフラグメントN1及びN2に割り当てることを意味している。別言すれば、本実施例において、フラグメントN1の取得完了タイミングと、フラグメントN2の取得完了タイミングとは、理想的には一致する。
【0133】
フラグメントサイズが決定されると、制御部110は、HDD160及び高速メモリ170に然るべきバッファ領域を確保して(ステップS106)、準備処理を終了する。
【0134】
<初期フラグメント処理の詳細>
次に、図5を参照し、初期フラグメント処理の詳細について説明する。ここに、図5は、初期フラグメント処理のフローチャートである。
【0135】
始めに、制御部110は、データ提供ノード300に対し、フラグメントN0を要求する(ステップS201)。この際、制御部110は、プロトコル生成部120を介して、先に決定されたフラグメントサイズをデータ提供ノード300に伝達するプロトコルを生成し、送信部130を介してデータ提供ノード300に送信する。このプロトコルには、フラグメントN0のデータサイズN0、コンテンツデータにおけるフラグメントN0の断片位置及びフラグメントN0を構成する各断片データの断片位置が記述されている。
【0136】
フラグメントN0の転送を要求すると、制御部110は、データ提供ノード300から要求に応じたフラグメントN0の転送が開始されるのを待ち、データ転送単位たる一パケットに収まる断片データサイズ毎に受信部140に到着するフラグメントN0を受信する(ステップS202)。受信されたフラグメントN0は、高速メモリ170に順次蓄積される(ステップS203)。このフラグメントN0の受信及び高速メモリ170への蓄積に係る処理は、データ提供ノード300からのフラグメントN0の転送が終了するまで継続する。
【0137】
尚、この段階でデータ提供ノード300に要求されるフラグメントはフラグメントN0のみであるから、フラグメントN0は、最大転送速度、即ち、この場合、コンテンツ再生装置100の受信帯域幅B全域を使用して取得される。
【0138】
一方、制御部110は、高速メモリ170へのフラグメントN0の蓄積と並行して、高速メモリ170に蓄積されたフラグメント量たるメモリキャッシュ量が、再生開始データ量M0よりも大きいか否かを判別する(ステップS204)。メモリキャッシュ量がM0以下である場合には(ステップS204:NO)、処理はステップS202に戻される。
【0139】
メモリキャッシュ量が再生開始データ量M0より大きい場合(ステップS204:YES)、制御部110は、高速メモリ170に蓄積されたフラグメントN0たるメモリキャッシュを、先頭データから順次読み出して再生する(ステップS205)。即ち、この段階で、コンテンツのストリーミング再生が開始される。
【0140】
コンテンツのストリーミング再生が開始されると、制御部110は、受信データ量がフラグメントN0のデータ量N0以上であるか否かを判別する(ステップS206)。受信データ量がN0未満であれば(ステップS206:NO)、処理はステップS202に戻され、受信データ量がN0以上であれば(ステップS206:YES)、即ち、高速メモリ170の蓄積容量Mに相当するフラグメントが蓄積されると、初期フラグメント処理は終了する。
【0141】
<並列フラグメント処理の詳細>
次に、図6を参照し、並列フラグメント処理の詳細について説明する。ここに、図6は、並列フラグメント処理のフローチャートである。
【0142】
始めに、制御部110は、データ提供ノード300に対し、フラグメントN1及びN2を要求する(ステップS301)。この際、制御部110は、プロトコル生成部120を介して、先に決定されたフラグメントサイズをデータ提供ノード300に伝達するプロトコルを生成し、送信部130を介してデータ提供ノード300に送信する。このプロトコルには、フラグメントN1及びN2のデータサイズN1及びN2、コンテンツデータにおけるフラグメントN1及びN2の断片位置並びに各フラグメントにおける断片データの断片位置が記述されている。また、制御部110は、これと合わせて、フラグメントN1の転送速度をコンテンツの再生速度Pとし、フラグメントN2の転送速度を受信帯域幅Bから再生速度Pを除外した残余の帯域幅とする旨をデータ提供ノード300に対し指示する。
【0143】
制御部110は、フラグメントの受信が開始されると(ステップS302)、受信データ解析部150を介して、受信したフラグメントがフラグメントN1であるかフラグメントN2であるかを判別する(ステップS303)。
【0144】
受信したフラグメントが、フラグメントN1である場合(ステップS303:YES)、制御部110は、フラグメントを高速メモリ170に蓄積する(ステップS304)と共に、高速メモリ170からキャッシュを読み出して、メモリキャッシュを再生速度Pで再生する(ステップS306)。即ち、高速メモリ170には、再生速度Pでフラグメントが読み出される一方で、再生速度Pでフラグメントが書き込まれる。従って、高速メモリ170に蓄積されているフラグメント量は、基本的に蓄積容量Mに維持される。
【0145】
一方、受信したフラグメントがフラグメントN2である場合(ステップS303:YES)、制御部110は、受信したフラグメントをHDD160に蓄積する(ステップS305)。
【0146】
ステップS305又はステップS307が実行されると、制御部110は、ストリーミング再生制御の開始時点以降に受信されたデータ量たる受信データ量が、コンテンツサイズN以上であるか否かを判別する(ステップS307)。尚、上記(1)式の関係に鑑みれば、ステップS307に係る判別処理は、フラグメントN1及びN2の取得が完了したか否かを意味する。
【0147】
受信データ量がN未満であれば(ステップS307:NO)、制御部110は、処理をステップS302に戻し、一連の処理を繰り返す。一方、受信データ量がN以上である場合(ステップS307:YES)、並列フラグメント処理は終了する。
【0148】
<受信後処理の詳細>
次に、図7を参照し、受信後処理の詳細について説明する。ここに、図7は、受信後処理のフローチャートである。
【0149】
図7において、制御部110は、ネットワーク200を介したデータ提供ノード300との通信回線を切断する(ステップS401)。続いて、高速メモリ170から蓄積されたフラグメントであるメモリキャッシュを読み出して再生する(ステップS402)。尚、ステップS402は、ステップS306から継続される処理である。ここで、ステップS402における再生処理は、ステップS306に係る処理と違い、新たなフラグメントの書き込みを伴わない。従って、ステップS402の実行過程においては、高速メモリ170のフラグメント蓄積量は、蓄積容量Mから再生速度Pで漸減する。
【0150】
制御部110は、メモリキャッシュが漸減した結果、メモリキャッシュ量がゼロとなったか否かを判別する(ステップS403)。メモリキャッシュ量がゼロでなければ(ステップS403:NO)、即ち、フラグメントN2よりも再生順序が早いフラグメントが未だ高速メモリ170に残存していれば、制御部110は、メモリキャッシュの再生を継続する。
【0151】
一方、メモリキャッシュ量がゼロとなった場合(ステップS403:YES)、制御部110は、HDD160に蓄積されたフラグメントN2、即ち、HDDキャッシュを順次読み出して再生する(ステップS404)。HDDキャッシュの再生が開始されると、制御部110は、HDDキャッシュの再生が終了したか否かを判別し(ステップS405)、再生が終了していなければ(ステップS405:NO)、処理をステップS404に戻してフラグメントN2の再生を継続すると共に、再生が終了した場合には(ステップS405:YES)、受信後処理を終了する。」
エ 「【図3】
[図:0001418789000003.jpg]
【図4】
[図:0001418789000004.jpg]
【図5】
[図:0001418789000005.jpg]
【図6】
[図:0001418789000006.jpg]
【図7】
[図:0001418789000007.jpg]
」
(2)引用文献3の記載
当審拒絶理由に引用された引用文献3(原査定の引用文献C)には、次の事項が記載されている。
ア 「【0017】
図面において、複数の図面を通じて同様の参照数字は類似又は同一の要素を表す。次に特に詳細に図面を参照する。まず図1を参照すると、第3世代セルラ・セル(3Gセル)内のシステムアーキテクチャ10が、無線ネットワークで音声、データ、映像及びその他のサービスを統合するものについて例示的に示されている。システムアーキテクチャ10は、本発明による方法とシステムを使用する例示的なWLAN-UMTS環境として提示されている。当業者に知られているシステムアーキテクチャを構成する個々のブロックの構成要素の詳細は、本発明の理解に十分な程度にのみ詳細に説明される。
【0018】
本発明は、UMTSネットワーク12とWLAN無線ネットワーク14について例示的に説明される(例えばIEEE802.11とHIPERLAN2規格がこれらのネットワークにより使用されてもよい)。UMTS移動体ネットワーク12(例えば第3世代(3G)ネットワーク)は、ノードB11と無線ネットワークコントローラ(RNC:Radio Network Controller)9とを有する無線アクセスネットワーク(RAN:radio access network)8と通信する。WLAN(14)は、GGSN(GPRSゲートウェイ・サポート・ノード(GPRS Gateway Support Node))24を介してインターネット7を通じてUMTSネットワーク(12)に接続されてもよい。当業者にわかる通り、その他の接続も可能である。次にRAN8は、コアネットワーク(CN:Core Network)13に接続される。コアネットワーク(CN)13は、SGSN(サービスGPRSサポート・ノード(Serving GPRS Support Node))28のようなパケットベースのサービスと、回線ベースのサービスと、MSC(移動体交換センタ(Mibile Switching Center))21を通じたアクセスと、GGSN(ゲートウェイGPRSサポート・ノード(Gateway GPRS Support Node))24のような他のPLMN(公衆陸上無線ネットワーク(Public Mobile Land Network))へのゲートウェイとを有する。コアネットワーク13はまた、公衆電話交換ネットワーク(PSTN)5及びインターネット7との接続/インタフェースをサポートする。
【0019】
他の構成要素がUMTSネットワークに含まれてもよい。例えば、移動局(MS)40のホームロケーションを格納するホームロケーションレジスタ(HLR:Home Location Register)50が備えられてもよい。本発明により、ネットワーク12(例えばPLMN)が、ネットワークモジュール25を使用することにより、インターネットを通じて無線LAN14とインタフェース接続される。そのネットワークモジュール25は、WLANでのダウンロード用に格納される利用可能なコンテンツについてユーザに警告するために使用されてもよい。MS40はアクセスポイント30で接続し、MS40は無線アクセスネットワーク間をローミングしてもよい。
【0020】
ネットワークモジュール25は、WLAN内にいるユーザにダウンロードされることがあるコンテンツを格納するメモリを有する。ネットワークモジュール25は、ネットワーク間のインタフェースとしてセルラネットワークのセル内のWLANで提供されてもよく、又はネットワーク間に分散されてもよい。モジュール25は、WLANで利用可能なコンテンツについてユーザに警告し、ユーザがセルラネットワークへのアクセスを有する時にコンテンツに対して行われたユーザ要求を処理するために使用されてもよい。ネットワークモジュール25は、ユーザがWLANの受信可能領域にいる時に、WLANを通じてユーザにコンテンツを配信するために使用されてもよい。ネットワークモジュール25は、相互接続機能(IWF:interworking function)に実装されてもよく、又は相互接続機能として実装されてもよい。ネットワークモジュール25は、スタンドアローンユニットとして実装されてもよく、又はサービス提供するネットワーク間に分散されてもよい。
【0021】
一実施例において、モジュール25は、WLAN相互接続機能(IWF)を有してもよく、そのWLAN相互接続機能は、移動体がWLANアクセスポイント(AP)により認証されると移動体の存在を検出し、後述のパラメータに基づいて移動体用に保留しているコンテンツをダウンロードする。IWFの役割は、WLANとUMTSネットワークとの間の結合に基づく。IWFがUMTSのコアネットワークに接続する密結合では、IWFはUMTSセキュリティ機構を再利用するが、IWFがインターネットに直接接続する疎結合では、インターネットで暗号化パラメータを提供するために、IWFはGGSNとのセキュリティ機構を必要とする。IWFはまた、PLMNにより提示されたパラメータと移動体により提供されたパラメータを抽出し、正確な移動体にコンテンツのダウンロードを容易にするために、適応レイヤを必要とする。
【0022】
IWFとしてのモジュール25で本発明を例示的に説明するが、モジュール25は、IWFについてここに記載されている全ての機能と別のユニットとして実装されてもよい。
【0023】
WLAN14は、無線ユーザ装置(UE)又は移動局(MS)40がWLANにアクセス及び使用することを可能にするように提供された複数のアクセスポイント30を有する。本発明により、モジュール25はUMTSネットワーク12と相互作用し、WLAN環境とインタフェース接続する。モジュール25は、データパケットプロトコル及びネットワーク(例えばWLANやUMTS)間の他の通信を解釈するハードウェア及びソフトウェアを有する。
[UMTS-WLAN相互接続]
本発明は、UMTS及びWLAN(802.11とHIPERLAN2)無線ネットワーク環境で使用されてもよい。前述の通り、3G UMTS移動体は、ノードB11と無線アクセスコントローラ(RNC)9とを有する無線アクセスネットワーク(RAN)8と通信する。次にRAN8は、SGSN28(パケットベースのサービス)と、MSC(移動体交換センタ)21(回線ベースのサービス)と、GGSN24(他のPLMNへのゲートウェイ)とを有するコアネットワーク(CN)13に接続される。UMTSネットワークの欠点は、WLANと比較すると、高コストのスペクトルと低データレートである。従って、UMTS無線リソースを節約し、UMTS RANの効率を高めるために、UMTSを無許可の帯域の高データレートのWLAN(IEEE802.11やETSI Hiperlan2等)と交換することが有利である。これを達成するために、移動体端末は、UMTS UEとWLAN MSのプロトコルスタックを有する二重スタックを有する必要がある。二重プロトコルスタックにより、WLANプロトコルとUMTSプロトコルとの間のインタフェースがWLANとUMTSとの間のシームレスな通信を提供することが可能になる。この二重プロトコルスタックは、移動局がWLANでWLAN MSスタックを使用し、UMTSでUMTS UEスタックを使用するように実装されてもよい。」
イ 「【図1】
[図:0001418789000008.jpg]
」
(3)引用文献4の記載
当審拒絶理由に引用された引用文献4には、次の事項が記載されている。
ア 「[0027] FIG. 2 illustrates an example buffer configuration and data flow among buffers of an application and decoder of a device (e.g., client device). As shown, audio buffer (BA) 202, video buffer (BV) 204, multiplex 206, and multiplexed buffer (BM) 208 may reside in application 200, in some embodiments. Also as shown, decoder buffer (BD) 212 and decode 214 may reside in decoder 210, in some embodiments. Table 1 includes definitions and terms used herein.
TABLE 1
Parameters Definition
BA The buffer for storing audio fragments
BV The buffer for storing video fragments
BM The multiplexed buffer used for stored data after multiplexing data from BA and BV
BD The decoder buffer
BXTh The threshold of BX to request more data from the upstream buffer or the network.
FX The size of a fragment in bits
r The rate of movement of data from BM to BD in bits/second (bps)
fX The rate at which BX is filled up from the network in bps
bX The bitrate
(Bx)Max The maximum number of bits in buffer Bx during a fragment arrival time
J The network jitter handling capacity, where the network jitter is the variation in network bandwidth, which may be the number of seconds during which data does not arrive for an active HTTP request for media.
L The live latency, or the difference in time between the event and the playback of the frame that captures that event.
S The switching latency, or the difference in time between when the switch was issued and the playback of the first frame of the switched stream.」
(当審仮訳:
[0027]図2は、アプリケーションのバッファとデバイス(例えば、クライアントデバイス)のデコーダとの間の例示的なバッファ構成及びデータフローを示す。示されるように、オーディオバッファ(BA)202、ビデオバッファ(BV)204、多重化206、及び多重化バッファ(BM)208は、いくつかの実施形態では、アプリケーション200に常駐することができる。また、示されるように、デコーダバッファ(BD)212及びデコード214は、いくつかの実施形態において、デコーダ210に常駐し得る。表1は、本明細書で使用される定義及び用語を含む。
表1
パラメータ 定義
BA オーディオフラグメントを格納するバッファ
BV ビデオフラグメント格納用バッファ
BM BA及びBVからのデータを多重化した後、蓄積データに使用される多重化バッファ
BD デコーダバッファ
BXTh 上流バッファ又はネットワークにさらなるデータを要求するためのBXの閾値。
FX フラグメントのサイズ(ビット)
r BMからBDへのデータの移動速度(ビット/秒(bps))
fX BXがネットワークから充填されるレート(bps)
bX ビットレート
(Bx)Max フラグメント到着時間中のバッファBx内の最大ビット数
J ネットワークジッター処理能力、ここでネットワークジッターはネットワーク帯域幅の変動であり、メディアに対するアクティブなHTTPリクエストに対してデータが到着しない秒数であり得る。
L ライブ・レイテンシー、又はイベントが発生してからそのイベントをキャプチャしたフレームが再生されるまでの時間差。
S スイッチング・レイテンシー、又はスイッチが発行されてからスイッチングされたストリームの最初のフレームが再生されるまでの時間差。)
イ 「
[図:0001418789000009.jpg]
」
ウ 「[0052] In multi bitrate streaming, there may be multiple bitrates of the content available. If the fill rate is higher than the bitrate, there may be a residual amount of data in RM and BD after receiving one fragment completely. To analyze how fast the past fragments were downloaded, a sliding window of (BD)Δ can be maintained to make the decision of switching up or down. Each time the fill rate is higher than the corresponding bitrate, BD may go up by (BD)Δ. If it is consistently high for the sliding window, a decision to switch up can be made. Similarly, if (BD)Δ is low for a series of past fragment downloads in the sliding window, a decision to switch down can be made.」
(当審仮訳:
[0052]マルチビットレートストリーミングでは、コンテンツのビットレートが複数存在する場合がある。充填レートがビットレートより高い場合、1つのフラグメントを完全に受信した後、RMとBDにデータ量が残ることがある。過去のフラグメントのダウンロード速度を分析するため、(BD)Δのスライディング・ウィンドウを維持し、切上げ又は切下げの判断を行うことができる。充填レートが対応するビットレートより高くなるたびに、BDは(BD)Δだけ上昇する。スライディング・ウィンドウの間、常に高い場合、切上げの決定ができる。同様に、(BD)Δがスライディング・ウィンドウ内の一連の過去のフラグメントダウンロードにおいて低い場合、切下げの決定ができる。)
(4)引用文献5の記載
当審拒絶理由に引用された引用文献5(原査定の引用文献E)には、次の事項が記載されている。
ア 「【0006】
コンテンツ配信ネットワーク(CDN)は、世界中の種々の地点における異なる物理的データセンタで展開される、プロキシサーバのネットワークを指す。CDNは、コンテンツ配信のための増加された性能および可用時間を提供するために利用されることができる。本増加された性能は、世界中で同一コンテンツのコピーを伴う複数のサーバを有することによって達成され得る。ユーザが、コンテンツにアクセスすることを試みると、物理的により近いまたは少なくともより短い経由デジタルルーティングを有する、CDNが、より遠く離れた通常サーバより高速でコンテンツを配信することができる。静的ストリーミング状況では、これは、ストリーミングされるコンテンツが変化しないため、理想的である。しかしながら、ライブストリーミング状況では、理想的には、待ち時間が、コンテンツが最初にエンコードされ、次いで、CDNネットワークに配布される際に考慮される。加えて、同一コンテンツの複数のコピーを有することは、1つのサーバが、オフラインとなる、またはそうでなければコンテンツを配信する能力を損なわせ得る重いトラフィックを被るとき、コンテンツが利用不可能であろう尤度を減少させる。」
イ 「【0047】
(適応CDN切替システムにおけるコンテンツビットレートレベルの向上)
典型的ストリーミング用途では、単一CDNのみが、ストリーミングすべきコンテンツのセグメントを決定および選択するときに考慮される。しかしながら、本方法は、他のCDNプロバイダシステム上で利用可能なより高い品質またはより高速でアクセスされるコンテンツの可能性として考えられる可用性を考慮しない。適応CDN切替システムは、より高い帯域幅をユーザに提供する代替CDNシステムにおけるコンテンツのセグメントにアクセスすることによって、ストリーミングされるコンテンツの品質を増加させるために利用されることができる。
【0048】
本発明のある実施形態による、適応CDN切替システムにおいて使用するためのコンテンツビットレートレベルを増加させるためのプロセスが、図6に示される。プロセス600は、ダウンロードするために利用可能な利用可能なコンテンツの最高ビットレートレベルを決定してもよい(602)。代替CDN検索が生じるべきであるかどうかを決定するためのある条件の評価(604)が、行われてもよい。本発明のある実施形態では、これらの条件は、限定ではないが、最高ビットレートストリーミングが生じてから必要な持続時間および十分なバッファの量を有することを含んでもよい。条件が満たされる場合、代替CDNプロバイダの検索(606)が、生じ得る。コンテンツセグメントが、次いで、代替CDNプロバイダからダウンロードされてもよい(608)。いくつかの実施形態では、ダウンロードされたコンテンツのビットレートレベルは、現在のCDNからダウンロードされたコンテンツの現在のビットレートレベルと同一であって、現在のCDNからダウンロードされたコンテンツと代替CDNとの間の顕著な切替を回避する。プロセス600は、次いで、代替CDNプロバイダからダウンロードされたコンテンツの瞬間帯域幅を現在のCDNプロバイダから提供されている帯域幅に対して評価してもよい(610)。必要な場合、代替CDNプロバイダへの切替(612)が、より高いビットレートレベルでエンコードされたコンテンツのダウンロードを可能にするために生じ得、これは、再生デバイスによってダウンロードおよび再生されるとき、より高い知覚品質のコンテンツに変換され得る。」
ウ 「【図6】
[図:0001418789000010.jpg]
」
(5)引用文献Dの記載
原査定の拒絶の理由に引用された引用文献Dには、次の事項が記載されている。
ア 「【0021】
本発明の方法は、バッファの枯渇のリスクを低減しつつネットワーク帯域幅の使用をより最適なものとするのに役立ちうる先進的なプロセスを提供する。予測アダプティブメディアストリーミングと呼ぶことのできるこの方法には、メディアの近づきつつある一連のセクションのそれぞれ(例えば、時間間隔(「時間限界」)またはデータ量間隔(「データ限界」))について、各VBRバージョンのどのビットレートがそのセクションにあるかを予測する過程と、およびそれらの予測ビットレートをネットワーク帯域幅との比較ポイントとして使用して、クライアントにストリーム配信されるVBRバージョンが選択されるようにする過程とが関与しうる。このプロセスは、メディア全体にわたり連続的なビットレート予測が提供されるように、また近づきつつあるビットレートの最新の予測をストリーム配信されるVBRバージョンの選択の基準として使用するように、スライディングウィンドウベースで(または代替的には、非重複(すなわち、相互排他的な)ウィンドウで)有利に反復されうる。
【0022】
図4は、各VBRバージョンの近づきつつあるビットレートが、30秒または5メガバイトのスライディングウィンドウ全体について、スライディングウィンドウに基づき近づきつつある平均ビットレートとして毎秒1回予測される、このプロセスの例の説明に役立つ。図4のグラフで、予測ビットレートは、各VBRバージョンを通して点線でプロットされており、バージョン毎のビットレート曲線を効果的に円滑なものとしている。任意の一時点において、VBRバージョン毎のこの予測ビットレートは、そのVBRバージョンでのメディアの近づきつつあるウィンドウについての平均ビットレートを表すものであり、よって、メディアコンテンツ全体にわたり近づきつつある平均ビットレートの変化に伴い、予測ビットレートはメディアコンテンツ全体で変化する。」
イ 「【図4】
[図:0001418789000011.jpg]
」
第6 対比及び判断
1 本願発明1について
(1)対比
本願発明1と引用発明を対比すると、次のことがいえる。
ア 引用発明の「クライアント104」は、本願発明1の「デバイス」に相当する。
引用発明において「決定」された「接続の帯域幅」は、本願発明1の「第1ダウンロード速度」に相当する。
引用発明の「初期バッファ」は、本願発明1の「バッファ」に相当する。
引用発明における「初期バッファを満たすため」の「ストリーミング」は、ストリーミングしたデータを初期バッファに記憶させるものと認められ、「決定」された「接続の帯域幅」で行われることが明らかであるから、本願発明1における「第1ダウンロード速度でバッファにダウンロードする」ことに相当する。
引用発明の「第1ビットレート」の「メディア」は、本願発明1の「データの第1部分」に相当する。
引用発明の「第1のビットレートでのメディアのストリーム」は、「第1のビットレート」が「第1ビットレート」を指すことは明らかであり、「第1ビットレート」の「メディア」と当然関連するから、本願発明1の「第1のデータストリーム」に相当する。
したがって、引用発明における「クライアント104に常駐する初期バッファを満たすために第1ビットレートでメディアをストリーミング」することは、本願発明1における「デバイスによって、第1のデータストリームに関連するデータの第1部分を第1ダウンロード速度でバッファにダウンロードする工程」に相当する。
イ 引用発明の「初期バッファ内に記憶されるデータ」は、上記アを踏まえると、第1ビットレートでメディアをストリーミングして初期バッファを満たすことにより、初期バッファに記憶されるに至ったものと認められるから、「第1ビットレート」の「メディア」と同一のものであり、本願発明1の「データの第1部分」に相当する。
したがって、引用発明における「初期バッファ内に記憶されるデータを使用して第1のメディアのストリームを再生」することは、本願発明1における「バッファからデータの第1部分を出力する工程」に相当する。
ウ 引用発明の「ホストとクライアントの間のネットワーク接続の帯域幅」は、周期的に計算されるものであり、変動があることを前提に当該周期的な計算が行われているものと認められるから、「決定」された「接続の帯域幅」から変動があった場合において、本願発明1の「第2ダウンロード速度」に相当する。
引用発明の「計算」は、「ホスト102」が「クライアント104に既知のデータサイズを有するデータのパケットを送信」し、「そのデータのパケット」を「受信」した「クライアント104」から返ってくる「メッセージ」を受信することによりなされており、クライアント104が既知のデータサイズを有するデータを受信するのに要する時間に基づいて「ホストとクライアントの間のネットワーク接続の帯域幅」を求めるものと認められるから、本願発明1における「デバイスは」「第2ダウンロード速度でデータをダウンロードしていると判断」することに相当する。
引用発明における「測定された帯域幅がメディアの使用可能なより高いビットレートストリームをサポートする場合」は、第1のビットレートでのメディアのストリームより高いビットレートストリームを測定された帯域幅がサポートする場合を指すことが明らかであり、上記アを踏まえると、「決定」された「接続の帯域幅」よりも「ホストとクライアントの間のネットワーク接続の帯域幅」が広い場合を指すものと認められるから、本願発明1における「第2ダウンロード速度」が「第1ダウンロード速度よりも速い」場合に相当する。
したがって、引用発明における「ホストとクライアントの間のネットワーク接続の帯域幅を計算」して「測定された帯域幅がメディアの使用可能なより高いビットレートストリームをサポートする場合」に「ストリームのビットレートを加速する」と「決定」することは、本願発明1における「デバイスは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断」することに相当する。
エ 引用発明の「新しいビットレートを有するメディア」は、本願発明1の「データの第2部分」に相当する。
引用発明の「第2のビットレートでのメディアのストリーム」は、「第2のビットレート」が「新しいビットレート」であることが明らかであり、「第1のビットレートでのメディアのストリーム」に係る「ビデオクリップ」と「同じクリップ」に係るものであるから、上記アを踏まえると、本願発明1の「同一の第1のデータストリーム」に相当する。
引用発明の「初期バッファを充填するため」の「ストリーミング」は、ストリーミングしたデータを初期バッファに記憶させるものと認められるから、本願発明1における「キャッシュにダウンロードする」ことと、「ダウンロードする」という限度で一致する。
してみれば、引用発明における「初期バッファを充填するために、クライアント104への新しいビットレートを有するメディアをストリーミング」することは、本願発明1における「データの1つ以上の後続の部分にキャッシュを使用することを決定し、同一の第1のデータストリームに関連するデータの第2部分をバッファにダウンロードする工程」と、「同一の第1のデータストリームに関連するデータの第2部分を」「ダウンロードする工程」である点で一致し、後記(2)イの点で相違する。
オ 引用発明における「新しいビットレートを有するメディアの新しいストリームを再生する」ことは、上記エを踏まえると、本願発明1の「バッファが空であると、判断すると、キャッシュからデータの第2部分を出力する工程」と、「データの第2部分を出力する工程」である点で一致し、後記(2)ウの点で相違する。
(2)一致点及び相違点
上記(1)から、本願発明1と引用発明の間には、次のアのとおりの一致点及びイ-エのとおりの相違点があるといえる。
ア 一致点
「デバイスによって、第1のデータストリームに関連するデータの第1部分を第1ダウンロード速度でバッファにダウンロードする工程と、
バッファからデータの第1部分を出力する工程と、
デバイスは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断したことに応答して、
同一の第1のデータストリームに関連するデータの第2部分をダウンロードする工程と、
データの第2部分を出力する工程とを含む、
方法。」
イ 相違点1
上記「デバイスは第1ダウンロード速度よりも速い第2ダウンロード速度でデータをダウンロードしていると判断したことに応答して」「同一の第1のデータストリームに関連するデータの第2部分をダウンロードする工程」において、本願発明1では、データの1つ以上の後続の部分にキャッシュを使用することを決定し、データの第2部分をキャッシュにダウンロードしているのに対し、引用発明では、キャッシュを使用することを決定しておらず、キャッシュでなく初期バッファを充填している点。
ウ 相違点2
上記「データの第2部分を出力する工程」において、本願発明1では、バッファが空であると、判断すると、キャッシュから出力をしているのに対し、引用発明では、初期バッファから再生している点。
エ 相違点3
本願発明1では、データをダウンロードしているときにキャッシュを拡張することができ、データのダウンロードが切断された場合でもキャッシュはダウンロードされたデータを出力可能であるのに対し、引用発明1では、データをダウンロードしているときにキャッシュを拡張することも、データのダウンロードが切断された場合にキャッシュがダウンロードされたデータを出力することも特定されていない点。
(3)相違点についての判断
事案に鑑みて、相違点3について先に検討する。
引用文献2には、上記第5の2(1)に摘記したとおり、準備処理において、コンテンツデータを、フラグメントN0、フラグメントN1及びフラグメントN2の三種類のフラグメントに分割し、初期フラグメント処理において、フラグメントN0は、高速メモリ170に順次蓄積され、並列フラグメント処理において、受信したフラグメントがフラグメントN2である場合、受信したフラグメントをHDD160に蓄積し、受信後処理において、通信回線を切断し、メモリキャッシュ量がゼロとなった場合、HDD160に蓄積されたフラグメントN2を順次読み出して再生するストリーミング再生制御が記載されている。しかしながら、引用文献2には、フラグメントを受信しているときにHDD160を拡張することは記載されておらず、本願発明1における「同一の第1のデータストリームに関連するデータの第2部分をキャッシュにダウンロードする」場合に「データをダウンロードしているときにキャッシュを拡張する」構成(以下「本件構成」という。)は、引用文献2に記載されていない。
また、本件構成は、引用文献3-5,Dにも記載されておらず、本願の優先日前における周知技術であったとも認められない。
したがって、相違点1及び2について判断するまでもなく、本願発明1は、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
2 本願発明2-8について
本願発明2-8は、本願発明1を減縮したものであり、本願発明1と同一の構成を備えるものであるから、本願発明1と同じ理由により、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
3 本願発明9について
本願発明9は、本願発明1に対応する非一時的なコンピュータ可読媒体の発明であり、本件構成に対応する構成を備えるものであるから、本願発明1と同様の理由により、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
4 本願発明10-14について
本願発明10-14は、本願発明9を減縮したものであり、本願発明9と同一の構成を備えるものであるから、本願発明9と同じ理由により、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
5 本願発明15について
本願発明15は、本願発明1に対応するシステムの発明であり、本件構成に対応する構成を備えるものであるから、本願発明1と同様の理由により、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
6 本願発明16-20について
本願発明16-20は、本願発明15を減縮したものであり、本願発明15と同一の構成を備えるものであるから、本願発明15と同じ理由により、当業者であっても、引用発明、引用文献2-5,Dに記載の発明に基づいて、容易に発明をすることができたものとはいえない。
第7 原査定について
上記第6のとおり、本願発明1-20は、原査定において引用された引用文献Aに記載された発明でなく、原査定において引用された引用文献A-Eに基づいて当業者が容易に発明をすることができたものでもない。
したがって、原査定を維持することはできない。
第8 当審拒絶理由について
上記第6のとおり、本願発明1-20は、当業者であっても、当審拒絶理由に引用された引用文献1-5に記載の発明に基づいて、容易に発明をすることができたものではない。
したがって、当審拒絶理由は解消した。
第9 むすび
以上のとおり、原査定の理由及び当審拒絶理由によっては、本願を拒絶することはできない。
また、他に本願を拒絶すべき理由を発見しない。
よって、結論のとおり審決する。
審決本文(J-PlatPat)
J-PlatPatの審決検索トップを開きます。番号入力で「審判番号」を選び、下の番号を貼り付けて検索してください。
J-PlatPat 審決検索を開く
2023-013775