<第1実施形態>
図1は、本発明の第1実施形態に係る楽曲処理装置100の構成図である。図1に例示される通り、第1実施形態の楽曲処理装置100は、演算処理装置12と記憶装置14と入力装置16と再生装置18とを具備するコンピュータシステムで実現される。例えば携帯電話機やスマートフォン等の携帯型の情報処理装置が楽曲処理装置100として好適に利用され得る。
入力装置16は、利用者からの指示を受付ける。例えば、利用者が操作する複数の操作子が配置された操作機器や、操作面に対する利用者の手指の接触を検知するタッチパネルが入力装置16として好適に利用される。再生装置18(例えばスピーカやヘッドホン)は、演算処理装置12から指示された音響を放射する。記憶装置14は、演算処理装置12が実行するプログラムや演算処理装置12が使用する各種のデータを記憶する。半導体記録媒体や磁気記録媒体等の公知の記録媒体または複数種の記録媒体の組合せが記憶装置14として任意に採用され得る。
第1実施形態の記憶装置14は、複数の楽曲の各々について音楽データXを記憶する。任意の1個の楽曲の音楽データXは、当該楽曲の音響(歌唱音や伴奏音等の演奏音)の時間波形を表現する。例えばMP3形式やWAV形式の音楽ファイルが音楽データXの典型例である。
また、第1実施形態の記憶装置14は、楽曲列情報Pを記憶する。楽曲列情報Pは、記憶装置14に音楽データXが記憶された複数の楽曲から選択されたK個の楽曲の系列を指定するプレイリストである(Kは2以上の自然数)。例えば入力装置16に対する操作で利用者が選択したK個の楽曲や、所定の条件(例えば歌唱者やジャンル)で検索されたK個の楽曲が楽曲列情報Pで指定される。楽曲列情報Pが指定する楽曲の個数Kは、例えば利用者からの指示や検索の結果に応じた可変値である。なお、ランダムに選択されたK個の楽曲を楽曲列情報Pが指定することも可能である。
第1実施形態の楽曲処理装置100は、楽曲列情報Pで指定されるK個の楽曲を特定の時間(以下「再生時間」という)T0に収まるように縮約(要約)して再生する。図1の演算処理装置12は、記憶装置14に記憶されたプログラムを実行することで、楽曲列情報Pが指定するK個の楽曲を処理するための複数の機能(時間設定部22,時間割当部24,楽曲縮約部26,再生制御部28)を実現する。なお、演算処理装置12の各機能を複数の装置に分散した構成や、専用の電子回路が演算処理装置12の一部の機能を分担する構成も採用され得る。
時間設定部22は、K個の楽曲が再生される再生時間T0を設定する。第1実施形態の時間設定部22は、図2に例示される通り、開始時刻tCから終了時刻tEまでの時間長を再生時間T0として設定する。終了時刻tEは経時的に(例えば所定の間隔で定期的に)変更される。
例えば、利用者が指定した目的地までの経路(例えば道路の道筋や交通機関の乗換等)を提示する経路案内処理を演算処理装置12が実行する場合を想定する。経路案内処理では、GPS(Global Positioning System)等の測位機器が検出する利用者の実際の位置と目的地との位置関係や経路の混雑状況に応じて、利用者が目的地に到着すると推定される推定到着時刻が実時間的に随時に更新される。時間設定部22は、経路案内処理で算定される推定到着時刻を終了時刻tEとして再生時間T0を設定する。すなわち、再生時間T0は、目的地までの推定所要時間に相当し、推定到着時刻(終了時刻tE)に応じて経時的に変化する。
図1の時間割当部24は、図2に例示される通り、楽曲列情報Pが指定するK個の楽曲の各々について再生時間T0内の楽曲時間Q[k](Q[1]〜Q[K])を設定する。任意の1個の楽曲の楽曲時間Q[k]は、当該楽曲の再生のために確保された時間である。すなわち、時間割当部24は、K個の楽曲の各々に楽曲時間Q[k]を割当てる要素とも換言され得る。K個の楽曲時間Q[1]〜Q[K]が再生時間T0の範囲内に収まる(K個の楽曲時間Q[1]〜Q[K]の合計時間が再生時間T0以下となる)ように各楽曲時間Q[k]は設定される。例えば、時間割当部24は、再生時間T0のK等分でK個の楽曲時間Q[1]〜Q[K]を設定する。すなわち、K個の楽曲にわたる楽曲時間Q[1]〜Q[K]の合計時間は再生時間T0に合致する。
図1の楽曲縮約部26は、楽曲列情報Pが指定するK個の楽曲の各々を、時間割当部24が当該楽曲に設定した楽曲時間Q[k]に縮約(短縮ないし要約)する。具体的には、楽曲縮約部26は、1個の楽曲の音楽データXに対して所定の処理を実行することで、再生時間を楽曲時間Q[k]に短縮した音楽データYを生成する。楽曲の縮約には公知の技術が任意に採用され得る。例えば、音楽データXのうち楽曲を代表する印象的ないし特徴的な区間(例えばサビ区間)を抽出して時間軸上に配列することで楽曲時間Q[k]の音楽データYが生成される。なお、楽曲の特定の区間の抽出に代えて(または特定の区間の抽出とともに)、音楽データXを時間軸上で収縮する処理(タイムストレッチ)により楽曲時間Q[k]の音楽データYを生成することも可能である。
再生制御部28は、楽曲縮約部26による処理後(再生時間の短縮後)のK個の楽曲の各々の音響を再生装置18に再生させる。具体的には、再生制御部28は、K個の楽曲の各々について楽曲縮約部26が生成した音楽データYを順次に再生装置18に供給することで、楽曲時間Q[k]にわたる楽曲の音響をK個の楽曲について再生装置18から順次に放射させる。したがって、再生時間T0の満了(例えば利用者が目的地に到着すると推定される終了時刻tE)と略同時にK個の楽曲のうち最後の楽曲の再生が完了する。
図3は、第1実施形態の演算処理装置12がK個の楽曲を再生時間T0内で再生するために実行する処理(以下「楽曲再生処理」という)のフローチャートである。例えば入力装置16に対する利用者からの指示(再生開始指示)を契機として楽曲再生処理が開始される。なお、目的地までの経路を利用者に提示する経路案内処理が図3の楽曲再生処理に並行して実行されている状況を以下では便宜的に想定する。
楽曲再生処理を開始すると、時間設定部22は再生時間T0を設定する(SA1)。具体的には、時間設定部22は、開始時刻tCを現在時刻に設定し、経路案内処理で推定された推定到着時刻に終了時刻tEを設定したうえで、開始時刻tCから終了時刻tEまでの時間長(すなわち目的地までの推定所要時間)を再生時間T0として算定する。時間割当部24は、楽曲列情報Pが指定するK個の楽曲の各々の楽曲時間Q[k]を、時間設定部22が設定した再生時間T0の範囲内で設定する(SA2)。
楽曲縮約部26は、楽曲列情報Pが指定する1個の楽曲(以下「対象楽曲」という)を選択する(SA3)。例えば、楽曲列情報Pにおける配列順で最先に位置する未再生の楽曲が対象楽曲として選択される。楽曲縮約部26は、対象楽曲の音楽データXに対する処理で、再生時間が楽曲時間Q[k]に短縮された音楽データYを生成する(SA4)。再生制御部28は、楽曲縮約部26による処理後の音楽データYを再生装置18に順次に供給することで縮約後の対象楽曲の音響を再生装置18から放射させる(SA5)。楽曲時間Q[k]にわたる対象楽曲の再生が完了するまで、再生装置18に対する音楽データYの供給は継続される(SA6:NO)。
縮約後の対象楽曲の再生が完了すると(SA6:YES)、再生制御部28は、楽曲列情報Pで指定されたK個の楽曲の全部について以上の処理(SA3〜SA6)を実行したか否かを判定し(SA7)、K個の楽曲について処理が完了した場合(SA7:YES)には楽曲再生処理を終了する。他方、未再生の楽曲が存在する場合(SA7:NO)、時間設定部22は、終了時刻tE(推定到着時刻)が更新されたか否かを判定する(SA8)。終了時刻tEが更新されていない場合(SA8:NO)、現段階の再生時間T0と各楽曲時間Q[k]とを維持した状態で、各楽曲の縮約(SA3,SA4)と再生(SA5,SA6)とが順次に実行される。
前述の通り、終了時刻tEは、経路案内処理で推定される推定到着時刻に応じて随時に更新される。終了時刻tEが更新された場合(SA8:YES)、時間設定部22による再生時間T0の設定(SA1)と時間割当部24による各楽曲時間Q[k]の設定(SA2)とが実行される。具体的には、時間設定部22は、開始時刻tCを現在時刻(直前の楽曲の再生が終了した時刻)に設定するとともに終了時刻tEを更新後の推定到着時刻に設定したうえで、開始時刻tCから終了時刻tEまでの時間長を新たな再生時間T0として算定する(SA1)。すなわち、終了時刻tE(推定到着時刻)の変更に応じて再生時間T0が更新される。また、時間割当部24は、現段階で未再生である各楽曲の楽曲時間Q[k]を更新後の再生時間T0の範囲内で設定する(SA2)。以上の説明から理解される通り、再生時間T0と各楽曲時間Q[k]とは経時的に変更される。未再生の各楽曲は、更新後の各楽曲時間Q[k]に縮約されたうえで再生される(SA3〜SA6)。
図4は、以上に例示した楽曲再生処理の具体例の説明図である。利用者が目的地に向けて移動する場面が図4では例示されている。楽曲再生が指示された時刻pA1(7:41)での推定到着時刻が時刻pB1(8:35)である場合を想定すると、現在の時刻pA1(開始時刻tC)から推定到着時刻pB1(終了時刻tE)までの時間長が再生時間T0(pB1−pA1=54[分])として算定される。したがって、時刻pA1から時刻pB1までの再生時間T0(54分)でK個の楽曲が再生されるように、再生時間T0内の各楽曲時間Q[k]の設定と各楽曲の縮約および再生とが順次に実行される。
時刻pA1から4個の楽曲の再生が終了した時刻pA2(7:58)にて推定到着時刻が時刻pB1から時刻pB2(8:41)に変更された場合を想定すると、再生時間T0は、現在の時刻pA2(開始時刻tC)から変更後の推定到着時刻pB2(終了時刻tE)までの時間長(T0=pB2−pA2=43[分])に更新される。すなわち、時刻pA2から時刻pB2までの再生時間T0(43分)で未再生の(K−4)個の楽曲が再生されるように、更新後の再生時間T0内の各楽曲時間Q[k]の設定と各楽曲の縮約および再生とが順次に実行される。したがって、利用者が目的地に到着すると推定される時刻pB2(すなわち更新後の再生時間T0が満了する時刻)にてK個の楽曲の再生が完了する。
以上に説明した通り、第1実施形態では、楽曲列情報Pが指定するK個の楽曲の各々について再生時間T0の範囲内の楽曲時間Q[k]が設定されたうえで各楽曲が楽曲時間Q[k]に縮約される。したがって、再生時間T0をK個の楽曲の再生のために有効に利用することが可能である。第1実施形態では特に、K個の楽曲にわたる楽曲時間Q[k]の合計時間が再生時間T0に合致するように各楽曲の楽曲時間Q[k]が設定されるから、再生時間T0の有効利用という効果は格別に顕著である。具体的には、再生時間T0の満了の時点(例えば利用者が目的地に到着した時点)でちょうどK個の楽曲の再生が完了するように、各楽曲を再生することが可能である。
また、第1実施形態では、再生時間T0が経時的に変化し、再生時間T0の変化に応じて各楽曲の楽曲時間Q[k]の更新と楽曲の縮約とが実行される。したがって、前掲の経路案内処理の例示のように終了時刻tE(推定到着時刻)が随時に変化する場面でも、再生時間T0(利用者が目的地に到着するまでの時間)を楽曲の再生に有効に利用できるという利点がある。すなわち、利用者の移動状況に応じて推定到着時刻が変化した場合でも、再生時間T0の満了の時点でちょうどK個の楽曲の再生を完了することが可能である。
<第2実施形態>
本発明の第2実施形態を説明する。なお、以下に例示する各形態において作用や機能が第1実施形態と同様である要素については、第1実施形態の説明で使用した符号を流用して各々の詳細な説明を適宜に省略する。
第2実施形態では、楽曲列情報Pが指定する各楽曲の再生時間を楽曲時間Q[k]に短縮する処理(図3のステップSA4)の具体例を例示する。第2実施形態では、音楽データXで表現される処理前の楽曲を時間軸上で区分したM個の区間(以下「単位区間」という)からN個(N<M)の単位区間を選択して時間軸上に配列することで、楽曲時間Q[k]の楽曲の音楽データYを生成する。すなわち、縮約後のN個の単位区間の合計時間が楽曲時間Q[k]に相当するように個数Nは可変に設定される。以下の説明では、楽曲の1拍分に相当する区間を1個の単位区間として例示する。したがって、縮約後の単位区間の個数Nは、楽曲時間Q[k]に包含される拍点の総数に相当する。また、以下の説明では、音楽データXで表現される縮約前の楽曲を「原楽曲」と表記し、音楽データYで表現される縮約後の楽曲を「縮約曲」と表記する場合がある。
図5は、第2実施形態における楽曲縮約部26の構成図である。図5に例示される通り、第2実施形態では、音楽データXが用意された複数の原楽曲の各々について関連データZが記憶される。すなわち、音楽データXと関連データZとの組が楽曲毎に記憶装置14に記憶される。任意の1個の原楽曲の関連データZは、当該原楽曲のコードを単位区間毎(拍点毎)に指定するとともに原楽曲の小節線(相前後する各小節の境界)の位置を指定するメタデータである。
図5に例示される通り、第2実施形態の楽曲縮約部26は、特徴量算定部42と第1指標算定部44と第2指標算定部46と縮約処理部48とを含んで構成される。
特徴量算定部42は、原楽曲の特徴量F[m](m=1〜M)をM個の単位区間の各々について算定する。特徴量F[m]は、原楽曲のうち第m番目の単位区間を含む所定長の区間(以下「評価区間」という)の音楽的な特徴を表現する。具体的には、特徴量算定部42は、第m番目の単位区間を先頭とした単位区間の4個分(4拍分)の区間を評価区間として特徴量F[m]を算定する。
図5に例示される通り、特徴量F[m]は、評価区間内の相異なる単位区間に対応する4個の単位情報Uを含んで構成される。各単位区間の単位情報Uは、当該単位区間の音楽的な特徴を表象する。具体的には、相異なる音高(1オクターブ内の12音の各音名)に対応する12個の要素で構成される12次元ベクトル(クロマベクトル)が単位情報Uとして好適に採用される。すなわち、任意の1個の単位区間に対応する単位情報Uの12個の要素のうち、当該単位区間について関連データZが指定するコードの構成音に対応する各要素は1に設定され、残余の各要素は0に設定される。なお、単位区間のコードのベース音を同様の方法で単位情報Uにより表現することも可能である。以上の説明から理解される通り、任意の1個の特徴量F[m]は、原楽曲のうち第m番目の単位区間を含む評価区間内におけるコードの時系列を表現する。
図5の第1指標算定部44は、原楽曲のM個の単位区間の各々について代表指標C1[m]を算定する。任意の1個の代表指標C1[m]は、原楽曲のうち第m番目の単位区間に対応する評価区間が原楽曲の音楽的な表現を代表(象徴)する度合の指標値である。原楽曲内で多数回にわたり反復される旋律は原楽曲の代表的な旋律と評価できる。以上の傾向を考慮して、第m番目の単位区間に対応する評価区間に音楽的に類似または合致する区間が原楽曲内に出現する回数に応じた数値となるように、第1指標算定部44は代表指標C1[m]を算定する。
具体的には、第1指標算定部44は、第m番目の単位区間の特徴量F[m]と第m'番目(m'≠m)の単位区間の特徴量F[m']との類似度(距離または相関)S[m,m']を算定し、第m番目の単位区間と他の各単位区間との間で算定された複数の類似度S[m,m']から代表指標C1[m]を算定する。第2実施形態の類似度S[m,m']は、特徴量F[m]と特徴量F[m']との距離(例えばコサイン距離)である。したがって、第m番目の単位区間を含む評価区間内のコードの時系列と第m'番目の単位区間を含む評価区間内のコードの時系列とが類似するほど類似度S[m,m']は小さい数値となる。第1指標算定部44は、原楽曲の第m番目の単位区間と他の各単位区間との間で算定された複数の類似度S[m,m']の昇順で上位に位置する所定個(小さい順で所定個)の類似度S[m,m']の代表値(例えば平均値や中央値)を代表指標C1[m]として算定する。したがって、第m番目の単位区間に対応する評価区間にコードの時系列(旋律)が類似する区間が原楽曲に出現する回数が多い(相対的に小さい類似度S[m,m']が多い)ほど代表指標C1[m]は小さい数値に設定される。すなわち、第2実施形態の代表指標C1[m]は、原楽曲のうち第m番目の単位区間を含む評価区間が原楽曲の音楽的な表現を代表しない度合の指標値である。
図5の第2指標算定部46は、原楽曲のM個の単位区間の各々について、第m'番目の他の単位区間に対する遷移指標C2[m,m']を算定する。遷移指標C2[m,m']は、第m番目の単位区間の直後に第m'番目の単位区間を連結したと仮定した場合における各単位区間の相互間の遷移の音楽的な妥当性(自然さ)の指標である。第2実施形態の遷移指標C2[m,m']は、第1指標cA[m,m']と第2指標cB[m,m']との加重和(C2[m,m']=wA・cA[m,m']+wB・cB[m,m'])として算定される。第1指標cA[m,m']の加重値wAと第2指標cB[m,m']の加重値wBとは所定の正数に設定される。
第1指標cA[m,m']は、原楽曲の各小節内の拍点の順序という観点で第m番目の単位区間から第m'番目の単位区間に対する遷移を評価した指標値である。具体的には、任意の1個の小節内の第i拍から他の小節内の第(i+1)拍(第i拍が小節内の最後の拍点である場合には小節内の第1拍)に対する遷移は音楽的に自然な印象と知覚されるが、任意の1個の小節内の第i拍から他の小節内の第(i+1)拍以外に遷移した場合には音楽的な違和感が知覚され易いという傾向がある。以上の傾向を考慮して、第2指標算定部46は、第m'番目の単位区間に対応する拍番号が第m番目の単位区間に対応する拍番号の直後の番号である場合(b拍子の楽曲では(m+1) mod b=m' mod bである場合))には第1指標cA[m,m']を0に設定し、他の場合には第1指標cA[m、m']を1に設定する。すなわち、第m番目の単位区間から第m'番目の単位区間に対する遷移が拍点の順序という観点から妥当である場合(遷移前後の拍番号が連続で遷移が音楽的に自然である場合)に第1指標cA[m,m']は0に設定される。
第2指標cB[m,m']は、原楽曲のコードの時系列という観点(和声的な観点)で第m番目の単位区間から第m'番目の単位区間に対する遷移を評価した指標値である。具体的には、第m番目の単位区間から開始するコードの時系列と第m'番目の単位区間から開始するコードの時系列とが相互に類似する場合には第m番目の単位区間から第m'番目の単位区間に対する遷移が音楽的に自然な印象と知覚されるが、第m番目の単位区間と第m'番目の単位区間とでコードの時系列が顕著に相違する場合には音楽的な違和感が知覚され易いという傾向がある。以上の傾向を考慮して、第2実施形態の第2指標算定部46は、第m番目の単位区間の特徴量F[m]と第m'番目の単位区間の特徴量F[m']との類似度(距離または相関)に応じて第2指標cB[m,m']を算定する。具体的には、第2指標算定部46は、特徴量F[m]と特徴量F[m']との距離(例えばコサイン距離)を第2指標cB[m,m']として算定する。例えば、第1指標算定部44が代表指標C1[m]の設定のために算定した類似度(コサイン距離等の距離)S[m,m']が第2指標cB[m,m']として流用される。以上の説明から理解される通り、第m番目の単位区間から第m'番目の単位区間に対する遷移がコードの時系列という音楽的な観点から妥当である(特徴量F[m]と特徴量F[m']とが類似する)ほど第2指標cB[m,m']は小さい数値に設定される。
以上の説明から理解される通り、第m番目の単位区間から第m'番目の単位区間に対する遷移が音楽的に妥当(自然)であるほど、遷移指標C2[m,m']は小さい数値に設定される。第2指標算定部46は、原楽曲のM個の単位区間の各々(第m番目)と、当該単位区間の後方に位置する各単位区間(第m'番目)との全通りの組合せについて、遷移指標C2[m,m']を算定する。
図5の縮約処理部48は、第1指標算定部44が算定した各代表指標C1[m]と第2指標算定部46が算定した各遷移指標C2[m,m']とに応じて原楽曲のM個の単位区間から縮約曲のN個の単位区間を選択する。概略的には、縮約処理部48は、各単位区間の代表指標C1[m]と各単位区間の相互間の遷移指標C2[m,m']との総和が最小化されるように原楽曲からN個の単位区間を選択する。
具体的には、縮約処理部48は、図6に例示される通り、原楽曲の各単位区間を表象するx軸と縮約曲の各単位区間を表象するy軸とが設定されたx-y平面内で代表指標C1[m]と遷移指標C2[m,m']との総和が最小となる経路λを特定する。経路λは、原楽曲から選択されたN個の単位区間の時系列(すなわち縮約曲)を表現する。経路λの探索には公知の技術が任意に採用され得るが、以下に例示する動的計画法(Dynamic Programming)が好適である。
図6のx軸で表現される変数l(l=0〜L)は、縮約曲の単位区間の番号n(n=1〜N)に対する差分値(オフセット値)として原楽曲の任意の1個の単位区間を指定する変数である(L=M−N)。例えば、変数nが2であり変数lが4である地点を経路λが通過する場合、縮約曲の第2番目の単位区間として原楽曲の第6番目(n+l=2+4)の単位区間が選択されることを意味する。縮約処理部48は、変数nの各数値と変数lの各数値との全通りの組合せ(x-y平面内の全地点)について累計コストR[n,l]と指示子(インデックス)I[n,l]とを算定する。
累計コストR[n,l]は、変数nと変数lとに対応する地点までのコストの累計値であり、例えば代表指標C1[m]と遷移指標C2[m,m']とを適用した以下の数式(1)の演算で算定される。数式(1)の演算子min{ }は、括弧内の数値の最小値を採択する演算を意味する。
また、指示子I[n,l]は、累計コストR[n,l]の算定に適用された遷移元の地点に対応する変数lの数値であり、遷移指標C2[m,m']を適用した以下の数式(2)の演算で算定される。数式(2)の演算子argmin{ }は、括弧内の数値を最小化する変数lの数値を探索する演算を意味する。
第2実施形態の縮約処理部48は、以上に説明した累計コストR[n,l]と指示子I[n,l]とを、変数nと変数lとの全通り(N×L通り)の組合せについて算定し、指示子I[n,l]を縮約曲の後方から前方に向けて追跡(バックトラック)することで経路λを探索する。そして、縮約処理部48は、音楽データXで表現される原楽曲のM個の単位区間のうち経路λ上の各地点の変数lに対応する1個の単位区間(第(n+l)番目の単位区間)を縮約曲の第n番目の単位区間として選択し、N個の単位区間を時系列に配列した縮約曲の音楽データYを生成する。
第2実施形態においても第1実施形態と同様の効果が実現される。また、第2実施形態では、各単位区間に対応する評価区間が当該楽曲を代表する度合を示す代表指標C1[m]と、各単位区間の相互間の遷移の妥当性を示す遷移指標C2[m,m']とに応じて選択されたN個の単位区間で縮約曲が構成されるから、音楽的に自然な縮約曲を生成できるという利点がある。
<第3実施形態>
図7は、第3実施形態における楽曲縮約部26の動作のフローチャートである。図3のステップSA4にて図7の処理が実行される。概略的には、第3実施形態の楽曲縮約部26は、各楽曲の楽曲時間Q[k]に応じて縮約の条件を制御する。
図7の処理を開始すると、楽曲縮約部26は、対象楽曲の楽曲時間Q[k]が所定の閾値QTH1を上回るか否かを判定する(SB1)。楽曲時間Q[k]が充分に確保された場合には、原楽曲の始点と終点とを含む区間を縮約曲でも維持することで、恰も原楽曲の全部を聴いたような満足感を利用者に付与することが望ましい。以上の事情を考慮して、楽曲時間Q[k]が閾値QTH1を上回る場合(SB1:YES)、楽曲縮約部26は、原楽曲の始点を含む所定長の区間(例えば原楽曲のうち前奏が演奏される先頭部分)と原楽曲の終点を含む所定長の区間(原楽曲のうち後奏が演奏される末尾部分)とが残るように原楽曲を縮約する(SB2)。
楽曲時間Q[k]が閾値QTH1を下回る場合(SB1:NO)、楽曲縮約部26は、楽曲時間Q[k]が閾値QTH2を下回るか否かを判定する(SB3)。閾値QTH2は、閾値QTH1を下回る数値に設定される。楽曲時間Q[k]が充分に確保されていない場合には、原楽曲の音楽的な表現を代表する印象的ないし特徴的な区間を縮約曲でも維持することで、短い楽曲時間Q[k]でも原楽曲を効率的に利用者に印象づけることが望ましい。以上の事情を考慮して、楽曲時間Q[k]が閾値QTH2を下回る場合(SB3:YES)、楽曲縮約部26は、原楽曲のうち楽曲を代表する印象的ないし特徴的な区間(例えばサビ区間)が残るように原楽曲を縮約する(SB4)。例えば原楽曲の先頭部分や末尾部分は縮約曲では省略される。
他方、楽曲時間Q[k]が閾値QTH1と閾値QTH2との間にある場合(SB3:NO)、楽曲縮約部26は、原楽曲の終点を含む所定長の区間(原楽曲のうち後奏が演奏される末尾部分)が残るように原楽曲を縮約する(SB5)。したがって、恰も原楽曲を聴き終えたような満足感を利用者に付与することが可能である。以上に説明した処理がK個の楽曲の各々について順次に実行される。
第3実施形態においても第1実施形態と同様の効果が実現される。また、第3実施形態では、各楽曲の楽曲時間Q[k]に応じて原楽曲の縮約の条件が制御されるから、楽曲時間Q[k]の長短に応じた適切な区間を原楽曲から抽出して再生することが可能である。なお、第3実施形態において縮約の条件を制御する方法は任意であるが、例えば原楽曲の縮約に第2実施形態の方法を採用した構成では、以下に例示する方法で縮約の条件を制御することが可能である。
第1に、縮約曲の第1番目の単位区間(n=1)に対応する累計コストR[1,0]〜R[1,L]のうち、原楽曲の第1番目の単位区間に対応する累計コストR[1,0]が0であり、かつ、第1番目以外の単位区間に対応する累計コストR[1,l>0]が無限大である、という制約(以下「第1条件」という)のもとで原楽曲を縮約することで、原楽曲の先頭部分(第1番目の単位区間)を強制的に縮約曲でも維持することが可能である。
第2に、指示子I[n,l]を縮約曲の後方から前方に向けて追跡する場合の指示子I[n,l]の初期値を、原楽曲の単位区間の総数(全拍数)Mと縮約曲の単位区間の総数(楽曲時間Q[k]内の拍数)Nとの差分{M−N}に設定する、という制約(以下「第2条件」という)のもとで原楽曲を縮約することで、原楽曲の末尾部分(第m番目の単位区間)を強制的に縮約曲でも維持することが可能である。
他方、第2実施形態の例示のように第1条件および第2条件を加味せずに原楽曲を縮約した場合、原楽曲のうち始点や終点以外の途中に位置する代表的な区間(代表指標C1[m]が小さい区間)が縮約曲で維持される。
以上の例示から理解される通り、楽曲時間Q[k]が閾値QTH1を上回る場合(SB1:YES)には第1条件および第2条件の双方のもとで原楽曲が縮約され、楽曲時間Q[k]が閾値QTH1と閾値QTH2との間にある場合(SB3:NO)には第2条件のもとで原楽曲が縮約される。また、楽曲時間Q[k]が閾値QTH2を下回る場合(SB3:YES)には第1条件および第2条件を加味せずに原楽曲が縮約される。
<変形例>
前述の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は適宜に併合され得る。
(1)前述の各形態では、再生時間T0を経時的に変化させたが、再生時間T0を所定長に固定することも可能である。また、前述の各形態では、経路案内処理で算定された推定到着時刻を終了時刻tEとして再生時間T0を設定したが、利用者が指定した終了時刻tEや開始時刻tCに応じて再生時間T0を設定する構成や、利用者が直接的に指定した時間を時間設定部22が再生時間T0として設定する構成も採用され得る。
(2)前述の各形態では、再生時間T0のK等分でK個の楽曲時間Q[1]〜Q[K]を設定したが、再生時間T0内で各楽曲時間Q[k]を設定する方法は以上の例示に限定されない。例えば、K個の楽曲の各々の時間長(縮約前の時間長)に比例した比率で再生時間T0を区分することでK個の楽曲時間Q[1]〜Q[K]を設定する構成や、各楽曲のテンポに反比例した比率で再生時間T0を区分することでK個の楽曲時間Q[1]〜Q[K]を設定する構成も採用され得る。また、前述の各形態では、各楽曲時間Q[k]が再生時間T0内で重複または離間することなく相互に連続する場合を例示したが、相前後する各楽曲時間Q[k]の間に所定の間隔が確保された構成や、相前後する各楽曲時間Q[k]が部分的に相互に重複する構成(重複区間では各楽曲を例えばクロスフェードする構成)も採用され得る。
(3)前述の各形態では楽曲の1拍分を1個の単位区間と仮定したが、単位区間は1拍分の区間に限定されない。例えば、複数拍に相当する区間や1小節分に相当する区間を単位区間とすることも可能である。
(4)第3実施形態では、原楽曲の先頭部分や末尾部分を縮約曲でも維持する構成を例示したが、原楽曲の途中に位置する任意の区間を縮約曲で強制的に維持することも可能である。例えば、遷移指標C2[m<M0,m'>M0]を無限大に設定すれば、任意の第M0番目の単位区間を縮約曲にて強制的に維持することが可能である。縮約曲にて維持される区間(変数M0)は、例えば利用者からの指示に応じて可変に設定される。また、音楽データXの提供者が変数M0を事前に設定することで原楽曲の所望の区間(試聴区間)を縮約曲にて維持することが可能である。前述の各形態では、単位区間の相互間の遷移を例示したが、原楽曲の小節間の遷移のみを許容することも可能である。また、第2実施形態において、変数lの値域を負数まで拡大すれば、原楽曲の特定の箇所が複数回にわたり反復される縮約曲を生成することも可能である。
(5)前述の各形態では、第m番目の単位区間を含む評価区間に類似するコードの時系列(旋律)が原楽曲に出現する回数が多い(当該評価区間が原楽曲を代表する度合が大きい)ほど代表指標C1[m]が減少する構成を例示したが、評価区間が楽曲を代表する度合が大きいほど代表指標C1[m]が増加する構成も採用され得る。以上の説明から理解される通り、評価区間が楽曲を代表する度合と代表指標C1[m]の数値の大小との関係に関わらず、代表指標C1[m]は、評価区間が原楽曲を代表する度合の指標として包括的に表現される。
また、前述の各形態では、第m番目の単位区間から第m'番目の単位区間に対する遷移が音楽的に妥当(自然)であるほど遷移指標C2[m,m']が減少する構成を例示したが、第m番目の単位区間から第m'番目の単位区間に対する遷移が妥当であるほど遷移指標C2[m,m']が増加する構成も採用され得る。以上の説明から理解される通り、第m番目の単位区間から第m'番目の単位区間に対する遷移の妥当性と遷移指標C2[m,m']の数値の大小との関係に関わらず、遷移指標C2[m,m']は、第m番目の単位区間と第m'番目の単位区間との間の遷移(第m番目の単位区間の直後に第m'番目の単位区間を連結すること)の音楽的な妥当性の指標として包括的に表現される。
(6)前述の各形態では、終了時刻tE(経路案内処理で推定された推定到着時間)の更新を契機として再生時間T0の再設定(SA1)と各楽曲の楽曲時間Q[k]の更新(SA2)とを実行したが、再生時間T0や各楽曲時間Q[k]の更新の契機は以上の例示に限定されない。例えば、入力装置16に対する利用者からの操作を契機として再生時間T0や各楽曲時間Q[k]を更新することも可能である。例えば利用者は、入力装置16を適宜に操作することで、楽曲列情報P(プレイリスト)に対する所望の楽曲の追加および削除や、楽曲再生の一時停止および再生(一時停止の解除)、再生対象の楽曲の変更(前進(早送り),後退(巻戻し),スキップ)を指示することが可能である。また、複数の楽曲列情報Pが記憶装置14に記憶された構成では、利用者は、入力装置16を適宜に操作することで、再生対象の楽曲列情報Pの変更を指示することが可能である。以上に例示した利用者からの指示(入力装置16に対する操作)毎に再生時間T0の再設定(SA1)や各楽曲時間Q[k]の更新(SA2)を実行する構成が採用され得る。
(7)第2実施形態では、第1指標cA[m,m']と第2指標cB[m,m']との加重和を遷移指標C2[m,m']として算定したが、遷移指標C2[m,m']の算定の方法は以上の例示に限定されない。例えば、第m番目の単位区間の特徴量F[m]と第m'番目の単位区間の特徴量F[m']との類似度S[m,m']を遷移指標C2[m,m']の初期値として設定し、第m'番目の単位区間に対応する拍番号が第m番目の単位区間に対応する拍番号の直後の番号である場合に遷移指標C2[m,m']を0に変更することも可能である。
(8)第2実施形態では、再生時間T0に応じて各楽曲の楽曲時間Q[k]を設定する第1実施形態の構成を前提として、代表指標C1[m]および遷移指標C2[m,m']を利用した楽曲の縮約を例示したが、第2実施形態の楽曲の縮約にとって第1実施形態の構成は必須ではない。すなわち、楽曲の再生時間を特定の時間長に短縮する任意の構成に、代表指標C1[m]および遷移指標C2[m,m']を利用して楽曲を縮約する第2実施形態の構成が採用され得る。また、代表指標C1[m]および遷移指標C2[m,m']の一方のみを利用して楽曲を縮約することも可能である。
(9)第3実施形態では、閾値QTH1と閾値QTH2とを相異なる数値に設定したが、閾値QTH1と閾値QTH2とを相等しい数値に設定することも可能である。すなわち、楽曲時間Q[k]が閾値QTH1と閾値QTH2との間にある場合(SB3:NO)に原楽曲の末尾部分を残す動作は省略され得る。
(10)携帯電話機等の端末装置と通信するサーバ装置で楽曲処理装置100を実現することも可能である。例えば、楽曲処理装置100は、端末装置から受信した再生時間T0と楽曲列情報Pとに応じて各楽曲時間Q[k]の設定と各楽曲の縮約とを実行し、楽曲毎の縮約後の音楽データYを通信網から端末装置に送信する。