(57)【要約】      （修正有）【課題】ビデオのフレームの出力のスキップやリピートが行われた場合、コンテンツを視聴するユーザが違和感を感じることを抑制する。【解決手段】ユーザの視線の検出結果に応じて、タイミング制御部は、出力タイミングの制御として、ユーザが、ビデオを見ていない場合に、スキップ又はリピートが行われやすくなるように、スキップ又はリピートを制御する。ビデオは、ビデオバッファに記憶されてから出力され、タイミング制御部は、ビデオバッファに記憶されたビデオの蓄積量が、スキップを行うスキップ閾値以上である場合にスキップの制御を行い、ビデオバッファに記憶されたビデオの蓄積量が、リピートを行うリピート閾値以下である場合にリピートの制御を行い、ユーザが、ビデオを見ていない場合に、スキップ閾値を小さくするとともに、リピート閾値を大きくする。【選択図】図１
2017050677.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御するタイミング制御部を備える
コンテンツ処理装置。
【請求項２】
前記コンテンツは、ビデオを含み、
前記タイミング制御部は、前記出力タイミングの制御として、前記ビデオの出力のスキップ又はリピートの制御を行う
請求項１に記載のコンテンツ処理装置。
【請求項３】
前記タイミング制御部は、前記ユーザの視線の検出結果に応じて、前記ユーザが、前記ビデオを見ていない場合に、前記スキップ又はリピートが行われやすくなるように、前記スキップ又はリピートを制御する
請求項２に記載のコンテンツ処理装置。
【請求項４】
前記ビデオは、ビデオバッファに記憶されてから出力され、
前記タイミング制御部は、
前記ビデオバッファに記憶された前記ビデオの蓄積量が、前記スキップを行うスキップ閾値以上である場合に前記スキップの制御を行い、前記ビデオバッファに記憶された前記ビデオの蓄積量が、前記リピートを行うリピート閾値以下である場合に前記リピートの制御を行い、
前記ユーザが、前記ビデオを見ていない場合に、前記スキップ閾値を小さくするとともに、前記リピート閾値を大きくする
請求項３に記載のコンテンツ処理装置。
【請求項５】
前記コンテンツは、オーディオをさらに含み、
前記タイミング制御部は、
これから出力しようとする前記ビデオ及び前記オーディオそれぞれを出力すべき出力時刻の差分が、所定の閾値以上である場合に、前記出力時刻の差分が小さくなるように、前記スキップ又はリピートの制御を行い、
前記ユーザが、前記ビデオを見ていない場合に、前記スキップ又はリピートが行われやすくなるように、前記スキップ又はリピートを制御する
請求項３に記載のコンテンツ処理装置。
【請求項６】
前記ビデオのスキップでは、前記ビデオの出力が飛ばされるか、又は、複数枚の前記ビデオから１枚のビデオが生成される
請求項２に記載のコンテンツ処理装置。
【請求項７】
ユーザの視線を検出する視線検出部をさらに備える
請求項１に記載のコンテンツ処理装置。
【請求項８】
前記ビデオは、前記ビデオを表示する表示装置の表示レートと一致していないフレームレートのビデオ、又は、前記ビデオの伝送レートと一致していない出力レートで出力されるビデオである
請求項２に記載のコンテンツ処理装置。
【請求項９】
前記コンテンツは、同時に出力すべき前記ビデオと前記オーディオとがずれて出力されるコンテンツである
請求項５に記載のコンテンツ処理装置。
【請求項１０】
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御することを含む
コンテンツ処理方法。
【請求項１１】
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御するタイミング制御部
として、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、コンテンツ処理装置、コンテンツ処理方法、及び、プログラムに関し、特に、例えば、コンテンツを視聴するユーザが違和感を感じることを抑制することができるようにするコンテンツ処理装置、コンテンツ処理方法、及び、プログラムに関する。
【背景技術】
【０００２】
例えば、MPEG符号化されたコンテンツを処理するコンテンツ処理装置では、コンテンツに含まれるビデオのフレームのうちの、これから出力しようとするフレームである注目フレームの出力を飛ばすことや、注目フレームの出力を繰り返すことが行われる。
【０００３】
ここで、注目フレームの出力を飛ばすことを、スキップともいい、注目フレームの出力を繰り返すことを、リピートともいう。
【０００４】
例えば、特許文献１では、システムクロックに対するビデオのフレームの出力タイミングのずれを検出し、スキップやリピートを行うことで、ビデオのフレームを、適切なタイミングで表示するMPEGデコーダが提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開2007-235986号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ビデオのフレームの出力のスキップやリピートが行われた場合、表示装置に表示されるビデオは、いわゆるカクカクしたぎこちない動きの表示になり、そのビデオを視聴するユーザに違和感を感じさせる。
【０００７】
本技術は、このような状況に鑑みてなされたものであり、コンテンツを視聴するユーザが違和感を感じることを抑制することができるようにするものである。
【課題を解決するための手段】
【０００８】
本技術のコンテンツ処理装置、又は、プログラムは、ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御するタイミング制御部を備えるコンテンツ処理装置、又は、そのようなコンテンツ処理装置として、コンピュータを機能させるためのプログラムである。
【０００９】
本技術のコンテンツ処理方法は、ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御することを含むコンテンツ処理方法である。
【００１０】
本技術のコンテンツ処理装置、コンテンツ処理方法、及び、プログラムにおいては、ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングが制御される。
【００１１】
コンテンツ処理装置は、独立した装置であっても良いし、１つの装置を構成している内部ブロックであっても良い。
【００１２】
また、プログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
【発明の効果】
【００１３】
本技術によれば、コンテンツを視聴するユーザが違和感を感じることを抑制することができる。
【００１４】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００１５】
【図１】本技術を適用したコンテンツ処理装置の一実施の形態の構成例を示すブロック図である。
【図２】スキップ及びリピートの制御を、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止するように行う場合の、タイミング制御部２４の処理の例を説明するフローチャートである。
【図３】スキップ及びリピートの制御を、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行う場合の、タイミング制御部２４の処理の例を説明するフローチャートである。
【図４】本技術を適用したコンピュータの一実施の形態の構成例を示すブロック図である。
【発明を実施するための形態】
【００１６】
＜本技術を適用したコンテンツ処理装置の一実施の形態＞
【００１７】
図１は、本技術を適用したコンテンツ処理装置の一実施の形態の構成例を示すブロック図である。
【００１８】
図１のコンテンツ処理装置は、例えば、TV（テレビジョン受像機）や、眼鏡型のウエアラブルデバイス、スマートフォンその他の、ビデオを表示することが可能な表示装置に適用することができる。
【００１９】
図１において、コンテンツ処理装置は、TS(Transport Stream)バッファ１１、DEMUX１２、ビデオES(Elementary Stream)バッファ１３、オーディオESバッファ１４、キャプションバッファ１５、ビデオデコーダ１６、オーディオデコーダ１７、キャプションデコーダ１８、バッファ１９，２０、及び、２１、視線検出部２２、バッファ蓄積量監視部２３、並びに、タイミング制御部２４を有する。
【００２０】
TSバッファ１１には、例えば、チューナや、インターネット等のネットワーク上のストリームサーバ、蓄積メディア（例えば、Bru-ray（登録商標）ディスクや、DVD(Digital Versatile Disc)、ハードディスク、メモリカード等）を再生する再生装置等から、ビデオや、オーディオ、キャプションを必要に応じて含むコンテンツのストリームが供給される。
【００２１】
TSバッファ１１は、そこに供給されるコンテンツのストリームを一時記憶し、DEMUX１２に供給する。
【００２２】
ここで、コンテンツのストリームとしては、例えば、MPEG(Moving Picture Experts Group)のストリームを採用することができる。MPEGのストリームとしては、例えば、MPEG1ストリームや、MPEG2-PS(Program Stream)、MPEG2-TSがある。
【００２３】
DEMUX１２は、TSバッファ１１からのコンテンツのストリームを、必要に応じて、ビデオや、オーディオ、キャプション等（のデータ）に逆多重化する。さらに、DEMUX１２は、逆多重化によって得られるビデオ、オーディオ、及び、キャプションを、ビデオESバッファ１３、オーディオESバッファ１４、及び、キャプションバッファ１５に、それぞれ供給する。
【００２４】
すなわち、DEMUX１２は、多重分離部３１、ビデオPES(Packetized Elementary Stream)バッファ３２、オーディオPESバッファ３３、キャプションPESバッファ３４、PESヘッダ検出部３５，３６、及び、３７、並びに、時刻情報抽出部３８を有する。
【００２５】
多重分離部３１は、TSバッファ１１からDEMUX１２に供給されるコンテンツのストリームから、ビデオや、オーディオ、キャプション等を分離する。
【００２６】
コンテンツのストリームが、例えば、MPEG1ストリーム又はMPEG2-PSである場合には、そのコンテンツのストリームは、ビデオPES及びオーディオPES等に分離される。また、コンテンツのストリームが、例えば、MPEG2-TSである場合には、そのコンテンツのストリームは、ビデオPES、オーディオPES、キャプションPES、及び、セクション等に分離される。
【００２７】
多重分離部３１において、コンテンツのストリームから分離されたビデオPES、オーディオPES、及び、キャプションPESは、ビデオPESバッファ３２、オーディオPESバッファ３３、及び、キャプションPESバッファ３４に、それぞれ供給される。
【００２８】
ビデオPESバッファ３２は、多重分離部３１から供給されるビデオPESを一時記憶する。オーディオPESバッファ３３は、多重分離部３１から供給されるオーディオPESを一時記憶する。キャプションPESバッファ３４は、多重分離部３１から供給されるキャプションPESを一時記憶する。
【００２９】
PESヘッダ検出部３５は、ビデオPESバッファ３２からビデオPESを順次読み出し、そのビデオPESのPESヘッダを解析することで、必要な情報を抽出する。さらに、PESヘッダ検出部３５は、ビデオPESバッファ３２から読み出したビデオPESから、そのビデオPESのデータであるビデオESを抽出し、ビデオESバッファ１３に供給する。
【００３０】
PESヘッダ検出部３６は、オーディオPESバッファ３３からオーディオPESを順次読み出し、そのオーディオPESのPESヘッダを解析することで、必要な情報を抽出する。さらに、PESヘッダ検出部３６は、オーディオPESバッファ３３から読み出したオーディオPESから、そのオーディオPESのデータであるオーディオESを抽出し、オーディオESバッファ１４に供給する。
【００３１】
PESヘッダ検出部３７は、キャプションPESバッファ３４からキャプションPESを順次読み出し、そのキャプションPESのPESヘッダを解析することで、必要な情報を抽出する。さらに、PESヘッダ検出部３７は、キャプションPESバッファ３４から読み出したキャプションPESから、そのキャプションPESのデータであるキャプションを抽出し、キャプションバッファ１４に供給する。
【００３２】
時刻情報抽出部３８は、PESヘッダ検出部３５ないし３７がPESヘッダから抽出した情報から、ビデオ、オーディオ、及び、キャプションを出力（表示）すべき出力時刻等を表す時刻情報（タイムスタンプ(PCR (Program Clock Reference)，PTS (Presentation Time Stamp)等)）を抽出し、タイミング制御部２４に供給する。
【００３３】
ビデオESバッファ１３は、PESヘッダ検出部３５から供給されるビデオESを記憶するビデオバッファとして機能する。オーディオESバッファ１４は、PESヘッダ検出部３６から供給されるオーディオESを記憶する。キャプションバッファ１５は、PESヘッダ検出部３７から供給されるキャプションを記憶する。
【００３４】
ビデオデコーダ１６は、ビデオESバッファ１３に記憶されたビデオESを読み出して復号し、その復号により得られるビデオのフレームを、バッファ１９に供給する。
【００３５】
オーディオデコーダ１７は、オーディオESバッファ１４に記憶されたオーディオESを読み出して復号し、その復号により得られるオーディオを、バッファ２０に供給する。
【００３６】
キャプションデコーダ１８は、キャプションバッファ１５に記憶されたキャプションを読み出して復号し、その復号により得られるキャプションを、バッファ２１に供給する。
【００３７】
バッファ１９は、ビデオデコーダ１６から供給されるビデオのフレームを記憶する。バッファ１９に記憶されたビデオのフレームは、タイミング制御部２４の制御に従って読み出され、図示せぬ表示装置に供給されて表示される。
【００３８】
バッファ２０は、オーディオデコーダ１７から供給されるオーディオを記憶する。バッファ２０に記憶されたオーディオは、タイミング制御部２４の制御に従って読み出され、図示せぬスピーカやヘッドフォン等のオーディオ出力装置に供給されて放音される。
【００３９】
バッファ２１は、キャプションデコーダ１８から供給されるキャプションを記憶する。バッファ２１に記憶されたキャプションは、タイミング制御部２４の制御に従って読み出され、ビデオが表示される表示装置に供給されて表示される。
【００４０】
視線検出部２２は、表示装置に表示されるビデオ等を視聴するユーザの視線を検出し、その視線の検出結果を表す検出結果情報を、タイミング制御部２４に供給（通知）する。
【００４１】
視線検出部２２は、例えば、ユーザを撮影するカメラと、そのカメラで撮影されるユーザの画像の画像処理を行うことで、ユーザの視線を検出し、その視線が、ビデオが表示される表示装置に向いているかどうかを特定する画像処理装置とで構成することができる。
【００４２】
図１のコンテンツ処理装置が、例えば、スマートフォンに適用される場合、視線検出部２２を構成するカメラとしては、スマートフォンに実装されているカメラを用いることができる。さらに、図１のコンテンツ処理装置が、例えば、眼鏡型のウエアラブルデバイスに適用される場合に、そのウエアラブルデバイスがユーザの視線を検出するセンサを実装しているときには、そのセンサを、視線検出部２２を構成するカメラとして利用することができる。
【００４３】
なお、タイミング制御部２４が、何らかの方法で、検出結果情報を取得することができれば、図１のコンテンツ処理装置に、視線検出部２２を設ける必要はない。
【００４４】
すなわち、例えば、図１のコンテンツ処理装置が、例えば、TVに適用されている場合において、そのTVが置かれている部屋に設置された監視カメラで、ユーザを撮影することにより検出結果情報が得られ、その検出結果情報が、タイミング制御部２４に提供されるときには、コンテンツ処理装置に、視線検出部２２を設ける必要はない。
【００４５】
ここで、視線検出部２２がタイミング制御部２４に供給する検出結果情報は、例えば、ユーザの視線が、ビデオが表示される表示装置に向いているかどうか、すなわち、ユーザが、表示装置に表示されたビデオを見ているかどうかを表す。
【００４６】
バッファ蓄積量監視部２３は、ビデオESバッファ１３の（ビデオESの）バッファ蓄積量を監視し、タイミング制御部２４に供給する。
【００４７】
タイミング制御部２４は、バッファ１９からビデオを出力する（読み出す）出力タイミング、バッファ２０からオーディオを出力する出力タイミング、及び、バッファ２１からキャプションを出力する出力タイミングを制御する。
【００４８】
すなわち、タイミング制御部２４は、時刻情報抽出部３８から供給される時刻情報に応じて、出力タイミングの制御を行う。さらに、タイミング制御部２４は、必要に応じて、視線検出部２２から供給される検出結果情報や、バッファ蓄積量監視部２３から供給されるバッファ蓄積量に応じて、出力タイミングの制御を行う。
【００４９】
例えば、タイミング制御部２４は、時刻情報抽出部３８から供給される、ビデオの時刻情報を用い、バッファ１９に記憶されたビデオのフレームのうちの、例えば、時刻情報が表す出力時刻が最も早い（時間的に先行する）フレームを、次に表示すべき注目フレームとして特定する。
【００５０】
そして、タイミング制御部２４は、注目フレームの出力タイミングを、視線検出部２２からの検出結果情報や、バッファ蓄積量監視部２３からのバッファ蓄積量に応じて制御する。
【００５１】
タイミング制御部２４による注目フレームの出力タイミングの制御としては、注目フレームをバッファ１９から出力する時刻の調整と、注目フレームの出力のスキップやリピートの制御とが行われる。
【００５２】
注目フレームの出力のスキップでは、注目フレームの出力が飛ばされ、その注目フレームの直後に出力されるべきフレームが、新たな注目フレームとして、バッファ１９から出力される。
【００５３】
あるいは、注目フレームの出力のスキップでは、注目フレームと、その注目フレームの後に出力されるべき１フレーム以上のフレームとの複数のフレームを合成すること等により新たな１フレームが生成され、その新たな１フレームが、新たな注目フレームとして、バッファ１９から出力される。
【００５４】
本実施の形態では、以上のように、注目フレームの出力のスキップを行う方法として、注目フレームの出力を単に飛ばす方法と、注目フレームを含む複数のフレームから、新たな注目フレームを生成する方法とがある。
【００５５】
注目フレームの出力のリピートでは、注目フレームとして特定されたフレームが、バッファ１９から出力された後、そのフレームが、再び、注目フレームとされ、バッファ１９から出力される。
【００５６】
タイミング制御部２４は、視線検出部２２からの検出結果情報と、バッファ蓄積量監視部２３からのバッファ蓄積量とに応じて、スキップ及びリピートの制御を行う。
【００５７】
すなわち、バッファ蓄積量が、スキップを行うスキップ閾値以上（又はより大）である場合、タイミング制御部２４は、スキップの制御を行う。この場合、バッファ蓄積量がスキップ閾値以上であるときに、フレームの出力のスキップが行われるので、ビデオESバッファ１３のオーバーフローを防止することができる。
【００５８】
また、バッファ蓄積量が、リピートを行うリピート閾値以下（又は未満）である場合、タイミング制御部２４は、リピートの制御を行う。この場合、バッファ蓄積量がリピート閾値以下であるときに、フレームの出力のリピートが行われるので、ビデオESバッファ１３のアンダーフローを防止することができる。
【００５９】
ここで、スキップ閾値及びリピート閾値は、スキップ閾値＞リピート閾値の関係がある。
【００６０】
以上のように、タイミング制御部２４は、バッファ蓄積量に応じて、スキップ及びリピートの制御を行うが、スキップやリピートが行われると、表示装置に表示されるビデオがカクカクしたぎこちない動きのビデオになり、そのビデオを視聴するユーザに違和感を感じさせることがある。
【００６１】
そこで、タイミング制御部２４は、視線検出部２２からの検出結果情報に応じて、ユーザが、表示装置に表示されたビデオを見ていない場合に、スキップやリピートが行われやすくなるように、スキップ及びリピートを制御する。
【００６２】
具体的には、例えば、検出結果情報が、ユーザがビデオを見ている旨を表している場合、タイミング制御部２４は、スキップ閾値及びリピート閾値を、デフォルト値に設定する。
【００６３】
一方、検出結果情報が、ユーザがビデオを見ていない旨を表している場合、タイミング制御部２４は、スキップ閾値をデフォルト値よりも小に設定するとともに、リピート閾値をデフォルト値よりも大に設定する。
【００６４】
以上のように、検出結果情報が、ユーザがビデオを見ていない旨を表している場合に、スキップ閾値をデフォルト値よりも小に設定するとともに、リピート閾値をデフォルト値よりも大に設定することで、ユーザがビデオを見ていない場合に、スキップやリピートが行われやすくなる。
【００６５】
その結果、スキップ閾値及びリピート閾値が、デフォルト値であれば、近い将来に、スキップやリピートが行われる可能性が高い場合において、ユーザがビデオを見ていないときに、いわば先取り的に、スキップやリピートが行われる。
【００６６】
これにより、ユーザがビデオを見ているときに、スキップやリピートが行われ、ユーザが、ぎこちない動きのビデオを見ることで、ユーザに違和感を感じさせることを防止することができる。
【００６７】
すなわち、ユーザの視線の検出結果に応じて、コンテンツ（のビデオ）を出力する出力タイミングを制御することで、ユーザに違和感を感じさせることを防止することができる。
【００６８】
ここで、例えば、ビデオを表示する表示装置の表示レートと一致していないフレームレートのビデオを含むコンテンツや、ビデオの伝送レートと一致していない出力レートで出力されるビデオを含むコンテンツについては、ビデオESバッファ１３のオーバーフローやアンダーフローが生じやすくなり、スキップやリピートが行われやすくなる。
【００６９】
したがって、ユーザの視線の検出結果に応じて、コンテンツ（のビデオ）を出力する出力タイミングを制御することは、上述のようなコンテンツに、特に有用である。
【００７０】
また、例えば、同時に出力すべきビデオとオーディオとがずれて出力されるコンテンツ（再生（復号）中に、ビデオとオーディオとが、徐々にずれていくコンテンツを含む）については、タイミング制御部２４において、時刻情報抽出部３８からの時刻情報に応じて、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように、ビデオの出力タイミングの制御、すなわち、スキップやリピートの制御を行うことができる。
【００７１】
このように、同時に出力すべきビデオとオーディオとがずれて出力されるコンテンツについて、スキップやリピートが行われる場合も、そのスキップやリピートによって、ぎこちない動きになったビデオを、ユーザが見たときには、ユーザに違和感を感じさせる。
【００７２】
そこで、同時に出力すべきビデオとオーディオとがずれて出力されるコンテンツについても、ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御することで、ユーザに違和感を感じさせることを防止することができる。
【００７３】
なお、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が、所定の閾値以上（又はより大）である場合に、その差分が小さくなるように、スキップやリピートの制御を行うことで、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分は、所定の閾値未満にすることができる。
【００７４】
所定の閾値は、コンテンツのストリームの規格（例えば、MPEG）を満たす値であっても良いし、満たさない値であっても良い。
【００７５】
以上のように構成されるコンテンツ処理装置では、TSバッファ１１は、そこに供給されるコンテンツのストリームを一時記憶し、DEMUX１２に供給する。
【００７６】
DEMUX１２は、TSバッファ１１からのコンテンツのストリームを、必要に応じて、ビデオや、オーディオ、キャプション等（のデータ）に逆多重化する。さらに、DEMUX１２は、逆多重化によって得られるビデオES、オーディオES、及び、キャプションを、ビデオESバッファ１３、オーディオESバッファ１４、及び、キャプションバッファ１５に、それぞれ供給して記憶させる。
【００７７】
また、DEMUX１２（の時刻情報抽出部３８）は、TSバッファ１１からのコンテンツのストリームから時刻情報を抽出し、タイミング制御部２４に供給する。
【００７８】
ビデオデコーダ１６は、ビデオESバッファ１３に記憶されたビデオESを読み出して復号し、その復号により得られるビデオのフレームを、バッファ１９に供給して記憶させる。
【００７９】
オーディオデコーダ１７は、オーディオESバッファ１４に記憶されたオーディオESを読み出して復号し、その復号により得られるオーディオを、バッファ２０に供給して記憶させる。
【００８０】
キャプションデコーダ１８は、キャプションバッファ１５に記憶されたキャプションを読み出して復号し、その復号により得られるキャプションを、バッファ２１に供給して記憶させる。
【００８１】
バッファ１９に記憶されたビデオのフレーム、及び、バッファ２１に記憶されたキャプションは、タイミング制御部２４の制御に従って読み出され、表示装置に供給されて表示される。
【００８２】
バッファ２０に記憶されたオーディオは、タイミング制御部２４の制御に従って読み出され、オーディオ出力装置に供給されて放音される。
【００８３】
一方、視線検出部２２は、ユーザの視線を検出し、その視線の検出結果を表す検出結果情報を、タイミング制御部２４に供給する。
【００８４】
また、バッファ蓄積量監視部２３は、ビデオESバッファ１３のバッファ蓄積量を監視し、タイミング制御部２４に供給する。
【００８５】
タイミング制御部２４は、DEMUX１２（の時刻情報抽出部３８）から供給される時刻情報、視線検出部２２から供給される検出結果情報、バッファ蓄積量監視部２３から供給されるバッファ蓄積量に応じて、バッファ１９ないし２１それぞれからのビデオ、オーディオ、及び、キャプションの出力タイミングの制御を行う。
【００８６】
タイミング制御部２４による出力タイミングの制御には、スキップ及びリピートの制御が含まれる。
【００８７】
スキップ及びリピートの制御は、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止するように行うことや、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行うことができる。さらに、スキップ及びリピートの制御は、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止し、かつ、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行うことができる。
【００８８】
以下、スキップ及びリピートの制御を、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止するように行う場合と、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行う場合との、タイミング制御部２４の処理について説明する。
【００８９】
ここで、図１のコンテンツ処理装置においては、ビデオESバッファ１３ないしキャプションバッファ１５、並びに、ビデオPSバッファ３２ないしキャプションPESバッファ３４のそれぞれは、複数設けることができる。
【００９０】
＜スキップ及びリピートの制御を、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止するように行う場合の、タイミング制御部２４の処理の例＞
【００９１】
図２は、スキップ及びリピートの制御を、ビデオESバッファ１３のオーバーフロー及びアンダーフローを防止するように行う場合の、タイミング制御部２４の処理の例を説明するフローチャートである。
【００９２】
ステップＳ１１において、タイミング制御部２４は、バッファ蓄積量監視部２３から供給されるビデオESバッファ１３のバッファ蓄積量を取得し、処理は、ステップＳ１２に進む。
【００９３】
ステップＳ１２では、タイミング制御部２４は、ユーザがビデオを見ていない旨の通知があるかどうか、すなわち、視線検出部２２から供給される検出結果情報が、ユーザがビデオを見ていない旨を表しているかどうかを判定する。
【００９４】
ステップＳ１２において、検出結果情報が、ユーザがビデオを見ていない旨を表していないと判定された場合、すなわち、ユーザがビデオを見ている場合、処理は、ステップＳ１３に進む。ステップＳ１３では、タイミング制御部２４は、スキップ閾値及びリピート閾値のそれぞれを、デフォルト値に設定して、処理は、ステップＳ１４に進む。
【００９５】
ここで、図２では、スキップ閾値のデフォルト値は、ビデオESバッファ１３の記憶容量（以下、バッファ容量ともいう）の、例えば、90%の値になっており、リピート閾値のデフォルト値は、バッファ容量の、例えば、10%の値になっている。
【００９６】
ステップＳ１４では、タイミング制御部２４は、バッファ蓄積量が、リピート閾値以下であるかどうかを判定する。
【００９７】
ステップＳ１４において、バッファ蓄積量が、リピート閾値以下であると判定されたとき、すなわち、いまの場合、バッファ蓄積量が、リピート閾値のデフォルト値であるバッファ容量の10%以下であり、ビデオESバッファ１３のアンダーフローが生じるおそれがあるとき、処理は、ステップＳ１５に進む。
【００９８】
ステップＳ１５では、タイミング制御部２４は、バッファ１９からの注目フレームの出力のリピートの制御を行い、処理は、終了する。
【００９９】
注目フレームの出力のリピートの制御により、バッファ１９から注目フレームが繰り返し出力される。これにより、ビデオESバッファ１３のアンダーフローが防止される。
【０１００】
また、ステップＳ１４において、バッファ蓄積量が、リピート閾値以下でないと判定されたとき、処理は、ステップＳ１６に進み、タイミング制御部２４は、バッファ蓄積量が、スキップ閾値以上であるかどうかを判定する。
【０１０１】
ステップＳ１６において、バッファ蓄積量が、スキップ閾値以上であると判定されたとき、すなわち、いまの場合、バッファ蓄積量が、スキップ閾値のデフォルト値であるバッファ容量の90%以上であり、ビデオESバッファ１３のオーバーフローが生じるおそれがあるとき、処理は、ステップＳ１７に進む。
【０１０２】
ステップＳ１７では、タイミング制御部２４は、バッファ１９からの注目フレームの出力のスキップの制御を行い、処理は、終了する。
【０１０３】
注目フレームの出力のスキップの制御により、例えば、バッファ１９からの注目フレームの出力を飛ばして、その注目フレームの次に表示すべきフレームの出力が行われる。これにより、ビデオESバッファ１３のオーバーフローが防止される。
【０１０４】
また、ステップＳ１６において、バッファ蓄積量が、スキップ閾値以上でないと判定されたとき、すなわち、いまの場合、バッファ蓄積量が、スキップ閾値のデフォルト値であるバッファ容量の90%以上でもなく、かつ、リピート閾値のデフォルト値である10%以下でもなく、ビデオESバッファ１３のオーバーフロー及びアンダーフローが生じるおそれが低い場合、処理は、ステップＳ１８に進む。
【０１０５】
ステップＳ１８では、タイミング制御部２４は、バッファ１９から注目フレームを出力させ、処理は、終了する。
【０１０６】
一方、ステップＳ１２において、検出結果情報が、ユーザがビデオを見ていない旨を表していると判定された場合、処理は、ステップＳ１９に進み、タイミング制御部２４は、スキップやリピートが行われやすくなるように、スキップ閾値及びリピート閾値のそれぞれを設定する。
【０１０７】
すなわち、タイミング制御部２４は、スキップ閾値を、デフォルト値である、バッファ容量の90%よりも小さい、例えば、バッファ容量の80%に設定する。さらに、タイミング制御部２４は、リピート閾値を、デフォルト値である、バッファ容量の10%よりも大きい、例えば、バッファ容量の20%に設定する。
【０１０８】
以上のように、ステップＳ１９において、スキップやリピートが行われやすくなるように、スキップ閾値及びリピート閾値のそれぞれが設定された後、処理は、ステップＳ１４に進み、以下、上述の場合と同様の処理が行われる。
【０１０９】
但し、いまの場合、ユーザがビデオを見ておらず、そのため、スキップやリピートが行われやすくなるように、スキップ閾値及びリピート閾値のそれぞれが設定されている。
【０１１０】
そのため、ステップＳ１５での注目フレームの出力のリピートの制御や、ステップＳ１７での注目フレームの出力のスキップの制御が行われやすくなる。
【０１１１】
その結果、スキップ閾値及びリピート閾値が、デフォルト値であれば、近い将来に、スキップやリピートが行われる可能性が高い場合において、ユーザがビデオを見ていないときに、いわば先立って、スキップやリピートが行われる。
【０１１２】
したがって、ユーザは、スキップやリピートによって生じる、ビデオのぎこちない動きに気づかないので、ユーザが、ぎこちない動きのビデオを見ることで違和感を感じることを防止することができる。
【０１１３】
なお、図２のフローチャートに従った処理は繰り返し行われる。
【０１１４】
＜スキップ及びリピートの制御を、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行う場合の、タイミング制御部２４の処理の例＞
【０１１５】
図３は、スキップ及びリピートの制御を、同時に出力すべきビデオ及びオーディオそれぞれの出力時刻の差分が小さくなるように行う場合の、タイミング制御部２４の処理の例を説明するフローチャートである。
【０１１６】
ステップＳ３１において、タイミング制御部２４は、バッファ１９に記憶された注目フレームの時刻情報が表す出力（表示）時刻と、バッファ２０に記憶された注目オーディオフレームの時刻情報が表す出力時刻との差分（以下、出力時刻差分ともいう）を計算し、処理は、ステップＳ３２に進む。
【０１１７】
ここで、注目オーディオフレームとは、バッファ２０に記憶されたオーディオのオーディオフレームのうちの、これから出力しようとするオーディオ（時刻情報が表す出力時刻が最も早い時刻のオーディオ）のオーディオフレームを意味する。
【０１１８】
ステップＳ３２では、タイミング制御部２４は、出力時刻差分が所定の閾値以上であるかどうかを判定する。
【０１１９】
ステップＳ３２において、出力時刻差分が所定の閾値以上であると判定された場合、処理は、ステップＳ３３に進む。ステップＳ３３では、タイミング制御部２４は、出力時刻差分が所定の閾値以上であることが連続して検出された検出回数（をカウントする変数）unsync_countを、１だけインクリメントして、処理は、ステップＳ３５に進む。
【０１２０】
また、ステップＳ３２において、出力時刻差分が所定の閾値以上でないと判定された場合、処理は、ステップＳ３４に進む。ステップＳ３４では、タイミング制御部２４は、検出回数unsync_countを、０にリセットし、処理は、ステップＳ３５に進む。
【０１２１】
ステップＳ３５では、図２のステップＳ１２と同様に、タイミング制御部２４は、ユーザがビデオを見ていない旨の通知があるかどうか、すなわち、視線検出部２２から供給される検出結果情報が、ユーザがビデオを見ていない旨を表しているかどうかを判定する。
【０１２２】
ステップＳ３５において、検出結果情報が、ユーザがビデオを見ていない旨を表していないと判定された場合、すなわち、ユーザがビデオを見ていない場合、処理は、ステップＳ３６に進む。ステップＳ３６では、タイミング制御部２４は、検出回数unsync_countの閾値resync_countをデフォルト値に設定して、処理は、ステップＳ３７に進む。
【０１２３】
ステップＳ３７では、タイミング制御部２４は、検出回数unsync_countが、閾値resync_countより大であるかどうかを判定する。
【０１２４】
ステップＳ３７において、検出回数unsync_countが、閾値resync_countより大であると判定された場合、すなわち、出力時刻差分が所定の閾値以上であることが、閾値resync_countよりも多い回数だけ連続した場合、処理は、ステップＳ３８に進む。
【０１２５】
ステップＳ３８では、タイミング制御部２４は、AV同期制御を行い、処理を終了する。
【０１２６】
ここで、AV同期制御では、出力時刻差分が所定の閾値より小さくなるように、例えば、注目フレームの出力のスキップやリピートの制御が行われる。
【０１２７】
すなわち、注目フレームの出力時刻が、注目オーディオフレームの出力時刻よりも進んでいる場合、注目フレームの出力時刻を遅らせるために、注目フレームのリピートの制御が行われる。
【０１２８】
また、注目フレームの出力時刻が、注目オーディオフレームの出力時刻よりも遅れている場合、注目フレームの出力時刻を進ませるために、注目フレームのスキップの制御が行われる。
【０１２９】
一方、ステップＳ３７において、検出回数unsync_countが、閾値resync_countより大でないと判定された場合、すなわち、出力時刻差分が所定の閾値以上でないか、又は、出力時刻差分が所定の閾値以上であっても、出力時刻差分が所定の閾値以上であることが、閾値resync_countより多い回数だけ連続していない場合、処理は、ステップＳ３９に進む。
【０１３０】
ステップＳ３９では、タイミング制御部２４は、バッファ１９から注目フレームを出力させ、処理は、終了する。
【０１３１】
一方、ステップＳ３５において、検出結果情報が、ユーザがビデオを見ていない旨を表していると判定された場合、処理は、ステップＳ４０に進み、タイミング制御部２４は、スキップやリピートが行われやすくなるように、閾値resync_countを設定する。
【０１３２】
すなわち、タイミング制御部２４は、閾値resync_countを、デフォルト値の、例えば、0.8倍に設定する。
【０１３３】
以上のように、ステップＳ４０において、スキップやリピートが行われやすくなるように、スキップ閾値及びリピート閾値のそれぞれが設定された後、処理は、ステップＳ３７に進み、以下、上述の場合と同様の処理が行われる。
【０１３４】
但し、いまの場合、ユーザがビデオを見ておらず、そのため、スキップやリピートが行われやすくなるように、閾値resync_countが設定されている。
【０１３５】
そのため、ステップＳ３８での注目フレームの出力のリピートやスキップの制御が行われやすくなる。
【０１３６】
その結果、閾値resync_countが、デフォルト値であれば、近い将来に、スキップやリピートが行われる可能性が高い場合において、ユーザがビデオを見ていないときに、先立って、スキップやリピートが行われる。
【０１３７】
したがって、ユーザが、スキップやリピートによって生じる、ビデオのぎこちない動きを見ることで違和感を感じることを防止することができる。
【０１３８】
なお、図３のフローチャートに従った処理は繰り返し行われる。
【０１３９】
ここで、図３では、ユーザがビデオを見ているかどうかによって、検出回数unsync_countの閾値resync_countを設定し、検出回数unsync_countが、閾値resync_countより大である場合、すなわち、すなわち、出力時刻差分が所定の閾値以上であることが、閾値resync_countよりも多い回数だけ連続した場合に、スキップやリピートの制御を行うこととしたが、スキップやリピートの制御は、単に、出力時刻差分と所定の閾値との大小関係に応じて行うことができる。
【０１４０】
すなわち、ユーザがビデオを見ているかどうかによって、出力時刻差分の所定の閾値を設定し、出力時刻差分が所定の閾値以上である場合に、スキップやリピートの制御を行うことができる。この場合、ユーザがビデオを見ているときには、所定の閾値がデフォルト値に設定され、ユーザがビデオを見ていないときには、所定の閾値がデフォルト値よりも小さい値に設定される。
【０１４１】
以上のように、ユーザがビデオを見ているかどうかによって、出力時刻差分の所定の閾値を設定する場合も、図３のように、ユーザがビデオを見ているかどうかによって、検出回数unsync_countの閾値resync_countを設定する場合と同様に、ユーザがビデオを見ていないときに、スキップやリピートの制御を行われやすくなる。
【０１４２】
したがって、ユーザが、スキップやリピートによって生じる、ビデオのぎこちない動きを見ることで違和感を感じることを防止することができる。
【０１４３】
なお、本実施の形態では、コンテンツのストリームとして、MPEGのストリームを採用したが、コンテンツのストリームは、MPEGのストリームに限定されるものではない。
【０１４４】
＜本技術を適用したコンピュータの説明＞
【０１４５】
次に、タイミング制御部２４の一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、マイクロコンピュータ等のコンピュータにインストールされる。
【０１４６】
そこで、図４は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【０１４７】
プログラムは、コンピュータに内蔵されている記録媒体としてのハードディスク１０５やROM１０３に予め記録しておくことができる。
【０１４８】
あるいはまた、プログラムは、リムーバブル記録媒体１１１に格納（記録）しておくことができる。このようなリムーバブル記録媒体１１１は、いわゆるパッケージソフトウエアとして提供することができる。ここで、リムーバブル記録媒体１１１としては、例えば、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)，MO(Magneto Optical)ディスク，DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリ等がある。
【０１４９】
なお、プログラムは、上述したようなリムーバブル記録媒体１１１からコンピュータにインストールする他、通信網や放送網を介して、コンピュータにダウンロードし、内蔵するハードディスク１０５にインストールすることができる。すなわち、プログラムは、例えば、ダウンロードサイトから、ディジタル衛星放送用の人工衛星を介して、コンピュータに無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送することができる。
【０１５０】
コンピュータは、CPU(Central Processing Unit)１０２を内蔵しており、CPU１０２には、バス１０１を介して、入出力インタフェース１１０が接続されている。
【０１５１】
CPU１０２は、入出力インタフェース１１０を介して、ユーザによって、入力部１０７が操作等されることにより指令が入力されると、それに従って、ROM(Read Only Memory)１０３に格納されているプログラムを実行する。あるいは、CPU１０２は、ハードディスク１０５に格納されたプログラムを、RAM(Random Access Memory)１０４にロードして実行する。
【０１５２】
これにより、CPU１０２は、上述したフローチャートにしたがった処理、あるいは上述したブロック図の構成により行われる処理を行う。そして、CPU１０２は、その処理結果を、必要に応じて、例えば、入出力インタフェース１１０を介して、出力部１０６から出力、あるいは、通信部１０８から送信、さらには、ハードディスク１０５に記録等させる。
【０１５３】
なお、入力部１０７は、キーボードや、マウス、マイク等で構成される。また、出力部１０６は、LCD(Liquid Crystal Display)やスピーカ等で構成される。
【０１５４】
ここで、本明細書において、コンピュータがプログラムに従って行う処理は、必ずしもフローチャートとして記載された順序に沿って時系列に行われる必要はない。すなわち、コンピュータがプログラムに従って行う処理は、並列的あるいは個別に実行される処理（例えば、並列処理あるいはオブジェクトによる処理）も含む。
【０１５５】
また、プログラムは、１のコンピュータ（プロセッサ）により処理されるものであっても良いし、複数のコンピュータによって分散処理されるものであっても良い。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであっても良い。
【０１５６】
さらに、本明細書において、システムとは、複数の構成要素（装置、モジュール（部品）等）の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、１つの筐体の中に複数のモジュールが収納されている１つの装置は、いずれも、システムである。
【０１５７】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０１５８】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０１５９】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１６０】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０１６１】
また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
【０１６２】
なお、本技術は、以下のような構成をとることができる。
【０１６３】
＜１＞
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御するタイミング制御部を備える
コンテンツ処理装置。
＜２＞
前記コンテンツは、ビデオを含み、
前記タイミング制御部は、前記出力タイミングの制御として、前記ビデオの出力のスキップ又はリピートの制御を行う
＜１＞に記載のコンテンツ処理装置。
＜３＞
前記タイミング制御部は、前記ユーザの視線の検出結果に応じて、前記ユーザが、前記ビデオを見ていない場合に、前記スキップ又はリピートが行われやすくなるように、前記スキップ又はリピートを制御する
＜２＞に記載のコンテンツ処理装置。
＜４＞
前記ビデオは、ビデオバッファに記憶されてから出力され、
前記タイミング制御部は、
前記ビデオバッファに記憶された前記ビデオの蓄積量が、前記スキップを行うスキップ閾値以上である場合に前記スキップの制御を行い、前記ビデオバッファに記憶された前記ビデオの蓄積量が、前記リピートを行うリピート閾値以下である場合に前記リピートの制御を行い、
前記ユーザが、前記ビデオを見ていない場合に、前記スキップ閾値を小さくするとともに、前記リピート閾値を大きくする
＜３＞に記載のコンテンツ処理装置。
＜５＞
前記コンテンツは、オーディオをさらに含み、
前記タイミング制御部は、
これから出力しようとする前記ビデオ及び前記オーディオそれぞれを出力すべき出力時刻の差分が、所定の閾値以上である場合に、前記出力時刻の差分が小さくなるように、前記スキップ又はリピートの制御を行い、
前記ユーザが、前記ビデオを見ていない場合に、前記スキップ又はリピートが行われやすくなるように、前記スキップ又はリピートを制御する
＜３＞に記載のコンテンツ処理装置。
＜６＞
前記ビデオのスキップでは、前記ビデオの出力が飛ばされるか、又は、複数枚の前記ビデオから１枚のビデオが生成される
＜２＞ないし＜５＞のいずれかに記載のコンテンツ処理装置。
＜７＞
ユーザの視線を検出する視線検出部をさらに備える
＜１＞ないし＜６＞のいずれかに記載のコンテンツ処理装置。
＜８＞
前記ビデオは、前記ビデオを表示する表示装置の表示レートと一致していないフレームレートのビデオ、又は、前記ビデオの伝送レートと一致していない出力レートで出力されるビデオである
＜２＞ないし＜４＞のいずれかに記載のコンテンツ処理装置。
＜９＞
前記コンテンツは、同時に出力すべき前記ビデオと前記オーディオとがずれて出力されるコンテンツである
＜５＞に記載のコンテンツ処理装置。
＜１０＞
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御することを含む
コンテンツ処理方法。
＜１１＞
ユーザの視線の検出結果に応じて、コンテンツを出力する出力タイミングを制御するタイミング制御部
として、コンピュータを機能させるためのプログラム。
【符号の説明】
【０１６４】
１１  TSバッファ，  １２  DEMUX，  １３  ビデオESバッファ，  １４  オーディオESバッファ，  １５  キャプションバッファ，  １６  ビデオデコーダ，  １７  オーディオデコーダ，  １８  キャプションデコーダ，  １９ないし２１  バッファ，  ２２  視線検出部，  ２３  バッファ蓄積量監視部，  ２４  タイミング制御部，  ３１  多重分離部，  ３２  ビデオPESバッファ，  ３３  オーディオPESバッファ，  ３４  キャプションPESバッファ，  ３５ないし３７  PESヘッダ検出部，  ３８  時刻情報抽出部，  １０１  バス，  １０２  CPU，  １０３  ROM，  １０４  RAM，  １０５  ハードディスク，  １０６  出力部，  １０７  入力部，  １０８  通信部，  １０９  ドライブ，  １１０  入出力インタフェース，  １１１  リムーバブル記録媒体
【図１】
2017050677.tif 000003
【図２】
2017050677.tif 000004
【図３】
2017050677.tif 000005
【図４】
2017050677.tif 000006