映像情報装置及びモジュールユニット 技術分野
[0001] 本発明は、映像情報装置に関するものであり、特に、ュビキタス映像モジュール、あ るいはそれを含んで構成されるュビキタス映像モジュールユニットを備えることでネッ トワーク環境にュビキタスに接続可能な映像情報装置、および当該装置に用いられ るモジュールユニットに関するものである。
背景技術
[0002] 従来の AV(Audio Visual)デジタルネットワーク機器は、ひとつの機器内にネットヮー ク接続のためのインタフェースとネットワークへ接続するための機能を構成して 、る ( 例えば、特許文献 1参照。)。
[0003] 又、システム LSIにてネットワークに関する機能を実現しているものもある(例えば、 特許文献 2参照)。
[0004] 特許文献 1 :特開 2002— 16619号公報 (第 5— 6頁、第 1図)
特許文献 2:特開 2002— 230429号公報 (第 10— 13頁、第 2図)
[0005] パーソナルコンピュータの低価格化 '高機能ィ匕、インターネットコンテンツの増加、 携帯電話 ' PDA Personal Digital Assistant)等のネットワーク接続機器の多様ィ匕等に より、一般家庭においてもローカル LAN(Local Area Network)やインターネットを利 用する機会が増大している。
[0006] 又、 HAVi(Home Audio/Video interoperability), ECHONET(Energy
Conservation and Home-care NETwork)等の規格面でも家電機器をネットワークに接 続するための整備が進められている。
[0007] 特開 2002— 16619 (上記特許文献 1)記載のデジタルネットワーク機器としてのテ レビ、 VTR等の映像情報装置は、一般的に当該装置専用のシステム LSIを開発して いる。このようなシステム LSIは、基本的に、システム制御を行う CPU部および映像信 号処理を行う VSP部 (Video Signal Processor)からなる論理部(Logic部)と、 ROM (Read Only Memory)および RAM(Random Access Memory)等のメモリ部とで構成さ
れている。
[0008] なお、論理部は、使用する映像情報装置の仕様に基づ!ヽて必要な機能を備えるよ う設計されている。また、システム LSIの前段、後段にはそれぞれシステム LSIにおけ る信号処理の前処理、後処理を担う前段、後段各処理部が設けられる。そして、後段 処理部に接続され、映像情報装置と外部装置とのインターフェースを担うビデオイン ターフェース力 映像情報装置における映像出力がなされる。
[0009] また、特開 2002-230429 (上記特許文献 2)記載のネットワーク接続の半導体料 金収集装置では、機器内にネットワーク機器制御部をもつことにより、ネットワーク接 続が可能な構成を実現して 、る。
発明の開示
発明が解決しょうとする課題
[0010] 上記に示した従来装置では、この装置に対する機能の拡張や仕様の変更を行う場 合、システム LSIに更に付カ卩的機能を追加するために、このシステム LSI全体を新規 に設計、開発することが求められる。従って、このシステム LSIに搭載するソフトウェア を全体として変更 ·改訂せねばならず、開発費や開発期間が増大するという問題点 かあつた。
[0011] 又、既に機能が陳腐化したシステム LSIを搭載した装置については、システム LSI そのものを改定、更新せねば新たな機能を実現することができな 、と 、つた問題点も めつに。
[0012] また、システム LSIは、搭載される装置の機種毎に専用機能が異なって ヽることが 多ぐそのような専用機能を実現するためには、その装置に専用のシステム LSIを開 発する必要があり、コスト削減が困難であるという問題点もある。
[0013] また、システム LSIを変更する度に製品仕様が変わるため、そのたびごとに信頼性 検証、 EMI検証を新規に行う必要があり、検証時間並びに検証費用が増大するとい う問題点があった。
[0014] この発明は、上述のような課題を解消するためになされたもので、装置の仕様変更 や、装置を構成するシステム LSIの仕様変更があつたとしても、システム LSI全体の 変更、改訂を伴わずに装置を構成できると共に、開発費用の削減や開発期間の短
縮ィ匕が図れる装置を得ることを目的とする。
課題を解決するための手段
[0015] 本発明に係る映像情報装置は、第 1の中央処理装置を備えると共に、該第 1の中 央処理装置を制御する第 2の中央処理装置を有するモジュールユニットを接続する 接続インターフェースを備える映像情報装置本体を有する映像情報装置であって、 前記第 1の中央処理装置および前記第 2の中央処理装置は、 V、ずれも複数の制御 階層を有し、前記モジュールユニットの有する第 2の中央処理装置は、前記第 1の中 央処理装置および前記第 2の中央処理装置の各制御階層間で当該制御階層に対 応する制御情報を送信して前記映像情報装置本体を制御するように構成したことを 特徴とする。
[0016] また、本発明に係るモジュールユニットは、複数の制御階層を有する第 1の中央処 理装置と接続インターフェースとを備える映像情報装置本体の前記接続インターフエ ースに接続される接続部と、前記第 1の中央処理装置の制御階層と対応する制御階 層を有すると共に、当該制御階層から前記第 1の中央処理装置の制御階層を制御 する制御情報を、前記接続部を介して送信して前記第 1の中央処理装置を制御する 第 2の中央処理装置とを備え、前記第 1の中央処理装置を制御することにより映像情 報を含む処理情報を前記映像情報装置本体力 出力させることを特徴とする。 発明の効果
[0017] この発明は、以上説明したように構成されているので、装置の仕様変更や、装置を 構成するシステム LSIの仕様変更があつたとしても、システム LSI全体の変更、改訂 を伴わずに装置を構成できると共に、開発費用の削減や開発期間の短縮ィ匕を図るこ とができる効果を奏する。
図面の簡単な説明
[0018] [図 1]実施の形態 1における映像情報装置を含むネットワーク系統図である。
[図 2]実施の形態 1におけるュビキタス映像モジュールの概略構成図である。
[図 3]実施の形態 1におけるュビキタス映像モジュールにおける機能ブロックを示す 模式図である。
[図 4]実施の形態 1における映像情報装置にュビキタス映像モジュールを接続するた
めのトポロジの一例(バス型)を示す説明図である。
圆 5]実施の形態 1における映像情報装置にュビキタス映像モジュールを接続するた めのトポロジの一例 (スター型)を示す説明図である。
圆 6]実施の形態 1における外部装置が映像情報装置に接続されている場合のプロ ック構成図である。
圆 7]実施の形態 1における外部装置を映像情報装置力 取り外し、ュビキタス映像 モジュールを接続した場合のブロック構成図である。
[図 8]実施の形態 1におけるコミュニケーションエンジンの構成例を示す説明図である
[図 9]実施の形態 1におけるインターネット通信プロトコルに従うミドルウェアのソフトゥ エアブロック構成例を示す説明図である。
[図 10]実施の形態 1における他の通信用インターフェースをインターネット通信プロト コルに従うミドルウェアに追カロした場合のソフトウェアブロック構成例を示す説明図で ある。
[図 11]実施の形態 1におけるュビキタス映像モジュールのソフトウェアブロック構成図 である。
[図 12]実施の形態 1における機種毎にュビキタス映像モジュールを適用する場合の ソフトウェアブロック図である。
[図 13]実施の形態 1における映像情報装置のソフトウェアとュビキタス映像モジユー ルのソフトウェアの関係を示した構成図である。
[図 14]実施の形態 1における映像情報装置のソフトウェアとュビキタス映像モジユー ルのソフトウェアの関係を示した構成図である。
[図 15]実施の形態 1における映像情報装置のソフトウェアとュビキタス映像モジユー ルのソフトウェアの関係を示した構成図である。
[図 16]実施の形態 1におけるュビキタス映像モジュールを映像情報装置のストレージ IZFに接続して場合のシステム構成例を示す説明図である。
[図 17]実施の形態 1におけるュビキタス映像モジュールを ATA^トレージ IZFに接 続した場合のソフトウェアブロック構成図である。
[図 18]実施の形態 1におけるュビキタス映像モジュールを ATAストレージ IZFに接 続した場合のシステム構成例を示す説明図である。
圆 19]実施の形態 1におけるュビキタス映像モジュールを映像情報装置に接続した 場合のソフトウェアブロック構成図である。
[図 20] ATAのインターフェースを用いた一般的なハードディスクのハードウェア構成 図である。
[図 21] ATAホストからハードディスクにデータを書き込む場合のシーケンスを示す説 明図である。
[図 22]ATAホストがハードディスクカゝらデータを読み出す場合のシーケンスを示す説 明図である。
[図 23]実施の形態 1におけるュビキタス映像モジュールのソフトウェアブロック構成図 である。
[図 24]実施の形態 1におけるュビキタス映像モジュールのハードウェアブロック構成 図である。
圆 25]実施の形態 1における映像情報装置力も NASにデータを書き込む場合のシ 一ケンスを示す説明図である。
[図 26]実施の形態 1におけるュビキタス映像モジュールが新規に作成するファイル名 を示す説明図である。
圆 27]実施の形態 1における映像情報装置が NASからデータを読み出す場合のシ 一ケンスを示す説明図である。
[図 28]実施の形態 2におけるュビキタス映像モジュールをイーサネットインターフエ一 スに接続した場合のシステム構成例を示す説明図である。
[図 29]実施の形態 2におけるュビキタス映像モジュールを映像情報装置に接続した 場合のソフトウェアブロック構成図である。
[図 30]—般的な NASのソフトウェアブロック構成図である。
[図 31]実施の形態 2におけるュビキタス映像モジュールのソフトウェアブロック構成図 である。
圆 32]実施の形態 2における仮想ファイルシステムのディレクトリ構成図である。
圆 33]実施の形態 2における映像情報装置とカメラとを関連付ける場合のシーケンス を示す説明図である。
圆 34]映像情報装置力 Sカメラの画像データを取得する場合のシーケンスを示す説明 図である。
圆 35]実施の形態 2における仮想ファイルシステムのディレクトリ構成図である。 圆 36]実施の形態 2における仮想ファイルシステムのディレクトリ構成図である。 圆 37]実施の形態 2における仮想ファイルシステムのディレクトリ構成図である。
[図 38]実施の形態 3におけるュビキタス映像モジュールをイーサネットインターフエ一 スに接続した場合のシステム構成例を示す説明図である。
[図 39]実施の形態 3におけるュビキタス映像モジュールユニットに表示ユニットへ映 像を表示する機能を持たせた場合の構成例を示す説明図である。
圆 40]—般的な映像情報装置のハードウ ア構成図である。
[図 41]実施の形態 4におけるュビキタス映像モジュールのハードウェア構成図である
[図 42]実施の形態 4におけるュビキタス映像モジュールのソフトウェア構成図である。
[図 43]実施の形態 4における Webブラウザから映像情報装置に表示されている画像 データを取得する場合のシーケンスを示す説明図である。
[図 44]実施の形態 4におけるュビキタス映像モジュールのハードウェア構成図である
[図 45]実施の形態 4における Webブラウザから映像情報装置に表示されている画像 データを取得する場合のシーケンスを示す説明図である。
[図 46]実施の形態 5におけるュビキタス映像モジュールを適用した映像情報装置の システム構成の一例を模式的に表わした説明図である。
[図 47]実施の形態 5におけるュビキタス映像モジュールを適用した映像情報装置の システム構成の他の例を模式的に表わした説明図である。
圆 48]実施の形態 5における設定メモリに格納される設定情報の一例を示す模式図 である。
圆 49]実施の形態 5における映像情報装置が保有する連携設定の設定内容の一例
を示す説明図である。
圆 50]実施の形態 5におけるュビキタス映像モジュールが保有する連携設定の設定 内容の一例を示す説明図である。
[図 51]実施の形態 5におけるュビキタス映像モジュールが制御可能なハードウェアェ ンジンの一覧データの一例を示す説明図である。
[図 52]実施の形態 5におけるュビキタス映像モジュールが実質的に制御できるハード ウェアエンジンを示す説明図である。
[図 53]実施の形態 6におけるュビキタス映像モジュールをバスラインを介して映像情 報装置に接続した場合のシステム構成例を示す説明図である。
[図 54]実施の形態 6における映像情報装置、ュビキタス映像モジュールが保有する 各々のハードウェアエンジンの連携設定を模式的に示す説明図である。
圆 55]実施の形態 6における映像情報装置、ュビキタス映像モジュールが保有する 各々のハードウェアエンジンの連携設定を模式的に示す説明図である。
[図 56]実施の形態 6実施の形態 6におけるュビキタス映像モジュールをバスラインを 介して映像情報装置に接続した場合のシステム構成例を示す説明図である。
[図 57]実施の形態 6におけるュビキタス映像モジュールが制御可能なハードウェアェ ンジンの一覧データの一例を示す説明図である。
[図 58]実施の形態 6におけるュビキタス映像モジュールが実質的に制御できるハード ウェアエンジンを示す説明図である。
符号の説明
1 ネットワーク、 2 パーソナルコンピュータ、 3 データベース、 4 ュビキタス映像 モジュールユニット (UMU)、 5 デジタルテレビ、 6 デジタルテレビ本体、 7 DVD/ HDDレコーダ、 8 監視レコーダ、 9 FA機器、 10 携帯電話、 11 PDA、 12 ュビ キタス映像モジュール (UM)、 13 ュビキタス映像モジュール用 CPU、 21 グラフイツ クエンジン、 22 カメラエンジン、 23 MPEG4エンジン、 24 コミュニケーションェン ジン、 25 ミドノレウェア、 26 仮想マシン、 27 組み込み Linux、 31 システム側イン タフエース、 32 ュビキタス映像モジュール側インタフェース、 40 映像情報装置、 4 1 システム CPU。
発明を実施するための最良の形態
[0020] 以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
実施の形態 1.
<ネットワーク >
図 1は本発明の実施の形態 1における映像情報装置を含むネットワーク系統図であ る。なお、図 1に例示した、デジタルテレビ (デジタル TV)、 DVDZHDDレコーダ、監 視レコーダ、工場内の FA(Factory Automation)機器、携帯電話、 PDA(Personal
Digital Assistant)等の各種映像情報装置はそれぞれモジュールユニットを介してネッ トワークへの接続がなされる。
[0021] ネットワーク 1は、小規模の LAN、大規模のインターネット等に代表されるネットヮー クである。一般的に、これらネットワークには、図示しないクライアントコンピュータ (client computer)が接続され、各クライアントコンピュータへのサービスの提供ゃデー タの授受を行うサーバ (server)が接続されて 、る。
[0022] また、コンピュータ (ここでは、 Personal Computerを例に PCと表現している) PC2は、 ネットワーク 1に接続されたパーソナルコンピュータであり、メールの送受信やホーム ページの開発'閲覧等の、様々なサービスや用途に用いられている。
[0023] データベース (Data Base)3は、映像配信のストリーミングデータ、映像'音楽データ の保管、 FA(Factory Automation)の管理データ、監視カメラの監視映像等の各種映 像データを保管している。
[0024] デジタルテレビ 6は、入力されたデジタル信号に対応する映像コンテンツ(映像内 容)を表示するための表示装置である。 DVDZHDDレコーダ 7は、 DVD(Digital Versatile Disk)や HDD(Hard Disk Drive)等の記録媒体に映像データや音声データ 等のデータを記録するための映像情報装置の一つとしてのレコーダ (記録装置)であ る。
[0025] 監視レコーダ 8は、エレベータや店内等の状況を監視カメラで撮影した映像を監視 映像データとして記録するための映像情報装置の一つとしてのレコーダである。
[0026] FA9は、映像情報装置の一つとしての工場内の FA(Factory Automation)機器であ る。この FA9からは例えば、生産ラインの状態を撮像した映像情報が出力される。
[0027] 携帯電話 (Mobile Phone)10は、映像情報装置の一つとしての、例えば単独でネット ワーク接続ができな 1/、携帯電話である。
[0028] PDA(Personal Digital Assistant) 11は、映像情報装置の一つとしての個人情報等 を管理するための個人用情報端末である。
[0029] このように、ネットワーク 1へ接続することの可能な機器は、多種多様の形態を採り 得る。以下に具体的に説明する本発明の実施の形態では、これら機器間にあるハー ドウエア、ソフトウェア等の違いを、機器とネットワーク 1との間に、モジュールユニット の一例としてのュビキタスモジュールユニット 4を介在させることによって吸収し、それ ら映像情報装置とュビキタスモジュールユニット 4とを接続することによって新たに映 像情報装置を構成する詳細について説明する。
[0030] このように、映像情報装置とュビキタスモジュールユニット 4とを接続することによつ て新たに映像情報装置を構成することで、本実施の形態に述べる装置は、装置の仕 様変更があつたとしても、システム LSI全体の変更、改訂を伴わずに装置を構成でき ると共に、開発費用の削減や開発期間の短縮ィ匕が図れる装置を得ることができる。
[0031] くュビキタスモジュール (ubiquitous module)とハードウェアエンジン >
近年におけるコンピュータ技術は目覚しい進歩を遂げ、今や、個々の生活や社会 において、それらコンピュータを組み込んだ製品やシステムを抜きに我々の生活を語 ることができないくらいになってきている。その中で、最近になって脚光を浴びている の力 LANやインターネット等に代表されるネットワークとコンピュータが組み込まれ た製品やシステムとを結合し、それらコンピュータ同士が自立的な相互間通信を行い 連携して処理を行う、ュビキタス (ubiquitous)と!、う概念である。
[0032] このュビキタスの概念を背景として、実際的に具現ィ匕する一つの形態力 ュビキタ スモジュール (ubiquitous module。 UMと略記する場合もある)や、その集合体であるュ ビキタスモジュールユニット (ubiquitous module unit。 UMUと略記する場合もある)とい われるものである(なお、それらを総称してュビキタスモジュールユニットと称する)。
[0033] 図 2は、ュビキタスモジュールユニット 4の主たる構成 (コア)となるュビキタスモジユー ル (図中 UMと略記)の概略構成を示した図である。(以下では、一例として、映像に関 わるュビキタスモジュール、ュビキタス映像モジュールユニットにつ 、て説明を行うた
め、それぞれ、ュビキタス映像モジュール、ュビキタス映像モジュールユニットと称す る。)
ュビキタス映像モジュール 12は、ュビキタス映像モジュール 12のハードウェアェン ジン 17を制御するための UM—CPU13、 UM— CPU13と各ハードウェアエンジンと を接続するためのローカルノ ス 14、外部の映像情報装置とュビキタス映像モジユー ル 12とを接続するための汎用バス UM—BUS16、汎用バス UM— BUS 16とロー力 ルバス 14とを接続するバスブリッジ 15、各種のネットワークの映像信号処理において 必要な機能をノヽードウエアでの実現を図ったハードウェアエンジン 17によって構成さ れる。
[0034] ここでハードウェアエンジン 17には、例えばネットワーク 1に接続するための有線 L AN、無線 LAN、シリアルバス (Serial BUS)接続等のためのバスライン 18等を設ける ことが可能である。
[0035] 各ハードウェアエンジン 17は、ュビキタス映像モジュールユニット 4を装着すること によって、映像情報装置には本来存在しない機能を追加'補充するためのエンジン である。
[0036] このエンジンは、例えば図 3に示すように、ネットワーク 1に接続するための有線 LA N、無線 LAN、シリアルバス通信等の、ュビキタス映像モジュール 12とそのネットヮ ーク 1との間の通信機能を担うためのコミュニケーションエンジン 24がある。
[0037] また、描画性能を向上するためのグラフィックエンジン 21、動画や静止画等の撮像 信号の処理を行うカメラエンジン 22、 MPEG4(Moving Picture Experts Group 4)によ る動画圧縮のための MPEG4エンジン 23(図中 MPEG4エンジンと表記)等のエンジン もある。
[0038] なお、ここに挙げて 、るエンジンの例は一例に過ぎず、それ以外にも映像情報装置 に必要な機能を実現することのできるエンジンを備えることで補充することが可能であ る。
[0039] ュビキタス映像モジュール 12は、予めュビキタス映像モジュール 12に組み込まれ る組み込み OS27、この組み込み OS27上で動作しアプリケーションソフトに対して組 み込み OS27よりも高度で具体的な機能を提供するミドルウェア 25、仮想マシン (図
中 VMと表記) 26、組み込み OS27上で動作するアプリケーションソフト (図示せず)等 を含んでおり、ュビキタス映像モジュール 12単体で、例えばネットワークに接続する 機能等の付加された映像情報装置の機能を仮想的に実現できる。
[0040] 図 4および図 5は、例えば映像情報装置にュビキタス映像モジュール 12を接続する ためのトポロジ (Topology。ネットワークの接続形態)を示して 、る。
[0041] SYS—CPU41と UM— CPU13との接続形態は、バスと呼ばれる 1本のケーブルに 端末を接続するバス形式 (bus形式)の接続や、 HUB35を介して、中心となる通信機 器を介して端末を相互に接続するスター形式 (star形式)の接続、環状の 1本のケープ ルに端末を接続するリング形式 (ring形式)の接続のいずれによっても達成できる。
[0042] 以下にそれぞれのトポロジについて説明する。
<バス形式 (バス型)の接続トポロジ >
図 4は、バス形式の接続トポロジの一例を示す図であり、 SYS— CPU41と UM— CP U13は、 UM— BUS 14にバス型に接続されている。また、 SYS— CPU41は、例えば 映像情報装置のシステム制御を司るホストサーバの機能を、 UM— CPU13はネットヮ ークサーバの機能を実現する。
なお、ここに例示した映像情報装置は SYS— CPU41のみで問題なく製品仕様を 満足する動作をする。
[0043] バス型の接続トポロジにおいては、図 4に示すようにシステム側のインタフェース S— I/F31とュビキタス映像モジュール 12側のインタフェース U— IZF32とを電気的に 接続することにより構成される。
[0044] この接続により、 SYS—CPU41と UM— CPU13とが接続され、両 CPU間における 情報の授受が可能となる。
従って、例えば映像情報装置に当該装置にはな力つた、より高性能 ·高付加価値 のネットワーク機能を付カ卩した 、場合は、 S-I/F31並びに U-I/F32を介してュビ キタス映像モジュールユニット 4を接続することにより、例えば LAN33上のネットヮー ク端末 34にアクセスする等のネットワーク機能が実現できる。
[0045] <スター型の接続トポロジ>
図 5はスター形式の接続トポロジの一例を示す図であり、 SYS— CPU41と UM— CP
U13は、ハブ (図中 HUBと表記) 35を介してスター型に接続されている点が異なるだ けであり、図 5に示すようにシステム側のインタフェース S— IZF31とュビキタス映像モ ジュール 12側のインタフェース U— IZF32とを HUB35を介して電気的に接続するこ とにより構成される。
[0046] この接続により、 SYS—CPU41と UM— CPU13とが HUB35を介して接続され、両 CPU間における情報の授受が可能となる。
従って、例えば映像情報装置に当該装置にはな力つた、より高性能 ·高付加価値 のネットワーク機能を付カ卩した 、場合は、 S-I/F31並びに U-I/F32を介してュビ キタス映像モジュールユニット 4を接続することにより、例えば LAN上のネットワーク 端末 34にアクセスする等のネットワーク機能が実現できる。
[0047] くリング型の接続トポロジ>
なお、ここでは図示して説明しないが、上述したバス型、スター型の接続形態と同 様にリング型についても同様の機能を問題なく実現することができる。
[0048] くインターフェース接続〉
なお、 S— IZF31と U— IZF32との接続形態は、 ATA(AT attachment), PCI (Peripheral Components Interconnect bus)、 Sし; (Small computer System Interface) 、汎用 BUS等の規格に従うパラレル転送や、 IEEE1394(Institute of Electrical and Electronic Engineers 1394)、 USB(Universal Serial Bus入 U ART(Univers al
Asynchronous Receiver Transmitter)等の規格に従うシリアル転送のいずれも可能で ある。
[0049] また、ここに例示している映像情報装置とュビキタス映像モジュールユニット 4との 接続方法は、 PCカード (PC Card)やカードバス (Card Bus)等の規格で用いられている コネクタ接続、 PCIバス接続等で使用されるカードエッジコネクタ接続、 FPCケープ ル、フラットケーブル、 IEEE1394用ケーブル等のケーブル接続等の方法を用いるこ とが可能である。
[0050] <映像信号処理に関わる説明 >
図 6は、他の外部装置 (例えば HDD、 NAS等)が映像情報装置 40に接続されて いる場合のブロック構成図である。 40は映像情報装置、 45はシステム LSIであり、シ
ステム制御を行う SYS— CPU(System CPU)部 41、映像信号処理を行う VSP(Video Signal Processing)部 42、 ROM43、 RAM44で構成されている。
[0051] 46はマルチプレクサ、 47はアナログ デジタル (A/D)変換手段、 48はスィッチャ 'バ ッファ、 49はデジタル アナログ (D/A)変換手段、 50はビデオインタフェース (Video Interface), 51は画像圧縮手段、 52は画像伸張手段、 53はカメラ、 54は表示ユニット である。
[0052] 映像情報装置 40は、 SYS— CPU部 41の指令に基づき、ホストインタフェース 56を 介して HDD、 NAS等の外部装置 58のデバイスコントローラ 57をドライバ 55が制御 することにより、外部装置 58の操作 '制御が可能になる。
[0053] 図示した例において、映像情報装置 40の外部に、複数のカメラ 53が接続されてい る。これらカメラ 53からの映像信号 (カメラ入力)は、マルチプレクサ 46に入力され、 映像情報装置 40に入力される映像信号を切り替えることができる。
[0054] マルチプレクサ 46で選択されたカメラ入力はアナログ デジタル変換手段 47でデ ジタル化される。このテジタル化されたデータは、スィッチャ 'バッファ 48を経由して画 像圧縮手段 51で圧縮され、 HDD等の外部記憶装置に格納される。
[0055] 通常の監視動作時、マルチプレクサ 46から出力されるカメラ入力は、スィッチャ 'バ ッファ 48により合成される。そして、この合成された画像データは、デジタル-アナ口 グ変換手段 49によりアナログ映像信号に変換され、ビデオインターフェース (V-I/F)5 0を介して外部モニタ 54に表示される。
[0056] また、再生動作時には、 HDD等の外部装置 58から読み出された画像データは、 画像伸張手段 52で伸張される。そして、この伸張された画像データと各カメラ入力と がスィッチ バッファ 48により合成される。この合成された画像データはデジタル アナログ変換手段 49によりアナログ映像信号に変換され、ビデオインターフェース (V- I/F)50を介して外部モニタ 54に表示される。
[0057] 図 7は、図 6に示した HDD、 NAS等の外部装置 58を映像情報装置 40から取り外 し、接続インタフェースであるホストインターフェース 56を介して、ュビキタス映像モジ ユールユニット 4を映像情報装置 40に接続した構成の一例である。
[0058] ュビキタス映像モジュールユニット 4は、 UM— CPU13からの指令に基づき、コミュ
二ケーシヨンエンジン 24を介してネットワーク 1 (例えば、インターネット)に接続した後 、当該ネットワーク 1に接続された他の映像情報装置力も映像 ·音声データを読み出 す。
[0059] 読み出された映像'音声データは、 MPEG4エンジン 23、グラフィックエンジン 21 等のハードウェアエンジンによってデコードおよびグラフィック処理され、ュビキタス映 像モジュールユニット 4から映像情報装置 40に利用可能なデータ形式で出力され、 映像情報装置 40に入力される。映像情報装置 40に入力されたデータは、ビデオイ ンターフェース (V-I/F)50において表示ユニット 54に表示可能な状態に信号処理さ れ、表示ユニット 54に表示される。
[0060] また、カメラ 53から入力された動画 '静止画ファイルは、ュビキタス映像モジュール ユニット 4のカメラエンジン 22により画素数変換、レート変換等の画像処理を施された 後、グラフィックエンジン 21によりグラフィック処理され、映像情報装置 40に利用可能 なデータ形式で出力される。また、映像情報装置 40に入力された画像データは、ビ デォインターフェース (V-I/F)50において表示ユニット 54に表示可能な状態に信号 処理され、表示ユニット 54上に表示される。
[0061] なお、以上の説明における各ハードウェアエンジンの処理は一例を示しているに過 ぎず、ハードウェアエンジンの種類や機能等は、適宜選択可能である。
[0062] 上述したものでは、映像情報装置 40に接続されたュビキタス映像モジュールュ-ッ ト 4によって、 UM— CPU 13の指令に基づ 、て読み出した画像データを表示するた めのシステム例について説明したが、同様に、音声処理用のュビキタスモジュールュ ニット 4を備える構成を用いることにより、音声入力の再生装置、テキスト入力の表示 · 配信装置、情報のストレージ入力におけるストレージ装置等、その他の機能にも適応 可能である。
[0063] また、例えば、映像信号処理および音声信号処理の 2つのュビキタス映像モジユー ルュニット 4、あるいはその他の複数のュビキタスモジュールユニット 4を備えるように 構成することも可能である。
[0064] <ネットワーク接続に関する説明 >
図 8は、図 7に示したュビキタス映像モジュールユニット 4において、インターネット
環境に接続するためのコミュニケーションエンジン 24の具体的な構成の一例である。
[0065] コミュニケーションエンジン 24は、例えば、有線 LAN、無線 LAN、シリアルバスの ハードウェアエンジン及び接続端子を有する。このように構成されたュビキタス映像 モジュールユニット 4は、有線 LAN、無線 LAN、 IEEE1394等のシリアルバス等を 経由してネットワーク接続が可能となる。ュビキタス映像モジュールは、これら全ての 接続形態に対応する端子を持つよう構成することも可能であるし、いずれか一つの接 続形態に対応する端子を持つように構成することもできる。これらの端子等は、ネット ワークや製品に応じて適宜選択すればょ ヽ。
[0066] 図 9は、図 8に示したコミュニケーションエンジン 24におけるインターネット通信プロ トコルに従うミドルウェアのソフトウェアブロック構成例を示したものである。
[0067] なお、図 9は、各ソフトウェアブロックの層の上下について示してあり、組込み Linux7 0が最下位層 (ノヽ一ドウエアに一番近い層)、アプリケーション 83が最上位層 (ノヽ一ドウ アから一番遠!、層)、およびその中間にある層の関係を概略的に示して!/、る。
[0068] 図 8に示した構成例と同様、例えば図 9に示した通信用インタフェースは、 10BAS E— T (伝送速度 10Mbpsの Ethernetの物理レイヤ。なお、 Ethernetsイーサネットは XEROX社の登録商標。)や 100BASE— TX (伝送速度 100Mbpsの Ethernetの物理レ ィャ)から成る有線 LAN、 IEEE802. llaZbZgから成る無線 LAN、 IEEE1394等 の高速シリアル通信用の 3種類のハードウェアおよびそれらのハードウェアの動作を 制御するデバイスドライバが用いられる。
[0069] そして、図 8に示すように、各ハードウェアを制御するデバイスドライバは、上記ハー ドウエアの各々対応してイーサネットドライバ 71、無線 LANドライバ 72、 IEEE 1394 ドライバ 73 (以下、 1394ドライバ 73と称す)である。
[0070] 図を参照すると分かるように、インターネットプロトコルの処理を行う IPプロトコルスタ ック 77は、イーサネットドライバ 71および無線 LANドライバ 72の上位層として配置さ れる。
[0071] この IPスタック 77は、現在主流の IPプロトコル (Internet Protocol version 4)を更に 発展させた次世代型インターネットプロトコルである IPv6(Internet Protocol version 6)に対応するための処理や、セキュリティのためのプロトコル IPsec(IP security)に対
応する処理を含む。
[0072] 1394ドライバ 73の上位には IEEE1394のトランザクション (transaction)処理を行う
1394トランザクションスタック 75が配置される。また、 1394トランザクション処理を無 線 LAN経由で実行できるよう、無線 LANドライバ 72と 1394トランザクションスタック 7
5との間に PAL(Protocol Adaptation Layer)74を配置する。
[0073] PAL74は 1394トランザクションと無線 LANの間のプロトコル変換を行う。 IPスタツ ク 77の上位にはトランスポート層として TCPZUDP(Transmission Control
Protocol/User Datagram Protocol)スタック 78が配置される。
[0074] TCP/UDPスタック 78の上位には、 HTTP(Hyper Text Transfer Protocol)のプロ トコル処理を行う HTTPスタック 79が配置される。
[0075] また、 HTTPスタック 79の上位には HTTPを用いて XML(eXtensible Markup
Language)をベースとして、他のコンピュータにあるデータやサービスを呼び出したり、 メッセージ通信を行う SOAP(Simple Object Access Protocol)のプロトコル処理を行う
SOAPZXMLスタック 80が配置される。
[0076] 組込み Linux(Embedded Linux)70より上位の層で、 HTTPスタック 79、 SOAP/X
MLスタック 80、 1394トランザクションスタック 75を含む層迄力 IPv6対応インターネ ット通信プロトコルに従うミドルウェア 87に含まれる。
[0077] これより上位の層として、 SOAPZXMLスタック 80及び HTTPスタック 79の上位に
、インターネット通信プロトコルをベースとするプラグアンドプレイ (Plug and Play)機能 を実現するプロトコルであるユニバーサルプラグアンドプレイ (Universal Plug and
Play)の処理を行う UPnPスタック 81が配置される。
[0078] また、 1394トランザクションスタック 75の上位には IEEE1394を用いたネットワーク のプラグアンドプレイ機能を実現する処理を行う AV系ミドルウェア 76が配置される。
[0079] UPnPスタック 81および AV系ミドルウェア 76の上位には、各ネットワークを相互接 続する統合ミドルウェア 82が配置される。 AV系ミドルウェア 76、 UPnPスタック 81、 統合ミドルウェア 82を含む層力 ユニバーサルプラグアンドプレイのミドルウェア 88に 含まれる。
[0080] 統合ミドルウェア 82より上位の層は、アプリケーション層 89となる。
また、さらに、 SOAPを用いたネットワーク上の他のコンピュータとの間でアプリケー シヨンの連携を行うために、 Webサーバプログラム 84、 Webサービスアプリケーション インタフェース 85、 Webサービスアプリケーション 86が統合ミドルウェア 82より上位の 層に階層的に配置される。
[0081] Webサービスアプリケーション 86は、 Webサービスアプリケーションインタフェース 8 5を通じて Webサーバの提供するサービス(他のコンピュータにあるデータやサービ スを呼び出したり、メッセージ通信を行う)を利用する。
[0082] また、上記 Webサーバの提供するサービスを利用しないアプリケーション 83は、統 合ミドルウェア 82を経由して通信を行う。例えば、このようなアプリケーション 83として は、 HTTPを用いたブラウザソフトウェアが挙げられる。
[0083] 図 10に示すように、その他の通信用インタフェース力 図 9に示した通信プロトコル ミドルウェアのソフトウェアブロックに追加されても良い。
[0084] 図 10に示す構成では、図 9に示したのと同様のイーサネットドライバ 90、無線 LAN ドライバ 91、 IEEE1394ドライバ 92によるネットワーク接続可能なソフトウェアブロック 構成 (それぞれのデバイスドライバ)に加え、携帯電話やコンシューマ製品に適する 無線伝送により相互のデータ交換を行う通信用インタフェースとしてのブルートゥース (Bluetooth)ドライバ 93、比較的弱 、電波により無線通信を行う特定小電力無線ドライ ノ 94、電灯線を用いた PLC(Power Line Communication)ドライバ 95のように白物家 電系ネットワークに接続するためのソフトウェアブロック(それぞれのデバイスドライノく) が追カ卩されている。
[0085] 図示するように、各ネットワークインタフェースを制御するデバイスドライバである、ブ ルートゥースドライバ 93、特定小電力ドライバ 94、 PLCドライバ 95は、ソフトウェアブ ロック構成における最下層に配置される。
[0086] これらデバイスドライバの上位に、 IPスタック 96、 TCPZUDPスタック 97、白物家 電系ネットワークミドルウェア (ECHONET)98が階層的に配置されている。
[0087] この場合、統合ミドルウェア 104を AV系ミドルウェア 100、 UPnPスタック 103およ び白物家電系ネットワークミドルウェア 98の上位に配置することで、図示したデバイス ドライバを介するネットワーク、すなわち、イーサネット、無線 LAN、 IEEE1394、ブル
一トゥース、特定小電力無線、 PLCの間において、それぞれ相互通信が可能となり、 それらネットワーク間におけるデータの授受ができる。
[0088] 図 11は、本実施の形態 1であるュビキタス映像モジュール 12のソフトウェアブロック の構成例である。
この例では、例えば CPUのようなハードウェア層 110の上位に、マイクロプロセッサ
、キャッシュ構成、 iZoバスの違い、割り込み処理方法等の違いによる機種依存性を 仮想化することにより、それらの違いを吸収するためハードウェアァダプテーシヨンソ フトウェア HAL(Hardware Adaptation Layer)l l lを配置する。
[0089] HAL111の上位には、マルチタスク用のオペレーティングシステムである組込み Li 籠 112を配置する。
組込み Linuxl l2は、 HAL111に含まれるソフトウェアを介して、各ハードゥエアデ バイスを制御することに加え、各ハードウェアデバイスに対応したアプリケーションの 実行環境を提供する。
[0090] また、糸且込み Linuxl 12上で動作するグラフィックシステムとして X— Windowl 13 (X- Windowsは、 X Consortium, Incの登録商標)が使用される。図 11に示した構成で は、以下に説明する、組込み Linuxl 12の上位層で動作する 4つのミドルウェアを配 置している。
[0091] 第 1のミドルウェアは、インターネットと接続するための通信処理を行うもので、先に 説明した IPv6プロトコルにも対応している IPv6対応インターネット通信プロトコルミド ルウェア 114である。
[0092] 第 2のミドルウェアは、機器をネットワークに接続する際に、その機器のネットワーク 接続を自動的に設定するユニバーサルプラグアンドプレイミドルウェア 115である。
[0093] このユニバーサルプラグアンドプレイミドルウェア 115は、 IPv6対応のインターネット 通信プロトコルミドルウェア 114に属するプロトコルを使用できるよう、階層的に IPv6 対応インターネット通信プロトコルミドルウェア 114の上位層に配置する。
[0094] 第 3のミドルウェアは、 MPEG2あるいは MPEG4に対応したエンコードおよび/ま たはデコード処理、 MPEG7に対応したメタデータ処理、 MPEG21に対応したコン テンッ管理処理の組み合わせによってマルチメディアデータの配信、蓄積等の処理
を行う MPEGx映像配信蓄積プロトコルミドルウェア 116である。
[0095] 第 4のミドルウェアは、カメラ 53の撮像制御、および 2次元および Zまたは 3次元の グラフィック処理を行う撮像表示ミドルウェア 117である。
[0096] これら 4つのミドルウェアの内、 Javaのアプリケーション実行環境である Java仮想マ シン (Java Virtual Machine0図中 VMと表記。なお、 Javaは Sun Microsystems, Inc.の 登録商標。)118力 ユニバーサルプラグアンドプレイミドルウェア 115と MPEGx映像 配信蓄積プロトコルミドルウェア 116の上位層に配置される。
[0097] さらに、 Java仮想マシン 118の上位層にユーザーインタフェースを含んだアプリケ ーシヨンの作成を容易にする UIアプリケーションフレームワーク (User Interface application framework) 119が配置される。なお、ここでは、 UIアプリケーションフレー ムワーク 119は、 Java仮想マシン VM118の上位層に配置され、 JAVA対応のフレー ムワークを用いている。
[0098] UIアプリケーションフレームワーク 119は、例え ¾Java仮想マシン 118上で動作す るクラスの集合等である。図に示すソフトウェアブロック構成の最上位層には、 UIアブ リケーシヨンフレームワーク 119や撮像表示ミドルウェア 117を用 、て、ュビキタス映 像モジュール 12を接続する映像情報装置 (機種)毎に必要な機能を実現する機種 別アプリケーション 120が配置される。
[0099] 図 12は、機種毎にュビキタス映像モジュール 12を接続する (適用する)場合のソフ トウエアブロック構成図である。この図 12に示す構成例は、図 11に示したソフトウェア ブロック構成に、更に、複数の異なる機種に対応するためのソフトウェアブロック構成 を備えたものである。
[0100] この図 12に示す構成例は、最上位のアプリケーション層(図中の例では、携帯 AP P (携帯端末用アプリケーション) 120a、カー携帯 APP (車両搭載型携帯端末用アプリ ケーシヨン) 120b、カーナビ APP (車両搭載型ナビゲーシヨン用アプリケーション) 120 c、 AV家電 APP (オーディオビジュアル家電用アプリケーション) 120d、監視 APP (監 視装置用アプリケーション)) 120eを機種ごとに有している。
なお、これらを総称して APP120a— 120eと称する。
[0101] また、図に例示する、携帯モパイル、カーモパイル、宅内据え置き機器、監視装置
の各ハードウェア層の上位層に、各ハードウェア間による違いを吸収する HAL (ハー ドウエア'ァダプテーシヨン'レイヤ (HAL: Hardware Adaptation Layer)) 11 la— 1 l ie を配置する。
[0102] 図中の例では、携帯 HAL (携帯端末用 HAL)l l la、カー携帯 HAL (車両搭載型 携帯端末用 HAL)11 lb、カーナビ HAL (車両搭載型ナビゲーシヨン用 HAL)11 lc、 AV家電 HAL (オーディオビジュアル家電用 HAL) 11 ld、監視 HAL (監視装置用 H AL)) 11 leを接続する機種に対応して設ける。
なお、これらを総称して HAL111a— 1 l ieと称する。
[0103] これら HALl l la— l l leは、それぞれの機種ごとに独特な制御を行う部分と、これ ら HAL11 la— 11 leの上位層にある組込み Linuxl 12とのインターフェース部分と より構成されるソフトウェアである。
[0104] また、 APP120a— 120eは、これら APP120a— 120eの下位層にある撮像表示ミ ドルウェア 117、 MPEGx映像配信蓄積プロトコルミドルウェア 116、ユニバーサルプ ラグアンドプレイミドルウェア 115から出力される各ミドルウェアにおける処理出力を供 給され、各 APP 120a— 120eにおいて各機種対応の処理がなされる。
[0105] なお、 APP120a— 120eは、 Java仮想マシン 118および UIアプリケーションフレー ムワーク 119を保有し、各 APP120a— 120e間のデータのやり取りを行うことが可能 なように構成されている。
[0106] 更に、ソフトウェアブロックにおけるその他の層(レイヤ)は、共用するように構成する 。このように構成することにより、各 APP120a— 120eにおいて、各機種特有の処理 が行えると共に、異なる機種に対応する機能を最小規模の構成で実現することがで きる。
[0107] 図 13から図 15は、映像情報装置 40のソフトウェアブロックとュビキタス映像モジュ ール 12のソフトウェアブロックとの相互関係を示した説明図である。
[0108] <システムコールレベルでの透過的アクセスにつ 、て >
図 13は、映像情報装置 40とュビキタス映像モジュール 12のソフトウェア構成がォ ペレ一ティングシステムの階層迄一致している場合を示したものである。すなわち、図 13に示すュビキタス映像モジュール 12のソフトウエアブロック構成では、図 12を参照
して説明したソフトウェアブロック構成と大きな意味で同様のものである。
[0109] すなわち、 HAL111はハードウェア 110とオペレーティングシステムとしての組込み Linuxl 12との間に配置される力 HAL111はハードウェア 110と組込み Linuxl 12 とのインターフェースの役割を果たしていることになるので、当該 HAL111は大きな 意味で、ハードウェア 110か組込み Linuxl 12の!、ずれかの一部として捉えることが できる。
[0110] また、ミドルウェア 121、 Java仮想マシン 118および UIアプリケーションフレームヮー ク 119は、それぞれ^ &込み Linuxl l2とアプリケーション 120との間に配置されるが、 これらミドルウェア 121、 Java仮想マシン 118および UIアプリケーションフレームヮー ク 119は、組込み Linuxl 12とアプリケーション 120とのインターフェースの役割を果 たしていることになるので、これらミドルウェア 121、 Java仮想マシン 118および UIァ プリケーシヨンフレームワーク 119は大きな意味で、アプリケーション 120力糸且込み Li nuxl 12のいずれかの一部として捉えることができる。
[0111] この場合、映像情報装置 40のソフトウェアブロックの構成を、ュビキタス映像モジュ ール 12のソフトウェアブロックの構成と同様の階層構造とする。
[0112] このように、ュビキタス映像モジュール 12と映像情報装置 40との間でソフトウェアブ ロックの階層構造を合わせることで、例えば、映像情報装置 40の組込み Linuxl 31 力 ュビキタス映像モジュール 12の組込み Linuxl 12を、システムコールレベル(ォ ペレーシヨンシステムにおけるカーネル部分におけるメモリ管理やタスク管理等の、当 該オペレーティングシステムの基本機能が提供する機能のうち、プロセスから呼び出 せる特定機能)で透過的にアクセスできるように構成可能となる。
[0113] これにより、映像情報装置 40の組込み Linuxl 31とュビキタス映像モジュール 12 の組込み Linuxl 12とは、論理的に(ノヽ一ドウエア的および Zまたはソフトウェア的に )結合できる(図 13)。
[0114] この結果、例えば、映像情報装置 40上のプログラムにおける open命令を用いて、 ュビキタス映像モジュール 12に接続されたノヽードゥエアデバイスを動作させる (ォー プン)することが可能となる。
[0115] < APIレベルでの透過的アクセスにつ!/、て >
図 14は、図 13に示したュビキタス映像モジュール 12における構成と同様に、 HAL 111をノヽードウエア 110とオペレーティングシステムとしての組込み Linuxl 12との間 に、ミドルウェア 121、 Java仮想マシン 118および UIアプリケーションフレームワーク 1 19は、それぞれ^ &込み Linuxl 12とアプリケーション 120との間に、それぞれ配置し たソフトウェアブロック構成を示す図である。
[0116] 図 14に示した構成と図 13に示した構成との違いは、映像情報装置 40が、組込み L inuxl31と プリゲーシヨン 137との間に、ミドレクェ 132を設けた点である。
[0117] このように構成すると、映像情報装置 40およびュビキタス映像モジュール 12の各ソ フトウェアブロックの構成力 各ミドルウェア 132、 122の階層迄一致することになる。
[0118] すなわち、映像情報装置 40のミドルウェア 132とュビキタス映像モジュール 12のミ ドノレウェア 122とは、ミドルウェア ·アプリケーションプログラムインターフェース (Middle ware API。 API: Application Program Interface)レベルで相互に透過的に構成される。
[0119] これにより、映像情報装置 40上のプログラム力 ミドルウェア APIを呼び出す (コー ルする)ことで、ュビキタス映像モジュール 12のミドルウェア 122を操作することが可能 となり、ュビキタス映像モジュール 12上のプログラムが映像情報装置 40のミドルゥェ ァ APIを呼び出す (コールする)ことで、映像情報装置 40のミドルウェア 132を操作す ることが可能となる。
[0120] <アプリケーション設計データレベルでの透過的アクセスについて >
図 15は、図 14に示したュビキタス映像モジュール 12における構成と同様に、 HAL 111をノヽードウエア 110とオペレーティングシステムとしての組込み Linuxl 12との間 に、ミドルウェア 121、 Java仮想マシン 118および UIアプリケーションフレームワーク 1 19は、それぞれ^ &込み Linuxl 12とアプリケーション 120との間に、それぞれ配置し たソフトウェアブロック構成を示す図である。
[0121] 図 15に示した構成と図 14に示した構成との違いは、映像情報装置 40が、組込み L inuxl 31とアプリケーション 135との間に上位層に向力つて、ミドノレウェア 132、 Java 仮想マシン 133および UIアプリケーションフレームワーク 134を設けた点である。
[0122] このように構成すると、映像情報装置 40およびュビキタス映像モジュール 12の各ソ フトウェアブロックの構成力 映像情報装置 40の Java仮想マシン 133および UIアプリ
ケーシヨンフレームワーク 134、並びにュビキタス映像モジュール 12の Java仮想マシ ン 118および UIアプリケーションフレームワーク 119の各ソフトウェアブロック構成上 で、その階層迄一致することになる。
[0123] すなわち、映像情報装置 40の Java仮想マシン 133および UIアプリケーションフレ ームワーク 134、並びにュビキタス映像モジュール 12の Java仮想マシン 118および UIアプリケーションフレームワーク 119の各 UIアプリケーションフレームワーク 134、 1 19の間は、映像情報装置 40およびュビキタス映像モジュール 12の各アプリケーショ ンを作成する際のアプリケーション設計データレベルで透過的に構成される。
[0124] これにより、映像情報装置 40およびュビキタス映像モジュール 12間のプラットフォ ームの違いに関わらず、各アプリケーションを作成することが可能となる。
[0125] く映像情報装置とュビキタス映像モジュールの各ソフトウェアブロック、ハードウェア エンジンの相互関係 >
図 16は、ュビキタス映像モジュール 12を HDD146と共通のストレージ I/Fにバス ラインを介して接続した場合のシステム構成例を示す図である。
[0126] 映像情報装置 40は、映像出力を持つ他の機器との映像信号の送受信を行うマル チプルビデオ入出力 (Multiple Video Input I Output) 144,例え〖 PEGZJPEG20 00等の圧縮ぉょび7または伸張を行¾?£0 】?£02000コーディック143、1100 146等のストレージ機器のインタフェースを制御するストレージホスト'インターフエ一 ス (Storage Host Interface。図中、ストレージホスト iZFと表記) 140、映像情報装置 4 0の制御を行うコアコントローラ (Core Controller)142、およびオペレーティングシステ ム (Operating System)として UM— CPU 13が用いて!/、る同じ組み込み OSである組込 み Linuxl41を備えて構成される。
[0127] 映像情報装置 40のマルチプルビデオ入出力 144から入力される、例えばネットヮ ーク上に接続されたカメラ等の映像データを HDD146に保存する場合、この映像デ ータを JPEGZJPEG2000コーディック 143により圧縮した後、コアコントローラ 142 がストレージホスト'インターフェース 140を介して HDD 146のストレージデバイスコン トローラ 145を制御し、 HDD146にこの圧縮された映像データを蓄積する。
[0128] 上述のものでは、映像情報装置 40が、映像データを装置外部の HDD146に蓄積
する例について説明した力 同様に、ストレージホスト'インターフェース 140を介して
、バスライン上に接続されたュビキタス映像モジュール 12のソフトウェアブロックある
Vヽは機能ブロックを制御する例について以下に述べる。
[0129] コアコントローラ 142は、ストレージホスト'インターフェース 140を介して、ノ スライン 上に接続されたュビキタス映像モジュール 12のストレージデバイスコントローラ 147を 制御することで、ュビキタス映像モジュール 12が有する各種エンジン (例えば、カメラ エンジン 22やグラフィックエンジン 21等)を使用する。
[0130] くプロセス間通信について >
図 17は、映像情報装置 40とュビキタス映像モジュール 12とを接続するインターフ エースとして ATA規格によるインターフェースを用いた場合のソフトウェアブロックの 構成を示す図である。
[0131] 図 17に示すソフトウェアブロックの構成と図 16に示した構成との差異は以下に述べ る通りである。
[0132] すなわち、映像情報装置 40については、組込み Linuxl31の下位層に、ハードウ エア 130に代えて、プロセス間通信コミュニケータ 152、 ATAドライバ 151および AT
Aホストインタフェース 150を設けた。
[0133] また、ュビキタス映像モジュール 12については、組込み Linuxl l2の下位層に、プ 口セス間通信コミュニケータ 155、 ATAエミュレータ 154および ATAデバイスコント口 ーラ 153を設けた。
[0134] 映像情報装置 40のプロセス間通信コミュニケータ 152およびュビキタス映像モジュ ール 12のプロセス間通信コミュニケータ 155は、プロセス間通信のインターフェースと して ATA規格によるコマンド(コマンドインタフェース)に変換するモジュールである。
[0135] 映像情報装置 40のプロセス間通信コミュニケータ 152は、この映像情報装置 40側 の ATAドライバ 151および ATAホストインタフェース 150を介して、ュビキタス映像モ ジュール 12の ATAデバイスコントローラ 153に ATAのコマンド(ATAコマンド)を送 信する。
[0136] ATAコマンドを受信したュビキタス映像モジュール 12側の ATAデバイスコントロー ラ 153は、 ATAエミュレータ 154を制御して ATAコマンドを解析し、プロセス間通信
コミュニケータ 155によりプロセス間通信のための制御データに変換する。
[0137] これにより、映像情報装置 40のプロセスとュビキタス映像モジュール 12のプロセス とは、それらプロセス間において通信可能となる。そして、映像情報装置 40は、 ATA 規格のインターフェース (ATAインタフェース)によって接続されたュビキタス映像モ ジュール 12の、例えば、アプリケーション 120を使用することができる。
[0138] く ATAインターフェースを備える場合のシステム構成について〉
図 18は、本実施の形態 1において、ュビキタス映像モジュールユニット 12を映像情 報装置 40の ATAインタフェースに接続した場合のシステム構成例を示す図である。
[0139] 図 19は、図 18に示したュビキタス映像モジュールユニット 4におけるソフトウェアブ ロックの構成を示す図である。
[0140] ュビキタス映像モジュールユニット 4は、 ATAインタフェース 32bを有しており、この ATAインタフェース 32bを映像情報装置 40の ATAインタフェース 31aに装着するこ とにより使用可能となる。
[0141] このュビキタス映像モジュールユニット 4の装着により、映像情報装置 40は、 LAN3 3上のデジタルビデオレコーダ等の映像情報装置 34a、 34b及びデータ蓄積装置と しての NAS(Network Attached Storage)34c等の他の機器をネットワークを介して通 信 ·制御することができる。
[0142] この場合、ュビキタス映像モジュール 12は、 ATAコマンドを受信して、イーサネット (Ethernet)上の機器と通信する機能が必要となる。
[0143] そこで、図 19に示すように、ュビキタス映像モジュール 12を含むュビキタス映像モ ジュールユニット 4は、 ATAコマンドの授受を行う ATAエミュレータ 154および ATA デバイスコントローラ 153、イーサネットとの接続における通信 ·制御を司るイーサネッ トドライバ 161およびイーサネットホスト IZF 160を有する。
[0144] 一方、映像情報装置 40の内部において、システム CPU(SYS-CPU)41と内蔵される HDD 146との間は、システム CPU(SYS- CPU)41の ATAインターフェース 31 cおよ び HDD146の ATAインターフェース 32dにより接続されている。
[0145] このように構成された映像情報装置 40とュビキタス映像モジュール 12とは ATAコ マンドの授受が相互に可能となり、ュビキタス映像モジュール 12は、映像情報装置 4
0におけるシステム CPU(SYS- CPU)41から ATAコマンドを受信する。
[0146] ATAデバイスコントローラ 153は、 ATAエミュレータ 154を制御して受信した ATA コマンドを解析する。
[0147] 解析されたコマンドは、プロトコルコンバータ (Protocol Converter)28によりイーサネ ット上で使用されるプロトコルに変換され、イーサネットドライバ 161、イーサネットホス トインタフェース 160を介して、 LAN33上の各機器との通信 ·制御を行う。
[0148] このような構成を採用することで、例えば、保存すべきデータ (コンテンツデータ)に 対して装置自身の内部 HDD146の空き容量が少ないと判断される場合、ュビキタス 映像モジュールユニット 12を装着した映像情報装置 40は、ュビキタス映像モジユー ルユニット 12が接続している LAN33上のデジタルビデオレコーダ等の映像情報装 置 34a、 34bの内部 HDDや NAS(Network Attached Storage)34c等の装置外部に ある蓄積装置に、映像データの全部、あるいは映像情報装置 40自身の保有する HD Dに保存できな力つた残りの映像データを記録することが可能となる。
[0149] ところで、図 20に、 ATAのインターフェースを用いた一般的なハードディスクのハ 一ドウエア構成を示す。なお、図 20に示すノヽードディスク 250は、例えば映像情報装 置 34aの内部ハードディスクや、 NAS34c内のハードディスク、図 16の HDD146等 であり、ハードディスク 250は ATAデバイスとなる。ハードディスクコントローラ 251は 、ハードディスク 250のデータ読み書きを制御する中心的存在であり、一時的に読み 書きするデータを格納しているバッファメモリ 252と接続される。また、 ATAのホスト 2 57とは IDE (Integrated Drive Electronics)コネクタ 253を通じて物理的に接続される 。さらに、ハードディスクコントローラ 251は、メディア 256にデータを書き込むヘッド 2 55と、データのエンコード Zデコード等の処理を行うためのリード Zライト回路 254を 経由して接続される。なお、実際のハードディスクドライブには、上記構成要素の他 に、メディア 256を回転させるためのスピンドルモータおよびそれを制御するスピンド ルドライノく、ヘッド 255を動作させるステッピングモータおよびそれを制御するステツ ビングモータドライバ等がある力 本図はデータフローに関する部分のみを示すため 、図示はしていない。
[0150] さらに、ハードディスクコントローラ 251は、 ATAデバイスコントローラを含み、 ATA
のホスト 257とハードディスクコントローラ 251との間におけるデータのやりとりは、全て ATAデバイスコントローラ内の ATAレジスタを通じて行う。データの読み書きにかか わる主な ATAレジスタは、 ATAのホスト 257から ATAデバイスであるハードディスク 250に指令を行うための Commandレジスタ、 ATAデバイスの状態を ATAのホスト 25 7に通知するための Statusレジスタ、 ATAのホスト 257から実際のデータを書き込ん だり、読み出したりするための Dataレジスタ、データを書き込むメディア 256上の物理 的なセクタを指定するための Head/Deviceレジスタ、 Cylinder Lowレジスタ、 Cylinder Highレジスタ、 Sector Numberレジスタ(以降、この 4つのレジスタをまとめて、「 Device/Headレジスタ等」と称す。)である。
図 21は、 WRITE SECTORコマンドを例に取り、 ATAホスト 257からハードディスク 2 50にデータを書き込む場合のシーケンスを示したものである。まず、八丁八ホスト257 は、データを書き込む対象のハードディスク 250を ATAデバイスとして選択した後、 ステップ S 1310にお!/、て Device/Headレジスタ等の ATAレジスタに対して、書き込み 先であるメディア 256の物理的なセクタを指定するための、ヘッド番号、シリンダ番号 、セクタ番号を設定する。次にステップ S1311において、 ATAホスト 257は、ハード ディスクコントローラ 251の ATAレジスタ内の Commandレジスタに、 WRITE SECTOR コマンドに該当するコマンドコード「30h」を書き込む。ハードディスクコントローラ 251 は、データ書き込みの準備中であることを示すために、 Statusレジスタの BSYビットに「 1」をセットした後、実際にデータ書き込みの準備を行う。準備が完了した後、ハード ディスクコントローラ 251は準備が完了したことを示すために、ステップ S 1312におい て Statusレジスタの DRQビットを「1」、 BSYビットを「0」に再設定する。 ATAホスト 257 はステップ S1313〖こおいて、この Statusレジスタの状態を見て、 ATAレジスタ内の Dataレジスタに 1セクタ分ずつのデータの連続書き込みを行う。なお、このデータ書き 込みが開始されると同時に、ハードディスクコントローラ 251は Dataレジスタへのデー タ書き込み中であることを示すために、ステップ S 1314にお!/、て Statusレジスタの DRQビットを「0」、 BSYビットを「1」に設定する。ここで Dataレジスタに書き込まれる 1セ クタ分のデータは、ハードディスクコントローラ 251によってバッファメモリ 252に対し 随時転送される。同時にハードディスクコントローラ 251は、ヘッド 255を制御しながら
、ステップ S1310において指定されたメディア 256上のセクタに対して、リードライト回 路 254を経由して、ノッファメモリ 252に格納されたデータの書き込み処理を随時行 う(ステップ S1315)。メディア 256へのデータの書き込みが全て完了したら、ハード ディスクコントローラ 251はメディア 256への書き込みが完了したことを示すために、ス テツプ S 1316において ATAの Statusレジスタの DRQビットおよび BSYビットを共に「0 」に設定する。この時点で、 1セクタ分のデータのハードディスク 250への書き込みが 完了する。
次に、 READ SECTORコマンドを例に取り、 ATAホスト 257カ ヽードディスク 250力 らデータを読み出す場合のシーケンスを図 22に示す。まず、 ATAホスト 257は、デ ータを読み出す対象のハードディスク 250を ATAデバイスとして選択した後、ステツ プ S 1300にお!/、て Device/Headレジスタ等の ATAレジスタに対して、読み出し先で あるメディア 256の物理的なセクタを指定するための、ヘッド番号、シリンダ番号、セク タ番号を設定する。次にステップ S1301において、 ATAホスト 257はハードディスク コントローラ 251の ATAレジスタ内の Commandレジスタに、 READ SECTORコマンド に該当するコマンドコード 20hを書き込む。ハードディスクコントローラ 251は、メディ ァ 256からデータ読み出し中であることを示すために、ステップ S1302において Statusレジスタの BSYビットに「1」をセットする。同時にハードディスクコントローラ 251 【ま、ステップ S1303にお!/ヽて、ヘッド 255を帘1』御しな力ら、ステップ S1300にお!/ヽて 指定されたメディア 256上のセクタから、リードライト回路 254を経由してデータを読 み出し、バッファメモリ 252に 1セクタ分のデータを転送する。バッファメモリ 252上へ のデータの格納が完了したら、ハードディスクコントローラ 251はバッファメモリ 252へ のデータの格納が完了したことを示すために、ステップ S 1304において、 ATAの Statusレジスタの DRQビットを「1」、 BSYビットを「0」に設定する。 ATAホスト 257はス テツプ S1305〖こおいて、この Statusレジスタの状態を見て、 ATAレジスタ内の Dataレ ジスタから 1セクタ分ずつのデータの連続読み出しを行う。 1セクタ分のデータの読み 出しが完了したら、ハードディスクコントローラ 251はステップ S1306において、 ATA レジスタ内の Statusレジスタの DRQビットおよび BSYビットを共に「0」に設定する。この 時点で、 1セクタ分のデータのハードディスク 250からの読み出しが完了する。以上が
、一般的なハードディスクへのデータの書き込み動作、データの読み出し動作である
[0153] 次に、映像情報装置 40から、 LAN上に接続されている NAS34cに映像データを 記録するためのュビキタス映像モジュールユニット 4について説明する。図 23は、ュ ビキタス映像モジュールユニット 12のソフトウェアの構成を示しており、各構成要素に つ!、て LANの OSI参照モデルに沿って説明する。ュビキタス映像モジュールュ-ッ ト 12と NAS 34cの間は、物理層およびデータリンク層としてのイーサネットで接続さ れている。ュビキタス映像モジュールユニット 12は、物理層およびデータリンク層より も上位の通信プロトコルであるネットワーク層に、インターネットプロトコルである IP35 0を実装している。なお、図示しないが、 NAS34cもネットワーク層として IPを実装し ている。さらに、ュビキタス映像モジュールユニット 12は、ネットワーク層よりも上位のト ランスポート層として TCP351、及び UDP352を実装しており、さらに、 LAN経由で 当該 LANに接続されて 、る機器とファイル共有するためのプロトコルとして、セッショ ン層以上に NFS (Network File System)クライアント IZF353を実装している。 NAS 34cとュビキタス映像モジュールユニット 12間のファイルデータの通信プロトコルは、 NFSを用いて行われる。プロトコルコンバータ 28は、映像情報装置 40から発行され た NFS形式のコマンドを ATA形式に変換する。 NFSクライアント I/F353は、 NAS 34cに搭載されている不図示の NFSサーバソフトウェアとの間で NFSプロトコルに従 つた通信を行うためのソフトウェアである。 NFSクライアント IZF353は、プロトコルコ ンバータ 28から要求された処理に対応した遠隔手続き呼び出しのためのメッセージ を UDP352経由で NAS34cに対して送受信する。この遠隔手続き呼び出しのため のプロトコルとして RPC (Remote Procedure Call)が用いられる。
[0154] 図 24は、ュビキタス映像モジュール 12のハードウェア構成を示したものである。図 に示すように、映像情報装置 40とュビキタス映像モジュールユニット 4の間は IDEコ ネクタ 260、 261を用いて物理的に接続される。 IDEコネクタ 261には ATAデバイス コントローラ 262が物理的に接続されており、映像情報装置 40の CPU力も ATAデ バイスコントローラ 262内の ATAレジスタを読み書きすることが可能である。 ATAデ バイスコントローラ 262には、映像情報装置 40から書き込まれたデータや、読み出し
要求を受けたデータを一時的に格納するためのバッファメモリ 263が接続されている 。このバッファメモリ 263は、図 23の ATAデバイスコントローラ 153内にあるもので、 ュビキタス映像モジュール 12の CPUである UM— CPU264から読み書きすることも 可能である。また、 UM— CPU264からは、 ATAデバイスコントローラ内の ATAレジ スタも読み書きすることが可能となっている。この他に、 UM-CPU264が実行するプ ログラムや、ファイルシステムを格納する ROM265および、 UM— CPU264がプログ ラム等の実行時にワークエリアとして使用する RAM266が搭載されており、それぞれ UM-CPU264と接続されている。また、イーサネット通信を制御するためのイーサネ ットコントローラ 267も UM—CPU264と接続されており、 UM— CPU264から読み書 き可能となっている。イーサネットコントローラ 267の先には RJ45などのコネクタ 268 が接続されており、ュビキタス映像モジュール 4はこの RJ45コネクタ 268を介してィー サネットのネットワークに接続される。
次に、映像情報装置 40から NAS34cにデータを記録する場合の動作について、 詳細に説明する。図 25は、映像情報装置 40から NAS 34cにデータを書き込む際の シーケンスを示したものである。まず、映像情報装置 40はュビキタス映像モジュール ユニット 12を ATAデバイスとして選択、認識する。これにより、映像情報装置 40は以 降に説明するデータ書き込み動作を ATAデバイスに対して行うものと認識する。次 に、ステップ S 1000において、映像情報装置 40はュビキタス映像モジュールユニット 12内の Device/Headレジスタ等の ATAレジスタに対し、論理ブロックアドレス LBA (Logical Block Address)などを設定する。これにより、データの書き込み先が指定され ることとなる。次にステップ S1001において、映像情報装置 40はュビキタス映像モジ ユールユニット 12の ATAレジスタの Commandレジスタに、 1セクタ分のデータを書き 込むことを意味する WRITE SECTORコマンドに該当するコマンドコード「30h」を書き 込む。 ATAエミュレータ 154は、データ書き込みの準備中であることを示すために Statusレジスタの BSYビットに「1」をセットした後、実際にデータ書き込みの準備を行う 。準備の完了後、ステップ S1002において、 ATAエミュレータ 154は、 Statusレジス タの DRQビットを「1」、 BSYビットを「0」に再設定する。これにより、映像情報装置 40は 自身に接続されている ATAデバイスにおいてデータ書き込みの準備が完了したこと
を認識する。ステップ S 1003において、 Statusレジスタの状態を認識した映像情報装 置 40は、データを 1セクタ分ずつ連続的に ATAレジスタ内の Dataレジスタに書き込 む。なお、このデータ書き込みが開始されると同時に ATAエミュレータ 154は、 Statusレジスタの DRQビットを「0」、 BSYビットを「1」に設定する(ステップ S1004)。そ して、後述するステップ S1019までの間、 Statusレジスタの状態は保持される。すな わち、 Statusレジスタの DRQビットが「0」、 BSYビットが「1」に設定されている状態は、 映像情報装置 40力もュビキタス映像モジュール 12を通じて NAS34cにデータが書 き込まれて 、ることを意味して 、る。
[0156] Dataレジスタに書き込まれる 1セクタ分のデータは、 ATAデバイスコントローラ 153 内にあるバッファメモリ 263に対し随時転送される。ノッファメモリ 263への 1セクタ分 のデータの書き込みが完了した後、ステップ S1005において、 ATAエミュレータ 154 力もプロトコルコンバータ 28に対してデータの書き込み要求が発行される。データの 書き込み要求を受信したプロトコルコンバータ 28はステップ S1006において、 NFS クライアント IZF353に対しファイルオープン要求を発行する。なお、ステップ S1006 のファイルオープン要求は、ファイル名を指定して行うコマンドであり、指定ファイルが 存在する場合は指定した既存のファイルを開カゝせ、指定ファイルが存在しな 、場合 は指定した名称のファイルを新規に作成する。ファイルオープン要求によって開かれ るファイル又は新規に作成されるファイルは、 S 1003でバッファメモリ上に書き込まれ た 1セクタ分のデータを NAS34cの任意のディレクトリ上に格納するファイルであり、 図 26に示すように、ファイル名はユニークな名称、例えば LBAに対応した名称にす ることが望ましい。
[0157] NFSクライアント I/F353はステップ S1007において、 NFSプロトコルに従い、 UD P351経由で NFSPROC_OPEN手続き呼び出しメッセージを NAS 34cに送信する。 N AS34c上の NFSサーバプログラムは、この手続き呼び出しメッセージに従い、ステツ プ S1006において指定されたディレクトリ上に指定されたファイル名でファイルを作 成する。ファイル作成後、 NFSサーバプログラムはステップ S1008において、 NFSPROCJDPEN手続きの応答メッセージを NFSクライアント IZF353に送信する。 NFSクライアント IZF353はステップ S1009において、ファイルが作成されたことを
示すファイルオープン応答をプロトコルコンバータ 28に対して返信する。次に、プロト コルコンバータ 28はステップ S1010において、ファイル書き込み要求を、 NFSクライ アン HZF353に対して行う。このファイル書き込み要求は、バッファメモリ 263に格 納されている 1セクタ分のデータをステップ S 1007においてオープンしたファイルに 書き込むための要求である。 NFSクライアント IZF353は、ステップ S1011において 、 1セクタ分のデータと NFSPROC_WRITE手続き呼び出しメッセージを NAS34cに送 信する。 NAS34c上の NFSサーバプログラムはこの手続き呼び出しメッセージに従 い、指定されたファイルに受信したデータを書き込む。書き込み完了後、 NFSサーバ プログラムはステップ S 1012にお!/、て NFSPROC_WRITE手続きの応答メッセージを N FSクライアント I/F353に送信する。 NFSクライアント I/F353はステップ S1013に おいて、ファイル書き込み応答をプロトコルコンバータ 28に対して返す。
プロトコルコンバータ 28はステップ S1014において、先ほどデータを書き込んだフ アイルをクローズするためのファイルクローズ要求を、 NFSクライアント IZF353に対 して行う。ファイルクローズ要求を受信した NFSクライアント IZF353は、ステップ S1 015において、 NFSPROC_CLOSE手続き呼び出しメッセージを NAS34cに送信する 。 NAS34c上の NFSサーバプログラムはこの手続き呼び出しメッセージに従い、指 定されたファイルをクローズした後、ステップ S1016において NFSPROC_CLOSE手続 きの応答メッセージを NFSクライアント IZF353に送信する。 NFSクライアント IZF3 53はステップ S1013において、ファイルクローズ応答をプロトコルコンバータ 28に対 して返す。プロトコルコンバータ 28はステップ S1018において、 ATAエミュレータ 15 4に対してデータ書き込み完了通知を送信する。これを受けて ATAエミュレータ 154 は Statusレジスタの DRQビットおよび BSYビットを共に「0」に設定する。以上の手順に より、 1セクタ分のデータがネットワークによって接続されている NAS34cに書き込ま れることになる。複数のセクタの書き込みは一連の動作を繰り返すことで実現される。 図 48に NAS34c上に書き込まれたデータファイルの例を示す。この例ではディレクト リ /usr/local/ubiquitous/dataの下にデータファイルを格納している。ファイル名は 16 進数で表した 28ビットの LBAに拡張子. datを付カ卩したファイル名としている。この例 では LBA力 OxlOOOaO— 0xl000a4までの 5セクタ分のデータが格納されているこ
とになる。
次に、 NAS34cから映像情報装置 40にデータを読み出す場合の動作について、 詳細に説明する。図 27は、映像情報装置 40が NAS34cから、データを読み出す際 のシーケンスを示したものである。まず、映像情報装置 40はュビキタス映像モジユー ルユニット 12を ATAデバイスとして選択、認識する。これにより、映像情報装置 40は 以降に説明するデータ読み出し動作を ATAデバイスに対して行うものと認識する。 次に、ステップ S 1100において、映像情報装置 40はュビキタス映像モジュールュ- ット 12内の Device/Headレジスタ等の ATAレジスタに対し、論理ブロックアドレス LB Aなどを設定する。これにより、データの読み出し先が指定されることとなる。次にステ ップ S1101にお!/、て、映像情報装置 40はュビキタス映像モジュールユニット 12の A TAレジスタの Commandレジスタに、 1セクタ分のデータを読み出すことを意味する READ SECTORコマンドに該当するコマンドコード「20h」を書き込む。 ATAエミユレ ータ 154は、データ読み出し処理中であることを示すために、ステップ S1102におい て Statusレジスタの BSYビットに「1」をセットする。その後、ステップ S1103において、 ATAエミュレータ 154からプロトコルコンバータ 28に対してデータの読み出し要求が 発行される。データの書き込み要求を受信したプロトコルコンバータ 28はステップ S1 104において、 NFSクライアント IZF353に対してファイルオープン要求を発行する 。このファイルは、前述の書き込み動作の際に説明した、 NAC34cの任意のディレク トリ上に格納されている 1セクタ分のデータのファイルであり、ファイル名は LBAに対 応した図 48で示したような名称となっているものとする。プロトコルコンバータ 28は、 Device/Headレジスタ等に設定されたセクタの LBAに対応するファイル名を決定する 。 NFSクライアント I/F353はステップ S1105において、 NFSプロトコルに従い、 UD P351経由で NFSPROC_OPEN手続き呼び出しメッセージを NAS 34cに送信する。 N AS34c上の NFSサーバプログラムはこの手続き呼び出しメッセージに従い、指定さ れたディレクトリ上に指定されたファイル名でファイルをオープンする。ファイルオーブ ン後、 NFSサーバプログラムはステップ S1106において、 NFSPROC_Open手続きの 応答メッセージを NFSクライアント IZF353に送信する。 NFSクライアント IZF353 はステップ S1107において、ファイルがオープンされたことを示すファイルのオーブ
ン応答をプロトコルコンバータ 28に対して返信する。次に、プロトコルコンバータ 28は ステップ S1108において、ファイル読み出し要求を NFSクライアント IZF353に対し て行う。このファイル読み出し要求は、オープンしたファイルに格納されている 1セクタ 分のデータを読み出すための要求である。 NFSクライアント IZF353は、ステップ S1 109において、 NFSPROC_READ手続き呼び出しメッセージを NAS34cに送信する。 NAS34c上の NFSサーバプログラムはこの手続き呼び出しメッセージに従い、指定 されたファイル力 データを読み出す。読み出し完了後、 NFSサーバプログラムはス テツプ SI 110にお!/、て、ファイルから読み出したデータを含んだ NFSPROC_WRITE 手続きの応答メッセージを NFSクライアント I/F353に送信する。 NFSクライアント I ZF353はステップ SI 111にお 、て、読み出したデータを含んだファイル読み出し応 答をプロトコルコンバータ 28に対して返す。プロトコルコンバータ 28はファイル読み 出し応答を受信した後、読み出したデータをバッファメモリ 263に転送する。
プロトコルコンバータ 28は読み出したデータをバッファメモリ 263に転送後、ステツ プ S1112において、先ほどデータを読み出したファイルをクローズするためのフアイ ルクローズ要求を、 NFSクライアント IZF353に対して行う。ファイルクローズ要求を 受信した NFSクライアント I/F353は、ステップ S1113において、 NFSPROC— CLOSE 手続き呼び出しメッセージを NAS34cに送信する。 NAS34c上の NFSサーバプロ グラムはこの手続き呼び出しメッセージに従 、、指定されたファイルをクローズした後 、ステップ S 1114にお!/、て NFSPROC_CLOSE手続きの応答メッセージを NFSクライ アン HZF353に送信する。 NFSクライアント IZF353はステップ S1115において、 ファイルクローズ応答をプロトコルコンバータ 28に対して返す。プロトコルコンバータ 2 8はステップ S 1116において、 ATAエミュレータ 154に対してデータ読み出し完了 通知を送信する。これを受けて ATAエミュレータ 154はステップ S1117において、 A TAの Statusレジスタの DRQビットを「1」、 BSYビットを「0」に設定する。映像情報装置 40はステップ S 1118において、この Statusレジスタの状態を見て、 ATAの Dataレジ スタから 1セクタ分のデータの連続読み出しを行う。 1セクタ分のデータの読み出しが 完了したら、 ATAエミュレータ 154は、ステップ S 1119において ATAの Statusレジス タの DRQビットおよび BSYビットを共に「0」に設定する。この結果、 ATAの 1セクタ分
のデータ力 ネットワークによって接続されている NAS34cにから読み出されることに なる。複数のセクタの読み出しは一連の動作を繰り返すことで実現される。
[0161] 以上説明したように、ュビキタス映像モジュールユニット 4は、映像情報装置 40から 出力された、ある物理セクタに書き込むよう指示されたデータをファイル形式に変換し て NAS34cに送信する。これにより、映像情報装置 40は自身が通常行っている、自 身にローカル的に接続された記録装置にデータを書き込む場合と同じ処理を行えば よい。一方、 NAS34cは、ュビキタス映像モジュールユニット 4から送信されてきたフ アイル形式のデータを通常のデータ同様に取り扱い、自身の判断で書き込む物理的 セクタを指定する。
[0162] すなわち、物理的セクタへのデータ書込み指示を論理的なファイル共有のプロトコ ルに変換することで、映像情報装置 40が本来備えていない、ネットワークに接続され た記録装置へのデータ書込みが可能となる。
[0163] また、データの読み出しについても同様であり、映像情報装置 40は自身が通常行 つている、自身にローカル的に接続された記録装置からデータを読み出す場合と同 じ処理を行えばよい。 NAS34cは、ュビキタス映像モジュールユニット 4から送信され てきたファイル形式のデータの読み出し指示を通常のデータ読み出し指示と同様に 取り扱い、データが書き込まれている自身の物理的セクタを指定し、データを読み出 す。
[0164] すなわち、物理的セクタ力 のデータ読み出し指示を論理的なファイル共有のプロ トコルに変換することで、映像情報装置 40が本来備えていない、ネットワークに接続 された記録装置力 のデータ読み出しが可能となる。
[0165] このように、本実施の形態のュビキタス映像モジュールユニットを用いることにより、 本来的に映像情報装置が備えて 、な 、機能を実現することができるようになる。すな わち、映像情報装置のシステム LSIを変更、改訂することなく映像情報装置の機能を 拡張することが可能となり、 LSIの開発費用の削減、開発期間の短縮が可能となる。
[0166] なお、本実施の形態では、記録装置として NASを取り上げた力 NFSサーバ機能 を有していれば不揮発性メモリや MO等でもよい。また、ファイル共有プロトコルとして NFSを取り上げたが、 SMB(Server Message Block), APF(AppleTalk Filing
Protocol)等でもよい。
[0167] 実施の形態 2.
<イーサネットインターフェースを備える場合のシステム構成について >
図 28は、ュビキタス映像モジュール 12を映像情報装置 40のイーサネットインタフエ ースに接続した場合のシステム構成例を示す図である。
[0168] ュビキタス映像モジユーノレ 12を含むュビキタス映像モジユーノレユニット 4は、イーサ ネットインタフェース 32fを有しており、このイーサネットインタフェース 32fを映像情報 装置 40のイーサネットインタフェース 31eに接続する。
[0169] このュビキタス映像モジュールユニット 4の接続により、映像情報装置 40は、 LAN3
3上のネットワークカメラ 34d、 34e及び 34f等の他の機器と LAN等のネットワークを 介して通信 ·制御することができる。
[0170] ここで映像情報装置 40は、 NASとの通信'制御に使用するプロトコルを実装してい るものの、装置外部にあるネットワークカメラとの通信'制御のプロトコルは実装してい ない。このような場合においても、ュビキタス映像モジュールユニット 12を接続するこ とにより、映像情報装置 40は LAN33上のネットワークカメラ 34d、 34e及び 34fとネッ トワークを介して通信 ·制御できる。
[0171] 図 29は、図 28に示したュビキタス映像モジュール 12を含むュビキタス映像モジュ ールユニット 4におけるソフトウェアブロックの構成例を示す図である。
[0172] 映像情報装置 40が装置外部にあるネットワークカメラ 34d、 34e及び 34fのいずれ かを利用しょうとする場合、ュビキタス映像モジュール 12は、 NASとの通信'制御プ ロトコルを受信して、イーサネット (Ethernet)上のネットワークカメラと通信.制御する。
[0173] ュビキタス映像モジュール 12は、映像情報装置 40におけるシステム CPU41から N
AS用通信 ·制御プロトコルを受信する。
イーサネットデバイスコントローラ 162は、イーサネットエミュレータ 163を制御して受 信した NAS用通信 ·制御プロトコルを解析する。
[0174] 解析されたプロトコルは、プロトコルコンバータ (Protocol Converter)28によりイーサ ネット上のネットワークカメラ 34d、 34e及び 34fの!、ずれかとの通信 ·制御に使用され るプロトコルに変換され、イーサネットドライバ 161、イーサネットホストインタフェース 1
60を介して、 LAN33上のネットワークカメラ 34d、 34e及び 34fのいずれ力との通信' 制御を行う。
[0175] 以降では、本実施の形態のュビキタス映像モジュール 12についてさらに詳しく説 明する。まず、一般的な NAS、例えば図 18に示した NAS34cにおけるソフトウェア のブロック図を図 30に示す。 NAS34cは、イーサネットを用いて映像情報装置 40に 接続するための、イーサネットホスト IZF360、イーサネットドライバ 361を実装する。 さらに、上位の通信プロトコルとしてインターネットプロトコルである IP362を実装し、 その上位に TCP363、 UDP364、リモートプロシージャコーノレ (Remote Procedure Call)366を実装する。一方、映像情報装置 40から送られてきたデータを記憶するた めの HDD371、 HDD371と接続するための記憶デバイス IZF370、記憶デバイス ドライバ 369を実装している。そして、 NFSサーバソフトウェア 367は映像情報装置 4 0からの要求に従 ヽファイルシステムドライバ 368を起動し、映像情報装置 40から受 信したデータを HDD371に記憶させる。通常、記憶デバイス IZF370と HDD371と の間の通信プロトコルは ATA、もしくは ATAPKATA Pachet Interface)である。なお、 NASは、 LANに接続された他の機器、例えば映像情報装置 40によってローカル記 憶デバイスとして認識され、使用できる点に特徴がある。
[0176] 次に、図 31に、本実施の形態におけるュビキタス映像モジュール 12のソフトウェア のブロック構成を示す。図 30に示した NAS 34cとの違いは、ネットワークカメラ 34dに 接続するために、イーサネットホスト IZF372、イーサネットドライバ 373、仮想フアイ ルシステムドライバ 376、コマンド処理部 374、及びリクエスト処理部 375を実装する 点にある。なお、映像情報装置 40とュビキタス映像ユニット 12との間の通信プロトコ ルは NFS、マウントプロトコルが用いられ、ュビキタス映像ユニット 12とネットワーク力 メラ 34dとの間の通信プロトコルには httpが用いられる。
[0177] なお、仮想ファイルシステム 376の例として、例えば Linuxの Procファイルシステムが ある。この Linuxの Procファイルシステムは、あるディレクトリ上にあるように見えるフアイ ルを読み書きすることにより、 Linuxの Kernelへのインタフェースを提供する機能を有 する。すなわち、 Procファイルシステムを用いることにより、ディレクトリ上にあるフアイ ルにアクセスすることが Kernelの状態を読み出すこととなり、ファイルへの書き込みを
行うことが Kernelの設定を変更することとなる。本実施の形態のュビキタス映像モジュ ールユニット 12における仮想ファイルシステムドライバ 376も、 Linuxの Procファイルシ ステムのような機能を有する。
[0178] 図 32に、仮想ファイルシステムドライバ 376により作成された仮想ファイルシステム 3 80を示す。なお、この仮想ファイルシステム 380は図に示すようなディレクトリにより表 現されるものであり、このディレクトリは映像情報装置 40が認識するものである。作成 された commandディレクトリの下には、 set、及び getのファイルが配置され、これらはそ れぞれコマンド処理部 374に接続される。映像情報装置 40が set又は getのファイル にアクセスすることにより、コマンド処理部 374を通してュビキタス映像モジュールュ ニット 12とカメラ 34d、 34eとの接続を指示したり、コマンド処理部 374に接続された力 メラ 34d、 34eの接続状況を確認すること等が可能となる。一方、 camsディレクトリの下 には、 caml、 cams2等の名称が付されたディレクトリが配置されており、それぞれディ レクトリとカメラとが関連付けられる。さらに、 camsl、 cams2の下には、それぞれ picture.jpgのファイルが配置されて!、る。この picture.jpgはそれぞれリクエスト処理部 375〖こ接続される。映像情報装置 40がそれぞれの picture.jpgのファイルにアクセス することにより、リクエスト処理部 375を通してカメラ力も画像を取り出すことが可能とな る。なお、ここでは画像ファイル形式を「jpg」とした力 「gif」、「bmp」等であってもよぐ 特に形式は問わない。
[0179] このように、映像情報装置 40は、仮想ファイルシステムドライバ 376が作成した仮想 ファイルシステム 380にアクセスすることにより、コマンド処理部 374、リクエスト処理部 375を介してカメラ 34d、 34eを制御したり、画像データを取り出すことが可能となる。 すなわち、映像情報装置 40は、ュビキタス映像モジュールユニット 12を介することに より、カメラ 34d、 34eからの画像データを NAS力ゝらの画像データと認識することとな る。
[0180] 以下、映像情報装置 40がカメラ 34dを操作する場合の動作について、図 33、 34を 用いて詳細に説明する。なお、本実施の形態における操作は、図 33に示す映像情 報装置 40とカメラ 34dとを関連付ける際のシーケンスと、図 34に示す映像情報装置 4 0がカメラ 34dの画像データを取得する際のシーケンスとに大別される。まず、図 33
の映像情報装置 40とカメラ 34dとを関連付ける際のシーケンスについて説明する。 映像情報装置 40はステップ S 1200において、ュビキタス映像モジュールユニット 12 内の仮想ファイルシステムドライバ 376が作成する仮想ファイルシステム 380を認識 するために、通信プロトコルとして MNTを用いて、ュビキタス映像モジュール 12に対 し、 MNTPROC_MNTマウント要求を発行する。マウント要求を受信したュビキタス映 像モジュールユニット 12の仮想ファイルシステムドライバ 376は、仮想ファイルシステ ム 380を作成した後、映像情報装置 40に対しステップ S1201MNTPROC_MNTマウ ント応答にてその旨を返信する。この処理により、映像情報装置 40は仮想ファイルシ ステム 380を認識し、アクセスすることが可能となる。
[0181] 次に映像情報装置 40は、例えばネットワークに接続されているカメラ 34dと仮想ファ ィルシステム 380のディレクトリ camlとを関連付けるために、まず、仮想ファイルシステ ム 380の command/setに対し、 NFSPROCJDPENファイルオープン要求をステップ S 1 202にて発行する。ファイルオープン要求を受信した仮想ファイルシステム 380は、コ マンド処理部 374に対しステップ S1203においてコマンド処理開始要求を発行する 。コマンド処理開始要求を受信したコマンド処理部 374は、この後、カメラ 34dと仮想 ファイルシステム 380のディレクトリとの関連がある旨を認識し、ステップ S1204コマン ド処理開始応答にぉ 、てその旨を返信する。このコマンド処理開始応答を受信した 仮想ファイルシステム 380の command/setは映像情報装置 40に対し、ステップ S120 5NFSPROCJDPENファイルオープン応答にお!、てその旨を返信する。この処理によ り、映像情報装置 40は、 command/setに対しコマンドを送信することが可能となる。
[0182] 映像情報装置 40は、実際にカメラ 34dと仮想ファイルシステム 380のディレクトリ camlとを関連付けるために、仮想ファイルシステム 380の command/setに対しカメラ 3 4dとディレクトリ camlとの関連付けを行う旨のファイル書込要求 NFSPROC_WRITEを ステップ S 1206にて発行する。ファイル書込要求を受信した仮想ファイルシステム 38 0の command/setは、コマンド処理部 374に対し、ステップ S1207においてカメラ 34d とディレクトリ camlとを関連付けるためのコマンドを送信する。コマンドを実行し、関連 付けを行ったコマンド処理部 374は、ステップ S1208コマンド応答においてその旨を 返信する。このコマンド応答を受信した仮想ファイルシステム 380は映像情報装置 40
に対し、ステップ S1209NFSPROC_WRITEファイル書込応答においてその旨を返信 する。この処理により、カメラ 34dとディレクトリ camlとの関連付けられ、映像情報装置 40力もディレクトリ camlへの書込み処理力 カメラ 34dの操作となる。
[0183] その後、さらに他のカメラとディレクトリとの関連付けや、カメラ 34dへのコマンド送信 を行 ヽた 、場合は、ステップ S 1206力らステップ S 1209までの処理を行う。
[0184] すべてのコマンド送信が終わった場合、映像情報装置 40は、コマンド処理部 374 へのコマンド送信が発生しないことを示すために、仮想ファイルシステム 380の command/setに対し、 NFSPROC_CLOSEファイルクローズ要求をステップ S1210にて 発行する。ファイルクローズ要求を受信した仮想ファイルシステム 380の
command/setは、コマンド処理部 374に対しステップ S 1211にお!/、てコマンド処理終 了要求を発行する。コマンド処理開始要求を受信したコマンド処理部 374は、映上情 報装置 40から自身に対しコマンドが発生して 、な 、旨を認識し、ステップ S
マンド処理完了応答においてその旨を返信する。このコマンド処理完了応答を受信 した仮想ファイルシステム 380の command/setは映像情報装置 40に対し、ステップ S 1213NFSPROC_CLOSEファイルクローズ応答にお!/、てその旨を返信する。
[0185] この一連の処理により、仮想ファイルシステム 380にあるディレクトリとネットワーク上 にあるカメラとが関連付けられ、映像情報装置 40からディレクトリへの書込み処理が、 カメラの実際の操作に変換される。すなわち、映像情報装置 40が既存で有している NFSのコマンドによりカメラを実際に操作できることとなる。
[0186] 次に、図 34の映像情報装置 40がカメラ 34dからの画像を取得する際のシーケンス をについて説明する。なお、図 34のステップ S1220の前の時点で、図 33に示した力 メラ 34dとディレクトリ camlとの関連付けが既に終了しているものとする。
[0187] まず映像情報装置 40は、カメラ 34dからの画像データを取得するために、まず、仮 想ファイルシステム 380のディレクトリ cmal/picture.jpgに対し、 NFSPROCJDPENファ ィルオープン要求をステップ S 1220にて発行する。ファイルオープン要求を受信した 仮想ファイルシステム 380のディレクトリ cmal/picture.jpgは、リクエスト処理部 375に 対しステップ S1221においてリクエスト処理開始要求を発行する。リクエスト処理開始 要求を受信したリクエスト処理部 375は、この後、カメラ 34dからの画像データの取得
要求がある旨を認識し、ステップ S1222リクエスト処理開始応答においてその旨を返 信する。このリクエスト処理開始応答を受信した仮想ファイルシステム 380のディレクト リ cmal/picture.jpgは映像情報装置 40に対し、ステップ S1223NFSPROC_OPENファ ィルオープン応答においてその旨を返信する。この処理により、映像情報装置 40は 、 cmal/picture.jpgに対し画像データの要求を発行することが可能となる。
[0188] 映像情報装置 40は、実際にカメラ 34dの画像データを取得するために、仮想フアイ ルシステム 380の cmal/picture.jpgに対しカメラ 34dの画像データを読み出す旨のフ アイル読出要求 NFSPRO C.READをステップ S 1224にて発行する。フアイル読出要求 を受信した仮想ファイルシステム 380の cmal/picture.jpgは、リクエスト処理部 375に 対し、ステップ S1225においてカメラ 34dからの画像データを読み出すためのデータ 読出要求送信する。さらに、データ読出要求を受信したリクエスト処理部はカメラ 34d に対し、ステップ S 1226においてデータ読出要求 GET/DATA/PICTUREを発行する 。データ読出要求を受信したカメラ 34dはステップ S1227において、撮影した画像デ ータを含んだデータ読出応答をリクエスト処理部 375に返信する。さらに、リクエスト 処理部 375は、ステップ S1228において画像データを含んだデータ読出応答を返 信する。この画像データを含んだデータ読出応答を受信した仮想ファイルシステム 3 80の cmal/picture.jpgは映像情報装置 40に対し、ステップ S 1229NFSPROC_READ ファイル読出応答において画像データを返信する。この処理により、カメラ 34dが撮 像した画像データを映像情報装置 40により見ることが可能となる。
[0189] その後、さらカメラ 34dからの画像データを取得した 、場合や、他のカメラ力もの画 像データを取得したい場合は、ステップ S 1224からステップ S 1229までの処理を行う
[0190] すべての画像データの取得が終わった場合、映像情報装置 40は、リクエスト処理 部 375への画像取得要求が発生して 、な 、ことを示すために、仮想ファイルシステム 380の cmal/picture.jpgに対し、 NFSPROC_CLOSEファイルクローズ要求をステップ S 1230にて発行する。ファイルクローズ要求を受信した仮想ファイルシステム 380の cmal/picture.jpgは、リクエスト処理部 375に対しステップ S 1231においてリクエスト 処理終了要求を発行する。リクエスト処理開始要求を受信したリクエスト処理部 375
は、映像情報装置 40から自身に対し画像取得要求が発生していない旨を認識し、ス テツプ S1232リクエスト処理完了応答においてその旨を返信する。このリクエスト処理 完了応答を受信した仮想ファイルシステム 380の cmal/picture.jpgは映像情報装置 4 0に対し、ステップ S1233NFSPROC_CLOSEファイルクローズ応答においてその旨を 返信する。
[0191] 最後に、映像情報装置 40はステップ S1214において、仮想ファイルシステム 380 の認識を解除するために、ュビキタス映像モジュール 12に対し、 MNTPROC.UMNT アンマウント要求を発行する。アンマウント要求を受信したュビキタス映像モジュール ユニット 12の仮想ファイルシステムドライバ 376は、仮想ファイルシステム 380を終了 した後、映像情報装置 40に対しステップ S1215MNTPROCJJMNTアンマウント応答 にてその旨を返信する。この処理により、映像情報装置 40は仮想ファイルシステム 3 80の認識を終了する。
[0192] この一連の処理により、ネットワークに接続されたカメラ 34dが撮像した画像データ を映像情報装置 40において視聴可能となる。すなわち、映像情報装置 40が既存で 有している NFSのコマンドによりカメラが撮像した画像を視聴できることとなる。
[0193] なお、仮想ファイルシステム 380におけるディレクトリ構成は図 32に示すものに限ら れない。図 35に示すディレクトリ構造は、図 32における仮想ファイルシステム 380の ディレクトリと同じ構造であるが、この構造はコマンド送受信用ファイルと、複数台の力 メラ用ディレクトリにそれぞれ 1つの画像取得用ファイルが配置されている点に特徴が ある。
[0194] 図 36に示したディレクトリ構造は、それぞれのカメラ用ディレクトリの中に複数の画 像取得用ファイルが配置されて 、る点に特徴がある。カメラ力も連続して画像を読み 出す場合などに適した配置である。
[0195] 図 37に示したディレクトリ構造は、さらに他の例で、それぞれのカメラ用ディレクトリ の中に、カメラに対するコマンド送受信用ファイルも配置した点に特徴がある。カメラ ごとの制御を行いながら画像を読み出すのに適した配置である。
[0196] 以上説明したように、映像情報装置 40が備える NFSを用いたファイルの読み書きと いう既存の機能を用いて、ネットワークに接続したカメラ力も画像データを取得できる
。なお、 NFSの機能を備えていない映像情報装置 40の場合は、仮想ファイルシステ ム 380を、映像情報装置 40から通常の NASへのデータ記録を行う際のディレクトリ 構成、データフォーマットを模擬して作成する。即ち、映像情報装置 40が認識する世 界では、 NASに記録された画像データの再生操作を実行することにより現在の画像 を表示し、 NASに記録済みの画像データを他の記憶デバイスにコピーを取ることに より現在のカメラ画像を記録することが可能となる。ただし、この場合、使用カメラ等の 情報は映像情報装置 40では設定できな 、ので、ュビキタス映像モジュールユニット 1 2に初期値として与えておくか、外部力 ュビキタス映像モジュールユニット 12に設 定を行う必要がある。
[0197] なお、ュビキタス映像モジュール 12が有するカメラエンジンを用いてネットワークに 接続されたカメラが撮像した画像データを、映像情報装置に表示するために適した フォーマットに変換しても良い。また、本実施の形態では、ュビキタス映像モジュール ユニット内の NFSサーバ 367、仮想ファイルシステムドライバ 376、コマンド処理部 37 4、リクエスト処理部 375はそれぞれ独立したソフトウェアとした力 これらの一部また は全部を組み合わせたソフトウェアであってもよ 、。
[0198] このような構成を採用することで、ュビキタス映像モジュールユニット 12が NAS用 通信 ·制御プロトコルとネットワークカメラ用通信 ·制御プロトコルの変換を行うように構 成できる(NAS用制御コマンドの送受信を装置外部と行える)。
[0199] そして、これにより、例えば、映像情報装置 40自身の NASとの通信'制御プロトコ ルに対応する構成はそのままで、ネットワークカメラ 34d、 34e及び 34fのいずれかと の通信'制御プロトコルのための構成を新たに追加すること無ぐ LAN33上のネット ワークカメラ 34d、 34e及び 34fの!、ずれかとネットワークを介して通信 ·制御できる。 すなわち、機能追カ卩に伴う新たなシステム LSI等の開発が不要となる。
[0200] 尚、実施の形態 2において、上記以外の点は実施の形態 1の場合と同じであるので 説明を省略する。
[0201] 実施の形態 3.
<映像情報装置側にシステムインターフェースを備える構成について >
図 38は、ュビキタス映像モジュールユニット 4を映像情報装置 40に接続した場合の
システムの構成例を示す図である。
図 38に示した映像情報装置 40は、図 7に示したドライバ 55およびホストインターフ エース 56を備える代わりに、 S— I/F31を備えるように構成した。
[0202] また、ュビキタス映像モジュールユニット 4は、ュビキタス映像モジュール 12と U— I
ZF32とを含んで構成されている。これら各インタフェース S-IZF31と U-IZF32と を接続することにより、新たなシステム LSIを開発しなくとも、ュビキタス映像モジユー ル 12の機能を有する映像情報装置 40が実現できる。
[0203] ュビキタス映像モジユーノレユニット 4は、コミュニケーションエンジン 24を介してイン ターネット環境に接続した後、インターネット上の他の映像情報装置から映像 '音声 データ等をダウンロードする。
[0204] ダウンロードされた映像'音声データ等は、ュビキタス映像モジュール 12に含まれ る MPEG4エンジン 23、グラフィックエンジン 21等でデコード処理やグラフィック処理 を施される。そして、ュビキタス映像モジュールユニット 4は、 U— IZF32とインタフエ ース S— I/F31とを介して映像情報装置 40にお 、て利用可能なデータ形式の映像 · 音声データ等を出力する。
[0205] 映像情報装置 40に入力された映像 ·音声データは、それぞれ表示ユニット 54に表 示可能に信号処理されて表示ユニット 54上に表示され、図示しない音声出力部より 音声出力される。
[0206] また、例えばネットワークカメラ(例えば図 28に示したネットワークに接続されたネッ トワークカメラ 34d、 34eおよび 34f等)から入力される動画 '静止画ファイルは、ュビ キタス映像モジュールユニット 4のカメラエンジン 22にお!/、て画素数変換、レート変換 、画像処理等のカメラ特有の画像処理が施される。
[0207] さらに、画像処理を施された動画'静止画ファイルのデータは、グラフィックエンジン 21によってグラフィック処理され、 U— I/F32とインタフェース S— I/F31とを介して 映像情報装置 40に利用可能なデータ形式で出力される。
[0208] この映像情報装置 40に入力されたデータは、表示ユニット 54に表示可能な状態に 信号処理され、表示ユニット 54上に表示される。
[0209] 尚、以上の説明において図 38に示した各エンジンの処理は、一例を示しているに
過ぎず、エンジンの使用手順並びにエンジンの機能はこれと異なっていても良い。
[0210] また、図 38に示した構成例は、映像データを表示するシステムの例である力 同様 の構成で音声入力の再生、テキスト入力の表示 '配信、情報の蓄積等のその他の機 能を有するシステムや装置にも適応可能である。
[0211] <表示用ビデオ入出力の機能を含むュビキタス映像モジュールュ-ットについて > 図 39は、本実施の形態 3におけるュビキタス映像モジュールユニット 4に、表示ュ- ット 54へ映像を表示する機能を持たせた場合の構成例を示す図である。
[0212] UVKUbiquitous Video Input) 175 ュビキタス映像モジュールユニット 4のビデオ 入力端子であり、映像情報装置 40の映像出力端子 V-lZF(Video Interface)50と接 続可能なインタフェースを構成して 、る。
[0213] UVO(Ubiquitous Video Output)176は、ュビキタス映像モジュールユニット 4から 表示ユニット 54へのビデオ出力端子であり、表示ユニット 54の入力インタフェース( 図示しない)と接続される。この入力インターフェースより入力された映像データは、 表示ドライバ 173を介して表示デバイス 174に表示される。
[0214] このように構成すると、例えば、映像情報装置 40の映像出力をュビキタス映像モジ ユール 12に含まれるグラフィックエンジン 21の表示画面上にオーバーレイすることが 可能となる。
[0215] また、このように構成することで、映像データを S— I/F31と U— I/F32との間で授 受可能となるばかりでなぐ V-I/F50, UVI175および UV0176を介して出力する ことが可能となるため、 S— IZF31と U— IZF32との間にある汎用バスの転送効率を 下げることなく映像データをュビキタス映像モジュール 12へ供給することが可能とな る。
[0216] 映像情報装置 40がネットワーク対応でない場合、インターネット上のグラフィックデ 一タを自装置の出力する映像信号と合成して表示するオーバーレイ (screen overlay) 出力のための構成は、通常、複雑である。
[0217] しかしながら、ュビキタス映像モジュール 12が UVI175および UV0176を備えて オーバーレイの機能を保有することにより、映像情報装置 40においてシステム LSI4
5の開発を新たに行うことなくオーバーレイ等の拡張機能の実現が容易となる。
[0218] 尚、実施の形態 3において、上記以外の点は実施の形態 1の場合と同じである。
[0219] <他のデータ蓄積インターフェースについて >
上述した実施の形態 1では、ストレージインタフェース(データ蓄積インターフェース )として ATAを用いた力 SCSKSmall Computer System Interface)等他の蓄積インタ 一フェース (ストレージインタフェース)を用いてもよ 、。
[0220] また、上述した実施の形態 1では、 ATAや SCSIのデータ蓄積インタフェースを用 いたが、 USB(Universal Serial Bus), IEEE1394等で蓄積用のプロトコルセットを備 えたインタフェースを用いてもょ 、。
[0221] <プログラム間通信について >
また、上述した実施の形態 1および 2では、プロセス間通信コミュニケータを用いて プロセス間通信を行うように構成した力 プログラム間通信コミュニケータ介したプログ ラム間通信を用いてもよい。
[0222] 実施の形態 4.
本実施の形態では、 Webラウザを用いてュビキタス映像モジュールユニット 12を操 作する場合について説明する。まず、図 40に、従来の映像情報装置 40のハードゥエ ァ構成を示す。なお、図に示す映像情報装置 40は、外部の装置と接続するシリアル インタフェースとして RS—232Cインタフェース 400を備えているものとする。
[0223] 映像情報装置 40は、内部バスである PCIバス 403を介して前段処理部 171、シス テム LSI45、後段処理部 172、 V— IZF50が接続されている。さらに、 IDEインタフエ ース 404を介して内蔵 HDD402、シリアルコントローラ 401を介して RS— 232Cインタ フェース 400もそれぞれ PCIバス 403に接続されている。
[0224] 次に、映像情報装置 40をパーソナルコンピュータ (PC)405を用いて操作する場合 を説明する。 PC405と映像情報装置 40は、図に示すように、 RS— 232Cケーブルで 接続されており、互いに通信を行うことが可能である。まず、ユーザは、 PC405に映 像情報装置 40を制御するための専用ソフトウェアをインストールする必要がある。そ してユーザは、専用ソフトウェアを用いることにより、映像情報装置の操作、例えば画 像データの取り出し、画像データの記録を行うことが可能となる。すなわち、ユーザが 専用ソフトウェアを通じて処理命令を発行すると、この処理命令が RS—232C用コマ
ンドに変換された後、 RS—232Cケーブルを介し映像情報装置 40に送信される。映 像情報装置 40のシステム LSI45は、 RS— 232Cインタフェース 400から入力されたコ マンドを解釈し、必要な処理を実行する。処理の結果は処理命令の通信と同様に、 R S—232Cインタフェース 400を介して処理命令の発行元であるパソコンの専用ソフト ウエアに返される。
[0225] このような手順により、ユーザは PCにインストールされた映像情報装置 40を制御す る専用ソフトウェアを用いて映像情報装置 40の操作が可能となる。したがって、従来 の映像情報装置 40を操作するためには、映像情報装置 40を操作するための専用ソ フトウェアを PC405にインストールする必要があった。本実施の形態では、最近の P Cでは標準的にプリインストールされて 、る Webブラウザを用いて映像情報装置 40を 操作する方法、すなわち、ュビキタス映像モジュールユニット 12を用いて映像情報装 置 40を操作する方法にっ ヽて説明する。
[0226] 図 41に、本実施の形態におけるュビキタス映像モジュールユニット 12のハードゥエ ァ構成を示す。ュビキタス映像モジュールユニット 4は、映像情報装置 40と RS— 232 Cケーブルインターフェース 406を介し RS—232Cケーブルにて接続されており、 PC 405、カメラ 34dとはコミュニケーションエンジン 24を介してイーサネットにて接続され ている。さらに、ュビキタス映像モジュールユニット 4内部は、ュビキタス映像モジユー ル 4と RS—232Cケーブルインターフェース 406とがシリアルコントローラ 407を介して PCIバスで接続されている。
[0227] 図 42に、本実施の形態におけるュビキタス映像モジュールユニット 12のソフトゥェ ァ構成を示す。 PC405とュビキタス映像モジュールユニット 12は、物理層およびデ ータリンク層としてのイーサネットで接続されており、ュビキタス映像モジュールュニッ ト 12はイーサネット IZF420、イーサネットドライバ 421を実装している。また、ュビキ タス映像モジュールユニット 12は、物理層およびデータリンク層よりも上位の通信プロ トコルであるネットワーク層に、インターネットプロトコルである 423を実装し、ネットヮ ーク層よりも上位のトランスポート層として TCP424、及び UDP426を実装している。 さらに、セッション層以上に Webブラウザ 425を実装している。なお、 PC405には We bブラウザ 409がインストールされているものとする。
[0228] 一方、映像情報装置 40とュビキタス映像モジュールユニット 12は、 RS232Cケー ブルにて物理的に接続されており、ュビキタス映像モジュールユニット 12は、シリア ルコントロール IZF429、シリアルコントロールドライバ 428を実装している。さらに、 P C405の Webブラウザからの要求を RS— 232Cコマンドに変換するコマンド変換部 42 7も実装している。
[0229] 次に、例えば、 PC405の Webブラウザから映像情報装置 40に表示されている画像 データを取得する場合の動作について説明する。図 43は、 Webブラウザから映像情 報装置 40に表示されている画像データを取得する際のシーケンスを示したものであ る。まず、 EPC405にインストールされている Webブラウザ 409はステップ S 1250に おいて、ュビキタス映像モジュールユニット 12の Webサーバに対し、メニュー要求 http:Get/menuを送信する。 Webサーノ 425はステップ S 1251において、メニューを 含んだメニュー応答を Webブラウザ 409に返信する。この処理により、 PC405の We bブラウザ 409上にメニュー画面が表示される。したがってユーザは、この操作画面を 用いて、映像情報装置 40に対する操作が可能となる。
[0230] ユーザは、 Webブラウザ 409上に表示された操作画面から、映像情報装置 40に表 示されている画像データを取得するための操作を行う。この操作により、 Webブラウ ザ 409はステップ S1252において、 Webサーバに対しデータ取得要求
http:Get/dataを送信し、 Webサーノ 425はステップ S1253において、受信したデー タ取得要求 http:Get/dataをコマンド変換部 427に送信する。コマンド変換部 427はス テツプ S1254において、データ取得要求 http:Get/dataを RS—232C用のコマンドデ ータであるデータ取得要求 GET/DATAに変換し、シリアルコントローラ 407に送信す る。ュビキタス映像モジュール 12内にあるシリアルコントローラ 407は RS232—Cケー ブルを介して映像情報装置 40のシリアルコントローラ 401に対し、ステップ S 1255に てデータ取得要求 GET/DATAを送信する。最後に、ステップ S 1256においてシリア ルコントローラ 401からデータ取得要求 GET/DATAを送信されたシステム LSI45は、 このコマンドを解釈し、画像データの取得を行う。
[0231] システム LSI45はシリアルコントローラ 401に対し、画像データを含んだデータ取得 応答をステップ S1257にて返信する。さらに、ステップ S1258にて、映像情報装置 4
0内にあるシリアルコントローラ 401からュビキタス映像モジュールユニット 12内にある シリアノレ =3ントローラ 407に、ステップ S1259にて、シリアノレ =3ント π—ラ 407力ら =3マ ンド変換部 427にそれぞれ画像データを含んだデータ取得応答が返信される。コマ ンド変換部はステップ S1260において、 RS— 232C用のデータ取得応答力も変換し た httpプロトコルのデータ取得応答と画像データを Webサーバ 425に返信する。 We bサーバ 425はステップ S 1261にお!/、て、 Webブラウザ 409に httpプロトコルのデー タ取得応答と画像データを返信する。ステップ S1261の後、ユーザは、映像情報装 置 40から取得した画像データを Webブラウザ 409を介して視認することが可能となる その他、映像情報装置 40が表示して 、る画像データへの書込み等も可能である。
[0232] 以上説明したように、本実施の形態のュビキタス映像モジュールユニットを用いれ ば、映像情報装置 40を制御する専用ソフトウェアをインストールする必要が無ぐ標 準的にプリインストールされて 、る Webブラウザを用いて映像情報装置 40の操作が 可能となる。また、本実施の形態のュビキタス映像モジュールユニットを用いて、カメ ラ 34dから送信されてきた画像を映像情報装置 40に表示、記録することも可能である 。さらに、本実施の形態のュビキタス映像モジュールは、既存の映像情報装置にも適 応可能である。
[0233] なお、この説明で用いた httpコマンド、 RS232— C用のコマンド GET/DATAは一例 であり、ユーザが所望する機能を満足するものであれば表記の形式は問わな 、。
[0234] さらに、本実施の形態におけるュビキタス映像モジュールの他の適用例を図 44に 示す。図 44に示した映像情報装置は、装置内部にュビキタス映像モジュールュ-ッ トが組み込まれている点で、図 41に示した映像情報装置 40と異なる。即ち、図 41で は既存の映像情報装置にュビキタス映像モジュールユニット 12を接続した場合を想 定して 、る。し力し図 44に示したようなュビキタス映像モジュールを内蔵した映像情 報装置であれば、ュビキタス映像モジュールと映像情報装置との間を RS—232Cに より接続する必要が無い。したがって、両者間の通信が、イーサネット等と比較して通 信速度が低 、RS—232Cインタフェースの物理的な通信速度に制限されな 、利点が ある。
[0235] 図 44では、図 41においてシリアルコントローラと RS—232Cにて接続されていた部
分力 バスブリッジ 410にて接続されている。すなわち、このバスブリッジ 410は、映 像情報装置の内部の PCIバス 403と、ュビキタス映像モジュールユニットの内部の P CIバス 408とを接続している。バスブリッジ 410の内部には、シリアルコントローラと同 様のデータ転送を行うシリアルエミュレータ 411が設けられている。シリアルエミユレ一 タ 411は、 PCIバス 403、 408の双方から制御を受け付け、シリアル転送した場合と 同様に反対側のバスに伝える。したがって、図 41に示すように、シリアルコントローラ 401、 407を用いて通信を行っていた構成時のソフトウェアを変更することなく使用す ることが可能となる。さらに、 RS— 232C通信の物理的な速度制限を受けないため、 データ転送を高速に行うことが可能となる。
なお、ソフトウェアの変更を行うことが可能であれば、共有メモリ型などシリアルエミュ レータ 411以外のブリッジを使用しても良ぐ複数の方式を併用してもょ 、。
[0236] 図 45に、 Webブラウザから映像情報装置 40に表示されている画像データを取得 する際のシーケンスを示す。図 43と異なるのは、映像情報装置 40から読み出した画 像データをネットワーク上の NAS34cにも記録する点である。
すなわち、コマンド変換部 427は、映像情報装置 40から読み出した画像データを ステップ S1292データ書込にて NAS34cに記録する。記録が完了した後、 NAS34 cは、ステップ S1322データ書込応答にてコマンド変換部 427に返信する。
以上説明したように、ュビキタス映像モジュールを内部に組み込んだ映像情報装置 を用いてもよい。
[0237] 実施の形態 5.
<保有エンジンに関するフラグおよび連携設定にっ 、て >
図 46は、実施の形態 5におけるュビキタス映像モジュールを適用した映像情報装 置のシステム構成を模式的に表わした図である。
[0238] 映像情報装置の一例としての監視レコーダ 200は、監視レコーダ 200の制御を行う CPU201と、映像出力を持つ他の機器との映像信号の送受信を行うマルチプルビ デォ IZO202と、 JPEGZJPEG2000等の圧縮 ·伸張を行う JPEGZ2000コーデッ ク 203と、動画圧縮のための MPEG2エンジン 204、 MPEG4— Version 1エンジン( 図中、 MPEG4_1エンジンと表記) 205と、ミドルウェア 206と、ストレージ機器のインタフ
エイスを制御するストレージホスト IZF208と、 OSとして UM— CPU211と同じ組み込 み OSである組込み Linux207とにより構成されている。
[0239] また、ュビキタス映像モジュール 210は、このュビキタス映像モジュール 210の制御 を行う UM— CPU211と、描画性能を向上するためのグラフィックエンジン 212、カメ ラにより撮像された動画や静止画等の信号処理を行うカメラエンジン 213、動画圧縮 '伸張のための MPEG4— Version2エンジン (図中、 \^5〇4_2ェンジンと表記)214 、ネットワーク環境に接続するための有線 LAN、無線 LAN、シリアルバス通信等に 用いられるコミュニケーションエンジン 215等の機能ブロックを有して構成される。な お、 MPEG4—Versionlエンジン 205、 MPEG4—Version2ェンジン214等の動 画圧縮に関する機能ブロックを総称して MPEG4エンジンと称する。
[0240] 尚、ュビキタス映像モジュール 210に含まれる機能ブロックのうち、ここに挙げてい る例は一例に過ぎず、監視レコーダ 200に必要な機能は、ュビキタス映像モジユー ル 210に含まれる各エンジンによって実現することが可能である。
[0241] ュビキタス映像モジュール 210は、監視レコーダ 200のストレージホスト IZF208に 接続する。
監視レコーダ 200とュビキタス映像モジュール 210に搭載された MPEG4エンジン は、図 46の例では、 MPEG4のバージョン 1、 2にそれぞれ対応する MPEG4— Ver sionlエンジン 205、 MPEG4—Version2ェンジン214でぁる。
[0242] ュビキタス映像モジュール 210力 MPEG4— Versionlエンジン 205を使用せず 、他のエンジン(ノヽ一ドウエアエンジンやソフトウェアエンジン)を使用する場合、ュビ キタス映像モジュール 210の UM—CPU211がストレージデバイスコントローラ (Storage Device Controller)219を介して監視レコーダ 200のストレージホスト iZF (Storage Host Interface)208を制御する。
[0243] これにより、ュビキタス映像モジュール 210は、監視レコーダ 200上に搭載されたマ ルチプルビデオ 1/0202、 JPEGZ2000コーデック 203、 MPEG2エンジン 204を 操作可能となる。
[0244] <連携設定について >
以下、図 47—図 52を参照しながら具体的に説明する。
図 47は、本実施の形態 5におけるュビキタス映像モジュール 210を適用した映像 情報装置のシステム構成の他の例を示した模式図である。
[0245] 監視レコーダ 200内の、 220は ROM、 221は RAM、 222は設定メモリである。また 、ュビキタス映像モジュール 210内の、 223は ROM、 224は RAM、 225は設定メモ リである。
[0246] 図 48は、設定メモリ 222及び 225に格納される設定情報の一例を示す模式図であ る。図示するように、設定メモリ 222および Zまたは設定メモリ 225は、機器設定 230a 、ネットワーク設定 230b、連携設定 230cの各種設定を格納している。
[0247] 図 47に示すような監視レコーダ 200において、機器設定 230aは、例えば、ネットヮ ークに接続されたカメラの内、動作させるカメラの番号や切り替えるタイミング等の監 視レコーダ 200が各機器に対して与える設定である。
[0248] また、ネットワーク設定 230bは、監視レコーダ 200がネットワークに接続された機器 との通信を行うのに必要なアドレスや通信方式についての設定である。
[0249] 本実施の形態 5に係る構成においては、更に、監視レコーダ 200およびこれに接続 されるュビキタス映像モジュール 210の有する設定メモリ 222および/または設定メ モリ 225が、監視レコーダ 200およびこれに接続されるュビキタス映像モジュール 21 0それぞれの保有するエンジンを、管理番号 (管理 No. )と対応付けた形式でテープ ル化した連携設定 230cを有する。
[0250] 図 49、図 50は、本実施の形態 5における連携設定 230cの設定内容の一例である 。図 49は、監視レコーダ 200が設定メモリ 222内に保持している連携設定 231の内 容を示している。
[0251] 図 49に示すように、連係情報 231は、監視レコーダ 200の CPU201が制御するハ 一ドウエアエンジンと、これらを管理するための管理番号 (管理 No.)等の情報を各ハー ドウエアエンジンに対応付けて格納して 、る。
[0252] 図 50は、ュビキタス映像モジュール 210が設定メモリ 225内に保持している連携設 定 232の内容を示している。
[0253] 図示したように、連係情報 232は、ュビキタス映像モジュール 210の UM— CPU21
1が制御するハードウェアエンジンと、これらを管理するための管理番号 (管理 No.)等
の情報を各ハードウェアエンジンに対応付けて格納している。
[0254] もちろん、ここに図示したのは、一例であって、これら連携設定 231及び 232の内容 は、必要に応じて他の設定を格納することもできる。この他の設定とは、例えば、映像 情報以外のデータを扱うことのできる音声データ処理に関する機能ブロック、テキスト データ処理に関する機能ブロック等に関する設定である。
[0255] 図 47は、本実施の形態 5におけるュビキタス映像モジュール 210および映像情報 装置の一例としての監視レコーダ 200の各ハードウェアエンジンを模式的に示したシ ステム構成例を示す模式図である。
[0256] 図 46、 25、 27に示したように、監視レコーダ 200は、基本的なハードウェアェンジ ンとして、監視レコーダ 200自身の CPU201が制御するハードウェアエンジンとして マルチプルビデオ lZO202、 JPEGZ2000コーデック 203、 MPEG2エンジン 204 、 MPEG4— 1エンジン 205を保有する。
[0257] また、図 46、 25、 28に示したように、ュビキタス映像モジュール 210は、基本的な ハードウェアエンジンとして、ュビキタス映像モジュール 210自身の UM— CPU211 が制御するハードウェアエンジンとしてグラフィックエンジン 212、カメラエンジン 213 、 MPEG4—2ェンジン214を保有する。
[0258] なお、監視レコーダ 200のストレージホスト IZF208は、ハードウェアデバイスを公 開することが可能である。すなわち、監視レコーダ 200の管理しているハードゥエアデ バイス力 ュビキタス映像モジュール 210から認識可能な状態とされる。
[0259] <連携設定に基づく動作について >
以下、図 47を参照して、その動作について説明する。
ュビキタス映像モジュール 210力 監視レコーダ 200のストレージホスト IZF208に 装着されると、ュビキタス映像モジュール 210はストレージホスト IZF208に接続され たことを検知して、以下の信号送受に係るプログラムを起動するスィッチを ONにする (工程 A、 240)。
[0260] このスィッチは、例えば、ュビキタス映像モジュール 210への電源供給を可能とする ハードウェアスィッチやソフトウェアスィッチにより構成され、このスィッチの ON動作に よって、少なくとも UM— CPU211への電源供給が行われる。
[0261] 上述したように、監視レコーダ 200およびュビキタス映像モジュール 210は、それぞ れの設定メモリ 222、 225内に各々の CPU (CPU201、 UM— CPU211)が制御す るハードウェアエンジンと、これらを管理するための管理番号等の情報 (連携設定 23 1、 232)を各ハードウェアエンジンに対応付けて格納している。
[0262] ュビキタス映像モジュール 210は、監視レコーダ 200が管理しているハードウェアェ ンジン、およびこれらハードウェアエンジンを管理するための管理番号等の情報であ る連携設定 231を取得するための要求信号を監視レコーダ 200のストレージホスト I ZF208に送信する(工程 B、 241)。
[0263] この要求信号を受け取ったストレージホスト IZF208は、監視レコーダ 200の設定メ モリ 222に格納された連携設定 231をュビキタス映像モジュール 210に送信する(ェ 程 C、 242)。
[0264] ュビキタス映像モジュール 210は、受信した監視レコーダ 200の連携設定 231と設 定メモリ 225に格納された連携設定 232とに基づ 、て、図 51に模式的に示すような、 ュビキタス映像モジュール 210が制御可能なハードウェアエンジンの一覧データ 233 を作成する。
[0265] 当該一覧データ 233において、監視レコーダ 200のハードウェアエンジンおよびュ ビキタス映像モジュール 210のハードウェアエンジンに関する各情報は、「ハードゥエ ァエンジン」のデータカテゴリとして保持される。
[0266] 一覧データ 233は、
A)各ハードウェアエンジンに対応して、「No.」で示される番号、
B) " (機器属性)— (ノヽ一ドウエアエンジン属性) "を表現するフォーマットで示される 「管理番号 (管理 No.;)」を有する。
[0267] この B)について説明すれば、図 51中に示した例では、 r— 1、 r— 2· ··においては r が映像情報装置(ここでは監視レコーダ 200)側にあるハードウェアエンジン、 u— 1、 ιι—2· · ·にお!/ヽては uがュビキタス映像モジュール 210側にあるハードウェアエンジン であることをそれぞれ示す。
[0268] 更に、一覧データ 233は、図 51中、記号 Fで示した、
C)ュビキタス映像モジュール 210力 各ハードウェアエンジンを制御できるかどうか
を表わす「制御可能フラグ」、
D)各ハードウェアエンジンのバージョン等を考慮した結果、実際にュビキタス映像 モジュール 210が制御するかどうかを示す「制御フラグ」、
E)この「制御フラグ」に示されたュビキタス映像モジュール 210が制御するハードウ エアエンジンの内、ュビキタス映像モジュール 210から監視レコーダ 200へアクセスし なければならないハードウェアエンジンを示す「アクセスフラグ」、
の各フラグも有する。
[0269] 一覧データ 233中における「制御可能フラグ」は、上述したように、監視レコーダ 20 0の有するハードウェアエンジンとュビキタス映像モジュール 210の有するハードゥエ ァエンジンとを総合した状態を示すものである。従って、図 51に示すように全てのハ 一ドウエアエンジンに対して「制御可能フラグ」が与えられる。
[0270] このように、制御可能フラグ、制御フラグについては、監視レコーダ 200とュビキタス 映像モジュール 210とが接続されたことを契機として、両者が保有するハードウェア エンジンに関する情報を UM— CPU211が統合するように動作し、これにより予め、よ り性能の向上したノ、一ドウエアエンジンへのアクセス性能が向上する。すなわち、制 御可能フラグ、制御フラグを監視レコーダ 200およびュビキタス映像モジュール 210 が各々保有することで、上記統合動作を短時間のうちに行わせることが可能となる。
[0271] なお、一覧データ 233のハードウェアエンジンの中で、 MPEG4の圧縮'伸張に用 いられる MPEG4に関するハードウェアエンジンは、図 49に示したように監視レコー ダ 200の連携設定 231にある MPEG4—1エンジン(管理 No. r— 4)であり、図 50に 示したようにュビキタス映像モジュール 210の連携設定 232にある MPEG4— 2ェン ジン(管理 No. u— 3)である。
[0272] ここで、 MPEG4の圧縮'伸張に用いるのは、 MPEG4—1エンジンおよび MPEG4 —2エンジンの内で、よりエンジンの内容が改訂された MPEG4— 2エンジン(図 50 中の管理 No. u— 3)である。
[0273] すなわち、図 51の例では、 MPEG4の圧縮.伸張に用いるのは MPEG4— 2ェンジ ンである。従って、図 51に示した一覧データ 233の例では、管理 No. 6にある r— 4以 外の全てのハードウェアエンジンに「制御フラグ」が与えられる。
[0274] この「制御フラグ」の与えられたハードウェアエンジンの内、ュビキタス映像モジユー ル 210が監視レコーダ 200へアクセスしなければならないハードウェアエンジンは、 管理 No.が r— 1、 r— 2、 r— 3で示されるハードウェアエンジンである。従って、管理 No.が r— 1、 r— 2、 r— 3で示されるハードウェアエンジンに対して、「アクセスフラグ」 が与えられる。
[0275] 以上の説明のように、各フラグが、監視レコーダ 200およびュビキタス映像モジユー ル 210それぞれの有するハードウェアエンジンに対応して与えられる。
[0276] そして、ュビキタス映像モジュール 210の UM— CPU211は、この「アクセスフラグ」 の与えられた監視レコーダ 200の有するハードウェアエンジンにアクセスするための アクセス要求信号を監視レコーダ 200に出力する(工程 D、 243)。
[0277] アクセス要求信号を受信した監視レコーダ 200の CPU201は、受信したアクセス要 求信号によって指定されるハードウェアエンジンにアクセスする。
[0278] なお、ここにおける例では、ュビキタス映像モジュール 210から監視レコーダ 200の ハードウェアエンジンにアクセスされるのは、上述の一覧データのアクセスフラグが与 えられた、管理 No.の r— 1、 r— 2、 r— 3によって示されるハードウェアエンジンに対 してである。
[0279] CPU201によってアクセスされたハードウェアエンジンは、当該ハードウェアェンジ ンの有する処理を実行し、その処理結果を監視レコーダ 200の CPU201に送信する
[0280] 監視レコーダ 200の CPU201は、受信した処理結果をュビキタス映像モジュール 2 10に送信する(工程 E、 244)。
[0281] 以上に説明した工程 A乃至 Eの一連の処理を行うことで、ュビキタス映像モジユー ル 210の UM— CPU211が監視レコーダ 200の CPU201を実質的に制御できる。
[0282] すなわち、これを模式的に示すと、図 52に点線で囲った部分を UM— CPU211が 実質的に制御することと等価である。従って、上述のように構成することで、本来、映 像情報装置が有して 、な 、機能、あるいは接続されるュビキタス映像モジュールが 有して 、な 、機能にっ 、て、それら映像情報装置およびュビキタス映像モジュール を結合することで相補的な関係を構成することが可能であり、これら相補的な関係を
表わす上記一覧データを用いることでアクセス性能の向上を図ることができる。
[0283] 尚、本実施の形態 5において、上記以外の点は実施の形態 1の場合と同じである。
[0284] 実施の形態 6.
<ハードウェア(ノヽ一ドウエアエンジン)の揷脱と動作につ!、て >
図 53、 34はュビキタス映像モジュール 310をバスラインを介して、映像情報装置の 一例としての監視レコーダ 300に接続 (装着)した場合のシステム構成図である。
[0285] 図 53、 34において、監視レコーダ 300は、図の点線部分に CD— RZRWドライブを 装着していたことを示している。そして、この CD— RZRWドライブを監視レコーダ 30
0から外したあとに、ここでは、 DVD士 RZRWZRAMドライブ及び新規のカードメ ディアを備えた新規の装着モジュールを監視レコーダ 300に接続する例について述 ベる。
[0286] CD— RZRWドライブは、ストレージホストインターフェース(ストレージホスト IZF) 3
08を介して監視レコーダ 300に接続されて!、たが、 CD— RZRWドライブを外した事 により空きの生じたストレージホスト IZF308に新規の装着モジュールを接続する。
[0287] 監視レコーダ 300内にある、暗号化エンジン(暗号化— 1エンジン) 303は、例えば 監視レコーダ 300がネットワーク経由で他の映像情報装置と通信を行う際に通信情 報を暗号化するハードウェアエンジンである。
[0288] メディアエンジン (メディア— 1エンジン) 304は、カードメディアのデータの書き込み
'読み出しを司るハードウェアエンジン、 CD— RZRWエンジンは CD— RZRWのデ ータの書き込み ·読み出しを司るハードウェアエンジンである。
[0289] ュビキタス映像モジュール 310内にある、 0¥0±1^71^^71^^1ェンジン314は
DVD士 RZRWZRAM装置に対するデータの書き込み '読み出しを司るハードゥエ ァエンジンである。
[0290] ここでは、監視レコーダ 300内にある、暗号化— 1エンジン 303、メディア— 1ェンジ ン 304は、それぞれ旧式の暗号処理及びカードメディアの制御ができる(サポートす る)ものであり、ュビキタス映像モジュール 310内にある、暗号化— 2エンジン 312、 M edia— 2エンジン 313に取って代わられるものとする。
[0291] なお、監視レコーダ 300内にある、 CPU301、マルチプルビデオ lZ〇302、ミドル
ウェア 306、組込み Linux307およびストレージホスト IZF308は、それぞれ上述の 実施の形態に説明したものと基本的に同様である。
[0292] また、ュビキタス映像モジュール 310内にある、 UM— CPU311、コミュニケーション エンジン 315、ミドルウェア 316、 Java仮想マシン VM317、組込み Linux318および ストレージデバイスコントローラ 319は、それぞれ上述の実施の形態に説明したものと 基本的に同様である。
[0293] ュビキタス映像モジュール 310に組み込まれた連携設定の基本構成は、図 47に示 したのと同様である。
[0294] 図 54、図 55は、それぞれ監視レコーダ 300、ュビキタス映像モジュール 310が RO
M320、 323内【こ格糸内して!/、る、監視レコーダ 300、ュヒ、、キタス映像モジユーノレ 310 各々のハードウェアエンジンの連携設定である。
[0295] ここでは、後述する図 56に示した手順を経て、ュビキタス映像モジュール 310は、 図 57に示したノヽードウエアエンジンについての一覧データを作成'更新する。
[0296] 図 56に示すように、ュビキタス映像モジュール 310の UM— CPU311は、監視レコ ーダ 300の CPU301を実質的に制御できる。
[0297] <フラグ一覧の書き換え(更新)につ 、て >
図 56は、実施の形態 6におけるュビキタス映像モジュール 310が監視レコーダ 300 内のハードウェアエンジンを制御するための動作を示すシステム構成図である。
[0298] 上述したように、この実施例では監視レコーダ 300の CD— RZRWドライブを外して
DVD士 RZRWZRAMドライブ及び新規のカードメディアドライブを備えたュビキタ ス映像モジュールを装着する事で、監視レコーダ 300には無 、機能の付加を行う。
[0299] 監視レコーダ 300は、図 54に示すように監視レコーダ 300自身の管理するハードウ エアエンジンの連係情報を設定メモリ 322に格納して 、る。
[0300] 監視レコーダ 300は、自装置力も CD— RZRWドライブが外された場合、それを検 知して、監視レコーダ 300自身の制御可能なハードウェアエンジンを検索するプログ ラムを起動するスィッチを ONにする(工程 A、 330)。
[0301] 監視レコーダ 300における自装置のハードウェアエンジンを検索するプログラムは、 各ハードウェアエンジンに対して、各々のハードウェアエンジンの種類を特定(マルチ
プルビデオ lZO、暗号化— 1エンジン等)する問!、合わせを行!、各ハードウヱァェン ジンの種類に関する情報を取得する。
[0302] 取得した情報に基づいて、 CPU301は、監視レコーダ 300自身の設定メモリ 322 に格納されている連携設定について更新を行うと共に、一覧データにおける制御可 能フラグを更新する(工程 Β、 331)。
[0303] これにより、図 54に示したように CD— RZRWドライブを外す前と後で、管理 No. r —4の制御可能フラグは「フラグ有り(連携設定 331aの r— 4に対するフラグが F)」か ら「フラグ無し (連携設定 331bの r— 4に対するフラグがなし)」になる。
[0304] 続いて、 CD— RZRWドライブの空きスロットにュビキタス映像モジュール 310を装 着した際、ュビキタス映像モジュール 310はストレージホスト IZF308に接続された 事を検知して、ュビキタス映像モジュール 310自身の制御可能なハードウェアェンジ ン検索プログラムを起動するスィッチを ONにする(工程 C、 332)。
[0305] なお、このスィッチは、例えば、ュビキタス映像モジュール 310への電源供給を可 能とするハードウェアスィッチやソフトウェアスィッチにより構成され、このスィッチの O N動作によって、少なくとも UM— CPU311への電源供給が行われることにより、上述 のハードウェアエンジン検索プログラムが起動されるようにしてもょ 、。
[0306] 該ハードウェアエンジン検索プログラムは、ュビキタス映像モジュール 310の各ハ 一ドウエアエンジンに対して、それぞれのハードウェアエンジンの種類(暗号化— 2ェ ンジン、メディア— 2エンジン等)を特定する問い合わせを行い、各ハードウェアェン ジンの種類に関する情報を取得することで、ュビキタス映像モジュール 310自身の設 定メモリ 325に格納されている連携設定 332aの制御可能フラグを更新する(工程 D、 333) o
[0307] この場合、ュビキタス映像モジュール 310は、含まれるハードウェアエンジンの揷脱 等の変化が無いので、図 55に示したように DVD士 RZRWZRAMドライブを装着 する前と後で、各ハードウェアエンジンの制御可能フラグは変化しな 、。
[0308] ハードウェアエンジン検索プログラムにより、設定メモリ 325内の連携設定 332bが 更新されたことを契機として、以下の信号送受に係るプログラムが起動する。
[0309] ュビキタス映像モジュール 310は、監視レコーダ 300が管理しているハードウェアェ
ンジンを制御するために監視レコーダ 300が管理している連携設定 33 lbを取得する ための要求信号を監視レコーダ 300のストレージホスト IZF308に送信する(工程 E 、 334)。
[0310] この要求信号を受け取ったストレージホスト IZF308は、監視レコーダ 300の設定メ モリ 322に格納された連携設定 331bをュビキタス映像モジュール 310に送信する( 工程 F、 335) o
[0311] ュビキタス映像モジュール 310は、受信した監視レコーダ 300の連携設定 331bと 設定メモリ 325に格納された連携設定 332bとに基づいて、図 57に模式的に示すよう な、ュビキタス映像モジュール 310が制御可能なハードウェアエンジンの一覧データ
333を作成する。
[0312] ュビキタス映像モジュール 310は、監視レコーダ 300のハードウェアエンジンおよび ュビキタス映像モジュール 310のハードウェアエンジンに関する一覧データ 333にお けるアクセスフラグの有無に基づいて、監視レコーダ 300にアクセスを行う(工程 G、 3 36)。
[0313] なお、図 57に示した一覧データ 333の例において、監視レコーダ 300のハードゥエ ァエンジンの中でュビキタス映像モジュール 310がアクセスを必要とするハードゥエ ァエンジンは、アクセスフラグが与えられて 、るマルチプルビデオ IZO302だけとな る。
[0314] 図 57に示した例では、アクセスフラグが与えられているマルチプルビデオ IZO302 だけがュビキタス映像モジュール 310からアクセスを必要とするハードウェアエンジン であるが、必ずしもこれ〖こ限られることは無い。
[0315] すなわち、ュビキタス映像モジュール 310が保有しないハードウェアエンジン、ある いはュビキタス映像モジュール 310の保有するハードウェアエンジンよりも監視レコ ーダ 300側のハードウェアエンジンの方が高機能である場合のように、一覧データ 3 33において示されるアクセスフラグの与えられた状況に基づいて、ュビキタス映像モ ジュール 310から監視レコーダ 300へのアクセスの要否は変化する。
[0316] ュビキタス映像モジュール 310がマルチプルビデオ IZO302へアクセスを行う際、 ュビキタス映像モジュール 310の UM— CPU311は、このアクセスフラグの与えられ
た監視レコーダ 300のマルチプルビデオ IZO302へアクセスするためのアクセス要 求信号を監視レコーダ 300に出力する。
[0317] アクセス要求を受信した監視レコーダ 300の CPU301は、受信したアクセス要求信 号によって指定されるハードウェアエンジンに対しアクセスを行う(図 57に示す例では
、マルチプルビデオ IZO302へのアクセスだけが必要)。
[0318] CPU301によってアクセスされたハードウェアエンジンは、当該ハードウェアェンジ ンの有する処理を実行し、その処理結果を監視レコーダ 300の CPU301に送信する
[0319] 監視レコーダ 300の CPU301は、受信した処理結果をュビキタス映像モジュール 3 10に送信する(工程 H、 337)。
[0320] 以上に説明した工程 A乃至 Hの一連の処理を行うことで、ュビキタス映像モジユー ル 310の UM— CPU311が監視レコーダ 300の CPU301を実質的に制御できる。
[0321] すなわち、これを模式的に示すと、図 58に点線で囲った部分を UM— CPU311が 実質的に制御することと等価である。従って、上述のように構成することで、本来、映 像情報装置が有して 、な 、機能、あるいは接続されるュビキタス映像モジュールが 有して 、な 、機能にっ 、て、それら映像情報装置およびュビキタス映像モジュール を結合することで相補的な関係を構成することが可能であり、これら相補的な関係を 表わす上記一覧データを用いることでアクセス性能の向上を図ることができる。
[0322] 尚、本実施の形態 6において、上記以外の点は実施の形態 1の場合と同じである。
[0323] 以上、種種の実施の形態に説明したような構成を採用することによって、ュビキタス 映像モジュール側力 監視レコーダ 200等の映像情報装置側のハードウェアェンジ ンを、当該映像情報装置側の CPUを動作させて、その出力を受け取るように構成す ることが可能であり、これにより、映像情報装置にさらなる機能向上を盛り込むに際し て、映像情報装置側の CPU (システム LSI)を更新することなしに、ュビキタス映像モ ジュールを接続するだけで機能向上を図ることができる。
[0324] また、接続先の映像情報装置の保有するハードウェアエンジンの内で、ュビキタス 映像モジュールが使用可能な、ハードウェアエンジンに関するアクセスフラグ情報を 保持するように構成することで、映像情報装置およびュビキタス映像モジュールの間
の動作連携をスムーズに行わせることができる。