(57)【要約】【課題】シリアルインターフェイスで接続されてデータの送受を行う機器において、自機から送信するデータの送信データ量と、相手機器において受信されるデータの受信データ量とが不整合となることによって発生する不都合を回避できるようにする。【解決手段】受信データ量検出部１３１により、制御部１３からのクロック信号によって定められる単位時間当たりの受信データ量を検出する。受信データ量検出部１３１の検出結果に基づいて、自機のクロックジェネレータ１４からのクロック信号によって定められる単位時間当たりに送信すべきデータの送信データ量を決定し、単位時間当たりの送信データ量を調整する。【選択図】図１
2008252727.tif 000002
【特許請求の範囲】
【請求項１】
規格上において単位時間当たりに伝送されるデータ量が定められているシリアルインターフェイスを通じてデータの送受信を行う送受信装置であって、
前記単位時間を定めるためのクロック信号を生成するクロック生成手段と、
前記シリアルインターフェイスを通じて送信されてきて自機において受信する受信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの受信データ量を検出する検出手段と、
前記シリアルインターフェイスを通じて相手機器に送信する送信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの送信データ量を、前記検出手段で検出された前記受信データ量に基づいて決定する決定手段と
を備えることを特徴とする送受信装置。
【請求項２】
請求項１に記載の送受信装置であって、
前記シリアルインターフェイスを通じてデータを送信する相手機器の受信バッファの使用容量を取得する取得手段を備え、
前記決定手段は、前記取得手段により取得された前記受信バッファの使用容量をも考慮して、前記送信データ量を決定することを特徴とする送受信装置。
【請求項３】
規格上において単位時間当たりに伝送されるデータ量が定められているシリアルインターフェイスを通じてデータの送受信を行う送受信装置においての送信データのデータ量調整方法であって、
前記シリアルインターフェイスを通じて送信されてきて自機において受信する受信データについての、自機のクロック信号生成手段からのクロック信号によって定められる前記単位時間当たりの受信データ量を検出する検出ステップと、
前記シリアルインターフェイスを通じて相手機器に送信する送信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの送信データ量を、前記検出ステップにおいて検出した前記受信データ量に基づいて決定する決定ステップと
を備えることを特徴とするデータ量調整方法。
【請求項４】
請求項３に記載のデータ量調整方法であって、
前記シリアルインターフェイスを通じてデータを送信する相手機器の受信バッファの使用容量を取得する取得ステップを備え、
前記決定ステップにおいては、前記取得ステップにおいて取得した前記受信バッファの使用容量をも考慮して、前記送信データ量を決定することを特徴とするデータ量調整方法。
【請求項５】
規格上において単位時間当たりに伝送されるデータ量が定められているシリアルインターフェイスを通じてデータの送受信を行う送受信装置に搭載されたコンピュータで実行される送信データのデータ量調整プログラムであって、
前記シリアルインターフェイスを通じて送信されてきて自機のインターフェイス手段を通じて受信する受信データについて、自機のクロック信号生成手段からのクロック信号によって定められる前記単位時間当たりの受信データ量を検出する検出ステップと、
自機のインターフェイス手段と前記シリアルインターフェイスを通じて相手機器に送信する送信データについての、自機のクロック信号生成手段からのクロック信号によって定められる前記単位時間当たり送信データ量を、前記検出ステップにおいて検出した前記受信データ量に基づいて決定する決定ステップと
を実行させることを特徴とするコンピュータ読み取り可能なデータ量調整プログラム。
【請求項６】
請求項５に記載のデータ量調整プログラムであって、
前記シリアルインターフェイスを通じてデータを送信する相手機器の受信バッファの使用容量を自機のインターフェイス手段を通じて取得する取得ステップを備え、
前記決定ステップにおいては、前記取得ステップにおいて取得した前記受信バッファの使用容量をも考慮して、前記送信データ量を決定することを特徴とするコンピュータ読み取り可能なデータ量調整プログラム。
【請求項７】
第１の送受信装置と第２の送受信装置とが、規格上において単位時間当たりに伝送されるデータ量が定められているシリアルインターフェイスを通じて接続されて構成される通信システムであって、
前記第１の送受信装置は、
前記単位時間を定めるためのクロック信号を生成するクロック生成手段と、
前記シリアルインターフェイスを通じて送信されてきて自機において受信する受信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの受信データ量を検出する検出手段と、
前記シリアルインターフェイスを通じて相手機器に送信する送信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの送信データ量を、前記検出手段で検出された前記受信データ量に基づいて決定する決定手段と
を備えることを特徴とする通信システム。
【請求項８】
請求項７に記載の通信システムであって、
前記第１の送受信装置は、
前記シリアルインターフェイスを通じてデータを送信する相手機器の受信バッファの使用容量を取得する取得手段を備え、
前記決定手段は、前記取得手段により取得された前記受信バッファの使用容量をも考慮して、前記送信データ量を決定するものであり、
前記第２の送受信装置は、
前記シリアルインターフェイスを通じて前記第１の送受信装置から送信されてくる受信データを蓄積する受信バッファと、
前記受信バッファの使用容量を検出して前記制御装置に提供する提供手段と
を備えることを特徴とする通信システム。
【請求項９】
請求項７または請求項８に記載の通信システムであって、
前記第１の送受信装置は、
通信ネットワークに接続され、前記通信ネットワークを通じて送信されてくる前記第２の送受信装置に送信すべき音声データを受信する受信手段と、
前記通信ネットワークに接続され、前記第２の送受信装置から送信されてくる音声データを前記通信ネットワークを通じて目的とする相手先に送信するようにする送信手段と
を備え、
前記第２の送受信装置は、
前記第１の送受信装置から送信された音声信号に応じた音声を放音するための受話器と、
前記第１の送信装置を介して前記通信ネットワークに送出すべき音声を集音して電気信号に変換する送話器と
を備えることを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、ＵＳＢ（Universal Serial Bus）などのシリアルインターフェイスを通じてデータの送受信を行う装置、当該装置で用いられる送信データ量の調整方法、当該装置のコンピュータによって実行される送信データ量の調整プログラム、および、シリアルインターフェイスを通じて接続されて構成される通信システムに関する。
【背景技術】
【０００２】
インターネットやイントラネットのようなＩＰ（Internet Protocol）ネットワークの普及に伴い、ＶｏＩＰ（Voice over IP）技術を利用して、ＩＰネットワーク上で音声通話を行うようにするいわゆるＩＰ電話が普及し始めている。このＩＰ電話は、デジタル符号化した音声信号を一定の時間毎に区切ってパケット化して送受するものである。ＩＰ電話は、回線使用効率が高いＩＰネットワークを使うことにより、長距離電話料金を安くすることができるなどのメリットがある。
【０００３】
このようなＩＰ電話を安価にしかも簡単に利用できるようにするために、特許文献１には、送受話用ハンドセット付きパーソナルコンピュータについての技術が開示されている。この特許文献１に記載の発明は、通信ラインに接続されたパーソナルコンピュータに、送受話用のハンドセットを接続して構成するものである。
【０００４】
この場合、パーソナルコンピュータは、通信ラインを介して受信した音声データをハンドセットに対して出力すると共に、ハンドセットからの音声データを通信ラインに対して出力するための音声ドライバを備えたものであり、当該パーソナルコンピュータとハンドセットとは、シリアルインターフェイスであるＲＳ−２３２Ｃインターフェイスによって接続されるものである。
【０００５】
この特許文献１に記載の発明を用いることにより、パーソナルコンピュータとハンドセットとにより高機能のＩＰ電話機を構成することができ、専用のＩＰ電話機を用いなくても、安価に、しかも使い勝手のよいＩＰ電話機を構成し、ＩＰ電話を簡単に利用することができるようにされる。
【０００６】
なお、上記の特許文献１は、以下の通りである。
【特許文献１】特開平１０−３４０１８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、上述した特許文献１に記載の発明のように、パーソナルコンピュータとハンドセットとをシリアルインターフェイスで接続して、両機器間で音声データ等を送受する場合、両機器で用いるクロック信号が、送受されるデータに対して完全には同じものとはならないために、所定の単位時間当たりに送信されるデータ量と受信されるデータ量とが一致しない場合が発生する可能性がある。
【０００８】
例えば、図５に示すように、パーソナルコンピュータ１００とハンドセット２００とがシリアルインターフェイスであるＵＳＢで接続され、両機器間で音声データ等が送受可能なシステムにおいて、パーソナルコンピュータ１００から音声データを送信し、これをハンドセット２００で受信する場合を考える。
【０００９】
パーソナルコンピュータ１００は、クロックジェネレータ１０３から供給されるクロック信号に基づいて動作する音声ドライバ１０１と、ＵＳＢインターフェイス（以下、ＵＳＢＩ／Ｆと略称する。）１０２とを備えている。そして、パーソナルコンピュータ１００は、通信ネットワークを介して送信されてくるパケット化された音声データを受信し、音声ドライバ１０１においてパケット分解し、これをＵＳＢインターフェイス（以下、ＵＳＢＩ／Ｆと略称する。）１０２に供給する。ＵＳＢＩ／Ｆ１０２においては、これに供給された音声データについて、図５（Ａ）に示すように１ｍｓ（ミリ秒）毎に同期フレームであるＳＯＦ（Start of Frame）を付加して送出するようにしている。
【００１０】
一方、ハンドセット２００は、クロックジェネレータ２０３から供給されるクロック信号に基づいて動作するＵＳＢＩ／Ｆ２０１と、コーデック２０２とを備えている。そして、ハンドセット２００においては、ＵＳＢＩ／Ｆ２０１を通じてパーソナルコンピュータ１００からの音声データを受信して、これをコーデック２０２のバッファメモリ２０２Ｍに蓄積すると共に、コーデック２０２がバッファメモリ２０２Ｍに蓄積された音声データを順次にデコードして再生用の音声データを形成し、これをアナログ音声信号に変換して図示しない受話器に供給することにより、通信ネットワークを通じて送信されてきた音声データに応じた音声が、当該受話器から放音するようにされる。
【００１１】
しかし、図５に示すように、パーソナルコンピュータ１００と、ハンドセット２００とでは、それぞれにクロック信号を生成して用いている。このため、ハンドセット２００においては、パーソナルコンピュータ１００からの音声データに対して、パーソナルコンピュータ１００で用いられたクロック信号と同じタイミングを提供するクロック信号を生成するようにするものの、実際にはある程度の誤差が生じてしまい、各フレームにおいて８バイト検出すべきデータが、７バイトしか検出できなかったり、逆に、本来のフレームを超えて９バイト検出してしまったりする場合があると考えられる。
【００１２】
このように、本来一致すべき送信側の機器から送信するデータの送信データ量と受信側の機器において受信するデータの受信データ量とが一致しない場合には、再生すべき音声データが欠落していわゆる音切れの原因になったり、再生すべき音声データが重複していわゆる音の間延びの原因になったりするなどの不都合の発生原因になる可能性があると考えられる。
【００１３】
また、パーソナルコンピュータ１００において通信ネットワークを通じて伝送されてくる音声データの受信量と、ハンドセット２００における音声データの再生量とが大きく隔たってしまったのでは、送信されてくる音声データをハンドセット２００を通じて適切な処理速度で再生することができないために、いわゆる音声遅延を発生させてしまい、自然な通話ができなくなってしまう可能性があると考えられる。
【００１４】
以上のことに鑑み、この発明は、シリアルインターフェイスで接続されてデータの送受を行う機器において、自機から送信するデータの送信データ量と、相手機器において受信されるデータの受信データ量とが不整合となることによって発生する不都合を回避できるようにすることを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するため、請求項１に記載の発明の送受信装置は、
規格上において単位時間当たりに伝送されるデータ量が定められているシリアルインターフェイスを通じてデータの送受信を行う送受信装置であって、
前記単位時間を定めるためのクロック信号を生成するクロック生成手段と、
前記シリアルインターフェイスを通じて送信されてきて自機において受信する受信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの受信データ量を検出する検出手段と、
前記シリアルインターフェイスを通じて相手機器に送信する送信データについての、前記クロック信号生成手段からの前記クロック信号によって定められる前記単位時間当たりの送信データ量を、前記検出手段で検出された前記受信データ量に基づいて決定する決定手段と
を備えることを特徴とする。
【００１６】
この請求項１に記載の発明の送受信装置によれば、単位時間当たりに伝送されるデータ量が定められたインターフェイスを通じてデータの送受を行うが、検出手段により、自機のクロック生成手段からのクロック信号によって定められる単位時間当たりの受信データ量が検出される。すなわち、自機で発生させるクロック信号によって定められる単位時間において、相手先の機器はどれだけデータを送出しているか（データを処理しているか）が検出される。
【００１７】
そして、決定手段により、検出手段で検出された受信データ量に基づいて、自機のクロック生成手段からのクロック信号によって定められる単位時間当たりに送信すべきデータの送信データ量が決定される。すなわち、受信データ量によって分かる相手先機器のデータ処理量に応じて単位時間当たりの送信データ量を決定し、これに応じてデータを送出するようにする。
【００１８】
これにより、相手先機器における自機のクロック信号に基づく単位時間当たりのデータ処理量に応じて、単位時間当たりの送信データ量を決めることができるので、自機から送信するデータの送信データ量と、相手先機器で受信されるデータの受信データ量との間に不整合を生じさせないようにすることができ、データ量の不整合に起因する問題を回避することができるようにされる。
【００１９】
また、請求項２に記載の発明の送受信装置は、請求項１に記載の送受信装置であって、
前記シリアルインターフェイスを通じてデータを送信する相手機器の受信バッファの使用容量を取得する取得手段を備え、
前記決定手段は、前記取得手段により取得された前記受信バッファの使用容量をも考慮して、前記送信データ量を決定することを特徴とする。
【００２０】
この請求項２に記載の送受信装置によれば、取得手段を通じて、相手先機器において受信データを一時記憶する受信バッファの使用容量が取得される。この取得される受信バッファの使用量をも考慮して、決定手段により、単位時間当たりの送信データ量が決定される。
【００２１】
これにより、相手先機器の受信バッファの使用容量をも考慮して、送信データ量を適切に決定することができるようにされる。より具体的には、自機から送出するデータが相手先機器において処理されるまでに生じる遅延を最小にするように、相手先機器に送信するデータの送信データ量を決定することができるようにされる。従って、送受されるデータが音声データである場合には、いわゆる音声遅延を発生させることがないようにされる。
【発明の効果】
【００２２】
この発明によれば、シリアルインターフェイスで接続されてデータの送受を行う機器において、自機から送信するデータの送信データ量と、相手機器において受信するデータの受信データ量とが不整合となることによって発生する不都合を回避することができる。
【発明を実施するための最良の形態】
【００２３】
以下、図を参照しながら、この発明による装置、方法、プログラム及びシステムの一実施の形態についてついて説明する。以下に説明する実施の形態においては、インターネットに接続することができるようにされたパーソナルコンピュータ１と電話通信を行うための送話器と受話器を備えたハンドセット２とが、ＵＳＢＩ／Ｆを通じて接続されて構成されたＩＰ電話通信システムに、この発明による通信システムを適用した場を例にして説明する。この場合、当該パーソナルコンピュータ１が、この発明による装置、方法、プログラムが適用されたものである。
【００２４】
［システム構成及び機器構成について］
図１は、この発明の一実施の形態が適用されたＩＰ電話通信システムを説明するためのブロック図である。図１に示すように、この実施の形態の通信システムは、パーソナルコンピュータ１とハンドセット２とのそれぞれはＵＳＢＩ／Ｆ機能を備え、ＵＳＢＩ／Ｆケーブル３を通じて接続されて構成されたものである。
【００２５】
ここで、ＵＳＢＩ／Ｆは、１ｍｓ（ミリ秒）に８ｂｙｔｅ（バイト）のデータを伝送する区間を１フレームとし、音声データ等のデータを１ｍｓ毎のフレーム単位にまとめて送受することができるものである。この場合、クロック信号はＵＳＢＩ／Ｆを通じて伝送されることはない。クロック信号はパーソナルコンピュータ１とハンドセット２とでそれぞれ独自に生成されるものを使用するようになっている。
【００２６】
そして、パーソナルコンピュータ１は、図１に示すように、音声ドライバ１１、ＵＳＢＩ／Ｆ１２、制御部１３、クロックジェネレータ１４を備えたものである。音声ドライバ１１は、インターネットを通じて送信されてくるパケット化された音声データをパケット分解して音声データを抽出し、これをＵＳＢＩ／Ｆ１２に供給するものである。また、音声ドライバ１１は、ＵＳＢＩ／Ｆ１２から供給された送信対象の音声データから送信用のパケット化した音声データを生成して、これを通信ネットワークに送出するものである。
【００２７】
なお、ＶｏＩＰ技術が用いられて、インターネットを通じて送受されるパケット化された音声データは、例えば１パケットが２０ｍｓ（ミリ秒）とされた比較的に大きな単位で送受されるものである。
【００２８】
ＵＳＢＩ／Ｆ１２は、音声ドライバ１１からの受信した音声データの供給を受けて、これを８ｂｙｔｅ／ｍｓとなるフレーム単位にまとめてハンドセット２に送信するものである。また、ＵＳＢＩ／Ｆ１２は、ハンドセット２からのフレーム単位の音声データを受信して、これを音声ドライバ１１に供給するものである。
【００２９】
制御部１３は、音声ドライバ１１、ＵＳＢＩ／Ｆ１２などのパーソナルコンピュータ１の各部を制御するものであり、図示しないが、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、不揮発性メモリなどがＣＰＵバスを通じて接続されて構成されたマイクロコンピュータである。また、制御部１３は、例えば、ＶＣＸＯ（Voltage Controlled Crystal Oscillator）などの発振器が用いられて形成されたクロックジェネレータ１４からのクロック信号の各部への供給制御をも行うことができるものである。
【００３０】
一方、ハンドセット２は、ＵＳＢＩ／Ｆ２１、コーデック２２、Ｄ／Ａコンバータ２３、アンプ２４、受話器（スピーカー）２５、送話器（マイクロホン）２６、アンプ２７、Ａ／Ｄコンバータ２８、制御部２９、クロックジェネレータ３０を備えたものである。
【００３１】
ＵＳＢＩ／Ｆ２１は、フレーム単位に送信されてくるパーソナルコンピュータ１から８ｂｙｔｅ／ｍｓ単位（フレーム単位）の音声データを取り込んで、これをコーデック２２に供給するものである。また、ＵＳＢＩ／Ｆ２１は、コーデック２２からの送信対象の音声データの供給を受けて、これを８ｂｙｔｅ／ｍｓ単位（フレーム単位）の音声データにまとめてパーソナルコンピュータ１に供給するものである。
【００３２】
コーデック２２は、受信バッファとして用いられるバッファメモリ２２Ｍを備え、ＵＳＢＩ／Ｆ２１を通じて供給されるパーソナルコンピュータ１からの音声データをバッファメモリ２２Ｍに一時記憶し、このバッファメモリ２２に一時記憶した音声データをデコード処理して再生用の音声データを形成し、これをＤ／Ａコンバータ２３に供給するものである。この場合、バッファメモリ２２Ｍは、ＦＩＦＯ（First In First Out）方式で用いられるものである。また、コーデック２２は、Ａ／Ｄコンバータ２８からの送信対象の音声データの供給を受けて、これをエンコードし、エンコード後の送信対象の音声データをＵＳＢＩ／Ｆ２１に供給するものである。
【００３３】
Ｄ／Ａコンバータ２３は、コーデック２２からの再生用の音声データを再生用のアナログ音声信号に変換し、当該アナログ音声信号をアンプ２４を通じて受話器２５に供給するものである。アンプ２４は、Ｄ／Ａコンバータ１３からのアナログ音声信号のレベルを増幅するものであり、受話器２４はこれに供給されたアナログ音声信号に応じた音声を放音するものである。
【００３４】
また、送話器２６は、ユーザーから発生られる音声等を集音して電気信号（アナログ音声信号）に変換し、これをアンプ２７を通じてＡ／Ｄコンバータ２８に供給するものである。アンプ２７は、送話器２６からのアナログ音声信号を増幅するものであり、Ａ／Ｄコンバータ２８は、アンプ２７からのアナログ音声信号をデジタル音声信号に変換して、これをコーデック２２に供給するものである。
【００３５】
また、制御部２９は、図示しないがＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリＣＰＵバスを通じて接続されて構成されたマイクロコンピュータである。また、制御部２９は、例えば、ＶＣＸＯ（Voltage Controlled Crystal Oscillator）などの発振器が用いられて形成されたクロックジェネレータ３０からのクロック信号の各部への供給制御をも行うことができるものである。
【００３６】
そして、インターネットを通じて送信されてくる自機宛てのパケット化された音声データは、パーソナルコンピュータ１において受信され音声ドライバ１１において分解されて音声データが抽出され、これがＵＳＢＩ／Ｆ１２に供給される。ＵＳＢＩ／Ｆ１２は、音声ドライバ１１からの音声データを８ｂｙｔｅ／ｍｓとなるフレーム単位にまとめて、ハンドセット２に送信する。
【００３７】
ハンドセット２のＵＳＢＩ／Ｆ２１は、パーソナルコンピュータ１からのフレーム単位の音声データを受信して取り込み、これをコーデック２２に供給する。コーデック２２は、ＵＳＢＩ／Ｆ２１からの音声データヲバッファメモリ２２Ｍに一時記憶し、これを順次に読み出してデコードし、再生用の音声データを形成して、これをＤ／Ａコンバータ２３に供給する。
【００３８】
Ｄ／Ａコンバータ２３は、これに供給された再生用の音声データをアナログ音声信号に変換し、これをアンプ２４を通じて受話器２５に供給する。これにより、インターネットを通じて送信されてきた自機宛てのパケット化された音声データに応じた音声が、受話器２５から放音するようにされる。
【００３９】
一方、ユーザーの話音声などの音声は、送話器２６によって集音され、ここで電気信号に変換されてアンプ２７で増幅された後、Ａ／Ｄコンバータ２８に供給される。Ａ／Ｄコンバータ２８は、これに供給されたアナログ音声信号をデジタル音声信号に変換して、コーデック２２に供給する。
【００４０】
コーデック２２は、Ａ／Ｄコンバータ２８からの音声データをエンコードして送信用の音声データを形成し、これをＵＳＢＩ／Ｆ２１に供給する。ＵＳＢＩ／Ｆ２１は、コーデック２２からの音声データを８ｂｙｔｅ／ｍｓとなるフレーム単位にまとめて、パーソナルコンピュータ１に送信する。
【００４１】
パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２は、ハンドセット２からのフレーム単位の音声データを受信して取り込み、これを音声ドライバ１１に供給する。音声ドライバ１１は、ＵＳＢＩ／Ｆ１２からの送信用の音声データをインターネットに送出するためにパケット化した送信用データを形成し、これをインターネットに送出する。
【００４２】
このようにして、パーソナルコンピュータ１とハンドセット２とによりＩＰ電話機が構成され、インターネットを通じて音声データの送受を行って電話通信（通話）を行うことができるようにされる。
【００４３】
ところで、図１に示しように構成されるＩＰ電話通信システムにおいては、クロック信号はＵＳＢＩ／Ｆを通じて伝送されず、パーソナルコンピュータ１とハンドセット２とでそれぞれ独立して生成されるクロック信号を用いるようにしている。このため、両機器で生成されるクロック信号間に誤差が生じ、パーソナルコンピュータ１から送出されるデータの送信データ量と、これを受信するハンドセット２における受信データ量とにずれが生じる場合があると考えられる。
【００４４】
しかし、機器間においてクロック信号同士の誤差が生じても、パーソナルコンピュータ１内、ハンドセット２内においては、共通のクロック信号が用いられているので、機器内でクロック信号の誤差が生じることはない。このため、所定の単位時間において、ハンドセット２において、ＵＳＢＩ／Ｆ２１を通じて受け付けて再生される音声データのデータ量と、送話器を通じて集音され、ＵＳＢＩ／Ｆ２１を通じてパーソナルコンピュータ１に送信される音声データのデータ量とは等しいことになる。
【００４５】
そこで、この実施の形態のパーソナルコンピュータ１は、ハンドセット２から送信されてきた音声データの単位時間当たりの受信データ量を検出し、この受信データ量に応じて、自機からハンドセット２に送信する単位時間当たりの音声データの送信データ量を調整することにより、パーソナルコンピュータ１から送出するデータの送信データ量と、これを受信するハンドセット２における受信データ量とにずれが生じないようにしている。なお、この実施の形態における単位時間は、１フレーム期間、すなわち、１ｍｓである。
【００４６】
さらに、この実施の形態のパーソナルコンピュータ１は、ＵＳＢＩ／Ｆを通じて、ハンドセット２のコーデック２２が有する受信データ用のバッファメモリ２２Ｍの使用容量（どの位使用されているか）を検出し、このバッファメモリ２２Ｍの使用容量をも考慮して、音声データの送信データ量を調整するようにしている。
【００４７】
バッファメモリ２２Ｍの使用容量をも考慮して、音声データの送信データ量を調整するのは、ハンドセット２のバッファメモリ２２Ｍに適切に再生されるべき音声データが蓄積されていなければ、音声データの再生が滞ることにもなり、パーソナルコンピュータ１で受信される音声データに比べて、ハンドセット２においての音声データの再生処理が遅延し、いわゆる音声遅延が大きくなり好ましくないためである。
【００４８】
このように、ハンドセット２からの受信データ量と、ハンドセット２のバッファメモリ２２Ｍの使用容量とを考慮して、パーソナルコンピュータ１からハンドセット２への送信データ量を調整することにより、いわゆる音飛びなどの再生音声に係る不都合を防止することができると共に、音声遅延を最小限に抑えて、良好に電話通信（通話）を行うことができるようにしている。
【００４９】
［送信データ量調整機能１について］
図２は、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１が有する送信データ量の調整機能１について説明するための図である。この送信データ量の調整機能１は、パーソナルコンピュータ１がＵＳＢＩ／Ｆを通じてハンドセット２から受信するデータのデータ量に応じて、パーソナルコンピュータ１からハンドセット２に送信するデータのデータ量を調整するものである。
【００５０】
図２に示すように、パーソナルコンピュータ１の制御部１３は、受信データ量検出部１３１と、送信データ量検出部１３２とを備えたものである。そして、上述もしたように、パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２とハンドセット２のＵＳＢＩ／Ｆ２１との間において、データが送受されることになるが、まず、パーソナルコンピュータ１の制御部１３は、ハンドセット２から送信され、パーソナルコンピュータ１においてＵＳＢＩ／Ｆ１を通じて受信する受信データの１フレーム内のデータ量（受信データ量）を検出する。
【００５１】
すなわち、上述もしたように、ＵＳＢＩ／Ｆ間においては、１ｍｓに８ｂｙｔｅのデータを伝送する区間を１フレームとしてデータが送受される。このため、パーソナルコンピュータ１の制御部１３の受信データ量検出部１３１は、クロックジェネレータ１４からのクロック信号に基づいてＵＳＢＩ／Ｆ１２において受信されるハンドセット２からの受信データを監視して、１フレーム（１ｍｓ）単位の区間毎に受信データ量を検出する。
【００５２】
ここで、受信データ量検出部１３１において、１フレーム当たりに７バイトのデータしか検出できない場合には、ハンドセット２で用いているクロック信号は、パーソナルコンピュータ１で用いているクロック信号よりも、１フレーム当たりに１ｂｙｔｅ分少ないことが分かる。逆に、受信データ量検出部１３１において、１フレーム当たりに９バイトのデータを検出した場合には、ハンドセット２で用いているクロック信号は、パーソナルコンピュータ１で用いているクロック信号よりも、１フレーム当たりに１ｂｙｔｅ分多いことが分かる。
【００５３】
そして、受信データ検出部１３１は、検出した１フレーム当たりの受信データ量を送信データ決定部１３２に通知する。送信データ決定部１３２は、受信データ検出部１３１からの１フレーム当たり受信データ量に基づいて、１フレーム当たりにパーソナルコンピュータ１から送出すべきデータ量（送信データ量）を決定し、１フレーム毎に決定したデータ量のデータを送出するように、ＵＳＢＩ／Ｆ１２を制御する。
【００５４】
これにより、パーソナルコンピュータ１とハンドセット２とで用いるクロック信号に誤差が生じている場合であっても、パーソナルコンピュータ１からハードディスク２に送信するデータの１フレーム当たりのデータ量を調整して、音切れや音の間延びなどの不都合を生じさせることが無いようにすることができる。
【００５５】
［送信データ量調整機能２について］
図３は、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１が有する送信データ量の調整機能２について説明するための図である。図２を用いて説明した送信データ量の調整機能１により、パーソナルコンピュータ１からハンドセット２に送信するデータのデータ量と、ハンドセット２において処理されるデータのデータ量とを同じにすることができるので、音切れなどの不都合を発生させないようにすることが可能となる。
【００５６】
しかし、本来、１フレーム当たりに８バイト送信すべきデータを、１フレームに例えば７バイトしか送信できない場合には、ハンドセット２のコーデック２２のバッファメモリ２２Ｍに適切な量の音声データを蓄積できずに、パーソナルコンピュータ１が受信した音声データについて、ハンドセット２で処理遅延が発生し、パーソナルコンピュータ１が受信した音声データを、ハンドセット２を通じて適切なタイミングで処理できなくなってしまう場合があると考えられる。
【００５７】
そこで、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１は、ハンドセット２のコーデック２２のバッファメモリ（受信バッファメモリ）２２Ｍの使用容量をも考慮して、パーソナルコンピュータ１からハンドセット２に送信するデータのデータ量を調整する受信データ量調整機能２をも備えたものである。
【００５８】
図３に示すように、パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２は、例えばバッファメモリ１２Ｍを備え、ハンドセット２のＵＳＢＩ／Ｆ２１を通じて提供されるコーデック２２のバッファメモリ２２Ｍの使用容量を示す情報を一時記憶することができるようにしている。この場合、バッファメモリ２２Ｍの総記憶容量を示す情報の提供をも受けるようにしておくことにより、ハンドセット２のバッファメモリ２２Ｍの空き容量をも把握することができる。
【００５９】
また、パーソナルコンピュータ２の制御部１３は、図３に示すように、受信データ量検出部１３１、送信データ量決定部１３２に加えて、バッファ使用量検出部１３３をも備えたものである。バッファ使用量検出部１３３は、ＵＳＢＩ／Ｆ１２のバッファメモリ１２Ｍに一時記憶される情報に従って、ハンドセット２のコーデック２２で用いられるバッファメモリ２２Ｍの使用容量を検出することができるようにしている。
【００６０】
そして、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１は、ＵＳＢＩ／Ｆ１２の機能を用いて、例えば、受信データの１フレーム毎に、ハンドセット２のコーデック２２のバッファメモリ２２Ｍの使用容量を取得することができるものである。この場合、ハンドセット２のＵＳＢＩ／Ｆ２１は、例えば、パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２からの要求に応じて、１フレーム毎にコーデック２２のバッファメモリ２２Ｍの使用容量を取得して、パーソナルコンピュータ１に通知することができるものである。
【００６１】
パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２は、ハンドセット２からのバッファメモリ２２Ｍの使用容量が通知された場合には、これを、例えば、ＵＳＢＩ／Ｆ１２内に有するバッファメモリ１２Ｍに一時記憶する。そして、制御部１３のバッファ使用量検出部１３３は、現時点におけるハンドセット２のバッファメモリ２２Ｍの使用容量を検出し、これを送信データ決定部１３２に通知する。
【００６２】
送信データ量決定部１３２には、上述したように、受信データ量検出部１３１からの自機における１フレーム当たりの受信データ量も供給されるので、送信データ量決定部１３２は、１フレーム当たりの受信データ量に基づいて送信データ量を決定し、さらに、ハンドセット２のバッファメモリ２２Ｍの使用容量とを考慮して、パーソナルコンピュータ１からハンドセット２に送信する音声データの１フレーム当たりの送信データ量を調整して決定する。そして、上述もしたように、制御部１３は、送信データ量決定部１３２での決定結果に応じて、ＵＳＢＩ／Ｆ１２を制御し、１フレーム当たりの送信データ量を調整する。
【００６３】
これにより、例えば、受信データ量検出部１３１において検出した１フレーム当たりの受信データ量が７ｂｙｔｅであるが、ハンドセット２のバッファメモリ２２Ｍの使用容量が、総記憶容量の半分以下である場合には、バッファメモリ２２Ｍの使用可能容量に未だ余裕があるので、送信データ量決定部１３２は、本来の送信データ量よりも多く、例えば１フレーム当たり８バイトを送信するようにすることができる。
【００６４】
また、例えば、受信データ量検出部１３１において検出した１フレーム当たりの受信データ量が９ｂｙｔｅであるが、ハンドセット２のバッファメモリ２２Ｍの使用容量が、総記憶容量の７割以上である場合には、バッファメモリ２２Ｍの使用可能容量が少なくなってきているので、送信データ量決定部１３２は、１フレーム当たり８バイトを送信するようにすることができる。
【００６５】
このように、送信データ量決定部１３２は、受信データ量検出部１３１からの１フレーム当たりの受信データ量と、ハンドセット２のバッファメモリの使用容量とに基づいて、音切れなどの不都合を発生させることなく、しかも、音声遅延を発生させずに、パーソナルコンピュータ１が受信した音声データをハンドセット２において適切なタイミングで処理できるように、パーソナルコンピュータ１から送出する音声データの１フレーム当たりのデータ量を決定するようにしている。
【００６６】
なお、ここでは、図３を用いて説明したように、パーソナルコンピュータ１のＵＳＢＩ／Ｆ１２が備えるバッファメモリ１２Ｍを介して、ハンドセット２のバッファメモリ２２Ｍの使用容量を検出するようにしたが、これに限るものではない。ハンドセット２からのバッファメモリ２２Ｍの使用容量等の情報を、ＵＳＢＩ／Ｆ１２を通じて受信して制御部１３に供給し、制御部１３内のＲＡＭなどに一時記憶してこれを用いるようにするようにしてももちろんよい。
【００６７】
［送信データ量の調整処理について］
図２を用いて説明した送信データ量の調整機能１を用いることにより、いわゆる音切れなどの不都合を防止することができ、また、図３を用いて説明した送信データ量の調整機能２を用いることにより、いわゆる音声遅延を防止することができる。すなわち、送信データ量の調整機能１、２のいずれか一方を用いるだけでも音切れ、または、音声遅延を防止することが可能である。
【００６８】
しかし、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１においては、上述した送信データの調整機能１と調整機能２との両方を用いることによって、音切れなどの防止と音声遅延の防止との両方に対応するようにしている。以下、この実施の形態のＩＰ電話通信システムのパーソナルコンピュータ１で行われる送信データ量の調整処理について説明する。
【００６９】
図４は、この実施の形態のパーソナルコンピュータ１において行われる送信データ量の調整処理について説明する。図４に示す処理は、パーソナルコンピュータ１がハンドセット２と協働して電話通信を開始するようにした場合に、主に、制御部１３において実行される処理である。
【００７０】
まず、制御部１３の受信データ量検出部１３１は、自機のクロックジェネレータ１４において発生させるクロック信号を用いて、単位時間当たりの受信データ量を検出する（ステップＳ１）。ここで用いられる単位時間は、上述もしたように、１フレーム期間、すなわち、１ｍｓ（ミリ秒）の期間である。
【００７１】
次に、制御部１３の送信データ量決定部１３２は、ステップＳ１において、受信データ量検出部１３１が検出した単位時間当たりの受信データ量と同じになるように、当該単位時間当たりに送信すべき送信データ量を決定して、送信データ量を調整する（ステップＳ２）。すなわち、１ｍｓ当たりに送信するデータ量を、ハンドセット２からの音声データの受信データ量と同じになるようにする。
【００７２】
この後、制御部１３のバッファ使用量検出部１３３は、ハンドセット２のコーデック２２のバッファメモリ２２Ｍの使用容量を監視するようにし、その時点のハンドセット２のバッファメモリ２２Ｍの使用容量を検出して、これを送信データ量決定部１３２に供給する（ステップＳ３）。
【００７３】
そして、送信データ量決定部１３２は、バッファ使用量検出部１３３からのバッファメモリ２２Ｍの使用量から、バッファメモリ２２の空き容量が少ないか否か（使用容量が多いか否か）を判断する（ステップＳ４）。上述もしたように、ハンドセット２からバッファメモリ２２Ｍの総記憶容量を示す情報の提供をも受けておくことにより、バッファメモリ２２Ｍの空き容量をも正確に把握することができるようにされる。
【００７４】
ステップＳ４の判断処理において、空き容量が多い（使用容量が少ない）と判断したときには、送信データ量決定部１３２は、ステップＳ２において決定して調整するようにした送信データ量を増加させるようにする（ステップＳ５）。また、ステップＳ４の判断処理において、空き容量が少ない（使用容量が多い）と判断したときには、送信データ量決定部１３２は、ステップＳ２において決定して調整するようにした送信データ量を減少させるようにする（ステップＳ６）。
【００７５】
なお、ステップＳ５において送信データ量をどの位増加させるか、また、ステップＳ６において送信データ量をどの位減少させるかは、例えば、バッファメモリ２２Ｍの使用容量、あるいは、空き容量に応じて、予め決めておくようにすればよい。また、バッファメモリ２２Ｍの使用容量、あるいは、空き容量に加えて、ステップＳ２で決定した送信データ量をも考慮して、増加させる送信データ量や減少させる送信データ量を決定するようにしてもよい。
【００７６】
また、ハンドセット２のバッファメモリ２２Ｍの使用容量の取り得る範囲が、ある程度限られている場合などにおいては、増加させる送信データ量や減少させる送信データ量を、１ｂｙｔｅづつ、あるいは、２ｂｙｔｅづつというように予め固定的に決めておくようにしてもよい。
【００７７】
そして、ステップＳ５の処理の後、または、ステップＳ６の処理の後においては、調整された送信データ量に従って、パーソナルコンピュータ１からハンドセット２にデータが送信するようにされる。そして、制御部１３は、通話が終了したか否かを判断し（ステップＳ７）、終了していないと判断した時には、ステップＳ１からの処理を繰り返すようにする。また、ステップＳ７の判断処理において、通話が終了したと判断したときには、図４に示す処理を終了する。
【００７８】
このように、この実施の形態のパーソナルコンピュータ１においては、ハンドセット２から送信され自機において受信するデータの単位時間当たりの受信データ量と、ハンドセット２のバッファメモリ２２Ｍの使用容量に基づいて、パーソナルコンピュータ１からハンドセット２に送信するデータの単位時間当たりの送信データ量を制御することができるので、音切れや音声遅延を発生させないようにすることができる。
【００７９】
なお、図２、図３に示した受信データ量検出部１３１の機能や送信データ量決定部１３２の機能、図３に示したバッファ使用量検出部１３３の機能は、制御部１３において実行されるプログラム（ソフトウェア）によっても実現することができる。
【００８０】
従って、図４を用いて説明した処理を行うプログラムを作成し、これをインターネット等の通信ネットワークを通じてハンドセット２が接続されたパーソナルコンピュータに提供することにより、あるいは、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスクなどの種々の記録媒体を用いてハンドセット２が接続されたパーソナルコンピュータに提供することにより、送信データ量を適切に調整する機能を種々のパーソナルコンピュータに後から搭載することもできる。
【００８１】
また、上述した実施の形態においては、予め決められる単位時間を１ｍｓ（ミリ秒）である場合を例にして説明したが、これに限るものではない。例えば、ＵＳＢＩ／Ｆを通じてデータを送受する場合には、１パケット毎にＳＯＦ（Start Of Frame）と呼ばれる同期フレームが付加するようにされるが、ＳＯＦから次のＳＯＦまでを１単位区間とし、このような単位区間毎に受信データ量を検出して、これに応じて単位区間毎の送信データ量を調整するようにしてもよい。もちろん、その他の適宜の時間区間を単位時間とすることも可能である。
【００８２】
また、上述した実施の形態においては、ＵＳＢＩ／Ｆを通じて、パーソナルコンピュータ１とハンドセット２とが接続される場合を例にして説明したが、これに限るものではない。規格上、単位時間当たりに伝送されるデータ量が定められている種々のシリアルインターフェイスを通じて機器間を接続する場合に、この発明を適用することができる。
【００８３】
また、上述した実施の形態においては、ＩＰ電話通信システムにこの発明を適用した場合を例にして説明したが、これに限るものではない。すなわち、送受されるデータは音声データに限るものではない。少なくとも２つの機器間において、種々のデータを送受する種々の通信システムにこの発明を適用することができる。
【図面の簡単な説明】
【００８４】
【図１】この発明の一実施の形態が適用されたＩＰ電話通信システムを説明するためのブロック図である。
【図２】図１に示したパーソナルコンピュータ１が有する送信データ量の調整機能１を説明するためのブロック図である。
【図３】図１に示したパーソナルコンピュータ１が有する送信データ量の調整機能２を説明するためのブロック図である。
【図４】図１に示したパーソナルコンピュータ１において行われる送信データ量の調整処理について説明するためのフローチャートである。
【図５】パーソナルコンピュータとハンドセットとで構成されるＩＰ電話通信システムの一例を説明するための図である。
【符号の説明】
【００８５】
１…パーソナルコンピュータ、１１…音声ドライバ、１２…ＵＳＢＩ／Ｆ、１３…制御部、１４…クロックジェネレータ、１３１…受信データ量検出部、１３２…送信データ量決定部、１３３…バッファ使用量検出部、２…ハンドセット、２１…ＵＳＢＩ／Ｆ、２２…コーデック、２２Ｍ…バッファメモリ、２３…Ｄ／Ａコンバータ、２４…アンプ、２５…受話器（スピーカー）、２６…送話器（マイクロホン）、２７…アンプ、２８…Ａ／Ｄコンバータ、２９…制御部、３０…クロックジェネレータ
【図１】
2008252727.tif 000003
【図２】
2008252727.tif 000004
【図３】
2008252727.tif 000005
【図４】
2008252727.tif 000006
【図５】
2008252727.tif 000007