説明

プレイリスト作成装置、プレイリスト作成方法、及びプレイリスト作成プログラム

【課題】ソースメディアの作り手の意図を反映したプレイリストを作成することができるプレイリスト作成装置、プレイリスト作成方法、及びプレイリスト作成プログラムを提供する。
【解決手段】プレイリスト楽曲選出部は、外部より指定される条件に基づいて、複数の楽曲を選出する。順序指標算出部は、複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報を取得し、そのトラック番号及び総トラック数に基づいて、プレイリストにおける複数の楽曲の再生順序に係る指標である順序指標を算出する。プレイリスト作成部前記複数の楽曲を再生するためのプレイリストを、順序指標に基づいて作成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の楽曲をグループ化し、再生順を定めたものであるプレイリストを作成するプレイリスト作成装置、プレイリスト作成方法、及びプレイリスト作成プログラムに関するものである。
【背景技術】
【0002】
近年、画像、音楽、映像等のデジタルコンテンツを、ハードディスクドライブ等の大容量記憶装置に格納し、利用することが広く行われている。それに伴って、多数のコンテンツの中から所望のコンテンツを取り出す検索技術や、コンテンツを自動的に分類・整理する技術への要望が高まっており、そのような分野の技術が開発されている。
例えば、特許文献1においては、音楽を対象にして、ユーザの所望するイメージに合う楽曲を集めたプレイリストを生成する装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−15666号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1に記載の技術では、プレイリストの楽曲の印象をどのように遷移させたいかをユーザが指定すると、その印象の遷移順に従う再生順のプレイリストを作成することが可能である。
【0005】
ところで、CDやDVDなどのパッケージ化されたソースメディアにおいては、トラックの再生順に作り手の意図が込められている場合が多い。例えば、映画やテレビドラマなどのサウンドトラックにおいては、オープニングテーマやプレリュードなどは、トラックの最初の方に配置され、逆にクライマックスシーンの楽曲やエンディングテーマなどはトラックの最後の方に配置されることが一般的である。また、サウンドトラックではない通常の音楽アルバムでも、最初の数トラックは勇ましい楽曲で始め、最後の方はしっとりとした楽曲にするように構成したり、楽曲順に物語が変化するようなコンセプトアルバムにするなど、作り手が意図的に楽曲の順番を決めていることがほとんどである。そのため、「この曲は最初の方に聴きたい」とか、「この曲は最後の方に聴きたい」というように、ユーザにとっても、聴きたいと思う楽曲の順番がある。これは、様々なアーティストやアルバムを複合するプレイリストであっても、同様である。
しかしながら、従来の技術においては、例えば、印象の遷移のみでプレイリストの再生順を決定しているため、ソースメディアの作り手の意図を反映させることは困難である。
そこで本発明は、楽曲のトラック番号を参考にすることで、ソースメディアの作り手の意図を反映しつつ、楽曲を配置するプレイリストを作成することができるプレイリスト作成装置、プレイリスト作成方法、及びプレイリスト作成プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明は上述した従来の技術の課題を解決するため、外部より指定される条件に基づいて、複数の楽曲を選出するプレイリスト楽曲選出部と、前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報を取得し、そのトラック番号及び総トラック数に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出する順序指標算出部と、
前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するプレイリスト作成部とを備えることを特徴とするプレイリスト作成装置を提供する。
また、本発明は上述した従来の技術の課題を解決するため、外部より指定される条件に基づいて、複数の楽曲を選出するステップと、前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報を取得し、そのトラック番号及び総トラック数に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出するステップと、前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するステップとを有することを特徴とするプレイリスト作成方法を提供する。
また、本発明は上述した従来の技術の課題を解決するため、コンピュータを、外部より指定される条件に基づいて、複数の楽曲を選出するプレイリスト楽曲選出手段、前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出する順序指標算出手段、前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するプレイリスト作成手段、として機能させるためのプレイリスト作成プログラムを提供する。
【発明の効果】
【0007】
本発明によれば、プレイリストの再生曲の順番を、それぞれの楽曲のソースメディアにおけるトラック番号と、そのソースメディアの総トラック数とを基にして決定するため、ソースメディアの曲順を反映した自然な曲順のプレイリストを作成することができる。
【0008】
また、プレイリストの再生曲順の決定は、トラック番号と、そのソースメディアの総トラック数という、取得が容易な情報を利用するため、複雑な解析を行ったり、外部ネットワークから情報を取得したりする必要がなく、容易に実施することができる。
【図面の簡単な説明】
【0009】
【図1】実施の形態1におけるプレイリスト作成装置1の構成を示すブロック図である。
【図2】実施の形態1,2におけるプレイリスト作成装置1,2の動作を示すフローチャートである。
【図3】実施の形態1,2におけるメタデータ格納部の一例を示す図である。
【図4】実施の形態1におけるトラック情報格納部の一例を示す図である。
【図5】実施の形態1,2におけるプレイリスト作成条件の一例を示す図である。
【図6】実施の形態1,2におけるプレイリスト作成条件を作成するためのユーザインタフェースの一例を示す図である。
【図7】実施の形態1,2におけるプレイリスト楽曲選出部の動作を示すフローチャートである。
【図8】実施の形態1,2における順序指標算出部の動作を示すフローチャートである。
【図9】実施の形態1における順序指標を算出した一例を示す図である。
【図10】実施の形態1,2におけるプレイリスト作成部の動作を示すフローチャートである。
【図11】実施の形態1,2におけるプレイリストに登録する楽曲を|順序指標-0.5|で降順ソートした一例を示す図である。
【図12】実施の形態1,2におけるプレイリスト中間番号を算出した一例を示す図である。
【図13】実施の形態1,2におけるプレイリストの曲順決定処理の流れを示すフローチャートである。
【図14】実施の形態1,2におけるプレイリストの曲順を決定する様子の一例を示す図である。
【図15】実施の形態1,2におけるプレイリストの曲順を決定する様子の一例を示す図である。
【図16】実施の形態1,2におけるプレイリストに対するシャッフル処理の流れを示すフローチャートである。
【図17】実施の形態1,2における再生順番号から累積分布を算出した一例を示す図である。
【図18】実施の形態1,2における2つの楽曲IDを交換する一例を示す図である。
【図19】実施の形態2におけるプレイリスト作成装置の構成を示すブロック図である。
【図20】実施の形態2におけるデータベースの一例を示す図である。
【図21】実施の形態2におけるデータベースの一例を示す図である。
【発明を実施するための形態】
【0010】
以下、本発明を実施するための形態について、下記のように、幾つか例を示して説明する。なお、以下の説明で、プレイリストとは、複数の楽曲をグループ化し、その複数の楽曲の再生順を定めたものであるとする。また、CDやDVDなどのパッケージ化されたメディアをソースメディアと呼ぶこととする。また、アルバム単位で複数のコンテンツの集合をまとめてダウンロード販売する際の、その複数のコンテンツの集合もソースメディアと呼ぶこととする。
【0011】
<実施の形態1>
図1は、本発明の実施の形態1におけるプレイリスト作成装置の構成例である。図1において、本実施の形態1のプレイリスト作成装置1は、入力部10と、格納部20と、プレイリスト条件作成部30と、プレイリスト楽曲選出部31と、順序指標算出部33と、プレイリスト作成部34と、表示部40を含んで構成されている。格納部20は、例えば、ハードディスクやメモリのような高速アクセスが可能な大容量記録媒体を用いることができる。また、格納部20は、楽曲格納部21と、メタデータ格納部22と、トラック情報格納部23とを有している。なお、図1では、機能ブロック図によりハードウエア的に構成して示しているが、プレイリスト作成装置1は、CPUや、メモリ、ハードディスクドライブを具備する通常のコンピュータを使って、ソフトウェア的に構成するようにしてもよい。
【0012】
図2は、図1に示すプレイリスト作成装置1の動作の概要の一例を示すフローチャートである。図1に示すプレイリスト作成装置1の動作を、図2のフローチャートを参照して説明する。
【0013】
まず、プレイリスト条件作成部30は、入力部10を介して、ユーザにどのようなプレイリストを作成するかといった条件を入力させ、プレイリスト作成条件を作成する(ステップS10)。
次に、プレイリスト楽曲選出部31は、ステップS10で作成されたプレイリスト作成条件に一致する楽曲を、メタデータ格納部22を参照しながら、楽曲格納部21から選出する(ステップS20)。
【0014】
次に、順序指標算出部33は、プレイリストに登録する楽曲について、それぞれプレイリストの再生順を決定するための順序指標を算出する(ステップS30)。順序指標は、トラック情報格納部23を参照して取得するトラック情報に基づいて算出される。
次に、プレイリスト作成部34は、ステップS30で算出された順序指標に基づき再生順を決定し、プレイリストを作成する(ステップS40)。
以上が、プレイリスト作成装置1の動作である。
【0015】
続いて、各部の詳細な説明を行う。入力部10は、選択や決定などの動作を行える、マウスやキーボードといった入力デバイスである。
楽曲格納部21は、楽曲本体であるデジタルデータと、各楽曲のデジタルデータを一意に識別するための識別子である楽曲IDとを格納する。楽曲IDは、1、2、3といった数値でも良いし、URI(Uniform Resource Identifier)などを用いても良い。
【0016】
メタデータ格納部22は、楽曲格納部21に格納された楽曲IDに対応するメタデータを格納する。メタデータとは、アーティスト名やアルバム名、ジャンル名、リリース年月日、楽曲の雰囲気といった、対象の楽曲を副次的に表す書誌的情報のことである。図3は、メタデータ格納部22のフォーマットの一例であり、楽曲IDに対応するメタデータとして、アーティスト名、アルバム名、ジャンル名、タイトル名を格納した様子を示している。具体的に示すと、楽曲ID「ID1」のアーティスト名は「AAAA」で、曲の雰囲気は「穏やか」、ジャンル名は「ロック」、タイトル名は「A1」である。また、アーティスト名や曲の雰囲気、ジャンルといった、メタデータのカテゴリの名称を、以降、メタデータカテゴリと称する。
【0017】
トラック情報格納部23は、楽曲IDと、その楽曲IDに対応するトラック情報とを関連付けて格納する。トラック情報とは、楽曲IDに対応する楽曲データが、CDやDVDなどのソースメディアに格納されていたときの、ソースメディアにおけるその楽曲データのトラック番号と、そのソースメディアの総トラック数である。図4は、トラック情報格納部23のフォーマットの一例を示したものである。例えば、楽曲ID「ID1」のソースメディア中におけるトラック番号が「1」であり、ソースメディアの総トラック数は「20」であることを示している。
【0018】
プレイリスト条件作成部30は、プレイリストに登録する楽曲の条件であるプレイリスト作成条件を作成する。プレイリスト作成条件は、プレイリストの曲数や、ファイルサイズ、トータル再生時間といった、プレイリストに登録する曲数を制限するための条件(制約条件)と、特定のアーティスト名、ジャンル、雰囲気などのメタデータカテゴリの内容に一致する楽曲といった、メタデータによる絞込みのための条件(絞込み条件)とで構成される。
【0019】
図5は、作成されたプレイリスト作成条件の一例である。図5では、絞込み条件として、メタデータカテゴリが「アーティスト名」、メタデータが「ABC」、一致が「完全に一致」という条件と、メタデータカテゴリ「曲の雰囲気」がメタデータ「穏やか」、一致「ではない」という条件の2つが設定されている。すなわち、アーティスト名が「ABC」であり、曲の雰囲気が「穏やか」以外の楽曲が、プレイリスト作成条件に一致するという条件を意味する。また、アーティスト名の条件は「完全に一致」であるため、アーティスト名が「ABCD」など、部分的に一致している場合は、この条件に該当しない。
【0020】
次に、制約条件として、制約単位「楽曲数」、制約数「25曲以下」という条件が設定されている。すなわち、絞込み条件で一致した楽曲のうち、25曲以下をプレイリストに登録するという条件である。制約単位とは、上限を決定するための単位であり、楽曲数の他には、前述の通り、ファイルサイズや、トータル再生時間などを設定できる。例えば、ファイルサイズを100MB以下にするという制約条件を作成するといった場合、制約単位を「ファイルサイズ」、制約数を「100MB以下」として制約条件を設定する。
プレイリスト作成条件の制約条件と絞込み条件は、どちらも設定することを基本とするが、どちらか一方のみが設定されるだけでも良い。
【0021】
条件の設定は、入力部10を介してユーザに条件を入力させることによって行う。このとき、図6に示すような、表示部40にユーザが条件を入力するためのユーザインタフェース画面を用意しても良い。図6に示すアーティスト条件指定枠41は、プレイリストに登録したいアーティスト名を入力するための部品である。ジャンル条件指定枠42は、プレイリストに登録したいジャンル名を入力するための部品である。雰囲気条件指定枠43は、プレイリストに登録したい曲の雰囲気を入力するための部品である。曲数条件指定枠44は、プレイリストに登録される曲数を指定するための部品である。作成ボタン45は、プレイリスト条件作成部30に、プレイリスト作成条件を作成させるためのボタンである。
【0022】
図6では、アーティスト条件指定枠41に「AAAA」が、ジャンル条件指定枠42に「ロック」が、雰囲気条件指定枠43に「穏やか」が、曲数条件指定枠44に「30」がそれぞれ入力されている。この状態で作成ボタン45がユーザによって押下されると、プレイリスト条件作成部30は、絞込み条件として、メタデータカテゴリ名「アーティスト名」、メタデータ「AAAA」、一致「完全に一致」と、メタデータカテゴリ名「ジャンル名」、メタデータ「ロック」、一致「完全に一致」と、メタデータカテゴリ名「曲の雰囲気」、メタデータ「穏やか」、一致「完全に一致」の3つを作成し、さらに、制約条件として、制約単位「楽曲数」、制約数「30」であるプレイリスト作成条件を作成する。
【0023】
プレイリスト楽曲選出部31は、プレイリスト条件作成部30によって作成されたプレイリスト作成条件に従って、プレイリストに登録する楽曲を選出する。以下、プレイリストに登録する楽曲(登録楽曲)の集合を、プレイリスト登録楽曲集合と称する。図7は、プレイリスト楽曲選出部31の動作を示すフローチャートである。
まず、プレイリスト楽曲選出部31は、メタデータ格納部22を参照しながら、プレイリスト作成条件の絞込み条件に一致する楽曲を全て選出する(ステップS21)。図5のプレイリスト作成条件の具体例を用いて説明すると、アーティスト名が「ABC」であり、かつ、曲の雰囲気が「穏やか」ではない楽曲IDを、メタデータ格納部22を参照して全て取得する。
【0024】
次に、プレイリスト楽曲選出部31は、ステップS21で取得した楽曲IDの中から、制約条件に従って楽曲を選出する(ステップS22)。図5のプレイリスト作成条件の具体例を用いて説明すると、プレイリストに登録するための楽曲が25曲以下になるように、ステップS21で取得した楽曲IDの中から選び出す。もし、ステップS21で取得した楽曲IDが25曲以下であるならば、そのまま全ての曲を選出し、25曲よりも大きい場合は、ランダムに25曲選出する。
【0025】
順序指標算出部33は、プレイリスト楽曲選出部31によって選出されたプレイリスト登録楽曲集合の楽曲それぞれについて、順序指標を算出する。順序指標とは、プレイリストにおける楽曲の再生順序を決定するための指標であり、トラック番号情報に基づいて算出される。図8は、順序指標算出部33の動作を示すフローチャートである。図8のステップS31は、ループの開始記号であり、ステップS34はループの終了記号を示している。ループ記号に示されている「k:1,1,N」は、変数kの初期値が1、増分が1で、kがNになるまで繰り返すことを表す。また、このNは、プレイリスト楽曲選出部31によって選出された楽曲数を示す。「ループA」は、ループの識別子を示す。
【0026】
順序指標算出部33は、プレイリスト登録楽曲集合の楽曲のうち、k番目に登録されている楽曲の楽曲IDを基に、トラック情報格納部23を参照して、k番目に登録されている楽曲のソースメディアにおけるトラック番号と、そのソースメディアの総トラック数とを取得する(ステップS32)。
次に、順序指標算出部33は、取得したトラック番号と、ソースメディアの総トラック数とを基に、順序指標を算出する(ステップS33)。k番目の楽曲の順序指標Iは、トラック番号をt、ソースメディアの総トラック数をTとおくと、次の数1によって算出される。
【0027】
【数1】

