(57)【特許請求の範囲】
【請求項１】
映像コンテンツを、フレーム内の情報から符号化される基準フレーム、又は前記基準フレームを参照して符号化される差分フレームに符号化する符号化部と、
前記符号化された映像コンテンツを無線通信により出力装置に送信する送信部と、
前記無線通信の通信品質の低下を検出した場合に、前記通信品質の低下を検出するまでの間に前記送信部が送信した基準フレームの内、最後に送信した基準フレーム内のブロックのデータを前記差分フレームに含めて符号化を行うように前記符号化部を制御する符号化制御部と、
を含む、無線通信装置。
【請求項２】
前記符号化制御部は、前記無線通信の通信品質の低下を検出した場合に、更に、前記差分フレームに含める前記基準フレーム内の前記ブロックのブロックサイズを第１のサイズから、前記第１のサイズよりも小さい第２のサイズに変更して符号化を行うように前記符号化部を制御する、請求項１に記載の無線通信装置。
【請求項３】
前記符号化制御部は、前記無線通信の通信品質の低下を検出した場合に、前記映像コンテンツのビットレートを第１のビットレートから、前記第１のビットレートよりも小さい第２のビットレートに変更して符号化を行うように前記符号化部を制御する、請求項１又は請求項２に記載の無線通信装置。
【請求項４】
前記符号化制御部は、
第１の品質への前記無線通信の通信品質の低下を検出した場合に、前記差分フレームに含める前記基準フレームの前記ブロックのブロックサイズを第１のサイズから前記第２のサイズに変更して符号化を行うように前記符号化部を制御し、
前記第１の品質よりも低い第２の品質への前記無線通信の通信品質の低下を検出した場合に、前記差分フレームに含める前記基準フレームの前記ブロックのブロックサイズを前記第２のサイズよりも小さい第３のサイズに変更して符号化を行うように前記符号化部を制御する、請求項２に記載の無線通信装置。
【請求項５】
前記符号化制御部は、前記出力装置との間の通信の通信速度が所定の通信速度よりも遅
くなった場合、又は前記出力装置との間の通信におけるパケットのロス率が所定の割合以上となった場合、前記無線通信の通信品質の低下を検出する、請求項１から請求項４のいずれか１項に記載の無線通信装置。
【請求項６】
映像コンテンツを、フレーム内の情報から符号化される基準フレーム、又は前記基準フレームを参照して符号化される差分フレームに符号化し、
前記符号化された映像コンテンツを無線通信により出力装置に送信し、
前記無線通信の通信品質の低下を検出した場合に、前記通信品質の低下を検出するまでの間に前記出力装置に送信した基準フレームの内、最後に送信した基準フレーム内のブロックのデータを前記差分フレームに含めて符号化を行うように前記符号化を制御する、
処理を、コンピュータに実行させる無線通信プログラム。
【請求項７】
映像コンテンツを、フレーム内の情報から符号化される基準フレーム、又は前記基準フレームを参照して符号化される差分フレームに符号化する工程と、
前記符号化された映像コンテンツを無線通信により出力装置に送信する工程と、
前記無線通信の通信品質の低下を検出した場合に、前記通信品質の低下を検出するまでの間に前記出力装置に送信した基準フレームの内、最後に送信した基準フレーム内のブロックのデータを前記差分フレームに含めて符号化を行うように前記符号化を制御する工程と、
を含む、コンピュータが実行する無線通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信装置、無線通信プログラム、及び無線通信方法に関する。
【背景技術】
【０００２】
近年、例えば、スマートフォン、タブレット端末などの無線通信装置が再生している映像や音声などのコンテンツを、テレビ、ディスプレイ、及びスピーカーなどの出力装置へと無線通信を利用して送信し、出力させる技術が普及してきている。例えば、スマートフォン、タブレット端末などでは、Wi-Fi Display（ミラキャスト：Miracast）のソース（Source）機能が標準で搭載されることが増えている。なお、ソースとは、例えば、無線通信装置が再生している映像や音声をシンク（Sink）機器へと無線通信を利用して送信する機能を有する機器であってよい。無線通信は、例えば無線LAN（Local Area Network）などを介して行われてよい。また、シンクとは、例えば、ソース機能を備えた機器から受信した映像や音声を出力する機能を有する出力装置であってよく、テレビ、ディスプレイ、及びスピーカーなどを含んでいてよい。
【０００３】
ミラキャストでは、映像コンテンツを送信する際に、MPEG2-TSコンテナフォーマットが利用される。なお、MPEG2は、Moving Picture Experts Group 2の略称である。TSは、Transport Streamの略称である。MPEG2-TSコンテナフォーマットでは、映像コーデックに、例えば、H.264コーデックが利用される。また、音声コーデックには、例えば、AACが利用される。AACは、Advanced Audio Codingの略称である。H.264コーデックは、例えば、イントラ符号化フレーム（Ｉフレーム）、予測符号化フレーム（Ｐフレーム）、及び双方向予測符号化フレーム（Ｂフレーム）の３種類のフレームを含み得る。
【０００４】
Ｉフレームは、フレーム内予測（イントラ予測）の結果に基づいて生成される。Ｉフレームは、例えば、他のフレームを参照することなく、単独で復号可能な自己完結型のフレームであり、ビデオシーケンスの最初の画像として用いられる。Ｉフレームは、例えば、新しいビューワの開始ポイントや、送信されたビットストリームが破損している場合の再同期化ポイントとして使用される。Ｉフレームは、例えば、早送り、巻き戻し、その他のランダムアクセス機能を実装するために使用され、一定間隔でＩフレームは自動的に挿入されてよい。Ｉフレームは、例えば、３つのフレームの中ではデータ量が最も大きくなる傾向があるフレームである。なお、以下の説明では、他のフレームを参照せずに復号可能であり、他のフレームの復号において参照される例えばＩフレームなどのフレームを基準フレームと呼ぶことがある。
【０００５】
また、Ｐフレームは、例えば、過去のフレームからフレーム間予測（インター予測）によりフレーム間の差分を符号化して伝送するフレームである。また、Ｂフレームは、例えば、過去及び未来のフレームからフレーム間予測によりフレーム間の差分を符号化して伝送するフレームである。Ｂフレームは、フレーム間の差分を伝送するため、例えば、Ｉフレームよりも少ないデータ量で済む傾向があるが、復号のためにＰフレーム及びＩフレームなどの他のフレームを参照するため、伝送エラーの影響を受け易い。また、Ｐフレームも、復号のために他のフレームを参照するため、Ｂフレームと同様に伝送エラーの影響を受け易い。なお、以下の説明では、Ｂフレーム及びＰフレームなどの復号の際に他のフレームを参照するフレームを差分フレームと呼ぶことがある。
【０００６】
これに関し、能率良く伝送が行え、かつ伝送誤りが生じてもかかる誤りを良好に処理して回復出来る伝送装置を提供するための技術が知られている（例えば、特許文献１参照）。また、シーケンスの先頭がＰピクチャである場合の参照画像ミスマッチと、Ｉピクチャである場合のピクチャスキップを回避できるようにするための技術が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開昭６３−１９９５７２号公報
【特許文献２】特開平１１−４１６０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
例えば、マルチチャネル伝送の利用による電波の干渉などによって、無線通信の通信品質が低下することがある。通信品質が低下すると、無線通信装置が出力装置へと送信した映像データのうちで、例えば、データ量の大きい基準フレームが正常に出力装置で受信されず、出力装置の表示画面にブロックノイズが発生し、映像が正常に表示されない状態になることがある。この場合に、例えば、ＢフレームやＰフレームなどの他のフレームを参照して復号が行われる差分フレームは、画面全体の映像情報を含んでいないため、次の基準フレームが受信されるまでの期間などの或る期間にわたって映像が乱れたままになる事象が発生することがある。１つの側面では本発明は、出力装置が受信して出力する映像に乱れが発生した場合に、映像を早期に復旧することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一つの態様の無線通信装置は、符号化部と、送信部と、符号化制御部とを含む。符号化部は、映像コンテンツを、フレーム内の情報から符号化される基準フレーム、又は基準フレームを参照して符号化される差分フレームに符号化する。送信部は、符号化された映像コンテンツを無線通信により出力装置に送信する。符号化制御部は、無線通信の通信品質の低下を検出した場合に、基準フレーム内のブロックのデータを差分フレームに含めて符号化を行うように符号化部を制御する。
【発明の効果】
【００１０】
一つの態様によれば、出力装置が受信して出力する映像に乱れが発生した場合に、映像を早期に復旧することができる。
【図面の簡単な説明】
【００１１】
【図１】例示的なミラキャストによるコンテンツの伝送処理の流れを説明する図である。
【図２】H.264におけるフレームの構成を例示する図である。
【図３】シンク機器でＩフレームが正常に受信されない場合を例示する図である。
【図４】第１の実施形態に係るソース機器の機能ブロック構成を例示する図である。
【図５】第１の実施形態に係るソース機器の別の機能ブロック構成を例示する図である。
【図６】第１の実施形態に係るコンテンツの伝送処理の動作シーケンスを例示する図である。
【図７】差分フレームへの基準フレームの一部の描画ブロックのデータの挿入について説明する図である。
【図８】描画ブロックのブロックサイズを小さくする処理について説明する図である。
【図９】H.264において選択することが可能なマクロブロックサイズを例示する図である。
【図１０】第１の実施形態に係るコンテンツの伝送処理の動作フローを例示する図である。
【図１１】第２の実施形態に係るコンテンツの伝送処理の動作フローを例示する図である。
【図１２】第２の実施形態に係る符号化設定情報を例示する図である。
【図１３】一実施形態に係るソース機器のハードウェア構成を例示する図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
【００１３】
図１は、例示的なミラキャストによるソース機器１０１からのシンク機器１０２へのコンテンツの伝送処理の流れを説明する図である。なお、ソース機器１０１は、無線通信機能を備える無線通信装置であってよく、例えば、スマートフォン、携帯電話機、タブレット端末などであってよい。また、シンク機器１０２は、例えば、テレビ、ディスプレイ、及びスピーカーなどの無線通信機能を備える出力装置であってよい。そして、例えば、ソース機器１０１で実行されるアプリケーション１０４において、コンテンツの再生指示が入力されたとする。この場合に、アプリケーション１０４は、記憶部１０３に記憶されているコンテンツのファイルを読み出し、コンテンツを復号化して、ソース機器１０１が備える表示部１０５の表示画面へのコンテンツの描画を実行する。また、アプリケーション１０４は、ミラキャストを実行する指示が入力されている場合には、表示部１０５の表示画面へと描画するための画像データをキャプチャする。そして、アプリケーション１０４は、キャプチャした画像のリサイズを行い、MPEG2-TSコンテナフォーマットに符号化してシンク機器１０２へと送信する。なお、MPEG2-TSコンテナフォーマットでは、例えば、コンテンツの映像データはH.264コーデックで符号化され、また音声データはAAC（Advanced Audio Coding）コーデックにより符号化される。
【００１４】
図２は、H.264におけるフレームの構成を例示する図である。H.264では、フレームは、例えば、イントラ符号化フレーム（Ｉフレーム）、予測符号化フレーム（Ｐフレーム）、及び双方向予測符号化フレーム（Ｂフレーム）の３種類を含む。また、図２において、矢印２００は、符号化の際の参照先のフレームを表しており、Ｂフレームは、Ｉフレームと、Ｐフレームとを参照している。また、ＰフレームはＩフレームを参照している。Ｉフレームは、他のフレームを参照しておらず、単独で復号可能な自己完結型のフレームであり、例えば、ビデオシーケンスの最初の画像として用いられる。そのため、Ｉフレームは、３つのフレームの中ではデータ量が大きくなる傾向がある。
【００１５】
また、図３は、ソース機器１０１からのシンク機器１０２へのコンテンツの伝送において、シンク機器１０２でＩフレームが正常に受信されない場合を例示する図である。例えば、マルチチャネル伝送の利用による電波の干渉などによって、無線通信の通信品質が著しく劣化することがある。この場合、通信パケットの伝送エラーの増加や、リンクスピードの落ち込みが発生し、それによって通信パケットが劣化してしまい、例えば、データ量の大きいＩフレームが正常にシンク機器１０２において受信されないことがある。なお、リンクスピードは、例えば、ソース機器１０１とシンク機器１０２との間の通信の通信速度であってよい。また、伝送エラーは、例えば、ソース機器１０１がシンク機器１０２へと送信したパケットがシンク機器１０２で正常に受信されない事象であってよい。この場合、その後に受信されるＢフレームやＰフレームなどの差分フレームは画面全体の映像情報を含んでおらず、復号の際にＩフレームを参照する。そのため、Ｉフレームと比較してデータ量が小さくなる傾向のあるＢフレームやＰフレームなどの差分フレームが正常に受信できたとしても、Ｉフレームが受信されなかったことに起因して差分フレームからは画面全体が正常に復号されない。そして、例えば、或る期間（例えば、図３の矢印３００の期間）に渡って表示画面にブロックノイズが発生し、映像が乱れて正常に再生されない状況が発生する。なお、斜線で示されるフレームは正常に再生されないフレームを表している。
【００１６】
また、この映像の乱れは、次のＩフレームが正常に受信されれば、復旧することができるが、通信状態によっては次のＩフレームも正常に受信されないことが起こり得る。その結果、ユーザーが、長い期間にわたって映像が復旧されない状態でコンテンツを見る事態が生じることがある。そこで、以下で述べる第１の実施形態ではソース機器１０１は、通信品質が低下した場合に、例えば、Ｉフレームなどの基準フレーム内の少なくとも１つの描画ブロックを、ＢフレームやＰフレームなどの差分フレームに含めて伝送する。なお、描画ブロックは、例えば、符号化の単位となるブロックであってよく、H.264においてはマクロブロックであってよい。それにより、シンク機器１０２は、差分フレームに含めて受信された基準フレームの描画ブロックのデータを用いて、ブロックノイズが生じている映像中の描画ブロックに対応する領域を再描画して復旧することができる。従って、ソース機器１０１は、シンク側の出力装置が受信して出力する映像に乱れが発生した場合に、映像を早期に復旧させることができる。以下、第１の実施形態を説明する。
【００１７】
＜第１の実施形態＞
図４は、第１の実施形態に係るソース機器１０１の機能ブロック構成を例示する図である。ソース機器１０１は、例えば、制御部４００、記憶部１０３、及び送信部４２０を含んでいる。制御部４００は、例えば符号化制御部４０１、及び符号化部４０２などの機能部を含んでいる。ソース機器１０１の記憶部１０３は、例えば、プログラム、並びに後述する符号化設定情報１２００などの情報を記憶していてよい。符号化部４０２は、例えば、コンテンツの符号化を実行してよく、また、符号化制御部４０１は、符号化部４０２による符号化を制御してよい。送信部４２０は、制御部４００の指示に従って、シンク機器１０２と通信を行う。これらの各機能部及び記憶部１０３に格納されている情報の更なる詳細については後述する。
【００１８】
図５は、第１の実施形態に係るソース機器１０１の別の機能ブロック構成を例示する図である。図５ではソース機器１０１は、例えば、制御部４００及び無線通信部５２０を含んでいる。ソース機器１０１の制御部４００は、例えば、入力制御部５０１、メディア再生制御部５０２、ビデオ制御部５０３、オーディオ制御部５０４、符号化部５０５、パケット処理部５０６、符号化制御部５０７、通信部５０８、及び通信監視部５０９を含む。入力制御部５０１は、例えば、ソース機器１０１上で動作するメディアプレーヤーなどのアプリケーションであってよく、ユーザーとのインタフェースとして機能してよい。入力制御部５０１は、例えば、ミラキャストによるシンク機器１０２へのコンテンツの出力指示がユーザーから入力された場合、メディア再生制御部５０２に再生依頼を出力する。再生依頼が入力されたメディア再生制御部５０２は、例えば、コンテンツのデータを映像データと音声データとの２つのコーデックに分け、映像データをビデオ制御部５０３に渡し、音声データをオーディオ制御部５０４に渡す。ビデオ制御部５０３は、渡された映像データを復号化し、符号化部５０５へと渡す。符号化部５０５は、ミラキャストでの映像データの出力に用いるフォーマットへと映像データを符号化する処理を実行する。オーディオ制御部５０４は、音声データを復号化し、パケット処理部５０６へと渡す。音声データ、及び符号化された映像データは、パケット処理部５０６に渡され、外部へと出力するためにパケット化される。なお、パケットは、例えば、MPEG2-TSのコンテナフォーマットで作成されてよい。
【００１９】
パケット化されたデータは、通信部５０８に渡され、無線通信部５２０を経由して、シンク機器１０２へと出力される。なお、無線通信部５２０とシンク機器１０２との間の通信は、例えば、無線LANを介してRTPで実行されてよい。なお、RTPは、Real-time Transport Protocolの略称である。通信監視部５０９は、例えば、無線通信部５２０とシンク機器１０２との間の通信の通信品質（例えば、リンクスピード、パケットロス率、及びパケット再送率など）を所定の周期で監視してよい。リンクスピードは、例えば、ソース機器１０１とシンク機器１０２との間の通信の通信速度であってよい。パケットロス率は、例えば、ソース機器１０１がシンク機器１０２へと送信したパケットのうちで、シンク機器１０２で正常に受信されなかったパケットが占める割合であってよい。パケット再送率は、例えば、ソース機器１０１がシンク機器１０２へと送信したパケットのうちで、シンク機器１０２から再送依頼を受信したパケットの割合であってよい。なお、シンク機器１０２は、正常に受信されなかったパケットについてソース機器１０１に再送依頼を送信してよい。
【００２０】
そして、通信監視部５０９は、例えば、通信品質が所定の品質を下回って低下した場合に、符号化制御部５０７に通信品質が低下したことを示す情報を通知する。符号化制御部５０７は、通信監視部５０９から通信品質が低下したことを示す情報の通知を受けると、符号化部５０５に映像データの符号化処理を変更するように指示する。符号化部５０５は、符号化制御部５０７からの指示に従って、コンテンツの符号化処理を変更して、符号化を行う。例えば、符号化部５０５は、符号化処理の変更が指示された場合に、シンク機器１０２へと最後に出力した基準フレームのデータの一部（例えば、マクロブロック単位のデータ）を差分フレームに挿入するように符号化部５０５による符号化処理を変更してよい。これにより、シンク機器１０２は、受信した差分フレームに挿入されている基準フレームの一部のデータを用いて、一部のデータに対応するフレーム内の領域の画像を再描画することができる。従って、例えば、ソース機器１０１とシンク機器１０２との間の通信品質が低下し、シンク機器１０２での再生映像に乱れが発生している場合に、シンク機器１０２で再生される映像の復旧にかかる時間を早めることができる。
【００２１】
図６は、第１の実施形態に係るコンテンツの伝送処理の動作シーケンスを例示する図である。ミラキャストでコンテンツを再生する場合、Wi-Fi Directを用いてソース機器１０１とシンク機器１０２の間で接続が確立される。続いて、RTSPを用いて、ソース機器１０１とシンク機器１０２は、お互いの機器のサポートする機能、能力の情報を交換する。なお、RTSPは、Real Time Streaming Protocolの略称である。その後、ソース機器１０１は、AV Streamingを開始してシンク機器１０２へとRTPパケットを送信し、それにより、シンク機器１０２にコンテンツの映像データ及び音声データが伝送される。そして、第１の実施形態では、AV Streamingを開始すると、ソース機器１０１は、シンク機器１０２に送信するRTPパケットの通信品質を監視する。ソース機器１０１は、通信品質の低下を検出した場合、コンテンツの符号化処理を変更して符号化を行い、シンク機器１０２に送信する。なお、通信品質の低下は、例えばリンクスピードの低下、パケットロス率の増加、パケットの再送率の増加などに基づいて検出されてよい。
【００２２】
また、符号化処理の変更は、例えば以下であってよい。
（１）映像データの基準フレームの描画ブロックのデータを差分フレームに含めて差分フレームを送信する。
（２）映像データの描画ブロックのサイズを小さくする。
（３）映像データのビットレートを低くして符号化を行う。
【００２３】
従って、例えば、シンク機器１０２では、次の基準フレームの受信を待たなくても差分フレームに含まれる基準フレームの描画ブロックのデータを用いて、対応する画面領域を再描画することができる。なお、描画ブロックは、例えば、符号化の単位となるブロックであってよく、H.264においてはマクロブロックであってよい。また、例えば、差分フレームに含める基準フレームのデータの単位である描画ブロックのサイズを小さくすることで、差分フレームに含める基準フレームのデータのデータサイズを細かく調節することが可能である。そのため、例えば、送信するフレームのデータサイズを低減することも可能である。また更に、映像データを、ビットレートを低下させて符号化することでも、送信するフレームのデータサイズを低減することができる。そして、このようにフレームのデータサイズを削減することで、ソース機器１０１とシンク機器１０２との間の通信品質が低下した場合にも、シンク機器１０２でフレームのデータが正常に受信される可能性を高めることができる。
【００２４】
図７は、上述の通信品質が低下した際の差分フレームへの基準フレームの一部の描画ブロックのデータの挿入について更に説明する図である。例えば、通信品質の低下などに起因して、図７の左端の第１の基準フレーム７０１に伝送エラーが発生し、第１の基準フレーム７０１がシンク機器１０２に正常に送達しなかったとする。この場合に、例えば、ソース機器１０１は、最後にシンク機器１０２へと送信した第１の基準フレームの描画ブロック（例えば、マクロブロック）のデータをＢフレームやＰフレームなどの差分フレームのデータに含めて送信する。例えば、図７では、ソース機器１０１は、第１の差分フレーム７０２に第１の基準フレームの上半分の画面領域と対応する複数のマクロブロックのデータを含めて、シンク機器１０２へと伝送する。また、ソース機器１０１は、第２の差分フレーム７０３に第１の基準フレーム７０１の下半分の画面領域と対応する複数のマクロブロックのデータを含めて、シンク機器１０２へと伝送する。従って、シンク機器１０２では、第１の差分フレーム７０２を受信した時点で、第１の差分フレーム７０２に含まれる第１の基準フレーム７０１の上半分の画面領域のデータを用いて、上半分の画面領域を再描画し、復旧することができる。また、同様に、シンク機器１０２は、第２の差分フレーム７０３を受信した時点で、第２の差分フレーム７０３に含まれる第１の基準フレーム７０１の下半分の画面領域のデータを用いて、下半分の画面領域を再描画し、復旧することができる。従って、シンク機器１０２は、次の第２の基準フレーム７０４が受信されるのを待たなくても、例えば、第２の差分フレーム７０３を受信した時点で、フレーム内の画像全体を復旧することができる。なお、図７では、Ｐフレームに基準フレームの一部の描画ブロックのデータを挿入する例を示しているが、Ｂフレームなどの他の差分フレームに基準フレームの一部の描画ブロックのデータが挿入されてもよい。また、差分フレームに挿入する基準フレームの一部の描画ブロックのデータは、１つの描画ブロックのデータであっても、複数の描画ブロックのデータであってもよい。例えば、差分フレームに挿入される基準フレームの描画ブロックの数は、通信品質が低下しても、基準フレームの一部の描画ブロックのデータを含む差分フレームがシンク機器１０２に送達される可能性の高いデータサイズとなるように、所定の数に設定されてよい。
【００２５】
また、図８は、描画ブロックのブロックサイズを小さくすることで、差分フレームに含める基準フレームのデータのデータサイズを細かく調節することについて更に説明する図である。上述のように、描画ブロックは、例えば、符号化の単位となるブロックであってよく、H.264においてはマクロブロックであってよい。この場合、描画ブロックは符号化の単位であるため、描画ブロック単位でデータを受信できれば、シンク機器１０２は、その描画ブロックのデータを復号して対応する領域の画像を描画することができる。従って、描画ブロックは、差分フレームに含める基準フレームのデータの単位として用いることができる。そして、ソース機器１０１は、例えば、ソース機器１０１とシンク機器１０２との間の通信品質が低下した場合に、差分フレームに含める基準フレームの描画ブロックのブロックサイズをより小さいサイズに変更する。図９は、H.264において選択することが可能なマクロブロックサイズを例示する図であり、１６×１６画素、１６×８画素、８×１６画素、８×８画素の複数のマクロブロックサイズが示されている。そして、ソース機器１０１の制御部４００は、例えば、通信品質が低下した場合に、図８に示す様に、差分フレームに含める基準フレームのマクロブロックのブロックサイズを１６×１６画素からより小さいサイズである８×８画素に変更してよい。この様に、差分フレームに含める基準フレームの描画ブロックのブロックサイズをより小さいサイズに変更することで、基準フレームの一部のデータが挿入された差分フレームのデータサイズをより細かく調節することが可能になる。そのため、例えば、送信するフレームのデータサイズを低減することも可能であり、それによって、基準フレームの一部のデータを含む差分フレームがシンク機器１０２に正常に送達される可能性を高めることができる。
【００２６】
また更に、ソース機器１０１の制御部４００は、通信品質が低下し、差分フレームに基準フレームのデータの一部を含めて伝送する場合に、コンテンツの映像データの画質を低下させてビットレートを小さくし、符号化を実行してよい。なお、ビットレートは、例えば、映像データの１秒当たりのデータ量を表す値であってよい。一例として、フルＨＤ（画素数1920×1080）の映像を、７２０ｐ（画素数1280×720）に符号化することでフレーム当たりのデータサイズを削減し、ビットレートを小さくすることができる。そのため、基準フレームの一部のデータを含む差分フレームがシンク機器１０２に送達される可能性を高めることができる。或いは、ビットレートを小さくすることで、例えば、基準フレームに含まれる描画ブロックの数が減るため、差分フレームに含めて伝送する描画ブロックの数を少なくすることができる。そのため、例えば、通信品質が低下して映像が乱れた場合に、映像の復旧を早めることができる。
【００２７】
図１０は、第１の実施形態に係るソース機器１０１の制御部４００が実行するコンテンツの伝送処理の動作フローを例示する図である。図１０のコンテンツの伝送処理の動作フローは、例えば、コンテンツをシンク機器１０２へとストリーミングにより再生する指示がソース機器１０１に入力されると開始してよい。
【００２８】
ステップ１００１（以降、ステップを“Ｓ”と記載し、例えば、Ｓ１００１と表記する）においてソース機器１０１の制御部４００は、例えば、シンク機器１０２との接続を確立する。例えば、ソース機器１０１の制御部４００は、Wi-Fi Directを用いてシンク機器１０２との接続を確立してよい。Ｓ１００２においてソース機器１０１の制御部４００は、コンテンツを符号化する。例えば、ソース機器１０１の制御部４００は、コンテンツから復号化した映像をキャプチャしてリサイズを行い、音声データとともにMPEG2-TSコンテナフォーマットに符号化してよい。Ｓ１００３においてソース機器１０１の制御部４００は、符号化したデータをシンク機器１０２へと送信する。Ｓ１００４においてソース機器１０１の制御部４００は、シンク機器１０２との間の通信の通信品質を監視する。ソース機器１０１の制御部４００は、Ｓ１００４において、例えば、所定のタイミングで通信品質の確認を行ってよく、また、通信品質は、例えばリンクスピード、パケットロス率、及びパケット再送率などであってよい。
【００２９】
Ｓ１００５においてソース機器１０１の制御部４００は、通信品質が所定の品質以下に低下しているか否かを判定する。例えば、ソース機器１０１の制御部４００は、リンクスピードが第１の閾値以下である場合に、通信品質が所定の品質以下であると判定してよい。または、ソース機器１０１の制御部４００は、パケットロス率が第２の閾値以上である場合に、通信品質が所定の品質以下であると判定してよい。また、別の実施形態では、ソース機器１０１の制御部４００は、パケット再送率が第３の閾値以上である場合に、通信品質が所定の品質以下であると判定してよい。或いは、ソース機器１０１の制御部４００は、これらのリンクスピード、パケットロス率、及びパケット再送率による判定を組み合わせて、通信品質が所定の品質以下になったか否かを判定してよい。例えば、ソース機器１０１の制御部４００は、リンクスピードが第１の閾値以下であるか、又は、パケットロス率が第２の閾値以上である場合に、通信品質が所定の品質以下になったと判定してよい。
【００３０】
Ｓ１００５において通信品質が所定の品質以下である場合（Ｓ１００５がＹｅｓ）、フローはＳ１００６へと進む。Ｓ１００６においてソース機器１０１の制御部４００は、再生中のコンテンツの符号化処理を通信品質が低下している場合の設定に変更する。この符号化処理の変更では、制御部４００は、例えば、直前にシンク機器１０２へと送信した基準フレームの一部のデータ（例えば、マクロブロック単位のデータ）を差分フレームに含めて符号化を行うように符号化処理を変更してよい。また、この符号化処理の変更では、ソース機器１０１の制御部４００は、基準フレームの一部のデータを差分フレームに含めて伝送する場合に、例えば、差分フレームに含める基準フレームの描画ブロックのサイズをより小さいブロックサイズに変更してよい。更には、この符号化処理の変更では、ソース機器１０１の制御部４００は、例えば、映像データのビットレートを通信品質に応じて低下させてよい。Ｓ１００６においてソース機器１０１の制御部４００が、コンテンツの符号化処理を変更すると、フローはＳ１００２へと戻る。そして、制御部４００は、変更された符号化処理によってＳ１００２のコンテンツの符号化を実行してよい。
【００３１】
一方、Ｓ１００５において通信品質が所定の品質以下でないと判定された場合（Ｓ１００５がＮｏ）、フローはＳ１００７へと進む。Ｓ１００７において制御部４００は、コンテンツの符号化処理を、通信品質が低下している場合の設定に変更済みか否かを判定する。コンテンツの符号化処理を、通信品質が低下している場合の設定に変更済みでない場合（Ｓ１００７がＮｏ）、フローはＳ１００２へと戻る。なお、この場合、例えば、ソース機器１０１とシンク機器１０２との間の通信の通信品質は良好であると考えられる。
【００３２】
一方、Ｓ１００７においてコンテンツの符号化処理を通信品質が低下している場合の設定に変更済みである場合（Ｓ１００７がＹｅｓ）、フローはＳ１００８へと進む。Ｓ１００８において制御部４００は、符号化処理を通信品質が低下している場合の設定から元の設定に戻す。例えば、ソース機器１０１の制御部４００は、基準フレームの一部のデータを差分フレームに含めてシンク機器１０２に伝送している場合には、Ｓ１００８において、差分フレームへの基準フレームの一部のデータの挿入を停止してよい。また、ソース機器１０１の制御部４００は、差分フレームに含める基準フレームの描画ブロックのサイズをより小さいブロックサイズに変更している場合には、Ｓ１００８において、描画ブロックのサイズを変更前の元のサイズに戻してよい。更には、ソース機器１０１の制御部４００は、例えば、ビットレートを通信品質に応じて低下させている場合には、Ｓ１００８において、変更したビットレートを元のビットレートに戻してよい。ソース機器１０１の制御部４００が、コンテンツの符号化処理を元に戻すと、フローはＳ１００２へと戻る。なお、コンテンツの伝送が完了すると、ソース機器１０１の制御部４００は、本動作フローを終了してよい。
【００３３】
以上の図１０の動作フローのＳ１００２において、ソース機器１０１の制御部４００は、例えば、符号化部４０２として機能してよい。或いは、Ｓ１００２においてソース機器１０１の制御部４００は、メディア再生制御部５０２、ビデオ制御部５０３、オーディオ制御部５０４、符号化部５０５、パケット処理部５０６、通信部５０８として機能してよい。Ｓ１００３において、ソース機器１０１の制御部４００は、例えば、送信部４２０、又は無線通信部５２０として機能してよい。Ｓ１００４〜Ｓ１００８の処理では、ソース機器１０１の制御部４００は、例えば、符号化制御部４０１として機能してよい。或いは、Ｓ１００４の処理においてソース機器１０１の制御部４００は、通信監視部５０９として機能してよく、また、Ｓ１００５〜Ｓ１００８の処理において符号化制御部５０７として機能してよい。
【００３４】
以上で述べたように、第１の実施形態では、ソース機器１０１の制御部４００は、コンテンツのシンク機器１０２への伝送を開始すると、シンク機器１０２との間の通信の通信品質を監視する。そして、ソース機器１０１の制御部４００は、シンク機器１０２との間の通信品質が所定の品質以下に低下した場合には、直前に送信した基準フレーム内の描画ブロックのデータを、差分フレームに含めて符号化を実行し、シンク機器１０２に伝送する。従って、例えば、ソース機器１０１とシンク機器１０２との間の通信品質の低下に起因して基準フレームの受信にエラーが発生し、シンク機器１０２で再生している映像が乱れたとする。この場合に、シンク機器１０２は、例えば、次の基準フレームの受信を待たなくても、差分フレームに含まれる基準フレームの描画ブロックのデータを用いて、その描画ブロックを再描画して、映像を復旧することができる。
【００３５】
また、ソース機器１０１の制御部４００は、シンク機器１０２との間の通信品質が所定の品質以下に低下した場合に、符号化に用いる描画ブロック（例えば、マクロブロック）のサイズをより小さいブロックサイズに変更する。例えば、ソース機器１０１の制御部４００は、差分フレームに含める基準フレームの描画ブロックのサイズをより小さいブロックサイズに変更してよい。それによって、差分フレームに含める基準フレームの描画ブロックのデータ量を細かく調節することが可能である。そのため、ソース機器１０１の制御部４００は、例えば、送信するフレームのデータサイズを低減することも可能であり、基準フレームの一部のデータを含む差分フレームがシンク機器１０２に送達される可能性を高めることができる。また、ソース機器１０１の制御部４００は、シンク機器１０２との間の通信品質が所定の品質以下に低下した場合に、映像データのビットレートを小さくして符号化を実行してもよい。それによって、ソース機器１０１の制御部４００は、例えば、送信するフレームのデータサイズを低減することができ、基準フレームの一部のデータを含む差分フレームがシンク機器１０２に送達される可能性を高めることができる。また、ビットレートを小さくすることで、例えば、基準フレームに含まれるマクロブロックの数を減らすことができるため、差分フレームに基準フレームのデータを含めて伝送する場合の再描画を早めることができる。
【００３６】
なお、上述のＳ１００５において、制御部４００は、例えば、リンクスピードが第１の閾値以下であるか、又は、パケットロス率が第２の閾値以上である場合に、通信品質が所定の品質以下になったと判定してよい。リンクスピードは、例えば、シンク機器１０２からの距離が離れた場合などに低下する傾向があり、リンクスピードの低下によりパケットの伝送エラーが発生する可能性がある。一方で、パケットの伝送エラーは、例えば、リンクスピードが良好な速度であったとしても、周囲で類似する周波数帯域での通信が行われていると、電波干渉により発生してしまうことがある。そのため、通信品質の低下を、例えば、リンクスピード及びパケットロス率などの複数の評価指標に基づいて判定することで、通信品質の低下をより確実に検出することができる。
【００３７】
以上で述べたように、第１の実施形態によれば、例えば、通信品質の低下により、出力装置が受信して出力する映像に乱れが発生した場合に、映像を早期に復旧することができる。
【００３８】
＜第２の実施形態＞
第１の実施形態では、ソース機器１０１とシンク機器１０２との間の通信品質が所定の品質以下に低下した場合に、符号化処理を通信品質が低下している場合の設定に変更する実施形態が説明されている。しかしながら、実施形態はこれに限定されるものではない。例えば、制御部４００は、通信品質に応じて、符号化処理を段階的に制御してもよい。以下、図１１及び図１２を参照して第２の実施形態に係るコンテンツの伝送処理を説明する。
【００３９】
図１１は、第２の実施形態に係るソース機器１０１の制御部４００が実行するコンテンツの伝送処理の動作フローを例示する図である。図１１のコンテンツの伝送処理の動作フローは、例えば、コンテンツをシンク機器１０２へとストリーミングにより再生する指示がソース機器１０１に入力されると開始してよい。
【００４０】
Ｓ１１０１においてソース機器１０１の制御部４００は、例えば、シンク機器１０２との接続を確立する。例えば、ソース機器１０１の制御部４００は、Wi-Fi Directを用いてシンク機器１０２との接続を確立してよい。Ｓ１１０２においてソース機器１０１の制御部４００は、コンテンツを符号化する。例えば、ソース機器１０１の制御部４００は、コンテンツから復号化した映像をキャプチャしてリサイズを行い、音声データとともにMPEG2-TSコンテナフォーマットに符号化してよい。Ｓ１１０３においてソース機器１０１の制御部４００は、符号化したデータをシンク機器１０２へと送信する。Ｓ１１０４においてソース機器１０１の制御部４００は、シンク機器１０２との間の通信の通信品質を監視する。ソース機器１０１の制御部４００は、Ｓ１１０４において、例えば、所定のタイミングで通信品質の確認を行ってよく、また、通信品質は、例えばリンクスピード、パケットロス率、及びパケット再送率などであってよい。Ｓ１１０５においてソース機器１０１の制御部４００は、検出された通信品質に応じて再生中のコンテンツの符号化処理を変更する。第２の実施形態では制御部４００は、例えば、符号化設定情報１２００を参照して、通信品質に応じた符号化処理の設定を取得してよい。
【００４１】
図１２は、第２の実施形態に係る符号化設定情報１２００を例示する図である。符号化設定情報１２００には、リンクスピード、及びパケットロス率の値範囲が通信品質と対応付けて含まれている。図１２では、一番左側に最も悪い通信品質である品質１が登録されており、品質１から右へと順により高い通信品質である品質２、品質３、品質４が登録されている。また、リンクスピードとパケットロス率には、品質１〜品質４のそれぞれの品質に対応する値範囲が登録されている。また更に、符号化設定情報１２００は、通信品質に応じて変更される符号化処理の設定を含んでおり、品質１〜品質４に対応付けて、例えば、符号化のビットレートと、マクロブロックサイズとが含まれている。そして、ソース機器１０１の制御部４００は、Ｓ１１０５において、例えば、Ｓ１１０４で検出されたリンクスピード及びパケットロス率を値範囲に含む通信品質を特定する。なお、リンクスピードとパケットロス率とで特定される通信品質が異なる場合には、一例として、制御部４００は、より悪い通信品質を、現在の通信の通信品質として特定してよい。例えば、リンクスピードに基づいて特定された通信品質が品質２であり、パケットロス率に基づいて特定された通信品質が品質３であれば、品質２をソース機器１０１とシンク機器１０２との現在の通信の通信品質として特定してよい。しかしながら、実施形態はこれに限定されるものではなく、例えば、制御部４００は、より良い通信品質である品質３をソース機器１０１とシンク機器１０２との現在の通信の通信品質として特定してもよい。
【００４２】
そして、ソース機器１０１の制御部４００は、Ｓ１１０５において、特定された通信品質に基づいて、符号化処理を変更する。例えば、特定された通信品質が最も良い通信品質：品質４から別の品質に低下していたとする。この場合に、ソース機器１０１の制御部４００は、シンク機器１０２へと送信した基準フレームのうちで最後に送信した基準フレームの一部の描画ブロックのデータを、差分フレームに含めて符号化を実行するように符号化処理を変更する。そして、フローはＳ１１０２へと戻り、ソース機器１０１の制御部４００は、基準フレームの一部の描画ブロックのデータを含めて符号化した差分フレームのデータをシンク機器１０２へと伝送してよい。なお、特定された通信品質が最も良い通信品質：品質４である場合には、制御部４００は、Ｓ１１０５において基準フレームの一部の描画ブロックのデータを差分フレームに含めずに差分フレームの符号化を実行するように符号化処理を設定してよい。また、ソース機器１０１の制御部４００は、例えば、特定された通信品質に対応する符号化のビットレートと、マクロブロックサイズとを符号化設定情報１２００から取得し、その値をコンテンツの符号化で用いるように符号化処理を変更してよい。例えば、ソース機器１０１の制御部４００は、符号化設定情報１２００から特定された通信品質が品質２であれば、シンク機器１０２に送信するコンテンツを2.1〜4.0Mbpsのビットレートで符号化するように符号化処理を変更してよい。また、制御部４００は、差分フレームに含める基準フレームのマクロブロックのサイズとして８×８画素を用いて符号化を行うように符号化処理を変更してよい。Ｓ１１０５においてソース機器１０１の制御部４００が、通信品質に応じて再生中のコンテンツの符号化処理を変更すると、フローはＳ１１０２へと戻り、制御部４００は、変更された符号化処理によってＳ１１０２でコンテンツの符号化を実行してよい。なお、コンテンツの伝送が完了すると、ソース機器１０１の制御部４００は、本動作フローを終了してよい。
【００４３】
以上の図１１の動作フローのＳ１１０２において、ソース機器１０１の制御部４００は、例えば、符号化部４０２として機能してよい。或いは、Ｓ１１０２においてソース機器１０１の制御部４００は、メディア再生制御部５０２、ビデオ制御部５０３、オーディオ制御部５０４、符号化部５０５、パケット処理部５０６、通信部５０８として機能してよい。Ｓ１１０３において、ソース機器１０１の制御部４００は、例えば、送信部４２０、又は無線通信部５２０として機能してよい。Ｓ１１０４〜Ｓ１１０５の処理では、ソース機器１０１の制御部４００は、例えば、符号化制御部４０１として機能してよい。或いは、Ｓ１１０４の処理においてソース機器１０１の制御部４００は、通信監視部５０９として機能してよく、また、Ｓ１１０５の処理において符号化制御部５０７として機能してよい。
【００４４】
以上で述べたように、第２の実施形態においても制御部４００は、例えば、特定された通信品質が最も良い品質４よりも低下している場合には、基準フレームの一部の描画ブロックのデータを、差分フレームに含めてシンク機器１０２へと伝送する。そのため、第２の実施形態は、第１の実施形態が奏する効果を有する。また更に、第２の実施形態によれば、通信品質の低下の度合いに応じて、符号化処理が段階的に変更される。そのため、例えば、通信品質の低下の度合いに応じて、符号化処理を適切に変更することができる。
【００４５】
以上においていくつかの実施形態を例示したが、実施形態は上述の実施形態に限定されるものではない。例えば、上記の例は、H.264による動画像符号化を例として説明されるが、実施形態はこれに限定されるものではない。例えば、H.265(HEVC：High Efficiency Video Coding)などの他の動画像符号化方式でも、基準フレームと差分フレームとを用いて映像がシンク機器１０２に伝送される場合には、実施形態を適用することが可能である。また、上述の実施形態では、無線通信装置が再生している映像や音声などのコンテンツを、出力装置へと無線通信を利用して送信し、出力させる技術として、ミラキャスト用いる例を示しているが、実施形態はこれに限定されるものではない。例えば、無線通信装置が再生している映像や音声などのコンテンツを、出力装置へと無線通信を利用して送信し、出力させるその他の技術に対して実施形態が適用されてもよい。
【００４６】
また、上述の実施形態において、差分フレームに、基準フレームの一部のデータを挿入する場合に、挿入する描画ブロック単位のデータは、差分フレーム内の描画ブロックの符号化データと同様のフォーマットで差分フレーム内に挿入されてよい。例えば、H.264では、差分フレーム内の描画ブロックは、インター符号化又はイントラ符号化を用いてそれぞれ符号化される。また、基準フレーム内の描画ブロックはイントラ符号化を用いて差分フレームと同様の形式で符号化される。そのため、差分フレームの符号化データに、差分フレームの描画ブロックの符号化形式と同様の形式で符号化された基準フレームの描画ブロックのデータを含めることができる。そして、シンク機器１０２は、例えば、受信した差分フレームの符号化データを描画ブロック単位で復号して画像を表示する。そのため、シンク機器１０２は、差分フレーム内の描画ブロックの符号化データと同様に差分フレームに含まれる基準フレームの描画ブロックのデータの復号処理を行うことができ、表示画面に表示することができる。
【００４７】
また、例えば、図１０及び図１１の動作フローは例示であり、実施形態はこれに限定されるものではない。例えば、図１０及び図１１の動作フローは、可能な場合には、処理の順番が変更されてもよく、別に更なる処理を含んでいてもよく、又は、一部の処理が省略されてもよい。
【００４８】
また、実施形態に係るソース機器１０１は、ハードウェア回路として実装することもでき、例えば、図１３に示すような無線通信機能を備える情報処理装置（コンピュータ）１３００を用いて実現することもできる。なお、情報処理装置１３００は、例えば、スマートフォン、携帯電話機、タブレット端末などの無線通信装置であってよい。情報処理装置１３００は、例えばプロセッサ１３０１、オーディオデジタル信号プロセッサ（ＤＳＰ）１３０２、ビデオＤＳＰ１３０３、メモリ１３０４を含んでいてよい。また、情報処理装置１３００は、例えば、表示装置１３０５、入出力インタフェース１３０６、レシーバ１３０７、マイク１３０８、無線通信機器１３０９、アンテナ１３１０を含んでいてよい。プロセッサ１３０１は、例えば、オーディオＤＳＰ１３０２、ビデオＤＳＰ１３０３、メモリ１３０４、表示装置１３０５、入出力インタフェース１３０６、無線通信機器１３０９と接続されていてよい。
【００４９】
プロセッサ１３０１は、情報処理装置１３００の各部を制御してよい。例えば、オーディオＤＳＰ１３０２は、プロセッサ１３０１の指示に従って、レシーバ１３０７から出力する音声信号、及びマイク１３０８を介して入力される音声信号を処理する。また、オーディオＤＳＰ１３０２は、例えば、プロセッサの指示に従って、コンテンツの音声データの符号化及び復号化を行ってよい。ビデオＤＳＰ１３０３は、例えば、プロセッサの指示に従って、コンテンツの映像データの符号化又は復号化を行ってよい。
【００５０】
また、無線通信機器１３０９は、例えば、アンテナ１３１０で送受信される信号を処理してよい。無線通信機器１３０９は、例えば、プロセッサ１３０１の指示に従って、オーディオＤＳＰ１３０２、及びビデオＤＳＰ１３０３で処理された音声データ及び映像データを含むパケットをアンテナ１３１０を介してシンク機器１０２へと無線通信で送信してよい。
【００５１】
また、プロセッサ１３０１は、例えば、メモリ１３０４を利用して上述の動作フローの手順を記述したプログラムを実行することで、オーディオＤＳＰ１３０２、ビデオＤＳＰ１３０３を制御し、上述の動作フローの処理を実行してよい。
【００５２】
メモリ１３０４は、例えば半導体メモリであってよく、ＲＡＭ領域及びＲＯＭ領域を含んでいてよい。なお、ＲＡＭは、Random Access Memoryの略称である。ＲＯＭは、Read Only Memoryの略称である。ＲＯＭ領域は、例えば、フラッシュメモリ等の半導体メモリであってよい。なお、情報処理装置１３００は、更に、例えば、プロセッサ１３０１の指示に従って可搬型記録媒体にアクセスする読取装置を含んでいてもよい。可搬型記録媒体は、例えば、半導体デバイス（ＵＳＢメモリ、ＳＤメモリカード等）、磁気的作用により情報が入出力される媒体（磁気ディスク等）、及び光学的作用により情報が入出力される媒体（ＣＤ−ＲＯＭ、ＤＶＤ等）などにより実現されてよい。なお、ＵＳＢは、Universal Serial Busの略称である。ＣＤは、Compact Discの略称である。ＤＶＤは、Digital Versatile Diskの略称である。
【００５３】
入出力インタフェース１３０６は、例えば、入力装置及び出力装置との間のインタフェースである。入力装置は、例えばユーザーからの入力を受け付ける入力キー、及びタッチパネルなどのデバイスであってよい。出力装置は、例えば、スピーカー、印刷装置などであってよい。表示装置１３０５は、例えばディスプレイ、タッチパネルなどであってよい。なお、例えば、表示装置１３０５と、入出力インタフェース１３０６に接続される入力装置とが、タッチパネルである場合には表示装置１３０５、入出力インタフェース１３０６、及び入力装置は一体化していてよい。
【００５４】
また、上述の動作フローを情報処理装置１３００に実行させるための実施形態に係る各プログラムは、例えば、下記の形態で情報処理装置１３００に提供されてよい。
（１）メモリ１３０４に予めインストールされている。
（２）可搬型記録媒体により提供される。
（３）プログラムサーバなどのサーバからネットワークを介して提供される。
【００５５】
なお、上述の制御部４００は、一実施形態においては、例えば、プロセッサ１３０１、オーディオＤＳＰ１３０２、及びビデオＤＳＰ１３０３を含んでいてよい。例えば、上述の符号化制御部４０１、入力制御部５０１、メディア再生制御部５０２、パケット処理部５０６、符号化制御部５０７、通信部５０８、及び通信監視部５０９は、プロセッサ１３０１であってよい。また、オーディオ制御部５０４は、例えば、オーディオＤＳＰ１３０２であってよい。符号化部４０２、ビデオ制御部５０３、及び符号化部５０５は、ビデオＤＳＰ１３０３であってよい。送信部４２０及び無線通信部５２０は、例えば、無線通信機器１３０９であってよい。記憶部１０３は、例えば、メモリ１３０４であってよく、上述の動作フローの手順を記述したプログラム、コンテンツ、及び符号化設定情報１２００などを記憶していてよい。表示部１０５は、例えば、表示装置１３０５であってよい。
【００５６】
また、別の実施形態では、上述のソース機器１０１の制御部４００の一部又は全部の機能はＦＰＧＡ及びＳｏＣなどによるハードウェアとして実装されてもよい。なお、ＦＰＧＡは、Field Programmable Gate Arrayの略称である。ＳｏＣは、System-on-a-chipの略称である。
【００５７】
上述の実施形態を含むいくつかの実施形態は、上述の実施形態の各種変形形態及び代替形態を包含するものとして当業者には理解される。例えば、各種実施形態は、構成要素を変形して具体化されてよい。また、上述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施されてよい。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して又は置換して、或いは実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施されてよい。
【符号の説明】
【００５８】
１０１    ソース機器
１０２    シンク機器
１０３    記憶部
１０４    アプリケーション
１０５    表示部
４００    制御部
４０１    符号化制御部
４０２    符号化部
４２０    送信部
５０１    入力制御部
５０２    メディア再生制御部
５０３    ビデオ制御部
５０４    オーディオ制御部
５０５    符号化部
５０６    パケット処理部
５０７    符号化制御部
５０８    通信部
５０９    通信監視部
５２０    無線通信部
１３００  情報処理装置
１３０１  プロセッサ
１３０４  メモリ
１３０５  表示装置
１３０６  入出力インタフェース
１３０７  レシーバ
１３０８  マイク
１３０９  無線通信機器
１３１０  アンテナ
【図１】
0006558071.tif 000002
【図２】
0006558071.tif 000003
【図３】
0006558071.tif 000004
【図４】
0006558071.tif 000005
【図５】
0006558071.tif 000006
【図６】
0006558071.tif 000007
【図７】
0006558071.tif 000008
【図８】
0006558071.tif 000009
【図９】
0006558071.tif 000010
【図１０】
0006558071.tif 000011
【図１１】
0006558071.tif 000012
【図１２】
0006558071.tif 000013
【図１３】
0006558071.tif 000014