(57)【要約】    【構成】  ネットワークコントローラ６４は、サーバ１６から画像信号および音声信号をそれぞれ周期的に取得する。取得された画像信号よび音声信号は、ＳＤＲＡＭ８２の画像バッファおよび音声バッファにそれぞれ蓄積される。ＣＰＵ８６は、音声バッファの蓄積量が閾値に満たないとき、ネットワークコントローラ６４による画像信号の取得周期を長くする。    【効果】  ネットワーク５８の帯域幅が狭くなったときに音声が途切れる可能性が低減される。画像の品質低下は生じるものの、音声が途切れたときより不快感は少ない。サーバ１６は要求された信号を送信するだけなので、サーバ１６の負担が増すこともない。【選択図】  図１
2005123854.tif 000002
【特許請求の範囲】
【請求項１】
画像信号および音声信号をリアルタイムで取り込む取込装置と通信回線を通して接続される信号処理装置において、
画像転送要求を前記取込装置に向けて周期的に出力する画像要求手段、
音声転送要求を前記取込装置に向けて周期的に出力する音声要求手段、
前記画像転送要求に応答して前記取込装置から転送された画像信号および前記音声転送要求に応答して前記取込装置から転送された音声信号に所定の処理を施す処理手段、および
前記取込装置から転送されかつ未だ前記所定の処理を施されていない音声信号の信号量に基づいて前記画像転送要求の出力周期を制御する制御手段を備えることを特徴とする、信号処理装置。
【請求項２】
前記制御手段は前記信号量が閾値に満たないとき前記出力周期を長くする、請求項１記載の信号処理装置。
【請求項３】
前記処理手段は、前記取込装置から転送された画像信号を再生する画像再生手段、および前記取込装置から転送された音声信号を再生する音声再生手段を含む、請求項１または２記載の信号処理装置。
【請求項４】
前記取込装置から転送された画像信号の識別子および前記取込装置から転送された音声信号の識別子を転送順に登録する登録手段をさらに備える、請求項３記載の信号処理装置。
【請求項５】
前記処理手段は、前記音声再生手段によって再生された音声信号を出力する音声出力手段、および前記画像再生手段によって再生された画像信号を前記音声出力手段から出力される音声信号に同期させて出力する画像出力手段をさらに含む、請求項３または４記載の信号処理装置。
【請求項６】
前記音声信号は任意の時間長を有し、
前記画像信号にはこの画像信号以前に出力される音声信号の累計時間長に基づく時刻情報が付加され、
前記画像出力手段は前記時刻情報に基づいて画像信号の出力タイミングを検出する、請求項５記載の信号処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、信号処理装置に関し、特にたとえば、監視カメラシステムのように、サーバから画像信号および音声信号をリアルタイムで受信して処理する、信号処理装置に関する。
【背景技術】
【０００２】
従来のこの種の信号処理装置の一例が、特許文献１に開示されている。この従来技術では、サーバが画像および音声を複数のオブジェクトに分解し、これらのオブジェクトを順次端末に送信する。端末は、送られてくるオブジェクトを順次受信し、受信された複数のオブジェクトから画像および音声を再構成する。伝送路の帯域幅が狭いときには、高いリアルタイム性が求められるオブジェクトを優先的に送信する。これにより、狭帯域時の伝送品質低下が抑制され、その結果、ユーザの不快感が緩和される。
【特許文献１】特開２００１−３５９０６７号公報［Ｈ０４Ｎ ７／１５，Ｈ０４Ｊ ３／００，Ｈ０４Ｌ ２９／０６，Ｈ０４Ｎ７／２４，Ｈ０４Ｎ ７／１８］
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、従来技術では、サーバが端末へのオブジェクトの送信順序を制御しているので、特に端末数が多い場合、サーバに多大な負担がかかる。
【０００４】
それゆえに、この発明の主たる目的は、サーバに負担をかけずにサーバから画像信号および音声信号を取得し、かつ違和感の少ない再生を行うことができる、信号処理装置を提供することである。
【課題を解決するための手段】
【０００５】
請求項１の発明は、画像信号および音声信号をリアルタイムで取り込む取込装置と通信回線を通して接続される信号処理装置において、画像転送要求を取込装置に向けて周期的に出力する画像要求手段、音声転送要求を取込装置に向けて周期的に出力する音声要求手段、画像転送要求に応答して取込装置から転送された画像信号および音声転送要求に応答して取込装置から転送された音声信号に所定の処理を施す処理手段、および取込装置から転送されかつ未だ所定の操作を施されていない音声信号の信号量に基づいて画像転送要求の出力周期を制御する制御手段を備えることを特徴とする、信号処理装置である。
【０００６】
請求項１の発明では、画像信号および音声信号をリアルタイムで取り込む取込装置と通信回線を通して接続され、画像要求手段が画像転送要求を取込装置に向けて周期的に出力し、音声要求手段が音声転送要求を取込装置に向けて周期的に出力する。処理手段は、画像転送要求に応答して取込装置から転送された画像信号および音声転送要求に応答して取込装置から転送された音声信号に所定の処理を施す。制御手段は、取込装置から転送されかつ未だ所定の処理を施されていない音声信号の信号量に基づいて画像転送要求の出力周期を制御する。
【０００７】
請求項２の発明は、請求項１記載の信号処理装置において、制御手段は信号量が閾値に満たないとき出力周期を長くする。
【０００８】
請求項３の発明は、請求項１または２記載の信号処理装置において、処理手段は、取込装置から転送された画像信号を再生する画像再生手段、および取込装置から転送された音声信号を再生する音声再生手段を含む。
【０００９】
請求項３の発明では、画像再生手段が転送画像信号を再生し、音声再生手段が転送音声信号を再生する。
【００１０】
請求項４の発明は、請求項３記載の信号処理装置において、取込装置から転送された画像信号の識別子および取込装置から転送された音声信号の識別子を転送順に登録する登録手段をさらに備える。
【００１１】
請求項４の発明では、登録手段が転送画像信号の識別子および転送音声信号の識別子を転送順に登録する。再生手段は、登録手段に登録された識別子を参照することにより、次に再生すべき信号を選択する。
【００１２】
請求項５の発明は、請求項３または４記載の信号処理装置において、処理手段は、音声再生手段によって再生された音声信号を出力する音声出力手段、および画像再生手段によって再生された画像信号を前記音声出力手段から出力される音声信号に同期させて出力する画像出力手段をさらに含む。
【００１３】
請求項６の発明は、請求項５記載の信号処理装置において、音声信号は任意の時間長を有し、画像信号にはこの画像信号以前に出力される音声信号の累計時間長に基づく時刻情報が付加され、画像出力手段は時刻情報に基づいて画像信号の出力タイミングを検出する。
【００１４】
請求項５および６の発明では、音声信号が任意の時間長を有する場合、画像信号にこの画像信号以前に出力される音声信号の累計時間長が時刻情報として付加される。画像出力手段は、この時刻情報に基づいて画像信号の出力タイミングを検出するので、画像信号を音声信号に同期させて出力することができる。
【発明の効果】
【００１５】
この発明によれば、取込装置から転送されかつ未だ所定の処理を施されていない音声信号の信号量に基づいて画像転送要求の出力周期を制御する、典型的には未処理音声量が閾値に満たないとき画像要求周期を長くするので、通信回線の帯域幅が狭くなったときに音声が途切れる可能性を低減することができる。
【００１６】
この場合、画像の品質低下は生じるものの、音声が途切れたときよりユーザの感じる不快感は少ない。また、取込装置は、ただ要求された信号を転送するだけでよいので、取込装置の負担が増すこともない。
【００１７】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００１８】
図１を参照して、この実施例の監視カメラシステム１０は、サーバ１６と、端末６０とで構成される。サーバ１６には、カメラ１２およびモニタ１４が接続される。カメラ１２は、被写界を撮影し、サーバ１６に画像信号を出力する。モニタ１４は、サーバ１６から画像信号を受け、カメラ１２で撮影された被写界を画面に表示する。
【００１９】
サーバ１６にはさらに、アンプ５０を介してマイク５２が、アンプ５４を介してスピーカ５６がそれぞれ接続される。マイク５２は、被写界で発生した音波を捕捉し、アンプ５０に音声信号を出力する。アンプ５０は、マイク５２からの音声信号を増幅し、増幅された音声信号をサーバ１６に出力する。アンプ５４は、サーバ１６からの音声信号を受け、この信号でスピーカ５６を駆動する。これによりスピーカ５６から、マイク５２で捕捉された音波が出力される。
【００２０】
サーバ１６と端末６０とは、ネットワーク５８を介して接続される。カメラ１２からサーバ１６に入力された画像信号およびマイク５２からアンプ５０を通じてサーバ１６に入力された音声信号はまた、ネットワーク５８を通じて端末６０へも伝送される。
【００２１】
端末６０には、モニタ９０が接続される。モニタ９０は、端末６０から画像信号を受け、カメラ１２で撮影された被写界を画面に表示する。端末６０にはさらに、アンプ９２を介してスピーカ９４が接続される。アンプ９２は、サーバ１６から音声信号を受け、この信号でスピーカ９４を駆動する。これによりスピーカ９４から、マイク５２で捕捉された音波が出力される。
【００２２】
次に、サーバ１６の構成について説明する。サーバ１６は、２本のデータバス４６および４８を含む。データバス４６にはＪＰＥＧコーデック１８が接続され、データバス４８にはＣＰＵ４２およびフラッシュメモリ３２が接続される。
【００２３】
データバス４６にはさらに、ＩＤＥ−Ｉ／Ｆ回路２４を介してＨＤＤ２６が、Ｄ１−Ｉ／Ｆ（ＩＮ）回路２０を介してカメラ１２が、Ｄ１−Ｉ／Ｆ（ＯＵＴ）回路２２を介してモニタ１４が、ＳＤＲＡＭコントローラ２８を介してＳＤＲＡＭ３０が、音声Ｉ／Ｆ回路４０を介して音声Ａ／Ｄコンバータ３６および音声Ｄ／Ａコンバータ３８が、それぞれ接続される。
【００２４】
データバス４８にはさらに、ＳＤＲＡＭコントローラ２８を介してＳＤＲＡＭ３０が接続される。また、データバス４８には、拡張バスＩ／Ｆ回路３４を介してネットワークコントローラ４４が接続される。
【００２５】
なお、サーバ１６では、ＣＰＵ４２が接続されているデータバス４８とは別のデータバス４６にＪＰＥＧコーデック１８，音声Ａ／Ｄコンバータ３６および音声Ｄ／Ａコンバータ３８を接続することにより、画像・音声処理の速度の向上を図っている。データバス４６側のハードウエアとデータバス４８側のハードウエアとは、ＳＤＲＡＭコントローラ２８を通じて互いにデータのやり取りをすることができる。
【００２６】
次に、端末６０の構成について説明する。端末６０は、データバス８８を含む。データバス８８には、ＪＰＥＧコーデック６２，ネットワークコントローラ６４，フラッシュメモリ６６，操作パネル８４およびＣＰＵ８６が接続される。
【００２７】
データバス８８にはさらに、ＩＤＥ−Ｉ／Ｆ回路７６を介してＨＤＤ７８が、Ｄ１−Ｉ／Ｆ回路７０を介してモニタ９０が、ＳＤＲＡＭコントローラ８０を介してＳＤＲＡＭ８２が、音声Ｉ／Ｆ回路７２を介して音声Ｄ／Ａコンバータ７４が、それぞれ接続される。
【００２８】
次に、サーバ１６を構成する１つ１つの要素について説明する。Ｄ１−Ｉ／Ｆ（ＩＮ）回路２０は、カメラ１２からの画像信号をデータバス４６に適合する信号に変換する。Ｄ１−Ｉ／Ｆ（ＯＵＴ）回路２２は、データバス４６からの画像信号をモニタ１４に適合する信号に変換する。
【００２９】
ＩＤＥ−Ｉ／Ｆ回路２４は、ＣＰＵ４２の指示を受け、ＨＤＤ２６を制御する。ＨＤＤ２６は、ＩＤＥ−Ｉ／Ｆ回路２４の制御に応じてデータバス４６からの画像信号（ＪＰＥＧファイル）や音声信号（ＷＡＶＥファイル）をＨＤ２６ａに記録し、かつＨＤ２６ａから画像信号や音声信号を読み出してデータバス４６に出力する。
【００３０】
音声Ａ／Ｄコンバータ３６は、アンプ５０からの音声信号をＡ／Ｄ変換する。音声Ｉ／Ｆ回路４０は、音声Ａ／Ｄコンバータ３６からの音声信号をデータバス４６に適合する信号に変換する。音声Ｉ／Ｆ回路４０はまた、データバス４６からの音声信号を音声Ｄ／Ａコンバータ３８に適合する信号に変換する。音声Ｄ／Ａコンバータ３８は、音声Ｉ／Ｆ回路４０からの音声信号をＤ／Ａ変換する。
【００３１】
ＳＤＲＡＭ３０は、複数の記憶領域（バンク）を含んでおり、これら複数の記憶領域に音声信号，画像信号等がそれぞれ保持される。なお、ＳＤＲＡＭ３０の詳細については、後述する。
【００３２】
ＳＤＲＡＭコントローラ２８は、ＣＰＵ４２の指示を受けて、データバス４６からの画像信号や音声信号をＳＤＲＡＭ３０に書き込み、かつＳＤＲＡＭ３０から画像信号や音声信号を読み出してデータバス４６またはデータバス４８に出力する。
【００３３】
ＪＰＥＧコーデック１８は、データバス４６から入力される画像信号をＪＰＥＧ方式に従って符号化し、符号化して得られた画像信号をデータバスに出力する。また、データバス４６から入力される符号化画像信号をＪＰＥＧ方式に従って復号化し、復号化して得られた画像信号をデータバス４６に出力する。
【００３４】
ここで、符号化処理および復号化処理について簡単に説明しておく。画像信号は、次のような手順で符号化される。ＪＰＥＧコーデック１８は、最初、画像信号をブロック化する。次に、ブロックの各々にＤＣＴ変換を施し、これにより得られたＤＣＴ係数の各々を量子化する。次に、量子化されたＤＣＴ係数の各々をエントロピー符号化する。そして、エントロピー符号化されたデータを所定の順序に並べ、さらにヘッダ等の付加情報を添付することによってＪＰＥＧファイルを形成する。こうして形成される１つのＪＰＥＧファイルは、１枚の画像フレームと対応する。符号化画像信号を復号化する際には、ＪＰＥＧコーデック１８は、上記の符号化とは逆の処理を行う。
【００３５】
なお、この実施例ではＪＰＥＧ方式を採用しているが、ＪＰＥＧ２０００方式やその他の符号化方式を用いても構わない。いずれの場合も、符号化画像信号のヘッダないしは付加情報領域に記録時刻５６ａが埋め込まれる。
【００３６】
再びサーバ１６の構成要素の説明に戻る。拡張バスＩ／Ｆ回路３４は、ネットワークコントローラ４４とデータバス４８との間のデータのやり取りを仲介する。ネットワークコントローラ４４は、端末６０が発した要求信号をネットワーク５８から受信する。また、ＣＰＵ４２の指示を受け、ＳＤＲＡＭ３０に保持されている画像信号や音声信号をネットワーク５８に送出する。
【００３７】
フラッシュメモリ３２には、ＣＰＵ４２の処理手順を記述したプログラムが格納されている。ＣＰＵ４２は、フラッシュメモリ３２内のプログラムに従い、上記の各構成要素を制御する。これにより、サーバ１６において、録画や再生、ＪＰＥＧファイルやＷＡＶＥファイルの送信といった様々な処理が実現される。
【００３８】
次に、端末６０を構成する１つ１つの要素について説明する。Ｄ１−Ｉ／Ｆ回路７０は、データバス８８からの画像信号をモニタ９０に適合する信号に変換する。ＩＤＥ−Ｉ／Ｆ回路７６は、ＣＰＵ８６の指示を受け、ＨＤＤ７８を制御する。ＨＤＤ７８は、ＩＤＥ−Ｉ／Ｆ回路７６の制御に応じてデータバス８８からの画像信号（ＪＰＥＧファイル）や音声信号（ＷＡＶＥファイル）をＨＤ７８ａに記録し、かつＨＤ７８ａから画像信号や音声信号を読み出してデータバス８８に出力する。
【００３９】
音声Ｉ／Ｆ回路７２は、データバス８８からの音声信号を音声Ｄ／Ａコンバータ７４に適合する信号に変換する。音声Ｄ／Ａコンバータ７４は、音声Ｉ／Ｆ回路７２からの音声信号をＤ／Ａ変換し、変換後の音声信号をアンプ９２に出力する。
【００４０】
ＳＤＲＡＭ８２は、複数の記憶領域（バンク）を含んでおり、これら複数の記憶領域に音声信号，画像信号等がそれぞれ保持される。なお、ＳＤＲＡＭ８２の詳細については、後述する。
【００４１】
ＳＤＲＡＭコントローラ８０は、ＣＰＵ８６の指示を受けて、データバス８８からの画像信号や音声信号をＳＤＲＡＭ８２に書き込み、かつＳＤＲＡＭ８２から画像信号や音声信号を読み出してデータバス８８に出力する。
【００４２】
ＪＰＥＧコーデック６２は、データバス８８から入力される画像信号をＪＰＥＧ方式に従って符号化し、符号化して得られた画像信号をデータバス８８に出力する。また、データバス８８から入力される符号化画像信号をＪＰＥＧ方式に従って復号化し、復号化して得られた画像信号をデータバス８８に出力する。ここでの符号化処理および復号化処理は、ＪＰＥＧコーデック１８によるものと同様である。
【００４３】
ネットワークコントローラ６４は、ＣＰＵ８６の指示を受けてサーバ１６にネットワーク５８経由で要求信号を送信する。そして、サーバ１６からネットワーク５８経由で画像信号や音声信号を受信し、受信信号をデータバス８８に出力する。
【００４４】
操作パネル８４は、Ｐｌａｙキー８４ａと、Ｓｔｏｐキー８４ｂと、テンキー８４ｃとを備えている。テンキー４８ｃは、１０個の数字キーといくつかの記号キーとを含む。操作パネル８４上のいずれかのキーが押されると、押されたキーに対応する信号が操作パネル８４からＣＰＵ８６に送信される。
【００４５】
フラッシュメモリ６６には、再生リスト（ＬＩＳＴ）６８が格納されている。なお、再生リスト６８については後述する。
【００４６】
フラッシュメモリ６６にはさらに、ＣＰＵ８６の処理手順を記述したプログラムも格納されている。ＣＰＵ８６は、操作パネル８４からの信号に応じ、かつフラッシュメモリ６６内のプログラムに従い、上記の各構成要素を制御する。これにより、端末６０において、サーバ１６からのＪＰＥＧファイルやＷＡＶＥファイルの取得、取得ファイルの記録や再生といった様々な処理が実現される。
【００４７】
次に、サーバ１６内のＳＤＲＡＭ３０について説明する。図２を参照して、ＳＤＲＡＭ３０は、音声バッファ３０ａと、画像バッファ３０ｂとを含む。音声バッファ３０ａおよび画像バッファ３０ｂには、Ｄ１−Ｉ／Ｆ（ＩＮ）回路２０および音声Ａ／Ｄコンバータ３６からの音声信号および画像信号がそれぞれ蓄積される。音声バッファ３０ａおよび画像バッファ３０ｂ内の音声信号および画像信号は、ＣＰＵ４２の指示に従い、Ｄ１−Ｉ／Ｆ（ＯＵＴ）回路２２および音声Ｄ／Ａコンバータ３８にそれぞれ読み出される。その結果、モニタ１４にライブ画像が表示され、スピーカ５６からはライブ音声が出力される。
【００４８】
また、端末６０からのＷＡＶＥ要求があれば、その時点で音声バッファ３０ａに蓄積されている全ての音声信号がネットワークコントローラ４４に読み出され、この音声信号を含むＷＡＶＥファイルが生成される。生成されたＷＡＶＥファイルは、ネットワークコントローラ４４によってネットワーク５８に送出される。
【００４９】
ただし、音声バッファ３０ａには第１閾値が設定されており、音声バッファ３０ａの蓄積量が第１閾値を越えていなければ音声バッファ３０ａからの読み出しは行われず、蓄積量が第１閾値を越えた時点でこれが実行される。なお、音声バッファ３０ａからネットワークコントローラ４４側への音声信号読み出し処理の詳細については後述する。
【００５０】
さらにまた、端末６０からのＪＰＥＧ要求があれば、画像バッファ３０ｂから、現在Ｄ１−Ｉ／Ｆ（ＯＵＴ）回路２２に出力中のフレームと対応する画像信号がＪＰＥＧコーデック１８に読み出される。ＪＰＥＧコーデック１８では画像信号が符号化され、さらに符号化された画像信号を含むＪＰＥＧファイルが生成される。生成されたＪＰＥＧファイルは、ネットワークコントローラ４４を通じてネットワーク５８に送出される。
【００５１】
次に、端末６０内のＳＤＲＡＭ８２について説明する。図３を参照して、ＳＤＲＡＭ８２は、音声バッファ８２ａと、画像バッファ８２ｂとを含む。音声バッファ８２ａおよび画像バッファ８２ｂには、ネットワークコントローラ６４によってネットワーク５８から受信されたＪＰＥＧファイルの画像信号，および同様に受信されたＷＡＶＥファイルの音声信号がそれぞれ格納される。
【００５２】
音声バッファ８２ａおよび画像バッファ８２ｂに蓄積された音声信号および画像信号は、フラッシュメモリ６６内の再生リスト６８（後述）に従って順次読み出され、再生される。
【００５３】
ただし、音声バッファ８２ａには、第２閾値および第３閾値が設定されている。音声バッファ８２ａの蓄積量が第２閾値を越えていなければ音声バッファ８２ａからの読み出しは行われず、第２閾値を越えた時点でこれが実行される。また、ＪＰＥＧ要求の送信タイミングにおいて音声バッファ８２ａの蓄積量が第３閾値を下回っているとき、このＪＰＥＧ要求はスキップされ、代わりにＷＡＶＥ要求が送信される。
【００５４】
なお、第３閾値が大きいほど音声が途切れにくくなり、小さいほど画像のコマ落ちが発生しにくくなる。この実施例では、音声および画像の品質バランスを考慮して、第３閾値は例えば第２閾値の０．８倍に設定される。
【００５５】
次に、音声バッファ３０ａからネットワークコントローラ４４側への音声信号読み出し処理について説明する。図４を参照して、音声バッファ３０ａに音声信号が書き込まれるのに伴い、書き込みポインタ（点線矢印）が音声バッファ３０ａ上を移動していく。また、音声バッファ３０ａから音声信号が読み出されるのに伴い、読み出しポインタ（ａｕｄｉｏ＿ａｄｒ；実線矢印）が書き込みポインタの後を追って移動する。その時々の音声バッファ３０ａの蓄積量Ｄは、書き込みポインタと読み出しポインタとの差分で与えられる。
【００５６】
より具体的には、時間ｔ＝２のとき、書き込みポインタは“２”の位置に、読み出しポインタは“０”の位置にある。従って、蓄積量Ｄは“２”であり、この直後、音声バッファ３０ａから２秒分の音声信号が読み出される。
【００５７】
ｔ=３では、ｔ＝２〜３の１秒間に１秒分の音声信号が書き込まれた結果、書き込みポインタは“３”の位置まで移動している。一方、読み出しポインタは、ｔ＝２〜３の１秒間に２秒分の音声信号が読み出された結果、“２”の位置まで移動している。従って、蓄積量Ｄは“１”であり、この直後、音声バッファ３０ａから１秒分の音声信号が読み出される。
【００５８】
ｔ=４では、ｔ＝３〜４の１秒間に１秒分の音声信号が書き込まれた結果、書き込みポインタは“４”の位置まで移動している。一方、読み出しポインタは、ｔ＝３〜４の１秒間に１秒分の音声信号が読み出された結果、“３”の位置まで移動している。従って、蓄積量Ｄは“１”であり、この直後、音声バッファ３０ａから１秒分の音声信号が読み出される。
【００５９】
次に、再生リスト６８について説明する。図５を参照して、再生リスト６８は、ＪＰＥＧ欄６８ａ，ＷＡＶＥ欄６８ｂおよびリスト番号欄６８ｃによって構成される。リスト番号欄６８ｃには、リスト番号ｌｉｓｔ［１］，ｌｉｓｔ［２］，…が付与されている。ＪＰＥＧファイルまたはＷＡＶＥファイルがＳＤＲＡＭ８２に格納されたとき、そのファイルの識別子が格納順にリスト番号ｌｉｓｔ［１］，ｌｉｓｔ［２］，…に割り当てられる。
【００６０】
例えば、ＪＰＥＧファイル（識別子：０００１．ｊｐｇ），ＷＡＶＥファイル（識別子：０００１．ｗａｖ），ＷＡＶＥファイル（識別子：０００２．ｗａｖ），ＷＡＶＥファイル（識別子：０００３．ｗａｖ），…がこの順序で受信され、かつＳＤＲＡＭ８２内の該当バッファに格納されたとする。この場合、まずリスト番号ｌｉｓｔ［１］にファイル識別子０００１．ｊｐｇが登録され、次いでリスト番号ｌｉｓｔ［２］にファイル識別子０００１．ｗａｖが登録され、さらにリスト番号ｌｉｓｔ［３］にファイル識別子０００２．ｗａｖが登録され、そしてリスト番号ｌｉｓｔ［４］にファイル識別子０００３．ｗａｖが登録される。
【００６１】
図中に矢印で示された再生ポインタｌｉｓｔ［ｎ］は、リスト番号ｌｉｓｔ［１］，ｌｉｓｔ［２］，…のいずれか１つを指す。再生ポインタｌｉｓｔ［ｎ］の指すリスト番号に割り当てられているファイルが、次の再生対象ファイルとなる。
【００６２】
以上のように構成された監視カメラシステム１０の動作を、図１の全体構成図，図６〜図８に示されたサーバＣＰＵ４２の処理フロー図，図９〜図１２に示された端末ＣＰＵ８６の処理フロー図，および図１３のタイミングチャート図に基づき以下に説明する。
【００６３】
図１を参照して、この監視カメラシステム１０は、例えばオフィスビルや集合住宅などで用いられる。カメラ１２は、例えば玄関や通路に設置され、サーバ１６およびモニタ１４は、例えば管理室に設けられる。なお、カメラ１２は１台とは限らない。複数のカメラ１２を設置する場合、各カメラ１２，１２，…は、図示しないマルチプレクサを介してＤ１−Ｉ／Ｆ（ＩＮ）回路２０に接続される。
【００６４】
ネットワーク５８は、例えばイントラネットやインターネットであり、端末６０は、ネットワーク５８に接続可能な任意の場所に設置される。従って、ユーザは、管理室内でだけでなく、端末６０を通じて任意の場所で監視画像を閲覧することができる。
【００６５】
サーバ１６では、リアルタイム再生モードや記録再生モードなど、複数の動作モードが準備されており、いずれかのモードが選択される。リアルタイム再生モードが選択された場合、カメラ１２によって撮影された監視画像およびマイク５２により捕捉された音声は、一旦バッファに蓄積された後再生され、モニタ１４およびスピーカ５６を通じてリアルタイム的に表示および出力される。
【００６６】
記録再生モードでは、監視画像および音声は、上記のようにしてリアルタイム的に表示および出力されると同時に、必要に応じて圧縮および／または符号化処理が施され、ＨＤ２６ａに記録される。ＨＤ２６ａに記録された監視画像および音声は、必要なときに読み出され、再生される。以下の説明では、サーバ１６はリアルタイム再生モードで動作しているとする。
【００６７】
監視画像および音声をリアルタイム再生しているサーバ１６に対し、端末６０は、現在再生中の監視画像および音声の閲覧要求を発行する。閲覧要求は、１秒間隔で送信される複数のファイル要求で構成される。サーバ１６は、要求されたファイルを端末６０に送信する。
【００６８】
ファイル要求には、ＪＰＥＧ要求およびＷＡＶＥ要求の２種類があり、端末６０は、基本的には、ＪＰＥＧ要求およびＷＡＶＥ要求を交互に送信する。ただし、ネットワーク５８の伝送帯域幅が狭くなって、要求されたファイルの一部しか伝送できない状況が生じると、予定されたＪＰＥＧ要求はスキップされ、代わりにＷＡＶＥ要求が送信される。これにより、狭帯域状況下では、サーバ１６からＪＰＥＧファイルよりもＷＡＶＥファイルが優先的に送信される。その結果、端末６０では、監視画像のコマ落ちは生じるものの、音声を途切れさせることなく再生し続けることができる。
【００６９】
具体的には、サーバ１６のＣＰＵ４２は、以下のような処理を行う。図６を参照して、サーバ１６が起動されると、ステップＳ１でＣＰＵ４２は、初期処理を実行する。初期処理には、例えばＳＤＲＡＭコントローラ２８にＳＤＲＡＭ３０の初期化を指示したり、ネットワークコントローラ４４にネットワーク５８との接続確立を指示したり、再生モードを選択したり、といった処理が含まれる。この実施例では、リアルタイム再生モードが選択される。
【００７０】
ステップＳ３でＣＰＵ４２は、Ｄ１−Ｉ／Ｆ（ＩＮ）回路２０から画像信号が入力されたか否かを判定する。判定結果が肯定的であればステップＳ５に、否定的であればステップＳ７に進む。ステップＳ５でＣＰＵ４２は、ＳＤＲＡＭコントローラ２８を通じ、画像信号をＳＤＲＡＭ３０内の画像バッファ３０ｂに格納する。その後、ステップＳ７に進む。
【００７１】
ステップＳ７でＣＰＵ４２は、音声Ｉ／Ｆ回路４０から音声データが入力されたか否かを判定する。判定結果が肯定的であればステップＳ９に、否定的であればステップＳ１１に進む。ステップＳ９でＣＰＵ４２は、ＳＤＲＡＭコントローラ２８を通じ、音声データをＳＤＲＡＭ３０内の音声バッファ３０ａに格納する。その後、ステップＳ１１に進む。
【００７２】
ステップＳ１１でＣＰＵ４２は、ＳＤＲＡＭコントローラ２８に命じて、画像バッファ３０ｂに蓄積されている画像信号をＤ１−Ｉ／Ｆ（ＯＵＴ）回路２２からモニタ１４へ、音声バッファ３０ａに蓄積されている音声データを音声Ｉ／Ｆ回路４０を通じて音声Ｄ／Ａコンバータ３８へ、それぞれ出力させる。こうして、モニタ１４に監視画像が表示され、同時にスピーカ５６から音声が出力される。
【００７３】
ステップＳ１３でＣＰＵ４２は、ネットワークコントローラ４４が端末６０からＪＰＥＧ要求を受信したか否かを判定する。判定結果が肯定的であればステップＳ１５に、否定的であればステップＳ１７に進む。ステップＳ１５では、端末６０にＪＰＥＧファイルを送信する。その後、ステップＳ１７に進む。なお、ＪＰＥＧファイル送信処理の詳細については後述する。
【００７４】
ステップＳ１７でＣＰＵ４２は、ネットワークコントローラ４４が端末６０からＷＡＶＥ要求を受信したか否かを判定する。判定結果が肯定的であればステップＳ１９に、否定的であればステップＳ２１に進む。ステップＳ１９では、端末６０にＷＡＶＥファイルを送信する。その後、ステップＳ２１に進む。なお、ＷＡＶＥファイル送信処理の詳細については後述する。
【００７５】
ステップＳ２１でＣＰＵ４２は、処理を継続するか否かを判断する。判断結果が肯定的であれば、ステップＳ３に戻って上記と同様の処理を繰り返し、否定的であれば、処理を終了する。
【００７６】
次に、上記ステップＳ１５のＪＰＥＧファイル送信処理について説明する。図７を参照して、ステップＳ４１でＣＰＵ４２は、ＪＰＥＧコーデック１８に対し、現在モニタ１４側へ出力中のフレームと対応する画像信号の符号化を実行するように指示する。応じてＪＰＥＧコーデック１８は、ＳＤＲＡＭコントローラ２８を通じてＳＤＲＡＭ３０から該当画像信号を読み出し、読み出された画像信号をＪＰＥＧ方式に従って符号化する。符号化画像信号は、ＳＤＲＡＭ３０に一時保持される。
【００７７】
ステップＳ４３でＣＰＵ４２は、符号化画像信号をもとにＪＰＥＧファイルを生成する。その際、符号化画像信号の末尾にタイムスタンプ（ｗａｖｅ＿ｔｉｍｅ）が添付される。
【００７８】
ここでタイムスタンプは、端末６０側で再生処理を行うとき画像と音声との同期を取るのに用いられる。具体的には、端末６０には、画像および音声をリアルタイムで再生するモードや、画像および音声をリアルタイムで再生しつつ記録し、後で記録画像および記録音声を再生するモードなど複数のモードが準備されている。どのモードで再生を行う場合も、端末６０は、画像信号の末尾に添付されたタイムスタンプに基づいて画像信号の出力タイミングを検出し、画像信号を音声信号に同期させて出力する。
【００７９】
ステップＳ４５でＣＰＵ４２は、ネットワークコントローラ４４を通じ、ネットワーク５８経由で端末６０にＪＰＥＧファイルを送信する。そして、上位階層のルーチンに復帰する。
【００８０】
次に、上記ステップＳ１９のＷＡＶＥファイル送信処理について説明する。図８を参照して、ステップＳ６１でＣＰＵ４２は、ネットワークコントローラ４４によって受信されたＷＡＶＥ要求が初期要求か否かを判定する。なお、１回目のＷＡＶＥ要求にはフラグが添付されおり、判定は、このフラグを検知することにより行われる。ステップＳ６１の判定結果が肯定的であればステップＳ６３に、否定的であればステップＳ６５に進む。
【００８１】
ステップＳ６３でＣＰＵ４２は、変数ｗａｖ＿ｔｉｍｅおよび変数ａｕｄｉｏ＿ａｄｒの各々に“０”をセットする。なお、ｗａｖ＿ｔｉｍｅ，ａｕｄｉｏ＿ａｄｒ等の変数の値は、例えばＣＰＵ４２内のレジスタに保持される。その後、ステップＳ６５に進む。
【００８２】
ステップＳ６５でＣＰＵ４２は、音声バッファ３０ａの蓄積量Ｄを算出する。蓄積量Ｄは、書き込みポインタと読み出しポインタ（ａｕｄｉｏ＿ａｄｒ）との差分で与えられる（図４参照）。
【００８３】
ステップＳ６７でＣＰＵ４２は、算出された蓄積量Ｄが第１閾値よりも大きいか否かを判定する。判定結果が肯定的であればステップＳ６９に進み、否定的であればステップＳ６５に戻る。
【００８４】
ステップＳ６９でＣＰＵ４２は、変数ａｕｄｉｏ＿ａｄｒに｛（ａｕｄｉｏ＿ａｄｒ）+Ｄ｝をセットする。ステップＳ７１では、ＳＤＲＡＭコントローラ２８を通じ、音声バッファ３０ａから全ての音声データを読み出す。ステップＳ７３では、読み出された音声データの時間長Ｔを算出する。時間長Ｔは、読み出された音声データの量Ｄをその音声データのビットレートで除算することにより得られる。
【００８５】
ステップＳ７５でＣＰＵ４２は、変数ｗａｖ＿ｔｉｍｅに｛（ｗａｖ＿ｔｉｍｅ）+Ｔ｝をセットする。ステップＳ７７では、ステップＳ７１で読み出された音声データにタイムスタンプ（ｗａｖ＿ｔｉｍｅ）等の付加情報を添付することにより、ＷＡＶＥファイルを生成する。ステップＳ７９では、ネットワークコントローラ４４を通じ、ネットワーク５８経由で端末６０にＷＡＶＥファイルを送信する。その後、上位階層のルーチンに復帰する。
【００８６】
一方、端末６０のＣＰＵ８６は、以下のような処理を行う。なお、端末６０にもいくつかの再生モードが準備されているが、この実施例ではリアルタイム再生を行う場合のみを説明する。
【００８７】
図９を参照して、端末６０が起動されると、ステップＳ９１でＣＰＵ８６は、初期処理を実行する。初期処理には、例えばＳＤＲＡＭコントローラ８０にＳＤＲＡＭ８２の初期化を指示したり、ネットワークコントローラ６４にネットワーク５８との接続確立を指示したり、といった処理が含まれる。
【００８８】
ステップＳ９３でＣＰＵ８６は、Ｐｌａｙキー８４ａが押下されたか否かを判定する。判定結果が肯定的であればステップＳ９５に、否定的であればステップＳ９９に進む。ステップＳ９５では、ファイル取得タスクを起動する。ステップＳ９７では、再生タスクを起動する。その後、ステップＳ９９に進む。なお、ファイル取得タスクおよび再生タスクについては後述する。
【００８９】
ステップＳ９９でＣＰＵ８６は、他の処理を実行する。ステップＳ１０１では、ファイル取得タスクおよび再生タスクが実行中か否かを判定する。判定結果が否定的、すなわち少なくとも一方のタスクが終了されていれば、ステップＳ９３に戻る。判定結果が肯定的、すなわち両タスクがまだ実行中であれば、ステップＳ９９に戻る。
【００９０】
次に、上記のファイル取得タスクについて説明する。図１０を参照して、ステップＳ１１１でＣＰＵ８６は、変数ｎｕｍ，変数ｗａｖ＿ｎおよび変数ｊｐｇ＿ｎの各々に“１”をセットする。ステップＳ１１３では、変数ｊｐｇ＿ｎに対応するＪＰＥＧファイルを要求する。ステップＳ１１５では、変数ｊｐｇ＿ｎに｛（ｊｐｇ＿ｎ）＋１｝をセットする。ステップＳ１１７では、ネットワークコントローラ６４によるファイル取得が完了したか否かを判定する。判定結果が否定的であればステップＳ１１９に、肯定的であればステップＳ１２１に進む。
【００９１】
ステップＳ１１９でＣＰＵ８６は、Ｓｔｏｐキー８４ｂが押下されたか否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１１７に戻る。
【００９２】
ステップＳ１２１でＣＰＵ８６は、ネットワークコントローラ６４が取得したＪＰＥＧファイルから画像信号を抽出し、抽出された画像信号を画像バッファ８２ｂに格納する。ステップＳ１２３では、変数ｎｕｍに｛ｎｕｍ＋１｝をセットする。ステップＳ１２５では、画像バッファ８２ｂに格納したものと同じ画像信号をＨＤ７８ａに保存する。
【００９３】
ステップＳ１２７でＣＰＵ８６は、再生リスト６８（図５参照）のリスト番号ｌｉｓｔ［ｎｕｍ］に該当ファイルの識別子｛（ｊｐｇ＿ｎ）．ｊｐｇ｝を登録する。ステップＳ１２９では、Ｓｔｏｐキー８４ｂが押下されたか否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１３１に進む。
【００９４】
図１１を参照して、ステップＳ１３１でＣＰＵ８６は、変数ｗａｖ＿ｎの値が“１”であるか否かを判定する。判定結果が肯定的であればステップＳ１３３に、否定的であればステップＳ１３５に進む。ステップＳ１３３では、初期ＷＡＶＥ要求を送信し、その後ステップＳ１３５に進む。初期ＷＡＶＥ要求には、１回目のＷＡＶＥ要求であることを示すフラグが添付される。
【００９５】
ステップＳ１３５では、前回の要求送信から１秒経過したが否かを判定する。判定結果が肯定的であればステップＳ１３７に進み、否定的であれば待機する。
【００９６】
ステップＳ１３７では、変数ｗａｖ＿ｎに対応するＷＡＶＥファイルつまり｛（ｗａｖ＿ｎ）．ｗａｖ｝を要求する。その後、ステップＳ１３９に進む。ステップＳ１３９では、変数ｗａｖ＿ｎに｛（ｗａｖ＿ｎ）＋１｝をセットする。ステップＳ１４１では、ネットワークコントローラ６４によるファイル取得が完了したか否かを判定する。判定結果が否定的であればステップＳ１４３に、肯定的であればステップＳ１４５に進む。
【００９７】
ステップＳ１４３でＣＰＵ８６は、Ｓｔｏｐキー８４ｂが押下されたか否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１４１に戻る。
【００９８】
ステップＳ１４５でＣＰＵ８６は、ネットワークコントローラ６４が取得したＷＡＶＥファイルから音声データを抽出し、抽出された音声データを音声バッファ８２ａに格納する。ステップＳ１４７では、変数ｎｕｍに｛ｎｕｍ＋１｝をセットする。ステップＳ１４９では、音声バッファ８２ａに格納したものと同じ音声データをＨＤ７８ａに保存する。
【００９９】
ステップＳ１５１でＣＰＵ８６は、再生リスト６８のリスト番号ｌｉｓｔ［ｎｕｍ］に該当ファイルの識別子｛（ｗａｖ＿ｎ）．ｗａｖ｝を登録する。ステップＳ１５３では、音声バッファ８２ａの蓄積量が第３閾値（図３参照）を超えたか否かが判定される。判定結果が肯定的であればステップＳ１１３に戻り、否定的であればステップＳ１５５に進む。
【０１００】
ステップＳ１５５でＣＰＵ８６は、Ｓｔｏｐキー８４ｂが押下されたか否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１３１に戻る。
【０１０１】
次に、上記の再生タスクについて説明する。図１２を参照して、ステップＳ１８１でＣＰＵ８６は、再生ポインタｌｉｓｔ［ｎ］の変数ｎに１をセットする。再生ポインタｌｉｓｔ［ｎ］は、再生テーブル６８（図５参照）中の複数のリスト番号６８ｃ（ｌｉｓｔ［１］，ｌｉｓｔ［２］，…）のいずれか１つを指す。
【０１０２】
ステップＳ１８３でＣＰＵ８６は、音声バッファ８２ａの蓄積量が第２閾値（図３参照）を超えているか否かを判定する。判定結果が肯定的であればステップＳ１８５に進み、否定的であれば待機する。
【０１０３】
ステップＳ１８５では、再生ポインタｌｉｓｔ［ｎ］の指すリスト番号６８ｃにＪＰＥＧファイルの識別子が登録されているか否かを判定する。判定結果が肯定的であればステップＳ１８７に、否定的であればステップＳ１９１に進む。
【０１０４】
ステップＳ１８７でＣＰＵ８６は、登録識別子に該当するＪＰＥＧファイルを画像バッファ８２ｂから読み出す。ステップＳ１８９では、変数ｎに（ｎ＋１）をセットする。その後、ステップＳ１９１に進む。
【０１０５】
ステップＳ１９１でＣＰＵ８６は、再生ポインタｌｉｓｔ［ｎ］の指すリスト番号６８ｃが空欄か否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１９３に進む。
【０１０６】
ステップＳ１９３でＣＰＵ８６は、再生ポインタｌｉｓｔ［ｎ］の指すリスト番号６８ｃの登録識別子に該当するＷＡＶＥファイルを音声バッファ８２ａから読み出す。ステップＳ１９５では、変数ｎに（ｎ＋１）をセットする。ステップＳ１９７では、Ｓｔｏｐキー８４ｂが押下されたか否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１９９に進む。
【０１０７】
ステップＳ１９９では、音声再生が完了したか否かを判定する。判定結果が肯定的であればステップＳ２０１に進み、否定的であればステップＳ１９７に戻る。ステップＳ２０１では、再生ポインタｌｉｓｔ［ｎ］の指すリスト番号６８ｃが空欄か否かを判定する。判定結果が肯定的であれば本タスクを終了し、否定的であればステップＳ１８５に戻る。
【０１０８】
上記フロー図による説明から明らかなように、基本動作として端末６０は、ユーザによる再生指示すなわちＰｌａｙキー８４ａ押下があると、最初ＪＰＥＧ要求を送信し、続いて１秒後にＷＡＶＥ要求を送信する。以降、再生対象ファイルを取得し終えるまで、ＪＰＥＧ要求およびＷＡＶＥ要求を１秒間隔で交互に送信し続ける。
【０１０９】
サーバ１６は、ＪＰＥＧ要求を受信したときＪＰＥＧファイルを、ＷＡＶＥ要求を受信したときＷＡＶＥファイルを、ネットワーク５８経由で端末６０に送信する。送信されるＪＰＥＧファイルには、そのとき再生中の画像信号が格納される。送信されるＷＡＶＥファイルには、そのとき音声バッファ３０ａに蓄積されている全音声データが格納される。
【０１１０】
端末６０は、ＪＰＥＧファイルを受信すると、受信されたＪＰＥＧファイルから画像信号を取り出し、取り出された画像信号を画像バッファ８２ｂに格納する。ＷＡＶＥファイルを受信すると、受信されたＷＡＶＥファイルから音声データを取り出し、取り出された音声データを音声バッファ８２ａに格納する。
【０１１１】
音声バッファ８２ａの蓄積量が第２閾値に達すると、端末６０は、画像バッファ８２ｂおよび音声バッファ８２ａに格納されている画像信号および音声データを読み出して再生する処理を開始する。再生処理では、端末６０は、画像信号の末尾に付されたタイムスタンプ（ｗａｖｅ＿ｔｉｍｅ）に基づき、再生画像の出力タイミングを再生音声のそれに同期させる。
【０１１２】
特徴的な動作として端末６０は、上記のようなファイル取得処理および再生処理作を行う際、２回目以降のＪＰＥＧ要求の送信タイミングにおいてもし音声バッファ８２ａの蓄積量が第３閾値（これを第２閾値の８割とする）に達していなければ、このＪＰＥＧ要求をスキップする。従って、最初のＪＰＥＧ要求が送信されてから音声バッファ８２ａの蓄積量が第３閾値に達するまでの期間は、複数のＷＡＶＥ要求を立て続けに送信することとなる。
【０１１３】
再生指示直後におけるＪＰＥＧ要求およびＷＡＶＥ要求の送信タイミング，音声バッファ８２ａの蓄積状況，および音声の出力状況が、図１３のタイミングチャートに示されている。第２閾値は、５秒分の音声信号に相当する量に設定されている。なお、具体的には、ＷＡＶＥ音声のレートが７８６７ｂｙｔｅ／ｓｅｃであれば、｛７８６７×５｝ｂｙｔｅが第２閾値である。簡単のため、以下では、音声バッファ８２ａへの蓄積量を“５秒分”のように記述する。第３閾値は、４秒分（＝５×０．８）となる。
【０１１４】
図１３を参照して、端末６０は、時間ｔ＝０のとき最初のＪＰＥＧ要求を送信する。ｔ=２のとき、１つ目のＪＰＥＧファイルの受信を完了し、これと同時に最初のＷＡＶＥ要求を送信する。
【０１１５】
ｔ＝３では、１つ目のＷＡＶＥファイルの受信を完了する。１つ目のＷＡＶＥファイルには２秒分の音声信号が含まれており、従って、この時点での音声バッファ８２ａの蓄積量は２秒分となる。これは第３閾値すなわち４秒分に満たないので、２回目のＪＰＥＧ要求はスキップされ、代わりに２回目のＷＡＶＥ要求が送信される。
【０１１６】
ｔ＝３．５では、２つ目のＷＡＶＥファイルの受信を完了する。２つ目のＷＡＶＥファイルには、１秒分の音声信号が含まれている。なお、この時点では、前回の要求送信から０．５秒しか経過していないため、まだ３回目のＷＡＶＥ要求は送信されない。
【０１１７】
ｔ＝４では、音声バッファ８２ａの蓄積量は３秒分であり、まだ第３閾値に満たない。よって、２回目のＪＰＥＧ要求はスキップされ、代わりに３回目のＷＡＶＥ要求が送信される。
【０１１８】
ｔ＝４．５では、３つ目のＷＡＶＥファイルの受信を完了する。３つ目のＷＡＶＥファイルには１秒分の音声信号が含まれており、この時点で音声バッファ８２ａの蓄積量は４秒分となる。すなわち、蓄積量が第３閾値に達したので、ここで２回目のＪＰＥＧ要求が送信される。
【０１１９】
ｔ=６．５では、２つ目のＪＰＥＧファイルの受信を完了し、これと同時に４回目のＷＡＶＥ要求を送信する。
【０１２０】
ｔ＝８では、４つ目のＷＡＶＥファイルの受信を完了する。４つ目のＷＡＶＥファイルには２．５秒分の音声信号が含まれており、この時点で音声バッファ８２ａの蓄積量は６．５秒分となる。しかし、蓄積量が５秒分を越えた時点で、音声バッファ８２ａから１つ目のＷＡＶＥファイルと対応する２秒分の音声信号が読み出される。その結果、蓄積量は３．５秒分となる。これは第３閾値を下回っており、従って３回目のＪＰＥＧ要求はスキップされ、代わりに５回目のＷＡＶＥ要求が送信される。
【０１２１】
ｔ＝８．５では、５つ目のＷＡＶＥファイルの受信を完了する。５つ目のＷＡＶＥファイルには１．５秒分の音声信号が含まれており、この時点で音声バッファ８２ａの蓄積量は５秒分となる。しかし、音声バッファ８２ａから２つ目のＷＡＶＥファイルと対応する１秒分の音声信号が読み出されるので、直後、蓄積量は４となる。これは第３閾値に達しており、従って３回目のＪＰＥＧ要求が送信される。
【０１２２】
続くｔ=８．５〜１２．５の期間では、上記ｔ=４．５〜８．５の期間で行われたものと同様の処理が繰り返される。以降も、音声バッファ８２ａの蓄積量が第２閾値の近傍で推移している限り、同様の処理が繰り返される。
【０１２３】
ただし、ネットワーク５８の帯域幅が狭くなるなどの原因で、音声バッファ８２ａの蓄積量が持続的に第２閾値を大きく下回る状況が生じると、上記ｔ=０〜４．５の期間で行われたものと同様の処理、すなわちＪＰＥＧ要求をスキップしてＷＡＶＥ要求を立て続けに送信する処理が行われる。これにより、音声バッファ８２ａの蓄積量が速やかに第２閾値近傍まで押し上げられ、その結果、再生音声の途切れは回避される。
【０１２４】
以上の説明から明らかなように、この実施例では、端末ＣＰＵ８６は、ネットワークコントローラ６４を通じ、ネットワーク５８経由でサーバ１６から画像信号および音声信号をそれぞれ周期的に取得する。取得された画像信号よび音声信号は、ＳＤＲＡＭ８２の画像バッファ８２ｂおよび音声バッファ８２ａにそれぞれ蓄積される。ＣＰＵ８６は、音声バッファ８２ａの蓄積量が第３閾値に満たないとき、ネットワークコントローラ６４による画像信号の取得周期を長くする。
【０１２５】
これにより、ネットワーク５８の帯域幅が狭くなったとき端末６０において再生音声の途切れが生じる可能性が低減される。この場合、画像の品質低下は生じるものの、音声が途切れたときよりもユーザの不快感は少ない。また、サーバ１６は、ただ要求された信号を端末６０に送信するだけなので、サーバ１６の負担が増すこともない。
【０１２６】
より具体的には、端末６０は、サーバ１６からネットワーク５８経由でＪＰＥＧファイルおよびＷＡＶＥファイルをそれぞれ周期的に取得することにより動画像および音声のリアルタイム再生を行う。その際、端末６０がＪＰＥＧファイルの取得周期を制御することにより音声の途切れを回避する。この場合、音声の途切れを回避するための制御処理をクライアント側が行うので、サーバ１６は特別な制御処理を行う必要がなく、サーバ１６として単なるＨＴＴＰサーバを用いることができる。
【０１２７】
つまり、ＨＴＴＰサーバおよびクライアントからなる一般的なシステムにおいて、ＨＴＴＰサーバからクライアントへＪＰＥＧファイルおよびＷＡＶＥファイルを周期的に送信し、かつクライアント側がネットワークの帯域幅に応じてＪＰＥＧ送信周期の制御を行うことにより、狭帯域時に生じる音声の途切れを回避しつつ動画像および音声のリアルタイム再生を行うことができる。
【図面の簡単な説明】
【０１２８】
【図１】この実施例の監視カメラシステムの構成を示すブロック図である。
【図２】サーバＳＤＲＡＭの構成例を示すメモリマップ図である。
【図３】端末ＳＤＲＡＭの構成例を示すメモリマップ図である。
【図４】音声バッファに対する書込処理および読出処理を説明するための図解図である。
【図５】再生リストを示す図解図である。
【図６】サーバＣＰＵによる処理の一部を示すフロー図である。
【図７】サーバＣＰＵによる処理の他の一部を示すフロー図である。
【図８】サーバＣＰＵによる処理のその他の一部を示すフロー図である。
【図９】端末ＣＰＵによる処理の一部を示すフロー図である。
【図１０】端末ＣＰＵによる処理の他の一部を示すフロー図である。
【図１１】端末のＣＰＵによる処理のその他の一部を示すフロー図である。
【図１２】端末のＣＰＵによる処理さらにその他の一部を示すフロー図である。
【図１３】端末における要求の送信タイミング，音声バッファの蓄積状況，および音声の出力状況を示すタイミングチャート図である。
【符号の説明】
【０１２９】
１０…監視カメラシステム
１２…カメラ
１４，９０…モニタ
１６…サーバ
５２…マイク
５６，９４…スピーカ
６０…端末
【図１】
2005123854.tif 000003
【図２】
2005123854.tif 000004
【図３】
2005123854.tif 000005
【図４】
2005123854.tif 000006
【図５】
2005123854.tif 000007
【図６】
2005123854.tif 000008
【図７】
2005123854.tif 000009
【図８】
2005123854.tif 000010
【図９】
2005123854.tif 000011
【図１０】
2005123854.tif 000012
【図１１】
2005123854.tif 000013
【図１２】
2005123854.tif 000014
【図１３】
2005123854.tif 000015