【0028】
図9は、6曲分の楽曲について、トラック番号と、ソースメディアの総トラック数を基に、順序指標を算出した具体例である。順序指標算出部33は、数1を用いて、順序指標Iを計算する。具体的に、順序指標算出部33は、楽曲IDaは、(3−1)/(12−1)=0.182、楽曲IDbは、(18−1)/(20−1)=0.895、楽曲IDcは、(20−1)/(20−1)=1.000、楽曲IDdは、(1−1)/(14−1)=0.000、楽曲IDeは、(8−1)/(12−1)=0.636、楽曲IDfは、(5−1)/(20−1)=0.211と、それぞれ算出する。
【0029】
プレイリスト作成部34は、順序指標算出部33によって算出された順序指標に基づいて決まる曲順になるよう楽曲を登録することによって、プレイリストを作成する。図10は、プレイリスト作成部34の動作を示すフローチャートである。
まず、プレイリスト作成部34は、プレイリスト登録楽曲集合の楽曲を、順序指標から0.5を減じた値の絶対値(|順序指標−0.5|)に従って降順ソートを行う(ステップS41)。図11は、楽曲それぞれについての順序指標と、|順序指標−0.5|の値を示し、|順序指標−0.5|の値に従って降順にソートされたものである。すなわち、図11に示す|順序指標−0.5|の値を参照すると、{0.5,0.5,0.395,0.318,0.289,0.136}というように、表の下に向かって値が小さくなるように並べ替えられている。
【0030】
次に、プレイリスト作成部34は、変数kについて、初期値1、増分1、終了値Nで、ループBを開始する(ステップS42)。終了値Nは、プレイリスト登録楽曲集合の楽曲数である。次に、プレイリスト作成部34は、ソート済みのプレイリスト登録楽曲集合から、k番目の楽曲について順序指標を参照し、プレイリスト中間番号を算出する(ステップS43)。プレイリスト中間番号とは、プレイリストの再生順を決定するために中間的に利用される値である。プレイリストの総曲数をN、k番目の楽曲の順序指標Iとおくと、プレイリスト中間番号Pは、次の数2で求められる。
【0031】
【数2】

