(57)【要約】【課題】  音声データの遅延を従来より低減することができる音声データ出力装置を提供する。【解決手段】  音声データ出力装置１０は、パケット長Ｌｉで音声データを入力するＡ／Ｄ変換器２０と、パケット長Ｌｏで音声データを出力するパケット生成部５０と、パケット長Ｌｉ及びパケット長Ｌｏの何れの一方も他方の整数倍ではないときにＡ／Ｄ変換器２０によって入力された音声データのデータ量を所定値分の１倍に削減するレート変換部４０及びレート制御部６０とを備え、パケット生成部５０は、レート変換部４０によってデータ量が削減された音声データを出力し、所定値は、パケット長Ｌｏをパケット長Ｌｉで割った値より大きい最小の整数にパケット長Ｌｉを掛けてパケット長Ｌｏを引いた値でパケット長Ｌｉを割った値より大きいものとする。【選択図】  図１
2005315922.tif 000002
【特許請求の範囲】
【請求項１】
第１パケット長で音声データを入力する入力手段と、
第２パケット長で音声データを出力する出力手段と、
前記第１パケット長および前記第２パケット長について、いずれか一方が他方の整数倍ではないときには、前記入力手段によって入力された前記音声データのデータ量を所定値分の１倍に削減するデータ量削減手段と、を備え、
前記出力手段は、前記データ量削減手段によって前記データ量が削減された音声データを前記第２パケット長で出力し、
前記所定値は、前記第２パケット長を前記第１パケット長で割った値よりも大きい値の中で最小の整数に、前記第１パケット長を掛けてから、前記第２パケット長を引いた値により、前記第１パケット長を割った値より大きいことを特徴とする音声データ出力装置。
【請求項２】
前記所定値は、前記条件を満たし、かつ、整数であることを特徴とする請求項１に記載の音声データ出力装置。
【請求項３】
前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値であることを特徴とする請求項１または２に記載の音声データ出力装置。
【請求項４】
前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値の中で最大の整数であることを特徴とする請求項１〜３いずれか１項に記載の音声データ出力装置。
【請求項５】
第１パケット長で音声データを入力する入力ステップと、
第２パケット長で音声データを出力する出力ステップと、
前記第１パケット長および前記第２パケット長について、いずれか一方が他方の整数倍ではないときには、前記入力手段によって入力された前記音声データのデータ量を所定値分の１倍に削減するデータ量削減ステップと、を備え、
前記出力ステップは、前記データ量削減ステップによって前記データ量が削減された音声データを前記第２パケット長で出力し、
前記所定値は、前記第２パケット長を前記第１パケット長で割った値よりも大きい値の中で最小の整数に、前記第１パケット長を掛けてから、前記第２パケット長を引いた値により、前記第１パケット長を割った値より大きいことを特徴とする音声データ出力プログラム。
【請求項６】
前記所定値は、前記条件を満たし、かつ、整数であることを特徴とする請求項５に記載の音声データ出力プログラム。
【請求項７】
前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値であることを特徴とする請求項５または６に記載の音声データ出力プログラム。
【請求項８】
前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値の中で最大の整数であることを特徴とする請求項５〜７いずれか１項に記載の音声データ出力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声データを出力する音声データ出力技術に係り、特に、音声データの遅延の低減に関するものである。
【背景技術】
【０００２】
従来の音声データ出力装置としては、入力した音声データ（以下「入力音声データ」という。）をパケット長を変えて出力するものが知られている（例えば、特許文献１参照。）。
【０００３】
ここで、従来の音声データ出力装置においては、例えば、入力音声データのパケット長を７０サンプルとし、出力する音声データ（以下、「出力音声データ」という。）のパケット長を１２０サンプルとすると、１パケット分の出力音声データを生成するには２パケット分の入力音声データが必要であり、１パケット分の出力音声データを生成したときの入力音声データの余り、即ち２０サンプル（＝７０サンプル×２パケット−１２０サンプル）が次の出力音声データのパケットの生成に使用される。
【特許文献１】特開２０００−２０９２２８号公報(第３頁、第２図)
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の音声データ出力装置においては、上述したように出力音声データのパケット長が入力音声データのパケット長の整数倍ではないときに、１パケット分の出力音声データを生成したときの入力音声データの余りが次の出力音声データのパケットの生成に使用きれるので、音声データに遅延が生じるという問題があった。
【０００５】
本発明は、このような事情に鑑みなされたもので、その目的は、音声データの遅延を従来より低減することができる音声データ出力技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明の音声データ出力装置は、第１パケット長で音声データを入力する入力手段と、第２パケット長で音声データを出力する出力手段と、前記第１パケット長および前記第２パケット長について、いずれか一方が他方の整数倍ではないときには、前記入力手段によって入力された前記音声データのデータ量を所定値分の１倍に削減するデータ量削減手段と、を備え、前記出力手段は、前記データ量削減手段によって前記データ量が削減された音声データを前記第２パケット長で出力し、前記所定値は、前記第２パケット長を前記第１パケット長で割った値よりも大きい値の中で最小の整数に、前記第１パケット長を掛けてから、前記第２パケット長を引いた値により、前記第１パケット長を割った値より大きいことを特徴とする。
【０００７】
この構成により、本発明の音声データ出力装置は、１パケット分の出力音声データを生成したときの入力音声データの余りを従来よりも低減することができるので、音声データの遅延を従来より低減することができる。
【０００８】
また、本発明の音声データ出力装置は、前記所定値は、前記条件を満たし、かつ、整数であることを特徴とする。
【０００９】
この構成により、本発明の音声データ出力装置は、所定値が整数以外の数である場合と比較して、演算量を低減することができる。
【００１０】
また、本発明の音声データ出力装置は、前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値であることを特徴とする。
【００１１】
この構成により、本発明の音声データ出力装置は、所定値が第１パケット長および第２パケット長の最小公倍数を第２パケット長で割った値より大きい場合と比較して、音声データの削減量を低減することができる。
【００１２】
また、本発明の音声データ出力装置は、前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値の中で最大の整数であることを特徴とする。
【００１３】
この構成により、本発明の音声データ出力装置は、所定値が第１パケット長および第２パケット長の最小公倍数を第２パケット長で割った値以下の最大の整数以外の整数である場合と比較して、音声データの遅延をより低減することができる。
【００１４】
また、本発明の音声データ出力プログラムは、第１パケット長で音声データを入力する入力ステップと、第２パケット長で音声データを出力する出力ステップと、前記第１パケット長および前記第２パケット長について、いずれか一方が他方の整数倍ではないときには、前記入力手段によって入力された前記音声データのデータ量を所定値分の１倍に削減するデータ量削減ステップと、を備え、前記出力ステップは、前記データ量削減ステップによって前記データ量が削減された音声データを前記第２パケット長で出力し、前記所定値は、前記第２パケット長を前記第１パケット長で割った値よりも大きい値の中で最小の整数に、前記第１パケット長を掛けてから、前記第２パケット長を引いた値により、前記第１パケット長を割った値より大きいことを特徴とする。
【００１５】
また、本発明の音声データ出力プログラムは、前記所定値は、前記条件を満たし、かつ、整数であることを特徴とする。
【００１６】
また、本発明の音声データ出力プログラムは、前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値であることを特徴とする。
【００１７】
また、本発明の音声データ出力プログラムは、前記所定値は、前記第１パケット長および前記第２パケット長の最小公倍数を前記第２パケット長で割った値以下の値の中で最大の整数であることを特徴とする。
【００１８】
上記の音声データ出力プログラムによれば、上記音声データ出力装置と同様の効果を有するプログラムを提供することができる。
【発明の効果】
【００１９】
以上のように本発明によれば、音声データの遅延を従来よりも低減することができる音声データ出力技術を提供することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施形態について、図面を用いて説明する。
【００２１】
まず、本実施の形態に係る音声データ出力装置の構成について説明する。図１に示すように、音声データ出力装置１０は、入力された音声をＡ／Ｄ変換して第１パケット長であるパケット長Ｌｉの音声データを生成する入力手段としてのＡ／Ｄ変換器２０と、Ａ／Ｄ変換器２０によって生成された音声データを蓄積するバッファ３０と、バッファ３０に蓄積された音声データのサンプリングレートを変換するレート変換部４０と、レート変換部４０によってサンプリングレートが変換された音声データからパケット長Ｌｉより大きい第２パケット長であるパケット長Ｌｏの音声データを生成して外部に出力する出力手段としてのパケット生成部５０と、Ａ／Ｄ変換器２０及びレート変換部４０にサンプリングレートを通知することによってＡ／Ｄ変換器２０及びレート変換部４０のサンプリングレートを制御するレート制御部６０とを備えている。
【００２２】
ここで、レート制御部６０は、パケット長Ｌｏがパケット長Ｌｉの整数倍ではないときにＡ／Ｄ変換器２０によって入力された音声データのデータ量をレート変換部４０がＭ分の１倍に削減するように、Ａ／Ｄ変換器２０にサンプリングレートＲ２を通知し、レート変換部４０にサンプリングレートＲ１及びサンプリングレートＲ２を通知するようになっている。
【００２３】
そして、Ａ／Ｄ変換器２０は、レート制御部６０によって通知されたサンプリングレートＲ２で音声データを生成するようになっている。また、レート変換部４０は、レート制御部６０によって通知されたサンプリングレートＲ２からサンプリングレートＲ１に音声データのサンプリングレートを変換するようになっている。
【００２４】
即ち、レート変換部４０及びレート制御部６０は、データ量削減手段を構成している。なお、上記Ｍは、下記の数式１から数式３までを満たす整数である。ここで、下記の数式における［］は、［］内の値を越えない最大の整数を表すガウス記号である。
【００２５】
また、Ｎは、レート変換部４０によるサンプリングレートの変換が行われないとした場合に、１パケット分の出力音声データを生成するために必要な入力音声データのパケットの個数である。
【００２６】
また、Ｃは、レート変換部４０によるサンプリングレートの変換が行われないとした場合に、音声データの遅延の原因となるサンプル数である。
【００２７】
【数１】
2005315922.tif 000003
【００２８】
【数２】
2005315922.tif 000004
【００２９】
【数３】
2005315922.tif 000005
【００３０】
次に、音声データ出力装置１０の動作について説明する。音声データ出力装置１０の出力音声データを必要とするＶｏＩＰ（Ｖｏｉｃｅｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）のソフトウェア等の外部アプリケーションから音声データ出力装置１０にサンプリングレートＲ１及びパケット長Ｌｏが入力されると、外部アプリケーションから入力されたサンプリングレートＲ１はレート制御部６０に入力され、外部アプリケーションから入力されたパケット長Ｌｏはパケット生成部５０及びレート制御部６０に入力される。
【００３１】
そして、レート制御部６０は、外部アプリケーションから入力されたパケット長Ｌｏが予め設定されているパケット長Ｌｉの整数倍であるとき、音声データに遅延が発生しないと判断して、下記の数式４を満たすサンプリングレートＲ２をＡ／Ｄ変換器２０に通知するとともに、外部アプリケーションから入力されたサンプリングレートＲ１と、数式を満たすサンプリングレートＲ２とをレート変換部４０に通知する。
【００３２】
【数４】
2005315922.tif 000006
【００３３】
一方、レート制御部６０は、外部アプリケーションから入力されたパケット長Ｌｏが予め設定されているパケット長Ｌｉの整数倍ではないとき、予め設定されているパケット長Ｌｉと、外部アプリーケーションから入力されたパケット長Ｌｏとに基づいて上記数式１から数式３までを満たす整数Ｍを求め、下記の数式５を満たすサンプリングレートＲ２をＡ／Ｄ変換器２０に通知するとともに、外部アプリケーションから入力されたサンプリングレートＲ１と、数式５を満たすサンプリングレートＲ２とをレート変換部４０に通知する。
【００３４】
【数５】
2005315922.tif 000007
【００３５】
そして、Ａ／Ｄ変換器２０は、レート制御部６０によって通知されたサンプリングレートＲ２でパケット長Ｌｉの音声データを生成する。
【００３６】
次いで、バッファ３０は、Ａ／Ｄ変換器２０によって生成された音声データを蓄積する。
【００３７】
次いで、レート変換部４０は、バッファ３０に蓄積された音声データのサンプリングレートを、レート制御部６０によって通知されたサンプリングレートＲ２からサンプリングレートＲ１に変換する。
【００３８】
そして、パケット生成部５０は、レート変換部４０によってサンプリングレートが変換された音声データから、外部アプリケーションから入力されたパケット長Ｌｏの音声データを生成して外部に出力する。
【００３９】
例えば、音声データ出力装置１０を用いてＬｉｎｕｘ上でＶｏＩＰを構築する場合について説明する。
【００４０】
Ｌｉｎｕｘの音声機能を使用する際のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）では、音声データの入出力単位を２５６ｂｙｔｅ、５１２ｂｙｔｅ、１０２４ｂｙｔｅ等のように、２５６ｂｙｔｅ以上の２nｂｙｔｅ単位で行うことが要請されている。
【００４１】
また、ＶｏＩＰの標準的な通信プロトコルでは、８ｋＨｚサンプリングのモノラル音声を２０ｍｓｅｃ分を１パケットとして送受信するよう規定されている。ここで、２０ｍｓｅｃ分の音声は、１６０サンプル（＝８ｋＨｚ×２０ｍｓｅｃ）であるから１６ｂｉｔＰＣＭ（Ｐｕｌｓｅ  Ｃｏｄｅ  Ｍｏｄｕｌａｔｉｏｎ）で３２０ｂｙｔｅ分に相当する。
【００４２】
したがって、Ｌｉｎｕｘの音声機能からＶｏＩＰに入力される１パケット分の入力音声データを２５６ｂｙｔｅとすると、レート変換部４０でサンプリングレートの変換を行わない場合、ＶｏＩＰで送受信される１パケット分の出力音声データを生成するためには、図２に示すように、２パケット分の入力音声データが必要であり、１９２ｂｙｔｅ（＝２５６ｂｙｔｅ×２パケット−３２０ｂｙｔｅ）が音声データの遅延要因となる。即ち、レート変換部４０でサンプリングレー
トの変換を行わない場合、１２ｍｓｅｃ（＝１９２ｂｙｔｅ×２０ｍｓｅｃ÷３２０ｂｙｔｅ）の遅延が生じる。
【００４３】
ここで、Ｌｉ＝２５６，Ｌｏ＝３２０であるので、上記数式１から数式３までに基づいて、Ｍは約１．３（＝２５６ｂｙｔｅ／１９２ｂｙｔｅ）より大きい整数となる。
【００４４】
したがって、例えばＭ＝２とする場合、即ち、レート変換部４０でサンプリングレートを２倍に変換する場合、ＶｏＩＰで送受信される１パケット分の出力音声データを生成するためには、図３に示すように、３パケット分の入力音声データが必要であり、６４ｂｙｔｅ（＝２５６ｂｙｔｅ÷２×３パケット−３２０ｂｙｔｅ）が音声データの遅延要因となる。即ち、レート変換部４０でサンプリングレートを２倍に変換する場合、８ｍｓｅｃ（＝６４ｂｙｔｅ×２０ｍｓｅｃ÷３２０ｂｙｔｅ×２）の遅延が生じ、レート変換部４０でサンプリングレートの変換を行わない場合と比較して遅延時間が低減する。
【００４５】
また、例えばＭ＝３とする場合、即ち、レート変換部４０でサンプリングレートを３倍に変換する場合、ＶｏＩＰで送受信される１パケット分の出力音声データを生成するためには、図４に示すように、４パケット分の入力音声データが必要であり、約２１ｂｙｔｅ（＝２５６ｂｙｔｅ÷３×４パケット−３２０ｂｙｔｅ）が音声データの遅延要因となる。即ち、レート変換部４０でサンプリングレートを３倍に変換する場合、４ｍｓｅｃ（＝（２５６ｂｙｔｅ÷３×４パケット−３２０ｂｙｔｅ）×２０ｍｓｅｃ÷３２０ｂｙｔｅ×３）の遅延が生じ、レート変換部４０でサンプリングレートの変換を行わない場合や、レート変換部４０でサンプリングレートを２倍に変換する場合と比較して遅延時間が低減する。
【００４６】
また、例えばＭ＝４とする場合、即ち、レート変換部４０でサンプリングレートを４倍に変換する場合、ＶｏＩＰで送受信される１パケット分の出力音声データを生成するためには、図５に示すように、５パケット分の入力音声データが必要であり、０ｂｙｔｅ（＝２５６ｂｙｔｅ÷４×５パケット−３２０ｂｙｔｅ）が音声データの遅延要因となる。即ち、レート変換部４０でサンプリングレートを４倍に変換する場合、遅延が生じないので、レート変換部４０でサンプリングレートの変換を行わない場合や、レート変換部４０でサンプリングレートを２倍や３倍に変換する場合と比較して遅延時間が低減する。
【００４７】
なお、音声データ出力装置１０は、パケット長Ｌｉ（＝２５６）及びパケット長Ｌｏ（＝３２０）の最小公倍数（＝１２８０）をパケット長Ｌｏで割った値、即ち４（＝１２８０÷３２０）より大きい値をＭとして用いても良いが、４以下の値をＭとして用いれば、４より大きい値をＭとして用いる場合と比較して、音声データの削減量を低減することができる。
【００４８】
特に、音声データ出力装置１０は、上述したように、パケット長Ｌｉ及びパケット長Ｌｏの最小公倍数をパケット長Ｌｏで割った値以下の最大の整数、即ち４をＭとして用いる場合、パケット長Ｌｉ及びパケット長Ｌｏの最小公倍数をパケット長Ｌｏで割った値以下の４以外の整数、即ち２や３をＭとして用いる場合と比較して、音声データの遅延をより低減することができる。
【００４９】
以上に説明したように、音声データ出力装置１０は、１パケット分の出力音声データを生成したときの入力音声データの余りを従来より低減することができるので、音声データの遅延を従来より低減することができる。
【００５０】
なお、上記音声データ出力装置１０は、ハードウェアで機能を実現するようになっているが、ソフトウェアで同様の機能を実現するようになっていても良い。
【００５１】
また、音声データ出力装置１０は、サンプリングレートの変換を行った後に出力パケットの生成を行うようになっているが、出力パケットの生成を行った後にサンプリングレートの変換を行うようになっていても良いし、例えば入力パケットのデータを数個置きに出力パケットにコピーする等してサンプリングレートの変換及び出力パケットの生成を同時に行うようになっていても良い。
【００５２】
また、音声データ出力装置１０は、サンプリングレートの変換によって音声データのデータ量をＭ分の１倍に削減するようになっているが、量子化ビット数を変更することによって音声データのデータ量をＭ分の１倍に削減するようになっていても良いし、入力をステレオにして出力をモノラルにすることによって音声データのデータ量を２分の１倍に削減するようになっていても良い。
【００５３】
また、上記音声データ出力装置１０は、Ｍとして整数を用いるようになっているので、Ｍとして整数以外の数を用いる場合と比較して演算量を低減することができるが、Ｍとして整数以外の数を用いるようになっていても良い。
【００５４】
また、音声データ出力装置１０は、パケット長Ｌｏがパケット長Ｌｉより大きい構成であるが、パケット長Ｌｏがパケット長Ｌｉより小さい構成であっても良い。
【００５５】
なお、本発明は図１に示した装置の一部又は全部の処理機能をプログラムとして構成してコンピュータを用いて実現すること、あるいは図２〜図５で示した処理手順をプログラムとして構成してコンピュータに実行させることができる。また、コンピュータでその各部の処理機能を実現するためのプログラム、あるいはコンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、フレキシブルディスク、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、提供したりすることが可能であり、また、インターネットのような通信ネットワークを介して配布したりすることが可能である。
【産業上の利用可能性】
【００５６】
以上のように、本発明に係る音声データ出力装置は、音声データの遅延を従来より低減することができるという効果を有し、ＶｏＩＰ機器等として有用である。
【図面の簡単な説明】
【００５７】
【図１】本発明の実施形態に係る音声データ出力装置の構成を示すブロック図。
【図２】音声データ出力装置でサンプリングレートの変換を行わない場合の遅延を説明する図。
【図３】音声データ出力装置でサンプリングレートを２倍に変換する場合の遅延を説明する図。
【図４】音声データ出力装置でサーンプリングレートを３倍に変換する場合の遅延を説明する図。
【図５】音声データ出力装置でサンプリングレートを４倍に変換する場合の遅延を説明する図。
【符号の説明】
【００５８】
１０…音声データ出力装置
２０…Ａ／Ｄ変換器
３０…バッファ
４０…レート変換部
５０…パケット生成部
６０…レート制御部
【図１】
2005315922.tif 000008
【図２】
2005315922.tif 000009
【図３】
2005315922.tif 000010
【図４】
2005315922.tif 000011
【図５】
2005315922.tif 000012