説明

情報処理装置及び音声/映像データ再生方法

【課題】 音声データ及び映像データの再生時に音飛びが発生するのを抑制することができる情報処理装置及び音声/映像データ再生方法を提供する。
【解決手段】 ビデオデコーダ212では、デコードコア部221によって、デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報が付加され、レベル判定/制御部222によって、遅延時間(タイムスタンプ情報が付加されたフレームに対応する音声データが再生された時間に対して、当該フレームを再生すべき時間が遅延した時間)が所定の閾値以上となったフレームが所定のフレーム数連続した場合に、ビデオデコーダ212におけるデコード処理レベルが段階的に低下させられる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、圧縮符号化された音声データ及び映像データをデコードして再生する情報処理装置及び音声/映像データ再生方法に関する。
【背景技術】
【0002】
近年、DVD(Digital Versatile Disc)プレーヤやTV装置のようなオーディオ・ビデオ(AV)機器と同様のAV機能を備えたパーソナルコンピュータ等の情報処理装置が開発されている。このような情報処理装置においては、圧縮符号化された音声データ及び映像データをソフトウェアによってデコードするソフトウェアデコーダが用いられるのが一般的である。ソフトウェアデコーダの使用により、専用のハードウェアを設けることなく、圧縮符号化された音声データ及び映像データをプロセッサ(CPU)によってデコードすることが可能となる。
【0003】
従来のソフトウェアデコーダとしては、音声データ及び映像データの同期再生を実現するために、圧縮符号化された映像データのデコード処理に遅延が発生した場合に、映像データのフォーマット変換処理を所定のフレーム数スキップし、更に遅延が継続した場合には、スキップするフレーム数を増加させるものが存在する(例えば、特許文献1参照)。
【特許文献1】特開2001−128171号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、上述したようなソフトウェアデコーダをパーソナルコンピュータ等の情報処理装置に適用しても、リソース不足や高ビットレートのビデオコンテンツの再生に起因して、音声データ及び映像データの再生時に音飛びが発生するおそれがある。これは、映像データのデコード処理の増大によって情報処理装置に負荷が掛かり、圧縮符号化された音声データ及び映像データのソフトウェアデコーダへの読込みが遅れるためである。
【0005】
そこで、本発明は、このような事情に鑑みてなされたものであり、音声データ及び映像データの再生時に音飛びが発生するのを抑制することができる情報処理装置及び音声/映像データ再生方法を提供することを目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明に係る情報処理装置は、圧縮符号化された音声データ及び映像データをデコードして再生する情報処理装置であって、デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報を付加する情報付加手段と、フレームに対応する音声データが再生された時間に対して、フレームを再生すべき時間が遅延した遅延時間を監視し、当該遅延時間が所定の閾値以上となった場合に、圧縮符号化された映像データのフレームをデコードする際のデコード処理レベルを低下させるレベル制御手段と、を備えることを特徴とする。
【0007】
また、本発明に係る音声/映像データ再生方法は、圧縮符号化された音声データ及び映像データをデコードして再生する音声/映像データ再生方法であって、デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報を付加する情報付加工程と、フレームに対応する音声データが再生された時間に対して、フレームを再生すべき時間が遅延した遅延時間を監視し、当該遅延時間が所定の閾値以上となった場合に、圧縮符号化された映像データのフレームをデコードする際のデコード処理レベルを低下させるレベル制御工程と、を含むことを特徴とする。
【発明の効果】
【0008】
本発明によれば、音声データ及び映像データの再生時に音飛びが発生するのを抑制することができる。
【発明を実施するための最良の形態】
【0009】
以下、本発明の好適な実施形態について、図面を参照して詳細に説明する。なお、各図において同一又は相当部分には同一符号を付し、重複する説明を省略する。
【0010】
図1に示されるように、ノートブック型のパーソナルコンピュータ(情報処理装置)10は、コンピュータ本体11と、ディスプレイユニット12とから構成されている。ディスプレイユニット12には、LCD(Liquid Crystal Display)17から構成される表示装置が組み込まれており、LCD17の表示画面は、ディスプレイユニット12の略中央に位置されている。
【0011】
ディスプレイユニット12は、コンピュータ本体11に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体11は、薄い箱型の筐体を有しており、その上面には、キーボード13、パーソナルコンピュータ10の電源をON/OFFするためのパワーボタン14、入力操作パネル15、タッチパッド16及びスピーカ18等が配置されている。
【0012】
入力操作パネル15は、押されたボタンに対応するイベントを入力する入力装置であり、複数の機能をそれぞれ起動するための複数のボタンを備えている。これらのボタン群には、TV起動ボタン15A、DVD起動ボタン15Bも含まれている。TV起動ボタン15Aは、デジタルTV放送番組のような放送番組データの再生及び記録を行うためのTV機能を起動するためのボタンである。TV起動ボタン15Aがユーザによって押下されたとき、TV機能を実行するためのアプリケーションプログラムが自動的に起動される。DVD起動ボタン15Bは、DVDに記録されたビデオコンテンツを再生するためのボタンである。DVD起動ボタン15Bがユーザによって押下されたとき、ビデオコンテンツを再生するためのアプリケーションプログラムが自動的に起動される。
【0013】
次に、パーソナルコンピュータ10のシステム構成について説明する。
【0014】
図2に示されるように、パーソナルコンピュータ10は、CPU111、ノースブリッジ112、主メモリ113、ビデオコントローラ114、オーディオコントローラ115、サウスブリッジ119、BIOS−ROM120、ハードディスクドライブ(HDD)121、光ディスクドライブ(ODD)122、デジタルTV放送チューナ123、エンベデッドコントローラ/キーボードコントローラIC(EC/KBC)124及びネットワークコントローラ125等を備えている。
【0015】
CPU111は、パーソナルコンピュータ10の動作を制御するために設けられたプロセッサであり、HDD121から主メモリ113にロードされるオペレーティングシステム(OS)、及びオーディオ/ビデオ再生アプリケーション201のような各種アプリケーションプログラムを実行する。
【0016】
オーディオ/ビデオ再生アプリケーション201は、圧縮符号化された音声データ及び映像データをデコードして再生するためのソフトウェアデコーダである。オーディオ/ビデオ再生アプリケーション201は、圧縮符号化されている音声データ及び映像データ(例えば、デジタルTVチューナ123によって受信されたデジタルTV放送番組や、ODD122から読み出されるHD(High Definition)規格のビデオコンテンツ等)をデコードするための機能を有している。
【0017】
また、CPU111は、BIOS−ROM120に格納されたシステムBIOS(Basic Input Output System)も実行する。システムBIOSは、ハードウェア制御のためのプログラムである。
【0018】
ノースブリッジ112は、CPU111のローカルバスとサウスブリッジ119との間を接続するブリッジデバイスである。ノースブリッジ112には、主メモリ113をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ112は、AGP(Accelerated Graphics Port)バス等を介してビデオコントローラ114との通信、及びオーディオコントローラ115との通信を実行する機能も有している。
【0019】
ビデオコントローラ114は、パーソナルコンピュータ10のディスプレイモニタとして使用されるLCD17を制御するビデオ再生コントローラである。ビデオコントローラ114は、デコードされた映像データからLCD17に送出すべき再生信号を生成する。
【0020】
オーディオコントローラ115は、パーソナルコンピュータ10のスピーカ18を制御するオーディオ再生コントローラである。オーディオコントローラ115は、デコードされた音声データからスピーカ18に送出すべき再生信号を生成する。
【0021】
サウスブリッジ119は、LPC(Low Pin Count)バス上の各デバイス、及びPCI(Peripheral Component Interconnect)バス上の各デバイスを制御する。また、サウスブリッジ119は、HDD121、ODD122を制御するためのIDE(Integrated Drive Electronics)コントローラを内蔵している。更に、サウスブリッジ119は、デジタルTV放送チューナ123を制御する機能、及びBIOS−ROM120をアクセス制御するための機能も有している。
【0022】
HDD121は、各種ソフトウェア及びデータを格納する記憶装置である。ODD122は、ビデオコンテンツが格納されたDVD等の記憶メディアを駆動するためのドライブユニットである。デジタルTV放送チューナ123は、デジタルTV放送番組のような放送番組データを外部から受信するための受信装置である。
【0023】
EC/KBC124は、電力管理のためのエンベデッドコントローラと、キーボード(KB)13及びタッチパッド16を制御するためのキーボードコントローラとが集積された1チップマイクロコンピュータである。このEC/KBC124は、ユーザによるパワーボタン14の操作に応じてパーソナルコンピュータ10の電源をON/OFFする機能を有している。更に、EC/KBC124は、ユーザによるTV起動ボタン15A、DVD起動ボタン15Bの操作に応じてパーソナルコンピュータ10の電源をONすることもできる。ネットワークコントローラ125は、例えばインターネット等の外部ネットワークとの通信を実行する通信装置である。
【0024】
次に、オーディオ/ビデオ再生アプリケーション201によって実現されるソフトウェアデコーダの構成について説明する。
【0025】
図3に示されるように、オーディオ/ビデオ再生アプリケーション201は、オーディオ/ビデオデマックス211、ビデオデコーダ212、ビデオレンダラ213、オーディオデコーダ214、ARC215及びオーディオレンダラ216を含んでいる。
【0026】
オーディオ/ビデオデマックス211は、例えばODD122によって駆動されたDVD内のビデオコンテンツの多重化データを読み込み、圧縮符号化された音声データと圧縮符号化された映像データとに分離する機能を有している。また、オーディオ/ビデオデマックス211は、圧縮符号化された音声データを管理してオーディオデコーダ214に送信する機能、及び圧縮符号化された映像データを管理してビデオデコーダ212に送信する機能も有している。
【0027】
ビデオデコーダ212は、オーディオ/ビデオデマックス211よって送信された映像データの各フレームをデコードする機能を有している。ビデオレンダラ213は、ビデオデコーダ212によってデコードされた映像データを、ビデオ再生ドライバ202を介してビデオコントローラ114に出力する機能を有している。これにより、パーソナルコンピュータ10のLCD17を介して映像データが再生されることになる。なお、ビデオ再生ドライバ202は、ビデオコントローラ114を制御するためのソフトウェアである。
【0028】
オーディオデコーダ214は、オーディオ/ビデオデマックス211よって送信された音声データをデコードする機能を有している。ARC215は、オーディオデコーダ214によってデコードされた音声データを増幅するアンプとしての機能を有している。オーディオレンダラ216は、オーディオデコーダ214によってデコードされ且つARC215によって増幅された音声データを、オーディオ再生ドライバ203を介してオーディオコントローラ115に出力する機能を有している。これにより、パーソナルコンピュータ10のスピーカ18を介して音声データが再生されることになる。なお、オーディオ再生ドライバ203は、オーディオコントローラ115を制御するためのソフトウェアである。
【0029】
図4に示されるように、ビデオデコーダ212は、デコードコア部(情報付加手段)221及びレベル判定/制御部(レベル制御手段)222を含んでいる。
【0030】
デコードコア部221は、オーディオ/ビデオデマックス211よって送信された映像データの各フレームをデコードすると共に、デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報を付加する機能を有している。
【0031】
レベル判定/制御部222は、タイムスタンプ情報が付加されたフレームに対応する音声データが再生された時間(いわゆるストリームタイム)に対して、当該フレームを再生すべき時間(すなわち、タイムスタンプ情報が示す時間)が遅延した時間(以下、単に「遅延時間」という)を監視する機能を有している。また、レベル判定/制御部222は、圧縮符号化された映像データのフレームをデコードする際のデコード処理レベルを所定の条件で判定し、判定したデコード処理レベルをデコードコア部221に対して設定する機能も有している。
【0032】
なお、ビデオレンダラ213は、各フレームに付加されたタイムスタンプ情報が示す時間、及びタイムスタンプ情報が付加された各フレームに対応する音声データが再生された時間を取得し、レベル判定/制御部222にフィードバックする機能を有している。
【0033】
次に、図5のフローチャートを参照しつつ、オーディオ/ビデオ再生アプリケーション201によって実行されるデコード処理の手順について説明する。
【0034】
まず、デコードコア部221によって、通常のデコード処理レベルで映像データのデコード処理が行われる(ステップS101)。このとき、レベル判定/制御部222によって、遅延時間が所定の閾値(ここでは、100ms)以上となったフレームが所定のフレーム数(ここでは、3フレーム)連続したか否かが判断される(ステップS102)。なお、所定の閾値や所定のフレーム数は、適宜変更することができる。
【0035】
ステップS102の判断の結果、連続しなかった場合には、通常のデコード処理レベルで映像データのデコード処理が継続される(ステップS101)。
【0036】
一方、ステップS102の判断の結果、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常の1/2のデコード処理レベルで映像データのデコード処理が行われる(ステップS103)。つまり、ビデオデコーダ212におけるデコード処理レベルが一段階低下させられる。なお、デコードコア部221は、圧縮符号化された映像データのフレームに対するデコード処理の一部(例えば、デブロキングフィルタ処理)を省略することで、デコード処理レベルを低下させる。
【0037】
そして、レベル判定/制御部222によって、遅延時間が100ms以上となったフレームが3フレーム連続したか否かが判断される(ステップS104)。
【0038】
ステップS104の判断の結果、連続しなかった場合には、遅延時間が100ms未満となったフレームが3フレーム連続したか否かが判断される(ステップS105)。その結果、連続しなかった場合には、通常の1/2のデコード処理レベルで映像データのデコード処理が継続される(ステップS103)。一方、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常のデコード処理レベルで映像データのデコード処理が行われる(ステップS101)。つまり、ビデオデコーダ212におけるデコード処理レベルが一段階向上させられる。
【0039】
一方、ステップS104の判断の結果、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常の1/4のデコード処理レベルで映像データのデコード処理が行われる(ステップS106)。つまり、ビデオデコーダ212におけるデコード処理レベルが更に一段階低下させられる。
【0040】
そして、レベル判定/制御部222によって、遅延時間が100ms以上となったフレームが3フレーム連続したか否かが判断される(ステップS107)。
【0041】
ステップS107の判断の結果、連続しなかった場合には、遅延時間が100ms未満となったフレームが3フレーム連続したか否かが判断される(ステップS108)。その結果、連続しなかった場合には、通常の1/4のデコード処理レベルで映像データのデコード処理が継続される(ステップS106)。一方、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常の1/2のデコード処理レベルで映像データのデコード処理が行われる(ステップS103)。つまり、ビデオデコーダ212におけるデコード処理レベルが一段階向上させられる。
【0042】
一方、ステップS107の判断の結果、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常の1/8のデコード処理レベルで映像データのデコード処理が行われる(ステップS109)。つまり、ビデオデコーダ212におけるデコード処理レベルが更に一段階低下させられる。
【0043】
そして、レベル判定/制御部222によって、遅延時間が100ms未満となったフレームが3フレーム連続したか否かが判断される(ステップS110)。
【0044】
ステップS110の判断の結果、連続しなかった場合には、通常の1/8のデコード処理レベルで映像データのデコード処理が継続される(ステップS109)。
【0045】
一方、ステップS110の判断の結果、連続した場合には、レベル判定/制御部222によって、デコードコア部221に対するデコード処理レベルの設定が行われ、デコードコア部221によって、通常の1/4のデコード処理レベルで映像データのデコード処理が行われる(ステップS106)。つまり、ビデオデコーダ212におけるデコード処理レベルが一段階向上させられる。
【0046】
以上説明したように、パーソナルコンピュータ10においては、デコードコア部221によって、デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報が付加され、レベル判定/制御部222によって、遅延時間(タイムスタンプ情報が付加されたフレームに対応する音声データが再生された時間に対して、当該フレームを再生すべき時間が遅延した時間)が所定の閾値以上となったフレームが所定のフレーム数連続した場合に、ビデオデコーダ212におけるデコード処理レベルが段階的に低下させられる。このように、パーソナルコンピュータ10では、リソース不足や高ビットレートのビデオコンテンツの再生に起因して、音声データ及び映像データの再生時に音飛びが発生するおそれが高くなった際に、音声データのデコード処理よりも高負荷を生じさせる映像データのデコード処理について、そのデコード処理レベルが低下させられる。そのため、リソース不足時や高ビットレートのビデオコンテンツの再生時であっても、パーソナルコンピュータ10に掛かる負荷を軽減して、圧縮符号化された音声データ及び映像データのオーディオ/ビデオデマックス211への読込みの遅れを防止することができる。従って、パーソナルコンピュータ10によれば、音声データ及び映像データの再生時に音飛びが発生するのを抑制することが可能となる。
【0047】
また、パーソナルコンピュータ10においては、レベル判定/制御部222によって、遅延時間が所定の閾値以上となったフレームが所定のフレーム数連続した場合に、ビデオデコーダ212におけるデコード処理レベルが低下させられる。このように、デコード処理レベルが低下させられる条件を、遅延したフレームが所定のフレーム数だけ連続した場合とすることで、何らかの原因で突発的に1フレームだけ遅延したようなときに、デコード処理レベルが低下させられるのを防止することができる。
【0048】
また、パーソナルコンピュータ10においては、レベル判定/制御部222によって、ビデオデコーダ212におけるデコード処理レベルが段階的に低下させられる。これにより、音声データ及び映像データの再生に際し、音飛びが発生するのを抑制しつつ、画質が著しく劣化するのを防止することができる。
【0049】
更に、パーソナルコンピュータ10においては、レベル判定/制御部222によって、遅延時間が所定の閾値未満となったフレームが所定のフレーム数連続した場合に、ビデオデコーダ212におけるデコード処理レベルが段階的に向上させられる。これにより、パーソナルコンピュータ10に掛かる負荷が軽減したときには、映像データの再生に際して画質の向上を図ることができる。
【0050】
本発明は、上述した実施形態に限定されるものではない。
【0051】
例えば、上記実施形態は、デコードコア部221が、圧縮符号化された映像データのフレームに対するデコード処理の一部を省略することで、デコード処理レベルを低下させる場合であったが、デコードコア部221は、圧縮符号化された映像データのフレームに対するデコード処理の全部を省略することで(すなわち、圧縮符号化された映像データのフレームを間引くことで)、デコード処理レベルを低下させてもよい。圧縮符号化された映像データのフレームを間引く場合にも、1フレーム、2フレーム、3フレームというように段階的に間引いてデコード処理レベルを低下させることが好ましい。そして、2フレームや3フレーム間引くような場合には、ユーザの違和感を緩和するために、連続的に間引くのではなく、断続的に間引くのが好適である。なお、圧縮符号化された映像データのフレームに対するデコード処理の一部の省略及び全部の省略の両方を1のデコード処理の中で行ってもよい。
【0052】
また、上記実施形態は、通常のデコード処理レベル、通常の1/2のデコード処理レベル、通常の1/4のデコード処理レベル及び通常の1/8のデコード処理レベルの間でデコード処理レベルの低下及び向上を行う場合であったが、一定の間隔ずつデコード処理レベルの低下及び向上を行ってもよいし、最大値及び最小値の間でデコード処理レベルの低下及び向上を行ってもよい。
【図面の簡単な説明】
【0053】
【図1】本発明に係る情報処理装置の一実施形態であるパーソナルコンピュータの斜視図である。
【図2】図1に示されたパーソナルコンピュータのシステム構成を示すブロック図である。
【図3】図2に示されたオーディオ/ビデオ再生アプリケーションによって実現されるソフトウェアデコーダの構成を示すブロック図である。
【図4】図3に示されたビデオデコーダの構成を示すブロック図である。
【図5】図2に示されたオーディオ/ビデオ再生アプリケーションによって実行されるデコード処理の手順を示すフローチャートである。
【符号の説明】
【0054】
10…パーソナルコンピュータ(情報処理装置)、221…デコードコア部(情報付加手段)、222…レベル判定/制御部(レベル制御手段)。