【0032】
プレイリスト作成部34が、図11の例に対して数2を計算し、それぞれの楽曲についてプレイリスト中間番号を求めた結果を、図12に示す。例えば、楽曲IDbのプレイリスト中間番号は5.745である。これは、楽曲IDbの順序指標が0.895であり、プレイリスト登録楽曲集合の曲数は6曲であるため、楽曲IDbのプレイリスト中間番号は0.895×(6−1)+1=5.745と求められる。
【0033】
プレイリスト登録楽曲集合の全ての楽曲についてプレイリスト中間番号を算出すると、次に、プレイリスト作成部34は、プレイリスト中間番号に基づいてプレイリストの再生順を決定する(ステップS45)。プレイリストの再生順を決定する動作を、図13のフローチャートを参照して説明する。
まず、変数kについて、初期値1、増分1、終了条件NでループCを開始する。次に、プレイリスト作成部34は、ソート済みのプレイリスト登録楽曲集合のk番目の楽曲について、プレイリスト中間番号の小数点第1位を四捨五入した整数を求めることで、基準となる再生順番号(基準再生順番号)を算出する(ステップS101)。再生順番号とは、プレイリスト内の何番目に再生される曲かを示す番号である。次に、変数iについて、初期値0、増分1、終了値NでループDを開始する(ステップS102)。終了値Nは、プレイリスト登録楽曲集合の楽曲数である。
【0034】
次に、プレイリスト作成部34は、プレイリストのどの位置に楽曲を登録するかの候補となる再生順番号(候補再生順番号)を算出する(ステップS103)。楽曲kの基準再生順番号をB、候補再生順番号をCとすると、候補再生順番号Cは、以下の数3で求められる。
【0035】
【数3】

