(57)【要約】      （修正有）【課題】第２のワイヤレスコンピューティングデバイスに第１のワイヤレスコンピューティングデバイスのコンテンツを送信する。【解決手段】第１のワイヤレスコンピューティングデバイスは、ＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、ＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信することと、プレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することと、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目を記述する情報を送信することと、第２のワイヤレスコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することと、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信することと、を含む。【選択図】図８
2018113696.tif 000002
【特許請求の範囲】
【請求項１】
第２のワイヤレスコンピューティングデバイスに第１のワイヤレスコンピューティングデバイスのコンテンツを送信する方法であって、前記方法は、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信することであって、前記メディア項目を記述する前記情報を送信することが、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を備える、方法。
【請求項２】
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスに前記データを送信することが、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、請求項１に記載の方法。
【請求項３】
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、請求項１に記載の方法。
【請求項４】
前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信することをさらに備える、請求項１に記載の方法。
【請求項５】
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、請求項４に記載の方法。
【請求項６】
前記メディア項目を送信することが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して行われる、請求項４に記載の方法。
【請求項７】
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信することをさらに備える、請求項１に記載の方法。
【請求項８】
前記ＷＦＤ接続を介した前記データ送信と、前記メディア共有アプリケーションの前記実行が同時に行われる、請求項１に記載の方法。
【請求項９】
前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、およびファイル名のうちの少なくとも１つを含む、請求項１に記載の方法。
【請求項１０】
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記認証情報に基づいて前記ワイヤレスクライアントデバイスを認証することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントデバイスを認証したことに応答して前記ワイヤレスクライアントデバイスに前記プレイリストへのアクセスを許可することと
をさらに備える、請求項１に記載の方法。
【請求項１１】
前記メディア項目を送信することが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングすることを備える、請求項１に記載の方法。
【請求項１２】
前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記方法が、
前記第１のワイヤレスコンピューティングデバイスを用いて、第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
をさらに備える、請求項１に記載の方法。
【請求項１３】
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了すること
をさらに備える、請求項１２に記載の方法。
【請求項１４】
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行することが、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信すること
をさらに備える、請求項１に記載の方法。
【請求項１５】
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、請求項１に記載の方法。
【請求項１６】
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと
を行うように構成されたＷＩ−ＦＩディスプレイ（ＷＦＤ）モジュールと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信することであって、前記メディア項目を記述する前記情報の前記送信が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を行うように構成されたメディア共有モジュールと
を備える第１のワイヤレスコンピューティングデバイス。
【請求項１７】
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスへの前記データの前記送信が、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項１８】
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項１９】
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信するようにさらに構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２０】
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、請求項１９に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２１】
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して前記メディア項目を送信するように構成された、請求項１９に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２２】
前記ＷＦＤモジュールが、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信するようにさらに構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２３】
前記ＷＦＤ接続を介して送信される前記データと、前記メディア共有アプリケーションの前記実行が同時に行われる、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２４】
前記メディア項目の前記フォーマットを記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、およびファイル名のうちの少なくとも１つを含む、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２５】
前記メディア共有モジュールが、
前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記認証情報に基づいて前記ワイヤレスクライアントコンピューティングデバイスを認証することと、
前記ワイヤレスクライアントコンピューティングデバイスの前記認証に応答して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストへのアクセスを許可することと
を行うようにさらに構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２６】
前記メディア項目を送信するために、前記ＷＦＤモジュールが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングするように構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２７】
前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記ＷＦＤモジュールが、
第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
を行うようにさらに構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２８】
前記ＷＦＤモジュールが、
前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了する
ようにさらに構成された、請求項２７に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２９】
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行するために、前記メディア共有モジュールが、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信する
ようにさらに構成された、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項３０】
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、請求項１６に記載の第１のワイヤレスコンピューティングデバイス。
【請求項３１】
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始するための手段と、
前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信するための手段と、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行するための手段と、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信するための手段であって、前記メディア項目を記述する前記情報を送信するための前記手段が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信するための手段と、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信するための手段と
を備える第１のワイヤレスコンピューティングデバイス。
【請求項３２】
実行されたとき、１つまたは複数のプロセッサに、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目のフォーマットを記述する情報を送信することであって、前記メディア項目を記述する前記情報の前記送信が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を行わせる、命令を記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、その内容全体が参照により組み込まれる、２０１２年１月６日に出願された米国仮出願第６１／５８３，９８７号、および２０１２年２月１６日に出願された米国仮出願第６１／５９９，５６４号の利益を主張する。
【０００２】
本開示は、ワイヤレスソースデバイスと他のワイヤレスデバイスとの間でデータを送信するための技法に関し、より詳細には、ワイヤレスソースデバイスからワイヤレスシンクデバイスとワイヤレスクライアントデバイスとへのメディアデータの送信に関する。
【背景技術】
【０００３】
ワイヤレスディスプレイ（ＷＤ：wireless display）またはＷＩ−ＦＩ（登録商標）ディスプレイ（ＷＦＤ：WI-FI Display）システムは、ワイヤレスソースデバイスと１つまたは複数のワイヤレスシンクデバイスとを含む。ソースデバイスとシンクデバイスの各々とは、ワイヤレス通信機能をもつモバイルデバイスまたはワイヤードデバイスのいずれかであり得る。ソースデバイスとシンクデバイスとのうちの１つまたは複数は、たとえば、携帯電話、ワイヤレス通信カード付きのポータブルコンピュータ、携帯情報端末（ＰＤＡ）、ポータブルメディアプレーヤ、あるいはいわゆる「スマート」フォンおよび「スマート」パッドまたはタブレットを含む、ワイヤレス通信機能をもつ他のそのようなデバイス、あるいは他のタイプのワイヤレス通信デバイスを含み得る。ソースデバイスとシンクデバイスとのうちの１つまたは複数は、通信機能を含む、テレビジョン、デスクトップコンピュータ、モニタ、プロジェクタなど、ワイヤードデバイスをも含み得る。
【０００４】
ソースデバイスは、特定のメディア共有セッションに参加しているシンクデバイスのうちの１つまたは複数にオーディオビデオ（ＡＶ）データなどのメディアデータを送る。メディアデータは、ソースデバイスのローカルディスプレイとシンクデバイスのディスプレイの各々との両方において再生され得る。より詳細には、参加しているシンクデバイスの各々は、それのスクリーンおよびオーディオ機器上で、受信されたメディアデータをレンダリングする。
【０００５】
サーバコンピューティングデバイスも、様々なメディア共有プロトコルを使用してクライアントデバイスにメディア項目を与え得る。クライアントデバイスは、サーバコンピューティングデバイスに再生コマンドを発行し得る。再生コマンドを受信したことに応答して、サーバは、たとえばストリーミングを使用して、クライアントデバイスにメディア項目を送信し得る。
【発明の概要】
【０００６】
本開示では、概して、ワイヤレスソースデバイスとして構成された第１のワイヤレスコンピューティングデバイスが、ワイヤレスシンクデバイスとして構成された第２のワイヤレスコンピューティングデバイス、およびワイヤレスクライアントコンピューティングデバイスと通信することができる、システムについて説明する。通信セッションの一部として、ワイヤレスソースデバイスは、ワイヤレスシンクデバイスにオーディオおよびビデオデータを送信することができ、ワイヤレスシンクデバイスは、ワイヤレスシンクデバイスにおいて受信されたユーザ入力をワイヤレスソースデバイスに返信することができる。ワイヤレスソースデバイスはまた、第１のワイヤレスコンピューティングデバイスとワイヤレスクライアントコンピューティングデバイスとの間でメディア項目のプレイリストを共有することを可能にする、メディア共有アプリケーションを実行し得る。ワイヤレスクライアントコンピューティングデバイスは、ワイヤレスクライアントコンピューティングデバイスがどのメディア項目を出力することが可能であるかを判断し得る。第１のワイヤレスコンピューティングデバイスは、ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信し得、再生コマンドに応答してワイヤレスクライアントコンピューティングデバイスにメディア項目を送信し得る。
【０００７】
一例では、本開示では、第１のワイヤレスコンピューティングデバイスを用いて、ＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、第１のワイヤレスコンピューティングデバイスを用いて、第１のワイヤレスコンピューティングデバイスからＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信することと、第１のワイヤレスコンピューティングデバイスを用いて、第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、第１のワイヤレスコンピューティングデバイスを用いて、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目を記述する情報を送信することであって、メディア項目を記述する情報を送信することが、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、第１のワイヤレスコンピューティングデバイスを用いて、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信することとを含む、第２のワイヤレスコンピューティングデバイスに第１のワイヤレスコンピューティングデバイスのコンテンツを送信する方法について説明する。
【０００８】
別の例では、本開示では、第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、第１のワイヤレスコンピューティングデバイスからＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信することとを行うように構成されたＷＩ−ＦＩディスプレイ（ＷＦＤ）モジュールと、第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目を記述する情報を送信することであって、メディア項目を記述する情報の送信が、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信することとを行うように構成されたメディア共有モジュールとを含む、第１のワイヤレスコンピューティングデバイスについて説明する。
【０００９】
別の例では、本開示では、第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始するための手段と、ＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信するための手段と、第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行するための手段と、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目を記述する情報を送信するための手段であって、メディア項目を記述する情報を送信するための手段が、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせる、送信するための手段と、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信するための手段とを含む、第１のワイヤレスコンピューティングデバイスについて説明する。
【００１０】
別の例では、本開示では、コンピュータ可読記憶媒体について説明する。本コンピュータ可読記憶媒体は、実行時に、１つまたは複数のプロセッサに、第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、第１のワイヤレスコンピューティングデバイスからＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信することと、第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目のフォーマットを記述する情報を送信することであって、メディア項目を記述する情報の送信が、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信することとを行わせる、命令を記憶している。
【図面の簡単な説明】
【００１１】
【図１Ａ】本開示の技法を実装し得る、ソース／サーバデバイスを含むシステムとシンクデバイスシステムとの一例を示すブロック図。
【図１Ｂ】ソースデバイスとクライアントデバイスとを含むシステムの一例を示すブロック図。
【図１Ｃ】ソースデバイスと、シンクデバイスと、クライアントデバイスとを含むシステムの一例を示すブロック図。
【図２Ａ】メディア項目のプレイリストを示す概念図。
【図２Ｂ】メディア項目を含むプレイリストを示す概念図。
【図２Ｃ】メディア項目に関連する属性および値の例を示す概念図。
【図２Ｄ】メディア項目に関連する属性および値の例を示す概念図。
【図３】通信参照モデルの一例を示す概念図。
【図４】シンクデバイスにビデオおよび／またはアプリケーションデータを送信する技法を実装し得るソースデバイスの一例を示すブロック図。
【図５】ソースデバイスからビデオおよび／または他の情報を受信するための技法を実装するシンクデバイスの一例を示すブロック図。
【図６】本開示の技法を実装し得る送信機システムおよび受信機システムを示すブロック図。
【図７Ａ】ＷＩ−ＦＩディスプレイ（ＷＦＤ）機能ネゴシエーションを実行するための例示的なメッセージ転送シーケンスを示す図。
【図７Ｂ】ＷＩ−ＦＩディスプレイ（ＷＦＤ）機能ネゴシエーションを実行するための例示的なメッセージ転送シーケンスを示す図。
【図８】本開示の技法による、ＷＦＤを実行し、メディア項目を送信する方法を示すフローチャート。
【発明を実施するための形態】
【００１２】
ＷＩ−ＦＩディスプレイ（ＷＦＤ）は、コンテンツをワイヤレス送信することをサポートするために様々な適用例において使用され得る。一例として、（「ソース」と呼ばれる）モバイルデバイスが、電話、タブレット、スマートフォン、または携帯情報端末（ＰＤＡ）など、モバイルコンピューティングデバイスから、ＷＦＤ対応である（「（１つまたは複数の）シンク」および「クライアント」と呼ばれる）他のデバイスにビデオコンテンツまたは他のアプリケーションデータをワイヤレス送信するために使用され得る。ビデオコンテンツまたは他のアプリケーションデータは、ソースから送信され、シンクによって受信され得、シンクの１つまたは複数の出力デバイスによって出力され得る。
【００１３】
本開示では、ソースデバイスという用語は、概して、シンクデバイスまたはクライアントデバイスのいずれかにメディアデータを送信しているデバイスを指す。以下でより詳細に説明するように、シンクデバイスという用語は、概して、ソースデバイスからメディアデータを受信しており、同時にソースデバイスと同じメディアコンテンツをレンダリングしているデバイスを指す。クライアントデバイスという用語は、概して、ソースデバイスからメディアデータを受信しているデバイスを指すが、シンクデバイスとは異なり、クライアントデバイスは、必ずしも同時にソースデバイスと同じメディアコンテンツをレンダリングしているとは限らない。たとえば、ソースデバイスは、クライアントデバイスにビデオデータまたはオーディオデータをストリーミングし得るが、ソースデバイスは、それ自体が動画データまたはオーディオデータをレンダリングしていない。ソースデバイス、シンクデバイス、およびクライアントデバイスという用語は、概して、特定のデバイスのための動作状態を指す。したがって、１つのデバイスが、ソースデバイス、シンクデバイス、またはクライアントデバイスのいずれかであることが可能であり得、いくつかの事例では２つ以上のタイプのデバイスとして同時に機能することさえある。たとえば、特定のデバイスが、あるデバイスのためのクライアントデバイスであり得るが、別のデバイスのためのソースデバイスであり得る。
【００１４】
一例では、モバイルソースデバイスのユーザは、ユーザがＷＩ−ＦＩ通信をサポートするための近傍に入るとき、ソースデバイス上のメディア共有アプリケーションを実行し得る。メディア共有アプリケーションは、ＷＩ−ＦＩ搭載クライアントデバイスの１人または複数のユーザが、ＷＩ−ＦＩストリーミングを介してソースデバイス上で共有されるメディア項目を見て、聴き、および／または閲覧するために、コンテンツを選択することを可能にし得る。ソースデバイスのメディア共有アプリケーションはまた、連絡先、またはソースデバイスの他のアプリケーションデータをＷＦＤ互換シンクデバイスと共有するために、ＷＦＤ互換シンクデバイスと接続するためにＷＦＤを使用し得る。
【００１５】
メディア共有アプリケーションは、ストリーミングのためのオーディオ、ビデオ、ピクチャなど、メディア項目の１つまたは複数のプレイリストをクライアントデバイスのユーザに提示し得、クライアントデバイスは、メディア共有アプリケーションと通信するためにクライアントアプリケーションを実行し得る。クライアントデバイスのユーザは、プレイリストから再生すべきメディア項目を選択し得る。いくつかの例では、クライアントデバイスとメディア共有アプリケーションは、互いとネゴシエートし、デバイスが出力することが可能であるプレイリスト中のメディア項目のみを示し得る。クライアントデバイスのユーザは、再生のための１つまたは複数のメディア項目を選択し得る。
【００１６】
ソースコンピューティングデバイスは、ユニバーサルプラグアンドプレイ（ＵＰｎＰ）のプロトコルなど、１つまたは複数のプロトコルを使用してプレイリストを共有し得る。クライアントデバイスは、ＲＴＳＰ（リアルタイムストリーミングプロトコル）など、プロトコルを使用してプレイリストの１つまたは複数の選択されたメディア項目のストリームを要求し得る。１つまたは複数のメディア項目についての要求を受信したことに応答して、ソースデバイスは、リアルタイムトランスポートプロトコル（ＲＴＰ）など、プロトコルを使用して要求元クライアントデバイスに要求された項目をストリーミングし得る。
【００１７】
ソースデバイスがＷＩ−ＦＩを介してワイヤレス通信をサポートするのに十分近い近傍に入るとき、ソースデバイスのユーザはメディア共有アプリケーションを起動し得る。そのアプリケーションは、ＷＦＤソースとしてモバイルデバイスを構成し得る、ＷＦＤセッションを開始し得る。ソースデバイスは、（「シンク」または「シンクデバイス」と呼ばれる）ＷＦＤ互換デバイスとワイヤレス通信することによってそのＷＦＤ互換シンクデバイスと接続し得る。ＷＦＤシンクデバイスは、事前共有鍵、または証明書システムなど、シンクデバイスのユーザがシンクデバイスと接続することを許可されることを保証するための何らかの認証機構を使用し得る。
【００１８】
ソースデバイス、クライアントデバイス、およびシンクデバイスは、ＤＶＤプレーヤ、ＴＶ、ＭＰ３プレーヤ、ラップトップ、タブレット、ネットブックなどのデバイス、および／またはＷＩ−ＦＩ対応である他のデバイスを備え得る。いくつかの例では、クライアントデバイスおよび／またはシンクデバイスは自動車に組み込まれ得る。他の例では、クライアントデバイスおよび／またはシンクデバイスはユーザに属し得、ポータブルであり得る。
【００１９】
１つの例示的なユーザ環境では、スマートフォンが、ワイヤレスソースデバイスとして動作し、自動車中の乗客にメディアデータを送信し得る。自動車は、たとえば、運転者が運転している間にマップアプリケーションまたは他のそのようなコンテンツを安全に閲覧することを可能にするダッシュボードまたはコントロールパネル中のワイヤレスシンクデバイスを含み得る。自動車は１つまたは複数のクライアントデバイスをさらに含み得る。たとえば、バックシートにおけるクライアントデバイスは、バックシートにおける乗客が、スマートフォンに記憶された動画を閲覧することまたはスマートフォンに記憶された音楽を聴くことを可能にし得る。説明および例のために、本開示のいくつかの態様について自動車内のユーザ環境に関して説明することがあるが、本開示の技法はいかなる特定のユーザ環境にも限定されない。
【００２０】
ソースデバイスとシンクデバイスとの間のＷＦＤ接続はアプリケーションデータの共有を可能にし得る。様々な例では、アプリケーションデータは、連絡先、カレンダーアポイントメント、ソースデバイスに記憶された音楽、ナビゲーションデータ、またはソースデバイスのユーザがそれへのアクセスを希望し得る他のアプリケーションデータを含み得る。自動車のＷＦＤ対応デバイスにアプリケーションデータを与えることに加えて、ソースデバイスは、現在開発中であるＷＦＤドラフト仕様に従ってシンクデバイスとのスクリーンミラーリングをも実行し得る。ミラーリングを実行するとき、ソースデバイスのディスプレイはシンクデバイスにリアルタイムで送られ得、その結果、シンクデバイスとソースデバイスは同期している。
【００２１】
ＷＦＤミラーリングは、デバイスが、送信された画像データをリアルタイムで表示するシンクデバイスに、ソースにおける画像データを送信することを指す。ソースとシンクとの間で画像データを送信することに加えて、ＷＦＤはまた、以下で説明するように、ユーザ入力バックチャネル（ＵＩＢＣ：user input back channel）を使用して、ソースデバイスがシンクデバイスに入力コマンドを転送することと、シンクデバイスがシンクからソースに入力コマンドを送信することとを可能にする。一例では、シンクデバイスは、ＷＦＤを介して、メディア項目のプレイリストをも受信し得る。シンクデバイスは、再生のためのメディア項目を選択する、ユーザ入力コマンドを受信し、ソースデバイスに送信し得る。メディアコマンドを受信したことに応答して、ソースデバイスは、シンクデバイスに要求されたメディア項目を送信し得る。
【００２２】
本開示のコンテキストでは、ＷＦＤシンクデバイスは、１つまたは複数のプロセッサ、メモリ、１つまたは複数のストレージデバイス、入力および／または出力デバイス、ＷＩ−ＦＩ通信が可能なワイヤレスモジュールを備え得る。上述のように、ソースデバイスがシンクデバイスに接続するとき、シンクデバイスは、ソースデバイスのインターフェースを表示し得る。シンクデバイスが自動車のデバイスを備え、ソースデバイスが自動車の運転者のデバイスを備える例では、シンクデバイスは、ソースデバイスよりも大きいスクリーンを含み得る。これは、運転者のための安全の見地から有益であり得る。ワイヤレスシンクデバイスとして自動車の内蔵出力デバイスを使用することによって、運転者は、ソースデバイスのディスプレイを見るために道路から目を離す必要を回避し得る。
【００２３】
様々な例では、シンクデバイスのユーザは、ソースデバイスにユーザ入力コマンドを発行し得る。いくつかの例では、入力コマンドは、マウスクリック、スクロールアクション、キーボード入力、または他のタイプのユーザ入力を含み得る。シンクの入力デバイスは、いくつかの例では、たとえばＢＬＵＥＴＯＯＴＨ（登録商標）を介した、タッチスクリーンおよび／またはボイスコマンドシステムを備え得る。
【００２４】
ユーザ入力を受信したことに応答して、シンクデバイスは、ソースとシンクとの間のデータ接続のＵＩＢＣを介してソースデバイスにユーザ入力を返信し得る。シンクデバイスからユーザ入力を受信したことに応答して、ソースデバイスは、ユーザ入力を受け付け、スクロールすること、マウスおよび／またはキーボード入力を受け付けること、あるいは音声コマンドに応答して働くことなど、アクションをとり得る。
【００２５】
自動車ユーザ環境では、運転者は、ソースデバイスのコンテンツと対話するために様々な方法でシンクデバイスを利用し得る。様々な例では、ユーザはシンクデバイスと対話し得、その対話は、ソースデバイスに、通話を行うこと、連絡先情報にアクセスすること、音楽選択を変更すること、カレンダーおよび／またはスケジューリングデータにアクセスすること、インターネットにアクセスすること、ナビゲーションデータおよび／またはサービスにアクセスすること、あるいは他のアクションを実行することを行わせ得る。さらに、いくつかの例では、ソースデバイスの様々な入力および出力が、シンクデバイスに接続された様々なデバイスにリダイレクトされ得る。たとえば、運転者が通話を行っている場合、運転者は、通話を行うことの容易さを促進するためにシンクデバイスに接続され得る１つまたは複数のマイクロフォンに向かって話し得る。さらに、通話のオーディオは、運転者により良いオーディオ呼品質と聴きやすさとを与えるために、シンクデバイスに接続された車のスピーカーを通してソースデバイスからリダイレクトされ得る。
【００２６】
上述のように、クライアントデバイスのユーザも、メディア共有アプリケーションを介してソースデバイスのコンテンツにアクセスし得る。一例では、クライアントデバイスのユーザ（たとえばバックシートの乗客）がソースデバイス上のコンテンツにアクセスし得る前、ソースデバイスのユーザ（たとえば運転者）は、クライアントデバイスのユーザのためのプレイリストをセットアップし得る。プレイリストは、クライアントデバイスのユーザが見るおよび／または聴くためにそれから選択し得る様々なメディアを含み得る。プレイリストは、たとえば、様々な圧縮ビデオファイル、オーディオファイル、画像、またはクライアントデバイスの出力デバイスによって表示され得る他のコンテンツを含み得る。複数の出力デバイス、たとえば複数のＷＩ−ＦＩ搭載クライアントデバイスは、ソースデバイスのメディア共有アプリケーションに同時に接続することが可能であり得、ソースデバイスは、クライアントデバイスの各々に複数の同時メディアストリームを送信し得る。このようにして、クライアントデバイスの各ユーザは、各ユーザの選好に従って異なるメディア項目に同時にアクセスすることが可能であり得る。
【００２７】
タッチスクリーンディスプレイ、マウス、キーボードなど、クライアントデバイスの１つまたは複数の入出力デバイスを使用して、ワイヤレスクライアントデバイスのユーザは、ソースデバイス上で動作しているメディア共有アプリケーションにＷＩ−ＦＩを介して接続し得る。いくつかの例では、ＷＩ−ＦＩ接続は、ＷＩ−ＦＩダイレクトを使用して確立され得る。別の例では、自動車がワイヤレスネットワークを与え得、ソースデバイスおよびクライアントデバイスはそのワイヤレスネットワークに接続し得、ソースデバイスとクライアントデバイスとの間でのデータがそのワイヤレスネットワーク上で転送され得る。いくつかの例では、クライアントデバイスは、ＷＩ−ＦＩモジュール、プロセッサ、メモリ、ストレージ、および１つまたは複数の追加の入力デバイスを含み得、ユーザがソースデバイスのプレイリストからメディアを選択することを可能にし得る。
【００２８】
クライアントデバイスのユーザがプレイリストから１つまたは複数のメディア項目を選択すると、ソースデバイスは、ＷＩ−ＦＩ接続を介してクライアントデバイスに選択されたメディア項目をストリーミングし始め得る。メディア項目が再生を完了した後、プレイリストが完了するまで、プレイリストからの次のメディア項目が出力デバイスにストリーミングし得る。いくつかの例では、クライアントデバイスのユーザは、ソースデバイスのメディアサーバから異なるメディア項目を選択するためにクライアントデバイスを用いたユーザ入力を利用し得る。ユーザはまた、クライアントデバイス上でメディアの再生を制御するために「開始」、「停止」、「早送り」など、追加の再生コマンドを実行し得る。
【００２９】
図１Ａは、本開示の技法を実装し得る例示的なシステム１００を示すブロック図である。図１Ａに示すように、システム１００は、通信チャネル１５０を介してシンクデバイス１６０と通信するソースデバイス１２０を含む。ソースデバイス１２０は、ネットブック、タブレット、スマートフォン、ＰＤＡなどのデバイス、またはＷＦＤをサポートすることが可能な任意の同様のモバイルデバイスを備え得る。ソースデバイス１２０は、オーディオ／ビデオ（Ａ／Ｖ）データ１２１を記憶するメモリと、ディスプレイ１２２と、スピーカー１２３と、（エンコーダ１２４とも呼ばれる）オーディオ／ビデオエンコーダ１２４と、オーディオ／ビデオ制御モジュール１２５と、送信機／受信機（ＴＸ／ＲＸ）ユニット１２６とを含み得る。シンクデバイス１６０は、ディスプレイ１６２と、スピーカー１６３と、（デコーダ１６４とも呼ばれる）オーディオ／ビデオデコーダ１６４と、送信機／受信機ユニット１６６と、ユーザ入力（ＵＩ）デバイス１６７と、ユーザ入力処理モジュール（ＵＩＰＭ：user input processing module）１６８とを含み得る。図示した構成要素は、システム１００のための１つの例示的な構成をなすにすぎない。他の構成は、図示した構成要素よりも少数の構成要素を含み得るか、または図示した構成要素以外の追加の構成要素を含み得る。
【００３０】
図１Ａの例では、ソースデバイス１２０は、オーディオ／ビデオデータ１２１のビデオ部分をディスプレイ１２２上で表示することができ、オーディオ／ビデオデータ１２１のオーディオ部分をスピーカー１２３上で出力することができる。オーディオ／ビデオデータ１２１は、ソースデバイス１２０にローカルに記憶され、ファイルサーバ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、またはＤＶＤなど、外部記憶媒体からアクセスされ得る。いくつかの事例では、オーディオ／ビデオデータ１２１は、ソースデバイス１２０のカメラとマイクロフォンとを介してリアルタイムでキャプチャされ得、その結果、電話のオーディオまたはビデオが、自動車のオーディオシステムを介してキャプチャまたは再生され得る。オーディオ／ビデオデータ１２１は、動画、テレビ番組、または音楽など、マルチメディアコンテンツを含み得るが、ソースデバイス１２０によって生成されたリアルタイムコンテンツをも含み得る。そのようなリアルタイムコンテンツは、たとえば、ソースデバイス１２０上で動作しているアプリケーションによって生成され得る。より詳細に説明するように、そのようなリアルタイムコンテンツは、いくつかの事例では、いくつかの例では、ユーザが選択するために利用可能なユーザ入力オプションのビデオフレームを含み得る。いくつかの事例では、オーディオ／ビデオデータ１２１は、ビデオのフレーム上にオーバーレイされたユーザ入力オプションを有する動画またはＴＶ番組のビデオフレームなど、異なるタイプのコンテンツの組合せであるビデオフレームを含み得る。
【００３１】
ディスプレイ１２２とスピーカー１２３とを介してオーディオ／ビデオデータ１２１をローカルでレンダリングすることに加えて、ソースデバイス１２０のオーディオ／ビデオエンコーダ１２４はオーディオ／ビデオデータ１２１を符号化することができ、送信機／受信機ユニット１２６は、符号化されたデータを通信チャネル１５０を介してシンクデバイス１６０に送信することができる。シンクデバイス１６０は、運転者の対話のための自動車の好都合なロケーションに取り付けられ得る、タッチスクリーンディスプレイを含むデバイスを備え得る。運転者シンクデバイス１６０の送信機／受信機ユニット１６６は符号化されたデータを受信し、オーディオ／ビデオデコーダ１６４は、符号化されたデータを復号し、復号されたデータをディスプレイ１６２とスピーカー１６３とを介して出力する。このようにして、ディスプレイ１２２とスピーカー１２３とによってレンダリングされているオーディオおよびビデオデータは、ディスプレイ１６２とスピーカー１６３とによって同時にレンダリングされ得る。オーディオデータおよびビデオデータはフレームで構成され得、オーディオフレームは、レンダリングされるとき、ビデオフレームと時間同期され得る。
【００３２】
オーディオ／ビデオエンコーダ１２４およびオーディオ／ビデオデコーダ１６４は、代替的にＭＰＥＧ−４，Ｐａｒｔ１０，Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ（ＡＶＣ）と呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格、またはＨ．２６５規格と呼ばれることがある新生の高効率ビデオコーディング（ＨＥＶＣ：high efficiency video coding）規格など、任意の数のオーディオおよびビデオ圧縮規格を実装し得る。概して、オーディオ／ビデオデコーダ１６４は、オーディオ／ビデオエンコーダ１２４の逆のコーディング演算を実行するように構成される。図１Ａには示されていないが、いくつかの態様では、Ａ／Ｖエンコーダ１２４およびＡ／Ｖデコーダ１６４は、それぞれオーディオエンコーダおよびデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。
【００３３】
以下でより詳細に説明するように、Ａ／Ｖエンコーダ１２４は、上記で説明したようにビデオ圧縮規格を実装することに加えて、他の符号化機能をも実行し得る。たとえば、Ａ／Ｖエンコーダ１２４は、Ａ／Ｖデータ１２１がシンクデバイス１６０に送信されるより前に、Ａ／Ｖデータ１２１に様々なタイプのメタデータを追加し得る。いくつかの事例では、Ａ／Ｖデータ１２１は、符号化された形態でソースデバイス１２０に記憶されるかまたはソースデバイス１２０において受信され、したがってＡ／Ｖエンコーダ１２４によるさらなる圧縮を必要としないことがある。
【００３４】
図１Ａは、通信チャネル１５０がオーディオペイロードデータとビデオペイロードデータとを別個に搬送することを示しているが、いくつかの事例では、ビデオペイロードデータとオーディオペイロードデータとが共通のデータストリームの一部であり得ることを理解されたい。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ：user datagram protocol）などの他のプロトコルに準拠し得る。オーディオ／ビデオエンコーダ１２４およびオーディオ／ビデオデコーダ１６４はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、あるいはそれらの任意の組合せとして実装され得る。オーディオ／ビデオエンコーダ１２４およびオーディオ／ビデオデコーダ１６４の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３５】
ディスプレイ１２２およびディスプレイ１６２は、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なビデオ出力デバイスのいずれかを備え得る。スピーカー１２３は、ヘッドフォン、シングルスピーカーシステム、マルチスピーカーシステム、またはサラウンドサウンドシステムなど、様々なオーディオ出力デバイスのいずれかを備え得る。さらに、ディスプレイ１２２およびスピーカー１２３はソースデバイス１２０の一部として示されており、ディスプレイ１６２およびスピーカー１６３はシンクデバイス１６０の一部として示されているが、ソースデバイス１２０およびシンクデバイス１６０は、実際は複数のデバイスのシステムであり得る。一例として、ディスプレイ１６２はテレビジョンであり得、スピーカー１６３はサラウンドサウンドシステムであり得、デコーダ１６４は、ディスプレイ１６２とスピーカー１６３とにワイヤード接続またはワイヤレス接続された外部ボックスの一部であり得る。他の例では、シンクデバイス１６０は、タブレットコンピュータまたはスマートフォンなど、単一のデバイスであり得る。さらに他の場合、運転者デバイス１６０およびシンクデバイス１２０は同様のデバイスであり、たとえば、両方がスマートフォン、タブレットコンピュータなどである。この場合、一方のデバイスはソースとして動作し得、他方はシンクとして動作し得る。これらの役割が後続の通信セッションでは逆になることさえある。
【００３６】
送信機／受信機ユニット１２６および送信機／受信機ユニット１６６は、それぞれ、様々なミキサ、フィルタ、増幅器、および信号変調のために設計された他の構成要素、ならびに、１つまたは複数のアンテナ、およびデータを送信し、受信するために設計された他の構成要素を含み得る。通信チャネル１５０は、概して、ビデオデータをソースデバイス１２０からシンクデバイス１６０に送信するのに好適な任意の通信媒体、または様々な通信媒体の集合体を表す。通信チャネル１５０は、通常、ＷＩ−ＦＩ、ＢＬＵＥＴＯＯＴＨなどと同様の比較的短距離の通信チャネルである。ただし、通信チャネル１５０は、この点において必ずしも限定されるとは限らず、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体、あるいはワイヤレス媒体とワイヤード媒体との任意の組合せを備え得る。他の例では、通信チャネル１５０は、ワイヤードまたはワイヤレスローカルエリアネットワーク、ワイドエリアネットワーク、あるいはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成することさえある。さらに、通信チャネル１５０は、ピアツーピアリンクを作成するためにソースデバイス１２０とシンクデバイス１６０とによって使用され得る。ソースデバイス１２０およびシンクデバイス１６０は、ＩＥＥＥ８０２．１１規格ファミリーからの規格などの通信プロトコルを使用して通信チャネル１５０を介して通信し得る。本開示の技法について時々ＷＩ−ＦＩに関して説明することがあるが、これらの技法の態様は他の通信プロトコルにも適合し得ることが企図される。
【００３７】
ソースデバイス１２０から受信されたデータを復号し、レンダリングすることに加えて、シンクデバイス１６０は、ユーザ入力デバイス１６７からユーザ入力をも受信することができる。ユーザ入力デバイス１６７は、たとえば、キーボード、マウス、トラックボールまたはトラックパッド、タッチスクリーン、ボイスコマンド認識モジュール、あるいは他のそのようなユーザ入力デバイスであり得る。ＵＩＰＭ１６８は、ユーザ入力デバイス１６７によって受信されたユーザ入力コマンドを、ソースデバイス１２０が解釈することが可能であるデータパケット構造にフォーマットする。そのようなデータパケットは、送信機／受信機１６６によって、通信チャネル１５０を介してソースデバイス１２０に送信される。送信機／受信機ユニット１２６はデータパケットを受信し、Ａ／Ｖ制御モジュール１２５は、ユーザ入力デバイス１６７によって受信されたユーザ入力コマンドを解釈するために、データパケットをパースする。
【００３８】
さらに、シンクデバイス１６０のユーザ、たとえば乗客または運転者は、ソースデバイス１２０上のアプリケーションを起動し、制御することが可能であり得る。たとえば、シンクデバイス１６０のユーザは、ソースデバイス１２０に記憶された写真編集またはナビゲーションアプリケーションを起動し、そのアプリケーションを使用して、ソースデバイス１２０にローカルに記憶された写真を編集することが可能であり得る。シンクデバイス１６０は、その写真が実際はソースデバイス１２０上で編集されている間、その写真がシンクデバイス１６０上でローカルで編集されているように見え、感じられる、ユーザエクスペリエンスをユーザにもたらし得る。そのような構成を使用して、デバイスユーザは、いくつかのデバイスとともに使用する１つのデバイスの機能を活用することが可能であり得る。たとえば、ソースデバイス１２０は、大量のメモリとハイエンド処理機能とをもつスマートフォンであり得、ソースデバイス１２０のユーザは、スマートフォンが一般に使用されるすべての設定および状況においてスマートフォンを使用し得る。動画を見るとき、ユーザは、より大きいディスプレイスクリーンをもつデバイス上で動画を見ることを望み得、その場合、シンクデバイス１６０はタブレットコンピュータであり得る。電子メールを送ることまたは電子メールに応答することを希望するとき、ユーザは、キーボードをもつデバイスを使用することを望み得、その場合、シンクデバイス１６０はラップトップであり得る。両方の状況において、ユーザはタブレットコンピュータまたはラップトップと対話しているが、処理の大半は依然としてソースデバイス１２０（この例ではスマートフォン）によって実行され得る。処理の大半がソースデバイス１２０によって実行されるので、シンクデバイス１６０は、シンクデバイス１６０が、ソースデバイス１２０によって行われている処理を行うように依頼されている場合よりも、少数のリソースを用いた、より低コストのデバイスであり得る。
【００３９】
いくつかの構成では、Ａ／Ｖ制御モジュール１２５は、ソースデバイス１２０のオペレーティングシステムによって実行されているオペレーティングシステムプロセスであり得る。しかしながら、他の構成では、Ａ／Ｖ制御モジュール１２５は、ソースデバイス１２０上で動作しているアプリケーションのソフトウェアプロセスであり得る。一例では、Ａ／Ｖ制御モジュール１２５は、ＷＩＦＩメディアストリーミングが可能なメディアサーバ、およびＷＦＤモジュールを含み得る。そのような構成では、ユーザ入力コマンドはソフトウェアプロセスによって解釈され得、その結果、シンクデバイス１６０のユーザは、ソースデバイス１２０上で動作しているオペレーティングシステムとは対照的に、ソースデバイス１２０上で動作しているアプリケーションと直接対話している。オペレーティングシステムとは対照的にアプリケーションと直接対話することによって、シンクデバイス１６０のユーザは、ソースデバイス１２０のオペレーティングシステムに対してネイティブでないコマンドのライブラリへのアクセスを有し得る。さらに、アプリケーションと直接対話することにより、コマンドは、異なるプラットフォーム上で動作しているデバイスによってより容易に送信され、処理されることが可能になり得る。
【００４０】
ソースデバイス１２０は、ワイヤレスシンクデバイス１６０において適用されるユーザ入力に応答することができる。そのような対話型アプリケーション設定では、ワイヤレスシンクデバイス１６０において適用されるユーザ入力は通信チャネル１５０を介してワイヤレスディスプレイソースに送られ得る。一例では、シンクデバイス１６０が、シンクデバイス１６０において適用されるユーザ入力をソースデバイス１２０に送信することを可能にするために、ユーザインターフェースバックチャネル（ＵＩＢＣ：user interface back channel）とも呼ばれる逆方向チャネルアーキテクチャが実装され得る。逆方向チャネルアーキテクチャは、ユーザ入力をトランスポートするための上位レイヤメッセージと、シンクデバイス１６０およびソースデバイス１２０においてユーザインターフェース機能をネゴシエートするための下位レイヤフレームとを含み得る。ＵＩＢＣは、シンクデバイス１６０とソースデバイス１２０との間のインターネットプロトコル（ＩＰ）トランスポートレイヤの上に常駐し得る。このようにして、ＵＩＢＣは、開放型システム間相互接続（ＯＳＩ）通信モデルにおいてトランスポートレイヤより上にあり得る。一例では、ＯＳＩ通信は、７つのレイヤ（１−物理、２−データリンク、３−ネットワーク、４−トランスポート、５−セッション、６−プレゼンテーション、および７−アプリケーション）を含む。この例では、トランスポートレイヤより上にあることは、レイヤ５、６、および７を指す。ユーザ入力データを含んでいるデータパケットの信頼できる送信と順次配信とを促進するために、ＵＩＢＣは、伝送制御プロトコル／インターネットプロトコル（ＴＣＰ／ＩＰ）またはユーザデータグラムプロトコル（ＵＤＰ）など、他のパケットベース通信プロトコルの上で動作するように構成され得る。
【００４１】
場合によっては、ソースデバイス１２０に位置するユーザ入力インターフェースとシンクデバイス１６０に位置するユーザ入力インターフェースとの間の不一致があり得る。そのような不一致によってもたらされる潜在的な問題を解決し、そのような状況下での良好なユーザエクスペリエンスを促進するために、ユーザ入力インターフェース機能ネゴシエーションが、通信セッションを確立するより前に、ソースデバイス１２０とシンクデバイス１６０との間で行われ得る。
【００４２】
ＵＩＢＣは、クロスプラットフォームユーザ入力データを含む、様々なタイプのユーザ入力データをトランスポートするように設計され得る。たとえば、ソースデバイス１２０はｉＯＳ（登録商標）オペレーティングシステムを実行し得、シンクデバイス１６０は、Ａｎｄｒｏｉｄ（登録商標）またはＷｉｎｄｏｗｓ（登録商標）など、別のオペレーティングシステムを実行する。プラットフォームにかかわらず、ＵＩＰＭ１６８は、Ａ／Ｖ制御モジュール１２５にとって理解可能な形態で、受信されたユーザ入力をカプセル化することができる。多くの異なるタイプのソースデバイスおよび自動車シンクデバイスがプロトコルを活用することを可能にするように、いくつかの異なるタイプのユーザ入力フォーマットがＵＩＢＣによってサポートされ得る。一般入力フォーマットが定義され得、プラットフォーム固有入力フォーマットが両方ともサポートされ得、したがって、ユーザ入力がＵＩＢＣによってソースデバイス１２０とシンクデバイス１６０との間で通信され得る方法のフレキシビリティが与えられる。
【００４３】
一例では、シンクデバイス１６０は、ソースデバイス１２０とのＷＦＤ接続を確立し得、ソースデバイス１２０は、シンクデバイス１６０にプレイリストの１つまたは複数のメディア項目を記述する情報を送信し得る。プレイリストおよびメディア項目について、たとえば、図２Ａ〜図２Ｄに関して、以下でさらに詳細に説明する。シンクデバイス１６０は、シンクデバイス１６０がどのメディア項目を出力することが可能であるかを判断し得る。シンクデバイス１６０は、プレイリストを出力し、１つまたは複数のメディア項目のユーザ入力選択を受信し得る。シンクデバイス１６０は、ソースデバイス１２０にメディア項目の上記選択を送信し得、ソースデバイス１２０は、シンクデバイス１２０に選択されたメディア項目を送信（たとえば、ストリーミング）し得る。
【００４４】
図１Ａの例では、ソースデバイス１２０は、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、ＷＩ−ＦＩ対応テレビジョン、またはオーディオおよびビデオデータを送信することが可能な他のデバイスを備え得る。シンクデバイス１６０は、同様に、スマートフォン、タブレットコンピュータ、ラップトップコンピュータ、デスクトップコンピュータ、ＷＩ−ＦＩ対応テレビジョン、またはオーディオおよびビデオデータを受信し、ユーザ入力データを受信することが可能な他のデバイスを備え得る。いくつかの事例では、シンクデバイス１６０は、ディスプレイ１６２、スピーカー１６３、ＵＩデバイス１６７、およびＡ／Ｖエンコーダ１６４が、すべて、別個であるが相互動作可能なデバイスの一部であるような、複数のデバイスのシステムを含み得る。ソースデバイス１２０は、同様に、単一のデバイスではなく、複数のデバイスのシステムであり得る。
【００４５】
本開示では、ソースデバイスという用語を、概して、オーディオ／ビデオデータを送信しているデバイスを指すために使用し、シンクデバイスという用語を、概して、ソースデバイスからオーディオ／ビデオデータを受信しているデバイスを指すために使用する。多くの場合、ソースデバイス１２０およびシンクデバイス１６０は同様または同等のデバイスであり得、一方のデバイスがソースとして動作し、他方がシンクとして動作する。その上、異なる通信セッションではこれらの役割が逆になることがある。したがって、１つの通信セッションにおけるシンクデバイスは後続の通信セッションではソースデバイスであり得、またはその逆も同様である。
【００４６】
図１Ｂは、本開示の技法を実装し得る、ソースデバイスとクライアントデバイスとを含むシステムの一例を示すブロック図である。図１Ｂのシステムでは、ソースデバイス１２０は、通信チャネル１５２を介してクライアントデバイス１８０と通信し得る。クライアントデバイス１８０とシンクデバイス１６０は、同じデバイスであり得るかまたは異なるデバイスであり得る。通信チャネル１５２は、ＷＩ−ＦＩなどと同様のワイヤレス通信チャネルを備え得る。ソースデバイス１２０は、プロトコルのＵＰｎＰセット、ＵＤＰ、ＲＴＳＰおよび／またはＲＴＰなど、１つまたは複数のプロトコルを使用して通信チャネル１５２を介してクライアントデバイス１８０と通信し得る。いくつかの例では、ＵＰｎＰ、ＵＤＰ、ＲＴＳＰ、および／またはＲＴＰを使用してソースデバイス１２０からクライアントデバイス１８０にデータをストリーミングすることは、ソースデバイス１２０およびクライアントデバイス１８０が低減された電力消費でコンテンツ項目を送信することを可能にし得、ＷＦＤなど、異なるプロトコルを使用してメディア項目を送信することと比較して、より少ない計算複雑さを必要とし得る。
【００４７】
ソースデバイス１２０は、１つまたは複数の利用可能なプレイリストをクライアントデバイス１８０など、１つまたは複数のデバイスと共有し得る。ソースデバイス１２０は、さらに、クライアントデバイス１８０にプレイリストの少なくとも１つのメディア項目を記述する情報を送信し得る。上記情報の送信は、クライアントデバイス１８０に、ワイヤレスクライアントデバイス１８０が少なくとも１つのメディア項目を出力することが可能であるかどうかを判断することを行わせ得る。クライアントデバイス１８０のユーザは、運転者ソースデバイス１８０にプレイリストのうちの１つまたは複数の１つまたは複数のメディア項目を要求し得る。１つまたは複数のメディア項目についての要求を受信したことに応答して、ソースデバイス１２０は、クライアントデバイス１８０に要求されたメディア項目をストリーミングまたは送信し得、クライアントデバイス１８０は、ディスプレイ１８２、および／またはスピーカー１８３など、出力デバイス上で要求されたメディア項目を出力し得る。
【００４８】
図１Ｂのソースデバイス１２０は、図１Ａの運転者ソース１２０と同等であり得る。ソースデバイス１２０は、ディスプレイ１２２と、オーディオビデオデータ１２１と、スピーカー１２３と、オーディオ／ビデオ制御１２５と、オーディオ／ビデオエンコーダ１２４と、送信／受信ユニット１２６とを含み得る。クライアントデバイス１８０は、図１Ａのシンクデバイス１６０と同様または同等であり得る。クライアントデバイス１８０は、オーディオ／ビデオデコーダ１８４と、ディスプレイ１８２と、スピーカー１８３と、ユーザ入力デバイス１８７と、送信／受信ユニット１８６とを含み得る。
【００４９】
オーディオ／ビデオ制御ユニット１２５は、ソースデバイス１２０の１つまたは複数のプロセッサを用いてメディア共有アプリケーション１２８を実行するように構成され得る。メディアアプリケーション１２８は、いくつかの例では、ソースデバイス１２０のオペレーティングシステムまたはスタンドアロンアプリケーションの一部であり得る。メディア共有アプリケーション１２８は、クライアントコンピューティングデバイス１８０など、クライアントコンピューティングデバイスと共有すべき１つまたは複数のプレイリストを判断し得る。プレイリストのメディア項目は、ソースデバイス１２０に接続されたハードドライブ、フラッシュメモリ、および／または周辺機器を含む、ローカルストレージに記憶され得る。さらに、プレイリストのメディア項目はソースデバイス１２０によってリモートアクセスされ得る。そのようなリモートアクセス可能なものの例としては、クラウドに記憶されたメディア項目、ストリーミングビデオ、またはファイルサーバに記憶されたメディア項目があり得る。
【００５０】
運転者ソースデバイスのユーザがメディア共有アプリケーション１２８を起動したことに応答して、メディア共有アプリケーション１２８は、クライアントデバイス１８０など、１つまたは複数のクライアントデバイスにプレイリストをブロードキャストし得る。いくつかの例では、メディア共有アプリケーション１２８は、プロトコルのＵＰｎＰセットのプロトコルのうちの１つまたは複数を使用してプレイリストをブロードキャストし得る。ＵＰｎＰに関して説明するが、メディア共有アプリケーション１２８は、クライアントデバイス１８０など、クライアントデバイスにプレイリストをブロードキャストするためのワイヤレス通信プロトコルに適合するいかなる機構をも使用し得る。ソースデバイス１２０は、ネットワーク上のデバイスのサービス発見を提供するＵＰｎＰのプロトコルである、単純サービス発見プロトコル（ＳＳＤＰ：Simple Service Discovery Protocol）を使用して、ソースデバイス１２０のサービス（すなわち、運転者ソースデバイスがＲＴＳＰとＲＴＰとを使用してストリーミングサービスを提供すること）を告知し得る。発見プロトコルとしてのＳＳＤＰの使用は、一例にすぎず、非限定的であると見なされるべきである。ユニバーサルデータグラムプロトコル（ＵＤＰ：Universal Datagram Protocol）、ＢＯＮＪＯＵＲ、サービスロケーションプロトコル（ＳＬＰ：Service Location Protocol）、ウェブサービス動的発見（ＷＳ−Ｄｉｓｃｏｖｅｒｙ：Web Services Dynamic Discovery）、およびゼロコンフィギュレーションネットワーキング（ｚｅｒｏｃｏｎｆ）など、他のプロトコルおよびプロトコルのセットも、クライアントデバイスが、ソースデバイス１２０によって与えられるストリーミングサービスを発見することを可能にし得る。ソースデバイス１２０がプレイリストを送信するためにＵＤＰを使用する例では、ソースデバイス１２０は、クライアントデバイス１８０など、１つまたは複数のクライアントデバイスが、ソースデバイス１２０によって送信されたプレイリストをリッスンし得るように、特定のポート、ブロードキャストアドレスまたはよく知られているマルチキャストアドレスを使用して、プレイリストを送信し得る。
【００５１】
クライアントデバイス１８０は、図１Ｂのシンクデバイス１６０と同様であり得、タブレット、ＰＤＡ、ラップトップ、ネットブック、ＤＶＤプレーヤなど、モバイルコンピューティングデバイス、または別のコンピューティングデバイスを備え得る。クライアントデバイス１８０のユーザはクライアントアプリケーション１８５を起動し得る。クライアントアプリケーション１８５は、通信チャネル１５２を介してメディア共有アプリケーション１２８から１つまたは複数の告知を受信し得る。上記告知を受信したことに応答して、メディア共有アプリケーション１２８は、告知メッセージをパースし、メディア共有アプリケーション１２８が与えるサービスを判断し得る。いくつかの例では、クライアントデバイス１８０は、たとえばＲＴＳＰおよび／またはＲＴＰを使用して、メディア共有アプリケーション１２８がメディアストリーミングおよびプレイリスト共有機能を与えると判断し得る。
【００５２】
クライアントアプリケーション１８５によって受信されたサービス告知は、メディア項目の１つまたは複数のプレイリスト、または、ＵＲＬ、ネットワーク経路など、メディア項目の１つまたは複数のプレイリストを含んでいるリソースロケーションへのリンクをも含み得る。プレイリストへのリンクがサービス告知中に含まれる場合、クライアントアプリケーション１８５は、そのロケーションからメディア共有アプリケーション１２８によって共有されるプレイリストを取り出し得る。
【００５３】
１つまたは複数のプレイリストの各々は、運転者デバイス１２０からクライアントデバイス１８０にストリーミングされ得る、１つまたは複数のメディア項目のリストを含んでいることがある。各プレイリストは、特定のプレイリストに対して１人または複数のユーザにアクセスを制限するために使用され得る、ユーザ識別子をも含み得る。各プレイリストは、１つまたは複数のメディア項目の各々について１つまたは複数のプロパティを含み得る。プロパティは、概して、いくつかの例として、各メディア項目についての名前、長さ、解像度、フレームレート、プロファイルレベル、ビットレート、および／またはファイルフォーマットなど、情報を含み得る。プレイリストとメディア項目とのプロパティについて図２Ａ〜図２Ｄに関して以下でさらに詳細に説明する。
【００５４】
１つまたは複数のプレイリストを受信すると、クライアントアプリケーション１８５は、ディスプレイ１８２を用いてクライアントデバイス１８０のユーザにプレイリストを出力し得る。ディスプレイ１８２は、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なビデオ出力デバイスのいずれかを備え得る。クライアントデバイス１８０は、ユーザ入力デバイス１８７からプレイリストのうちの１つを選択するユーザ入力を受信し得る。ユーザ入力デバイス１８７は、たとえば、キーボード、マウス、トラックボールまたはトラックパッド、タッチスクリーン、ボイスコマンド認識モジュール、あるいは他のそのようなユーザ入力デバイスであり得る。
【００５５】
プレイリストを受信したことに応答して、クライアントアプリケーション１８５は、プレイリストのどのメディア項目がクライアントデバイス１８０によって出力されることが可能であるかを判断し、ディスプレイ１８２を使用してクライアントデバイス１８０のユーザにクライアントデバイス１８０によって出力されることが可能なメディア項目を提示し得る。クライアントデバイス１８０がメディア項目のうちのどれを再生することが可能であるかを判断するために、クライアントアプリケーション１８５は、クライアントデバイス１８０のインストールされたコーデック、デジタル著作権管理（ＤＲＭ）機能、および／またはハードウェア機能について、オペレーティングシステムに問い合わせ、クライアントデバイス１８０の機能を、プレイリストおよびプレイリストのメディア項目中に含まれる属性情報と比較し得る。
【００５６】
クライアントアプリケーション１８５は、クライアントデバイス１８０が再生することが可能である、選択されたプレイリストからのメディア項目を、ディスプレイ１８２を使用してクライアントデバイス１８０のユーザに表示し得る。クライアントデバイス１８０のユーザは、ユーザ入力デバイス１８７を用いて再生のためにプレイリストから１つまたは複数のメディア項目を選択し得る。１つまたは複数のメディア項目のための選択を受信したことに応答して、クライアントアプリケーション１８５は、送信／受信ユニット１８６に、選択されたメディア項目のうちの１つについての再生要求を作成することを行わせ得る。いくつかの例では、再生要求は、ソースデバイス１２０が選択されたメディア項目を再生、一時停止、停止、記録することなどを要求し得る。送信／受信ユニット１８６は、通信チャネル１５２を介して送信／受信ユニット１２６に選択されたメディア項目についての要求を送信し得る。
【００５７】
クライアントデバイス１８０のユーザが、プレイリストから複数のメディア項目を選択した場合、クライアントアプリケーション１８５は、選択されたメディア項目のうちの第１のメディア項目についての再生要求を発行し得、選択されたメディア項目の残りについての要求をエンキューし得、その結果、第１のメディア項目の再生が完了すると、クライアントアプリケーション１８５は、エンキューされたメディア項目のうちの１つを再生のために要求し、要求されたメディア項目をストリーミングし、すべてのエンキューされたメディア項目が要求およびストリーミングされるまで、エンキューされたメディア項目を要求およびストリーミングするプロセスを繰り返す。
【００５８】
一例では、クライアントデバイス１８０は、ＷＦＤ接続を使用してソースデバイス１２０と接続され得る。クライアントデバイス１８０は、クライアントデバイス１８０によってレンダリングされたとき、１つまたは複数のメディア項目をさらに含んでいる１つまたは複数のプレイリストを示す、表示情報（たとえば、グラフィカル表現）を受信し得る。クライアントデバイス１８０は、ディスプレイ１８２を使用してクライアントデバイス１８０のユーザに表示情報を出力し得、クライアントデバイス１８０のユーザは、ＵＩ１８７を使用して再生のための１つまたは複数のメディア項目を選択し得る。一例では、クライアントデバイス１８０は、ＷＦＤ接続を使用して１つまたは複数のメディア項目を記述する情報を備える、プレイリストを受信し得る。ＵＩ１８７は、１つまたは複数のメディア項目を選択するユーザ入力コマンドを受信し、ＵＩＢＣを介してソースデバイス１２０に送信する。
【００５９】
１つまたは複数のメディア項目について、クライアントデバイス１８０からＲＴＳＰ再生要求またはＵＩＢＣユーザ入力コマンドなど、要求またはメディア再生コマンドを受信したことに応答して、メディア共有アプリケーション１２８は、送信／受信ユニット１２６に、要求されたメディア項目のストリームを構成することを行わせ得る。いくつかの例では、送信／受信ユニット１２６は、メディア項目のストリームのためにＲＴＰセッションを構成し得る。送信／受信ユニット１２６は、クライアントデバイス１８０とのＲＴＰセッションを確立し、通信チャネル１５２を介して送信／受信ユニット１８６にメディア項目のためのストリームを送信し得る。クライアントデバイス１８０が、ＷＦＤ接続からプレイリストに関する情報を受信し、ＵＩＢＣを使用してメディア項目選択を送信する、上記で説明した例では、ソースデバイス１２０およびクライアントデバイス１８０は、メディア項目および／またはプレイリストを選択するＵＩＢＣ入力コマンドを受信したことに応答してＷＦＤ接続を終了し得る。ＵＩＢＣ接続が終了すると、ソースデバイス１２０とクライアントデバイス１８０は、ＲＴＳＰ、および／またはＲＴＰを使用して通信し続け得る。
【００６０】
いくつかの例では、メディア共有アプリケーション１２８は、クライアントデバイス１８０にメディア項目を送信する前に、選択されたメディア項目を異なるフォーマットにトランスコードする必要があり得る。そのような場合、メディアアプリケーション１２８は、選択されたメディアフォーマットをあるフォーマットから別のフォーマットに、たとえばＭＰＥＧレイヤ３オーディオ（ＭＰ３）フォーマットからＷｉｎｄｏｗｓ  Ｍｅｄｉａ  Ａｕｄｉｏ（ＷＭＡ）フォーマットに再符号化するためにオーディオ／ビデオエンコーダ１２４を利用し得る。
【００６１】
送信／受信ユニット１８６は、送信／受信ユニット１２６から要求されたメディア項目のＲＴＰストリームを受信し得る。要求されたメディア項目のストリームのパケットのうちのいくつかが、順序が乱れている場合、送信／受信ユニット１８６は、そのストリームを正しい順序に再アセンブルし、および／または並べ替え得る。送信／受信ユニット１８６はまた、欠落したパケットなど、受信されたＲＴＰストリームに何らかの問題があるかどうかを判断し得、ソースデバイス１２０に欠落したパケットを再要求し得る。
【００６２】
クライアントアプリケーション１８５は、そのストリームを分析し、ディスプレイ１８２とスピーカー１８３とを使用してそのストリームのオーディオ部分および／またはビデオ部分を出力し得る。このようにして、ディスプレイ１８２とスピーカー１８３とによってレンダリングされているオーディオおよびビデオデータは、ディスプレイ１８２とスピーカー１８３とによって同時にレンダリングされ得る。オーディオデータおよびビデオデータはフレームで構成され得、オーディオフレームは、レンダリングされるとき、ビデオフレームと時間同期され得る。クライアントアプリケーション１８５が、メディア項目のストリームが復号される必要があると判断した場合、クライアントアプリケーション１８５は、そのストリームを出力する前に、符号化されたストリームを復号するためにオーディオ／ビデオデコーダ１８４を利用し得る。
【００６３】
図１Ｃは、本開示の技法を実装し得る例示的なシステム１０１を示すブロック図である。システム１０１はソースデバイス１２０とシンクデバイス１６０とを含み、それらの各々は、図１Ａについて上記で説明した方法で機能し、動作し得る。システム１０１はクライアントデバイス１８０をさらに含む。上記で説明したように、クライアントデバイス１８０は、ソースデバイス１２０とワイヤレス接続することと、ソースデバイス１２０のメディア共有アプリケーション１２８からメディアをストリーミングすることとが可能な任意のデバイスであり得る。シンクデバイス１６０は、たとえば、ＲＴＳＰおよび／またはＲＴＰなどのストリーミングプロトコルを使用して、ＷＩＦＩを介してソースデバイス１２０からオーディオおよびビデオデータを受信し得る。いくつかの構成では、シンクデバイス１６０とクライアントデバイス１８０とは、互いとは無関係に動作し得、ソースデバイス１２０において出力されるオーディオおよびビデオデータは、シンクデバイス１６０とクライアントデバイス１８０とにおいて同時に出力され得る。シンクデバイス１６０とクライアントデバイス１８０は別個のデバイスとして示されているが、それらは同じデバイスであり得る。システム１０１が単一のクライアントデバイス１８０を有するにすぎないものとして示されているが、これは一例にすぎず、限定的であるべきでない。クライアントデバイス１８０と同様の追加のデバイスもシステム１０１中に存在し得る。
【００６４】
図２Ａは、本開示の技法によるメディア項目のプレイリストを示す概念図である。図２Ａは、３つの例示的なプレイリスト、プレイリスト２００、２０２、および２０４を示している。プレイリストの各々は、図１Ａ〜図１Ｃの例において上記で説明したようなメディア項目のプレイリストを備え得る。プレイリスト２００、２０２、および２０４は、関連するプレイリストのプロパティを記述する１つまたは複数の関連する属性をも含み得る。プレイリスト２００、２０２、および２０４の各々は、オーディオ、ビデオおよびピクチャメディア項目など、１つまたは複数のメディア項目を含み得る。メディア項目は、メディア項目のプロパティを記述する、属性またはメタデータをも含み得る。
【００６５】
プレイリスト２００、２０２、および２０４の１つまたは複数の属性の各々は概して識別子を有し得る。識別子は１つまたは複数の値のリストに関連し得る。一例として、プレイリスト２００、２０２、２０４は「数」属性を含み得る。数属性は、あるクライアントデバイスがソースデバイス１２０からクライアントデバイス１８０にストリーミングし得る各プレイリストに関連するメディア項目の数を示し得る。別の例として、プレイリスト２００、２０２、２０４は「ユーザ」属性をも含み得る。ユーザ属性は、特定のプレイリストに関連するメディア項目をストリーミングすることを許容される、１人または複数のユーザ、ユーザのグループ、および／またはデバイスのリストに関連し得る。
【００６６】
いくつかの例では、アクセス属性に関連する値は、プレイリストのメディア項目をストリーミングすることを許される特定のユーザのユーザ名を備え得る。一例として、図２Ａでは、プレイリスト２００はユーザ名「ジェシー」および「ボブ」を含み得、それらのユーザ名は、プレイリスト２００がユーザ「ジェシー」および「ボブ」にとってアクセス可能であるべきであることを示す。いくつかの他の例では、アクセス属性に関連する値はデバイスの識別子を備え得る。たとえば、デバイス識別子は、ＩＰアドレス、マシンアクセス制御（ＭＡＣ：Machine Access Control）アドレス、または特定のデバイスを識別する別のハードウェアを備え得る。いくつかの他の例では、アクセス属性は、１人または複数のユーザのグループに対応するグループ識別子を備え得る。
【００６７】
メディア共有アプリケーション１２８は、クライアントデバイスによってメディア共有アプリケーション１２８に与えられたハードウェア識別子（たとえばＭＡＣアドレス）を比較することによって、ハードウェア識別子で識別されたクライアントデバイスを認証し得る。図２Ａの例では、プレイリスト２０２のユーザ属性はＭＡＣアドレス（「ＢＦ：５４：５１：７Ｅ：３０：Ｂ６」）に関連する。メディア共有アプリケーション１２８は、クライアントデバイス、たとえばクライアントデバイス１８０のＭＡＣアドレスをプレイリスト２０２に関連する（１つまたは複数の）ＭＡＣアドレスと比較し得る。与えられた識別子が、ユーザ属性に関連する識別子（たとえばＭＡＣアドレス）のうちの１つに一致する場合、メディア共有アプリケーション１２８は、クライアントデバイス１８０にアクセスを許可し得る。
【００６８】
メディア共有アプリケーション１２８は、様々な異なる認証機構を使用してクライアントデバイス、たとえばクライアントデバイス１８０のユーザを認証し得る。いくつかの例では、クライアントアプリケーション１２８は、クライアントデバイス１８０に認証情報、たとえば、ユーザ名およびパスワードを要求し得る。クライアントデバイス１８０からユーザ名およびパスワードを受信したことに応答して、メディア共有アプリケーション１２８は、受信されたユーザ名およびパスワードをユーザ属性に関連するユーザ名と比較し得る。一例では、プレイリスト２００のユーザ属性は、関連するユーザ「ジェシー」および「ボブ」を含む。メディア共有アプリケーション１２８は、クライアントアプリケーション１８５にユーザ名およびパスワードを要求し得、ユーザ名「ボブ」とユーザボブのためのパスワードとを含む応答を受信し得る。メディア共有アプリケーション１２８は、ユーザ名ボブがユーザ属性中に含まれると判断し得る。メディア共有アプリケーション１２８は、次いで、クライアントデバイス１８０によって供給されたパスワードがローカルに記憶されたパスワードに一致するかどうかを判断するために、記憶されたパスワードを供給されたパスワードと比較し得る。供給されたパスワードが記憶されたパスワードに一致する場合、メディア共有アプリケーション１２８は、クライアントデバイス１８０を認証し、クライアントデバイス１８０にプレイリスト２００のメディア項目へのアクセスを許可し得る（すなわち、そのメディア項目のストリーミングを可能にし得る）。メディア共有アプリケーション１２８は、ソースデバイス１２０のデータベースまたはローカルストレージにユーザのパスワードを記憶し得る。いくつかの例では、メディア共有アプリケーション１２８は、ユーザまたはデバイスを認証するための証明書システムなど、認証技法を利用し得る。他の例では、
図２Ａの例では、プレイリストユーザ２０４のユーザ属性は、１人または複数のユーザのグループがプレイリスト２０４のメディア項目にアクセスすることを許されることを示し得る、識別子「大人」を含む。この例では、グループ「大人」は、大人に対応し子供を除くユーザのグループが、プレイリスト２０４のメディア項目をストリーミングすることを許容されることを示し得る。ユーザ、たとえば子供を除外することは、ユーザの除外されたグループに適していないコンテンツを人々がストリーミングするのを防ぐ際に、あるいは慎重な扱いを要するまたは特権的メディア項目のプレイリストへのアクセスを有するべきであるユーザのみにアクセスを制限する際に、有用であり得る。
【００６９】
プレイリスト２００、２０２、２０４のユーザ属性が、プレイリスト２００、２０２、２０４のメディア項目へのアクセスを許されるユーザまたはデバイスのリストとして示されているが、特定のプレイリストのユーザ属性は、代替的に、プレイリストのメディア項目にアクセスすることから除外されたユーザおよび／またはデバイスのリストを含み得る。いくつかの例では、プレイリストは、プレイリストのメディア項目にアクセスすることを許容されるユーザのリストと、特定のプレイリストへのアクセスを拒否されるユーザのリストとを含み得る。
【００７０】
図２Ｂは、本開示の技法によるメディア項目を含むプレイリストを示す概念図である。図２Ｂは、プレイリスト２００に関連するメディア項目を示している。図２Ｂは３つのメディア項目２２０、２２２、２２４を含む。プレイリスト２００のメディア項目など、メディア項目は、ワイヤレス送信され得る任意のタイプのメディアを備え得る。図２Ｂの例では、メディア項目２２０は、Ｈ．２６４ビデオ、ＭＰＥＧ（Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）ビデオ、または他のビデオフォーマットなど、ビデオメディアであり得る。メディア項目２２２は、ＭＰ３、ＷＭＡ、ＯＧＧ  Ｖｏｒｂｉｓ、ＦＬＡＣ（Ｆｒｅｅ  Ｌｏｓｓｌｅｓｓ  Ａｕｄｉｏ  Ｃｏｄｅｃ）、あるいは他の圧縮または非圧縮メディアフォーマットなど、オーディオメディアであり得る。メディア項目２２４は、生のＪＰＥＧ（Ｊｏｉｎｔ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）、ＢＭＰ（ビットマップ）、またはＴＩＦＦ（Ｔａｇｇｅｄ  Ｉｍａｇｅ  Ｆｉｌｅ  Ｆｏｒｍａｔ）の画像フォーマット、あるいは別の画像メディアフォーマットなど、画像ファイルであり得る。図２Ｂには示されていないが、ドキュメント、ウェブページ、および描画メディアフォーマットなど、他のメディアフォーマットも、プレイリスト内にメディア項目として含まれ得る。
【００７１】
図２Ｂは、クライアントデバイス１８０のユーザに提示され得るプレイリスト２００を示す、たとえばクライアントアプリケーション１８５の、例示的なインターフェースをも表し得る。ユーザ入力デバイス１８７（図１Ａ、図１Ｂ）のうちの１つからユーザ入力を受信したことに応答して、クライアントデバイスは、ソースデバイス１２０が、プレイリスト２００のメディア項目２２０、２２２、および／または２２４のうちの１つまたは複数に関係する再生コマンドを実行することを要求し得る。一例では、再生コマンドは、再生、停止、一時停止、記録など、１つまたは複数のＲＴＳＰコマンド、および／あるいは他のＲＴＳＰコマンドまたは要求を備え得る。ＲＴＳＰに関して説明するが、クライアントデバイス１８５は、ソースデバイス１２０からのメディア再生を制御するための他のプロトコルを利用し得る。
【００７２】
１つまたは複数の再生コマンドを受信したことに応答して、メディア共有アプリケーション１２８は、要求された再生コマンドに従ってアクションを実行し得る。一例として、クライアントアプリケーション１８５が、メディア共有アプリケーション１２８がメディア項目２００を再生することを要求する、ＲＴＳＰ再生コマンドをメディア共有アプリケーション１２８に送信した場合、メディア共有アプリケーション１２８は、要求されたメディア項目２０２に対応するストリームをクライアントアプリケーション１８５に送ることによって応答し得る。別の例として、メディア共有アプリケーション１２８がＲＴＳＰ停止コマンドを受信した場合、メディア共有アプリケーション１２８は、現在再生している、メディア項目２２２などのメディア項目をストリーミングすることを停止し得る。メディア項目の再生を制御するためのＲＴＳＰを使用することに加えて、ソースデバイス１２０からクライアントデバイス１８０に送られたメディア項目のストリームは、概して、ＲＴＰストリームを制御するためにＲＴＳＰを使用しながら実際のメディア項目をストリーミングするためにＲＴＰなどの異なるプロトコルを使用し得る。
【００７３】
図２Ｃおよび図２Ｄは、本開示の技法によるメディア項目に関連する属性および値の２つの例を示す概念図である。図２Ｃおよび図２Ｄは、メディア項目２２０および２２２に関連する属性および値のうちのいくつかを示している。メディア項目２２０、２２２、２２４の各々は、１つまたは複数の関連する属性を有し得る。関連する属性の各々は、１つまたは複数の関連する値を有し得る。メディア項目２２０、２２２、および２２４の属性のフォーマットは、概してプレイリスト２００、２０２、２０４の属性のフォーマットと同様であり得、その場合、属性は、１つまたは複数の値のリストに関連する識別子を有する。
【００７４】
概して、メディア項目は、ファイル名、ファイルタイプ、解像度、ビットレート、長さ、および／またはプロファイル属性を有し得る。ファイル名属性は、メディア項目のファイル名またはタイトルを示し得る。ファイルタイプ属性は、メディア項目がビデオのメディア項目であるのか、オーディオのメディア項目であるのか、別のファイルフォーマットのメディア項目であるのかを示し得る。いくつかの例では、ファイルタイプ属性は、メディア項目のオーディオまたはビデオなどの特定のタイプなど（たとえばＨ．２６４またはＭＰ３）、より具体的な情報をも示し得る。
【００７５】
解像度属性は、メディア項目の水平および垂直解像度を示し得る。ソースデバイス１２０とクライアントデバイス１８０は、１つまたは複数のメディア項目の解像度属性に基づいて、クライアントデバイス１８０が出力することが可能である１つまたは複数の解像度のセットをネゴシエートし得る。このネゴシエーションプロセスの一部として、ソースデバイス１２０とクライアントデバイス１８０は、ネゴシエートされたスクリーン解像度に関して同意することができる。クライアントデバイス１８０が、ストリーミングビデオなど、メディア項目に関連するデータをストリーミングするとき、ソースデバイス１２０は、ネゴシエートされたスクリーン解像度に一致するようにメディア項目のビデオデータをスケーリングまたはトランスコードすることができる。このようにして、クライアントデバイス１８０は、同意された解像度のビデオデータを受信し得る。同意された解像度でクライアントデバイス１８０にビデオを与えることによって、クライアントデバイス１８０は、追加の電力および／または処理サイクルを消費し得る、メディア項目のビデオデータをトランスコードすることを行う必要がないことがある。
【００７６】
図２Ｃでは、メディア項目２２０の解像度は１９２０×１０８０ピクセルである。一例では、クライアントデバイス１８０が１２８０×７２０解像度を有し、ソースデバイス１２０が１６００×９００解像度を有する場合、それらのデバイスは、たとえば、それらのネゴシエートされた解像度として１２８０×７２０を使用し得る。ネゴシエートされた解像度はクライアントデバイス１８０の解像度に基づいて選択され得るが、ソースデバイス１２０の解像度または何らかの他の解像度も使用され得る。１２８０×７２０のシンクデバイスが使用される例では、クライアントデバイス１８０は、取得されたｘ座標をソースデバイス１２０に送信するより前に、その座標を１６００／１２８０の割合でスケーリングすることができ、同様に、クライアントデバイス１８０は、取得されたｙ座標をソースデバイス１２０に送信するより前に、その座標を９００／７２０でスケーリングすることができる。他の構成では、ソースデバイス１２０は、取得された座標をネゴシエートされた解像度に合わせてスケーリングすることができる。そのスケーリングは、クライアントデバイス１８０がソースデバイス１２０よりも高い解像度のディスプレイを使用するのか、またはその逆であるのかに基づいて、座標範囲を増加または減少させ得る。図２Ｄでは、メディア項目２２２の解像度属性は、メディア項目２２２が、解像度を有しないＭＰ３オーディオファイルであるので、値を有しない（該当なし）。メディア項目は、メディア項目のストリーミングビットレートを示し得る、ビットレート属性をも含み得る。図２Ｃでは、メディア項目２２０はメガビット／秒（１２Ｍｂｉｔ／ｓ）のビットレートを有する。メディア項目２２２は３２０キロビット／秒（３２０ｋｂｉｔ／ｓ）のビットレートを有する。静止画像またはドキュメントなど、メディア項目がビットレートを有しない場合、ビットレート属性に関連する値がないことがある。
【００７７】
メディア項目２２０、２２２は、メディア項目の再生時間を示す、長さ属性をも有し得る。メディア項目２２０は１時間と４０分（１時間４０分）の長さを有する。メディア項目２２２は２分と２２秒（２分２２秒）の長さを有する。長さ属性に加えて、メディア項目は、メディア項目の機能または符号化特徴を示し得る、関連するプロファイル属性を有し得る。一例として、メディア項目２２０のプロファイル属性値の値は、ＭＰＥＧ４ビデオの特定のプロファイルに対応し得る、「メイン」である。メディア項目２２２は、ＭＰ３メディアがプロファイルを有しないので、プロファイル属性に関連する値を有しない。図２ＣにおいてＨ．２６４ビデオのプロファイルに関して説明したが、他のプロファイル値も可能であり得る。
【００７８】
クライアントアプリケーション１８５は、クライアントデバイス１８０が再生することが可能であるメディア項目のサブセットを判断するために、プレイリスト２００のメディア項目２２０、２２２、２２４に関連する属性の値を使用し得る。クライアントアプリケーション１８５が、クライアントデバイス１８０が再生することが可能であるメディア項目を判断すると、クライアントアプリケーション１８５は、クライアントデバイス１８５が再生することが可能である、メディア項目のサブセットのうちのそれらのメディア項目のみをクライアントデバイス１８５のユーザに出力し得る。ユーザは、サブセットから、クライアントデバイス１８０が再生することが可能であるメディア項目のみを再生のために選択し得る。
【００７９】
クライアントデバイス１８０がどのメディア項目を再生することが可能であるかを判断するために、クライアントアプリケーション１８５は、クライアントデバイス１８０のハードウェア機能を判断するためにクライアントデバイス１８０に問い合わせ得る。クライアントアプリケーション１８５は、ＲＡＭの量、記憶スペース、出力デバイス解像度、音出力機能、プロセッサ速度、インストールされたライブラリ、コーデック（符号器復号器）、またはクライアントデバイス１８０上でのメディア項目の再生に関係する他の情報に関して、オペレーティングシステムに問い合わせ得る。クライアントアプリケーション１８５が、プレイリスト、たとえばプレイリスト２００へのアクセスを要求するとき、クライアントアプリケーション１８５は、クライアントデバイス１８０がどのメディア項目を再生することが可能であるかを判断するために、プレイリスト２００の属性およびプレイリスト２００のメディア項目２２０、２２２、２２４の属性をクライアントデバイス１８５の機能と比較し得る。
【００８０】
一例として、クライアントデバイス１８０は、１２８０×７２０ピクセルビデオ解像度のみを表示することが可能な出力デバイスを有し得る。クライアントアプリケーション１８５は、メディア項目２２０が１９２０×１０８０解像度を有すると判断し得、クライアントデバイス１８０による再生のために利用可能なプレイリスト２００のメディア項目からメディア項目２２０を除外し得る。代替として、クライアントアプリケーション１８５は、ソースデバイス１２０がメディア項目２２０のビデオを１２８０×７２０解像度までスケールダウンすることができると判断し得、再生のために利用可能なプレイリスト２００のメディア項目中にメディア項目２２０を含め得る。
【００８１】
別の例では、クライアントアプリケーション１８５は、クライアントデバイス１８０とソースデバイス１２０との間の通信リンク１５２の接続速度、たとえば１０Ｍｂｉｔ／ｓの帯域幅を判断し得る。接続速度に基づいて、クライアントアプリケーション１８５は、過大なバッファリングなしに特定のメディア項目をストリーミングするのに十分な帯域幅があるかどうかを判断し得る。メディア項目２２０が、利用可能な１０Ｍｂｉｔ／ｓ帯域幅よりも大きい１２Ｍｂｉｔ／ｓのビットレートを有するので、クライアントアプリケーション１８５は、再生のために利用可能なプレイリスト２２０のメディア項目のリストからメディア項目２２０を除外し得る。クライアントアプリケーション１８５は、メディア項目２２２のビットレート属性を検査し得、３２０ｋｂｉｔ／ｓの値が１０Ｍｂｉｔ／ｓの帯域幅よりも少ないので、再生のために利用可能なプレイリスト２２０のメディア項目のリスト中にメディア項目２２２を含め得る。
【００８２】
クライアントデバイス１８０がどのメディア項目を再生することが可能であるかを判断し、ユーザにそれらのメディア項目のみを提示する能力は、クライアントデバイス１８０が制限された機能を有する状況において有用であり得る。一例として、自動車設定では、クライアントデバイス１８０は、より新しいコーデックまたはメディアプロファイルを含む更新を受信しないことがある、シートバックメディアプレーヤなど、自動車に組み込まれたハードウェアであり得る。したがって、クライアントデバイス１８０は、著しく様々なメディア項目を表示することが可能でないことがあり、クライアントデバイス１８０が再生することが可能でないメディア項目は、ユーザに最終的に提示されるメディア項目のプレイリストから除外されるべきである。
【００８３】
プレイリスト２００、２０２と、メディア項目２２０、２２２、および２２４との属性は、様々なフォーマットで記憶され得る。いくつかの例では、属性およびそれらの関連する値は、ＸＭＬ（拡張可能マークアップ言語）、２進数、ＣＳＶ（カンマ区切り値）、ＨＴＭＬ（ハイパーテキストマークアップ言語）、または記録を記憶する他のフォーマットで記憶され得る。いくつかの例では、プレイリストとメディア項目との属性はプレイリスト自体に記憶され得る。いくつかの事例では、属性およびそれらの関連する値は、メディア共有アプリケーション１２５が各プレイリストおよび／またはメディア項目に関連する一意の識別子に基づいて索引付けし得る別個のデータベースに記憶され得る。
【００８４】
図３は、ＷＤシステムのためのデータ通信モデルまたはプロトコルスタックの一例を示すブロック図である。データ通信モデル３００は、実装されたＷＤシステムにおいてソースデバイスとシンクデバイスとの間でデータを送信するために使用されるデータおよび制御プロトコル間の対話を示している。一例では、ＷＤシステム１００はデータ通信モデル３００を使用し得る。データ通信モデル３００は、物理（ＰＨＹ）レイヤ３０２と、メディアアクセス制御（ＭＡＣ）レイヤ（３０４）と、インターネットプロトコル（ＩＰ）３０６と、ユーザデータグラムプロトコル（ＵＤＰ）３０８と、リアルタイムプロトコル（ＲＴＰ）３１０と、ＭＰＥＧ２トランスポートストリーム（ＭＰＥＧ２−ＴＳ）３１２と、コンテンツ保護３１４と、パケット化エレメンタリーストリーム（ＰＥＳ）パケット化３１６と、ビデオコーデック３１８と、オーディオコーデック３２０と、トランスポート制御プロトコル（ＴＣＰ）３２２と、リアルタイムストリーミングプロトコル（ＲＴＳＰ）３２４と、フィードバックパケット化３２８と、ヒューマンインターフェースデバイス定数３３０と、一般ユーザ入力３３２と、性能分析３３４と、オペレーティングシステム（ＯＳ）３３６とを含む。
【００８５】
物理レイヤ３０２およびＭＡＣレイヤ３０４は、ＷＤシステムにおいて通信のために使用される物理的シグナリング、アドレス指定およびチャネルアクセス制御を定義し得る。物理レイヤ３０２およびＭＡＣレイヤ３０４は、通信のために使用される周波数帯域構造、たとえば、７００ＭＨｚ、２．４ＧＨｚ、３．６ＧＨｚ、５ＧＨｚ、６０ＧＨｚにおいて定義される連邦通信委員会の帯域または超広帯域（ＵＷＢ）周波数帯域構造を定義し得る。物理レイヤ３０２およびＭＡＣ３０４はまた、データ変調技法、たとえばアナログおよびデジタル振幅変調、周波数変調、位相変調技法、およびそれらの組合せを定義し得る。物理レイヤ３０２およびＭＡＣ３０４はまた、多重化技法、たとえば、時分割多元接続（ＴＤＭＡ）、周波数分割多元接続（ＦＤＭＡ）、符号分割多元接続（ＣＤＭＡ）、あるいはＯＦＤＭ、ＦＤＭＡ、ＴＤＭＡおよび／またはＣＤＭＡの任意の組合せを定義し得る。一例では、物理レイヤ３０２およびメディアアクセス制御レイヤ３０４は、ＷＦＤによって与えられるＷｉ−Ｆｉ規格など、Ｗｉ−Ｆｉ（たとえば、ＩＥＥＥ８０２．１１−３００７および８０２．１１ｎ−３００９ｘ）規格によって定義され得る。他の例では、物理レイヤ３０２およびメディアアクセス制御レイヤ３０４は、ＷｉｒｅｌｅｓｓＨＤ、Ｗｉｒｅｌｅｓｓ  Ｈｏｍｅ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ（ＷＨＤＩ）、ＷｉＧｉｇ、およびＷｉｒｅｌｅｓｓ  ＵＳＢのいずれかによって定義され得る。
【００８６】
インターネットプロトコル（ＩＰ）３０６、ユーザデータグラムプロトコル（ＵＤＰ）３０８、リアルタイムプロトコル（ＲＴＰ）３１０、トランスポート制御プロトコル（ＴＣＰ）３２２、およびリアルタイムストリーミングプロトコル（ＲＴＳＰ）３２４は、ＷＤシステムにおいて使用されるパケット構造とカプセル化とを定義し、インターネットエンジニアリングタスクフォース（ＩＥＴＦ）によって維持される規格に従って定義され得る。
【００８７】
ＲＴＳＰ３２４は、機能をネゴシエートし、セッションと、セッション維持および管理とを確立するために、ソースデバイス１２０およびシンクデバイス１６０によって使用され、ならびに、本開示の技法に従ってメディア項目を送信するために、ソースデバイス１２０およびシンクデバイス１６０によって使用され得る。たとえば、ソースデバイス１２０は、ソースデバイス１２０に関係のある機能のリストを指定する機能要求メッセージ（たとえば、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ）をシンクデバイス１６０に送り得る。シンクデバイス１６０は、その機能をサポートするシンクデバイス１６０の機能を宣言する機能応答メッセージ（たとえば、ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ）でソースデバイス１２０に応答し得る。一例として、シンクデバイス１６０が上記機能をサポートする場合、機能応答メッセージは「はい」を示し得る。ソースデバイス１２０は、次いで、上記機能がサポートされることを示す肯定応答要求メッセージ（たとえば、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ）をシンクデバイス１６０に送り得る。シンクデバイス１６０は、上記機能がメディア共有セッション中に使用されることになることを肯定応答する肯定応答応答メッセージ（たとえば、ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ）でソースデバイス１２０に応答し得る。
【００８８】
ビデオコーデック３１８は、ＷＤシステムによって使用され得るビデオデータコーディング技法を定義し得る。ビデオコーデック３１８は、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４、ＶＰ８および高効率ビデオコーディング（ＨＥＶＣ）など、任意の数のビデオ圧縮規格を実装し得る。いくつかの事例では、ＷＤシステムが圧縮ビデオデータまたは非圧縮ビデオデータのいずれかであり得ることに留意されたい。
【００８９】
オーディオコーデック３２０は、ＷＤシステムによって使用され得るオーディオデータコーディング技法を定義し得る。オーディオデータは、Ｄｏｌｂｙ  ａｎｄ  Ｄｉｇｉｔａｌ  Ｔｈｅａｔｅｒ  Ｓｙｓｔｅｍｓによって開発されたマルチチャネルフォーマットなどのマルチチャネルフォーマットを使用してコーディングされ得る。オーディオデータは、圧縮または非圧縮フォーマットを使用してコーディングされ得る。圧縮オーディオフォーマットの例としては、ＭＰＥＧ−１、２  Ａｕｄｉｏ  Ｌａｙｅｒｓ  ＩＩおよびＩＩＩ、ＡＣ−３、ＡＡＣがある。非圧縮オーディオフォーマットの一例としては、パルスコード変調（ＰＣＭ）オーディオフォーマットがある。
【００９０】
パケット化エレメンタリーストリーム（ＰＥＳ）パケット化３１６およびＭＰＥＧ２トランスポートストリーム（ＭＰＥＧ２−ＴＳ）３１２は、コーディングされたオーディオおよびビデオデータがどのようにパケット化され、送信されるかを定義し得る。パケット化エレメンタリーストリーム（ＰＥＳ）パケット化３１６およびＭＰＥＧ−ＴＳ３１２は、ＭＰＥＧ−２  Ｐａｒｔ１に従って定義され得る。他の例では、オーディオおよびビデオデータは、他のパケット化およびトランスポートストリームプロトコルに従ってパケット化され、送信され得る。コンテンツ保護３１４は、オーディオまたはビデオデータの無認可のコピーに対する保護を与え得る。一例では、コンテンツ保護３１４は、Ｈｉｇｈ  ｂａｎｄｗｉｄｔｈ  Ｄｉｇｉｔａｌ  Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ２．０仕様に従って定義され得る。
【００９１】
図４は、シンクデバイスにビデオおよび／またはアプリケーションデータを送信する技法を実装し得るソースデバイスの一例を示すブロック図である。ソースデバイス４００は、図３において与えられるデータ通信モデルを組み込むＷＤシステムの一部であり得る。ソースデバイス４００は、トランスポート、記憶、および／または表示のためにメディアデータを符号化および／または復号するように構成され得る。ソースデバイス４００は、メモリ４０２と、ディスプレイプロセッサ４０４と、ローカルディスプレイ４０６と、オーディオプロセッサ４０８と、スピーカー４１０と、ビデオエンコーダ４１２と、ビデオパケッタイザ４１４と、オーディオエンコーダ４１６と、オーディオパケッタイザ４１８と、Ａ／Ｖ  ｍｕｘ４２０と、トランスポートモジュール４２２と、モデム４２４と、制御モジュール４２６と、フィードバックデパケッタイザ４２８と、フィードバックモジュール４３０とを含む。ソースデバイス４００の構成要素は、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適な回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。
【００９２】
メモリ４０２は、圧縮または非圧縮フォーマットでメディアデータの形態でＡ／Ｖ視覚データを記憶し得る。メモリ４０２は、メディアデータファイル全体を記憶し得るか、または、たとえば、別のデバイスまたはソースからストリーミングされた、メディアデータファイルの一部分を記憶するにすぎない、より小さいバッファを備え得る。メモリ４０２は、限定はしないが、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュメモリなどを含む、多種多様な揮発性または不揮発性メモリのいずれかを備え得る。メモリ４０２は、メディアデータならびに他の種類のデータを記憶するためのコンピュータ可読記憶媒体を備え得る。メモリ４０２は、本開示で説明する様々な技法を実行することの一部としてプロセッサによって実行される命令とプログラムコードとをさらに記憶し得る。
【００９３】
ディスプレイプロセッサ４０４は、キャプチャされたビデオフレームを取得し得、ローカルディスプレイ４０６上での表示のためにビデオデータを処理し得る。ディスプレイ４０６は、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、またはソースデバイス４００のユーザにビデオデータを提示することが可能な別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのうちの１つを備える。
【００９４】
オーディオプロセッサ４０８は、オーディオキャプチャされたオーディオサンプルを取得し得、スピーカー４１０への出力のためにオーディオデータを処理し得る。スピーカー４１０は、ヘッドフォン、シングルスピーカーシステム、マルチスピーカーシステム、またはサラウンドサウンドシステムなど、様々なオーディオ出力デバイスのいずれかを備え得る。
【００９５】
ビデオエンコーダ４１２は、メモリ４０２からビデオデータを取得し、ビデオデータを所望のビデオフォーマットに符号化し得る。ビデオエンコーダ４１２は、図３に関して上記で説明したビデオコーデック３１８の態様を実装するために使用されるハードウェアとソフトウェアの組合せであり得る。ビデオエンコーダ４１２は、ＩＴＵ−Ｔ  Ｈ．２６１、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４、ＶＰ８および高効率ビデオコーディング（ＨＥＶＣ）など、任意の数のビデオ圧縮規格に従ってビデオを符号化し得る。場合によっては、ビデオエンコーダ４１２は、ビデオデータがロスレスまたは不可逆圧縮技法を使用して圧縮されるように、ビデオを符号化し得ることに留意されたい。
【００９６】
ビデオパケッタイザ４１４は、符号化されたビデオデータをパケット化し得る。一例では、ビデオパケッタイザ４１４は、ＭＰＥＧ−２  Ｐａｒｔ１に従って定義されるように、符号化されたビデオデータをパケット化し得る。他の例では、ビデオデータは他のパケット化プロトコルに従ってパケット化され得る。ビデオパケッタイザ４１４は、図３に関して上記で説明したパケット化エレメンタリーストリーム（ＰＥＳ）パケット化２１６の態様を実装するために使用されるハードウェアとソフトウェアの組合せであり得る。
【００９７】
オーディオエンコーダ４１６は、メモリ４０２からオーディオデータを取得し、オーディオデータを所望のオーディオフォーマットに符号化し得る。オーディオエンコーダ４１６は、図３に関して上記で説明したオーディオコーデック３２０の態様を実装するために使用されるハードウェアとソフトウェアの組合せであり得る。オーディオデータは、Ｄｏｌｂｙ  ａｎｄ  Ｄｉｇｉｔａｌ  Ｔｈｅａｔｅｒ  Ｓｙｓｔｅｍｓによって開発されたマルチチャネルフォーマットなどのマルチチャネルフォーマットを使用してコーディングされ得る。オーディオデータは、圧縮または非圧縮フォーマットを使用してコーディングされ得る。圧縮オーディオフォーマットの例としては、ＭＰＥＧ−１、２  Ａｕｄｉｏ  Ｌａｙｅｒｓ  ＩＩおよびＩＩＩ、ＡＣ−３、ＡＡＣがある。非圧縮オーディオフォーマットの一例としては、パルスコード変調（ＰＣＭ）オーディオフォーマットがある。
【００９８】
オーディオパケッタイザ４１８は、符号化されたオーディオデータをパケット化し得る。一例では、オーディオパケッタイザ４１８は、ＭＰＥＧ−２  Ｐａｒｔ１に従って定義されるように、符号化されたオーディオデータをパケット化し得る。他の例では、オーディオデータは他のパケット化プロトコルに従ってパケット化され得る。オーディオパケッタイザ４１８は、図３に関して上記で説明したパケット化エレメンタリーストリーム（ＰＥＳ）パケット化３１６の態様を実装するために使用されるハードウェアとソフトウェアの組合せであり得る。
【００９９】
Ａ／Ｖ  ｍｕｘ４２０は、共通データストリームの一部としてビデオペイロードデータとオーディオペイロードデータとを組み合わせるために多重化技法を適用し得る。一例では、Ａ／Ｖ  ｍｕｘ４２０は、ＭＰＥＧ−２  Ｐａｒｔ１に従って定義されるＭＰＥＧ２トランスポートストリームとして、パケット化エレメンタリービデオストリームとオーディオストリームとをカプセル化し得る。Ａ／Ｖ  ｍｕｘ４２０は、オーディオおよびビデオパケットのための同期、ならびに誤り訂正技法を与え得る。
【０１００】
トランスポートモジュール４２２は、シンクデバイスへのトランスポートのためにメディアデータを処理し得る。さらに、トランスポートモジュール４２２は、シンクデバイスからの受信されたパケットがさらに処理され得るように、それらのパケットを処理し得る。たとえば、トランスポートモジュール４２２は、ＩＰ、ＴＣＰ、ＵＤＰ、ＲＴＰ、およびＲＴＳＰを使用して通信するように構成され得る。たとえば、トランスポートモジュール４２２は、さらに、シンクデバイスへのまたはネットワーク上での通信のためにＭＰＥＧ２−ＴＳをカプセル化し得る。
【０１０１】
モデム４２４は、ＷＤシステムにおいて利用される物理およびＭＡＣレイヤに従って物理およびＭＡＣレイヤ処理を実行するように構成され得る。図３を参照しながら説明したように。物理およびＭＡＣレイヤは、ＷＤシステムにおいて通信のために使用される物理的シグナリング、アドレス指定およびチャネルアクセス制御を定義し得る。一例では、モデム４２４は、ＷＦＤによって与えられるＷｉ−Ｆｉ規格など、Ｗｉ−Ｆｉ（たとえば、ＩＥＥＥ８０２．１１ｘ）規格によって定義される物理およびＭＡＣレイヤのための物理レイヤおよびＭＡＣレイヤ処理を実行するように構成され得る。他の例では、モデム４２４は、ＷｉｒｅｌｅｓｓＨＤ、ＷｉＭｅｄｉａ、Ｗｉｒｅｌｅｓｓ  Ｈｏｍｅ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ（ＷＨＤＩ）、ＷｉＧｉｇ、およびＷｉｒｅｌｅｓｓ  ＵＳＢのいずれかについて物理レイヤおよびＭＡＣレイヤ処理を実行するように構成され得る。
【０１０２】
制御モジュール４２６は、ソースデバイス４００通信制御機能を実行するように構成され得る。通信制御機能は、機能をシンクデバイスとネゴシエートすることと、シンクデバイスとのセッションを確立することと、セッション維持および管理とに関係し得る。制御モジュール４２６は、シンクデバイスと通信するためにＲＴＳＰを使用し得る。さらに、制御モジュール４２６は、ＵＩＢＣの機能をサポートするためのソースデバイス４００とシンクデバイスとの機能をネゴシエートするためにＲＴＳＰメッセージトランザクションを使用し得る。
【０１０３】
フィードバックデパケッタイザ４２８は、フィードバックパケットからのヒューマンインターフェースデバイスコマンド（ＨＩＤＣ：human interface device command）と、一般ユーザ入力と、ＯＳ固有ユーザ入力と、性能情報とをパースし得る。フィードバックカテゴリーフィールドは、フィードバックパケットペイロードデータが一般情報要素を使用してフォーマットされることを示すための一般入力カテゴリーを識別し得る。別の例として、フィードバックカテゴリーフィールドは、ヒューマンインターフェースデバイスコマンド（ＨＩＤＣ）入力カテゴリーを識別し得る。別の例として、フィードバックカテゴリーフィールドは、ペイロードデータがソースデバイスまたはシンクデバイスのいずれかによって使用されるオペレーティングシステム（ＯＳ）のタイプに基づいてフォーマットされることを示すためのＯＳ固有入力カテゴリーを識別し得る。
【０１０４】
フィードバックモジュール４３０は、フィードバックデパケッタイザから性能情報を受信し、性能情報を処理し、その結果、ソースデバイス４００は、性能情報メッセージに基づいてメディアデータの送信を調整し得る。
【０１０５】
ソースデバイス４００は、第２のワイヤレスコンピューティングデバイスにコンテンツを送信するように構成されたソースデバイスの一例を与える。ソースデバイス４００は、ＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始し、第１のワイヤレスコンピューティングデバイスからＷＦＤ接続を介して第２のワイヤレスコンピューティングデバイスにデータを送信し、第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行し、ワイヤレスクライアントコンピューティングデバイスにプレイリストのメディア項目を記述する情報を送信し得る。メディア項目を記述する情報を送信することは、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせ、ワイヤレスクライアントコンピューティングデバイスにメディア項目を送信し得る。
【０１０６】
図５は、ソースデバイスからビデオおよび／または他の情報を受信するための技法を実装するシンクデバイスまたはクライアントデバイスの一例を示すブロック図である。シンクまたはクライアントデバイス５００は、図３において与えられるデータ通信モデルを組み込むＷＤシステムの一部であり得る。一例では、シンクまたはクライアントデバイス５００は、ソースデバイス４００とともにＷＤシステムを形成し得る。シンクまたはクライアントデバイス５００は、モデム５０２と、トランスポートモジュール５０４と、Ａ／Ｖ  ｄｅｍｕｘ５０６と、ビデオデパケッタイザ５０８と、ビデオデコーダ５１０と、ディスプレイプロセッサ５１２と、ディスプレイ５１４と、オーディオデパケッタイザ５１６と、オーディオデコーダ５１８と、オーディオプロセッサ５２０と、スピーカー５２２と、ユーザ入力モジュール５２４と、性能分析モジュール５２６と、フィードバックパケッタイザ５２８と、制御モジュール５３０とを含む。シンクまたはクライアントデバイス５００の構成要素はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適な回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。
【０１０７】
モデム５０２は、ＷＤシステムにおいて利用される物理およびＭＡＣレイヤに従って物理およびＭＡＣレイヤ処理を実行するように構成され得る。図３を参照しながら説明したように。物理およびＭＡＣレイヤは、ＷＤシステムにおいて通信のために使用される物理的シグナリング、アドレス指定およびチャネルアクセス制御を定義し得る。一例では、モデム５０２は、ＷＦＤによって与えられるＷｉ−Ｆｉ規格など、Ｗｉ−Ｆｉ（たとえば、ＩＥＥＥ８０２．１１ｘ）規格によって定義される物理およびＭＡＣレイヤのための物理レイヤおよびＭＡＣレイヤ処理を実行するように構成され得る。他の例では、モデム５０２は、ＷｉｒｅｌｅｓｓＨＤ、ＷｉＭｅｄｉａ、Ｗｉｒｅｌｅｓｓ  Ｈｏｍｅ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ（ＷＨＤＩ）、ＷｉＧｉｇ、およびＷｉｒｅｌｅｓｓ  ＵＳＢのいずれかについて物理レイヤおよびＭＡＣレイヤ処理を実行するように構成され得る。
【０１０８】
トランスポートモジュール５０４は、ソースデバイスからの受信されたメディアデータを処理し得る。さらに、トランスポートモジュール５０４は、ソースデバイスへのトランスポートのためにフィードバックパケットを処理し得る。たとえば、トランスポートモジュール５０４は、ＩＰ、ＴＣＰ、ＵＤＰ、ＲＴＰ、およびＲＳＴＰを使用して通信するように構成され得る。さらに、トランスポートモジュール５０４は、ＩＰ、ＴＣＰ、ＵＤＰ、ＲＴＰ、およびＲＳＴＰパケットの任意の組合せ中にタイムスタンプ値を含め得る。タイムスタンプ値は、ソースデバイスが、どのメディアデータパケットが報告された性能劣化を経験したかを識別することと、ＷＤシステムにおける往復遅延を計算することとを可能にし得る。
【０１０９】
Ａ／Ｖ  ｄｅｍｕｘ５０６は、データストリームからビデオペイロードデータとオーディオペイロードデータとを分離するために多重化解除技法を適用し得る。一例では、Ａ／Ｖ  ｍｕｘ５０６は、ＭＰＥＧ−２  Ｐａｒｔ１に従って定義されるＭＰＥＧ２トランスポートストリームのパケット化エレメンタリービデオストリームとオーディオストリームとを分離し得る。
【０１１０】
ビデオデパケッタイザ５０８およびビデオデコーダ５１０は、本明細書で説明するパケット化およびコーディング技法を実装するビデオパケッタイザおよびビデオエンコーダの逆の処理を実行し、ディスプレイプロセッサ５１２にビデオ出力ビデオデータを出力し得る。
【０１１１】
ディスプレイプロセッサ５１２は、キャプチャされたビデオフレームを取得し得、ディスプレイ５１４上での表示のためにビデオデータを処理し得る。ディスプレイ５１４は、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイなど、様々なディスプレイデバイスのうちの１つを備え得る。
【０１１２】
オーディオデパケッタイザ５１６およびオーディオデコーダ５１８は、本明細書で説明するパケット化およびコーディング技法を実装するオーディオパケッタイザおよびオーディオエンコーダの逆の処理を実行し、ディスプレイプロセッサ５２０にオーディオデータを出力し得る。
【０１１３】
オーディオプロセッサ５２０は、オーディオデコーダからオーディオデータを取得し得、スピーカー５２２への出力のためにオーディオデータを処理し得る。スピーカー５２２は、ヘッドフォン、シングルスピーカーシステム、マルチスピーカーシステム、またはサラウンドサウンドシステムなど、様々なオーディオ出力デバイスのいずれかを備え得る。
【０１１４】
ユーザ入力モジュール５２４は、たとえば、キーボード、マウス、トラックボールまたはトラックパッド、タッチスクリーン、ボイスコマンド認識モジュールなど、ユーザ入力デバイス、あるいは他のそのようなユーザ入力デバイスによって受信されたユーザ入力コマンドをフォーマットし得る。一例では、ユーザ入力モジュール５２４は、図３に関して上記で説明したヒューマンインターフェースデバイスコマンド（ＨＩＤＣ）３３０と、一般ユーザ入力３３２と、ＯＳ固有ユーザ入力３３６とに従って定義されるフォーマットに従ってユーザ入力コマンドをフォーマットし得る。
【０１１５】
性能分析モジュール５２６は、ソースデバイスから受信されたメディアデータパケットに基づいて性能情報を判断し得る。性能情報は、遅延ジッタ、パケットロス、時間における誤差分布、パケット誤り率、および時間におけるＲＳＳＩ分布、ならびに本明細書で説明する他の例を含み得る。性能分析モジュール５２６は、本明細書で説明する技法のいずれかに従って性能情報を計算し得る。
【０１１６】
フィードバックパケッタイザ５２８は、フィードバックパケットを作成するために、ユーザ入力モジュール５２４と性能分析モジュール生成器５２６とからのユーザ入力情報をパケット化し、処理し得る。一例では、フィードバックパケットは、図３に関して説明したメッセージフォーマットを使用し得る。さらに、フィードバックパケッタイザ５２８は、フィードバックパケットの各々の中にタイムスタンプ値を含め得る。タイムスタンプ値は、ソースデバイスが、どのメディアデータパケットが報告された性能劣化を経験したかを識別することと、ＷＤシステムにおける往復遅延を計算することとを可能にし得る。
【０１１７】
制御モジュール５３０は、シンクまたはクライアントデバイス５００通信制御機能を実行するように構成され得る。通信制御機能は、機能をソースデバイスとネゴシエートすることと、ソースデバイスとのセッションを確立することと、セッション維持および管理とに関係し得る。制御モジュール５３０は、ソースデバイスと通信するためにＲＴＳＰを使用し得る。さらに、制御モジュール５３０は、ＵＩＢＣの特徴をサポートするためにシンクまたはクライアントデバイス５００とソースデバイスとの機能をネゴシエートし得る。
【０１１８】
一例では、シンクデバイス５００は、ソースデバイス４００（図４）など、ワイヤレスソースデバイスとのＷＦＤ接続を開始することと、ソースデバイス４００からＷＦＤ接続を介したソースデバイス４００へのデータを受信することとを行うように構成されたソースデバイスの一例を与える。シンクデバイス５００と同様または同等であり得る、ワイヤレスクライアントコンピューティングデバイスは、ワイヤレスクライアントデバイスがソースデバイス４００のプレイリストの共有メディア項目を受信することを可能にするメディアクライアントアプリケーションを実行し得る。ワイヤレスクライアントコンピューティングデバイスは、ソースデバイス４００からプレイリストのメディア項目を記述する情報を受信し得る。メディア項目を記述する情報の受信は、ワイヤレスクライアントコンピューティングデバイスに、ワイヤレスクライアントコンピューティングデバイスがメディア項目を出力することが可能であるかどうかを判断することを行わせ得る。ワイヤレスクライアントコンピューティングデバイスは、ソースデバイス４００からメディア項目を受信し得る。
【０１１９】
図６に、通信チャネル１５０を介して通信するために図１Ａの送信機／受信機１２６と送信機／受信機１６６とによって使用され得る、例示的な送信機システム６１０と受信機システム６５０とのブロック図を示す。送信機システム６１０において、いくつかのデータストリームのトラフィックデータがデータソース６１２から送信（ＴＸ）データプロセッサ６１４に与えられる。各データストリームは、それぞれの送信アンテナを介して送信され得る。ＴＸデータプロセッサ６１４は、各データストリームのトラフィックデータを、そのデータストリーム用に選択された特定のコーディング方式に基づいてフォーマットし、コーディングし、インターリーブする。
【０１２０】
各データストリームのコード化データは、直交周波数分割多重化（ＯＦＤＭ）技法を使用してパイロットデータと多重化され得る。限定はしないが、時分割多元接続（ＴＤＭＡ）、周波数分割多元接続（ＦＤＭＡ）、符号分割多元接続（ＣＤＭＡ）、あるいはＯＦＤＭ、ＦＤＭＡ、ＴＤＭＡおよび／またはＣＤＭＡの任意の組合せを含む、多種多様な他のワイヤレス通信技法も使用され得る。
【０１２１】
図３に従って、パイロットデータは、典型的には、知られている方法で処理される知られているデータパターンであり、チャネル応答を推定するために受信機システムにおいて使用され得る。次いで、各データストリームの多重化されたパイロットおよびコード化データは、変調シンボルを与えるために、そのデータストリーム用に選択された特定の変調方式（たとえば、２位相シフトキーイング（ＢＰＳＫ）、４位相シフトキーイング（ＱＰＳＫ）、Ｍ−ＰＳＫ、またはＭ−ＱＡＭ（直交振幅変調）、ここでＭは２のべき乗であり得る）に基づいて変調（たとえば、シンボルマッピング）される。各データストリームのデータレート、コーディング、および変調は、メモリ６３２に結合され得るプロセッサ６３０によって実行される命令によって判断され得る。
【０１２２】
次いで、データストリームの変調シンボルがＴＸ  ＭＩＭＯプロセッサ６２０に与えられ、ＴＸ  ＭＩＭＯプロセッサ６２０はさらに（たとえば、ＯＦＤＭ用に）その変調シンボルを処理し得る。次いで、ＴＸ  ＭＩＭＯプロセッサ６２０はＮT個の変調シンボルストリームをＮT個の送信機（ＴＭＴＲ）６２２ａ〜６２２ｔに与えることができる。いくつかの態様では、ＴＸ  ＭＩＭＯプロセッサ６２０は、データストリームのシンボルと、シンボルがそこから送信されているアンテナとにビームフォーミング重みを適用する。
【０１２３】
各送信機６２２は、それぞれのシンボルストリームを受信し、処理して、１つまたは複数のアナログ信号を与え、さらに、それらのアナログ信号を調整（たとえば、増幅、フィルタ処理、およびアップコンバート）して、ＭＩＭＯチャネルを介した送信に適した被変調信号を与え得る。次いで、送信機６２２ａ〜６２２ｔからのＮT個の被変調信号は、それぞれＮT個のアンテナ６２４ａ〜６２４ｔから送信される。
【０１２４】
受信機システム６５０において、送信された被変調信号はＮR個のアンテナ６５２ａ〜６５２ｒによって受信され、各アンテナ６５２からの受信信号は、それぞれの受信機（ＲＣＶＲ）６５４ａ〜６５４ｒに与えられる。受信機６５４は、それぞれの受信信号を調整（たとえば、フィルタ処理、増幅、およびダウンコンバート）し、調整された信号をデジタル化して、サンプルを与え、さらにそれらのサンプルを処理して、対応する「受信」シンボルストリームを与える。
【０１２５】
次いで、受信（ＲＸ）データプロセッサ６６０は、ＮR個の受信機６５４からＮR個の受信シンボルストリームを受信し、特定の受信機処理技法に基づいて処理して、ＮT個の「検出」シンボルストリームを与える。次いで、ＲＸデータプロセッサ６６０は、各検出シンボルストリームを復調し、デインターリーブし、復号して、データストリームのトラフィックデータを復元する。ＲＸデータプロセッサ６６０による処理は、送信機システム６１０におけるＴＸ  ＭＩＭＯプロセッサ６２０およびＴＸデータプロセッサ６１４によって実行される処理を補足するものである。
【０１２６】
メモリ６７２と結合され得るプロセッサ６７０は、どのプリコーディング行列を使用すべきかを周期的に判断する。逆方向リンクメッセージは、通信リンクおよび／または受信データストリームに関する様々なタイプの情報を備え得る。次いで、逆方向リンクメッセージは、データソース６３６からいくつかのデータストリームのトラフィックデータをも受信するＴＸデータプロセッサ６３８によって処理され、変調器６８０によって変調され、送信機６５４ａ〜６５４ｒによって調整され、送信機システム６１０に返信される。
【０１２７】
送信機システム６１０において、受信機システム６５０からの被変調信号は、アンテナ６２４によって受信され、受信機６２２によって調整され、復調器６４０によって復調され、ＲＸデータプロセッサ６４２によって処理されて、受信機システム６５０によって送信された逆方向リンクメッセージが抽出される。次いで、プロセッサ６３０は、ビームフォーミング重みを判断するためにどのプリコーディング行列を使用すべきかを判断し、次いで、抽出されたメッセージを処理する。
【０１２８】
図７Ａは、ＷＦＤセッションのための機能ネゴシエーションの一部としてのソースデバイス１２０とシンクデバイス１６０との間の例示的なメッセージ転送シーケンスを示すブロック図である。機能ネゴシエーションは、ソースデバイス１２０とシンクデバイス１６０との間のより大きいＷＦＤ通信セッション確立プロセスの一部として行われ得る。このセッションは、たとえば、基礎をなす接続性規格としてのＷＩ−ＦＩ  ＤｉｒｅｃｔまたはＴＤＬＳで確立され得る。ＷＩ−ＦＩ  ＤｉｒｅｃｔまたはＴＤＬＳセッションを確立した後に、シンクデバイス１６０は、ソースデバイス１２０とのＴＣＰ接続を開始することができる。ＴＣＰ接続を確立することの一部として、ソースデバイス１２０とシンクデバイス１６０との間の通信セッションを管理するために、リアルタイムストリーミングプロトコルを実行する制御ポートが確立され得る。
【０１２９】
ソースデバイス１２０は、概して、図１Ａのソースデバイス１２０について上記で説明したのと同じ方法で動作し得、シンクデバイス１６０は、概して、図１Ａのシンクデバイス１６０について上記で説明したのと同じ方法で動作し得る。ソースデバイス１２０とシンクデバイス１６０とが接続性を確立した後、ソースデバイス１２０とシンクデバイス１６０とは、機能ネゴシエーション交換の一部としてそれらのデバイスの後続の通信セッションのために使用されるべきパラメータのセットを判断し得る。
【０１３０】
ソースデバイス１２０とシンクデバイス１６０とは、メッセージのシーケンスを通して機能をネゴシエートし得る。それらのメッセージは、たとえば、リアルタイムストリーミングプロトコル（ＲＴＳＰ）メッセージであり得る。そのネゴシエーションのいずれかの段階において、ＲＴＳＰ要求メッセージの受信側が、ＲＴＳＰ  ＯＫ以外のＲＴＳＰステータスコードを含むＲＴＳＰ応答で応答し得、その場合、メッセージ交換はパラメータの異なるセットを用いて再試行され得、または機能ネゴシエーションセッションは終了され得る。
【０１３１】
ソースデバイス１２０は、シンクデバイス１６０がサポートするＲＴＳＰ方法のセットを判断するために、シンクデバイス１６０に第１のメッセージ（ＲＴＳＰ  ＯＰＴＩＯＮＳ要求メッセージ）を送ることができる。ソースデバイス１２０から第１のメッセージを受信すると、シンクデバイス１６０は、シンク１６０によってサポートされるＲＴＳＰ方法をリストする第２のメッセージ（ＲＴＳＰ  ＯＰＴＩＯＮＳ応答メッセージ）で応答することができる。また、第２のメッセージはＲＴＳＰ  ＯＫステータスコードを含み得る。
【０１３２】
ソースデバイス１２０に第２のメッセージを送った後に、シンクデバイス１６０は、ソースデバイス１２０がサポートするＲＴＳＰ方法のセットを判断するために、第３のメッセージ（ＲＴＳＰ  ＯＰＴＩＯＮＳ要求メッセージ）を送ることができる。シンクデバイス１６０から第３のメッセージを受信すると、ソースデバイス１２０は、ソースデバイス１２０によってサポートされるＲＴＳＰ方法をリストする第４のメッセージ（ＲＴＳＰ  ＯＰＴＩＯＮＳ応答メッセージ）で応答することができる。また、第４のメッセージはＲＴＳＰ  ＯＫステータスコードを含むことができる。
【０１３３】
第４のメッセージを送った後に、ソースデバイス１２０は、ソースデバイス１２０に関係のある機能のリストを指定するために、第５のメッセージ（ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ）を送ることができる。シンクデバイス１６０は第６のメッセージ（ＲＴＳＰ  ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答メッセージ）で応答することができる。第６のメッセージはＲＴＳＰステータスコードを含んでいることがある。ＲＴＳＰステータスコードがＯＫである場合、第６のメッセージは、シンクデバイス１６０によってサポートされる、第５のメッセージ中で指定されたパラメータに対する応答パラメータをも含むことができる。シンクデバイス１６０は、シンクデバイス１６０がサポートしない、第５のメッセージ中のパラメータを無視することができる。
【０１３４】
第６のメッセージに基づいて、ソース１２０は、通信セッションのために使用されるべきパラメータの最適セットを判断することができ、シンクデバイス１６０に第７のメッセージ（ＲＴＳＰ  ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求メッセージ）を送ることができる。第７のメッセージは、ソースデバイス１２０とシンクデバイス１６０との間の通信セッション中に使用されるべきパラメータセットを含んでいることがある。第７のメッセージは、通信セッションをセットアップするためにＲＴＳＰ  Ｓｅｔｕｐ要求中で使用されるべきユニバーサルリソース識別子（ＵＲＩ：Universal Resource Identifier）を記述するｗｆｄ−ｐｒｅｓｅｎｔａｔｉｏｎ−ｕｒｌを含むことができる。ｗｆｄ−ｐｒｅｓｅｎｔａｔｉｏｎ−ｕｒｌは、シンクデバイス１６０がセッション確立交換中に後のメッセージのために使用することができるＵＲＩを指定する。このパラメータ中で指定されたｗｆｄ−ｕｒｌ０値およびｗｆｄ−ｕｒｌ１値は、第７のメッセージ中のｗｆｄ−ｃｌｉｅｎｔ−ｒｔｐ−ｐｏｒｔｓ中のｒｔｐ−ｐｏｒｔ０値およびｒｔｐ−ｐｏｒｔ１値の値に対応することができる。この事例におけるＲＴＰは、概して、ＵＤＰの上で動作することができるリアルタイムプロトコルを指す。
【０１３５】
第７のメッセージを受信すると、シンクデバイス１６０は、第７のメッセージ中で指定されたパラメータを設定することが成功していたかどうかを示すＲＴＳＰステータスコードをもつ第８のメッセージで応答することができる。上述のように、ソースデバイスとシンクデバイスとの役割は、異なるセッションでは逆になるかまたは変化し得る。通信セッションをセットアップするメッセージの順序は、場合によっては、ソースとして動作するデバイスを定義し、シンクとして動作するデバイスを定義し得る。
【０１３６】
図７Ｂは、機能ネゴシエーションセッションの一部としてのソースデバイス１２０とシンクデバイス１６０との間の別の例示的なメッセージ転送シーケンスを示すブロック図である。図７Ｂのメッセージ転送シーケンスは、図７Ａについて上記で説明した転送シーケンスのより詳細な図を与えることを目的とする。図７Ｂでは、メッセージ「１ｂ．ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答」は、サポートされる入力カテゴリー（たとえば一般およびＨＩＤＣ）のリストとサポートされる入力タイプの複数のリストとを識別するメッセージの一例を示す。サポートされる入力カテゴリーのリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられたリスト（たとえばｇｅｎｅｒｉｃ＿ｃａｐ＿ｌｉｓｔおよびｈｉｄｃ＿ｃａｐ＿ｌｉｓｔ）を有する。図７Ｂでは、メッセージ「２ａ．ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求」は、サポートされる入力カテゴリー（たとえば一般およびＨＩＤＣ）の第２のリストと、サポートされるタイプの複数の第２のリストとを識別する、第２のメッセージの一例である。サポートされる入力カテゴリーの第２のリストのサポートされる入力カテゴリーの各々は、サポートされるタイプの関連付けられた第２のリスト（たとえばｇｅｎｅｒｉｃ＿ｃａｐ＿ｌｉｓｔおよびｈｉｄｃ＿ｃａｐ＿ｌｉｓｔ）を有する。メッセージ「１ｂ．ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答」は、シンクデバイス１６０によってサポートされる入力カテゴリーと入力タイプとを識別する。メッセージ「２ａ．ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求」は、ソースデバイス１２０によってサポートされる入力カテゴリーと入力タイプとを識別するが、それは、ソースデバイス１２０によってサポートされるすべての入力カテゴリーと入力タイプとの包括的なリストでないことがある。代わりに、メッセージ「２ａ．ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求」は、シンクデバイス１６０によってサポートされるものとしてメッセージ「１ｂ．ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答」中で識別された入力カテゴリーと入力タイプとのみを識別し得る。このようにして、メッセージ「２ａ．ＳＥＴ＿ＰＡＲＡＭＥＴＥＲ要求」中で識別される入力カテゴリーと入力タイプとは、メッセージ「１ｂ．ＧＥＴ＿ＰＡＲＡＭＥＴＥＲ応答」中で識別された入力カテゴリーと入力タイプとのサブセットを構成し得る。
【０１３７】
図８は、本開示の技法による、ＷＦＤを実行し、メディア項目を送信する方法を示すフローチャートである。図８の方法は、一例として、図１Ａおよび図１Ｂのソースデバイス１２０など、デバイスによって実行され得る。図８についてソースデバイス１２０に関して説明するが、図４のソースデバイス４００を含む、他のソースデバイスも図８の技法を実行し得る。図８の方法では、ソースデバイス１２０は、シンクデバイス１６０（図１Ａ）へのＷＦＤ接続を開始し得る（８００）。いくつかの例では、シンクデバイス１６０とクライアントデバイス１８０は同じデバイスであり得る。
【０１３８】
ソースデバイス１２０は、シンクデバイス１６０へのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始し得る（８００）。ソースデバイス１２０はまた、ソースデバイス１２０からＷＦＤ接続を介してシンクデバイス１６０（図１Ａ）にデータを送信し得る（８０２）。一例では、ソースデバイス１２０からシンクデバイス１６０にデータを送信することは、シンクデバイス１６０に、ソースデバイス１２０のディスプレイ出力デバイスをミラーリングすることを行わせ得る。ソースデバイス１２０はまた、シンクデバイス１６０からユーザ入力を受信し得る。
【０１３９】
ソースデバイス１２０は、ソースデバイス１２０がプレイリストのメディア項目をクライアントデバイス１８０（図１Ｂ）と共有することを可能にするメディア共有アプリケーションを実行し得る（８０４）。ソースデバイス１２０は、クライアントデバイス１８０に、メディア項目を記述する、およびプレイリストのメディア項目のフォーマットを記述する、情報を送信し得る（８０６）。いくつかの例では、メディア項目を記述する情報は、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える。メディア項目を記述する情報は、メディア項目のビットレート、レベル、解像度、ファイルタイプ、およびファイル名のうちの少なくとも１つを含み得る。
【０１４０】
ソースデバイス１２０はまた、第２のＷＦＤ接続を介してワイヤレスクライアントデバイス１８０にプレイリストとプレイリストのメディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信し得る。ソースデバイス１２０は、さらに、第２のＷＦＤ接続を介してクライアントデバイス１８０からユーザ入力バックチャネル入力コマンドを受信し得る。ＵＩＢＣ入力コマンドを受信したことに応答して、第１のワイヤレスコンピューティングデバイスは第２のＷＦＤ接続を終了し得る。
【０１４１】
プレイリストのメディア項目を記述する情報を送信することは、クライアントデバイス１８０に、クライアントデバイス１８０がメディア項目を出力することが可能であるかどうかを判断することを行わせ得る（８０８）。ソースデバイス１２０は、クライアントデバイス１８０にメディア項目を送信し得る（８１０）。ソースデバイス１２０はまた、クライアントデバイス１８０からメディア再生コマンドを受信し得、メディア再生コマンドは、いくつかの例ではＲＴＳＰ指示を備え得る。いくつかの事例では、ソースデバイス１２０は、ＲＴＰを使用してメディア項目を送信し得る。いくつかの事例では、ソースデバイス１２０を用いてメディア項目を送信することは、クライアントデバイス１８０からメディア再生コマンドを受信した後に行われ得る。
【０１４２】
ソースデバイス１２０は、クライアントデバイス１８０から認証情報をも受信し得る。ソースデバイス１２０は、認証情報に基づいてワイヤレスクライアントデバイスを認証し、クライアントデバイス１８０を認証したことに応答してクライアントデバイス１８０にプレイリストへのアクセスを許可し得る。
【０１４３】
例のために特定の順序で示されているが、図８の方法は任意の順序でまたは並列に実行され得、図８の方法は、ＷＦＤ接続を用いてデータを送信することと、同時にメディア共有アプリケーションを実行することとをさらに備え得る。
【０１４４】
１つまたは複数の例では、本開示において説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１４５】
限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１４６】
命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）などの１つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路によって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素中に十分に実装され得る。
【０１４７】
本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置において実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１４８】
様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
第２のワイヤレスコンピューティングデバイスに第１のワイヤレスコンピューティングデバイスのコンテンツを送信する方法であって、前記方法は、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信することであって、前記メディア項目を記述する前記情報を送信することが、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を備える、方法。
［Ｃ２］
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスに前記データを送信することが、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、［Ｃ１］に記載の方法。
［Ｃ３］
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、［Ｃ１］に記載の方法。
［Ｃ４］
前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ５］
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、［Ｃ４］に記載の方法。
［Ｃ６］
前記メディア項目を送信することが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して行われる、［Ｃ４］に記載の方法。
［Ｃ７］
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信することをさらに備える、［Ｃ１］に記載の方法。
［Ｃ８］
前記ＷＦＤ接続を介した前記データ送信と、前記メディア共有アプリケーションの前記実行が同時に行われる、［Ｃ１］に記載の方法。
［Ｃ９］
前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、およびファイル名のうちの少なくとも１つを含む、［Ｃ１］に記載の方法。
［Ｃ１０］
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記認証情報に基づいて前記ワイヤレスクライアントデバイスを認証することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントデバイスを認証したことに応答して前記ワイヤレスクライアントデバイスに前記プレイリストへのアクセスを許可することと
をさらに備える、［Ｃ１］に記載の方法。
［Ｃ１１］
前記メディア項目を送信することが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングすることを備える、［Ｃ１］に記載の方法。
［Ｃ１２］
前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記方法が、
前記第１のワイヤレスコンピューティングデバイスを用いて、第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
をさらに備える、［Ｃ１］に記載の方法。
［Ｃ１３］
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了すること
をさらに備える、［Ｃ１２］に記載の方法。
［Ｃ１４］
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行することが、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信すること
をさらに備える、［Ｃ１］に記載の方法。
［Ｃ１５］
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、［Ｃ１］に記載の方法。
［Ｃ１６］
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと
を行うように構成されたＷＩ−ＦＩディスプレイ（ＷＦＤ）モジュールと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信することであって、前記メディア項目を記述する前記情報の前記送信が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を行うように構成されたメディア共有モジュールと
を備える第１のワイヤレスコンピューティングデバイス。
［Ｃ１７］
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスへの前記データの前記送信が、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ１８］
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ１９］
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信するようにさらに構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２０］
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、［Ｃ１９］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２１］
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して前記メディア項目を送信するように構成された、［Ｃ１９］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２２］
前記ＷＦＤモジュールが、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信するようにさらに構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２３］
前記ＷＦＤ接続を介して送信される前記データと、前記メディア共有アプリケーションの前記実行が同時に行われる、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２４］
前記メディア項目の前記フォーマットを記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、およびファイル名のうちの少なくとも１つを含む、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２５］
前記メディア共有モジュールが、
前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記認証情報に基づいて前記ワイヤレスクライアントコンピューティングデバイスを認証することと、
前記ワイヤレスクライアントコンピューティングデバイスの前記認証に応答して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストへのアクセスを許可することと
を行うようにさらに構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２６］
前記メディア項目を送信するために、前記ＷＦＤモジュールが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングするように構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２７］
前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記ＷＦＤモジュールが、
第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
を行うようにさらに構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２８］
前記ＷＦＤモジュールが、
前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了する
ようにさらに構成された、［Ｃ２７］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ２９］
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行するために、前記メディア共有モジュールが、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信する
ようにさらに構成された、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ３０］
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、［Ｃ１６］に記載の第１のワイヤレスコンピューティングデバイス。
［Ｃ３１］
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始するための手段と、
前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信するための手段と、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行するための手段と、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目を記述する情報を送信するための手段であって、前記メディア項目を記述する前記情報を送信するための前記手段が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信するための手段と、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信するための手段と
を備える第１のワイヤレスコンピューティングデバイス。
［Ｃ３２］
実行されたとき、１つまたは複数のプロセッサに、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目をワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目のフォーマットを記述する情報を送信することであって、前記メディア項目を記述する前記情報の前記送信が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を行わせる、命令を記憶したコンピュータ可読記憶媒体。
【図１Ａ】
2018113696.tif 000003
【図１Ｂ】
2018113696.tif 000004
【図１Ｃ】
2018113696.tif 000005
【図２Ａ】
2018113696.tif 000006
【図２Ｂ】
2018113696.tif 000007
【図２Ｃ】
2018113696.tif 000008
【図２Ｄ】
2018113696.tif 000009
【図３】
2018113696.tif 000010
【図４】
2018113696.tif 000011
【図５】
2018113696.tif 000012
【図６】
2018113696.tif 000013
【図７Ａ】
2018113696.tif 000014
【図７Ｂ】
2018113696.tif 000015
【図８】
2018113696.tif 000016
【手続補正書】
【提出日】平成30年3月12日(2018.3.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第２のワイヤレスコンピューティングデバイスに第１のワイヤレスコンピューティングデバイスのコンテンツを送信する方法であって、前記方法は、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスとワイヤレスクライアントコンピューティングデバイスとの間にワイヤレス通信チャネルを確立することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目を、前記ワイヤレス通信チャネル上で前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記第１のワイヤレスコンピューティングデバイスを用い、前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに、前記プレイリストの前記メディア項目を記述する情報を送信することであって、ここにおいて、前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、またはファイル名のうちの少なくとも１つを含み、前記メディア項目を記述する前記情報を送信することが、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記第１のワイヤレスコンピューティングデバイスを用い、前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を備える、方法。
【請求項２】
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスに前記データを送信することが、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、請求項１に記載の方法。
【請求項３】
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、請求項１に記載の方法。
【請求項４】
前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信することをさらに備える、請求項１に記載の方法。
【請求項５】
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、請求項４に記載の方法。
【請求項６】
前記メディア項目を送信することが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して行われる、請求項４に記載の方法。
【請求項７】
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信することをさらに備える、請求項１に記載の方法。
【請求項８】
前記ＷＦＤ接続を介した前記データ送信と、前記メディア共有アプリケーションの前記実行が同時に行われる、請求項１に記載の方法。
【請求項９】
前記第１のワイヤレスコンピューティングデバイスを用い、前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記認証情報に基づいて前記ワイヤレスクライアントコンピューティングデバイスを認証することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスを認証したことに応答して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストへのアクセスを許可することと
をさらに備える、請求項１に記載の方法。
【請求項１０】
前記メディア項目を送信することが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングすることを備える、請求項１に記載の方法。
【請求項１１】
前記第２のワイヤレスコンピューティングデバイスおよび前記ワイヤレスクライアントコンピューティングデバイスは、異なるデバイスであり、ここにおいて、前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記方法が、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスに前記メディア項目を送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスから、前記メディア項目に関係するユーザ入力を受信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
をさらに備える、請求項１に記載の方法。
【請求項１２】
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了すること
をさらに備える、請求項１１に記載の方法。
【請求項１３】
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行することが、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信すること
をさらに備える、請求項１に記載の方法。
【請求項１４】
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、請求項１に記載の方法。
【請求項１５】
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと
を行うように構成されたＷＩ−ＦＩディスプレイ（ＷＦＤ）モジュールと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目を、ワイヤレス通信チャネル上でワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに、前記プレイリストの前記メディア項目を記述する情報を送信することと
を行うように構成されたメディア共有モジュールと
を備え、前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、またはファイル名のうちの少なくとも１つを含み、前記メディア項目を記述する前記情報の前記送信が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することと、前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することとを行わせる、  第１のワイヤレスコンピューティングデバイス。
【請求項１６】
前記第１のワイヤレスコンピューティングデバイスから前記第２のワイヤレスコンピューティングデバイスへの前記データの前記送信が、前記第２のワイヤレスコンピューティングデバイスに、前記第１のワイヤレスコンピューティングデバイスのディスプレイ出力デバイスをミラーリングすることを行わせる、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項１７】
前記メディア項目のフォーマットを記述する前記情報が、拡張可能マークアップ言語（ＸＭＬ）、２進数、ハイパーテキストマークアップ言語（ＨＴＭＬ）、およびカンマ区切り値（ＣＳＶ）のうちの少なくとも１つを備える、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項１８】
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスからメディア再生コマンドを受信するようにさらに構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項１９】
前記メディア再生コマンドがリアルタイムストリーミングプロトコル（ＲＴＳＰ）指示を備える、請求項１８に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２０】
前記メディア共有モジュールが、前記ワイヤレスクライアントコンピューティングデバイスから前記メディア再生コマンドを受信したことに応答して前記メディア項目を送信するように構成された、請求項１８に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２１】
前記ＷＦＤモジュールが、前記第２のワイヤレスコンピューティングデバイスからユーザ入力を受信するようにさらに構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２２】
前記ＷＦＤ接続を介して送信される前記データと、前記メディア共有アプリケーションの前記実行が同時に行われる、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２３】
前記メディア共有モジュールが、
前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスから認証情報を受信することと、
前記認証情報に基づいて前記ワイヤレスクライアントコンピューティングデバイスを認証することと、
前記ワイヤレスクライアントコンピューティングデバイスの前記認証に応答して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストへのアクセスを許可することと
を行うようにさらに構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２４】
前記メディア項目を送信するために、前記ＷＦＤモジュールが、リアルタイムトランスポートプロトコル（ＲＴＰ）を使用して前記メディア項目をストリーミングするように構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２５】
前記第２のワイヤレスコンピューティングデバイスおよび前記ワイヤレスクライアントコンピューティングデバイスは、異なるデバイスであり、前記ＷＦＤ接続が第１のＷＦＤ接続を備え、前記ＷＦＤモジュールが、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスに前記メディア項目を送信することと、
前記第１のワイヤレスコンピューティングデバイスを用いて、前記第２のワイヤレスコンピューティングデバイスから、前記メディア項目に関係するユーザ入力を受信することと、
第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストと前記プレイリストの前記メディア項目とのうちの少なくとも１つに関係するＷＦＤデータを送信することと、
前記第２のＷＦＤ接続を介して前記ワイヤレスクライアントコンピューティングデバイスからユーザ入力バックチャネル（ＵＩＢＣ）入力コマンドを受信することと
を行うようにさらに構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２６】
前記ＷＦＤモジュールが、
前記ワイヤレスクライアントコンピューティングデバイスから前記ＵＩＢＣ入力コマンドを受信したことに応答して前記第２のＷＦＤ接続を終了する
ようにさらに構成された、請求項２５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２７】
前記第１のワイヤレスコンピューティングデバイスが前記プレイリストの前記メディア項目を前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にする前記メディア共有アプリケーションを実行するために、前記メディア共有モジュールが、
前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストを送信する
ようにさらに構成された、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２８】
前記第２のワイヤレスコンピューティングデバイスと前記ワイヤレスクライアントコンピューティングデバイスが同じデバイスである、請求項１５に記載の第１のワイヤレスコンピューティングデバイス。
【請求項２９】
第１のワイヤレスコンピューティングデバイスであって、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始するための手段と、
前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信するための手段と、
ワイヤレスクライアントコンピューティングデバイスとのワイヤレス通信チャネルを確立するための手段と、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目を、前記通信チャネル上で前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行するための手段と、
前記ワイヤレス通信チャネルを介して、前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに、前記プレイリストの前記メディア項目を記述する情報を送信するための手段であって、ここにおいて、前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、またはファイル名のうちの少なくとも１つを含み、前記情報が、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信するための手段と、
前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレス通信チャネルを介して、前記メディア項目を送信するための手段と
を備える第１のワイヤレスコンピューティングデバイス。
【請求項３０】
実行されたとき、１つまたは複数のプロセッサに、
第２のワイヤレスコンピューティングデバイスとのＷＩ−ＦＩディスプレイ（ＷＦＤ）接続を開始することと、
前記第１のワイヤレスコンピューティングデバイスから前記ＷＦＤ接続を介して前記第２のワイヤレスコンピューティングデバイスにデータを送信することと、
前記第１のワイヤレスコンピューティングデバイスとワイヤレスクライアントコンピューティングデバイスとの間にワイヤレス通信チャネルを確立することと、
前記第１のワイヤレスコンピューティングデバイスがプレイリストのメディア項目を、前記ワイヤレス通信チャネル上で前記ワイヤレスクライアントコンピューティングデバイスと共有することを可能にするメディア共有アプリケーションを実行することと、
前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに前記プレイリストの前記メディア項目のフォーマットを記述する情報を送信することであって、ここにおいて、前記メディア項目を記述する前記情報が、前記メディア項目のビットレート、レベル、解像度、ファイルタイプ、またはファイル名のうちの少なくとも１つを含み、前記情報が、前記ワイヤレスクライアントコンピューティングデバイスによって受信されるとき、前記ワイヤレスクライアントコンピューティングデバイスに、前記ワイヤレスクライアントコンピューティングデバイスが前記メディア項目を出力することが可能であるかどうかを判断することを行わせる、送信することと、
前記ワイヤレス通信チャネルを介して、前記ワイヤレスクライアントコンピューティングデバイスに前記メディア項目を送信することと
を行わせる、記憶された命令を有する、非一時的であるコンピュータ可読記憶媒体。