以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
図1は、本発明の一実施形態に係る撮影システムの構成を示したブロック図である。先ず、図1の各ブロックの説明を行う。
1は、本実施形態に係るテレビ受信機または、パーソナルコンピュータ(以下では、テレビ受信機1)である。2は、テレビ受信機1に接続される放送電波を受信するための衛星放送もしくは、地上波のテレビ信号を受信するアンテナである。3は、アンテナ2で受信したテレビ信号をデジタル信号に変換し、変調された圧縮映像、音声を復調しMPEG−2トランスポートストリーム(圧縮された映像、音声、データ等が複数本パケット化され混在しているストリーム)に変換するチューナである。
4は、テレビ受信機1の中で静止画データや各種制御データを転送するバスである。5は、受信したトランスポートストリームの中から、圧縮映像、圧縮音声、データ放送の各パケットを分離させる部分であるデマルチプレクサである。
6は、デマルチプレクサ5で分離された圧縮映像信号をデコードしたり、圧縮された音声データをデコードするAVデコーダである。7は、AVデコーダ6からの映像データの表示フォーマット(画素数、フレーム周波数、走査方式)を変換したり、CPU10からバス4を介して転送される静止画データをプレーン管理して描画し、AVデコーダ6からの映像データと重ね合わせるグラフィック処理部である。
8は、表示デバイス9に表示する映像データや静止画データを格納するためのビデオメモリである。9は、映像データを表示し、テレビ放送音声を出力するスピーカを持つ表示デバイスである。10は、テレビ受信機1全体を制御するCPUであり、ソフトウェアデーコードで圧縮された静止画データのデコードも行うとともに、プログラムの実行や一時的なデータ保持用のRAMを含んでいる。
11は、CPU10用のプログラムや表示デバイスの情報を保持しておく書き換え可能な、フラッシュROMである。12は、メモリカード35のデータをCPU10に転送するためのカードインタフェースである。13は、デジタル放送データや、撮影データを記憶する蓄積部でありハードディスクドライブでも、DVD−RAMでも、半導体メモリでも良い。
14は、リモコン15の赤外線データを受信し、電気信号に変換する赤外受光部、15は、表示デバイス9を見ながらユーザがグラフィカルな表示ボタンを選択したり、テレビのチャンネル選択を行うリモコンである。
16は、インターネット17からテレビ受像機1内にデータを受信するためのモデムルータである。このモデムルータ16は、インターネット17に接続するインフラによって変わる。たとえば、ケーブルであればケーブルモデムルータであり、電話回線を利用したADSLであれば、ADSLのモデムルータである。
34は、デジタルカメラもしくは、デジタルビデオカメラである(以下では、デジタルカメラ34)。20は、撮影対象物からの光を受け取るレンズ、21は、光を電気信号に変換する撮像素子(例えば、CCD)、22は、CCD21からの電気信号の利得を調整する利得調整、23は、電気信号(アナログ)をデジタル信号に変換するA/D変換器、24は、A/D変換されたデジタルデータを一時的に保存するRAM、25は、RAM24に保存されたデジタルデータをCPU28の指示により圧縮するエンコーダである。
このエンコーダ25は、複数の圧縮ハードエンジンで構成されていても良いし、メディアプロセッサのようにソフトウェアで圧縮しても良い。その場合のソフトウェアは、フラッシュROM29に格納されている。また、このプログラムは、CPU28の指示によりインターネット17からモデム33を介して入力しても良い。
26は、撮影されたデジタル映像(RAM24に格納されている)や、CPU28が描画する表示データを表示デバイス27に表示するためのグラフィックコントローラである。表示用のビデオメモリは、RAM24と兼用する。27は、表示デバイスであり、液晶表示器でもEL素子でも良い。28は、デジタルカメラ34全体を制御するシステムCPUである。29は、テレビ受信機1からの表示デバイスファイルデータ、圧縮ソフトウェアを格納したり、システム全体のプログラムを格納するフラッシュROMである。
30は、メモリカード35に撮影した画像、音声ファイル、後述する自動表示ファイル等を格納するためのカードインタフェース、31は、ユーザが操作するコンソール32の操作データを受け取るシリアルインタフェース、33は、撮影したデータをインターネット17に送信するためのモデムである。
35は、テレビ受信機1とデジタルカメラ34間でデータを交換するために必要なメモリカードであり、例えば、半導体メモリ、ハードディスクメモリ、フレキシブルディスク(R)、MO、CD,DVD等の光学系メモリを適用することができる。36は、音声を取り込むためのマイクである。37は、撮影するトリガとなるシャッタ、38は、撮影する対象物、撮影条件を確認するファインダである。
以下、上記各ブロックの符号と照らし合わせて本実施形態の撮影システムの動作を説明する。
[表示デバイス情報の登録方法]
まず、はじめにテレビ受信機1が使用する表示デバイス情報をメモリカード35に記憶させる方法に関して説明する。図2にその動作のフローチャートを示す。
テレビ受信機1のCPU10は、カードインタフェース12の状態を検知し、メモリカード35が挿入されていることを確認する(ステップS301)。確認後、CPU10は、バス4を介してグラフィック処理部7に表示デバイス登録画面データを送る。グラフィック処理部は、ビデオメモリ8にそのデータを書き込み、適切なタイミングでそのデータを表示デバイス9に出力する(ステップS302)。表示デバイス9上の登録画面表示例を図3に示す。
図3に示すように、表示デバイス登録を行う内容が表示されリモコン15(図7)の上下左右操作ボタン405を用いて"はい"402の位置にフォーカスを移動させる。フォーカス移動の動作を図1で説明すると、405の押されたボタンコードがリモコン15から赤外受光部インタフェース14で受け取られCPU10に送られる。CPU10は、そのコード(上下左右)を認識し、そのコードに応じてフォーカス映像を移動させた描画データをグラフィック処理部7に送りビデオメモリ8に書かれる。ビデオメモリ8のデータは、表示デバイス9に転送されユーザに表示される。
次に選択ボタン406を押すことによりCPU10は、ユーザが登録決定をしたことを知る(ステップS303)。CPU10は、図3に表示されている内容のデータをフラッシュROM11から読み出し、CPU10内のRAMに格納する(ステップS304)。次にCPU10は、図4に示す画面を表示させ、他の登録情報を登録するかを問い合わせる。ここでは、テレビ受信機1のIPアドレス情報、デコードできる圧縮符号化フォーマット情報、OSD表示する場合の表示語情報である。
ユーザは、リモコン15により"はい"404の部分にフォーカスを移動させ、選択キー406で決定する(ステップS305)。同様に、CPU10は、図4に表示されている内容のデータをフラッシュROM11から読み出し、CPU10内のRAMに格納する(ステップS306)。次に、CPU10は、自動表示(テレビやパソコンで最適な表示状態を自動的に行う表示のこと)をテレビ受信機1で行う場合に使用するリモコンキーの設定を行う(ステップS307)。図5にその登録画面表示例を示す。
ユーザは登録したいリモコンキーを押しつづける(ステップS308)。CPU10は、同じリモコンボタンコードをある時間(ここでは10秒)受信した場合、そのコードをCPU10内のRAMに記録する。このリモコン登録は、1つでなくてもよく、複数ある場合はその分だけ登録が可能である。
最後に、CPU10は、ソフトキーボード409を表示させ、表示デバイス名登録画面を表示させる。図6にその登録画面表示例を示す。ユーザはリモコンボタン405を用いてキーボードボタン409のフォーカスを移動させ、選択キー406で文字を決定していく。すべての文字入力が終了した後、"決定"410にフォーカス移動し選択ボタン406を押す(ステップS309)。
CPU10は、CPU10内のRAMに一時格納した各表示デバイス情報をまとめて、メモリカード35の指定ディレクトリにファイルとして書き込む。ファイル構造は、DCFでも、FATでも良い(ステップS310)。
また、CPU10は、表示デバイス管理ファイル511を作成し、その中に表示デバイスファイル数のパラメータと新規に追加した表示デバイスファイルのID番号を書き込み、DISPINFOディレクトリの下に配置する。このときテレビ受信機1は、そのID番号をフラッシュROM11に格納し、後に受け取った撮影データが自分の表示デバイス用なのかを判断し、自分の表示デバイス用であると判断すると当該撮影データの表示処理を実行する。また、表示デバイスファイルを消去したい場合も、この格納されたID番号に対応する表示デバイスファイルをメモリカード35から消去する。
図8に、メモリカード35に書き込まれた表示デバイスファイルのディレクトリ構成を示す。501は、メモリカード35のルートディレクトリである。そのディレクトリの下にDCIM502とDISPINFO507のディレクトリがあり、DCIM502の下には、いくつかのサブディレクトリ503、504、505があり、各サブディレクトリの下には、デジタルカメラ34で撮影された映像・音声データ(画像ファイル506)が格納されている。
一方、表示デバイスの各情報ファイル508、509、510は、DISPINFOディレクトリ507の下に格納されている。表示デバイスファイルは、複数存在しても良い。また表示デバイス管理ファイル511もDISPINFOディレクトリ507の下に格納されている。
図9に表示デバイスファイル構造と表示デバイス管理ファイル構造を示す。表示デバイスファイルおよび表示デバイス管理ファイルは、2つのセクション(HDR、TASK)からなり、各セクションには、複数のパラメータ情報が記述されている。たとえば、本実施形態の表示デバイスファイル例では、HDR(ヘッダ)セクションには、図9に示すようにバージョン情報、ファイル記述子、セクション数、パラメータ数が記述される。また、[TASK]セクションには、表示デバイスファイルを管理識別するID番号、表示デバイスの画素サンプリング指定(YCrCb)、階調ビット数(R,G,B独立に記述)、表示デバイスX,Y方向画素数、X,Y方向表示解像度、画像・音声圧縮指定、音声指定(ステレオ、モノクロ、デジタル、アナログ)、自動表示リモコンボタンコード、表示デバイス名、IPアドレス、OSD表示語である。
各パラメータは、固定長のビットでも、可変長のビット構成でも良いが、あらかじめテレビ受信機1とデジタルカメラ34間で構成を決めておく。もしくは、バージョン管理で適合する様に各CPUが調整する。同様に、表示デバイス管理ファイルは、[TASK]セクションの下に、格納されている表示デバイスファイルの数とそのID番号がすべて書き込まれている。
[表示デバイスファイルに基づく制御フロー]
次に、デジタルカメラ34が、メモリカード35内に格納された表示デバイスファイル情報に基づき、撮影条件を制御する実施形態について説明する。図10と図11にその動作フローチャートを示す。
まず、デジタルカメラ34のCPU28は、カードインタフェース30の状態を検知し、メモリカード35が挿入されていることを確認する(ステップS601)。
メモリカード35が検知された後、CPU28は、カードインタフェース30を介してメモリカード35内のROOTディレクトリ501を探す。その後、ROOTディレクトリ501の下のDISPINFOディレクトリ507を探す(ステップS602)。
そして、CPU28がDISPINFO507を見つけた場合は、そのディレクトリの下にある、表示デバイスファイルを探す。具体的には、表示デバイス管理ファイルの[TASK]セクションの中の表示デバイスファイル数を読み込み判断する。もし、見つかった場合(ファイル数が1以上)は、そのファイルの中の[HDR]情報を読み込みそのセクション数、パラメータ数に応じて、[TASK]セクションのすべてのパラメータを、フラッシュROM29に格納する(ステップS603、604)。
もし、[HDR]情報内のバージョン情報が、デジタルカメラ34のものと異なる場合は、CPU28は、グラフィックコントローラ26を介して表示デバイス27にバージョンをそろえるメッセージをユーザに表示し、フラッシュROM29にデータを蓄積しなくても良い。または、バージョン情報に基づきフラッシュROM29に格納するデータを制限する。
CPU28は、DISPINFOディレクトリ507の下の表示デバイスファイルをすべて読み込んだのを確認する。これは、表示デバイス管理ファイル511の中の[TASK]セクションの中の表示デバイスファイル数と同じ分だけフラッシュROM29に記憶できたかを確認すればよい。
次にフラッシュROM29に格納された表示デバイスパラメータに応じて、撮影条件を制御して切り替える実施形態に関して説明する。図11にその動作フローチャートを示す。また、デジタルカメラ34の外観構成例を図12に示す。
まず、CPU28は、コンソール32−1の状態を検出し、自動表示撮影モードにユーザが設定しているかを検出する(ステップS701)。ユーザが自動表示撮影モードに設定してある場合は、CPU28は、フラッシュROM29に格納されている表示デバイスファイル情報の中から表示デバイス名を読み出し(ステップS702)、そのデータをグラフィックコントローラ26を介して表示デバイス27に表示する(ステップS703)。
次に、CPU28は、ユーザが操作するコンソールスイッチ32−2の動作にあわせて、表示デバイス27に表示した表示デバイス名のフォーカスを移動させ、所望の表示デバイスを選択する(ステップS704)。表示デバイス名表示は、ファインダ38内で表示してもよい。デフォルトのフォーカス位置が希望の表示デバイスである場合は、上記コンソールスイッチの操作は必要ない。
そして、ユーザが撮影を開始し、シャッタ37を半押しした状態をCPU28は検出し、そのときフォーカスが当たっている表示デバイスのデータをCPU28は検出する。そして、本実施形態では、選択された表示デバイスに関するデータの中から階調ビット数と、表示デバイスX,Y方向の画素数、画素サンプリング指定データを読み出す。
そして、その読み出したデータに基づき、CPU28は、A/D変換器23のサンプリングクロックのタイミングとサンプリングビット数とエンコーダ25の量子化部分を制御する。もし、表示デバイスファイルの階調ビットデータが、通常(RGB各8ビット)より高い場合は、A/D変換器23のサンプリングビット数を高くするように制御する。また、画素サンプリングが、Y:Cb:Cr=4:2:2の場合は、A/D変換器23の輝度と色差データのサンプリング位置をあわせるように制御し、Y:Cb:Cr=4:2:0の場合は、各輝度サンプリングの中心に色差データのサンプリングが行われるように制御する。
また、表示デバイスのX,Y方向の解像度がVGA(640×480)程度の低いものであった場合は、A/D変換器23のサンプリングクロックを落とし、またエンコーダ25の圧縮率を高く設定する。逆に、表示デバイスのX,Y方向の画素数がUGA(1600×1200)やハイビジョンテレビ(1920×1080)程度の高いものは、A/D変換器23のサンプリングクロックは最大にし、エンコーダの圧縮率はゼロ(非圧縮)もしくは低い値に制御する(ステップS707)。CPU28は、シャッタ37が押されたことを確認する(ステップS708)。
次に、CPU28は、上記制御を行った映像データをメモリカード35の中に書き込む。このときの撮影画像ファイルは、DCIMディレクトリ502の下の100ABCDEディレクトリ503の下に適当なファイル名をつけて書き込まれる(ステップS709)。一方、CPU28は、図13に示したような、自動表示ファイル508を作成し、今撮影し、書き込んだ画像・音声ファイル名、ディレクトリ位置情報を書き込む。また、コンソール32−1の撮影モード情報、選択した表示デバイスIDと表示デバイスに対応する自動表示リモコンボタンコード、撮影した階調ビット数を書き込む(ステップS710、711)。図13にその自動表示ファイルの構造例を示す。
自動表示ファイルは、1つのヘッダセクション[HDR]と撮影枚数に応じて増える[TASK]セクションに分かれている。[TASK]セクションは、1枚またはファイル時間単位で撮影する毎に増えてゆく。[TASK]セクションのパラメータとして、選択した撮影モード情報、撮影した画像・音声ファイル名、そのディリレクトリ位置情報、表示デバイスID、自動表示リモコンボタンコード、階調ビット数がある。
[自動表示ファイルに基づく表示最適化方法の実施形態]
次に、デジタルカメラ34で作成された自動表示ファイルに基づいてテレビ受信機1で表示を最適化する方法について説明する。図14にその動作フローチャートを示す。
テレビ受信機1のCPU10は、カードインタフェース12の状態を検知し、メモリカード35が挿入されていることを確認する(ステップS801)。続いて、CPU10は、メモリカード35内にDISPINFOディレクトリがあるかを調べる(ステップS802)。
もしなければ、CPU10は、DCIMディレクトリ502の下にあるディレクトリ503、504、505の下にある、画像・音声ファイルを順次読み出し(ステップS810)、CPU10でデコードを行いその画像データを、グラフィック処理部7に送る(ステップS811)。グラフィック処理部7の内部構成を図15に示す。
バス4を介して転送された画像データは、バス制御部105のタイミングにあわせてグラフィック描画部102に送られる。そして、ビデオメモリ8の中の静止画プレーン8−2に書き込まれる。このとき同時に、AVデコーダ6によってMPEG−2デコードされたテレビ映像データは、入力制御部101を介してグラフィック描画部102に送られてきても良い。そしてテレビ映像は、ビデオメモリ8−1の動画プレーンに書き込まれ、表示デバイス9への画像データ出力タイミングにあわせて、静止画プレーン8−2のものと同時に出力される。動画、静止画の各プレーンのデータをどの様に合成して出力するか、または、画像サイズを可変させて同時に表示するかは、グラフィック描画部102が、グラフィックプレーン制御部103の指示に従って行う(ステップS812)。
DISPINFOディレクトリをCPU10が検知した場合は、DISPINFOディレクトリの下から自動表示ファイルを読み込む。そして[HDR]セクションのバージョンやセクション数(撮影枚数)をチェックした後、[TASK]セクションの階調ビット数(撮影時に作成された映像データのビット数)を読み込む(ステップS803)。
さらにCPU10は、階調ビット数をバス制御部105を介して映像ビット検出部104に送る。映像ビット検出部104は、その階調ビット数が16以下であれば、現状のビデオメモリ制御状態を維持する(ステップS806)。ここでいうところの16ビットという値は、BSデジタル放送があらかじめ推奨している、静止画プレーンの階調ビット数である。もし、撮影された映像が16ビットより大きい場合(表示デバイスとしては24や30ビットの階調表現能力がある場合)は、静止画プレーンを使用することができないため、動画プレーンに切り替える。BSデジタル放送では、24ビット以上の階調ビットを動画プレーンでは管理できるため、階調ビットが16ビットを超える場合は、そのことをグラフィックプレーン制御部103に伝え、グラフィック描画部102に入力される撮影データは、動画ビデオプレーン8−1に入力されるようにする。このとき、テレビ映像と混合しないように、グラフィック制御部103は、入力制御部101に、AVデコーダ6からのテレビ映像データの入力を禁止させる(ステップS807)。
CPU10は、自動表示ファイル内の画像・音声ファイル名とディレクトリ位置情報を読み込み、該当するファイルをメモリカード35から読み取る(ステップS808、809)。そして、JPEGデコードを行い、グラフィック処理部7に送る(ステップS811)。グラフィック処理部7は、静止画プレーン8−2に画像データを書き込み、表示デバイス9に表示データを送る(ステップS812)。このことにより、通常の撮影データよりもよりきめ細かいデータを表示させることが可能となる。
[リモコンを用いた表示最適化方法の実施形態]
上述した最適化は、CPU10が自動表示ファイル中の階調データをグラフィック処理部7に条件なしで送る説明を行ったが、上述した最適化表示を、特定のリモコンによってのみ行う実施形態について説明する。
CPU10は、階調ビットデータをグラフィック処理部7に送る前に、自動表示ファイルに格納されている自動表示リモコンボタンコードを読み込む。そして、CPU10内部のRAMに記憶させる。そして、CPU10は、グラフィック処理部7に対して、特定リモコンボタンだけが最適化表示が可能であることを示すアイコン107(図16)を送り、表示デバイス9に表示させる。ユーザは、表示デバイスファイルを登録するときに登録したリモコンボタン407を押すと、そのボタンコード赤外受光部インタフェース14で受光され、コードはCPU10に送られる。CPU10は、そのコードと先ほど自動表示ファイルから読み込んだ自動表示リモコンボタンコードとを比較し、一致した場合のみ、階調ビットデータをグラフィック処理部7に送る。これにより、ある特定のユーザにのみ、最適化表示を行わせることができる。図16に、特定リモコンボタンによる最適化表示の画面例を示す。
[インターネットを用いた他の実施形態]
上述した説明では、デジタルカメラ34で作成された画像・音声ファイルと、自動表示ファイルをメモリカード35を介して、テレビ受信機1に渡していたが、これらファイルをインターネットを介して渡す実施形態に関して以下に説明する。図17にその動作フローチャートを示す。
デジタルカメラ34が、メモリカード35に書き込まれた表示デバイス管理ファイルの[TASK]セクションの中の表示デバイスファイル数をフラッシュROM29に読み込む動作は、図10で説明した部分と同じである。
次にフラッシュROM29に格納された表示デバイスパラメータに応じて、撮影した画像・音声ファイルと自動表示ファイルをユーザが選択したテレビ受信機1に転送する実施形態について説明する。また、デジタルカメラ34の概観例を図12に示す。
まず、CPU28は、コンソール32−1の状態を検出し、自動表示撮影モードにユーザが設定しているかを検出する(ステップS901)。ユーザが自動表示撮影モードに設定してある場合は、CPU28は、フラッシュROM29に格納されている表示デバイスファイル情報の中から表示デバイス名を読み出し(ステップS902)、そのデータをグラフィックコントローラ26を介して表示デバイス27に表示する(ステップS903)。
次に、CPU28は、ユーザが操作するコンソールスイッチ32−2の動作にあわせて、表示デバイス27に表示した表示デバイス名のフォーカスを移動させる。表示デバイス名表示は、ファインダ38内でもよい。デフォルトのフォーカス位置が希望の表示デバイスである場合は、上記コンソールスイッチの操作は必要ない(ステップS904)。
そして、ユーザが撮影を開始し、シャッタ37を半押しした状態をCPU28は検出し、そのときフォーカスが当たっている表示デバイスのデータをCPU28は検出する(ステップS905)。そして、本実施形態では、選択された表示デバイスに関するデータの中から階調ビット数と、X,Y方向の画素数、画素サンプリング指定データとIPアドレス情報を読み出す(ステップS906)。
そして、その読み出したデータに基づき、CPU28は、A/D変換器23のサンプリングクロックのタイミングとサンプリングビット数とエンコーダ25の量子化部分を制御する(ステップS907)。もし、表示デバイスファイルの階調ビットデータが、通常(RGB各8ビット)より高い場合は、A/D変換器23のサンプリングビット数を高く(A/D変換器内で動作させるコンパレータ数を増やす)するように制御する。また、画素サンプリングが、Y:Cb:Cr=4:2:2の場合は、A/D変換器23の輝度と色差データのサンプリング本とをあわせるように制御し、Y:Cb:Cr=4:2:0の場合は、各輝度サンプリングの中心に色差データのサンプリングが行われるように制御する。
また、表示デバイスのX,Y方向の解像度がVGA(640×480)程度の低いものであった場合は、A/D変換器23のサンプリングクロックを落とし、またエンコーダ25の圧縮率を高く設定する。逆に、表示デバイスのX,Y方向の画素数がUGA(1600×1200)やハイビジョンテレビ(1920×1080)程度の高いものは、A/D変換器23のサンプリングクロックは最大にし、エンコーダの圧縮率はゼロ(非圧縮)もしくは低い値に制御する。CPU28はシャッタ37が押されたことを確認する(ステップS908)。
次に、CPU28は、上記制御を行った映像データをメモリカード35の中に書き込む。このときの撮影画像ファイルは、DCIMディレクトリ502の下の100ABCDEディレクトリ503の下に適当なファイル名をつけて書き込まれる(ステップS909)。一方、CPU28は、図13に示したような、自動表示ファイル508を作成し、今撮影し、書き込んだ画像・音声ファイル名、ディレクトリ位置情報を書き込む。また、コンソール32−1の撮影モード情報、選択した表示デバイスIDと表示デバイスに対応する自動表示リモコンボタンコード、撮影した階調ビット数を書き込む(ステップS910,911)。自動表示ファイルの構造例は上述した図13と同様である。
次に、CPU28は、フラッシュROM29から読み出した対応するIPアドレスに基づき、上記条件で撮影した画像・音声ファイルと、自動表示ファイルをモデム33を介して送信する(ステップS912)。転送プロトコルは、FTPでも、HTTPでも良い。また、自動表示ファイルデータをCPU28は、XMLに変換し、画像・音声ファイルをJPEGファイルとしてXMLに組み込に、HTTPプロトコルで転送しても良い。また、リモコン15や他のポインティングデバイスで画像・音声ファイルを選択できるようにファイルにリンクするアンカーを記述しても良い。
一方、テレビ受信機1は蓄積部13をサーバとして動作させ、インターネット17を介してモデムルータ16が表示デバイスファイルで設定したIPアドレスで送られてくるデータを受信する。そして、データが転送されたことをCPU10はモデムルータ16から検知し、蓄積部13にXMLファイルを蓄積する。
CPU10は、XMLブラウザアプリケーションソフトを起動し、蓄積部13に蓄積されているXMLファイルをデコードし、その描画データをグラフィック処理部7に送る。このときの表示デバイス9上で表示例を図18に示す。
図18の"画像ID=1"は撮影された画像・音声ファイルとハイパーリンクされており、リモコン15で選択することにより、リンクされた画像・音声ファイルを蓄積部13から読み出しJPEGデコードを行う。そして、その画像データは、再びグラフィック処理部7に送られ表示デバイス9に表示される。その表示例を図19に示す。
[圧縮方法を指定する他の実施形態]
次に、テレビ受信機1がサポートしている画像・音声圧縮デコーダに応じて、撮影時のエンコーダ方式を変更する実施形態について説明する。図20にその動作フローチャートを示す。
まず、CPU28は、コンソール32−1の状態を検出し、自動表示撮影モードにユーザが設定しているかを検出する(ステップS950)。ユーザが自動表示撮影モードに設定してある場合は、CPU28は、フラッシュROM29に格納されている表示デバイスファイル情報の中から表示デバイス名を読み出し(ステップS951)、そのデータをグラフィックコントローラ26を介して表示デバイス27に表示する(ステップS952)。次に、CPU28は、ユーザが操作するコンソールスイッチ32−2の動作にあわせて、表示デバイス27に表示した表示デバイス名のフォーカスを移動させる。表示デバイス名表示は、ファインダ38内でもよい。デフォルトのフォーカス位置が希望の表示デバイスである場合は、上記コンソールスイッチの操作は必要ない(ステップS953)。
そして、ユーザが撮影を開始し、シャッタ37を半押しした状態をCPU28は検出し、そのときフォーカスが当たっている表示デバイスのデータをCPU28は検出する(ステップS954)。そして、本実施形態では、選択された表示デバイスファイルに関するデータの中から画像圧縮指定、音声圧縮指定データを読み出す(ステップS955)。
そして、その読み出したデータに基づき、CPU28は、エンコーダ25内のエンコードエンジンの切り替えを行う。または、あらかじめフラッシュROM29に格納されているソフトウェアエンコーダプログラムの中から指定されたエンコーダプログラムをダウンロードする(ステップS957)。
撮影のシャッタボタン37が押されたことをCPU28が検知すると、A/D変換器23から出力された画像データは、RAM24に一時格納され、エンコーダ25により圧縮され、画像ファイルとしてメモリカード35に格納される。また音声は、マイク36にあるA/D変換器でデジタル化されたのち、エンコーダ25で圧縮されメモリカード35に格納される(ステップS959)。
また、CPU28は、メモリカード35内に自動表示ファイルを作成するときに[TASK]セクション内に圧縮を行った画像圧縮コードと音声圧縮コードを書き込む(ステップS960)。この圧縮コードは、あらかじめデジタルカメラまたは、デジタルビデオカメラ34とテレビ受信機1との間であらかじめ決められているものである。
テレビ受信機1は、メモリカード35の自動表示ファイル内にある圧縮コードを検出した場合は認識した圧縮のデコードを行う。また、CPU28が、表示デバイスに格納されていた画像・音声圧縮指定のエンコードを用意できない場合は、グラフィックコントローラ26に対し、"指定した表示デバイスで表示できる撮影はできません"等のメッセージデータを送る(ステップS962)。グラフィックコントローラ26は、表示デバイス27にそのデータを表示させ、再度表示デバイスをユーザに指定させる。
ここで、デジタルカメラや、デジタルビデオカメラで用いられる画像・音声の圧縮方式と、テレビ受信機がデジタル放送を受信するために用いる圧縮方式が必ずしも一致していないため、デジタルカメラやデジタルビデオカメラで撮影したデジタルデータをそのままテレビで表示させることができないケースが多々ある。これに対し、本実施形態では、テレビ受信機に対応した圧縮方式でデータ圧縮処理を行っているため、テレビ受信機とデジタルカメラとの間で圧縮方式が一致しないことを原因に、テレビ受信機でデータ表示が行えなくなることを回避することが可能となる。
[無線を用いた表示デバイスデータ転送実施形態]
図21にメモリカード35に無線の送受信モジュール39を接続した場合のブロック図を示す。テレビ受信機1には、無線の送受信を行う無線インタフェース40が搭載される。この無線モジュールは、モジュール39のディスカバリ処理、転送先、受けのアドレス設定によるコネクション、データ転送を確認して転送する転送プロトコルを具備している。転送されたデータは、CPU28とCPU10との間でそれぞれの無線モジュール、インタフェースを介して転送される。
この実施形態では、表示デバイスの登録は、メモリカード35をテレビ受信機1に挿入するのではなく、メモリカード35と無線モジュール39が無線インタフェース40に近づき、ディスカバリ処理によりお互いの識別がなされたときに開始される。
無線インタフェース40と無線モジュール39は、次にコネクション処理を行い、それぞれのバッファ領域のアドレスを指定しあう。そして、そのアドレスに転送データを付加して送受信を行う。
CPU10は、ディスカバリ処理が確認されると、グラフィック処理部7に既に「表示デバイス情報の登録方法」で説明した方法と同様に登録画面を送り表示する。そしてユーザのリモコン15による制御で表示デバイス情報が、無線インタフェース40、無線モジュール39を介してメモリカード35に書き込まれる。また、メモリカード35が、デジタルカメラ34に挿入されている場合は、表示デバイス情報は、メモリカード35ではなく、直接フラッシュROM29に書き込んでも良い。また、デジタルカメラ34で撮影した画像・音声ファイル、自動表示ファイルのテレビ受信機1への転送も上記説明と同様に行う。無線の方式は、Bluetoothでも、IEEE802.11でIEEE1394無線でも良い。
上記実施形態によれば、デジタル放送を受信できる高機能なテレビを用いてデジタルカメラ等のデジタル画像データ表示させるシステムにおいて、テレビに使用する表示デバイスの解像度特性や、階調ビット数、映像サンプリング条件に応じて、撮影条件変更して撮影できるデジタルカメラやデジタルビデオカメラを実現することができる。
また、それら撮影機器で撮影した画像データを表示デバイスの性能を十分に活かせる表示が可能となる。また、デジタルカメラや、デジタルビデオカメラで用いられる画像・音声の圧縮方式と、テレビ受信機がデジタル放送を受信するために用いる圧縮方式が一致していない場合でも事前に撮影時に対応が可能となり、後で表示フォーマット変更等の手間が要らなくなる。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(基本システム或いはオペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。