【0036】
数3より、候補再生順番号は、i=0以外のとき、2つの値が求められる。例えば、基準再生順番号が5であり、i=1ならば、候補再生順番号は、4と6の2つの値が求められる。また、候補再生順番号Cの値は、0<C≦Nであり、この範囲外である値は削除する。例えば、基準再生順番号が1であり、i=1ならば、候補再生順番号は0,2となるが、0は0<C≦Nに含まれないので、0を削除する。
【0037】
次に、プレイリスト作成部34は、ステップS103で求めた候補再生順番号の位置に、楽曲IDが登録できるかどうかを判断する(ステップS104)。もし、登録できるならば、ループDを中断してステップS106に進む。そうでなければ、ループDを繰り返す。
【0038】
次に、プレイリスト作成部34は、算出した候補再生順番号の位置に、楽曲IDを登録する(ステップS106)。プレイリスト作成部34は、候補再生順番号が2つあって、どちらの候補再生順番号の示す位置でもプレイリストに登録が可能である場合は、プレイリスト中間番号P、基準再生順番号Bとして、P≧Bの場合は、候補再生順番号の大きい方の値の位置に、P<Bの場合は、候補再生順番号の小さい方の値の位置に、楽曲IDを登録する。具体的な値で例示すると、プレイリスト作成部34は、P=3.2、B=3、Cが2,4であるとき、P≧Bであるので、Cのうち「4」を選び、プレイリストの再生順番号「4」の位置に楽曲IDを登録する。また、プレイリスト作成部34は、P=2.8、B=3、Cが2,4のとき、P<Bであるので、Cのうち「2」を選び、プレイリストの再生順番号「2」の位置に楽曲IDを登録する。
【0039】
以上のプレイリストの再生順番号を決定する動作を、より具体的な例を示して説明する。まだ楽曲IDが1つも登録されていない空のプレイリストに、プレイリスト作成部34は、まず、プレイリスト中間番号が4.02で、楽曲IDαである楽曲を登録する。プレイリスト中間番号は4.02なので、これを小数点第1位で四捨五入して求められる基準再生順番号は4である。基準再生順番号から求められる最初の候補再生順番号は4±0=4である。プレイリスト作成部34は、まず、この位置に楽曲IDを登録できるかどうかを判断する。プレイリストにはまだ何も登録されていない状態であるので、プレイリスト作成部34は、この位置に楽曲IDαを登録する。図14(a)は、この楽曲IDαを登録した状態を示している。
【0040】
次に、プレイリスト作成部34は、引き続きこのプレイリストに、楽曲IDが楽曲IDβ、プレイリスト中間番号が3.91である楽曲を登録する。この曲のプレイリスト中間番号は3.91なので、これを小数点第1位で四捨五入して求められる基準再生順番号は4である。最初の候補再生順番号は4±0=4である。プレイリストの再生順番号「4」には、既に楽曲IDαが登録されているため、楽曲IDβを登録できない。そのため、プレイリスト作成部34は、次の候補再生順番号を算出する。次の候補再生順番号は、4±1=3,5である。図14(a)を参照すると、プレイリストの再生順3、再生順5のどちらにも、まだ楽曲IDが登録されていない。プレイリスト作成部34は、プレイリスト中間番号と基準再生順番号を比較する。その結果、3.91<4であるので、プレイリスト作成部34は、候補再生順番号の小さい方の値である3と同じプレイリスト再生順に楽曲IDβを登録する。図14(b)は、楽曲IDαと、楽曲IDβを登録した状態を示している。
【0041】
次に、図14(b)の状態に引き続き、プレイリスト作成部34は、楽曲IDが楽曲IDγ、プレイリスト中間番号が4.3である楽曲を登録する。この楽曲のプレイリスト中間番号は4.3なので、これを小数点第1位で四捨五入して求められる基準再生順番号は4である。最初の候補再生順番号は4±0=4であるが、プレイリストの再生順4番目には、既に楽曲IDαが登録されているため、楽曲IDγを登録できない。そのため、プレイリスト作成部34は、次の候補再生順番号を算出する。次の候補再生順番号は、4±1=3,5である。図14(b)を参照すると、プレイリストの再生順3には、既に楽曲IDβが登録されているが、プレイリストの再生順5には、まだ楽曲IDが登録されていない。そこで、プレイリスト作成部34は、楽曲IDγをプレイリストの再生順5に登録する。図14(c)は、楽曲IDα、楽曲IDβ、楽曲IDγを登録した状態を示している。
【0042】
以上のような手順で、プレイリスト作成部34は、プレイリスト登録楽曲集合全ての楽曲について、プレイリストの再生順を決定する。なお、上記手順によってプレイリストの再生曲順を決定すると、音楽アルバム1枚のみをプレイリストに登録すると、アルバムの曲順でプレイリストが作成される。
【0043】
ここで、プレイリスト作成部34が、ステップS41において、プレイリスト登録楽曲集合を|順序指標−0.5|で降順ソートを行う理由について説明する。これは、プレイリストの再生順の先頭と末尾が特に重要であるため、先頭と末尾からプレイリストに楽曲IDを登録していくためである。
【0044】
降順ソートを行わなかった場合にどのような問題が発生するか、説明を行う。図15は、順序指標が0.1である楽曲ID10と、順序指標が0.15である楽曲ID11を、それぞれ再生順番号1と、再生順番号2に登録した様子を示している。ここに、順序指標が0.0である楽曲ID12を登録することを考えると、基準再生順番号は、0×(N−1)+1=1となる。しかし、再生順番号1には既に楽曲ID10が登録されている。隣の再生順番号2にも楽曲ID11が登録されているため、この楽曲ID12は、結局、再生順番号3に登録されることになる。楽曲ID10の基準再生順番号は、0.1×(N−1)+1>1(N>1のとき)であり、楽曲ID12の方が、楽曲ID10よりも再生順番号1に近い。しかしながら、楽曲ID10、楽曲ID11が先に登録されてしまっているため、楽曲ID12は再生順番号3に登録せざるを得なくなる。
【0045】
そこで、ステップS41にて、|順序指標−0.5|で降順ソートを行うと、順序指標が0、あるいは1に近いものほど最初に現れるため、先頭と末尾からプレイリストに楽曲IDを登録することができる。図15の例では、|順序指標−0.5|を計算すると、楽曲ID10が0.4、楽曲ID11が0.35、楽曲ID12が0.5となるため、降順ソートを行うと、楽曲ID12→楽曲ID10→楽曲ID11の順になる。
【0046】
図13の説明に戻り、プレイリスト作成部34は、ステップS45で決定したプレイリストの再生順に対して、シャッフル処理を行う(ステップS46)。同じ条件でプレイリストを作成すると、同じ曲順でプレイリストが作成されてしまいやすいため、何度も利用していると、ユーザが飽きてしまうことが考えられる。そのため、プレイリストの曲順を入れ替えるシャッフル処理を行う。しかし、一般的に知られる手順でシャッフル処理を行ってしまうと、ランダムな再生順序と変わりがなくなってしまう。そこで、再生順序が重要であるプレイリストの始めの方と終わりの方において、再生順の入れ替え頻度が低くなるようにしながら、再生順の中央付近の楽曲を中心に曲順を入れ替えるように、正規分布の密度関数を用いたシャッフル処理を行う。
なお、正規分布の密度関数を用いることは一例であり、プレイリスト作成部34は、前記順序指標によって定まる再生順序が真ん中の楽曲が最も選択される確率が高く、かつ、前記順序指標によって定まる再生順序が真ん中に近い楽曲ほど選択される確率が高い確率分布に基づいて楽曲を選択し、その選択した楽曲の再生順序を入れ替えるようにすればよい。なお、順序指標によって定まる再生順序とは、ステップS45で決定したプレイリストの再生順である。また、再生順序が真ん中の楽曲とは、例えば、7曲の楽曲からなるプレイリストであれば、再生順序が4番目の楽曲であり、10曲の楽曲からなるプレイリストであれば、再生順序が5番目及び6番目の楽曲である。
【0047】
ステップS46で行うシャッフル処理の動作を図16のフローチャートを参照して説明する。ステップS46のシャッフル処理では、まず、初期値1、増分1、終了値Mの変数kについてループEを開始する(ステップS110)。終了値Mは0以上の任意の整数である。値が大きいほど、プレイリストの再生順序のランダム性が高くなる。凡その目安として、プレイリストの曲数をNとして、M=5N〜10N程度の値であれば、適度にシャッフルすることができる。
次に、シャッフルのために、プレイリスト作成部34は、入替対象とする再生順番号を一つ選択する(ステップS111)。この再生順番号の選択には、[0.0,1.0]の一様乱数rを発生させ、数4で求められる正規分布の累積分布関数Φが、Φ≦rとなる最大のkを求める。
【0048】
【数4】

