以下、本発明の実施形態について図面を参照して説明する。
<サウンドデータ配信システムの概略構成>
はじめに、本実施形態にかかるサウンドデータ配信システムの概略構成について図1を参照して説明する。この図において、衛星群400は、GPS(Global Positioning System)などのGNSS(Global Navigation Satellite System)に対応した人口衛星であり、図示しない地上制御局によって管制制御され、地上に向けて衛星信号を送出する。この衛星信号には、衛星から送出された時刻や、当該信号を送出した衛星の軌道位置などを示す情報が含まれている。
一方、移動通信網500は、基地局制御装置など、データ通信サービスを提供するための各種装置を含んでおり、多数の基地局510が接続されている。サウンドデータ配信サーバ300は、移動通信網500および基地局510を介して、サウンドデータを端末100にストリーム配信する。ここで、サウンドデータとは、3次元座標によって規定された仮想的な発音地点から出力される音を表す情報である。
端末100は、携帯型の無線通信端末であり、いずれかの基地局510を介して、端末100の位置を示す端末位置情報などをサウンドデータ配信サーバ300に送信したり、サウンドデータ配信サーバ300からサウンドデータなどを受信したりする。端末100は、後述するように、サウンドデータを受信すると、当該サウンドデータに対応する発音地点の位置から発せられると想定される音の音像を定位させたオーディオ信号をサウンドデータから生成する。
また、端末100は、ステレオ形式のヘッドフォン200が接続可能になされており、サウンドデータから生成されたオーディオ信号を、ヘッドフォン200を介して放音する。このヘッドフォン200は、ユーザの頭に装着された使用状態において、ユーザの顔の向く方向を検出する方位センサ210を有しており、オーディオ信号が入力される間にわたり、検出した方位を示す信号を端末100に送信する。また、端末100は、衛星群400から送出される衛星信号を受信するための受信機を備えている。
なお、この図においては、端末100およびヘッドフォン200の組として、2人のユーザ、すなわち、ユーザU1に用いられる組と、ユーザU2に用いられる組との2組が例示されているが、端末100とヘッドフォン200との組は、1組であっても良いし、3組以上であっても良い。
<サウンドデータ配信サーバの構成>
図2は、サウンドデータ配信サーバ300の構成を示すブロック図である。この図において、制御部310は、バスB3を介して各部を制御する。また、制御部310は、後述するように発音地点を選択するための処理や、サウンドデータのデータ量を変換するための処理などを実行する。
通信部320は、移動通信網500を介して、端末100から送信された端末位置情報などの情報を受信する。また、通信部320は、後述するように制御部310によって選択された4つの発音地点に対応するサウンドデータの各々を並列して、端末100に送信する。記憶部330は、磁気ディスクなどから構成され、各種情報を記憶する。
図3は、記憶部330に記憶される情報の一部を示す図である。この図に示されるように、記憶部330には、複数の発音地点IDと、各々の発音地点IDに対応付けられた発音位置情報およびサウンドデータが記憶されている。このうち、発音地点IDは、発音地点を識別するためのものである。本実施形態においては、各発音地点は、街中における構造物(例えば、店舗や、ビルなど)に対応する位置に規定されており、それらの構造物を示す「ミニストアA」や、「ビルA」などの構造物名が、発音地点IDとして登録されている。なお、発音地点の配置場所は、構造物に対応する位置に限られず、任意に設定することが可能である。また、発音位置情報は、例えば、緯度、経度、高度などからなり、3次元座標によって発音地点の位置を規定するものである。
サウンドデータは、発音地点から発せられると想定される音を表すデータであり、所定の周波数(例えば、44.1kHz)でサンプリングされたデータである。サウンドデータは、楽曲、楽音、音声などの音を表すデータであればどのようなデータであっても良く、本実施形態においては、サウンドデータとして「買い物マーチ(楽曲)」、「太鼓音(楽音)」、「犬の鳴き声(音声)」、「チャイム(電子音)」などが記録されている。サウンドデータ配信サーバ300は、記憶部330に記憶されるサウンドデータのうち、4つのサウンドデータを端末100に配信する。そして、端末100おいては、配信された4つのサウンドデータを加工・混合した後、ヘッドフォン200を介して放音する。
また、記憶部330には、サウンドデータのデータ量変換に使用されるデータ量変換テーブルが記憶されている。図4は、データ量変換テーブルの構成を示す図である。この図に示されるように、データ量変換テーブルTBLは、端末100および発音地点の距離Dと、当該発音地点に対応するサウンドデータが変換されるべきサンプリング周波数とが対応付けられたテーブルである。例えば、図4においては、「0」以上「L1(>0)」未満の距離Dには、サンプリング周波数「f1(=44.1kHz)」が対応付けられており、「L1」以上「L2(>L1)」未満の距離Dには、サンプリング周波数「f2(=22kHz)」が対応付けられている。制御部310は、データ量変換テーブルTBLに従って、後述するデータ量変換処理において、サウンドデータのデータ量を変換する。なお、図4における「L1」、「L2」、「L3」および「L4」の各々は、「0」<「L1」<「L2」<「L3」<「L4」の関係を満たしている。
<端末の構成>
図5は、端末100の構成を示すブロック図である。この図において制御部110は、バスB1を介して各部を制御する。また、衛星電波受信部145は、衛星群400に含まれる複数の衛星の各々から、並列して衛星信号を受信し、受信された各々の信号を測位部140に入力する。測位部140は、衛星電波受信部145から入力された各々の衛星信号に含まれる送出時刻や軌道位置などの情報を用いて、端末100の位置を示す端末位置情報を生成する。この際、測位部140は、端末100から各々の衛星信号が送出された衛星までの距離(擬似距離)を測定し、測定された各々の距離を測位方程式に代入して、3次元座標による端末位置情報を生成する。
ここで、端末100は、ユーザに携帯されて使用される。このため、測位部140によって測定された端末100の位置は、ユーザの位置(中心位置)と等しいものとみなすことができる。
指示入力部120は、操作ボタンなどから構成され、オーディオ信号の生成開始を指示する生成開始信号などを制御部110に入力する。ここで、オーディオ信号の生成とは、発音地点から出力される音の音像を定位させたオーディオ信号を、サウンドデータから生成する処理である。制御部110は、指示入力部120を介して与えられるユーザからの指示に従って、端末100全体を制御する。
方位検出部150は、ヘッドフォン200に備えられた方位センサ210によって、ヘッドフォンを装着したユーザの顔がいずれの方向を向いているのかを検出し、方位情報としてバスB1に供給する。なお、ヘッドフォン200に備えられる方位センサ210としては、地磁気を検出する手法や、ジャイロスコープを用いる手法の他、次の手法を用いることも可能である。すなわち、複数の測位部をヘッドフォン200に設け、各測位部により検出された位置の相対的な変化量を用いて、ユーザの顔の向く方向を検出することも可能である。
無線通信部130は、制御部110の制御の下、端末100が在圏するエリアの基地局510との間に無線リンクを確立し、これを経由して、端末位置情報をサウンドデータ配信サーバ300に送信したり、4つのサウンドデータを並行してサウンドデータ配信サーバ300から受信したりする。
オーディオ信号生成部160は、無線通信部130から並列して入力された4つのサウンドデータの各々から、2チャネルのオーディオ信号を生成し、生成したオーディオ信号をバスB1に供給する。この際、オーディオ信号生成部160は、左耳用のオーディオ信号であるLチャネル信号と、右耳用のオーディオ信号であるRチャネル信号とを別個独立に生成し、その各々をバスB1に供給する。バスB1に供給されたLチャネル信号およびRチャネル信号の各々は、オーディオ信号出力部190を介して、ヘッドフォン200から音として出力される。
次に、オーディオ信号生成部160の詳細構成について、図6を参照して説明する。この図に示されるように、オーディオ信号生成部160には、端末100がサウンドデータ配信サーバ300から並行して受信するサウンドデータ数と等しい4つの加工部170-1、170-2、170-3、170-4が含まれている。これらの加工部170-1、170-2、170-3、170-4の各々は、4つのサウンドデータのうちいずれかひとつのサウンドデータを加工して、発音地点から発せられると想定される音の音像を定位させたオーディオ信号を生成する。いずれの加工部170-1、170-2、170-3、170-4が、いずれのサウンドデータを加工するかについては、各発音地点と端末100との距離に応じて、加工部170-1、170-2、170-3、170-4の順に、端末100との距離が長くなる発音地点に対応するサウンドデータを割り当てるなどの構成が考えられる。なお、以下の説明においては、加工部170-1、170-2、170-3、170-4の各々を区別する必要のない場合には、単に、その符号を170と記すことにする。
ここで、加工部170の詳細説明に先立って、ある地点(音源)から実際に出力された音を聴いた聴取者が、当該音源の方向や音源までの距離を知覚する仕組み、すなわち、音像定位について説明する。例えば、聴取者の右方に音源が位置する場合、聴取者の右耳から音源までの距離は、左耳から音源までの距離より近くなる。このため、ある時点に音源から出力された音が、右耳に到達するのにかかる時間は、左耳に到達するのにかかる時間より短くなる。このような左耳と右耳との間に生じる遅延時間により、聴取者は、音源の方向を知覚する。また、聴取者の近くに位置する音源と、遠くに位置する音源との2つの音源がある場合を想定する。この場合、ある音量(音圧)の音が各々の音源から出力されたとき、聴取者の位置においては、聴取者の遠くに位置する音源による音の音量より、近くに位置する音源による音の音量のほうが大きいものとなる。このような音量の差により、聴取者は、音源までの距離を知覚する。
そこで、本実施形態における各々の加工部170は、あたかも発音地点が実在するかのようにユーザが体感することができるように、各々の発音地点について、当該発音地点の位置と、ユーザ(聴取者)の左右の耳の位置とに応じて、左右の耳で生じる遅延時間および音量が規定されたオーディオ信号を生成する。以下、ひとつの加工部170に着目して、ひとつの発音地点に関するオーディオ信号の生成について説明する。
図7に示されるように、端末位置情報によって示されるユーザUの中心位置P(XP,YP,ZP)と、方位情報によって示されるユーザの顔方向Aとが与えられた場合、左耳と右耳との距離をeとしたとき、ユーザUの左耳の位置L(XL,YL,ZL)は、中心位置P(XP,YP,ZP)から水平、かつ、方向Aと垂直にe/2の距離だけ左側の位置によって特定され、右耳の位置R(XR,YR,ZR)は、中心位置P(XP,YP,ZP)から水平、かつ、方向Aと垂直にe/2の距離だけ右側の位置によって特定される。ここで、発音地点S(XS,YS,ZS)とユーザ(中心位置P)との距離が十分離れていることを想定し、音は平面波としてユーザの耳に到達するものとする。また、ユーザからみて発音地点Sが右前方に位置し、このとき、ユーザの顔の向いている方向Aとユーザからみた発音地点Sの方向との成す角がθであると仮定する。このとき、発音地点Sから音が出力されると、右耳と左耳との間に生じる音の到達する時間差(遅延時間)Δtは、到達経路の距離の差dおよび音速cを用いて、
と表現される。ここで、d=e・sinθが成り立つので、遅延時間Δtは、
となる。
また、発音地点Sからユーザの左右各々の耳までの距離を、それぞれDL、DRとし、時刻をt、球面波の波動方程式をfとした場合、左耳で生じる音圧PL、および、右耳で生じる音圧PRの各々は、以下のように表すことができる。
すなわち、
と表現することができる。
加工部170は、これらの遅延時間Δt式(2)、音圧PL式(3)および音圧PR式(4)を表現するオーディオ信号を、サウンドデータから生成する。これにより、ユーザにおいては、発音位置情報で示される位置から発音しているかのように、仮想的な発音地点による音像が定位する。
再び説明を図6に戻す。各々の加工部170には、パラメータ生成部172、遅延部176およびアンプ178が含まれている。このうち、パラメータ生成部172には、さらに、ディレイパラメータ生成部173およびアンプパラメータ生成部174が含まれている。ディレイパラメータ生成部173は、Lチャネル信号およびRチャネル信号の各々の遅延時間Δtを規定するパラメータを生成する。より詳細には、ディレイパラメータ生成部173は、サウンドデータ配信サーバ300から受信した発音位置情報と、方位検出部150によって検出された方位情報と、測位部140によって検出された端末位置情報と、左右両耳間の距離eとを入力して、左右の耳間における遅延時間Δtを規定するパラメータDPを式(2)により生成し、パラメータDPを遅延部176に送信する。
一方、アンプパラメータ生成部174は、Lチャネル信号およびRチャネル信号の各々が放音されたときの音圧を表すパラメータを生成する。より詳細には、アンプパラメータ生成部174は、サウンドデータ配信サーバ300から受信した発音位置情報と、方位検出部150によって検出された方位情報と、測位部140によって検出された端末位置情報と、左右両耳間の距離eとを入力して、左耳において生じる音圧PLを規定するパラメータALと、右耳において生じる音圧PRを規定するパラメータARを式(3)および式(4)により生成し、パラメータAL、ARをアンプ178に送信する。
なお、パラメータ生成部172に入力されるユーザの左右の耳間の距離eは、制御部110に含まれるROM(Read Only Memory)などに記憶され、ROMなどから読み出される構成としても良いし、指示入力部120を介してユーザが入力する構成としても良い。また、上述した、左右の耳の位置の特定方法、遅延時間Δt、音圧PLおよびPRを表す式(2、3および4)は、あくまでも一例であり、さらに、頭部伝達関数や、周波数スペクトルの変化による音の質的変化、直接音と残響音との比による影響を取り入れるなどの各種の変更や改良を加えることが可能である。
遅延部176は、無線通信部130を介して入力したサウンドデータから、左耳用のLチャネル信号SL1および右耳用のRチャネル信号SR1を生成し、その各々をアンプ178に送信する。より具体的には、遅延部176は、ディレイパラメータ生成部173から受け取ったディレイパラメータDPに応じて、Lチャネル信号SL1とRチャネル信号SR1とにおいて遅延が生じるように各々の信号を生成する。これにより、ひとつのサウンドデータについてのLチャネル信号SL1およびRチャネル信号SR1が、ユーザの左右の耳の位置に応じて、あたかも発音地点から到達時間の差が生じているかのように、すなわち、ユーザからみて、ある方向に位置する発音地点から出力された音であるかのように生成される。
アンプ178は、遅延部176から受け取ったLチャネル信号SL1を、アンプパラメータ生成部174から受け取ったパラメータALによって増幅する一方、遅延部176から受け取ったRチャネル信号SR1を、アンプパラメータ生成部174から受け取ったパラメータARによって増幅し、それぞれLチャネル信号SL2およびRチャネル信号SR2として混合部180に送信する。これにより、Lチャネル信号SL2およびRチャネル信号SR2の各々が、ユーザの左右の耳の位置と各々の発音地点との距離に応じて、音圧レベルが異なるかのように生成される。なお、このようなアンプ178による音圧レベルの調整は、加工部170-1、170-2、170-3、170-4ごとに行われる。このため、各々の加工部170-1、170-2、170-3、170-4において生成されるオーディオ信号によって、ユーザに対して、あたかも各々の発音地点までの距離が異なるかのような感覚を与えることが可能となる。
混合部180は、4つの加工部170から送信された4つのLチャネル信号SL2を混合し、Lチャネル信号SL3としてオーディオ信号出力部190に送信する一方で、4つのRチャネル信号SR2を混合し、Rチャネル信号SR3としてオーディオ信号出力部190に送信する。この際、混合部180は、ユーザの耳に障害を与えないように、混合されたLチャネル信号SL3およびRチャネル信号SR3の信号レベルに制限をかけることが好ましい。混合部180から送信されたLチャネル信号SL3およびRチャネル信号SR3の各々は、オーディオ信号出力部190によって、D/A(Digital / Analog)変換された後、ヘッドフォン200に出力され、左耳用の放音部220および右耳用の放音部230を介して放音される。
なお、確認的ではあるが、オーディオ信号生成部160による処理は、無線通信部130によるサウンドデータの受信や、測位部140による端末位置情報の生成、方位検出部150による方位情報の生成などの各種処理と並列して実行され、オーディオ信号は、サウンドデータからストリーム形式で生成される。このため、ユーザが移動すると、それに応じて端末位置情報や方位情報などが更新され、ユーザがいずれの位置に移動しようとも、また、いずれの方向に顔を向けようとも、ユーザからみて、各々の発音地点から出力される音の音像が定位するようにオーディオ信号が生成される。
<サウンドデータ配信システムの動作>
次にサウンドデータ配信システムの動作について、図8を参照して説明する。この動作は、サウンドデータ配信サーバ300から端末100にサウンドデータを配信し、端末100において、端末位置情報や方位情報を更新しつつ、配信されたサウンドデータからオーディオ信号を生成する処理である。なお、この動作は、端末100の指示入力部120から入力される生成開始信号をトリガとして処理を開始し、その後、端末100によって、タイマ割り込みされる処理である。また、サウンドデータ配信サーバ300と端末100との接続認証や端末認証などの、一般的な移動通信システムにおいて実行される各種処理は、本件発明と直接関係しないため、それらの説明については省略することとする。
まず、端末100の制御部110は、ステップSA1において、衛星群400から送信される衛星信号を衛星電波受信部145により受信し、衛星信号を取得する。次に、端末100の制御部110は、ステップSA2において、取得した衛星信号に応じて端末100の位置を示す端末位置情報SPを測位部140により生成する。次いで、端末100の制御部110は、ステップSA3において、生成した端末位置情報SPを基地局510に送信する。
基地局510は、端末100から端末位置情報SPを受信すると、ステップSA4において、端末位置情報SPをサウンドデータ配信サーバ300に転送する。
サウンドデータ配信サーバ300の制御部310は、基地局510から転送された端末位置情報SPを受信すると、ステップSA5において、発音地点選択処理を実行する。この発音地点選択処理は、受信した端末位置情報SPによる端末100の位置と、発音位置情報による発音地点の位置とに応じて、発音地点を所定数に達するまで選択する処理である。ここで、サウンドデータ配信サーバ300の制御部310が実行する発音地点選択処理を、図9を参照して説明する。
まず、制御部310は、ステップSA51において、選択された発音地点の数を示す選択数nを「0」にし、選択数nを初期化する。次に、制御部310は、ステップSA52において、この時点で未選択の発音地点のうち、最も近い発音地点を選択する。この際、制御部310は、受信した端末100の端末位置情報SPと、記憶部330に記憶される各発音地点の発音位置情報とを用いて発音地点を選択する。例えば、いま、図11に示されるように、端末100の周りに、8つの発音地点S1、S2、…、S8が配置されている場合を想定する。これらの発音地点S1、S2、…、S8の各々は、この順で端末100から遠ざかる様に配置されているものとする。このとき、制御部310は、いずれの発音地点S1、S2、…、S8も未選択(選択数n=0)であれば、ステップSA52において、発音地点S1を選択する。
次に、制御部310は、ステップSA53において、選択数nを「1」だけインクリメントする。次いで、制御部310は、ステップSA54において、選択数nが所定数(本実施形態では4つ)に達したか否かを判別する。この判別結果が否定的であれば、制御部310は、処理手順をステップSA52に戻し、選択数nが所定数に達するまで、ステップSA52からステップSA54までの処理を繰り返す。
一方、ステップSA54の判別結果が肯定的となれば、制御部310は、所定数の発音地点が選択されたため、発音地点選択処理を終了する。例えば、図11においては、制御部310は、8つの発音地点S1、S2、…、S8のうち、端末100に近い、黒丸で示される4つの発音地点S1、S2、S3およびS4を選択する。なお、本実施形態においては、制御部310によって4つの発音地点が選択されるが、選択される発音地点の数は任意に設定することが可能である。
さて、再び図8において、サウンドデータ配信サーバ300の制御部310は、発音地点選択処理(ステップSA5)が終了すると、次に、ステップSA6において、データ量変換処理を実行する。このデータ量変換処理は、選択された発音地点に対応するサウンドデータのデータ量、すなわち、端末100に配信されるサウンドデータのデータ量を変換する処理である。ここで、サウンドデータ配信サーバ300の制御部310が実行するデータ量変換処理を、図10を参照して説明する。この説明においては、サウンドデータ配信サーバ300の記憶部330に予め記録されるサウンドデータのサンプリング周波数は、44.1kHz以上であるものとする。
まず、制御部310は、ステップSA61において、発音地点選択処理によって選択された各々の発音地点と端末100との距離Dを、発音位置情報および端末位置情報SPを用いて求める。次に、制御部310は、ステップSA62において、図4に示されるデータ量変換テーブルTBLを参照し、各々の発音地点から端末100までの距離Dに応じて、各発音地点のサウンドデータが変換されるべきサンプリング周波数を特定する。例えば、いま、図11において、端末100と発音地点S1との距離Dが「0」以上「L1」未満であり、端末100と発音地点S2との距離Dが「L1」以上「L2」未満であり、端末100と発音地点S3との距離Dが「L2」以上「L3」未満であり、端末100と発音地点S4との距離Dが「L3」以上「L4」未満であるものとする。このとき、制御部310は、データ量変換テーブルTBLを参照して、発音地点S1のサウンドデータについてのサンプリング周波数をf1(44.1kHz)に特定し、発音地点S2のサウンドデータについてのサンプリング周波数をf2(22kHz)に特定し、発音地点S3のサウンドデータについてのサンプリング周波数をf3(10Hz)に特定し、発音地点S4のサウンドデータについてのサンプリング周波数をf4(5kHz)に特定する。
次に、制御部310は、ステップSA63において、記憶部330に予め記録される各々の発音地点のサウンドデータから、ステップSA62において特定されたサンプリング周波数のサウンドデータを生成する。これにより、生成されたサウンドデータは、端末100からの距離が遠い発音地点のサウンドデータほど、サンプリング周波数が低下するため、端末100からの距離が遠い発音地点のサンプリングデータほど、そのデータ量が縮減される。これにより、サウンドデータ配信サーバ300から配信されるサウンドデータの総データ量が縮減され、結果として、サウンドデータの配信にかかる移動通信網500におけるネットワークトラフィック、および、サウンドデータの送信にかかるサウンドデータ配信サーバ300の負荷が低減されることとなる。
なお、一般に、オーディオ信号のサンプリング周波数が低下すると、当該オーディオ信号が放音されたときの音質は劣化するが、本実施形態においては、端末100に配信されたサウンドデータは、端末100の加工部170によって、端末100から遠くに位置する発音地点のサウンドデータほど小さな音量となるように加工される。このため、端末100から遠くに位置する発音地点のサウンドデータのサンプリング周波数を低下させても、端末100において生成されるオーディオ信号が放音されたときの音質に、ほとんど影響することがない。言い換えれば、データ量変換処理によれば、音質を不当に損なうことなく、サウンドデータのデータ量を縮減させ、サウンドデータの配信によるネットワークトラフィックおよびサウンドデータ配信サーバ300の負荷を低減することができる。
さて、再び図8において、サウンドデータ配信サーバ300の制御部310は、データ量変換処理(ステップSA6)が終了すると、次に、ステップSA7において、データ量が変換された4つのサウンドデータSD1、SD2、SD3、SD4の各々を、並列に基地局510に送信する。この際、制御部310は、各サウンドデータSD1、SD2、SD3、SD4に、記憶部330に記録される発音位置情報を付加した後、サウンドデータSD1、SD2、SD3、SD4をストリーム形式で送信する。例えば、図3において、基地局510に送信すべきサウンドデータが、発音地点ID「ミニストアA」に対応する「買い物マーチ」であれば、制御部310は、「買い物マーチ」に発音位置情報(x1,y1,z1)を付加した後、「買い物マーチ」を送信する。
基地局510は、サウンドデータ配信サーバ300から送信されたサウンドデータSD1、SD2、SD3、SD4を受信すると、ステップSA8において、それらのサウンドデータSD1、SD2、SD3、SD4を端末100に転送する。
一方、端末100の制御部110は、ステップSA3において端末位置情報SPを基地局510に送信すると、次に、ステップSA9において、ユーザの顔方向を示す方位情報を方位検出部150によって生成する。次いで、端末100の制御部110は、ステップSA10において、基地局510から受信したサウンドデータSD1、SD2、SD3、SD4からオーディオ信号を生成する。この際、端末100の制御部110は、端末位置情報SP、方位情報および発音位置情報に応じて、オーディオ信号生成部160によりオーディオ信号をストリーム形式で生成する。次に、端末100の制御部110は、ステップSA11において、オーディオ信号出力部190からオーディオ信号を出力する。端末100から出力されたオーディオ信号は、ヘッドフォン200を介して音として出力される。
例えば、いま、図12に示されるように、発音地点S1、S2、S3、S4の位置が設定されており、端末位置情報SPによって端末100(ユーザ)の位置、方位情報によってユーザの顔の向く方向Aが与えられたものとする。また、このとき、ユーザから各発音地点S1、S2、S3、S4までの距離は、左右両耳とも、この順で遠くなるものとする。この際、ヘッドフォン200から出力される各発音地点のサウンドデータの音圧(音量)は、発音地点S1に対応するサウンドデータの音圧が最も大きくなり、発音地点S4に対応するサウンドデータの音圧が最も小さくなる。これにより、ユーザは、発音地点S1が最も近くに位置し、発音地点S4が最も遠くに位置するように知覚する。また、発音地点S1からユーザの右耳までの距離は、左耳までの距離より短いため、発音地点S1のサウンドデータについてのLチャネル信号は、Rチャネル信号より遅延したものとなる。これにより、ユーザは、発音地点S1が右側に位置することを知覚する。同様に、Lチャネル信号とRチャネル信号との間の遅延量(遅延時間Δt)により、ユーザは発音地点S4が左側に位置することを知覚する。
次に、図13に示されるように、ユーザが、発音地点S4の方向を向いたとする。このとき、方位検出部150によって、ユーザの顔の向く方向Aが更新されるため、Lチャネル信号とRチャネル信号との間における各サウンドデータの遅延量(遅延時間Δt)が更新される。これにより、ユーザは、発音地点S2が右側に位置し、発音地点S3が左側に位置することを知覚する。
次いで、図14に示されるように、ユーザが、発音地点S4に近づき、ユーザから各発音地点S1、S2、S3、S4までの距離が、発音地点S4、発音地点S2、発音地点S3、発音地点S1の順で遠くなる位置に移動したものとする。このようにユーザが移動すると、発音地点S1から遠ざかるため、発音地点S1のサウンドデータの音圧(音量)は小さくなる一方、発音地点S4に近づくため、発音地点S4のサウンドデータの音圧は大きくなる。これにより、ユーザは、発音地点S1から離れ、発音地点S4に近づいたことを知覚する。
以上説明したように、本実施形態によれば、ユーザの位置およびユーザの向く方向と、発音地点の位置とに応じて、ユーザからみて、発音位置情報で示される位置から発音しているかのように定位させたオーディオ信号が生成される。これにより、ユーザは、あたかも発音地点の各々が、規定された位置に実在するかのような感覚を得ることができる。例えば、ある領域に発音地点としてオーケストラの各パートを配置した場合、ユーザが当該領域内を移動すれば、ユーザは、あたかも各パートが配置された空間内を移動するかのような感覚を得ることが可能となり、ユーザがオーディオデータの生成に参加でき、変化に富んだ楽しい音響アミューズメントを提供することができる。
また、本実施形態においては、発音地点の音像が定位されるため、音声でユーザの目標物の位置を指示する音声情報システムに適用した場合、目標物が右側に位置すれば、「右方向、ガソリンスタンドの手前を右折です。」などの音声が、あたかも右側から出力されたかのように聞こえる。これにより、従来における音像を考慮しない音声情報システムと比較して、より直感的に方向に関する情報をユーザに与えることが可能となり、音声指示の効率が向上する。
さらに、サウンドデータ配信システムを視覚障害者向けガイドとしても使用できる。例えば、駅における切符自販機、駅員室、改札口などに、それら各々を表す音声を出力するような発音地点を配置する構成としても良い。このような構成にすれば、音声によって、目で見るのと同様に位置を案内することができるため、ユーザは自主的に目標物に近づくことができる。
くわえて、発音地点を商店などの位置に配置し、当該商店の広告を示す音声を出力する構成としても良い。これにより、あたかも商店から音声が出力されたかのように聞こえるため、ユーザは、例えばビルの2階などの目に付きにくい場所に立地する商店を探しやすくなる。一方、商店においては、広告効果が期待でき、商売が活性化することとなる。また、聴覚に働きかける広告が、呼び込みなどの実際の音から、仮想的な発音地点の広告に転換されることにより、街中における騒音が低減される。
<第1実施形態の変形例>
なお、上述した第1実施形態においては、サウンドデータの配信によるネットワークトラッフィックおよびサウンドデータ配信サーバの負荷を緩和するために、データ量変換処理においてサウンドデータのデータ量を縮減する例を示した。しかし、これらが問題とならない場合には、データ量変換処理を省略することができる。
<第2実施形態>
<サウンドデータ配信システムの構成>
上述した第1実施形態においては、ひとつのサウンドデータ配信サーバ300から端末100にサウンドデータを配信するサウンドデータ配信システムについて説明した。これに対し、第2実施形態では、複数のサウンドデータ配信サーバの各々から端末100にサウンドデータを配信するサウンドデータ配信システムについて説明する。
なお、第2実施形態におけるサウンドデータ配信システムの構成のうち、第1実施形態に係るシステムと共通するものについては同一の符号が付されている。
図15は、第2実施形態におけるサウンドデータ配信システムの概略構成を示す図である。この図に示されるように、移動通信網500には、大別して2種類のサーバ装置が接続されている。すなわち、コントロールサーバ600と、サウンドデータ配信サーバ610A、610B、610Cとである。このうち、サウンドデータ配信サーバ610A、610B、610Cの各々は、端末100に配信されるサウンドデータであり、互いに異なる発音地点に対応したサウンドデータを記憶している。また、コントロールサーバ600は、サウンドデータ配信サーバ610A、610B、610Cから端末100へのサウンドデータの配信を管理するものである。詳述すると、コントロールサーバ600は、端末100の位置と、各々の発音地点の位置とに応じて、所定数(例えば2つ)の発音地点を選択する。サウンドデータ配信サーバ610A、610B、610Cは、コントロールサーバ600によって選択された発音地点に対応するサウンドデータを、端末100に配信する。なお、これらのコントロールサーバ600、サウンドデータ配信サーバ610A、610B、610Cの各々には、移動通信網500において各々を特定するためのサーバIDが割り当てられている。
なお、説明の便宜上、第2実施形態においては、サウンドデータ配信サーバ610A、610B、610Cは、移動通信網500に直接接続されているが、サウンドデータ配信サーバ610A、610B、610Cは、インターネットなどを介して移動通信網500に接続される構成としても良い。また、第2実施形態においては、サウンドデータ配信サーバ610A、610B、610Cの数が3つである例を説明するが、サウンドデータ配信サーバ610A、610B、610Cの数は、3つに限られるものではなく、それ以外の数であってもよい。
まず、サウンドデータ配信サーバ610A、610B、610Cの構成について説明する。第2実施形態におけるサウンドデータ配信サーバ610A、610B、610Cは、第1実施形態におけるサウンドデータ配信サーバ300(図2参照)と同様の構成をしており、各部を制御する制御部と、移動通信網とデータを授受する通信部と、各種情報を記憶する記憶部とを備えている。
図16は、サウンドデータ配信サーバ610Aの記憶部に記憶される情報のうち主要なものを示す図であり、図17は、サウンドデータ配信サーバ610Bの記憶部に記憶される情報のうち主要なものを示す図である。なお、図示しないが、サウンドデータ配信サーバ610Cにおける記憶部もサウンドデータ配信サーバ610A、610Bと同様な情報が記憶されている。これらの図に示されるように、各サウンドデータ配信サーバ610A、610Bの記憶部には、発音地点IDと、各々の発音地点IDに対応付けられたサウンドデータとが記憶される。この記憶部が、第1実施形態におけるサウンドデータ配信サーバ300の記憶部330と比較して特徴的なのは、発音位置情報を記憶していない点にある。
次いで、コントロールサーバ600の構成について説明する。コントロールサーバ600は、サウンドデータ配信サーバ610の構成と同様の構成をしており、各部を制御する制御部と、移動通信網500とデータを授受する通信部と、各種情報を記憶する記憶部とを備えている。
図18は、コントロールサーバ600の記憶部に記憶される情報のうち、主要なものを示す図である。この図に示されるように、記憶部には、発音地点IDと、各々の発音地点IDに対応付けられた発音位置情報およびサーバIDが記憶されている。コントロールサーバ600の記憶部が、第1実施形態におけるサウンドデータ配信サーバ300の記憶部330と比較して特徴的な点は、サウンドデータを記憶していない点と、サーバIDを記憶している点にある。発音地点IDは、サウンドデータ配信サーバ610A、610B、610Cに記憶される発音地点を特定するためのものである。また、サーバIDは、発音地点IDによって特定される発音地点のサウンドデータが、いずれのサウンドデータ配信サーバ610A、610B、610Cに記憶されているかを示す情報である。この図におけるサーバID「A」は、サウンドデータ配信サーバ610Aを示し、サーバID「B」は、サウンドデータ配信サーバ610Bを示し、サーバID「C」は、サウンドデータ配信サーバ610Cを示している。例えば、この図においては、発音地点ID「ミニストアA」の発音地点は、座標(x1,y1,z1)に位置し、そのサウンドデータはサウンドデータ配信サーバ610Aに記憶されることを示し、発音地点ID「ミニストアB」の発音地点は、座標(x2,y2,z2)に位置し、そのサウンドデータはサウンドデータ配信サーバ610Bに記憶されることを示している。
<サウンドデータ配信システムの動作>
第2実施形態におけるサウンドデータ配信システムの動作について図19を参照して説明する。この動作は、コントロールサーバ600によって選択された発音地点に対応するサウンドデータを、サウンドデータ配信サーバ610から端末100に配信し、端末100において、配信されたサウンドデータからオーディオ信号を生成する処理である。なお、この動作は、ユーザが端末100の指示入力部120を介して、オーディオ信号の生成の開始を指示する生成開始信号を入力すると処理を開始し、その後、端末100によって、タイマ割り込みされる処理である。また、コントロールサーバ600と端末100との間における接続認証や端末認証などの、一般的な移動通信システムにおいて実行される各種処理は、本件発明と直接関係しないため、それらの説明については省略することとする。
まず、端末100の制御部110は、ステップSB1において、衛星群400から送信される衛星信号を、衛星電波受信部145により受信し、衛星信号を取得する。次に、端末100の制御部110は、ステップSB2において、取得した衛星信号に応じて端末100の3次元位置を示す端末位置情報SPを測位部140により生成する。
次に、端末100の制御部110は、ステップSB3において、端末位置情報SPを、その情報の送信先であるコントロールサーバ600を示すサーバIDと共に基地局510に送信する。基地局510は、端末位置情報SPを端末100から受信すると、ステップSB4において、その情報をコントロールサーバ600に転送する。
コントロールサーバ600の制御部は、端末位置情報SPを受信すると、ステップSB5において、受け取った端末位置情報SPと、記憶部に記憶される発音位置情報とに応じて、発音地点選択処理を実行する。この発音地点選択処理は、上述した第1実施形態における発音地点選択処理(図9参照)と同様の処理であり、端末100に近い発音地点から順に、所定数(2つ)に達するまで発音地点を選択する処理である。この動作説明においては、例として、コントロールサーバ600の制御部は、図18に示される発音地点IDのうち「ミニストアA」と「ビルB」との2つの発音地点を選択したものとして、すなわち、サウンドデータ配信サーバ610Aに記憶される「買い物マーチA(図16参照)」と、サウンドデータ配信サーバ610Bに記憶される「太鼓音B(図17参照)」とが端末100に配信されるものとして説明する。なお、コントロールサーバ600の制御部によって選択される発音地点の数は、2つに限られず、任意に設定することが可能である。
次に、コントロールサーバ600の制御部は、ステップSB6において、選択された発音地点のサウンドデータを有するサウンドデータ配信サーバ610のサーバID_SIDを基地局510に送信する。この際、コントロールサーバ600の制御部は、サーバID_SIDに対して、その記憶部に記憶される発音地点IDおよび発音位置情報を付加した後、サーバID_SIDを送信する。すなわち、コントロールサーバ600の制御部は、図18におけるサーバID「A」に発音地点ID「ミニストアA」と発音位置情報(x1,y1,z1)とを付加すると共に、サーバID「B」に発音地点ID「ビルB」と発音位置情報(x2,y2,z2)とを付加した後、サーバID「A」およびサーバID「B」を基地局510に送信する。
基地局510は、各サーバID_SIDをコントロールサーバ600から受信すると、ステップSB7において、それらを端末100に転送する。
端末100の制御部110は、基地局510によって転送されたサーバID_SIDを受信すると、ステップSB8において、当該サーバID_SIDによって特定されるサウンドデータ配信サーバ610A、610Bの各々にサウンドデータの配信を要求すべく、配信要求DRA、DRBを基地局510に送信する。すなわち、端末100の制御部110は、サウンドデータ配信サーバ610Aに対する「買い物マーチA」の配信要求DRAと、サウンドデータ配信サーバ610Bに対する「太鼓音B」の配信要求DRBとを基地局510に送信する。
基地局510は、配信要求DRA、DRBを端末100から受け取ると、ステップSB9およびステップSB10において、受け取った配信要求DRA、DRBの各々を、対応するサウンドデータ配信サーバ610A、610Bに転送する。すなわち、基地局510は、ステップSB9において、配信要求DRAをサウンドデータ配信サーバ610Aに転送する一方、ステップSB10において、配信要求DRBをサウンドデータ配信サーバ610Bに転送する。
サウンドデータ配信サーバ610Aの制御部は、基地局510から配信要求DRAを受け取ると、ステップSB11において、当該配信要求DRAによって示されるサウンドデータSDA(ここでは「買い物マーチA」)を基地局510にストリーム形式で送信する。基地局510は、サウンドデータ配信サーバ610AからサウンドデータSDAを受け取ると、ステップSB12において、サウンドデータSDAを端末100に転送する。
一方、サウンドデータ配信サーバ610Bの制御部は、基地局510から配信要求DRBを受け取ると、ステップSB13において、当該配信要求DRBによって示されるサウンドデータSDB(ここでは「太鼓音B」)を基地局510にストリーム形式で送信する。基地局510は、サウンドデータ配信サーバ610BからサウンドデータSDBを受け取ると、ステップSB14において、サウンドデータSDBを端末100に転送する。これらのステップSB13およびステップSB14の処理は、上述したステップSB11およびステップSB12の処理と並列して実行される。
なお、第1実施形態と同様に、サウンドデータSDA、SDBを送信する前に、サウンドデータ配信サーバ610A、610Bにおいて、データ量変換処理を実行しても良い。すなわち、サウンドデータ配信サーバ610A、610Bの各々において、端末100と発音地点との距離に応じて、各々のサウンドデータSDA、SDBのデータ量を縮減した後、サウンドデータを基地局510に送信する構成としても良い。
端末100の制御部110は、サウンドデータ配信サーバ610Aから送信されたサウンドデータSDA(ここでは「買い物マーチA」)と、サウンドデータ配信サーバ610Bから送信されたサウンドデータSDB(ここでは「太鼓音B」)とを、基地局510を介して並列に受信すると、ステップSB15において、それらのサウンドデータをオーディオ信号生成部160に入力して、左右2チャネルのオーディオ信号を生成する。この際、「買い物マーチA」と「太鼓音B」との各々のサウンドデータは、オーディオ信号生成部160に含まれる2つの加工部170のいずれか一方によって処理される。そして、端末100の制御部110は、ステップSB16において、オーディオ信号出力部190からオーディオ信号を出力する。端末100から出力されたオーディオ信号は、ヘッドフォン200を介して音として出力される。
このように第2実施形態においては、コントロールサーバ600の管理の下、各サウンドデータ配信サーバ610A、610B、610Cから端末100にサウンドデータが配信され、端末100において、ユーザの位置および顔の向く方向Aに応じて、仮想的な発音地点による音像を定位させたオーディオ信号が生成される。これにより、上述した第1実施形態と同様に、ユーザは、あたかも発音地点が実在するかのような空間を移動することができ、従来にない音響アミューズメントを提供することができる。
また、第2実施形態においては、複数のサウンドデータ配信サーバ610A、610B、610Cからサウンドデータが配信される。このため、複数の端末100が、ひとつのサウンドデータ配信サーバから集中的にサウンドデータの配信を受ける事態が回避され、サウンドデータ配信サーバにかかる負荷が分散されることとなる。さらに、コントロールサーバ600によってサウンドデータの配信が一括管理されるため、サウンドデータの管理が容易となり、サウンドデータを容易に増加することができる。これにより、端末100に配信されるサウンドデータの種類や内容が充実したものとなる。
<第1および第2実施形態の変形例>
なお、上述した第1および第2実施形態においては、端末位置情報SPを、GNSSによって端末100において生成する例を示したが、これに限られない。例えば、サウンドデータ配信サーバ300やコントロールサーバ600において、端末100が無線リンクを確立する基地局510の位置などに応じて、端末位置情報SPを生成する構成としても良い。
また、上述した第1および第2実施形態においては、基地局510と無線通信する無線通信部130を備えた端末100を説明したが、これに限られない。例えば、PDA(Personal Digital Assistants)などの無線通信機能を有さない携帯端末と、当該携帯端末に着脱可能な通信モジュールを取り付けて、サウンドデータ配信サーバ300などとデータを授受する構成としても良い。
上述した第1および第2実施形態においては、サウンドデータをストリーム形式で配信する例を示したが、端末100にサウンドデータを記憶する記憶部を設けて、記憶部にキャッシュされたサウンドデータによりオーディオ信号を生成する構成としても良い。
くわえて、上述した第1および第2実施形態においては、端末100と発音地点との距離に応じて、サウンドデータ配信サーバ300、610Aなどにおいて、端末100に配信するサウンドデータのデータ量を変換する例を示したがこれに限られない。例えば、サウンドデータ配信サーバ300の記憶部330に、同一の音を表すサウンドデータであって、データ量が互いに異なる複数のサウンドデータ(例えば、サンプリング周波数が互いに異なる複数のサウンドデータ)を予め記憶させておき、このうちのいずれかを、端末100と発音地点との距離に応じて選択し、選択されたサウンドデータを端末100に送信する構成としても良い。これにより、上述した各実施形態と同様に、ネットワークトラフィックが低減されることとなる。
<第3実施形態>
上述した第1、第2実施形態においては、移動通信網500を介してサウンドデータ配信サーバ300、610からサウンドデータを受信し、受信したサウンドデータからオーディオ信号を生成する端末100について説明した。これに対し、第3実施形態では、端末内に設けられた記憶部に記憶されるサウンドデータからオーディオ信号を生成する端末を説明する。第3実施形態においては、上述した各実施形態におけるサウンドデータ配信サーバ300、および、基地局510などの無線通信のための設備は不要となる。
図20は、第3実施形態における端末の構成を示す図である。この図において、第1実施形態における端末100と同一の構成については、同一の符号が付されている。
第3実施形態における端末700の構成のうち、特徴的なのは、発音情報記憶部720である。この発音情報記憶部720は、発音地点に関する発音位置情報や、サウンドデータを記憶するものであり、それらの情報をバスB1に供給する。上述した第1および第2実施形態における端末100の制御部110は、サウンドデータ配信サーバ300から配信されるサウンドデータからオーディオ信号を生成したが、第3実施形態における端末700の制御部710は、発音情報記憶部720に記憶されるサウンドデータを読み出して、読み出されたサウンドデータからオーディオ信号を生成する。
より具体的には、まず、制御部710は、測位部140によって生成された端末位置情報SPが示す端末700の位置と、発音情報記憶部720に記憶される発音位置情報が示す発音地点の位置とに応じて、発音地点選択処理を実行する。この発音地点選択処理は、上述した第1実施形態におけるサウンドデータ配信サーバ300において実行される発音地点選択処理(図9参照)と同様の処理であり、発音地点を、端末700に近いものから順番に、所定数に達するまで選択する処理である。次に、制御部710は、選択された複数の発音地点の各々に対応するサウンドデータを、発音情報記憶部720から並列して読み出す。そして、制御部710は、読み出された各々のサウンドデータから、端末位置情報SPと発音位置情報とに応じて、2チャネルのオーディオ信号をオーディオデータ生成部160によって生成する。
このように第3実施形態においては、端末700に含まれる発音情報記憶部720から読み出されたサウンドデータによってオーディオ信号が生成される。これにより、上述した第1および第2実施形態と同様に、ユーザが仮想的な発音位置が配置された空間を移動することができ、従来にない音響アミューズメントを提供することができる。また、サウンドデータを配信する構成が不要となるためその構成が簡略化される。
なお、発音情報記憶部720は、必ずしも端末700に内蔵でなくとも良い。例えば光ディスクなどの記録媒体から発音地点に関する情報を読み出すリムーバブルストレージを端末700に設けても良いし、さらには、リムーバブルストレージを外付けするためのインターフェースを端末700に設ける構成としても良い。
また、上述した第1、第2および第3実施形態においては、発音地点の位置が固定である例を示したが、発音地点の位置は、時系列的に変化する構成としても良い。このような構成にすると、例えば、ジェット機などの移動体から出力されると想定される音を仮想的に生成することができる。これにより、ヘッドフォン200から出力される音像が、さらに、変化に富んで楽しいものとなる。
くわえて、上述した各実施形態においては、発音位置情報および端末位置情報SPの各々を、3次元位置によって規定する例を示したが、2次元位置によって規定する構成としても良い。
<第4実施形態>
上述した各実施形態においては、位置が固定の発音地点についての音像を定位させるサウンドデータ配信システムについて説明した。これに対し、第4実施形態においては、発音地点の位置をユーザにより携行される端末の位置と対応付け、ユーザに対して、移動する他のユーザの位置から音が出力されているかのように音像を定位させるサウンドデータ配信システムについて説明する。この実施形態におけるサウンドデータ配信システムの構成のうち、第1実施形態に係るシステムと共通するものについては同一の符号が付されている。
<サウンドデータ配信サーバの構成>
上述した第1実施形態のサウンドデータ配信サーバ300は、記憶部330にあらかじめ記憶されるサウンドデータを端末100に配信した。これに対し、本実施形態にかかるサウンドデータ配信サーバは、サウンドデータと端末位置情報SPとを端末から受け取り、それらを含む情報を他の端末に対して配信する。端末からサウンドデータ配信サーバにアップロードされるサウンドデータは、当該端末の位置から仮想的に出力される音を示す情報である。一方、サウンドデータと共にアップロードされる端末位置情報SPは、サウンドデータに応じた音が出力されるべき仮想的な音源の位置を示す情報であり、その役割は、上記各実施形態における発音位置情報と共通する。
図21は、サウンドデータ配信サーバ800の構成を示す図である。この図に示されるように、サウンドデータ配信サーバ800は、上述したサウンドデータ配信サーバ300と比較して、移動ベクトル量演算部810を有している点、および記憶部330に記憶される情報の点で異なる。このうち移動ベクトル量演算部810は、1つの端末に関する2時点間の相対的な位置関係から、その端末の単位時間あたりの変位を示すベクトル量、すなわち速度(以下「移動ベクトル量MV」と称する)を演算する。例えば、図22に示すように、地点PT-1(xT-1,yT-1)に位置する端末900が、単位時間「ut」だけ経過した後、地点PT(xT,yT)に移動したとする。このとき、移動ベクトル量演算部810は、移動ベクトル量MVとして、
を演算する。なお、この移動ベクトル量MVは、後述するように、端末900において他の端末900の移動経路の予測に用いられる。
一方、図23は、サウンドデータ配信サーバ800の記憶部330に記憶される情報を示す図である。この図に示すように、記憶部330には、「端末ID」と「端末位置情報SP」と「移動ベクトル量MV」と「サウンドデータ」とが対応付けられて記憶されている。このうち、端末IDは、サウンドデータ配信システムに含まれる端末900を識別するための情報である。記憶部330には、全ての端末900に対応する端末IDのうち、サウンドデータ配信サーバ800と接続中の端末900に対応する端末IDが記憶される。
端末位置情報SPは、端末IDに対応する端末900の位置を示す情報であり、1つの端末IDにつき「T−1期」における情報と「T期」における情報との2つの時点における位置情報が含まれる。ここで、「T−1期」は、上述した単位時間「ut」だけ「T期」から過去の時点に相当する。
端末位置情報SPは、端末900が基地局510のサービスエリアに在圏する間にわたり単位時間「ut」が経過する度に更新される。なお、この実施形態においては、端末位置情報SPは、(x1T-1,y1T-1)や(x1T,y1T)などにより示すように、2次元にて規定された位置情報とするが、上記発音位置情報と同様に3次元により規定された位置情報であっても良い。
移動ベクトル量MVは、上述した移動ベクトル量演算部810により生成された情報であり、端末IDに対応する端末900の「T−1期」から「T期」までの期間における速度を示す。移動ベクトル量演算部810は、「T−1期」および「T期」の端末位置情報SPを用いて移動ベクトル量MVを演算する。
サウンドデータは、端末IDに対応する端末900からアップロードされたデータであり、サウンドデータ配信サーバ800から他の端末900に配信される。この実施形態においては、端末900の位置から仮想的に出力される音は楽曲を構成する音であるものとして説明するが、端末900の位置から仮想的に発せられる音は楽曲を構成する音に限られず、楽音や音声などの音であればいかなるものであっても良い。
以上説明した端末IDと、端末位置情報SPと、移動ベクトル量MVと、サウンドデータとの組は、端末IDに対応する端末900がサウンドデータ配信サーバ800と接続している間のみ記憶部330に記憶され、それらの接続関係が切断されると、制御部310により記憶部330から消去される。
<端末の構成>
端末900は、自装置の位置から仮想的に出力される音を示すサウンドデータと、自装置の位置を示す端末位置情報SPとをサウンドデータ配信サーバ800にアップロードする一方で、他の端末900に関するサウンドデータと端末位置情報SPと移動ベクトル量MVとをサウンドデータ配信サーバ800からダウンロードする。端末900は、ダウンロードした他の端末900に関するサウンドデータと、端末位置情報SPと、移動ベクトルMVとを用いて、あたかも他の端末900(ユーザ)の位置からサウンドデータで示される楽曲が出力されているかのように音像を定位させる。
図24は、端末900の構成を示すブロック図である。この図に示されるように、端末900は、第1実施形態における端末100(図5参照)の構成各部に加え、記憶部910と位置予測部920とを備えている。
このうち記憶部910は、「サウンドデータ」および自装置(端末900)の「端末ID」を記憶する。このサウンドデータは、自装置の位置から仮想的に出力されると想定された音を示すデータである。ユーザは、例えばネットワークを介してダウンロードするなどして、サウンドデータを端末900の記憶部910に記憶させることができる。
位置予測部920は、サウンドデータ配信サーバ800から配信された他の端末900に関する「T期」の端末位置情報SPと、移動ベクトル量MVとを用いて、「T期」以降に他の端末900が移動する経路を予測する。例えば、前掲図22に示すように、「T期」における端末900の位置PT(xT,yT)と、「T−1期」から「T期」までの端末900の移動ベクトル量MVとが与えられた場合、位置予測部920は、端末900の位置PC(xC,yC)を例えば次式により時系列的に予測する。
ここで、etは、「T期」からの経過時間を示す。
説明を再び図24に戻す。オーディオ信号生成部160は、第1実施形態と同様に自装置で生成した端末位置情報SPと方位情報Aとを用いて、音像を定位させたオーディオ信号SL3およびSR3をサウンドデータから生成するが、発音地点の位置を示す発音位置情報の代わりとして、位置予測部920により予測された他の端末900の位置PCを用いて音像を定位させる。なお、音像を定位させる際に、他の端末900の位置について実測値ではなく位置予測部920により予測された予測値(位置PC)を用いる理由は、ネットワークトラフィックなどの影響により定位された音像が不自然なものとなるのを防止するためであるが、この点については後述する。
<サウンドデータ配信システムの動作>
次にサウンドデータ配信システムの動作について図25を参照して説明する。この動作は、端末900において、あたかも他の端末900の位置から楽曲が出力されているかのように音像を定位させる動作である。サウンドデータ配信システムにおいては、複数の端末900の各々が、サウンドデータをアップロードする動作と、サウンドデータ配信サーバ800からサウンドデータをダウンロードしたうえで自装置と他の端末900との相対的な位置関係に応じて音像を定位させる動作とを並行して実行する。ただし、以下では、説明の便宜のために、サウンドデータ配信システムに含まれる複数の端末900のうち2つの端末900のみに着目し、このうち一方の端末(以下「900U」という)についてはサウンドデータをアップロードする動作に特に注目し、他方の端末(以下「900D」という)についてはサウンドデータのダウンロードおよび音像の定位のための処理に特に注目して説明を進める。
まず、いずれかの基地局510が管轄するサービスエリアに端末900Uが入ると、端末900Uの制御部110は、ステップSC1およびSC2において、記憶部910に記憶されるサウンドデータSDと自装置の端末ID_MIとを、基地局510を介してサウンドデータ配信サーバ800に送信する。サウンドデータ配信サーバ800の制御部310は、端末900UからサウンドデータSDと端末ID_MIとを受信すると、前掲図23に示すように端末ID_MIとサウンドデータSDとを対応づけて記憶部330に記憶させる。
一方、端末900Uの制御部110は、サウンドデータSDおよび端末IDを基地局510に送信した後(ステップSC1)、ステップSC4において、衛星群400から送信される衛星信号を衛星電波受信部145により受信する。続いて、端末900Uの制御部110は、ステップSC5において、受信した衛星信号を用いて、自装置の位置を示す端末位置情報SP1を測位部140により生成する。次いで、端末900Uの制御部110は、ステップSC6およびSC7において、生成した端末位置情報SP1と自装置の端末ID_MIとを、基地局510を介してサウンドデータ配信サーバ800に送信する。
サウンドデータ配信サーバ800の制御部310は、基地局510を介して端末900Uから端末位置情報SP1と端末ID_MIとを受信すると、ステップSC8において、記憶部330に記憶された端末IDのうち受信した端末ID_MIと等しい端末IDに、受信した端末位置情報SP1を対応づけて記憶部330に記憶する。例えば、いま、図26の上段に示されるように、あらかじめ記憶部330に端末ID「MS1」と、「T−1期」の端末位置情報SP(x1T-2,y1T-2)と、「T期」の端末位置情報SP(x1T-1,y1T-1)と、移動ベクトル量MV(x1V-1,y1V-1)と、サウンドデータSD「楽曲1」とが対応づけられて記憶されている状況を想定する。この状況のもと、サウンドデータ配信サーバ800がステップSC7において、基地局510から端末IDとして「MS1」と、端末位置情報SP1として(x1T,y1T)とを受信したとする。この際、制御部310は、同図の下段に示されるように、まず、現時点における「T期」の端末位置情報SP(x1T-1,y1T-1)を、「T−1期」の端末位置情報SPとして書き換えた後、受信した端末位置情報SP1(x1T,y1T)を「T期」の端末位置情報SPとして記憶部330に記憶させる。
次に、サウンドデータ配信サーバ800の制御部310は、ステップSC9において、記憶部330に記憶された「T−1期」の端末位置情報SPと「T期」の端末位置情報SPとを用いて、移動ベクトル量演算部810により端末900Uの移動ベクトル量MVを演算する。次いで、制御部310は、演算した移動ベクトル量MVを端末IDと対応づけて記憶部330に記憶させる。なお、「T−1期」の端末位置情報SPが存在しない場合、すなわちサウンドデータ配信サーバ800によるステップSC9の処理が第1回目の場合には、記憶部330には移動ベクトル量MVとして零ベクトルが記録される。
ここで、サウンドデータ配信サーバ800からサウンドデータSDをダウンロードする端末900Dの動作へと説明を移す。
端末900Dの制御部110は、オーディオ信号の生成開始を指示する生成開始信号を指示入力部120から入力すると、ステップSC10において、衛星群400から送信される衛星信号を衛星電波受信部145により受信する。次に、端末900Dの制御部110は、ステップSC11において、受信した衛星信号を用いて自装置の位置を示す端末位置情報SP2を測位部140により生成する。次いで、端末900Dの制御部110は、ステップSC12およびSC13において、端末ID_MIと生成した端末位置情報SP2とを、基地局510を介してサウンドデータ配信サーバ800に送信する。
サウンドデータ配信サーバ800の制御部310は、基地局510から転送された端末位置情報SP2と端末ID_MIとを受信すると、ステップSC15において、端末選択処理を実行する。この端末選択処理は、第1実施形態における発音地点選択処理(図9参照)と略同様の処理であり、端末900Dと他の端末900との相対的な距離に応じて、他の端末900のうち、端末900Dの近傍に位置する他の端末900を選択する処理である。この例では、端末選択処理によって端末900Uが選択されたものとし、以降、端末900Uに関するサウンドデータSDの音像を定位させる動作について説明する。
サウンドデータ配信サーバ800の制御部310は、端末選択処理により端末900Uを選択すると、ステップSC16において、選択した端末900Uの端末ID_MIと、記憶部330において当該端末IDと対応づけられた「T期」の端末位置情報SP1と、移動ベクトル量MVと、サウンドデータSDとを組にして基地局510に送信する。この際、制御部310は、サウンドデータSDのヘッダとして、端末ID_MI、端末位置情報SP1および移動ベクトル量MVを付加する形式でこれらの情報を送信する。なお、仮に端末選択処理において複数の端末900が選択された場合、制御部310は、端末ID_MIと、「T期」の端末位置情報SPと、移動ベクトル量MVと、サウンドデータSDとを端末900ごとに組にして基地局510に送信する。
基地局510は、端末ID_MIと、「T期」の端末位置情報SP1と、移動ベクトル量MVと、サウンドデータSDとを受信すると、ステップSC17において、それらを端末900Dに向けて転送する。
一方、端末900Dの制御部110は、端末位置情報SP2と端末ID_MIとを基地局510に送信すると(ステップSC12)、次に、ステップSC14において、ユーザの顔の向く方向Aを示す方位情報ODを方位検出部150により生成する。続いて、端末900Dの制御部110は、基地局510から端末ID_MIと、「T期」の端末位置情報SP1と、移動ベクトル量MVと、サウンドデータSDとを受信すると(ステップSC17)、ステップSC18において、受信したサウンドデータSDの音像を定位させたオーディオ信号を生成し、生成したオーディオ信号をヘッドフォン200を介して放音する。この際、端末900Dは、自装置に関する端末位置情報SP2および方位情報ODを一定の時間間隔で更新しつつ、オーディオ信号を生成する。
サウンドデータ配信システムにおいては、以上説明したステップSC4からステップSC18までの処理が繰り返されることにより、サウンドデータ配信サーバ800から端末900Dに配信されるサウンドデータSDが、ストリーム形式で端末900Dにおいて再生される。
以下、端末900DがステップSC18において音像を定位させる処理について詳細に説明する。まず、端末900Dの制御部110は、「T期」の端末位置情報SP1と、移動ベクトル量MVとを用いて、位置予測部920により端末900Uの位置を予測する。次に、端末900Dの制御部110は、予測した端末900Uの位置、ならびに自装置において生成した端末位置情報SP2および方位情報ODに応じて、サウンドデータSDから音像を定位させたオーディオ信号をオーディオ信号生成部160により生成する。
例えば、図27中の実線で示すように、端末900Dのユーザ902Dが、端末900Uのユーザ902Uから離れた位置にて、ユーザ902Uの方向Aに顔を向けている場合を想定する。この場合、端末900Dの制御部110は、楽曲があたかもユーザ902Uの位置から放音されているかのようなオーディオ信号を生成し、ヘッドフォン200を介して放音する。
次に、図中波線で示すように、各ユーザ902Dおよび902Uが互いに近づくように移動すると、端末900Dの制御部110は、端末900Uおよび900D間の距離が短くなるにつれ、ヘッドフォン200から放音する楽曲の音圧(音量)を増大させる。これにより、ユーザ902Dは、自身の位置と楽曲が放音される地点との相対的な位置関係が、ユーザ902Dと他のユーザ902Uとの相対的な位置関係と連動するかのような感覚を得ることができる。
次いで、図28中の破線で示すように、ユーザ902Uが、端末900Dのユーザ902Dからみて右手方向に遠のくように移動したとする。このようにユーザ902U(端末900U)が移動すると、ユーザ902Uが遠のくにつれ、ヘッドフォン200から放音される楽曲の音圧は左右両耳とも小さくなる。ただし、ユーザ902Dの右耳とユーザ902Uとの距離は、ユーザ902Dの左耳とユーザ902Uとの距離より短いため、右耳に至る音の音圧は、左耳に至る音の音圧よりも高くなる。同様の理由により、Rチャネル信号はLチャネル信号より遅延したものとなる。これにより、ユーザ902Dは、楽曲が放音される地点が右手方向に遠のくことを知覚するとともに、他のユーザ902Uが右手方向に移動するという情報を得ることができる。すなわち、ユーザ902Dは、あらかじめ他のユーザ902Uの位置に対応付けられた音の種類を知っていれば、ヘッドフォン200から放音される音を聞くのみで、他のユーザ902Uのおおよその位置を得ることができる。
ここで、音像を定位させる際に、端末900Uの位置の実測値ではなく位置予測部920による予測値を用いる理由について説明する。
例えばサウンドデータ配信サーバ800と端末900Dとのデータ伝送速度が遅い場合や、サウンドデータ配信サーバ800の処理能力が低い場合などにおいては、端末900Dが取得できる他の端末900Uの端末位置情報SP1の単位時間あたりのサンプル数が少なくなる。このように、端末位置情報SP1のサンプル数が少なくなると、時間的に連続する端末位置情報SP1により示される位置が互いに極端に離間してしまうといった事態が生じ得る。このような事態が生じると、定位された音像により、ユーザ902Dに対して、発音地点が瞬間的に離れた地点に移動するかのような違和感を与えるおそれがある。これに対処すべく、本実施形態では、端末900Dにおいて、端末位置情報SP1を取得した後、次の端末位置情報SP1を取得するまでの期間中に、端末900Uの位置を予測に基づいて更新して、更新した位置に応じて音像を定位させている。つまり、予測値により実測値を時系列的に補間して、音像定位に用いられる時間的に連続した端末900Uの位置が極端に離間するという事態を回避しつつ音像を定位させている。これにより、ユーザ902Dに与える違和感を排除することが可能となる。
なお、端末900Uの位置を予測する方法は、移動ベクトル量MVを用いた線形の予測方法に限られない。例えば、過去における3以上の時点と、それらの各時点における端末900Uの位置との組をパラメータとする非線形関数により、非線形状の端末900Uの経路を予測しても良い。さらに、道路情報などの地理情報を用いて、ユーザ902Uが移動する周辺の地理状況の影響を取り入れて経路を予測しても良い。これにより、人間が行動可能な範囲を考慮して経路を予測できるため、予測精度を向上させることができる。
もっとも、端末900Dが十分なサンプル数の端末位置情報SP1を取得できる場合であれば、予測値を用いることなく実測値(端末位置情報SP1)のみを用いて音像を定位させても良いのはもちろんである。また、原則的には実測値を用いて音像を定位させる一方で、端末位置情報SP1のサンプル数が少ない場合にのみ選択的に予測値を用いて音像を定位させても良い。
本実施形態においては、仮想的に音を出力する地点の位置は、全て端末900の位置に対応づけられていたが、端末900の位置に対応づけられた発音地点と、第1実施形態で説明した位置が固定された発音地点とを混在させる構成としても良い。このような構成とする場合、サウンドデータ配信サーバ800において、位置が移動する発音地点と、移動しない発音地点とに分けて処理を実行することにより、すなわち位置が移動する発音地点に対してのみ移動ベクトル量MVの演算を行うことにより、全体としての処理量を低減させることが可能である。
本実施形態においては、端末900Dに配信されるサウンドデータSDは、端末900Uからアップロードされたデータであったがこれに限られない。例えば、サウンドデータ配信サーバ800の記憶部330にあらかじめ複数のサウンドデータSDを記憶させ、そのいずれかを端末900Dに配信しても良い。いずれのサウンドデータSDをいずれの他の端末900Uに対応づけるかは、ユーザ902Uが端末900Uを介して指示しても良いし、ユーザ902Dが端末900Dを介して指示しても良い。これにより、端末900Uからアップロードされる情報からサウンドデータSDを省略することができるので、そのデータ量が大幅に削減される。
本実施形態においては、ユーザ902Dおよび902U間の位置関係と、ユーザ902Dの顔の向く方向Aとに応じて音像を定位させたが、さらに以下のような種々の変更を加えることが可能である。例えば、端末900Uと端末900Dとの速度差に応じて音の振動数を変化させることによって、音像にドップラー効果の影響を取り入れても良い。これにより、ユーザ902Dおよび902Uがすれ違う際に、その雰囲気をリアルに表現することができる。
また、端末900Dあるいは900Uの位置に応じて、ヘッドフォン200から出力される音にエフェクトをかけても良い。例えば、基地局510が提供するサービスエリアのうち、特定の領域に端末900Dあるいは900Uが位置する場合に、楽曲のテンポや音のコード感などを変化させても良い。かかるサウンドデータ配信システムを実現するには、サウンドデータ配信サーバ800の記憶部330に、サービスエリアを区画した領域ごとに、サウンドデータSDにエフェクトを付与するためのパラメータを記憶させる。そして、サウンドデータSDの配信時において、端末900Dあるいは900Uの位置に応じてパラメータを選択し、パラメータに応じたエフェクトを付与したサウンドデータSDを端末900Dに配信すれば良い。これにより、ユーザ902Dあるいは902Uが、例えば商店街などの特定の領域を通過する場合に、発音地点からの音にエフェクトが付与されるため、アミューズメント性が向上する。
さらに、ユーザ902Uの顔を向く方向Aの影響を音像定位に取り入れることも可能である。例えば、ユーザ902Uの位置から仮想的に出力する音について、ユーザ902Uの顔の向く方向Aの指向性を持たせても良い。これにより、ユーザ902Dは、あたかもユーザ902Uの口から音が出力されているかのような感覚を得ることができる。
また上述の端末900Dは、音のみにより他の端末900Uとの位置関係をユーザ902Dに示したが、これと並列して、他の手法を用いて端末900Uとの位置関係を示しても良い。例えば、上述した構成に加え、端末900DにLED(Light Emitting Diode)などの表示手段を設け、他の端末900Uとの距離が近い場合ほど、LEDの発光強度を強くして、ユーザ902Dに位置関係を示す構成としても良いし、また、端末900Dに機械的な振動を発生させるバイブレータを内蔵しておき、振動により他の端末900Uとの位置関係を示しても良い。これにより、ユーザ902Dは、聴覚に加え、視覚あるいは触覚によって、他のユーザ902Dの位置を把握することができる。
<第1、第2、第3および第4実施形態の変形例>
なお、上述した各実施形態におけるオーディオデータ生成部160は、ユーザの位置および顔の方向と、発音地点の位置とに応じて、オーディオ信号を生成したが、さらに、ユーザが位置する空間の音場(例えば、ビルの壁による音の反射、回折などの効果)を取り入れる構成としても良い。
また、上述した各実施形態においては、ヘッドフォン200によってオーディオ信号を音として出力する例を示したが、これに限られない。例えば、自動車の車内に設置された複数のスピーカなどから放音する構成としても良い。このような構成にする場合、オーディオ信号生成部160においては、例えば、自動車の進行方向などにより、ユーザの顔の向きを特定し、特定された顔の向きと、自動車の位置と、各々のスピーカおよび左右の耳の相対的な位置関係とに応じて、各スピーカから出力されるオーディオ信号を生成しても良い。
さらに、上述した各実施形態においては、発音地点の音像を定位させるために、2チャネルのオーディオ信号を生成する例を示したが、本発明はこれに限定されない。例えば、5.1チャネルなどの2チャネル以上のオーディオ信号を生成し、スピーカなどの放音装置から放音する構成としても良い。
上述した各実施形態においては、発音地点選択処理として、端末100、700および900との距離が近い発音地点から順番に、所定数に達するまで選択する方法(図9参照)を示したが、発音地点を選択する方法はこれに限られない。例えば、端末100との距離が閾値以下である発音地点を、選択数にかかわらず選択する方法など、端末100の位置と発音地点の位置とに応じて、発音地点を選択する方法であれば任意に本発明を適用できる。
なお、テーマパークなどの比較的狭い領域に、サウンドデータ配信システムを適用した場合などにおいて、全ての発音地点についての音像を定位させるときには、発音地点選択処理を省略することが可能である。
上述した第1、第2および第4実施形態では、端末100および900の各々において、仮想的な発音地点の音像を定位させたが、サウンドデータ配信サーバ300、610A、610B、610Cおよび800、あるいはコントロールサーバ600において音像を定位させ、その音像を示す信号を端末に配信しても良い。要は、ユーザの位置、および、顔の向いている方向Aを示す情報を取得し、その位置および顔の向いている方向Aと、仮想的な発音地点の位置とに応じて、ユーザからみて、発音地点に予め関連付けられた音が、当該発音地点の位置から出力しているように音像を定位させるならば任意に本発明を適用可能である。
また、本発明は、コンピュータを、以上説明した音像を定位させる端末100、700あるいは900として機能させるためのプログラムとしても実行可能である。すなわち、このプログラムは、コンピュータを、ユーザの位置、および、顔の向いている方向を示すユーザ情報を取得する機能と、仮想的な発音地点の位置を示す発音位置情報を取得する機能と、取得したユーザ情報で示される位置であって、取得したユーザ情報で示される方向に顔を向けたユーザからみて、発音地点に予め関連付けられた種類の音が、発音位置情報で示される位置から出力しているように音像を定位させる機能とを実現させるためのプログラムとして特定される。
さらに、本発明は、このプログラムを記録したコンピュータ読みとり可能な記録媒体としても実現可能である。
100,700,900…端末、110,710…制御部、120…指示入力部、130…無線通信部、140…測位部、145…衛星電波受信部、150…方位検出部、160…オーディオ信号生成部、170…加工部、172…パラメータ生成部、173…ディレイパラメータ生成部、174…アンプパラメータ生成部、176…遅延部、178…アンプ、180…混合部、190…オーディオ信号出力部、200…ヘッドフォン、210…方位センサ、220,230…放音部、300,610A,610B,610C,800…サウンドデータ配信サーバ、310…制御部、320…通信部、330…記憶部、400…衛星群、500…移動通信網、510…基地局、600…コントロールサーバ、720…発音情報記憶部