【特許請求の範囲】
【請求項1】
圧縮符号化された音声データ及び映像データをデコードして再生する情報処理装置であって、
デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報を付加する情報付加手段と、
前記フレームに対応する音声データが再生された時間に対して、前記フレームを再生すべき時間が遅延した遅延時間を監視し、当該遅延時間が所定の閾値以上となった場合に、圧縮符号化された映像データのフレームをデコードする際のデコード処理レベルを低下させるレベル制御手段と、を備えることを特徴とする情報処理装置。
【請求項2】
前記レベル制御手段は、前記遅延時間が前記所定の閾値以上となった前記フレームが所定のフレーム数連続した場合に、前記デコード処理レベルを低下させることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記レベル制御手段は、段階的に前記デコード処理レベルを低下させることを特徴とする請求項1又は2記載の情報処理装置。
【請求項4】
前記レベル制御手段は、圧縮符号化された映像データのフレームに対するデコード処理の一部を省略することで、前記デコード処理レベルを低下させることを特徴とする請求項1〜3のいずれか一項記載の情報処理装置。
【請求項5】
前記レベル制御手段は、圧縮符号化された映像データのフレームに対するデコード処理の全部を省略することで、前記デコード処理レベルを低下させることを特徴とする請求項1〜3のいずれか一項記載の情報処理装置。
【請求項6】
前記レベル制御手段は、前記遅延時間が前記所定の閾値未満となった場合に、前記デコード処理レベルを向上させることを特徴とする請求項1〜5のいずれか一項記載の情報処理装置。
【請求項7】
前記レベル制御手段は、前記遅延時間が前記所定の閾値未満となった前記フレームが所定のフレーム数連続した場合に、前記デコード処理レベルを向上させることを特徴とする請求項6記載の情報処理装置。
【請求項8】
前記レベル制御手段は、段階的に前記デコード処理レベルを向上させることを特徴とする請求項6又は7記載の情報処理装置。
【請求項9】
圧縮符号化された音声データ及び映像データをデコードして再生する音声/映像データ再生方法であって、
デコードされた映像データのフレームに、当該フレームを再生すべき時間を示すタイムスタンプ情報を付加する情報付加工程と、
前記フレームに対応する音声データが再生された時間に対して、前記フレームを再生すべき時間が遅延した遅延時間を監視し、当該遅延時間が所定の閾値以上となった場合に、圧縮符号化された映像データのフレームをデコードする際のデコード処理レベルを低下させるレベル制御工程と、を含むことを特徴とする音声/映像データ再生方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2008−92107(P2008−92107A)
【公開日】平成20年4月17日(2008.4.17)
【国際特許分類】
【出願番号】特願2006−268374(P2006−268374)
【出願日】平成18年9月29日(2006.9.29)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】