【0049】
数4のf(x)は、平均N/2、分散σの正規分布の密度関数であり、xは、プレイリストの再生順番号を代入することによって求められる。分散σが大きいほど、再生順序のランダム性も大きくなる。分散σは任意の値であるが、数5で求められる値などを用いると良い。
【0050】
【数5】

【0051】
全9曲のプレイリストについて、数4と、数5を基に、再生順番号に対応する累積分布を求めたものを、図17に示す。ここで、一様乱数の値rが0.5であるならば、累積分布の値が0.5以下である最大の再生順番号を選択すれば良いので、選択される再生順番号は「5」となる。一様乱数の値rが0.1であるならば、選択される再生順番号は「3」となる。なお、プレイリスト作成部34は、乱数rが0.0004より小さな値だった場合は、該当する再生順番号が存在しないため、再度、乱数rを発生させる。同様に、プレイリスト作成部34は、乱数rが0.9992より大きな値だった場合も、再生順番号が10以上となり、プレイリストの再生曲数を超えてしまうため不適であり、再度、乱数rを発生させる。
【0052】
次に、ステップS111で選択された楽曲IDと入れ替えを行うために、もう一つの楽曲IDを選択する(ステップS112)。ここでは、プレイリスト作成部34は、ステップS111で選択された再生順番号に対して隣接する、中央に近い側の再生順番号を選択する。つまり、プレイリストの楽曲数をNとして、ステップS111で選択された再生順番号をnとすると、選択される再生順番号nは、数6で求められる。
【0053】
【数6】

