(57)【要約】【課題】ユーザの手を煩わせることなくユーザの嗜好に合う楽曲を再生する。【解決手段】楽曲再生装置において、記憶部は、複数の楽曲データと各楽曲データに対応付けられるカテゴリとを記憶する。受付部は、楽曲データの再生を開始する開始指示と、楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける。選択部は、開始指示が受け付けられると、複数の楽曲データの中から、指定された楽曲データに対応付けられたカテゴリに属する所定個数の楽曲データを選択する。再生部は、開始指示が受け付けられると、指定された楽曲データと選択された楽曲データとを続けて再生する。選択部は、指定された楽曲データと、選択された楽曲データが再生されているときのスキップ指示の受け付け状況に基づいて、新たな楽曲データを選択する。【選択図】図２
2014093097.tif 000002
【特許請求の範囲】
【請求項１】
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、を記憶する記憶部と、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部と、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択部と、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部と、
を備え、
前記選択部は、前記ユーザによって指定された楽曲データ、及び、前記選択部により選択された前記所定個数の楽曲データが再生されているときにおける前記スキップ指示の受け付け状況に基づいて、新たな楽曲データを選択する、
ことを特徴とする楽曲再生装置。
【請求項２】
前記選択部は、前記楽曲データの再生中に前記スキップ指示が受け付けられると、前記複数の楽曲データの中から、前記スキップ指示が受け付けられる前にスキップされずに再生された楽曲データに対応付けられる前記カテゴリを含む新たな楽曲データを選択し、
前記再生部は、前記選択部により選択された新たな楽曲データを再生する、
ことを特徴とする請求項１に記載の楽曲再生装置。
【請求項３】
前記選択部は、前記スキップ指示が受け付けられると、前記複数の楽曲データの中から、前記スキップ指示が受け付けられたときに再生されていた楽曲データに対応付けられるカテゴリを含まず、且つ、前記スキップ指示が受け付けられる前にスキップされずに再生された楽曲データに対応付けられるカテゴリを含む前記新たな楽曲データを選択する、
ことを特徴とする請求項２に記載の楽曲再生装置。
【請求項４】
前記複数の楽曲データのそれぞれには、判定区間が予め定義されており、
前記選択部は、前記スキップ指示が受け付けられたタイミングが前記判定区間に含まれる場合に、前記新たな楽曲データを選択する、
ことを特徴とする請求項３に記載の楽曲再生装置。
【請求項５】
前記カテゴリは数値によって表され、
前記選択部は、前記カテゴリを座標軸とする座標系における前記楽曲データ間の距離を計算し、前記計算された距離に基づいて前記所定個数の楽曲データを選択する、
ことを特徴とする請求項１から４のいずれか１項に記載の楽曲再生装置。
【請求項６】
前記選択部は、前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと、前記複数の楽曲データのうち前記ユーザによって指定された楽曲データ以外の楽曲データと、の距離をそれぞれ計算し、前記複数の楽曲データの中から、前記計算された距離が小さい順に、前記所定個数の楽曲データを選択する、
ことを特徴とする請求項５に記載の楽曲再生装置。
【請求項７】
前記選択部は、前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと、前記複数の楽曲データのうち前記指定された楽曲データ以外の楽曲データと、の距離をそれぞれ計算し、
前記計算された距離が所定距離以下の楽曲データが前記所定個数以上の場合には、前記ユーザによって指定された楽曲データに対応付けられるカテゴリを有し、且つ、前記計算された距離が所定距離以下の楽曲データを、前記所定個数選択するか、又は、
前記計算された距離が所定距離以下の楽曲データが前記所定個数未満の場合には、前記所定距離を延長し、前記ユーザによって指定された楽曲データに対応付けられるカテゴリを有し、且つ、前記計算された距離が前記延長された所定距離以下の楽曲データを、前記所定個数選択する、
ことを特徴とする請求項５又は６に記載の楽曲再生装置。
【請求項８】
前記選択部は、前記スキップ指示が受け付けられると、前記スキップ指示が受け付けられたときに再生されていた楽曲データと、前記複数の楽曲データのうち前記再生されていた楽曲データ以外の楽曲データと、の距離をそれぞれ計算し、前記複数の楽曲データの中から、前記計算された距離が大きい順に、前記所定個数の楽曲データを選択する、
ことを特徴とする請求項５から７のいずれか１項に記載の楽曲再生装置。
【請求項９】
前記選択部は、前記スキップ指示が受け付けられると、前記スキップ指示が受け付けられたときに再生されていた楽曲データと、前記複数の楽曲データのうち前記再生されていた楽曲データ以外の楽曲データと、の距離をそれぞれ計算し、
前記計算された距離が所定距離以下の楽曲データが前記所定個数以上の場合には、前記スキップ指示が受け付けられる前までにスキップされずに再生された楽曲データに対応付けられるカテゴリを含み、且つ、前記計算された距離が所定距離以下の楽曲データを、前記所定個数選択するか、又は、
前記計算された距離が所定距離以下の楽曲データが前記所定個数未満の場合には、前記所定距離を延長し、前記スキップ指示が受け付けられる前までにスキップされずに再生された楽曲データに対応付けられるカテゴリを含み、且つ、前記計算された距離が前記延長された所定距離以下の楽曲データを、前記所定個数選択する、
ことを特徴とする請求項５から８のいずれか１項に記載の楽曲再生装置。
【請求項１０】
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、を記憶する記憶部と、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部と、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新部と、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択部と、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部と、
を備え、
前記更新部は、前記ユーザによって指定された楽曲データ、及び、前記選択部により選択された前記所定個数の所定個数の楽曲データが再生されているときにおける前記スキップ指示の受け付け状況に基づいて、前記カテゴリの前記スコアを更新する、
ことを特徴とする楽曲再生装置。
【請求項１１】
前記更新部は、前記楽曲データの再生中に前記スキップ指示が受け付けられると、前記スキップ指示が受け付けられたときに再生されていた楽曲データに対応付けられる前記スコアを減少させて更新する、
ことを特徴とする請求項１０に記載の楽曲再生装置。
【請求項１２】
前記更新部は、前記楽曲データの再生中に前記スキップ指示が受け付けられずに前記楽曲データの再生を終了すると、前記楽曲データに対応付けられるカテゴリのスコアを増加させて更新する、
ことを特徴とする請求項１０に記載の楽曲再生装置。
【請求項１３】
前記複数の楽曲データのそれぞれには、複数の前記カテゴリが対応付けられ、
前記選択部は、前記複数の楽曲データのそれぞれについて、前記楽曲データに対応付けられている前記複数のカテゴリのスコアの合計値を計算し、前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する楽曲データの中から、前記スコアの合計値が大きい順に、前記所定個数の楽曲データを選択する、
ことを特徴とする請求項１０から１２のいずれか１項に記載の楽曲再生装置。
【請求項１４】
前記選択部は、前記スキップ指示が受け付けられると、前記スキップ指示が受け付けられたときに再生されていた楽曲データに対応付けられているカテゴリを有さず、且つ、前記スキップ指示が受け付けられる前にスキップされずに再生された楽曲データに対応付けられるカテゴリを含む新たな楽曲データを選択する、
ことを特徴とする請求項１０から１３のいずれか１項に記載の楽曲再生装置。
【請求項１５】
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、が記憶される記憶部を有する楽曲再生装置において実行される楽曲再生方法であって、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付ステップと、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択ステップと、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生ステップと、
を備えることを特徴とする楽曲再生方法。
【請求項１６】
コンピュータを、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、を記憶する記憶部、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択部、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部、
として機能させることを特徴とするプログラム。
【請求項１７】
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、が記憶される記憶部を有する楽曲再生装置において実行される楽曲再生方法であって、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付ステップと、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新ステップと、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択ステップと、
を備えることを特徴とする楽曲再生方法。
【請求項１８】
コンピュータを、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、を記憶する記憶部、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新部、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択部、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽曲再生装置、楽曲再生方法、及び、プログラムに関する。
【背景技術】
【０００２】
近年、楽曲を再生する機器の記憶装置が大容量化し、また通信ネットワークを用いたストレージの利用が進んできており、個人が大きな音楽ライブラリを所有して簡単にアクセスできるようになってきている。
【０００３】
ユーザは、一般に、楽曲を再生させるリスト（プレイリスト）を自身で作成し、その時の気分に合ったプレイリストを指定して楽曲を再生させる。しかし、楽曲ライブラリが大きくなるにつれて、ユーザがその時に聞きたい楽曲を探し出すのに手間がかかってしまう傾向にある。
【０００４】
一方で、ユーザが聞きたい楽曲を推測して再生する技術がある。例えば、特許文献１には、ユーザによるプレイリストの選択に応じて、プレイリストの重みやプレイリストに含まれる楽曲の重みを設定し、設定した重みに基づいて再生確率を変えてランダム再生する情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−２２２５７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
楽曲数が多くなると、ユーザは自分で好みのプレイリストを何通りも作成するのが非常に面倒になってくる。また、特許文献１によれば、複数のプレイリストに重複する楽曲の再生確率が高く設定されるものの、重複しているからといって、必ずしもユーザがその楽曲をたくさん聞きたいとは限らない。更には、再生確率を変えるだけでは、例えば落ち着いた雰囲気の楽曲の後に激しい楽曲が再生されるといったように、楽曲同士の繋がりが悪くなり、結果としてユーザの嗜好に合わなくなるという問題がある。
【０００７】
本発明は、このような課題を解決するものであり、ユーザの手を煩わせることなくユーザの嗜好に合った楽曲を再生するために好適な楽曲再生装置、楽曲再生方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の第１の観点に係る楽曲再生装置は、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、を記憶する記憶部と、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部と、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択部と、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部と、
を備え、
前記選択部は、前記ユーザによって指定された楽曲データ、及び、前記選択部により選択された前記所定個数の楽曲データが再生されているときにおける前記スキップ指示の受け付け状況に基づいて、新たな楽曲データを選択する、
ことを特徴とする。
【０００９】
本発明の第２の観点に係る楽曲再生装置は、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、を記憶する記憶部と、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部と、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新部と、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択部と、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部と、
を備え、
前記更新部は、前記ユーザによって指定された楽曲データ、及び、前記選択部により選択された前記所定個数の楽曲データが再生されているときにおける前記スキップ指示の受け付け状況に基づいて、前記カテゴリの前記スコアを更新する、
ことを特徴とする。
【００１０】
本発明の第３の観点に係る楽曲再生方法は、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、が記憶される記憶部を有する楽曲再生装置において実行される楽曲再生方法であって、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付ステップと、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択ステップと、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生ステップと、
を備えることを特徴とする。
【００１１】
本発明の第４の観点に係るプログラムは、
コンピュータを、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、を記憶する記憶部、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記ユーザによって指定された楽曲データに対応付けられているカテゴリに属する所定個数の楽曲データを選択する選択部、
前記開始指示が受け付けられると、前記ユーザによって指定された楽曲データと前記選択部により選択された前記所定個数の楽曲データとを続けて再生する再生部、
として機能させることを特徴とする。
【００１２】
本発明の第５の観点に係る楽曲再生方法は、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、が記憶される記憶部を有する楽曲再生装置において実行される楽曲再生方法であって、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付ステップと、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新ステップと、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択ステップと、
を備えることを特徴とする。
【００１３】
本発明の第６の観点に係るプログラムは、
コンピュータを、
複数の楽曲データと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリと、前記複数の楽曲データのそれぞれに対応付けられるカテゴリのスコアと、を記憶する記憶部、
前記記憶部に記憶されている楽曲データの再生を開始する開始指示と、前記楽曲データの再生をスキップするスキップ指示とをユーザから受け付ける受付部、
前記複数の楽曲データのそれぞれに対応付けられるカテゴリの前記スコアを更新する更新部、
前記開始指示が受け付けられると、前記複数の楽曲データの中から、前記スコアに基づいて、所定個数の楽曲データを選択する選択部、
として機能させることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ユーザの手を煩わせることなくユーザの嗜好に合った楽曲を再生することができる。
【図面の簡単な説明】
【００１５】
【図１】楽曲再生装置のハードウェア構成を表す図である。
【図２】楽曲に対応付けられるカテゴリの構成例を示す図である。
【図３】楽曲に対応付けられるカテゴリを説明するための図である。
【図４】楽曲に対応付けられるカテゴリを説明するための図である。
【図５】楽曲再生処理を説明するためのフローチャートである。
【図６】プレイリストを編集する処理を説明するための図である。
【図７】部分集合の拡張を説明するための図である。
【図８】部分集合を求める処理を説明するための図である。
【図９】部分集合を求める処理を説明するための図である。
【図１０】部分集合を求める処理を説明するための図である。
【図１１】優先度スコアを説明するための図である。
【図１２】優先度スコアの合計値を説明するための図である。
【図１３】楽曲とカテゴリと再生動作の内容の対応関係の例を示す図である。
【発明を実施するための形態】
【００１６】
以下に本発明の実施形態を説明する。各実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００１７】
（実施形態１）
まず、楽曲再生装置１００のハードウェア構成について、図１を用いて説明する。楽曲再生装置１００は、無線通信部１０１、音声処理部１０２、出力部１０３、外部インターフェース（Ｉ／Ｆ）１０４、入力受付部１０５、ＲＯＭ（Read Only Memory）１０６、ＲＡＭ（Random Access Memory）１０７、記憶部１０８、制御部１０９、電源部１１０を備える。本実施形態における楽曲再生装置１００はポータブルプレイヤーであるが、据え置き型の音楽プレイヤー、一般的なパーソナルコンピューター、楽曲再生機能が搭載された携帯端末などでも良い。
【００１８】
無線通信部１０１は、外部の通信ネットワーク（典型的にはインターネット）に楽曲再生装置１００を接続し、通信ネットワーク上のサーバと楽曲再生装置１００との間で楽曲データ等を送受信する。例えば、無線通信部１０１は、制御部１０９の制御により、通信ネットワーク上のサーバが有する楽曲データベースから楽曲データをダウンロードする。ダウンロードされた楽曲データは記憶部１０８に記憶され、ユーザからの再生指示入力に応じて再生される。
【００１９】
音声処理部１０２は、ユーザの発声音等をマイクロフォン１２３によって集音し、音声処理部１０２が備えるＡ／Ｄコンバータにより音声信号に変換する。また、音声処理部１０２は、音声処理部１０２が備えるＤ／Ａコンバータにより復調された楽曲や音声をスピーカ１２２に出力する。ただし、本実施形態において、マイクロフォン１２３は必須の構成ではない。
【００２０】
出力部１０３は、制御部１０９や出力部１０３が備える画像演算プロセッサ（図示せず）によって画像データを加工処理した後、フレームバッファに記録する。フレームバッファに記録された画像情報は、垂直同期などの所定の同期タイミングで画像信号に変換され、ＬＣＤ（Liquid Crystal Display）１２４に出力される。例えば、ＬＣＤには、記憶部１０８に記憶されている楽曲データのプレイリストや、楽曲データの属性情報などが表示される。
【００２１】
外部Ｉ／Ｆ１０４は、着脱可能なフラッシューメモリカード等の外部メモリ１２５と接続し、データの入出力を行う。外部Ｉ／Ｆ１０４は、例えばＵＳＢ（Universal Serial Bus）接続により、楽曲再生装置１００と外部機器とを接続して、外部機器との間でデータの入出力を行うことができるインターフェースを備えてもよい。
【００２２】
入力受付部１０５は、ハードウェアボタンへのユーザ操作やＬＣＤに重畳されたタッチパネルへのユーザ操作を示す信号を受け付け、受け付けた信号に対応するキーコード信号を制御部１０９に入力する。制御部１０９は、入力されたキーコード信号に基づいてユーザ操作の内容を決定する。ユーザは、ハードウェアボタンやタッチパネルを用いて任意の文字データを入力したり所定の操作コマンドを入力したりすることができる。操作コマンドには、例えば、記憶部１０８に記憶された楽曲データの再生を開始させる開始指示や、楽曲データの再生を途中で止めて次の楽曲データの再生を開始させるスキップ指示などがある。
【００２３】
ＲＯＭ１０６は、楽曲再生装置１００の全体の制御に必要なオペレーティングシステム（ＯＳ）やプログラム等を予め記憶する不揮発性メモリである。
【００２４】
ＲＡＭ１０７は、制御部１０９が行う処理に必要なデータやプログラム等を一時的に記憶する。
【００２５】
記憶部１０８は、不揮発性のフラッシュメモリあるいはハードディスク装置などから構成される。記憶部１０８には、通信ネットワーク上のサーバ等からダウンロードした楽曲データや、外部Ｉ／Ｆ１０４を介して取得された楽曲データが記憶される。また、記憶部１０８には、楽曲データが示す楽曲に関する属性データが記憶される。属性データには、例えば、アーティスト名、曲名、アルバム名、リリース年、ジャンルなどが含まれる。
【００２６】
制御部１０９は、ＲＯＭ１０６等に記憶されたＯＳや制御プログラムに従って、楽曲再生装置１００の全体を制御する。制御部１０９は、各部に制御信号を送信したり、各部から応答信号を受信したりする。なお、制御部１０９が実行する楽曲再生処理の詳細については後述する。
【００２７】
電源部１１０は、楽曲再生装置１００を駆動させるためのバッテリを備える。
【００２８】
次に、楽曲再生装置１００が行う楽曲再生処理の詳細について説明する。楽曲再生装置１００は、ある楽曲に対するユーザからの再生の開始指示を受け付けると、その開始指示が示す楽曲データを記憶部１０８から読み出し、再生する。また、楽曲再生装置１００は、１つ以上の楽曲から構成されるプレイリスト（楽曲リスト）に対するユーザからの再生の開始指示を受け付けると、指定されたプレイリストに含まれる楽曲データを、指定された順序あるいはランダムで、逐次再生する。プレイリストは、典型的にはユーザからの指示に基づいて作成されるが、制御部１０９により所定のアルゴリズムに従って作成されることもある。
【００２９】
すなわち、もし複数の楽曲を全くのランダムな順番で再生すると、ユーザが予めプレイリストを編集する手間が省ける反面、落ち着いた曲調の楽曲の後に激しい曲調の楽曲が再生されるといったように、雰囲気が全く異なる楽曲が続けて再生され、楽曲同士の繋がりが悪くなる恐れがある。そこで、楽曲再生装置１００は、ユーザによる操作入力の傾向を分析し、また、現在再生している楽曲の雰囲気と記憶部１０８に記憶されている各楽曲の雰囲気とを比較し、ユーザが現在聞きたいと思っていると推測される楽曲を選択してプレイリストを作成し、作成したプレイリストに基づいて再生することによって、ユーザへ再生時に違和感を与えないように工夫している。
【００３０】
ここで、本実施形態における“雰囲気”とは、楽曲の特徴を表すパラメータである。以下の説明において、雰囲気を“カテゴリ”と呼ぶ。楽曲は、このカテゴリを用いて複数のグループに分別される。例えば、カテゴリは、楽曲のリズム、楽曲のビート（拍）、楽曲の音色、楽曲に使用されている楽器、楽曲に含まれる人間の音声のピッチなど、楽曲データの波形に基づいて制御部１０９が解析可能な特徴量である。これらのほか、アーティスト名、曲名、アルバム名、リリース年、ジャンルなどの属性データをカテゴリに用いることもできる。
【００３１】
図２に、カテゴリ（雰囲気）の具体例を示す。記憶部１０８には、複数の楽曲データと、複数の楽曲データのそれぞれに対応付けられるカテゴリを特定する情報とが記憶される。この図２では、１つの楽曲につき、カテゴリとして、ジャンル、年代、スピード、曲調、楽器の５つが定義されている。例えば、曲Ａ，Ｂ，Ｃのジャンルはいずれもジャズであるため、ジャンルという観点からは、曲Ａ，Ｂ，Ｃが互いに似ていると言える。一方、曲Ａに使用されている楽器はピアノであり、曲Ｂ，Ｃに使用されている楽器はピアノではなく管楽器であることから、楽器という観点からは、曲Ａは曲Ｂ，Ｃと似ておらず、曲Ｂ，Ｃの２つが互いに似ていると言える。このように、カテゴリの定義の仕方により、楽曲の類似性の判断が異なってくる。
【００３２】
各カテゴリに設定される具体的な値は、楽曲ごとに予め定められた固定値であってもよいし、ユーザもしくは楽曲再生装置１００が随時変更することができる可変値であってもよい。また、カテゴリの数、カテゴリの種類、カテゴリに設定される値は任意である。
【００３３】
制御部１０９は、あるプレイリストに含まれる楽曲を、ランダムな順番で再生することができる。これをシャッフル再生という。制御部１０９は、記憶部１０８に記憶されている楽曲データの再生を開始する開始指示をユーザから受け付けるほか、現在実行中の再生を直ちに終了して次の楽曲の再生を開始させるスキップ指示をユーザから受け付ける。制御部１０９は、開始指示を受け付けると、記憶部１０８に記憶されている楽曲データの中から、ユーザによって指定された楽曲データに対応付けられているカテゴリに属する楽曲データを選択し、新たなプレイリストを生成する。そして、制御部１０９は、生成した新たなプレイリストを用いて、ユーザによって指定された楽曲データと、選択された楽曲データとを続けて再生する。
【００３４】
また、制御部１０９は、あるプレイリストに含まれる楽曲のシャッフル再生中にスキップ指示を受け付けると、スキップ指示があったときに再生していた楽曲（スキップされた楽曲）に対応付けられているカテゴリに基づいて、ユーザが再生を望んでいる楽曲を推測し、新たなプレイリストを生成する。更に、制御部１０９は、楽曲がスキップされずに最後まで再生されると、スキップされずに再生された楽曲に対応付けられているカテゴリに基づいて、ユーザが再生を望んでいる楽曲を推測し、新たなプレイリストを生成する。そして、制御部１０９は、新たなプレイリストを用いて、楽曲を再生する。
【００３５】
例えば、あるプレイリストに含まれる複数の楽曲を指定順もしくはランダムな順で続けて再生しているときに、カテゴリが共通する楽曲（雰囲気が似ている楽曲）の再生がユーザによって続けてスキップされると、制御部１０９は、現在のプレイリストに含まれる楽曲データの中から、スキップされた楽曲の雰囲気とは異なる雰囲気をもった楽曲の楽曲データを所定個数抽出する。すなわち、制御部１０９は、再生がスキップされた楽曲に対応付けられているカテゴリと、プレイリスト中の未だ再生されていない楽曲に対応付けられているカテゴリとを比較し、スキップされた楽曲のカテゴリと異なるカテゴリに属する楽曲の楽曲データを所定個数抽出する。そして、制御部１０９は、抽出した楽曲データを、次に再生されるべき楽曲データとし、再生を続ける。スキップされた楽曲とは異なる雰囲気の楽曲が次に再生されることになる。
【００３６】
制御部１０９は、スキップされた楽曲のカテゴリと異なるカテゴリに属する楽曲の楽曲データを抽出対象とするのではなく、スキップされた楽曲のカテゴリを含まず、且つ、スキップされた楽曲のカテゴリと異なるカテゴリに属する楽曲の楽曲データを抽出対象としてもよい。
【００３７】
制御部１０９は、プレイリストに含まれる楽曲データの中から所定個数の楽曲データを抽出する代わりに、記憶部１０８に記憶されているすべての楽曲データの中から所定個数の楽曲データを抽出してもよい。所定個数（抽出される個数）は、１つだけでもよいし、２つ以上であってもよい。
【００３８】
また、互いに雰囲気が似ている２つ以上の楽曲が続けて再生された場合、言い換えれば、互いに雰囲気が似ている２つ以上の楽曲がユーザによっていずれもスキップされなかった場合、制御部１０９は、プレイリストに含まれる楽曲データの中から、再生されたそれらの楽曲の雰囲気と似ている雰囲気を持った楽曲の楽曲データを所定個数抽出する。すなわち、制御部１０９は、スキップされなかった楽曲に共通して対応付けられているカテゴリと同じカテゴリをもった楽曲データを所定個数抽出する。そして、制御部１０９は、抽出した楽曲データを、次に再生されるべき楽曲データとし、再生を続ける。スキップされなかった楽曲と同じ雰囲気の楽曲が次に再生されることになる。
【００３９】
また、互いに雰囲気が似ている複数の楽曲から構成されるプレイリストを用いて楽曲を再生しており、ある楽曲のみスキップされた場合、制御部１０９は、プレイリストに含まれる楽曲データの中から、既に再生された楽曲により一層近い雰囲気をもつ楽曲を所定個数抽出する。すなわち、制御部１０９は、スキップされなかった楽曲に共通したカテゴリをもち、且つ、スキップされた楽曲のカテゴリをもたない楽曲の楽曲データを所定個数抽出する。そして、制御部１０９は、抽出した楽曲データを、次に再生されるべき楽曲データとし、再生を続ける。スキップされなかった楽曲により近い雰囲気の楽曲が次に再生されることになる。
【００４０】
楽曲同士がどの程度似ているかは、カテゴリ間の距離に基づいて判別される。制御部１０９は、第１の楽曲と第２の楽曲との類似度を判別する際、第１の楽曲のカテゴリが表す値と、第２の楽曲のカテゴリが表す値との間の距離を計算する。計算された距離が、楽曲同士がどの程度似ているかを示す尺度となる。この距離が小さいほど、楽曲同士が似ていることになる。
【００４１】
ここで、楽曲間の類似度の判断基準となる“距離”について詳しく説明する。
図３に、カテゴリ「ジャンル」が表す値と、楽曲の分布の例を示す。「クラシック」には１０、「ジャズ」には２０といったように、ジャンルごとに数値が予め対応付けられる。これらの数値は、いわば、ジャンル軸（Ｘ軸）を有する１次元空間座標系における座標値である。
【００４２】
例えば、曲Ａ（ジャズ）と曲Ｈ（ロック）との間の距離は７０（＝９０−２０）である。また、曲Ａ（ジャズ）と曲Ｄ（クラシック）との間の距離は１０（＝２０−１０）である。従って、曲Ａの雰囲気は、曲Ｈよりも曲Ｄに似ていることになる。楽曲同士の類似度は、１次元空間内における２点間の距離で表される。
【００４３】
図４に、２つのカテゴリ「ジャンル」と「曲調」が表す各値と、楽曲の分布の例を示す。ジャンルと同様、「激しい」には１００、にぎやかには「９０」といったように、曲調ごとに数値が予め対応付けられる。これらの数値は、いわば、ジャンル軸（Ｘ軸）と曲調軸（Ｙ軸）を有する２次元空間座標系における座標値である。
【００４４】
例えば、曲Ｄ（クラシック，陰鬱）と曲Ａ（ジャズ，陰鬱）との間の類似度は、曲Ｄの座標値（１０，１０）と曲Ａの座標値（２０，１０）との間の距離、すなわち、１０である。また、曲Ｄ（クラシック，陰鬱）と曲Ｃ（ジャズ，ゆったり）との間の類似度は、曲Ｄの座標値（１０，１０）と曲Ｃの座標値（２０，２０）との間の距離、すなわち、１０√２（およそ１４．１）である。
【００４５】
曲Ｄと曲Ｃとの間の類似度は、図３のような１次元空間では、曲Ｄと曲Ａとの間の類似度と同じであり、曲Ｄの雰囲気は曲Ａと曲Ｃの雰囲気のそれぞれに同程度似ていると言える。一方、図４のような２次元空間では、曲Ｄと曲Ｃとの間の類似度は、曲Ｄと曲Ａとの間の類似度とは異なっていて、曲Ｄは曲Ｃよりも曲Ａに類似しており、曲Ｄの雰囲気は曲Ｃの雰囲気よりも曲Ａの雰囲気に似ていると言える。座標系の定義の仕方、すなわちカテゴリ（雰囲気）の定義の仕方によって、楽曲同士の類似度の判断が異なるわけである。
【００４６】
さらに、カテゴリ「ジャンル」「曲調」に加えて３つめのカテゴリ「スピード」を各楽曲に対応付ける場合、各楽曲の位置は、ジャンル軸（Ｘ軸）と曲調軸（Ｙ軸）とスピード軸（Ｚ軸）を有する３次元空間座標系における座標値（Ｘ，Ｙ，Ｚ）で表される。座標値（Ｘ１，Ｙ１，Ｚ１）の楽曲と座標値（Ｘ２，Ｙ２，Ｚ２）の楽曲の間の類似度は、３次元空間内の２点間の距離（＝√（（Ｘ２−Ｘ１）＾２＋（Ｙ２−Ｙ１）＾２＋（Ｚ２−Ｚ１）＾２））で表される。
【００４７】
４つ以上のカテゴリを各楽曲に対応付ける場合も同様である。各楽曲の位置は、Ｎ次元空間座標系における座標値で表され、２つの楽曲間の類似度は、Ｎ次元空間内の２点間のユークリッド距離で表される。Ｎは１以上の整数である。計算されたユークリッド距離が小さいほど、楽曲の雰囲気が似ていることになる。
【００４８】
次に、楽曲再生装置１００が実行する楽曲再生処理の流れについて、図５のフローチャートを用いて説明する。本実施形態では、楽曲再生装置１００は、ユーザによって指定されたプレイリストに含まれる複数の楽曲を、ランダムな順番で再生する（シャッフル再生する）。楽曲再生装置１００は、各楽曲の再生状況に応じて、プレイリストを編集しながら、再生終了の指示があるまで、再生を続ける。各楽曲には、予めカテゴリ（雰囲気）を示す値が対応付けられている。楽曲とカテゴリの対応付けを示すデータは、記憶部１０８に記憶されている。
【００４９】
まず、制御部１０９は、シャッフル再生の開始指示をユーザから受け付ける（ステップＳ５０１）。ユーザは、ＬＣＤ１２４に表示される入力画面を見て任意のプレイリストを指定し、シャッフル再生の開始を指示するための所定のボタンを押圧することにより、シャッフル再生を指示する。
【００５０】
ユーザは、あるプレイリストを使用して既に楽曲を再生中であっても、シャッフル再生を指示することができる。制御部１０９は、楽曲の再生中にシャッフル再生の指示を受け付けた場合には、現在の楽曲の再生に用いているプレイリスト（カレントプレイリスト）がシャッフル再生の対象としてユーザから指定されたものとして扱う。
【００５１】
なお、制御部１０９は、プレイリストが指定されずに単独で楽曲を再生している最中であっても、シャッフル再生の指示を受け付けるようにしてもよい。この場合に、制御部１０９は、記憶部１０８に記憶されているすべての楽曲が“カレントプレイリスト”に含まれるとみなしてもよい。
【００５２】
例えば、１曲（もしくは数曲程度）しか収録されていないシングルＣＤを再生中にシャッフル再生の指示を受け付けた場合、制御部１０９は、記憶部１０８に記憶されているすべての楽曲を含む擬似的なプレイリストを作成し、このプレイリストをシャッフル再生の対象のカレントプレイリストに設定してもよい。
【００５３】
次に、制御部１０９は、編集対象となる新規のプレイリストを用意する（ステップＳ５０２）。この新規のプレイリストは、制御部１０９が作成し更新していくものであり、ステップＳ５０１でユーザによって指定されたプレイリストとは異なる。制御部１０９は新規のプレイリストを作成し更新するのであるが、ユーザによって指定されたプレイリストを作り替えて上書き保存するわけではない。このステップＳ５０２において用意される新規のプレイリストには、この段階ではまだ１曲も登録されておらず、後述するステップＳ５０４、Ｓ５０５、又はＳ５０９において、楽曲が追加されていく。
【００５４】
制御部１０９は、楽曲再生装置１００によって再生中の楽曲があるか否かを判別する（ステップＳ５０３）。
【００５５】
再生中の楽曲がある場合（ステップＳ５０３；ＹＥＳ）、制御部１０９は、再生中のその楽曲を選択し、ステップＳ５０２で用意した新規のプレイリストに追加する（ステップＳ５０４）。
【００５６】
再生中の楽曲がない場合（ステップＳ５０３；ＮＯ）、制御部１０９は、シャッフル再生の指示があったプレイリストの中から１曲を選択し、ステップＳ５０２で用意した新規のプレイリストに追加する（ステップＳ５０５）。なお、シャッフル再生の指示があったときにプレイリストが指定されていない場合には、制御部１０９は、シャッフル再生の指示があったときに指定されていた楽曲を選択して新規のプレイリストに追加する。
【００５７】
制御部１０９は、新規のプレイリストをカレントプレイリストに設定する（ステップＳ５０６）。すなわち、ステップＳ５０１で指定されたプレイリストもしくは指定されたとみなされたプレイリストに基づいて楽曲が再生される代わりに、制御部１０９によって編集される新規のプレイリストに基づいて楽曲が再生される。
【００５８】
制御部１０９は、ステップＳ５０１で指定されたプレイリストに含まれるすべての楽曲（全体集合）のうち、ステップＳ５０４又はＳ５０５で選択した楽曲に類似した楽曲の集合（部分集合）を求める（ステップＳ５０７）。
【００５９】
ここで、制御部１０９は、ステップＳ５０４又はＳ５０５で選択した楽曲に対応付けられているカテゴリと、ステップＳ５０１で指定されたプレイリストに含まれる各楽曲に対応付けられているカテゴリと、を用いて、選択した楽曲と、残りの他の楽曲と、の間の距離をそれぞれ計算する。例えばプレイリストに１００曲含まれる場合には、選択した１曲と残りの９９曲との間の９９通りの距離がそれぞれ計算される。計算された距離が小さいほど、楽曲同士が似ていることになる。
【００６０】
例えば、制御部１０９は、計算された距離が所定の基準値以下の楽曲を抽出し、抽出した楽曲を要素とする部分集合を求める。この部分集合は、ステップＳ５０４又はＳ５０５で選択した楽曲に雰囲気が似ている楽曲から構成される。部分集合の要素数、すなわち抽出される楽曲数は、距離の計算対象となるカテゴリの決め方や、カテゴリに設定される具体的な値、所定の基準値の取り方等によって異なってくる。
【００６１】
制御部１０９は、ステップＳ５０７で求めた部分集合の中から、所定個数の楽曲を選択し、選択した楽曲をカレントプレイリストに追加する（ステップＳ５０８）。
【００６２】
例えば、制御部１０９は、求めた部分集合の中から、所定個数の楽曲をランダムに選択する。所定個数は任意である。本実施形態では、制御部１０９は求めた部分集合の中から楽曲をランダムに２つ選択するものとする。２つの楽曲が追加されると、この時点で、ステップＳ５０４又はＳ５０５で追加された楽曲と合わせて全部で３つの楽曲がカレントプレイリストに含まれることになる。
【００６３】
図６に、すべての楽曲からなる全体集合６００と、ステップＳ５０７で求められる部分集合６５０との関係を示す。全体集合６００には、ステップＳ５０４又はＳ５０５で選択された楽曲ｃ１１のほか、楽曲ｃ１１からの距離が所定の基準値以下の楽曲ｃ１２，ｃ１３，ｃ１４，ｃ１５や、楽曲ｃ１１からの距離が所定の基準値よりも大きい楽曲ｃ９６，ｃ９７，ｃ９８，ｃ９９等が含まれる。楽曲ｃ１１，ｃ１２，ｃ１３，ｃ１４，ｃ１５の５つが含まれる部分集合６５０が、ステップＳ５０７で求められる。ステップＳ５０８では、楽曲ｃ１１，ｃ１２，ｃ１３，ｃ１４，ｃ１５の５つが含まれる部分集合６５０の中から所定個数の楽曲がランダムに選択される。例えば、所定個数が２のとき、部分集合６５０の中から２個の楽曲ｃ１２，ｃ１３が選択される。楽曲ｃ１１に雰囲気がよく似ていると判断された楽曲の中から、２つの楽曲ｃ１２，ｃ１３が選択されるわけである。
【００６４】
なお、部分集合に含まれる楽曲ｃ１１以外の楽曲数が所定個数に満たない場合には、制御部１０９は、楽曲が部分集合に含まれるための条件を緩め、より広い部分集合の中から所定個数の楽曲を選択できるようにしてもよい。例えば、図７において、ステップＳ５０４又はＳ５０５で選択された楽曲ｃ１１からの距離が所定の基準値以下の楽曲から構成される部分集合７１０に、所定個数に満たない楽曲しか含まれないと、制御部１０９は、第１の拡張幅だけ基準値を延長した部分集合７２０を求める。部分集合７２０においても所定個数に満たない楽曲しか含まれないと、制御部１０９は、更に第２の拡張幅だけ基準値を延長した部分集合７３０を求める。制御部１０９は、含まれる楽曲数が所定個数に達するまで、基準値を延長することができる。第１の拡張幅と第２の拡張幅は任意である。
【００６５】
図５に戻り、制御部１０９は、カレントプレイリストに登録された楽曲の再生中におけるユーザ操作に基づいて、カレントプレイリストを編集する（ステップＳ５０９）。
【００６６】
より詳細には、制御部１０９は、ステップＳ５０４又はＳ５０５で追加された１個の楽曲と、ステップＳ５０８で追加された所定個数の楽曲とのそれぞれが、再生中にスキップされたか否かに基づいて、次に追加する楽曲を決定する。本実施形態では、制御部１０９は、ステップＳ５０４又はＳ５０５で追加された１個の楽曲とステップＳ５０８で追加された２個の楽曲の合計３曲がスキップされたか否かに基づいて、ケース１から４に分けて、追加する楽曲を決定する。
【００６７】
（ケース１）３曲全てがスキップされた場合：
図８に示すように、制御部１０９は、全体集合６００のうちステップＳ５０７で求めた部分集合６５０を除いた部分、つまり補集合８００の中の部分集合８５０を求める。制御部１０９は、補集合８００に含まれる楽曲の中から、最初に追加した楽曲ｃ１１からの距離が十分に大きい楽曲を、部分集合８５０の要素とすることが望ましい。制御部１０９は、距離に閾値を設け、最初に追加した楽曲ｃ１１からの距離が閾値以上の楽曲を部分集合８５０の要素とすればよい。
【００６８】
そして、制御部１０９は、求めた部分集合８５０の中から、ランダムに楽曲を選択してカレントプレイリストに追加する。本実施形態では、制御部１０９は、部分集合８５０の中から、上述の所定個数（２個）＋１個の合計３個の楽曲をランダムに選択してカレントプレイリストに追加する。そして、制御部１０９は、カレントプレイリストに基づいて、追加した３曲を順次再生する。すなわち、最初の３曲すべてがスキップされた場合には、スキップされた楽曲とは雰囲気が大きく異なる楽曲が３曲追加され、順次再生される。
【００６９】
（ケース２）３曲のうち２曲がスキップされ、残りの１曲がスキップされなかった場合：
図９に示すように、制御部１０９は、最初に選択された３個の楽曲のうちスキップされなかった楽曲（例えば楽曲ｃ１１）のみを含む部分集合９５０を求める。制御部１０９は、スキップされなかった楽曲ｃ１１から所定距離以内に含まれる楽曲を抽出して部分集合９５０の要素とする。制御部１０９は、スキップされた楽曲ｃ１２，ｃ１３からの距離が十分に大きい楽曲を、部分集合９５０の要素とすることが望ましい。集合９５０が集合６５０の部分集合である必要はない。
【００７０】
そして、制御部１０９は、求めた部分集合９５０の中から、ランダムに楽曲を選択してカレントプレイリストに追加する。本実施形態では、制御部１０９は、部分集合９５０の中から、上述の所定個数（２個）＋１個の合計３個の楽曲をランダムに選択してカレントプレイリストに追加する。そして、制御部１０９は、カレントプレイリストに基づいて、追加した３曲を順次再生する。すなわち、最初の３曲中、２曲がスキップされ、残りの１曲がスキップされずに最後まで再生された場合には、スキップされなかった楽曲と雰囲気が似ている楽曲が３曲追加され、順次再生される。
【００７１】
（ケース３）３曲のうち１曲がスキップされ、残りの２曲がスキップされなかった場合：
図１０に示すように、制御部１０９は、最初に選択された３個の楽曲のうちスキップされなかった楽曲（例えば楽曲ｃ１１，ｃ１２）を両方とも含む部分集合１０５０を求める。制御部１０９は、スキップされなかった楽曲ｃ１１，ｃ１２の両方から所定距離以内に含まれる楽曲を抽出して部分集合１０５０の要素とする。制御部１０９は、スキップされた楽曲ｃ１３からの距離が十分に大きい楽曲を、部分集合１０５０の要素とすることが望ましい。集合１０５０が集合６５０の部分集合である必要はない。
【００７２】
そして、制御部１０９は、求めた部分集合１０５０の中から、ランダムに楽曲を選択してカレントプレイリストに追加する。本実施形態では、制御部１０９は、部分集合１０５０の中から、上述の所定個数（２個）＋１個の合計３個の楽曲をランダムに選択してカレントプレイリストに追加する。そして、制御部１０９は、カレントプレイリストに基づいて、追加した３曲を順次再生する。すなわち、最初の３曲中、１曲がスキップされ、残りの２曲がスキップされずに最後まで再生された場合には、スキップされなかった楽曲と雰囲気が似ている楽曲が３曲追加され、順次再生される。
【００７３】
（ケース４）３曲すべてがスキップされなかった場合：
制御部１０９は、ステップＳ５０７で求めた部分集合６５０の中から、まだ再生されていない楽曲を選択してカレントプレイリストに追加する。本実施形態では、制御部１０９は、部分集合６５０の中から、上述の所定個数（２個）＋１個の合計３個の楽曲をランダムに選択してカレントプレイリストに追加する。そして、制御部１０９は、カレントプレイリストに基づいて、追加した３曲を順次再生する。すなわち、３曲すべてがスキップされずに最後まで再生された場合には、同様に雰囲気が似ている楽曲が３曲追加され、順次再生される。
【００７４】
なお、図６〜１０には、説明の簡略化のため、各集合が２次元の広がりをもつかのように表現されているが、上述したように楽曲に対応付けられるカテゴリの数は任意であり、楽曲間の類似度はＮ次元空間内の２点間のユークリッド距離で表され、各集合はＮ次元の広がりをもつ。
【００７５】
ケース１〜４においても、ステップＳ５０８で述べたように、求めた部分集合の中に含まれる楽曲の数が所定個数に満たない場合には、制御部１０９は、部分集合に含まれるための条件を緩め、より広い部分集合の中から所定個数の楽曲を選択できるようにしてもよい。すなわち、制御部１０９は、求めた部分集合の中に含まれる楽曲の数が所定個数に満たない場合には、所定の拡張幅だけ距離の基準値を延長した部分集合を求め、所定個数の楽曲を選択してもよい。制御部１０９は、含まれる楽曲数が所定個数に達するまで、基準値を延長することができる。所定の拡張幅は任意である。
【００７６】
図５に戻り、制御部１０９は、カレントプレイリストに基づく再生を終了するか否かを判別する（ステップＳ５１０）。
【００７７】
再生を終了すると判別した場合（ステップＳ５１０；ＹＥＳ）、制御部１０９は楽曲再生処理を終了する。例えば、制御部１０９は、再生を終了する旨の指示がユーザから入力された場合や、ステップＳ５０１で指定されたプレイリスト（もしくは指定されたとみなされたプレイリスト）に未再生の楽曲が残っていない場合に、カレントプレイリストに基づく再生を終了する。
【００７８】
再生を終了しないと判別した場合（ステップＳ５１０；ＮＯ）、制御部１０９は、ステップＳ５０９の処理を繰り返す。
【００７９】
なお、ループ再生がユーザによって指定されている場合には、制御部１０９は、ステップＳ５０１で指定されたプレイリスト（もしくは指定されたとみなされたプレイリスト）に未再生の楽曲が残っていない場合であっても、再度、新規のプレイリストを作り直し、ステップＳ５０２〜Ｓ５１０の処理を繰り返してもよい。
【００８０】
このように、本実施形態によれば、楽曲再生装置１００は、ユーザの手を煩わせることなくユーザの嗜好に合った楽曲を再生することができる。
【００８１】
上述のケース２のように３曲中１曲には似ているが他の２曲には似ていないといった集合を求めたり、上述のケース３のように３曲中２曲には似ているが他の１曲には似ていないといった集合を求めたりするためには、例えば図２に示すように、それぞれの楽曲に２種類以上のカテゴリ（雰囲気）を対応付けるとよい。
【００８２】
本実施形態では、制御部１０９は、楽曲の再生中にユーザからスキップ指示を受け付けると、その楽曲がスキップされたと判別している。しかし、制御部１０９は、楽曲全体の所定割合以上（例えば楽曲全体の３分の１以上）が再生された場合や、楽曲が所定時間以上（例えば楽曲の最初から１分以上）継続して再生された場合、あるいは楽曲の所定部分（例えば楽曲のサビの部分）が再生された場合には、その楽曲が再生されたと判別し、そうでない場合にスキップされたと判別してもよい。これらのような場合には、ユーザが聞きたくない楽曲であるとは限らないので、制御部１０９は、スキップ指示のタイミングに基づいて、楽曲がスキップされたか否かを判断してもよい。これにより、ユーザが聞きたい楽曲のカテゴリ（雰囲気）を判別する精度が高まる効果がある。
【００８３】
シャッフル再生の際、カレントプレイリストに登録されている全曲が一度でも再生開始されなければ再び同じ楽曲が再生されないようにするのが一般的である。しかし、制御部１０９は、重複再生をあえて許可し、一度でも再生されたことのある楽曲であっても、再びカレントプレイリストに追加できるようにしてもよい。この場合、同一の楽曲が何度も再生される可能性があるが、ユーザが飽きてもスキップ指示を入力することができるので、楽曲の再生に支障を来すことはない。
【００８４】
（実施形態２）
次に、本発明の第２の実施形態について説明する。本実施形態は、上述の第１の実施形態のステップＳ５０９におけるカレントプレイリストの編集の変形例である。
【００８５】
カテゴリには優先度スコアが対応付けられる。制御部１０９は、楽曲の再生動作に応じて、ＲＡＭ１０７又は記憶部１０８に記憶される楽曲データのそれぞれに対応付けられる優先度スコアを増減させ、更新する。例えば、制御部１０９は、楽曲がスキップされれば優先度スコアを減少させ、楽曲がスキップされずに再生されれば優先度スコアを増加させる。
【００８６】
そして、制御部１０９は、再生の開始指示を受け付けると、記憶部１０８に記憶される楽曲データの中から、優先度スコアに基づいて、所定個数の楽曲データを選択し、カレントプレイリストに追加する。
【００８７】
本実施形態では、優先度スコアの初期値は「５０」であり、優先度スコアは「０」から「１００」までの整数値を取りうる。また、１つの楽曲につき３つのカテゴリが対応付けられる。各楽曲に対応付けられるカテゴリは異なっていてもよい。
【００８８】
図１１に、定義されたカテゴリ（雰囲気）と、そのカテゴリに対応付けられた優先度スコアの初期値と、更新後の優先度スコアの例と、を示す。
図１２に、楽曲と、その楽曲に対応付けられたカテゴリと、優先度スコアの合計値の例と、を示す。
図１３に、楽曲と、その楽曲に対応付けられたカテゴリと、その楽曲の再生動作の内容の例と、を示す。
【００８９】
図１１，１２，１３に示される、カテゴリと優先度スコアとを対応付ける情報や、楽曲と優先度スコアとを対応付ける情報は、ＲＡＭ１０７又は記憶部１０８に記憶され、制御部１０９によって随時更新される。
【００９０】
上述のステップＳ５０９において、制御部１０９は、ユーザ操作を反映して、プレイリストを編集する。具体的には、制御部１０９は、楽曲の再生がスキップされると、その楽曲に対応付けられたカテゴリの優先度スコアを５点減点する。また、制御部１０９は、楽曲が途中でスキップされずに最後まで再生されると、その楽曲に対応付けられたカテゴリの優先度スコアを５点加点する。本実施形態では、１曲につき３つのカテゴリが対応付けられるので、１回の再生又はスキップにつき、１つ楽曲に対し、合計で最大１５点の加点もしくは減点が行われる。
【００９１】
例えば図１３に示すように、曲ｃ３１，ｃ３２，ｃ３３の再生動作が、それぞれ、スキップ、スキップ、再生済みである場合、制御部１０９は、優先度スコアを次のように加点もしくは減点する。
【００９２】
（１）楽曲ｃ３１がスキップされた：
楽曲ｃ３１に対応付けられたカテゴリＭ１１，Ｍ１２，Ｍ１３の優先度スコアをそれぞれ５点減点する。
（２）楽曲ｃ３２がスキップされた：
楽曲ｃ３２に対応付けられたカテゴリＭ１１，Ｍ１２，Ｍ１５の優先度スコアをそれぞれ５点減点する。
（３）楽曲ｃ３３が再生された：
楽曲ｃ３３に対応付けられたカテゴリＭ１１，Ｍ１４，Ｍ１６の優先度スコアをそれぞれ５点加点する。
【００９３】
カテゴリＭ１１について見てみると、５点減点、５点減点、５点加点なので、図１１に示すように、差し引きで５点減点である。同様にして、カテゴリＭ１２は１０点減点、カテゴリＭ１３は５点減点、カテゴリＭ１４は５点加点、カテゴリＭ１５は５点減点、カテゴリＭ１６は５点加点となる。
【００９４】
この結果、楽曲ごとに優先度スコアの合計値を計算すると、図１２に示すように、楽曲ｃ３１は２０点減点、楽曲ｃ３２は２０点減点、楽曲ｃ３３は５点加点、楽曲ｃ３４は１５点減点、楽曲ｃ３５は１０点加点、楽曲ｃ３６は１０点減点、楽曲ｃ３７は増減なし、楽曲ｃ３８は５点減点、楽曲ｃ３９は５点減点となる。
【００９５】
制御部１０９は、楽曲ｃ３１，ｃ３２，ｃ３３のスキップを含む再生動作が終わった時点で、更新後の優先度スコアが最も大きいカテゴリを１つ選択する。図１１の場合、制御部１０９は、カテゴリＭ１４，Ｍ１６のいずれか一方を選択する。優先度スコアが最も大きいカテゴリが複数ある場合には、制御部１０９は、ランダムにいずれか一方を選択する。
【００９６】
例えば、制御部１０９は、カテゴリＭ１４を選択する。そして、制御部１０９は、プレイリストに含まれる楽曲の中から、カテゴリＭ１４をもつ楽曲を、優先度スコアの合計値が高い順に、所定個数選択する。
【００９７】
図１２の場合、カテゴリＭ１４をもつ楽曲は、優先度スコアの合計値が大きい順に、曲ｃ３５，ｃ３３，ｃ３７である。所定個数＝１であれば、制御部１０９は、曲ｃ３５を選択する。所定個数＝２であれば、制御部１０９は、曲ｃ３５，ｃ３３を選択する。所定個数＝３であれば、制御部１０９は、曲ｃ３５，ｃ３３，ｃ３７を選択する。
【００９８】
そして、制御部１０９は、選択した楽曲をカレントプレイリストに追加する。
【００９９】
ステップＳ５０１でプレイリストから楽曲を選択する際に、制御部１０９は、プレイリストに含まれる各楽曲に対応付けられたカテゴリのすべての中から、ランダムにカテゴリを１つ選択し、選択したカテゴリが対応付けられた楽曲を所定個数選択するようにしてもよい。
【０１００】
本実施形態では、１つの楽曲に３つのカテゴリが対応付けられているが、３つに限られるわけではなく、複数であればよい。カテゴリの種類が多いほど、より正確にユーザの嗜好を判別することが可能になる。
【０１０１】
優先度スコアを加減する点数は、５点単位でなくてもよく、任意の点数を加減してもよい。例えば、制御部１０９は、スキップの回数が多いほど、減点を大きくしてもよい。これにより、優先度スコアの差異が生じやすくなり、ユーザの嗜好を判別する精度の向上が期待できる。
【０１０２】
制御部１０９は、優先度スコアを記憶部１０８に記憶しておき、楽曲再生装置１００の電源が落とされても前回の優先度スコアを引き続き使用し更新できるようにしてもよい。これにより、恒久的なユーザの嗜好の判別が行えるようになる。
【０１０３】
以上、各実施形態において説明したように、制御部は、選択部や再生部としても機能する。また、選択部は、ユーザによって指定された楽曲データ、及び、選択部により選択された所定個数の楽曲データが再生されているときにおけるスキップ指示の受け付け状況に基づいて、新たな楽曲データを選択したり、ユーザによって指定された楽曲データ、及び、選択部により選択された所定個数の楽曲データが再生されているときにおけるスキップ指示の受け付け状況に基づいて、カテゴリの前記スコアを更新したりする。
【０１０４】
スキップ指示の受け付け状況とは、スキップ指示を受け付けた回数やタイミング、又は、スキップ指示を受け付けたときの楽曲再生状況、等である。これらを組み合わせた情報に基づいて、新たな楽曲データを選択したり、カテゴリの前記スコアを更新したりしてもよい。
【０１０５】
また、本発明は、上記各実施形態に限定されるものではなく、種々の変形が可能である。
【０１０６】
上記各実施形態では、制御部１０９は、ユーザによる意図的なスキップ指示をプレイリストの編集のきっかけにしているが、ユーザからの明示的なスキップ指示がなくても、カレントプレイリストを編集できるようにしてもよい。
【０１０７】
例えば、ユーザが走るテンポに合わせた楽曲を再生する場合に、ユーザが速く走ったり遅く走ったりすることがある。制御部１０９は、ユーザの速度とカテゴリ「スピード」とに基づいて、ユーザの速度に合ったテンポを有する楽曲の部分集合を求め、ユーザの速度に合った楽曲を適宜追加してもよい。制御部１０９は、ユーザが走る速度の変化量が閾値以上の場合に、上述のスキップ指示に相当するトリガーがあったと判別し、プレイリストの編集を行ってもよい。これにより、楽曲再生装置１００は、ユーザが走る速度に合った楽曲を適宜探し出し、再生することができる。
【０１０８】
例えば、楽曲のサビの部分や触りの部分のみを続けて再生していくダイジェスト再生を行う場合には、楽曲の特定の部分の再生が終われば、現在の楽曲の再生を終了して次の楽曲の再生へと切り替わる。このような場合にも厳密にスキップされたと判別してしまっては、ユーザの嗜好の判別の精度が落ちてしまう。そこで、制御部１０９は、楽曲データの中に判定区間を設定し、ダイジェスト再生の場合には、楽曲中の判定区間についてのみ、すべて再生されたかスキップされたかを判別するようにしてもよい。
【０１０９】
コンピュータを楽曲再生装置１００の全部又は一部として動作させるためのコンピュータプログラムを、メモリカード、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＭＯ（Magneto Optical Disk）などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、楽曲再生装置１００として動作させ、あるいは、楽曲再生装置１００が行う工程を実行させてもよい。さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
【０１１０】
以上説明したように、上記各実施形態によれば、ユーザの手を煩わせることなくユーザの嗜好に合った楽曲を再生するために好適な楽曲再生装置、楽曲再生方法、及び、プログラムを提供することができる。
【符号の説明】
【０１１１】
１００  楽曲再生装置
１０１  無線通信部
１０２  音声処理部
１０３  出力部
１０４  外部Ｉ／Ｆ
１０５  入力受付部
１０６  ＲＯＭ
１０７  ＲＡＭ
１０８  記憶部
１０９  制御部
１１０  電源部
１２１  アンテナ
１２２  スピーカ
１２３  マイクロフォン
１２４  ＬＣＤ
１２５  外部メモリ
６００  全体集合
６５０，７１０，７２０，７３０，８５０，９５０，１０５０  部分集合
８００  補集合
【図１】
2014093097.tif 000003
【図２】
2014093097.tif 000004
【図３】
2014093097.tif 000005
【図４】
2014093097.tif 000006
【図５】
2014093097.tif 000007
【図６】
2014093097.tif 000008
【図７】
2014093097.tif 000009
【図８】
2014093097.tif 000010
【図９】
2014093097.tif 000011
【図１０】
2014093097.tif 000012
【図１１】
2014093097.tif 000013
【図１２】
2014093097.tif 000014
【図１３】
2014093097.tif 000015