以下、本発明を実施するための最良の形態について、好ましい実施例を示して説明する。
本発明の実施形態に基づく実施例1の楽曲検索再生装置1の構成を図1に示して説明する。
本実施例による楽曲検索再生装置1は、再生中の楽曲をキーとして利用者の操作を受け付けることにより、記録媒体等に格納された楽曲の中から利用者所望の楽曲を検索して再生を行うことを特徴とする。本実施例による楽曲検索再生装置1の構成は、入力手段10と、制御手段20と、格納手段30と、表示手段50と、再生手段60からなる。
入力手段10は、利用者が入力を行うデバイスであり、マウスやキーボードのほか、リモコンや携帯端末で利用可能な十字カーソルやクリックホイール等である。
制御手段20は、印象軸変更手段21と、印象語変更手段22と、嗜好情報変更手段23と、再生曲選出手段24と、コマンド作成手段25とを有する。印象軸変更手段21は、現在選択中の印象軸から別の印象軸に切り換える手段である。印象軸とは、楽曲の雰囲気を表現するものである。各々の印象軸には1つ又は複数の印象語が対応付けられている。印象軸の設定情報は後述する印象設定格納手段32に格納されている。
印象語変更手段22は、現在の印象語から、同一印象軸内の印象語に変更する。印象語とは、印象軸の要素であって、楽曲の雰囲気をより詳細に表現したものである。また、それぞれの印象語には順位が割り振られており、印象軸の表現する雰囲気の程度を表している。印象語の設定情報は後述する印象設定格納手段32に格納されている。
嗜好情報変更手段23は、利用者の入力に従って現在再生中の楽曲の嗜好度を増減する。嗜好度とは、楽曲に対する利用者の嗜好の度合いを数値化したものであり、後述する嗜好情報格納手段34に格納されている。再生曲選出手段24は、現在選択中の印象語や、各楽曲に設定されている嗜好度を参考に、再生する楽曲を選出する手段である。コマンド作成手段25は、現在再生中の楽曲の印象軸や印象語から、利用者が入力可能なコマンドを作成する。コマンド作成手段25で作成されたコマンドは表示手段50を介してアンケート選択情報として利用者に提示される。
格納手段30は、メモリやHDD等であり、楽曲格納手段31と、印象設定格納手段32と、印象データ格納手段33と、嗜好情報格納手段34と、コマンド格納手段35と、一次記憶手段36とを有する。
楽曲格納手段31は、楽曲本体であるデジタルデータを格納する。デジタルデータはコンテンツIDによって管理されている。
印象設定格納手段32は、楽曲の雰囲気を表す印象軸と、その印象軸の要素である印象語と、各印象語の順位を格納する。印象設定格納手段32のフォーマットの一例を図2に示す。図2の例では、「力強さ」軸や「静かさ」軸等が印象軸にあたる。「力強さ」軸は「激しい」や「力強い」を有するといったように、それぞれの印象軸は1つ又は複数の印象語を有している。また、それぞれの印象語には印象軸内での順位が割り振られている。図2の例では「力強さ」軸の1位が「激しい」、2位が「力強い」、3位が「やや力強い」という設定になっている。印象軸内の印象語の個数は他の印象軸と同数にする必要がなく、印象軸ごとに任意に定められるものであってよい。
印象データ格納手段33は、楽曲ごとに与えられている印象軸と、印象語を格納する。楽曲格納手段31の楽曲とはコンテンツIDによって対応付けがなされている。格納されている印象データのフォーマットの一例を図3に示す。図3に示したとおり、1つの楽曲に複数の印象軸や印象語を割り当ててもよい。
楽曲へ印象語を割り当てる方法の1つとして、楽曲の音響信号から音響特徴量を生成し、音響特徴量を使って印象語を生成する方法を用いることができる。まず、例えば特開平6−290574号公報や特開2002−278547号公報等に開示された方法により音響信号から音響特徴量を算出する。次に、学習用の楽曲の集合を用意し、それらの楽曲に印象語を付与した上で、公知の決定木やベイズルール等を用いて音響特徴量を印象語に変換するルールを作成する。そして、作成した変換ルールを用いて印象語を生成する。
算出した音響特徴量から決定木を利用して印象語を割り当てた一例を図4に示す。図4の例では、もし音響特徴量3の値が「0.52」以上で、音響特徴量1の値が「120」以上の楽曲の場合、この楽曲は「力強い」という印象語に分類される。
ベイズルールを用いて音響特徴量から印象語を割り当てる方法を以下に説明する。印象語を割り当てる楽曲の音響特徴量xをN次元ベクトル(x1,x2,x3,・・・,xN)とし、M種類の印象語があるものとする。
数1を用いて、音響特徴量xに対して、ある1つの印象語Ck(k=1〜M)を対応させる。ここで、P(Ci|x)は、音響特徴量がxである場合に印象語がCi(i=1〜M)となる条件付き確率であり、P(x|Ci)は、印象語がCiである場合に、音響特徴量がxとなる条件付き確率であり、P(Ci)は、印象語がCiである事前確率を表わす。すなわち、M種類の印象語に対する、事前確率P(Ci)(i=1〜M)と、条件付き確率P(x|Ci)(i=1〜M)をあらかじめ格納しておき、これらの積が最大となる印象語Ckを前記楽曲の印象語として割り当て、印象データ格納手段33に格納する。
上記、決定木やベイズルールはあくまでも一例であって、これらの手法と同等の出力が得られる他の手法を用いて印象語を割り当ててもよい。また、上記のような方法ではなく、あらかじめ人手により印象語を割り当てておいてもよい。
嗜好情報格納手段34は、利用者の各楽曲に対する嗜好度合いを格納する。楽曲格納手段31の楽曲とは、コンテンツIDによって対応付けがなされている。図5に嗜好情報格納手段34のフォーマットの一例を示す。
コマンド格納手段35は、コマンド作成手段25によって作成される、利用者が入力を行うためのコマンドの作成ルールを格納する。
一次記憶手段36は、現在再生中の曲のコンテンツID等の非永続的な情報を格納する。図6に一次記憶手段36のフォーマットの例を示す。一次記憶手段36が格納する情報は、現在再生中の楽曲のコンテンツIDと、現在選択中の印象語と印象軸、再生済みである楽曲のコンテンツID、過去に選択したことのある印象軸である。
表示手段50は、液晶ディスプレイ等の表示機器等であり、コマンド作成手段25で作成されたコマンド等を利用者に提示する。再生手段60は、楽曲のプレーヤやスピーカ、ヘッドホン等の再生機器である。
次に、本実施例における楽曲検索再生装置1の動作について、図7のフローチャートを参照して説明する。まず、楽曲検索再生装置1を起動すると、制御手段20は印象軸と印象語の初期値の設定をする(ステップS10)。具体的には、印象軸と印象語の設定基準はランダムでもよいし、前回起動時の最後に再生されていた楽曲の印象軸と印象語を用いてもよい。設定した印象軸と印象語を、現在選択中の印象軸、印象語として一次記憶手段36に格納する。
次に、再生曲選出手段24によって楽曲の選曲を行う(ステップS20)。ステップS10で選択した印象語に属する楽曲を1曲選曲する。すなわち、再生曲選出手段24は、選択中の印象語を有する楽曲のコンテンツIDを、印象データ格納手段33を参照して取得し、そのコンテンツIDをもとに嗜好情報格納手段34を参照して一番大きい嗜好度を有するコンテンツIDを選出する。また、選出された楽曲のコンテンツIDを一次記憶手段36に格納する。
または、嗜好情報格納手段34を用いずにコンテンツIDを取得するようにしてもよい。例えば、再生曲選出手段24は、1つのコンテンツIDを印象データ格納手段33からランダムに取得して一次記憶手段36に格納する。
次に、ステップS20で選曲された楽曲を、再生手段60によって再生を行う(ステップS30)。本発明は再生中の楽曲をキーとして操作を行うために、楽曲検索再生装置は常に再生状態である必要がある。
楽曲の再生を開始したら、現在選択中の印象語や、再生中の楽曲を参考に利用者入力用のコマンドを作成する(ステップS40)。コマンド作成手段25は、表示手段50に表示するためのコマンドメッセージ(アンケート選択情報)と、各コマンドに割り当てられたコマンド番号とを組み合わせて、コマンドを作成する。コマンド番号とは、どのコマンドを利用者が入力したかを識別するための番号であり、ユニークな番号を割り当てていればどのような値でもよい。なお、コマンド作成(ステップS40)を再生(ステップS30)の後ではなく、再生の前に行うようにしてもよい。
利用者入力用のコマンドは、印象軸変更用コマンドと、印象語変更用コマンドと、嗜好情報用コマンドの3つに大別される。利用者入力用のコマンドの一例を図8に示す。また、ステップS40の動作は図9のフローチャートに示すように、ステップS41、ステップS42、ステップS43の3ステップに分かれている。
ステップS41では、コマンド作成手段25が現在選択中の印象軸を別の印象軸に変更するための印象軸変更用コマンドを作成する。コマンド作成手段25は、再生中の楽曲に関係なく、常に同一のコマンドメッセージとコマンド番号を割り当ててコマンドを作成する。図8の例では、「なんとなく気分に合わない」をコマンドメッセージとして割り当てている。
ステップS42では、コマンド作成手段25が現在再生中の楽曲の嗜好度合いを増減する嗜好情報用コマンドを作成する。コマンド作成手段25は、再生中の楽曲の嗜好度を増加するためのコマンドには「この曲は好き」というコマンドメッセージを、嗜好度を減少するためのコマンドには「この曲は嫌い」というコマンドメッセージをそれぞれ割り当てて、ユニークなコマンド番号を設定することによりコマンドを作成する。
ステップS43では、コマンド作成手段25が現在選択中の印象語の順位を中心に、順位を上げる印象語順位UPコマンドと、順位を下げる印象語順位DOWNコマンドの2つを印象語変更用コマンドとして作成する。このコマンドは、楽曲のイメージが聴きたいイメージの楽曲に近いが、若干ずれている場合の修正として利用する。
まず、コマンド作成手段25は、現在選択中の印象軸と印象語を一次記憶手段36から取得し、取得した印象軸をもとにコマンド格納手段35を参照して、印象語順位UPコマンドメッセージと、印象語順位DOWNコマンドメッセージを取得する。次に、印象語順位UPコマンドと、印象語順位DOWNコマンドにそれぞれユニークなコマンド番号を割り当てる。
もし、現在選択中の印象語の印象語順位が、同印象軸内で一番順位が高いならば印象語順位UPコマンドは作成せず、逆に、同印象軸内で一番順位が低いならば印象語順位DOWNコマンドは作成しない。
コマンド格納手段35のフォーマットの一例を図10に示す。もし、現在選択中である印象軸が「力強さ」軸ならば、印象語順位を変更するコマンドとして、「もっと力強い曲が聴きたい」と「もう少し落ち着いた曲が聴きたい」を取得する。「もっと力強い曲が聴きたい」ならば印象語順位を上げ、「もう少し落ち着いた曲が聴きたい」ならば印象語順位を下げるコマンドとなる。
以上のステップS40で作成したコマンドを、表示手段50に表示する(ステップS50)。図8の例に示したような形式でコマンドを表示する。
次に、制御手段20は利用者からのコマンド入力がなされたかどうかの判定を行う(ステップS60)。もし、利用者が入力手段10を介してコマンド入力を行ったと判断した場合はステップS70へ進み、入力を行わなかったと判断した場合はステップS100へそれぞれ進む。入力手段10の一例を図11に示す。図11の(a)は十字キー、(b)は数字キーの一例を示している。
利用者の入力可能なコマンドが図8の例であるとして説明を行う。図8に示してある矢印カーソルを、図11(a)に示したコマンド選択ボタン11を利用して選択したいコマンドに合わせ、決定ボタン12を押してコマンドを決定する。また、同図(b)のように各コマンドに数字を割り当て、数字キーの「1」や「2」を押すと、その数字に該当するコマンドを実行するという方法をとってもよい。図8の例の場合、図11(b)のダイレクト入力ボタン13の「1」を押すと、「1 なんとなく気分に合わない」が実行される。
ステップS60で利用者によるコマンド入力を確認して、そのコマンドが終了コマンドかどうかの判定を行う(ステップS70)。入力されたコマンドが終了コマンドだった場合、制御手段20は楽曲検索再生装置1を終了する。終了コマンド以外のコマンドであった場合、ステップS80へ進む。図8の例では、「9 終了」が終了コマンドにあたる。また、電源ボタン等、入力手段10に具備されている特別に割り当てられたボタン(図示せず)を押すことで、終了コマンドとしてもよい。
ステップS60で利用者が入力したコマンドが終了コマンド以外の場合、受け取ったコマンドに従って再生曲評価処理を行う(ステップS80)。ステップS80の再生曲評価処理の詳細については後述する。
再生曲の変更をステップS80で行ったかどうかの判定を行う(ステップS90)。ステップS80で再生曲の変更を行った場合、ステップS30へ戻り、選択した楽曲の再生を行う。再生曲の変更が行われなかった場合、ステップS40に戻って利用者コマンドの作成をし直し、再び利用者コマンド入力の受け付けを行う。
ステップS60で利用者のコマンド入力が行われなかった場合、現在再生中の楽曲が再生し終わったかどうかの判断を行う(ステップS100)。もし、再生し終わっていた場合、ステップS110に進み、そうでなければステップS60に戻り、利用者コマンドの受け付けを行う。
現在再生中の曲の演奏が終わった場合は、現在選択中の印象語と同一の印象語を有し、かつ、まだ再生されていない楽曲を、再生曲選出手段24によって選曲する(ステップS110)。まず、再生曲選出手段24は、現在選択中の印象軸と印象語を一次記憶手段36から取得する。次に、取得した印象語と同一の印象語を有するコンテンツIDを印象データ格納手段33から取得する。その後、取得したコンテンツIDを用いて嗜好情報格納手段34を参照して嗜好度を取得し、嗜好度が大きい楽曲を優先的に選曲する。逆に、嗜好度が所定値を下回る楽曲は選曲しないようにする。選曲された楽曲のコンテンツIDを、一次記憶手段36に格納する。取得したコンテンツIDが既に選曲済みであるという情報も、一次記憶手段36に記憶しておく。また、嗜好情報格納手段34を参照せずに印象データ格納手段33からランダムに1つのコンテンツIDを取得するようにしてもよい。
もし、現在選択中の印象語に属する未再生曲がなくなった場合、一次記憶手段36に格納した再生済みのコンテンツIDの情報をクリアする。そのとき、別の印象語や印象軸に切り換えてもよい。
また、このとき、再生が終了した楽曲の嗜好度を所定値だけ増加させてもよい。制御手段20は再生が終了した楽曲のコンテンツIDを一次記憶手段36より取得し、そのコンテンツIDをもとに嗜好情報格納手段34を参照して前記楽曲の嗜好度を取得し、嗜好情報変更手段23によって前記楽曲の嗜好度を所定値だけ増加させる。これは最後まで聴いた楽曲は利用者にとって好きな楽曲である、という推測に基づいている。
ここで、前述したステップS80の利用者コマンドによる再生曲評価処理の動作について、図12のフローチャートを参照して説明する。ステップS80では、ステップS60によって受け付けたコマンドにより、どの評価処理を行うかを決定する。利用者が入力可能なコマンドは図8の例に従うものとする。利用者のコマンド入力による処理は、前述したステップS40で示した通り、印象軸変更用コマンドと、印象語変更用コマンドと、嗜好情報用コマンドの3つに大別される。
ステップS120では、制御手段20が印象軸変更用コマンドに割り当てられたコマンド番号を取得したかどうかの判定を行う。もし、印象軸変更用コマンドのコマンド番号を取得した場合ステップS130に進み、それ以外のコマンド番号であった場合ステップS121に進む。図8のコマンドの例では、「なんとなく気分に合わない」を選択した場合が印象軸変更用コマンドである。
ステップS121では、制御手段20が印象語変更用コマンドに割り当てられたコマンド番号を取得したかどうかの判定を行う。もし、印象語変更用コマンドのコマンド番号を取得した場合ステップS131に進み、それ以外のコマンド番号であった場合ステップS122に進む。図8の例では、「今の曲よりもう少し激しい曲が聴きたい」と、「今の曲よりもう少し落ち着いた曲が聴きたい」を選択した場合が印象語変更用コマンドとなる。
ステップS122では、制御手段20が嗜好情報用コマンドのコマンド番号を取得したかどうかの判定を行う。もし、嗜好情報用コマンドのコマンド番号を取得した場合、ステップS132に進む。それ以外のコマンド番号であった場合、特に何もしない。図8の例では「この曲は嫌い」が嗜好情報用コマンドにあたる。
印象軸変更用コマンドを取得すると、印象軸変更手段21は現在選択中の印象軸から別の印象軸に変更する(ステップS130)。まず、印象軸変更手段21は、現在選択中の印象語と印象軸を一次記憶手段36から取得する。取得した印象軸以外の印象軸を、印象設定格納手段32に設定されている印象軸の中からランダムに選び出す。選び出した印象軸を、一次記憶手段36に現在設定されている印象軸として格納する。図2に示したように印象設定格納手段32が設定されており、現在選択中の印象軸が「力強い」であった場合、別の印象軸である「静かさ」軸や「ノリのよさ」軸等に変更する。図8のコマンドの例では「なんとなく気分に合わない」が印象軸変更コマンドにあたる。
ランダムに印象軸を変更する際、一度選択したことのある印象軸には移動しないようにする。どの印象軸を選択済みかの情報は、一次記憶手段36に格納しておく。既にどの印象軸も選択済みだった場合、一次記憶手段36に格納された印象軸の選択情報を全てクリアし、どの印象軸も選択したことのない状態に戻す。
このようにランダムに印象軸を選択する方法は、利用者に負担をかけず、「何を聴きたいか全くわからない」状態の利用者に特に適している。何度かこのコマンドを実行することにより、聴きたいと感じる楽曲にたどり着くことが可能である。
印象軸変更後、印象軸内の印象語を選択する。印象語の決定方法として、ランダムに選択する方法や、印象軸の中央にあたる印象語を選択する方法がある。ランダムに印象語を選択する方法は、制御手段20によって乱数を発生させ、その乱数の値に従ってどの印象語を選択するかを決定する。例えば、印象軸内の印象語がM個あるならば、0〜1の区間を均等にM分割して各区間に印象語を割り当て、発生した乱数の値(0〜1)がどの区間に属するかに応じて、この区間に割り当てられた印象語を選択する。選択した印象語を、現在選択中の印象語として一次記憶手段36に格納する。
印象語変更用コマンドを取得すると、印象語変更手段22は現在選択中の印象語から、指示に従って別の印象語へと変更する(ステップS131)。まず、印象変更手段22は、一次記憶手段36に格納された現在選択中の印象軸と印象語を取得する。次に、取得した印象軸と印象語をもとに印象設定格納手段32を参照し、この印象語の印象語順位を取得する。取得した印象語順位をもとに、コマンドに従って印象語を変更する。
もし、コマンドが印象語順位UPコマンドならば、印象語順位を1つ上げ、現在選択中の印象軸と前記印象語順位をもとに印象設定格納手段32を参照して、対応する印象語を取得する。印象語順位DOWNコマンドならば、印象語順位を1つ下げ、以後は印象語順位UPコマンドと同様の処理を行う。取得した印象語を、選択中である印象語として一次記憶手段36に格納する。
現在選択中の印象軸が「力強さ」軸で、印象語が「力強い」であるとき、図2の印象設定格納手段32の例をもとに印象語を変更した一例が図13である。コマンドが印象語順位UPコマンドである「もっと力強い曲が聴きたい」ならば、1つ上の印象語順位である印象語「激しい」に変更する。コマンドが印象語順位DOWNコマンドである「もう少し落ち着いた曲が聴きたい」ならば、1つ下の印象語順位である印象語「やや力強い」に変更する。
嗜好情報用コマンドを受け取ると、嗜好情報変更手段23は楽曲の嗜好度を増減し、変更後の嗜好度を嗜好情報格納手段34に格納する(ステップS132)。まず、嗜好情報変更手段23は、現在再生中の楽曲のコンテンツIDを一次記憶手段36から取得し、取得したコンテンツIDをもとに嗜好情報格納手段34を参照し、このコンテンツIDに対応付けられた嗜好度を取得する。次に、取得した嗜好度をコマンドに従って増加、または減少し、変更後の嗜好度を嗜好情報格納手段34に格納する。
図8のコマンドの例において、「この曲は嫌い」が選択された場合は再生中の楽曲の嗜好度を減少させ、「この曲が好き」が選択された場合は再生中の楽曲の嗜好度を増加する。
ステップS132において、嗜好度を減少させたかどうかの判断を行う(ステップS140)もし、嗜好度を減少させた場合は、再生曲を変更するためにステップS150に進み、そうでなければ再生曲評価処理を終了する。
印象語の変更や嗜好度を減少させた場合、再生曲選出手段24を用いて再生曲を変更する(ステップS150)。もし、楽曲の嗜好度を減少させた場合は、現在選択中の印象語と同一の印象語を有する楽曲を選び出す。ステップS120やステップS121により印象語の変更を行った場合、変更後の印象語と同一の印象語を有するコンテンツIDを、印象データ格納手段33を参照してランダムに選び出す。選び出したコンテンツIDを、再生中の楽曲のコンテンツIDとして一次記憶手段36に格納する。
また、嗜好度を利用して選曲を行ってもよい。この場合は、まず制御手段20が現在選択中の印象語と同一の印象語を有する各楽曲のコンテンツIDを取得し、そのコンテンツIDに対応付けられた嗜好度を嗜好情報格納手段34から取得する。次に、再生曲選出手段24は、嗜好度が大きいほどその嗜好度に対応する楽曲を選出しやすいように制御する。図5の例に示されたコンテンツID1とコンテンツID2とでは、コンテンツID2の方を選ぶ確率を大きくする。また、取得した嗜好度が所定値を下回る楽曲は選出しないように制御してもよい。
以上の実施例1によれば、利用者が聴きたい気分の曲を現在再生中の曲を基準に探すことができるので、利用者はイメージが湧きやすく、直感で検索を行うことができる。
また、入力が簡便であり、複雑な操作が不要なため、画面サイズが小さく、入力デバイスが制限される小型の携帯端末機器や、CD、MDプレーヤ等においても適用することができる。
さらに、利用者は所望の印象語や楽曲等をリストの中を探したり、文章や単語を入力したりする必要がなく、手軽に操作することができるため、複雑な操作が困難な環境下においても所望の楽曲を選曲することができる。
本発明の実施例2による楽曲検索再生装置2について説明する。実施例1の楽曲検索再生装置では、再生中の楽曲と、各楽曲に割り当てられた印象軸や印象語をもとに所望の楽曲を検索していたが、本実施例の楽曲検索再生装置2では、現在再生中の楽曲のアーティスト名や年代情報等の書誌情報を用いることで、再生する楽曲を決定する方法を提案する。本実施例によって、突発的に再生中のアーティストの曲をしばらく聴いてみたくなったり、再生中の曲と同年代の曲をしばらく聴きたくなったりするといった要求に応えることが可能となる。
本実施例による楽曲検索再生装置2の構成を、図14を参照にして説明する。楽曲検索再生装置2では楽曲検索再生装置1からの変更点として、制御手段20に書誌情報取得手段26が、格納手段30に書誌情報格納手段37と、再生条件格納手段38がそれぞれ追加されている。新たに追加された書誌情報取得手段26と、書誌情報格納手段37と、再生条件格納手段38についての説明を行い、その他の手段に関しては、楽曲検索再生装置1と同様であるため詳しい説明は省略する。
書誌情報取得手段26は、後述する書誌情報格納手段37に格納された、タイトル名やアーティスト名といった楽曲の客観的な情報である書誌情報を取得する。書誌情報格納手段37は、楽曲の客観的な情報である書誌情報を格納する。楽曲格納手段31の楽曲本体とはコンテンツIDによって対応付けがなされている。書誌情報の格納フォーマットの一例を図15に示す。
再生条件格納手段38は、再生する楽曲を選ぶための条件を格納する。楽曲検索再生装置2の起動時には再生条件格納手段38には何も格納されていない。再生条件格納手段38に何も設定されていないときは、実施例1と同様に、一次記憶手段36に格納されている再生中の楽曲の印象語に基づいて選曲が行われる。
本実施例における楽曲検索再生装置2の処理の流れは、図7に示した楽曲検索再生装置1と同じであるが、ステップS40のコマンド作成処理と、ステップS80の再生曲評価処理と、ステップS110の再生終了時の再選曲処理の内容が異なる。このステップS40、ステップS80およびステップS110に関する変更点の詳細について、以下に説明を行う。
本実施例におけるコマンド作成処理では、再生中の楽曲の書誌情報をもとに、どういった選曲を行うかを指示するためのコマンドを作成する(ステップS40)。実施例1でも述べたように、コマンド作成手段25がコマンドメッセージと、内部処理用のユニークなコマンド番号を割り当てることによって、コマンドを作成する。コマンドメッセージは再生中の楽曲によらず常に同じである。
コマンド作成手段25によって作成されたコマンドの一例を図16に示す。本実施例における利用者コマンドは、年代系コマンドと、アーティスト系コマンドと、ジャンル系コマンドの3つに大別される。図16の例における年代系のコマンドは「この年代の曲が聴きたい」と、「もっと新しい年代の曲が聴きたい」と、「もっと古い年代の曲が聴きたい」であり、アーティスト系のコマンドは「このアーティストの曲が聴きたい」と、「このアーティストが好き」と、「このアーティストが嫌い」であり、ジャンル系のコマンドは「このジャンルの曲が聴きたい」と、「このジャンルが好き」と、「このジャンルが嫌い」である。また、それぞれのコマンドにはコマンド番号が割り当てられている。
ここで、現在再生中の楽曲のコンテンツIDをもとに書誌情報取得手段26が書誌情報格納手段37から年代情報を取得し、年代コマンドの利用の可否を判断する。もし、取得した年代が登録された書誌情報格納手段37の中で最も新しい年代であった場合、「もっと新しい年代の曲が聴きたい」というコマンドは利用できず、逆に、最も古い年代の曲であった場合も、「もっと古い年代の曲が聴きたい」というコマンドは利用できない。利用できないと判断したコマンドは作成しないようにする。
本実施例における再生曲評価処理の動作(ステップS80)について、図17のフローチャートを参照して説明する。ステップS123では、制御手段20は、入力されたコマンドが年代に関するコマンドであるかどうか、コマンド番号をもとに判定を行う。入力されたコマンドが年代に関するコマンドの場合、ステップS133へ進む。それ以外のコマンドの場合ステップS124へ進む。
ステップS124では、制御手段20は、入力されたコマンドがアーティストに関するコマンドであるかどうか、コマンド番号をもとに判定を行う。入力されたコマンドがアーティストに関するコマンドの場合、ステップS134に進む。それ以外のコマンドの場合ステップS125へ進む。
ステップS125では、制御手段20は、入力されたコマンドがジャンルに関するコマンドであるかどうか、コマンド番号をもとに判定を行う。入力されたコマンドがジャンルに関するコマンドの場合、ステップS135に進む。それ以外のコマンドの場合は再生曲評価処理を終了する。
ステップS133では、年代に関するコマンドの処理を行う。年代に関するコマンドは、現在再生中の楽曲を中心として、同じ年代の楽曲を選出するコマンド、古い年代の楽曲を選出するコマンド、新しい年代の楽曲を選出する3つのコマンドがある。まず、現在再生中の楽曲のコンテンツIDを一次記憶手段36から取得し、そのコンテンツIDをもとに書誌情報格納手段37に記載された年代情報を書誌情報取得手段26によって取得する。
もし、再生中の楽曲と同じ年代の楽曲を選出する場合は、前記取得した年代情報をもとに、その年代の楽曲をこれから所定個数再生するという情報を、再生条件格納手段38に格納する。具体的な例を示すと、図16のコマンドの例において、「この年代の曲が聴きたい」を選択した場合に、上記ステップS133の処理を行う。前後2年を同年代として設定した場合で、もし、再生中の楽曲が1990年の曲ならば、1988〜1992年までの楽曲が同年代に該当する。この「1988〜1992年までの楽曲を所定個数再生する」という再生曲の選出条件を、再生条件格納手段38に格納しておく。
もし、再生中の楽曲より新しい年代の楽曲を選出する場合は、前記取得した再生中の楽曲の年代情報をもとに、書誌情報格納手段37に記載された他の楽曲の年代情報を参照し、再生中の楽曲の年代よりも所定の年数だけ新しい年代の楽曲を、再生曲選出手段24によってランダムに選出する。所定の年数を何年とするかは予め設定しておく。例えば、所定の年数を5〜10年と設定しておき、現在再生中の楽曲が1980年であったときに前記処理を実行すると、1985年〜1990年の楽曲をランダムに1曲選曲する。
もし、再生中の楽曲より古い年代の楽曲を選出する場合は、前記取得した再生中の楽曲の年代情報をもとに、書誌情報格納手段37に記載された他の楽曲の年代情報を参照し、再生中の楽曲の年代よりも所定の年数だけ古い年代の楽曲を、再生曲選出手段24によってランダムに選出する。所定の年数を何年とするかは予め設定しておく。例えば、所定の年数を5〜10年と設定しておき、再生中の楽曲が1980年であった場合に上記処理を実行すると、1970年〜1975年の楽曲をランダムに1曲選曲する。
ステップS134では、アーティスト情報に関するコマンドの処理を行う。アーティスト情報に関する処理は、再生中の楽曲のアーティスト情報をもとに、同じアーティストの楽曲を所定個数選び出す処理と、同じアーティストの各楽曲の嗜好度を増減する処理の2種類がある。以下にその2種類の処理についての説明を行う。第1、第2のどちらの処理においても、再生中の楽曲のアーティスト情報を取得する必要がある。一次記憶手段36から再生中の楽曲のコンテンツIDを取得し、そのコンテンツIDに対応付けられた書誌情報であるアーティスト情報を、書誌情報格納手段37から書誌情報取得手段26によって取得する。
再生中の楽曲と同じアーティストの楽曲を選び出す第1の処理の場合は、前記取得したアーティスト情報をもとに、このアーティストの楽曲を所定個数再生するという再生条件を、再生条件格納手段38に格納する。図16のコマンドの例において「このアーティストの曲が聴きたい」を選択した場合、この処理を行う。例えば、現在再生中の楽曲のアーティスト名が「Mirvana」であるならば、このアーティスト情報「Mirvana」と同じアーティスト名を有する楽曲をこれから所定個数再生するという再生条件を、再生条件格納手段38に格納する。
前記アーティストの楽曲の嗜好度を増減させる第2の処理の場合は、前記取得したアーティスト情報をもとに、書誌情報格納手段37を参照し、同じアーティスト情報を有する全ての楽曲に対し、割り当てられたコマンド番号に従って所定の値だけ嗜好情報格納手段34に格納されている嗜好度を増減させる。嗜好度の減少を行った場合、再生条件格納手段38に格納されている再生条件をクリアする。
図16の例では、「このアーティストの曲は嫌い」を選択した場合、再生中の楽曲のアーティストの全ての曲に対し、嗜好度を所定の値だけ減少させる。「このアーティストの曲が好き」を選択した場合、再生中の楽曲と同じアーティストの楽曲に対し、一括して嗜好度を所定の値だけ増加させる。
ステップS135では、ジャンルに関するコマンドの処理を行う。ジャンル情報に関するコマンドもアーティストに関するコマンドと同様に、再生中の楽曲のジャンル情報をもとに、同じジャンルの楽曲を所定個数選び出すコマンドと、同じジャンルの楽曲に対して嗜好度を増減するコマンドがある。どちらの場合も、まず、再生中の楽曲のジャンル情報を、一次記憶手段36から再生中の楽曲のコンテンツIDを取得し、そのコンテンツIDに対応する書誌情報を、書誌情報取得手段26によって書誌情報格納手段37から取得する。
次に、再生中の楽曲と同じジャンルの楽曲を選び出す場合、前記取得した書誌情報に記載されたジャンルと同様のジャンルをもつ楽曲をこれから所定個数再生する、という再生条件を再生条件格納手段38に格納する。図16のコマンドの例において「このジャンルの曲が聴きたい」を選択した場合、前記処理を行う。例えば、現在再生中の楽曲のジャンル名が「Folk」で、あるならば、「Folk」というジャンル名を有する楽曲をこれから所定個数再生する、という再生条件を、再生条件格納手段38に格納する。
再生中の楽曲と同じジャンルの嗜好度を増減する処理に関しては、前記ステップS134での嗜好情報変更処理において、利用する書誌情報をアーティストからジャンルに置き換えればよいので、詳細な記述は省略する。
次に、制御手段20はステップS134、ステップS135において嗜好度を減少したかどうかの判断を行う(ステップS141)。嗜好度を減少させたと判断した場合、ステップS151へ進み、嗜好度を減少させなかったと判断した場合はそのまま再生曲評価処理を終了する。
ステップS141で嗜好度を減少させたと判断した場合、再生する楽曲の再選択を行う(ステップS151)。この場合の再生曲の選出方法は、実施例1で既に述べたステップS150と同様の処理を行う。以上が本実施例における再生曲評価処理ステップS80の説明である。
本実施例における図7のステップS110では、次に再生する楽曲を、再生条件格納手段38を参照して決定する。ステップS80の再生曲評価処理によって再生条件格納手段38に再生条件の指定をしていた場合、再生曲選出手段24は、その再生条件に当てはまる書誌情報を有する楽曲のコンテンツIDを、書誌情報格納手段37を参照してランダムに1つ選択する。
この際、嗜好情報格納手段34に格納されている嗜好度が所定値を下回っている楽曲や、一次記憶手段36を参照して、既に再生した楽曲等は再生しないようにする。選択した楽曲のコンテンツIDを、一時記憶手段36に既に再生した楽曲、及び現在再生中の楽曲として格納する。また、この指定条件に従った選曲を何回行ったかという情報も、一次記憶手段36に格納する。もし、再生条件格納手段38に設定されている所定個数の楽曲を再生した場合、もしくは再生条件に当てはまる未再生の楽曲がない場合は、再生条件格納手段38の再生条件をクリアし、実施例1と同様の方法で選曲を行う。
また、前記処理に加えて嗜好度を利用した選曲を行ってもよい。この場合は、まず制御手段20が再生条件に合致した楽曲の各コンテンツIDを取得し、そのコンテンツIDに対応付けられた嗜好度を嗜好情報格納手段34から取得する。次に、再生曲選出手段24は、嗜好度が大きいほどその嗜好度に対応する楽曲を選出しやすいように制御する。また、取得した嗜好度が所定値を下回る楽曲は選出しないように制御してもよい。
例えば、再生条件格納手段38にアーティスト情報による再生条件の指定がなされていた場合、そのアーティスト名と同じアーティスト名を有する楽曲のコンテンツIDを、書誌情報格納手段37を参照して調べ、複数見つかった場合はランダムに1つ選曲する。
以上の実施例2によれば、「なんとなく適当に楽曲再生をしていたときに、しばらくこのアーティスト(年代、ジャンル)が聴きたくなった」といった利用者のニーズを満たすことができる。
また、年代、ジャンル、アーティストの全てを利用しなくともよいので、設計者は状況に合わせて適した情報のみを使えばよい。
本発明の実施例3による楽曲検索再生装置3について説明する。実施例1の楽曲検索再生装置1では、利用者によって入力されたコマンドに基づいて、再生中の楽曲に対しての評価を行うものであったが、本実施例の楽曲検索再生装置3では、さらに、利用者によって入力されたコマンドに基づいて印象軸や印象語の評価を行うことで、利用者の好みである印象軸や印象語を優先的に選択するものである。
本実施例による楽曲検索再生装置3の構成を、図18を参照にして説明する。楽曲検索再生装置3では楽曲検索再生装置1からの変更点として、制御手段20に評価値算出手段27と、格納手段30に評価値格納手段39と、印象履歴格納手段40がそれぞれ追加されている。新たに追加された評価値算出手段27と、評価値格納手段39と、印象履歴格納手段40についての説明を行い、その他の手段に関しては、楽曲検索再生装置1と同様であるため詳しい説明は省略する。
評価値算出手段27は、利用者入力によるコマンドに従い、印象語や印象軸の評価値の算出処理を行う。評価値格納手段39は、評価値算出手段27によって算出された印象語や印象軸の評価値を格納する。印象履歴格納手段40は、後述する評価値算出手段27における第2の方法で、現在選択中の印象軸が一定時間変更されていない、または同印象軸内の楽曲を所定回数再生した場合に、時間順序に対応させて現在選択中の印象軸を格納する。
本実施例における楽曲検索再生装置3の処理の流れを、図19に示す。図7に示した楽曲検索再生装置1との変更点は、ステップS10と、ステップS75の印象評価値算出処理と、ステップS95のステイ状態判定処理と、ステップS80のフローチャートである図12のステップS130の処理が異なる。以下、ステップS10と、ステップS75と、ステップS95と、ステップS130についての説明を行う。
ステップS10において、実施例1と同様に印象軸と印象語を決定して一次記憶手段36に格納する際に、現在の時刻情報を制御手段20によって取得し、その時刻情報と印象軸、印象語を印象履歴格納手段40に格納する。利用者によるコマンド入力を受理すると、評価値算出手段27はコマンド入力に対する処理を行い、その結果を評価値格納手段39に格納する(ステップS75)。この処理の詳細はステップS95の説明の後に記す。
利用者によってコマンド入力が行われなかった場合、印象履歴格納手段40に格納された時刻情報をもとに、現在選択中の印象軸がステイ状態になったかどうかの判定処理を行う(ステップS95)。ステイ状態とは、現在設定中の印象語や印象軸が所定時間変更されていないか、もしくはその印象語や印象軸に属する楽曲を所定回数再生した状態を示す。ステイ状態であれば、利用者の所望の雰囲気と、現在選択中の印象軸や印象語がマッチしていると判断する。
まず、最後に印象軸、及び印象語を変更した時間を印象履歴格納手段40から取得して、現在の時刻情報も制御手段20によって取得する。次に、取得した2つの時刻情報を比較し、最後に印象軸、もしくは印象語を変更した時間から所定時間経過したと判断した場合、印象履歴格納手段40に現在選択中の印象軸、もしくは印象語がステイ状態であることを記憶する。
印象履歴格納手段40の例を図20に示す。図20は印象軸のステイ状態を格納した一例であり、印象軸のステイ状態が「力強さ」軸→「ノリのよさ」軸と遷移し、現在選択中の印象軸が「静かさ」軸で、変更した時間が20:00であることを示している。図20の現在時刻は20:04となっているため、ステイ状態であると判断する時間を4分とするならば、「静かさ」軸もステイ状態となる。
また、時刻情報ではなく、設定中の印象語や印象軸に属する楽曲の連続再生回数が、所定回数を超えた場合にステイ状態であると判断してもよい。その場合、印象履歴格納手段40に格納されていた時刻情報に代わり、連続再生回数が記録される。
以下にステップS75における印象評価値算出処理の詳細を図21のフローチャートを参照しながら説明する。なお、印象評価値算出処理は二通りの方法がある。
印象評価値算出処理の第1の方法では、まず、印象履歴格納手段40を参照して、現在選択中の印象語がステイ状態であるかどうかの判定を行う(ステップS160)。もし、現在選択中の印象語がステイ状態であるならば、ステップS170へ進み、ステイ状態でなければ印象評価算出処理を終了する。
次に、現在選択中の印象語がステイ状態であった場合、この印象語の評価値の算出を行う(ステップS170)。ステイ状態である現在の印象語に対して、評価値算出手段27は評価値格納手段39から現在の評価値Qiを取得し、前記印象語に正の報酬rp(rp>0)を与え、報酬r=rpとして、評価値Qiを数2によって更新する。
なお、数2のα(0≦α≦1)は学習率を表しており、αが大きいほど1回ごとの学習効率が高くなる。次に、他の印象語に対しても評価値を更新する。他の印象語には負の報酬rm(rm<0)を与え、報酬r=rmとして、数2によって評価値Qiを算出する。例えば、現在のステイ状態の印象語が「力強い」であった場合、「力強い」という印象語に正の報酬rpを与えて、「力強い」の評価値Qiを数2によって算出する。他の「力強い」以外の印象語には負の報酬rmを与えて、それぞれの評価値を数2によって算出する。ここで、評価値QiがQi<0となった場合、Qiを0にする。
算出したそれぞれの評価値Qiを評価値格納手段39に格納する。評価値格納手段39のフォーマットの一例を図22に示す。図22では、印象語「激しい」の評価値が10、「力強い」の評価値が10、「やや力強い」の評価値が27.1といったような形式で格納されている。
以上のステップS75の第一の方法によって求められた評価値は、ステップS80中の印象軸変更処理ステップS130において、印象軸や印象語を決定するための基準として用いられる。
次に印象評価値算出処理の第2の方法を説明する。第2の方法では、まず、制御手段20は印象履歴格納手段40を参照して現在選択中の印象軸がステイ状態であるかの判定を行う(ステップS160)。もし、現在選択中の印象軸がステイ状態であった場合はステップS170に進み、ステイ状態でない場合はそのまま終了する。
次に、現在選択中の印象軸がステイ状態であったならば、この印象軸と一つ前にステイ状態であった印象軸との関係の評価値を更新する。評価値更新後、現在のステイ状態である印象軸を、一つ前にステイ状態であった印象軸として記憶しておく(ステップS170)。このようにして求められた評価値は、印象軸変更処理によって印象軸を変更する際に、現在のステイ状態を起点としてどの印象軸に変更するかの判断基準に用いられる。
評価値を更新する方法は、まず、現在選択中の印象軸と、その一つ前にステイ状態であった印象軸の対を、印象履歴格納手段40から取得する。次に、取得した一つ前の印象軸と現在の印象軸との関係の評価を行う。もし、印象履歴格納手段40に前ステイ状態の印象軸が格納されていない場合、現ステイ状態の印象軸を前ステイ状態の印象軸として、印象履歴格納手段40に記憶する。前ステイ状態が格納されているならば、前ステイ状態と現ステイ状態の印象軸の関係の評価値Qiを評価値格納手段39から取得し、報酬r=rp(rp>0)として評価値Qiを数2によって算出する。同時に、前ステイ状態の印象軸との現ステイ状態以外の各印象軸の関係には負の報酬rm(rm<0)を与え、報酬r=rmとして評価値Qiを数2によって算出する。ここで、評価値QiがQi<0となった場合、Qiの値を0にする。
図23に具体例を示す。図23では、まず、「力強さ」軸から「ノリのよさ」軸にステイ状態が変化したため、「力強さ」軸→「ノリのよさ」軸という関係に正の報酬rp(rp>0)を与えている。この「力強さ」軸→「ノリのよさ」軸の関係の評価値Qiを数2によって更新する。また、「力強さ」軸を起点とした、「ノリのよさ」軸以外の印象軸に負の報酬rm(rm<0)を与える。図23の例では、「力強さ」軸→「静かさ」軸や「力強さ」軸→「爽やかさ」軸等に負の報酬rm(rm<0)を与えている。負の報酬rmを与えられた印象軸の関係の評価値Qiを数2によって更新する。
更新した評価値Qiを評価値格納手段39に格納する。評価値格納手段39は、印象軸の全ての組み合わせに対する評価値テーブルを予め格納している。評価値格納手段39のフォーマットの一例を図24に示す。図24の例では、「力強さ」軸→「ノリのよさ」軸の経路は評価値が40で、「力強さ」軸→「静かさ」軸の経路が10であることを表している。
以上の印象軸の関係に対して評価値を適用する第2の方法によると、現在の印象軸にある楽曲を一通り聴いた後、利用者が次に聴きたい雰囲気の楽曲が何であるのかを推測することが可能となる。
続いて、図12に示した、ステップS80中のステップS130の印象軸変更処理において、第1、第2の方法で算出した評価値をもとに、印象語や印象軸を決定する方法について説明する。ステップS75の印象評価値算出処理が二通りあるのに対応して、ステップS130の印象軸変更処理も二通りある。
第1の方法におけるステップS130の処理では、まず、現在選択中の印象軸を一次記憶手段36から取得し、取得した印象軸の要素以外の印象語を、印象設定格納手段32から全て取得する。取得した印象語の評価値の中で、最大の評価値を有する印象語と、その印象語を要素として有する印象軸を、評価値格納手段39を参照して選択する(最大値選択)。
別の方法としては、前記取得した印象軸の要素ではない印象語の中で、評価値格納手段39に格納されている各印象語の評価値に比例して確率的に選択する方法(ルーレット選択)を用いてもよい。印象語iを選択する確率Piを、現在の印象軸にない印象語の総数n、求める印象語の番号をiとして数3によって求める。
求めた確率Piをもとに、選択する印象語を決定する。選択した印象軸と印象語を、変更時間と共に印象履歴格納手段40に格納する。また、実施例1と同様に、過去に選択した印象軸を一次記憶手段36に記憶しておき、選択しないようにする。
評価値が設定された印象語の例である図25から、実際に印象語を選択する様子を示す。もし、最大値選択ならば、「やや力強い」の評価値が30と最大なので、「やや力強い」に印象語を変更する。もし、ルーレット選択ならば、選択される確率値は数3により、「激しい」が0.1667、「力強い」が0.3333、「やや力強い」が0.5というようにそれぞれ求められているので、乱数x(0≦x<1)を発生させ、その値に従って選択する印象語を決定する。具体的には、xの値が0≦x<0.1667ならば「激しい」に、0.1667≦x<0.5ならば「力強い」に、0.5≦x<1ならば「やや力強い」に変更する。
次に、第2の方法で算出した評価値をもとに、ステップS130の印象軸変更処理によって印象軸を変更する際の処理を説明する。第1の方法でも説明した通り、印象軸の選択には最大値選択やルーレット選択等を用いることができる。
印象軸の選択は、まず、現在選択中の印象軸を一次記憶手段36から取得する。次に、最大値選択の場合、この取得した印象軸と他の印象軸との関係を表す評価値を、評価値格納手段39を参照して、その中で最大の評価値を有する関係の印象軸を変更先の印象軸として決定する。ルーレット選択の場合、確率Piを変更先候補の印象軸の総数をn、起点となる現ステイ状態と各印象軸との関係の番号をiとして数3によって求め、その確率Piをもとに印象軸を決定する。変更した印象軸は、変更した時間とともに印象履歴格納手段40に格納する。
印象軸間の関係を表す評価値が設定された一例である図26から、実際に印象軸を選択する様子を示す。図26は、現在設定中の印象軸「力強さ」軸が既にステイ状態となり、前ステイ状態の印象軸となった例である。もし、最大値選択によって印象軸に変更する場合、「静かさ」軸への経路評価値が20、「ノリのよさ」軸への経路評価値が40であるので、「ノリのよさ」軸に決定する。もし、ルーレット選択を利用するならば、数3によって求められた確率値に従い、印象軸を決定する。
図26の例では、「静かさ」軸へは0.3333、「ノリのよさ」軸へは0.6667の確率で選択される。例えば、乱数x(0≦x<1)を発生させて、xが0≦x<0.3333ならば「静かさ」軸、0.3333≦x<1ならば0.6667「ノリのよさ」軸を選択する。
また、現在選択中の印象軸がステイ状態にならずに印象軸変更を行う場合は、現在選択中の印象軸は既に選択済みであるという情報を一次記憶手段36に格納する。選択済みの印象軸以外の印象軸を候補として選択を行う。もし、全ての印象軸が既に選択済み状態になった場合、一次記憶手段36の前記情報をクリアする。
図26の例において、前ステイ状態が「力強さ」軸であり、現在選択中の印象軸が「ノリのよさ」軸であって、「ノリのよさ」軸がステイ状態にならずに印象軸変更処理を行う場合、「ノリのよさ」軸の次に大きい評価値を有する「静かさ」軸が選択される。ルーレット選択による場合は、「ノリのよさ」軸を除くと、残りの印象軸が「静かさ」軸しかないため、数3により、確率値1で「静かさ」軸が選択される。
変更先の印象軸の選択を第2の方法で行った場合、印象軸内の印象語の設定を、第1の方法で示した印象語の評価値に従った方法を用いてもよい。また、評価値Qiの初期値は0≦Qi≦rの範囲であれば、どのような値でもよい。
また、時刻情報を取得して、時間ごとの評価値を設定してもよい。第1の方法において時間帯を使用した一例を図27に示す。図27の例では、時間帯を「朝」と「昼」と「夜」の3つの時間帯に分けており、各時間帯に印象語の評価値が別々に設定されている。
以上の実施例3によると、印象軸や印象語の評価値を算出することにより、利用者は好みである印象語にすぐにたどり着くことができる。また、印象軸間の関係の評価を行う方法により、「Aという雰囲気の楽曲を一通り聴いたら、次はBという雰囲気の楽曲が聴きたくなる」といった利用者の嗜好を反映した選曲が可能となる。
本発明の実施例4による楽曲検索再生装置4について説明する。本実施例の楽曲検索再生装置4では、楽曲の音響特徴量を利用して、再生中の楽曲に類似する曲を再生するものである。楽曲検索再生装置4によれば、再生中の楽曲に類似する曲が聴きたくなったという利用者のニーズを満たすことが可能である。
本実施例による楽曲検索再生装置4の構成例を、図28を参照にして説明する。楽曲検索再生装置4では楽曲検索再生装置1からの変更点として、制御手段20に距離算出手段28と、格納手段30に再生条件格納手段38と、音響特徴量格納手段41がそれぞれ追加されている。再生条件格納手段38は、実施例2における楽曲検索再生装置2の再生条件格納手段38と同様である。新たに追加された評価値算出手段27と、評価値格納手段39についての説明を行い、その他の手段に関しては、楽曲検索再生装置1と同様であるため詳しい説明は省略する。
距離計算手段28は、音響特徴量格納手段41に格納された楽曲の音響特徴量をもとに、指定された2つの楽曲間のユークリッド距離を算出する。音響特徴量格納手段41は、特開平6−290574号公報や特開2002−278547号公報に記載された方法によって音響信号から算出した音響特徴量を格納する。音響特徴量格納手段41のフォーマットの一例を図29に示す。図29はN個(Nは1以上の整数)の音響特徴量と楽曲のコンテンツIDとを対応させて格納した様子を示している。
本実施例における処理の流れは、実施例1の図7と同様であるが、図7のステップS40と、ステップS90と、ステップS80の詳細処理を示す図12のステップS120の動作が異なる。ステップS40では、現在再生中の楽曲の類似曲を所定個数再生するように指示を出すための類似曲再生コマンドを、コマンド作成手段25によって作成する。例えば、「この曲と似ている曲が聴きたい」等、再生中の楽曲に関わらず、常に同一のコマンドメッセージとコマンド番号を割り当てればよい。
本実施例におけるステップS90では、現在再生中の楽曲に類似する楽曲を所定個数選曲する処理を行う。まず、現在再生中の楽曲のコンテンツIDを一次記憶手段36から取得し、そのコンテンツIDに対応するN個の音響特徴量を音響特徴量格納手段41から取得する。そして各音響特徴量を一次記憶手段36に格納しておく。
次に、現在再生中の楽曲以外の音響特徴量とコンテンツIDを音響特徴量格納手段41から取得し、一次記憶手段36に格納しておいた再生中の音響特徴量とのユークリッド距離を距離算出手段28によって算出する。現在再生中の楽曲のi番目の音響特徴量をxi、楽曲jにおけるi番目の音響特徴量をyijとし、求める距離をd(j)とすると、d(j)は数4によって算出される。
距離算出手段28によって算出されたユークリッド距離d(j)は、一次記憶手段36にコンテンツIDと対応付けて記憶しておく。再生中の楽曲以外の全ての楽曲に対してユークリッド距離d(j)を求めた後、一次記憶手段36に格納されたユークリッド距離の中から小さい順に所定個数選び出し、再生条件格納手段38にコンテンツIDを格納する。
また、逆に、一次記憶手段36に格納された各ユークリッド距離d(j)の中から距離の大きい順に所定個数の楽曲を選び出し、再生条件格納手段38にコンテンツIDを格納してもよい。この場合は、現在再生中の楽曲とは全く雰囲気の異なる楽曲を取得することが可能である。
ステップS120では、前記ステップS90によって再生条件格納手段38に格納されたコンテンツIDに対応する楽曲を、楽曲格納手段31から取得する。再生条件格納手段38からコンテンツIDを取得したら、既に再生したものと考え、このコンテンツIDを再生条件格納手段38から消去する。再生条件格納手段38にコンテンツIDが何も格納されていない状態になった場合、実施例1のステップS120と同様の動作を行う。
以上の実施例4によると、「再生中の楽曲と似ている楽曲が聴きたい」あるいは「再生中の楽曲と全く違う楽曲が聴きたい」といった利用者のニーズを満たすことができる。
なお、本実施例による楽曲検索再生装置は、印象軸及び印象語を用いることなく音響特徴量のみを検索のパラメータとして用いて構成することができる。
以上のように、「何か音楽を聴きたいのに、何を聴きたいかがわからない」といった漠然とした心理状態であっても、再生されている楽曲を基準にして「なんとなく気分に合わない」、「もう少し激しい曲を聴きたい」、「この曲は好き」、「この曲は嫌い」といった判断をすることは比較的容易であることが多い。本発明においては、このような再生曲に対する利用者のフィードバックを活用して次に再生する楽曲を決定し、さらにその楽曲に対するフィードバックを受け付けるといったことを連続的に行うため、利用者が所望楽曲に対して極めて漠然としたイメージしか有していない場合においても、一連のインタラクションを通して所望の楽曲を容易に探すことができる。
また従来方法では、利用者は画面に表示された情報だけを頼りに選曲する必要があったのに対して、本発明においては、利用者は、画面情報だけでなく現在再生中の楽曲を基準に判断・操作をすることができる。このため、画面に表示する必要のある情報を少なくすることが可能であり、表示機器の小さい携帯電話やポータブルプレイヤー、車載機等でも十分に利用が可能である。