【0054】
図17を基に具体的な例を示すと、もし、数4、数5で選ばれる再生順番号nが「7」であった場合、プレイリストの楽曲数N=10なので、n>N/2である。そのため、数6より、再生順番号n=n−1=6となる。
【0055】
次に、プレイリスト作成部34は、ステップS111と、ステップS112で選択された再生順番号nと、再生順番号nに対応付けられた楽曲IDの値を交換する(ステップS113)。図18(a)は、再生順番号6に楽曲IDxが、再生順番号7に楽曲IDyが格納されている状態を示している。この状態において、n=7,n=6で楽曲IDの値を入れ替えると、図18(b)に示す状態になる。すなわち、再生順番号6の位置に、再生順番号7であった楽曲IDyが、再生順番号7の位置に、再生順番号6であった楽曲IDxが格納される。
プレイリスト作成部34は、以上のシャッフル処理を、M回繰り返す(ステップS114)。
【0056】
本実施の形態におけるシャッフル処理では、正規分布の確率密度関数に基づいて、交換対象となる再生順番号を選択したが、再生順の中央の交換頻度が大きくなれば、別のアルゴリズムや数式を用いて選択しても良い。
【0057】
また、複数枚で構成される音楽アルバムの場合は、楽曲のトラックを、全体を1つのディスクとしてトラック番号を割り当てても良いし、それぞれ独立してトラック番号を割り当てるようにしても良い。例えば、ディスク1には20トラック、ディスク2には24トラック収録されているような2枚組のアルバムがある場合、ディスク2のトラック番号を、1曲目をトラック1、2曲目をトラック2として扱っても良いし、ディスク1の続きと考えて、1曲目をトラック21、2曲目をトラック22と扱っても良い。また、全体を1つのディスクと考える場合は、アルバムの総トラック数は、20+24=44曲である。以上がプレイリスト作成装置1の説明である。
【0058】
以上のように、本実施形態1のプレイリスト作成装置1は、プレイリストの再生曲の順番を、それぞれの楽曲のソースメディアにおけるトラック番号と、そのソースメディアの総トラック数とを基にして決定するため、ソースメディアの曲順を反映した自然な曲順のプレイリストを作成することができる。
【0059】
また、曲順の決定に用いるトラック番号やソースメディアの総トラック数は、情報の取得が容易であるため、複雑な解析処理を行ったり、外部ネットワークなどから情報を取得したりしなくとも、実施することができる。
また、プレイリストの再生順の開始付近と終了付近を大きく崩さないシャッフル処理を行うことにより、ソースメディアの作り手の意図をある程度保った自然な曲順で、かつ、毎回同じ条件でプレイリストを作成したとしても、同じ曲順にならないために飽きにくい効果を得ることができる。なお、シャッフル処理は必ずしも行わなくてもよい。その場合、プレイリスト作成部34は、ソースメディアにおける再生順序が前である楽曲ほど、プレイリストにおける再生順序が前になるように、プレイリストを作成することとなる。
<実施の形態2>
【0060】
市販されている楽曲の中には、複数のアルバム(ソースメディア)に収録されている複数の楽曲が、一つのソースメディアとして再構成されて販売されている場合がある。コンピレーションアルバムやベストアルバムなどがその一例である。実施の形態2のプレイリスト作成装置2は、こうした情報を用いて、プレイリストに登録する楽曲それぞれについて、外部のデータベースから、収録されている全てのアルバムについてのトラック番号と、アルバムの総トラック数とを基にして、順序指標を算出する。複数のアルバム情報のトラック情報を用いて順序指標を算出することで、より違和感のない曲順のプレイリストを作成することができる。以下、本実施の形態のプレイリスト作成装置2について詳細に説明する。
【0061】
図19は、実施の形態2におけるプレイリスト作成装置2の構成例を示すブロック図である。
図19において、プレイリスト作成装置2は、プレイリスト作成装置1に、トラック情報取得部32が追加されており、格納部20からトラック情報格納部23が取り除かれている。また、順序指標算出部33の動作内容が、プレイリスト作成装置1とはことなるため、順序指標算出部33Aとしている。その他の部分は、プレイリスト作成装置1と同様である。また、プレイリスト作成装置2も、プレイリスト作成装置1と同様に、ソフトウェア的に構成するようにしても良い。
【0062】
プレイリスト作成装置2における順序指標算出部33Aの動作は、プレイリスト作成装置1における順序指標算出部33とほぼ同様であるが、動作内容が異なる。詳細には、図8のフローチャートにおける、トラック番号に関する情報を取得するステップS32と、順序指標を算出するステップS33の動作内容が異なる。
プレイリスト作成装置1における順序指標算出部33は、トラック番号に関する情報を、トラック情報格納部23から取得していたが、プレイリスト作成装置2における順序指標算出部33Aは、トラック情報取得部32を利用して、外部から情報を取得する。
【0063】
トラック情報取得部32は、外部のデータベース装置60から、外部接続部50を介して、楽曲のソースメディア中におけるトラック番号、及び、そのソースメディアの総トラック数を取得する。以降、楽曲のソースメディア中におけるトラック番号と、そのソースメディアの総トラック数の情報の組み合わせを、トラック情報と称する。外部接続部50は、データの通信経路であって、バスやネットワークケーブルなどである。トラック情報取得部32は、取得したい楽曲IDのアーティスト名とタイトル名を、データベース装置60に送信することで、その楽曲のトラック情報を取得する。アーティスト名とタイトル名は、メタデータ格納部22から取得する。
【0064】
データベース装置60は、トラック情報を格納した外部装置である。データベース装置60は、通信部61と、楽曲情報検索部62と、データベース63とで構成される。また、通信部61は、データの送受信を制御する。
楽曲情報検索部62は、外部から指定されたアーティスト名とタイトル名とを検索クエリとして、データベース63を検索し、該当するデータのトラック情報を取得する。取得したトラック情報は、通信部61に送り、外部装置へ送信する。なお、データベース63から取得するトラック情報は、1つとは限らない。これについては、下記、データベース63の説明で詳述する。
【0065】
データベース63は、アーティスト名、タイトル名、ソースメディアのタイトル名、ソースメディアの総トラック数、ソースメディア中のトラック番号とを関連つけて格納している。図20と、図21は、データベース63のフォーマットの一例である。図20のテーブルと、図21のテーブルとは、データベース識別子で関係付けられている。
【0066】
すなわち、図20のデータベース識別子「楽曲A」と、図21のデータベース識別子「楽曲A」とは、同一の識別子であって、同一の楽曲に関するデータを格納したものである。図20は、アーティスト名と、タイトル名と、データベース内の楽曲を識別するためのデータベース識別子とが格納されている。例えば、アーティスト名が「AAAA」で、タイトル名が「A1」ならば、データベース識別子は「楽曲A」である。図21は、データベース識別子と、ソースメディアのタイトル名と、ソースメディアの総トラック数、ソースメディア中のトラック番号を格納した様子を示している。例えば、データベース識別子が「楽曲A」のとき、ソースメディアのタイトル名と、ソースメディアの総トラック数と、ソースメディア中のトラック番号の組み合わせは{アルバムA,12,3}、{ベストアルバムA,20,1}、{オムニバスA,15,2}の3つが存在する。1つのデータベース識別子に対して、複数の情報が存在する理由は、楽曲によっては、通常のアルバムの他、ベストアルバムに収録されたり、コンピレーションアルバムに収録されたり、サウンドトラックに収録されたりすることがあるためである。
【0067】
ここで、アーティスト名「AAAA」、タイトル名「A1」の楽曲について、トラック情報取得部32がデータベース装置60からトラック情報を取得する動作の具体例を示す。トラック情報取得部32が、外部接続部50を介して、アーティスト名「AAAA」と、タイトル名「A1」を示す情報を、データベース装置60に送信する。データベース装置60では、通信部61で、これらの情報を受信する。そして、楽曲情報検索部62が、アーティスト名「AAAA」と、タイトル名「A1」を検索クエリとし、データベース63に格納されたデータを取得する。図20を参照すると、アーティスト名が「AAAA」、タイトル名が「A1」のデータベース識別子は「楽曲A」であるので、楽曲情報検索部62は、図21より、トラック情報として{12,3}、{20,1}、{15,2}の3つを取得する。この3つのトラック情報を、トラック情報取得部32に送信する。そして、トラック情報取得部32はその3つのトラック情報を取得する。
【0068】
以上が、トラック情報取得部32の説明である。
順序指標算出部33Aの説明に戻り、順序指標算出部33Aにおける図8のステップS34においては、トラック情報取得部32によって取得されたトラック情報を基に、順序指標を算出する。順序指標算出部33Aが算出する順序指標Iは、以下の数7によって求められる。
【0069】
【数7】

