(57)【要約】【課題】ネットワーク音楽セッションにおいて自端末でのオーディオ入力から相手端末での当該オーディオ出力までの入出力遅延時間を正確に測定する遅延測定システムの提供。【解決手段】このシステムでは、自端末Ａにおいて、オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間Ｔｉａ、オーディオ信号を伝送開始してから相手端末Ｂで受信されるまでの自端末・相手端末間伝送遅延時間Ｔｎ、相手端末Ｂの受信バッファ部ＢＦｂでオーディオ信号を受信してから出力するまでの相手端末受信バッファリング遅延時間Ｔｂｆｂ、及び、相手端末Ｂのオーディオ再生部ＤＲｏｂでオーディオ信号を入力してから出力するまでの相手端末出力遅延時間Ｔｏｂを取得し、これらの遅延時間を合計し、自端末Ａでオーディオ信号が入力されてから相手端末Ｂのオーディオ再生部ＤＲｏｂより出力されるまでの入出力遅延時間Ｔｔａｂを決定する。【選択図】図２
2014110525.tif 000002
【特許請求の範囲】
【請求項１】
通信ネットワークを介して通信可能に接続された他のセッション端末と共にネットワーク音楽セッションを行うセッション端末において実行される遅延測定方法であって、
オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間を取得する自端末入力遅延取得ステップと、
他のセッション端末においてオーディオ再生部でオーディオ信号を受信バッファ部より入力してから出力するまでの他端末出力遅延時間を取得する他端末出力遅延取得ステップと、
他のセッション端末において受信バッファ部でオーディオ信号を受信してから当該オーディオ信号をオーディオ再生部に入力するまでの他端末受信バッファリング遅延時間を取得する他端末受信バッファリング遅延取得ステップと、
オーディオ信号の伝送を開始してから当該オーディオ信号が他のセッション端末で受信されるまでの自端末・他端末間伝送遅延時間を取得する伝送遅延取得ステップと、
自端末入力遅延取得ステップで取得された自端末入力遅延時間、他端末出力遅延取得ステップで取得された他端末出力遅延時間、他端末受信バッファリング遅延取得ステップで取得された他端末受信バッファリング遅延時間、及び、伝送遅延取得ステップで取得された自端末・他端末間伝送遅延時間を合計し、オーディオ信号が入力されてから他のセッション端末のオーディオ再生部より出力されるまでの自端末・他端末間入出力遅延時間を決定する入出力遅延時間決定ステップと
から成ることを特徴とするネットワーク音楽セッションにおける遅延測定方法。
【請求項２】
通信ネットワークを介して通信可能に接続された他のセッション端末と共にネットワーク音楽セッションを行うセッション端末に設けられた遅延測定装置であって、
オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間を取得する自端末入力遅延取得手段と、
オーディオ信号の伝送を開始してから当該オーディオ信号が他のセッション端末で受信されるまでの自端末・他端末間伝送遅延時間を取得する伝送遅延取得手段と、
他のセッション端末において受信バッファ部でオーディオ信号を受信してから当該オーディオ信号をオーディオ再生部に入力するまでの他端末受信バッファリング遅延時間を取得する他端末受信バッファリング遅延取得手段と、
他のセッション端末においてオーディオ再生部でオーディオ信号を受信バッファ部より入力してから出力するまでの他端末出力遅延時間を取得する他端末出力遅延取得手段と、
自端末入力遅延取得手段により取得された自端末入力遅延時間、伝送遅延取得手段により取得された自端末・他端末間伝送遅延時間、他端末受信バッファリング遅延取得手段により取得された他端末受信バッファリング遅延時間、及び、他端末出力遅延取得手段により取得された他端末出力遅延時間を合計し、オーディオ信号が入力されてから他のセッション端末のオーディオ再生部より出力されるまでの自端末・他端末間入出力遅延時間を決定する入出力遅延時間決定手段と
を具備することを特徴とするネットワーク音楽セッションにおける遅延測定装置。
【請求項３】
自端末・他端末間伝送遅延時間は、他のセッション端末との間で定期的に送受される計測用パケットを利用して計測用パケット送受時刻を監視することにより、最新の値に更新されたものを取得することを特徴とする請求項２に記載のネットワーク音楽セッションにおける遅延測定装置。
【請求項４】
他のセッション端末の受信バッファ部におけるバッファサイズは自動的に或いはユーザ操作に応じて変更可能であって、他端末受信バッファリング遅延時間は、定期的にこのバッファサイズから計算することにより、最新の値に更新されたものを当該他のセッション端末から取得することを特徴とする請求項２又は３に記載のネットワーク音楽セッションにおける遅延測定装置。
【請求項５】
自端末入力遅延時間は、オーディオ出力部において、入力されたオーディオ信号をＡＤ変換乃至符号化することに基づく遅延時間を含み、
他端末出力遅延時間は、他のセッション端末のオーディオ再生部において、入力されたオーディオ信号を復号化乃至ＤＡ変換することに基づく遅延時間を含み、他のセッション端末との接続が確立したときに当該他のセッション端末から取得する
ことを特徴とする請求項２〜４の何れか１項に記載のネットワーク音楽セッションにおける遅延測定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、インターネットなどの通信ネットワークを介して接続された複数の電子音楽端末の間で演奏などの音楽的なセッションを行うネットワーク音楽セッションにおける遅延測定システムに関する。
【背景技術】
【０００２】
従来より、インターネットなどの通信ネットワークを介した楽器の演奏（合奏）やデュエット等の合唱などの音楽的なセッションを可能としたネットワーク音楽セッションが知られている。例えば、特許文献１の合奏システムでは、自端末での演奏に基づく演奏情報を、他端末に送信すると共に、所定時間だけ遅延させて自端末の楽音生成部に供給することにより、自端末での演奏による楽音を両端末において同時に発音させる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１９５９８２号公報
【０００４】
ここで、自端末において演奏楽音を発音させるのに遅延する時間（ΔＴ）は、例えば、ネットワークの往復遅延時間ＲＴＴ（ Round Trip Time）を測定し、測定した往復時間ＲＴＴの値（Ｔ０）から片道のネットワーク遅延時間（Δｔnet ）を求める方法で決定するようにしている（特許文献１：段落[0029]）。また、一般に、２つの端末の間のネットワーク遅延時間は、両端末間でクロック同期を行い、一方の端末から録音入力時のタイムスタンプを付けたパケットを送り、他方の端末で、このパケットの再生出力時に、現在時刻とタイムスタンプの時刻との差分を見る方法で遅延を測定することができる。
【０００５】
また、ネットワーク音楽セッションを行う上で、自分の音が相手まで届くのにかかる遅延時間、或いは、相手の音が自分に届くのにかかる遅延時間を知りたいという要求がある。つまり、ネットワーク音楽セッションのユーザは、相手との遅延がどの程度になるのかは、ネットワークの環境や物理的距離によって異なり、ある一定以上の遅延になると、セッションを行うことが困難なため、遅延時間を確かめてセッション可能かどうかの指標としたいという要求がある。なお、この遅延時間は、一般的に、４０ｍｓぐらいを越えると、演奏がそもそも成立せず、３０ｍｓぐらいであれば、ちょっとつっこみ気味に演奏することで、相手の演奏とぴったり合せることができるが、そういった工夫をすべきかどうかの指標として利用することができる。
【０００６】
しかしながら、ＲＴＴの計測によりネットワーク遅延時間を測定する方法では、ネットワーク以外の遅延が含まれていないため、これでは、自端末の演奏楽音が入力されてから他端末で当該演奏楽音が出力されるまでの遅延時間を正確につかむには不十分である。また、入力時のタイムスタンプと出力時刻との差分を採る方法では、お互いに高い精度でのクロック同期が行われていることが前提であるため、インターネットのような遅延が一定ではなく信頼性が低い通信システム下では、実施が困難である。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
この発明は、このような事情に鑑み、インターネットなどの通信ネットワークを介して音楽的なセッションを行う際に自端末におけるオーディオ信号の入力から相手端末における当該オーディオ信号の出力までの入出力遅延時間を正確に測定することができる遅延測定システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
この発明の主たる特徴に従うと、通信ネットワーク（ＣＮ）を介して通信可能に接続された他のセッション端末（ＴＭｂ）と共にネットワーク音楽セッションを行うセッション端末（ＴＭａ）において実行される遅延測定方法であって、オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間（Ｔｉａ）を取得する自端末入力遅延取得ステップ（Ａ１）と、他のセッション端末（ＴＭｂ）においてオーディオ再生部（ＤＲｏｂ）でオーディオ信号を受信バッファ部（ＢＦｂ）より入力してから出力するまでの他端末出力遅延時間（Ｔｏｂ）を取得する他端末出力遅延取得ステップ（Ａ２）と、他のセッション端末（ＴＭｂ）において受信バッファ部（ＢＦｂ）でオーディオ信号を受信してから当該オーディオ信号をオーディオ再生部（ＤＲｏｂ）に入力するまでの他端末受信バッファリング遅延時間（Ｔｂｆｂ）を取得する他端末受信バッファリング遅延取得ステップ（Ａ３）と、オーディオ信号の伝送を開始してから当該オーディオ信号が他のセッション端末（ＴＭｂ）で受信されるまでの自端末・他端末間伝送遅延時間（Ｔｎ）を取得する伝送遅延取得ステップ（Ａ４）と、自端末入力遅延取得ステップ（Ａ１）で取得された自端末入力遅延時間（Ｔｉａ）、他端末出力遅延取得ステップ（Ａ２）で取得された他端末出力遅延時間（Ｔｏｂ）、他端末受信バッファリング遅延取得ステップ（Ａ３）で取得された他端末受信バッファリング遅延時間（Ｔｂｆｂ）、及び、伝送遅延取得ステップ（Ａ４）で取得された自端末・他端末間伝送遅延時間（Ｔｎ）を合計し、オーディオ信号が入力されてから他のセッション端末（ＴＭｂ）のオーディオ再生部（ＤＲｏｂ）より出力されるまでの自端末・他端末間入出力遅延時間（Ｔａｂ）を決定する入出力遅延時間決定ステップ（Ａ５）とから成るネットワーク音楽セッションにおける遅延測定方法〔請求項１〕、並びに、通信ネットワークを介して通信可能に接続された他のセッション端末（ＴＭｂ）と共にネットワーク音楽セッションを行うセッション端末（ＴＭａ）に設けられた遅延測定装置であって、オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間（Ｔｉａ）を取得する自端末入力遅延取得手段（Ａ１）と、オーディオ信号の伝送を開始してから当該オーディオ信号が他のセッション端末（ＴＭｂ）で受信されるまでの自端末・他端末間伝送遅延時間（Ｔｎ）を取得する伝送遅延取得手段（Ａ４）と、他のセッション端末（ＴＭｂ）において受信バッファ部（ＢＦｂ）でオーディオ信号を受信してから当該オーディオ信号をオーディオ再生部（ＤＲｏｂ）に入力するまでの他端末受信バッファリング遅延時間（Ｔｂｆｂ）を取得する他端末受信バッファリング遅延取得手段（Ａ３）と、他のセッション端末（ＴＭｂ）においてオーディオ再生部（ＤＲｏｂ）でオーディオ信号を受信バッファ部（ＢＦｂ）より入力してから出力するまでの他端末出力遅延時間（Ｔｏｂ）を取得する他端末出力遅延取得手段（Ａ２）と、自端末入力遅延取得手段（Ａ１）により取得された自端末入力遅延時間（Ｔｉａ）、伝送遅延取得手段（Ａ４）により取得された自端末・他端末間伝送遅延時間（Ｔｎ）、他端末受信バッファリング遅延取得手段（Ａ３）により取得された他端末受信バッファリング遅延時間（Ｔｂｆｂ）、及び、他端末出力遅延取得手段（Ａ２）により取得された他端末出力遅延時間（Ｔｏｂ）を合計し、オーディオ信号が入力されてから他のセッション端末（ＴＭｂ）のオーディオ再生部（ＤＲｏｂ）より出力されるまでの自端末・他端末間入出力遅延時間（Ｔｔａｂ）を決定する入出力遅延時間決定手段（Ａ５）とを具備することを特徴とするネットワーク音楽セッションにおける遅延測定装置〔請求項２〕が提供される。なお、括弧書きは、セッション端末を実施例の「セッション端末Ａ」とし、他のセッション端末を実施例の「セッション端末Ｂ」とした場合における実施例の参照記号や箇所等を表わし、以下においても同様である。
【０００９】
この発明によるネットワーク音楽セッションにおける遅延測定装置において、自端末・他端末間伝送遅延時間（Ｔｎ）は、他のセッション端末（ＴＭｂ）との間で定期的に送受される計測用パケットを利用して計測用パケット送受時刻を監視することにより、最新の値に更新されたものを取得する〔請求項３〕ように構成することができる。
【００１０】
また、この発明によるネットワーク音楽セッションにおける遅延測定装置では、他のセッション端末（ＴＭｂ）の受信バッファ部（ＢＦｂ）におけるバッファサイズは自動的に或いはユーザ操作に応じて変更可能であって、他端末受信バッファリング遅延時間（Ｔｂｆｂ）は、定期的にこのバッファサイズから計算することにより、最新の値に更新されたものを当該他のセッション端末（ＴＭｂ）から取得する〔請求項４〕ように構成することができる。
【００１１】
さらに、この発明によるネットワーク音楽セッションにおける遅延測定装置では、自端末入力遅延時間（Ｔｉａ）は、オーディオ出力部において、入力されたオーディオ信号をＡＤ変換乃至符号化することに基づく遅延時間を含み、他端末出力遅延時間（Ｔｏｂ）は、他のセッション端末（ＴＭｂ）のオーディオ再生部（ＤＲｏｂ）において、入力されたオーディオ信号を復号化乃至ＤＡ変換することに基づく遅延時間を含み、他のセッション端末（ＴＭｂ）との接続が確立したときに当該他のセッション端末（ＴＭｂ）から取得する〔請求項５〕ように構成することができる。
【発明の効果】
【００１２】
この発明によるネットワーク音楽セッションにおける遅延測定システムでは（請求項１，２）、通信ネットワーク（ＣＮ）を介して通信可能に接続された他のセッション端末（ＴＭｂ）と共にネットワーク音楽セッションを行うセッション端末（ＴＭａ）において、まず、オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間（Ｔｉａ）を取得すると共に（Ａ１）、他のセッション端末（ＴＭｂ）においてオーディオ再生部（ＤＲｏｂ）でオーディオ信号を受信バッファ部（ＢＦｂ）より入力してから出力するまでの他端末出力遅延時間（Ｔｏｂ）を取得する（Ａ２）。次いで、他のセッション端末（ＴＭｂ）において受信バッファ部（ＢＦｂ）でオーディオ信号を受信してから当該オーディオ信号をオーディオ再生部（ＤＲｏｂ）に入力するまでの他端末受信バッファリング遅延時間（Ｔｂｆｂ）を取得し（Ａ３）、さらに、オーディオ信号の伝送を開始してから当該オーディオ信号が他のセッション端末（ＴＭｂ）で受信されるまでの自端末・他端末間伝送遅延時間（Ｔｎ）を取得する（Ａ４）。そして、取得した自端末入力遅延時間（Ｔｉａ）、他端末出力遅延時間（Ｔｏｂ）、他端末受信バッファリング遅延時間（Ｔｂｆｂ）及び自端末・他端末間伝送遅延時間（Ｔｎ）を合計し、オーディオ信号が入力されてから他のセッション端末（ＴＭｂ）のオーディオ再生部（ＤＲｏｂ）より出力されるまでの自端末・他端末間入出力遅延時間（Ｔａｂ）を決定する（Ａ５）。
【００１３】
従って、この発明によれば、自端末（ＴＭａ）において、ネットワーク音楽セッションを行う相手端末（ＴＭｂ）内の遅延情報（Ｔｏｂ，ＤＲｏｂ）を用いることにより、オーディオ信号が自端末（ＴＭａ）で入力されてから相手端末（ＴＭｂ）で出力されるまでの自端末・他端末間入出力遅延時間（Ｔａｂ）を正確に測定することができる。
【００１４】
この発明によるネットワーク音楽セッションにおける遅延測定装置において、他のセッション端末（ＴＭｂ）との間で定期的に送受される計測用パケットを利用して計測用パケット送受時刻を監視し、自端末・他端末間伝送遅延時間（Ｔｎ）は、この監視により得られた最新の値に更新するようにしている（請求項３）。従って、この発明によれば、自端末と相手端末との間で高精度のクロック同期が行われていなくても、自端末・他端末間入出力遅延時間（Ｔａｂ）の計測に必要な自端末・他端末間伝送遅延時間（Ｔｎ）を正確に取得することができる。
【００１５】
また、この発明によるネットワーク音楽セッションにおける遅延測定装置において、他のセッション端末（ＴＭｂ）の受信バッファ部（ＢＦｂ）におけるバッファサイズは自動的に或いはユーザ操作に応じて変更可能であり、他端末受信バッファリング遅延時間（Ｔｂｆｂ）は、定期的に、バッファサイズから計算された最新の値に更新するようにしている（請求項４）。従って、この発明によれば、自端末・他端末間入出力遅延時間（Ｔａｂ）の計測に必要な他端末受信バッファリング遅延時間（Ｔｂｆｂ）を正確に取得することができる。
【００１６】
さらに、この発明によるネットワーク音楽セッションにおける遅延測定装置において、自端末入力遅延時間（Ｔｉａ）は、オーディオ出力部において、入力されたオーディオ信号をＡＤ変換乃至符号化することに基づく遅延時間を含み、他端末出力遅延時間（Ｔｏｂ）は、他のセッション端末（ＴＭｂ）のオーディオ再生部（ＤＲｏｂ）において、入力されたオーディオ信号を復号化乃至ＤＡ変換することに基づく遅延時間を含み、他のセッション端末（ＴＭｂ）との接続が確立したときに当該他のセッション端末（ＴＭｂ）から取得するようにしている（請求項５）。従って、この発明によれば、自端末・他端末間入出力遅延時間（Ｔａｂ）の計測に必要な自端末入力遅延時間（Ｔｉａ）及び他端末出力遅延時間（Ｔｏｂ）を正確に取得することができる。
【図面の簡単な説明】
【００１７】
【図１】この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムの構成を示す。
【図２】この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムで計測されるオーディオ入出力遅延時間を説明するための図である。
【図３】この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムの動作例を示す。
【発明を実施するための形態】
【００１８】
〔システム構成の概要〕
図１は、この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムの構成を示す。この発明の一実施例による遅延測定システムは、図１（１）に示すように、セッション管理サーバＳＶと複数のセッション端末ＴＭ（記号“ＴＭ”はセッション端末を代表的に表わす）：ＴＭａ〜ＴＭｄで構成されるネットワーク音楽セッションシステム内に構築される。セッション管理サーバＳＶは、メンバーとなるセッション端末ＴＭ間の接続支援、例えば、セッションの開始に先立って行われる各セッション端末ＴＭ同士の接続手続きなどを行う。各セッション端末ＴＭ間、例えば、セッション端末ＴＭａ〜ＴＭｄ間で接続が成立した後は、セッション管理サーバＳＶを介することなく、これらセッション端末ＴＭａ〜ＴＭｄ間において、遅延測定が行われ、その後、オーディオデータなどの演奏情報が送受信される。セッション管理サーバＳＶの動作は、よく知られているので、ここでは、より詳細な動作については説明を省略する。また、ネットワーク音楽セッションのメンバーとなる複数のセッション端末ＴＭａ〜ＴＭｄは、それぞれ、楽器演奏及び／又はカラオケが可能な電子音楽装置である。なお、セッション端末ＴＭの数（メンバー数）は、図１（１）には４つ例示されているが、これに限らない（多くても少なくてもよい）。
【００１９】
図１（２）は、ネットワーク音楽セッションシステムを構成するセッション端末のハードウエア構成例を示すブロック図である。ネットワーク音楽セッションを行うセッション端末ＴＭは、電子的な音楽情報処理機能を有する一種のコンピュータであり、電子楽器や音楽情報処理アプリケーションがインストールされたパーソナルコンピュータ（ＰＣ）のような電子音楽装置を用いることができる。このセッション端末ＴＭは、図示のように、中央処理装置（ＣＰＵ）１、ランダムアクセスメモリ（ＲＡＭ）２、読出専用メモリ（ＲＯＭ）３、記憶装置４、設定操作検出回路５、演奏操作検出回路６、アナログ−ディジタル（Ａ／Ｄ）変換回路７、表示回路８、音源・効果回路９、通信インターフェース（Ｉ／Ｆ）１０などを備え、これらの要素１〜１０はバス１１を介して互いに接続される。
【００２０】
ＣＰＵ１は、ＲＡＭ２及ＲＯＭ３と共にデータ処理部を構成し、ネットワーク音楽セッションにおける遅延測定プログラムを含む所定の制御プログラムに従い、遅延測定処理を含む種々の情報処理を実行する。ＲＡＭ２は、これらの処理に際して必要なデータを利用可能に保持するための記憶管理領域や各種データを一時記憶するためのワーク領域として用いられ、また、ＲＯＭ３には、これらの処理を実行するために、ネットワーク音楽セッションにおける遅延測定プログラムを含む各種制御プログラムやプリセットされたデータ等が予め記憶される。
【００２１】
記憶装置４は、ＨＤ（ハードディスク）、ＦＤ（フレキシブルディスク）、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタル多目的ディスク）、フラッシュメモリなどの半導体メモリなどの記憶媒体と、その駆動装置を含み、任意の制御プログラムや演奏データなどを任意の記憶媒体に記憶することができる。また、記憶媒体は、着脱可能であってもよいし、セッション端末ＴＭに内蔵されていてもよい。
【００２２】
設定操作検出回路５は、スイッチやマウス等の設定操作子（パネル操作子）１２と共に設定操作部（パネル操作部）を構成し、設定操作子１２の操作を検出して設定操作に対応する設定操作情報をデータ処理部（１〜３）に導入し、データ処理部は、この設定操作情報に基づき種々の設定を行う。演奏操作検出回路６は、鍵盤などの演奏操作子１３と共に楽器演奏入力部を構成し、端末ユーザによる演奏操作子１３の操作を検出して演奏操作に対応する演奏操作情報をデータ処理部に導入し、データ処理部は、演奏操作情報に基づく演奏データを音源・効果回路９に送る。
【００２３】
Ａ／Ｄ変換回路７は、マイクロフォン１４と共に歌唱入力部を構成し、端末ユーザによる歌唱の演奏によりマイクロフォン１４から入力された歌唱音声信号をディジタル信号に変換してデータ処理部に導入し、データ処理部は、このディジタル信号に基づくオーディオデータを音源・効果回路９の効果部に送る。表示回路８は、種々の設定、楽器演奏や歌唱などの演奏入力に必要な各種画面を表示するＬＣＤ等のディスプレイ１５や、インジケータ／ランプ（図示せず）を備え、これらの表示・点灯内容をデータ処理部からの指令に従って制御し、設定や演奏入力などに関する表示援助を行う。
【００２４】
音源・効果回路９は、演奏データからオーディオデータを生成する音源部と、ＤＳＰを含み種々のオーディオデータ処理を行う効果部とを有する。例えば、音源部は、演奏操作検出回路６からの演奏操作情報から得られる演奏データ、或いは、ＲＯＭ３、記憶装置４又は通信Ｉ／Ｆ１０から得られる演奏データに基づいて、オーディオデータを生成し、効果部は、マイクロフォン１４から入力されたオーディオデータや、音源部で生成されたオーディオデータ、或いは、通信Ｉ／Ｆ１０などから得られるオーディオデータについて、所定の効果を付与したりミキシングを行い、オーディオ出力データを生成する。サウンドシステム１６は、Ｄ／Ａ変換部やアンプ、スピーカ（ヘッドフォンを含む）等を備え、音源・効果回路９からのオーディオ出力データに基づく楽音（楽器演奏音や歌唱音声）を発生する。音源・効果回路９の効果部及びサウンドシステム１６はオーディオ出力再生部（ＤＲｏ）として機能する。
【００２５】
通信Ｉ／Ｆ１０は、ＩＥＥＥ１３９４等の汎用近距離有線Ｉ／Ｆ、Ｅｔｈｅｒｎｅｔ（登録商標）等の汎用ネットワークＩ／Ｆ、無線ＬａｎやＢｌｕｅｔｏｏｔｈ（登録商標）等の汎用近距離無線Ｉ／Ｆなどの１又は複数を含み、インターネットなどの通信ネットワークＣＮを介して他のセッション端末との間で演奏データやオーディオデータを授受したり、サーバコンピュータ等の外部機器から制御プログラムやデータ等を受信して記憶装置４に保存することができる。通信Ｉ／Ｆ１０の所定の受信部は、他のセッション端末から送信されてくるオーディオデータをバッファリングして音源・効果回路９の効果部に出力する受信バッファＢＦとして機能し、通信Ｉ／Ｆ１０の所定の送信部はオーディオ入力処理部（ＤＲｉ）として機能し、歌唱音声信号を入力オーディオ信号とする場合は、Ａ／Ｄ変換回路７もオーディオ入力処理部（ＤＲｉ）に含まれる。
【００２６】
なお、セッション端末ＴＭとして電子楽器を使用しカラオケを行わない場合は歌唱入力部１４−７は不要であり、セッション端末ＴＭとして音楽情報処理アプリケーション付きＰＣを使用しカラオケのみを行う場合には楽器演奏入力部１３−６は不要である。また、セッション管理サーバＳＶのハードウエア構成については、図２（２）とほぼ同様に構成されるが、楽器演奏入力部１３−６や演奏再生部９−１６は不要である。
【００２７】
〔オーディオ（音声）入出力遅延時間の測定〕
図２は、この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムで計測されるオーディオ（音声）入出力遅延時間Ｔｔを説明するための図である。２つのセッション端末ＴＭ間のオーディオ入出力遅延時間Ｔｔは、以下に示す（ａ）〜（ｄ）の情報を要因（要素）とする。ここで、参照記号“Ｔｔ”はオーディオ入出力遅延時間（音声入出力遅延時間ともいい、単に、入出力遅延時間或いは入出力遅延とも呼ばれる）を、“Ｔｉ”はオーディオ入力遅延時間（音声入力遅延時間ともいい、単に、入力遅延時間或いは入力遅延とも呼ばれる）を、“Ｔｎ”は伝送遅延時間（単に、伝送遅延とも呼ばれる）を、“Ｔｂｆ”は受信バッファリング遅延時間（単に、受信バッファリング遅延とも呼ばれる）を、“Ｔｏ”はオーディオ出力遅延時間（音声出力遅延時間ともいい、単に、出力遅延時間或いは出力遅延とも呼ばれる）を代表的に表わす。なお、これらの参照記号等に付加される添字“ａｂ”，“ｂａ”等は、それぞれ、端末ＴＭａから端末ＴＭｂへの信号送信時、端末ＴＭｂから端末ＴＭａへの信号送信時等のものを表わし、添字“ａ”，“ｂ”等は、それぞれ、端末ＴＭａ，端末ＴＭｂ等におけるものを表わす。
【００２８】
（ａ）オーディオ（音声）入力遅延時間〔録音遅延ともいう〕Ｔｉ：Ｔｉａ，Ｔｉｂ，…
オーディオ入力遅延時間Ｔｉは、あるセッション端末ＴＭにおいてオーディオ信号をオーディオ（音声）入力処理部ＤＲｉに入力してから通信ネットワークＣＮ上に伝送開始するまでの遅延時間を表わし、ＡＤ変換の遅延や符号化に伴う遅延がある場合は、それも含まれる。
（ｂ）伝送遅延時間〔ネットワーク遅延ともいう〕Ｔｎ：Ｔｎａｂ，Ｔｎｂａ，…
伝送遅延時間Ｔｎは、あるセッション端末ＴＭが通信ネットワークＣＮを介して別のセッション端末ＴＭに接続された場合に、両端末間を結ぶネットワーク上の純粋な伝送遅延時間を表わす。この伝送遅延時間Ｔｎは、通信ネットワークＣＮの通信環境が変化する可能性があるため、定期的に監視する必要がある。
（ｃ）受信バッファリング遅延時間Ｔｂｆ：Ｔｂｆａ，Ｔｂｆｂ，…
受信バッファリング遅延時間Ｔｂｆは、あるセッション端末ＴＭにおいて、通信ネットワークＣＮから受信したオーディオ信号を受信バッファＢＦでバッファリングすることによる遅延時間を表わし、受信バッファＢＦのバッファサイズは、自動的に決定してもよいし、ユーザ操作により決定してもよい。その場合、常に同じサイズとは限らないため、定期的に監視する必要がある。
（ｄ）オーディオ出力遅延時間〔再生遅延ともいう〕Ｔｏ：Ｔｏａ，Ｔｏｂ，…
オーディオ出力遅延時間Ｔｏは、受信したオーディオ信号を受信バッファＢＦよりオーディオ再生処理部ＤＲｏに出力してから、実際に音が出るまでのＤＡ変換の遅延や符号化に伴う遅延がある場合はそれも含まれる。
【００２９】
通信を行っているセッション端末ＭＴごとに、これらの情報Ｔｉ，Ｔｎ，Ｔｂｆ，Ｔｏが全て揃えば、例えば、図２（１）に示すように、自分から相手までの遅延、即ち、自端末ＴＭａでオーディオ信号が入力されてから他端末ＴＭｂで当該オーディオ信号が再生されるまでの自端末ＴＭａ・相手端末ＴＭｂ間のトータルの入出力遅延Ｔｔａｂは、「自端末ＴＭａのオーディオ入力処理部ＤＲｉａにおける音声入力遅延Ｔｉａ」＋「自端末ＴＭａ・相手端末ＴＭｂ間伝送遅延（自分から相手までの伝送遅延）Ｔｎａｂ」＋「相手端末ＭＴｂの受信バッファＢＦｂにおけるバッファリング遅延Ｔｂｆｂ」＋「相手端末ＭＴｂのオーディオ再生処理部ＤＲｏｂにおけるバッファリング遅延Ｔｏｂ」で算出することにより測定することができる。また、図２（２）に示すように、相手から自分までの遅延、即ち、相手端末ＭＴｂでオーディオ信号が入力されてから自端末で当該オーディオ信号が再生されるまでの相手端末ＴＭｂ・自端末ＴＭａ間のトータルの入出力遅延Ｔｔｂａは、「相手端末ＴＭｂのオーディオ入力処理部ＤＲｉｂにおける音声入力遅延Ｔｉｂ」＋「相手端末ＴＭｂ・自端末ＴＭａ間伝送遅延（相手から自分までの伝送遅延）Ｔｎｂａ」＋「自端末ＭＴａの受信バッファＢＦａにおけるバッファリング遅延Ｔｂｆａ」＋「自端末ＭＴａのオーディオ再生処理部ＤＲｏａにおけるバッファリング遅延Ｔｏａ」の算出で測定することができる。そのために以下の手順（１）〜（４）を順次行う。
【００３０】
（１）事前計測
予め、セッション端末ＴＭごとに、入力遅延Ｔｉ及び出力遅延Ｔｏを実測しておく。セッション端末ＴＭがＰＣなどのオーディオデバイスの場合は、ドライバ〔例えば、Ｗｉｎｄｏｗｓ（登録商標）ではＡＳＩＯドライバ、ＭａｃではＣｏｒｅＡｕｄｉｏのドライバなど〕に問い合わせることで遅延情報Ｔｉ，Ｔｏを取得することができる。また、符号化遅延については、使用している符号化のロジックとサンプリングレートから遅延を求めることができる。
【００３１】
（２）接続確立時のデータ交信（交換）
セッション端末ＴＭ間の接続が確立したときに、お互いの出力遅延Ｔｏ及び入力遅延ＴｉをネットワークＣＮ越しに交信（交換）する。交信（交換）する方法は，任意の方法を採ることができ、例えば、次のような方法がある。
・ＳＩＰ（ Session Initiation Protocol）などの呼制御プロトコルのネゴシエーション時に情報を付加する。
・ＲＴＣＰ（RTP Control Protocol）のような制御用プロトコルに情報を付加する。
【００３２】
（３）定期パケットの送受信
その後、セッション端末ＴＭ間で、定期的に、ネットワーク（伝送）遅延測定用のパケットを送出し、以下のような手法を利用してＲＴＴを計測し、ＲＴＴ／２を計算してネットワーク（伝送）遅延Ｔｎを求める。例えば、図２のように、セッション端末Ａとセッション端末Ｂが接続されている場合を例にすると、ＲＴＴ（自端末ＴＭａ・相手端末ＴＭｂ間の往復遅延）／２＝Ｔｎ＝Ｔｎａｂ（自端末Ａから相手端末Ｂまでの伝送遅延）＝Ｔｎｂａ（相手端末Ｂから自端末Ａまでの伝送遅延）と近似する。
【００３３】
［１］端末Ａが最初に送出する定期パケットには、端末Ａの時計に従って送出時の時刻ｔ１のタイムスタンプを付ける。
［２］端末Ｂは、端末Ａからの定期パケットを受信し、端末Ｂの時計に従って、このパケットを受信した時刻ｔ２を決定し、決定した受信時刻ｔ２を、このパケットに記録されている送出時刻ｔ１と共に記録しておく。
［３］次いで、端末Ｂから定期パケットを送出し、このときに、端末Ｂの時計に従ってこのパケットの送出時刻ｔ３を決定し、最後に（直前に）受信した定期パケットの送出時刻ｔ１及び受信時刻ｔ２と、当該パケット送出時刻ｔ３とを付記（タイムスタンプ）する。
［４］端末Ａは、端末Ｂからの定期パケットを受信すると、端末Ａの時計に従ってこのパケットを受信した時刻ｔ４を決定し、決定した受信時刻ｔ４と、このパケットに付記された直前パケットの送出時刻ｔ１及び受信時刻ｔ２並びに当該パケットの送出時刻ｔ３とを元にしてＲＴＴを計測し〔式（１）〕、さらに、ＲＴＴを元にして片道のネットワーク遅延即ち伝送遅延Ｔｎを推測する〔式（２）〕：
ＲＴＴ  ＝  （ｔ４−ｔ１）−  （ｔ３−ｔ２）                        …（１）
伝送遅延  Ｔｎ  ＝  ＲＴＴ／２                                      …（２）
【００３４】
ここで、送出する定期パケットは、どのような形式でも構わないが、例えば、前述したＲＴＣＰ（RTP Control Protocol）のような制御用プロトコルに情報を付加する方法があある。また、送出する定期パケットには、同時に、そのときの送出元端末の受信バッファリング遅延Ｔｂｆを付与し、相手側に通知する。受信バッファリング遅延Ｔｂｆは、ユーザ操作又は自動調整によって受信バッファＢＦのバッファサイズが変動することがあり得るため、定期的に交換することで最新の値を取得することができる。
【００３５】
（４）入出力遅延Ｔｔの計算
自端末を端末Ａ、相手端末を端末Ｂとすると、「自分から相手までの遅延Ｔｔａｂ」は、「自端末Ａの入力遅延Ｔｉａ」（事前計測により取得）＋「伝送遅延Ｔｎ」（定期パケットにより取得）＋「相手端末Ｂの受信バッファリング遅延Ｔｂｆｂ」（定期パケットの受信により取得）＋「相手端末Ｂの出力遅延Ｔｏｂ」（接続確立時のデータ交換により取得）を計算することにより得られる。
【００３６】
また、「相手から自分までの遅延Ｔｂａ」は、「相手端末Ｂの入力遅延Ｔｉｂ」（接続確立時のデータ交換により取得）＋「伝送遅延Ｔｎ」（定期パケットにより取得）＋「自端末Ａの受信バッファリング遅延」（バッファサイズより計算）＋「自端末Ａの出力遅延」（事前計測により取得）を計算することにより得られる。
【００３７】
このような手順（１）〜（４）は、特に、次の点に特徴がある：
（１）各端末ＴＭの入力遅延Ｔｉと出力遅延Ｔｏを予め端末間で交信（交換）しておく。
（２）変動性のある伝送遅延Ｔｎは、端末ＴＭ間で定期的に計測用パケットを出し合うことにより、最新の値を計測すると共に、端末ＴＭ間の高精度クロック同期の必要なくＲＴＴから簡単に求めることができる（伝送方向による誤差は無視できる）。
（３）定期的に交換するパケットに、設定変更の可能性がある受信バッファサイズを含めることにより、最新の値を端末ＴＭ間で交信（交換）する。
【００３８】
以上説明したように、この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムでは、自端末Ａにおいて、オーディオ信号を入力してから当該オーディオ信号の伝送を開始するまでの自端末入力遅延時間Ｔｉａ、オーディオ信号を伝送開始してから相手端末Ｂで受信されるまでの自端末Ａ・相手端末Ｂ間伝送遅延時間Ｔｎ、相手端末Ｂの受信バッファ部ＢＦｂでオーディオ信号を受信してから出力するまでの相手端末受信バッファリング遅延時間Ｔｂｆｂ、並びに、相手端末Ｂのオーディオ再生部ＤＲｏｂでオーディオ信号を受信バッファ部ＢＦｂより入力してから出力するまでの相手端末出力遅延時間Ｔｏｂを取得し、これらの遅延時間Ｔｉａ，Ｔｎ，Ｔｂｆｂ，Ｔｏｂを合計し、自端末Ａでオーディオ信号が入力されてから相手端末Ｂのオーディオ再生部ＤＲｏｂより当該オーディオ信号が出力されるまでの入出力遅延時間Ｔｔａｂを決定する。
【００３９】
〔動作例〕
図３は、この発明の一実施例によるネットワーク音楽セッションにおける遅延測定システムの動作フロー例を示す。この例は、セッション端末Ａとセッション端末Ｂが接続されてネットワーク音楽セッションを行う場合の動作フローを示しており、両端末Ａ，Ｂは互いに対称的な同様の動作をするので、各端末Ａ，Ｂの同様の動作については、ステップ記号や参照記号（添字“ａ”，“ｂ”が付いたもの）を並記して説明するものとする。従って、並記されたステップ記号や参照記号は同順に対応する。
【００４０】
まず、各端末Ａ，Ｂは、それぞれ、事前に自端末の音声入力遅延Ｔｉａ，Ｔｉｂ及び音声出力遅延Ｔｏａ，Ｔｏｂを計測しておく。両端末ＡＢ間の接続が確立し、各端末Ａ，Ｂにおいて、測定開始を指示するユーザ操作があると、各端末Ａ，Ｂは、それぞれ、ステップＡ１，Ｂ１に進み、既に計測されている自端末の音声入力遅延Ｔｉａ，Ｔｉｂ及び音声出力遅延Ｔｏａ，Ｔｏｂを相手の端末Ｂ，Ａに送信し合う。これにより、各端末Ａ，Ｂは、それぞれ、次のステップＡ２，Ｂ２で、相手端末Ｂ，Ａの音声入力遅延Ｔｉｂ，Ｔｉａと音声出力遅延Ｔｏｂ，Ｔｏａの両方を受信し取得することができ、さらに、ステップＡ３〜Ａ４，Ｂ３〜Ｂ４へと順次進んで行く。
【００４１】
ステップＡ３，Ｂ３では、各端末Ａ，Ｂは、両端末の接続中、定期的に、自端末の受信バッファリング遅延Ｔｂｆａ，Ｔｂｆｂを計算すると共に、計算した受信バッファリング遅延Ｔｂｆａ，Ｔｂｆｂを付けたパケットを送信し合って、相手端末Ｂ，Ａの受信バッファリング遅延Ｔｂｆｂ，Ｔｂｆａを受信し取得する。つまり、各端末Ａ，Ｂにおける受信バッファＢＦの受信バッファリング遅延Ｔｂｆａ，Ｔｂｆｂは、両端末の接続中に、夫々のシステムがネットワークＣＮの混雑具合によって自動調整したり、或いは、夫々のユーザが変更する可能性があるため、定期的に最新の値にアップデートする。
【００４２】
ステップＡ４，Ｂ４では、各端末Ａ，Ｂは、ネットワーク（伝送）遅延計測用のパケットｐｋａ，ｐｋｂを定期的に送出（送信）することにより、ネットワーク（伝送）遅延Ｔｎを計測し、伝送遅延Ｔｎを定期的に最新の値にアップデートする。例えば、端末Ａは、図示のように、計測用パケットｐｋａを送信するときに、送信される時刻ｔ１ａをパケットｐｋａに記録（タイムスタンプ）し、端末Ｂは、パケットｐｋａを受信すると、受信した時刻ｔ２ｂを記録し、次に、端末Ｂから定期パケットｐｋｂを送信するときには、端末Ａから直前に受信したパケットｐｋａの送信時刻ｔ１ａ及び受信時刻ｔ２ｂと、パケットｐｋｂが送信される時刻ｔ３ｂをパケットｐｋｂに記録（タイムスタンプ）する。端末Ａは、パケットｐｋｂを受信すると、パケットｐｋｂに記録された自端末送信時刻ｔ１ａ、相手端末受信時刻ｔ２ｂ及び相手端末送信時刻ｔ３ｂと、パケットｐｋｂを受信した時刻ｔ４ａから、式（３）に従って伝送遅延Ｔｎを計算する。なお、時刻Ｔ１ａ，Ｔ４ａの値は、添字“ａ”で示すように、端末Ａの時計により計時された値であり、時刻Ｔ２ｂ，Ｔ３ｂの値は、添字“ｂ”で示すように、端末Ｂの時計により計時された値である：
Ｔｎ  ＝  〔（Ｔ４ａ−Ｔ１ａ）−（Ｔ３ｂ−Ｔ２ｂ）〕／２            …（３）
【００４３】
端末Ｂでも、端末Ａと同様に伝送遅延Ｔｎを計算することができる。この場合、端末Ａが、時刻ｔ４ａでパケットｐｋｂを受信した後、図に破線で示すように、定期パケットｐｋａを送信するときに、直前に受信した端末Ｂからのパケットｐｋｂの送信時刻ｔ３ｂ及び受信時刻ｔ４ａと、このパケットｐｋａが送信される時刻ｔ５ａをパケットｐｋａに記録（タイムスタンプ）する。端末Ｂは、パケットｐｋａ（破線）を受信すると、このパケットｐｋａに記録された自端末送出時刻ｔ３ｂ、相手端末受信時刻ｔ４ａ及び相手端末送信時刻ｔ５ａと、パケットｐｋａ（破線）を受信した時刻ｔ６ｂから、式（４）に従って伝送遅延Ｔｎを計算する：
Ｔｎ  ＝  〔（Ｔ６ｂ−Ｔ３ｂ）−（Ｔ５ａ−Ｔ４ａ）〕／２            …（４）
【００４４】
なお、ステップＡ３〜Ａ４，Ｂ３〜Ｂ４における定期的なパケットの送信に基づく遅延情報Ｔｂｆ，Ｔｎの取得は、両端末ＡＢ間の接続中、継続的に繰り返し行われる。上述の説明では、別々のパケットを使用して、受信バッファリング遅延Ｔｂｆの交信及び取得と、タイムスタンプの交信及び伝送遅延Ｔｎの取得とを別々に行うようにしたが、同じパケットを使用して、受信バッファリング遅延Ｔｂｆ及びタイムスタンプを交信するようにしてもよい。
【００４５】
ステップＡ３〜Ａ４，Ｂ３〜Ｂ４の処理の後は、ステップＡ５〜Ａ６，Ｂ５〜Ｂ６へと順次進んで行く。まず、ステップＡ５，Ｂ５では、各端末Ａ，Ｂは、それぞれ、自端末の音声入力遅延Ｔｉａ，Ｔｉｂと、相手端末の受信バッファリング遅延Ｔｂｆｂ，Ｔｂｆａ及び音声出力遅延Ｔｏｂ，Ｔｏａと、片道の伝送遅延Ｔｎとを合計し端末ＡＢ，ＢＡ間の入出力遅延時間Ｔｔａｂ，Ｔｔｂａを求める。また、ステップＡ６，Ｂ６では、相手端末の音声入力遅延Ｔｉｂ，Ｔｉａと、自端末の受信バッファリング遅延Ｔｂｆａ，Ｔｂｆｂ及び音声出力遅延Ｔｏａ，Ｔｏｂと、片道の伝送遅延Ｔｎとを合計し端末ＢＡ，ＡＢ間の入出力遅延時間Ｔｔｂａ，Ｔｔａｂを求める。そして、ステップＡ６，Ｂ６の処理の後は、ステップＡ３，Ｂ３に戻り、ステップＡ３〜Ａ６，Ｂ３〜Ｂ６の処理を繰り返し（図示せず）、測定終了を指示するユーザ操作により元の状態にリターンする。
【００４６】
なお、端末ＡにおけるステップＡ５〜Ａ６の処理、端末ＢにおけるステップＢ５〜Ｂ６の処理については、少なくとも何れか一方の処理（例えば、端末ＡではステップＡ５のみ又はステップＡ６のみ、端末ＢではステップＢ５のみ又はステップＢ６のみ）を実行するようにしてもよい。
【符号の説明】
【００４７】
ＴＭ：ＴＭａ〜ＴＭｄ  セッション端末、
Ｔｔ：Ｔｔａｂ，Ｔｔｂａ  ［オーディオ／音声］入出力遅延［時間］、
ＤＲ：ＤＲｉａ，ＤＲｉｂ  ［オーディオ／音声］入出力処理部、
Ｔｉ：Ｔｉａ，Ｔｉｂ  ［オーディオ／音声］入力遅延［時間］／録音遅延［時間］、
ＣＮ  通信ネットワーク、
Ｔｎ：Ｔｎａｂ，Ｔｎｂａ  ネットワーク遅延［時間］／伝送遅延［時間］、
ＢＦ：ＢＦａ，ＢＦｂ  受信バッファ、
Ｔｂｆ：Ｔｂｆａ，Ｔｂｆｂ  受信バッファリング遅延［時間］、
ＤＲｏ：ＤＲｏａ，ＤＲｏｂ  オーディオ再生処理部、
Ｔｏ：Ｔｏａ，Ｔｏｂ  ［オーディオ／音声］出力遅延［時間］／再生遅延［時間］、
ｐｋａ，ｐｋｂ  計測用パケット。
【図１】
2014110525.tif 000003
【図２】
2014110525.tif 000004
【図３】
2014110525.tif 000005