【0070】
数7のLは、トラック情報取得部32によって取得されたトラック情報の総数である。kは、ループ記号の変数kであり、プレイリスト登録楽曲集合のk番目の楽曲であることを示す。tはソースメディア中における楽曲kのトラック番号であり、Tは、楽曲kのソースメディアの総トラック数である。t(l)やT(l)の変数lは、トラック情報取得部32によって取得されたl番目のトラック情報であることを示す。
【0071】
前述のトラック情報の例、{12,3}、{20,1}、{15,2}から数7に基づく順序指標を算出する具体例を示すと、L=3であるので、順序指標算出部33Aは、順序指標を、I={(3−1)/(12−1)+(1−1)/(20−1)+(2−1)/(15−1)}/3=0.084、と算出することができる。
このように算出された順序指標Iに基づいて、プレイリスト作成部34はプレイリストを作成する。プレイリスト作成部34の動作は、実施の形態1と同様であるため、説明を省略する。
【0072】
データベース装置60は、楽曲のアーティスト名とタイトル名とを基に、楽曲のトラック情報を格納しているが、楽曲の波形データに基づく情報を用いてもよい。例えば、楽曲の先頭5秒分の波形データについてハッシュ値を算出したものを用いる。その場合、トラック情報取得部32も、アーティスト名とタイトル名とをデータベース装置60に送信するのではなく、楽曲の波形データを楽曲格納部21から取得し、その波形データからハッシュ値を算出したものをデータベース装置60に送信する。
【0073】
以上のプレイリスト作成装置2によると、複数のアルバムから順序指標を算出することで、より違和感の少ない曲順のプレイリストを作成することができる。
【符号の説明】
【0074】
1,2 プレイリスト作成装置
10 入力部
20 格納部
21 楽曲格納部
22 メタデータ格納部
23 トラック情報格納部
30 プレイリスト条件作成部
31 プレイリスト楽曲選出部
32 トラック情報取得部
33,33A 順序指標算出部
34 プレイリスト作成部
40 表示部
41 アーティスト条件指定枠
42 ジャンル条件指定枠
43 雰囲気条件指定枠
44 曲数条件指定枠
45 作成ボタン
50 外部接続部
60 データベース装置
61 通信部
62 楽曲情報検索部
63 データベース

【特許請求の範囲】
【請求項1】
プレイリストを作成するプレイリスト作成装置において、
外部より指定される条件に基づいて、複数の楽曲を選出するプレイリスト楽曲選出部と、
前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報を取得し、そのトラック番号及び総トラック数に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出する順序指標算出部と、
前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するプレイリスト作成部と
を備えることを特徴とするプレイリスト作成装置。
【請求項2】
前記プレイリスト作成部は、ソースメディアにおける再生順序が前である楽曲ほど、プレイリストにおける再生順序が前になるように、プレイリストを作成することを特徴とする請求項1記載のプレイリスト作成装置。
【請求項3】
前記プレイリスト作成部は、前記順序指標によって定まる再生順序が真ん中の楽曲が最も選択される確率が高く、かつ、前記順序指標によって定まる再生順序が真ん中に近い楽曲ほど選択される確率が高い確率分布に基づいて、前記複数の楽曲の中から第1の楽曲と第2の楽曲とを選択し、その第1の楽曲の再生順序と、第2の楽曲の再生順序とを入れ替えることを特徴とする請求項1記載のプレイリスト作成装置。
【請求項4】
プレイリストを作成するプレイリスト作成方法において、
外部より指定される条件に基づいて、複数の楽曲を選出するステップと、
前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報を取得し、そのトラック番号及び総トラック数に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出するステップと、
前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するステップと
を有することを特徴とするプレイリスト作成方法。
【請求項5】
ソースメディアにおける再生順序が前である楽曲ほど、プレイリストにおける再生順序が前になるように、プレイリストを作成することを特徴とする請求項4記載のプレイリスト作成方法。
【請求項6】
前記順序指標によって定まる再生順序が真ん中の楽曲が最も選択される確率が高く、かつ、前記順序指標によって定まる再生順序が真ん中に近い楽曲ほど選択される確率が高い確率分布に基づいて、前記複数の楽曲の中から第1の楽曲と第2の楽曲とを選択し、その第1の楽曲の再生順序と、第2の楽曲の再生順序とを入れ替えることを特徴とする請求項4記載のプレイリスト作成方法。
【請求項7】
コンピュータを、
外部より指定される条件に基づいて、複数の楽曲を選出するプレイリスト楽曲選出手段、
前記複数の楽曲それぞれのソースメディア中におけるトラック番号を示す情報、及び、そのソースメディアの総トラック数を示す情報に基づいて、プレイリストにおける前記複数の楽曲の再生順序に係る指標である順序指標を算出する順序指標算出手段、
前記複数の楽曲を再生するためのプレイリストを、前記順序指標に基づいて作成するプレイリスト作成手段、
として機能させるためのプレイリスト作成プログラム。
【請求項8】
前記プレイリスト作成手段は、ソースメディアにおける再生順序が前である楽曲ほど、プレイリストにおける再生順序が前になるように、プレイリストを作成することを特徴とする請求項7記載のプレイリスト作成プログラム。
【請求項9】
前記プレイリスト作成手段は、前記順序指標によって定まる再生順序が真ん中の楽曲が最も選択される確率が高く、かつ、前記順序指標によって定まる再生順序が真ん中に近い楽曲ほど選択される確率が高い確率分布に基づいて、前記複数の楽曲の中から第1の楽曲と第2の楽曲とを選択し、その第1の楽曲の再生順序と、第2の楽曲の再生順序とを入れ替えることを特徴とする請求項7記載のプレイリスト作成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2011−258250(P2011−258250A)
【公開日】平成23年12月22日(2011.12.22)
【国際特許分類】
【出願番号】特願2010−129042(P2010−129042)
【出願日】平成22年6月4日(2010.6.4)
【出願人】(000004329)日本ビクター株式会社 (3,896)
【Fターム(参考)】