【実施例】
【0034】
以下、図面を参照しながら、本発明の再生装置及び方法、並びにコンピュータプログラムの実施例について説明する。尚、以下では、本発明の再生装置及び方法、並びにコンピュータプログラムが、クラブやディスコ等の舞踏場において、楽曲データに対して様々な特殊効果(イフェクト)を付加しつつ連続的に再生する際に用いられるDJ機器に適用される例を用いて説明を進める。但し、本発明の再生装置及び方法、並びにコンピュータプログラムは、DJ機器以外の任意の再生機器(例えば、音楽データや映像データ等の任意のコンテンツデータを再生可能な再生機器)に適用されてもよい。
【0035】
(1)DJ機器1の基本構成
初めに、
図1を参照しながら、本実施例のDJ機器1の基本構成について説明を進める。
図1は、本実施例のDJ機器1の基本構成の一例を示すブロック図である。
【0036】
図1に示すように、DJ機器1は、「再生手段」の一具体例である再生部11と、「第1設定手段」及び「第2設定手段」の夫々の一具体例であるシステムコントローラ12と、インタフェース部13とを備える。
【0037】
再生部11は、楽曲データを再生する処理ブロックである。再生部11は、楽曲データ取得部111と、バッファメモリ112と、楽曲データ再生部13とを備える。
【0038】
楽曲データ取得部111は、楽曲データを取得する。例えば、楽曲データ取得部111は、DJ機器1にローディングされる光ディスク(例えば、CDやDVD)に記録された楽曲を取得してもよい。楽曲データ取得部111は、DJ機器1にマウントされる外付けメモリ(例えば、USBメモリやSDカード等)に記録された楽曲を取得してもよい。楽曲データ取得部111は、有線又は無線のネットワークを介してDJ機器1と通信可能な外部機器から、楽曲を取得してもよい。
【0039】
バッファメモリ112は、楽曲データ取得部111が取得した楽曲データを一時的にバッファリングする。更に、バッファメモリ112は、楽曲データ再生部113からの要求に応じて、楽曲データ再生部113が必要とする楽曲データを楽曲データ再生部113に対して出力する。
【0040】
楽曲データ再生部113は、バッファメモリ112にバッファリングされている楽曲データを読み出すと共に、読み出した楽曲データを再生する。或いは、楽曲データ再生部113は、バッファメモリ112にバッファリングされている楽曲データを読み出すことに加えて又は代えて、楽曲データ取得部111から直接的に楽曲データを取得すると共に、当該直接的に取得した楽曲データを再生してもよい。その結果、DJ機器1に接続されたスピーカ等から、楽曲データに応じた楽曲が流れる。このとき、楽曲データ再生部113は、システムコントローラ12の制御の下で、操作部13を介して行われるユーザ(例えば、DJ)の操作に応じた再生態様で、楽曲データを再生する。
【0041】
システムコントローラ12は、マイクロプロセッサ(MPU)を備え、予め設定されているシステムプログラム(ないしは、ファームウェア等)を実行することにより、DJ機器1全体の動作を集中制御する。特に、システムコントローラ12は、操作部13が備える各種操作キー及び各種操作ボタンの操作状態を監視すると共に、操作部13を介して行われるユーザの操作に応じた再生態様で楽曲データが再生されるように楽曲データ再生部113を制御する。
【0042】
インタフェース部13は、ユーザの操作を受け付けると共に、DJ機器1の動作状態をユーザに通知する。インタフェース部13は、例えば、ジョグダイヤル131と、ループアウトポイント指定ボタン132と、表示部133とを備える。
【0043】
ジョグダイヤル131は、両方向に回転自在な円盤形状の操作キーである。ユーザがジョグダイヤル131の回転方向と回転速度を適宜に変化させて操作することで、楽曲データの再生態様が適宜変化する。
【0044】
ループアウトポイント指定ボタン132は、後述のループ再生を行うためのループアウトポイント(言い換えれば、ループ再生を終了する時刻又は位置)を指定するためにユーザによって操作される操作ボタンである。楽曲データの再生中に、ユーザがループアウトポイント指定ボタン132を押下すると、該押下した時点での楽曲データの位置(つまり、再生位置)がループアウトポイントに指定される。
【0045】
表示部133は、楽曲データの再生に伴う各種情報を表示する。例えば、表示部133は、現在再生している楽曲データのタイトルや、現在再生している楽曲データの経過時間(即ち、現在の再生時間)等を表示してもよい。
【0046】
(2)DJ機器1によるループ再生動作の流れ
続いて、
図2及び
図3を参照しながら、本実施例のDJ機器1の動作について説明する。以下では特に、本実施例のDJ機器1の動作のうち、楽曲データの少なくとも一部に相当するループ再生区間を繰り返し再生する(つまり、ループ再生する)ループ再生動作について説明する。
図2は、本実施例のDJ機器1の動作のうち、楽曲データの少なくとも一部に相当するループ再生区間を繰り返し再生する(つまり、ループ再生する)ループ再生動作の流れを示すフローチャートである。
図3は、ループ再生動作を、拍の単位で区分されている楽曲上で示す説明図である。
【0047】
図2に示すように、楽曲データの再生中に、システムコントローラ12は、ループアウトポイント指定ボタン132がユーザによって押下されたか否かを判定する(ステップS11)。
【0048】
ステップS11の判定の結果、ループアウトポイント指定ボタン132がユーザによって押下されていないと判定される場合には(ステップS11:No)、システムコントローラ12は、ループアウトポイント指定ボタン132がユーザによって押下されたか否かの判定を継続する。
【0049】
他方で、ステップS11の判定の結果、ループアウトポイント指定ボタン132がユーザによって押下されたと判定される場合には(ステップS11:Yes)、システムコントローラ12は、ループアウトポイント指定ボタン132を用いたユーザの操作に基づいて、ループアウトポイントを設定する(ステップS12)。具体的には、システムコントローラ12は、ユーザがループアウトポイント指定ボタン132を押下したタイミングで現れる楽曲の拍の位置(例えば、拍の終端部)を、ループアウトポイントに設定する。例えば、
図3(a)に示すように、#k番目の拍が現れるタイミングでループアウトポイント指定ボタン132がユーザによって押下されたとする。この場合、
図3(b)に示すように、#k番目の拍がループアウトポイントに設定される。尚、
図3(b)に示す例では、ユーザがループアウトポイント指定ボタン132を押下したタイミングで現れる拍(#k番目の拍)の終端部がループアウトポイントに設定されている。しかしながら、ユーザがループアウトポイント指定ボタン132を押下したタイミングで現れる拍の任意の位置(例えば、当該拍の始端部や、当該拍に対応する裏拍の位置等)がループアウトポイントに設定されてもよい。
【0050】
但し、システムコントローラ12は、ユーザがループアウトポイント指定ボタン132を押下したタイミングで現れる拍の位置に加えて又は代えて、ユーザがループアウトポイント指定ボタン132を押下した時点で再生されている楽曲の再生位置の近傍に位置する任意の位置を、ループアウトポイントに設定してもよい。例えば、システムコントローラ12は、ユーザがループアウトポイント指定ボタン132を押下したタイミングで現れる拍の直前又は直後に位置する別の拍の位置を、ループアウトポイントに設定してもよい。例えば、システムコントローラ12は、ユーザがループアウトポイント指定ボタン132を押下したタイミングで再生されている小節若しくは拍節中の任意の位置(例えば、開始位置又は終了位置)を、ループアウトポイントに設定してもよい。或いは、システムコントローラ12は、ユーザがループアウトポイント指定ボタン132を押下した時点で再生されている楽曲の再生位置そのものを、ループアウトポイントに設定してもよい。いずれにせよ、ループアウトポイントは、ユーザの操作に基づいて設定される。
【0051】
その後、システムコントローラ12は、ステップS12で設定したループアウトポイントに基づいて、ループ再生を行うためのループインポイント(言い換えれば、ループ再生を開始する時刻又は位置)を設定する(ステップS13)。このとき、システムコントローラ12は、ループインポイントを指定するためのユーザの操作(典型的には、特定の再生位置をループインポイントに直接的に指定するためのユーザの特別な操作)が行われない場合であっても、ループインポイントを設定する。言い換えれば、システムコントローラ12は、ループインポイントを直接的に指定するためのユーザの操作の有無に関わらずに、ループインポイントを設定する。更に言い換えれば、システムコントローラ12がループインポイントを指定するためには、ループインポイントを直接的に指定するためのユーザの操作は必要とされない。
【0052】
具体的には、システムコントローラ12は、ステップS12で設定したループアウトポイントから、楽曲データの再生方向(順方向)とは逆方向に向かって所定期間だけ遡った位置を、ループインポイントに設定する。例えば、システムコントローラ12は、ループアウトポイントから楽曲データの再生方向とは逆方向に向かって、所定数の拍に相当する期間だけ遡った位置を、ループインポイントに設定してもよい。例えば、
図3(c)に示すように、システムコントローラ12は、ループアウトポイントから楽曲データの再生方向とは逆方向に向かって、4拍(或いは、8拍)に相当する期間だけ遡った位置である#k−3番目の拍の始端部(或いは、当該拍の終端部や当該拍の裏拍の位置等の任意の再生位置)を、ループインポイントに設定してもよい。或いは、上述したように楽曲データに代えて映像データを再生するDJ機器1である場合には、システムコントローラ12は、ループアウトポイントから楽曲データの再生方向とは逆方向に向かって、映像データが示す映像のフレームレートに応じた期間(例えば、フレームレート×4/(平均BPM×60)又はフレームレート×4/(平均BPM/60))だけ遡った位置を、ループインポイントに設定してもよい。
【0053】
その後、システムコントローラ12は、ステップS13で設定されたループインポイントとステップS12で設定されたループアウトポイントとの間のループ再生区間がループ再生されるように、楽曲データ再生部113を制御する。言い換えれば、システムコントローラ12は、楽曲データのうちループインポイントとループアウトポイントとの間のループ再生区間に対応する少なくとも一部の楽曲データがループ再生されるように、楽曲データ再生部113を制御する。その結果、楽曲データ再生部113は、ループ再生区間をループ再生する(ステップS14)。例えば、
図3(d)に示すように、楽曲データ再生部113は、#k−3番目の拍から#k番目の拍を含むループ再生区間をループ再生する。
【0054】
以上説明したように、本実施例のDJ機器1は、ループインポイントを直接的に指定するための操作をユーザが行わない場合であっても、ループアウトポイントを設定することができる。更には、本実施例のDJ機器1は、ループインポイントを直接的に指定するための操作をユーザが行わない場合であっても、ループアウトポイントに基づいてループインポイントを設定することができる。つまり、本実施例のDJ機器1は、ループアウトポイントを指定するための操作をユーザが行えば、ループアウトポイント及びループインポイントの双方を設定することができる。このため、突如として今まで視聴していた再生区間をループ再生したいという要求にユーザがかられる場合であっても、このような要求にかられた時点でループアウトポイント指定ボタン132をユーザが押下すれば、DJ機器1は、今まで視聴していた再生区間をループ再生することができる。
【0055】
(3)DJ機器1によるハーフループ再生動作
続いて、
図4を参照しながら、本実施例のDJ機器1の動作の他の例について説明する。以下では、本実施例のDJ機器1の動作のうち、ループ再生区間の長さを徐々に縮小していく(典型的には、半減させていく)ハーフループ再生動作について説明する。
図4は、ハーフループ再生動作を、拍の単位で区分されている楽曲上で示す説明図である。
【0056】
図4(a)から
図4(d)に示すように、ハーフループ再生動作は、ループ再生区間を1回再生する毎にループ再生区間の長さを半減させながら、ループ再生区間をループ再生する動作である。本実施例では特に、ハーフループ再生動作は、ループアウトポイントを固定する一方でループインポイントをシフトさせる(言い換えれば、変更する)ことでループ再生区間の長さを半減させながら、ループ再生区間をループ再生する動作である。
【0057】
例えば、
図4(a)に示すように、上述の
図2のステップS12で説明した動作によって#k番目の拍がループアウトポイントに設定され、その後、上述の
図2のステップS13で説明した動作によって#k−3番目の拍がループインポイントに設定されるものとする。この場合、
図4(a)に示すように、まずは、楽曲データ再生部113は、システムコントローラ12の制御の下で、#k−3番目の拍から#k番目の拍を含む(つまり、4つの拍を含む)ループ再生区間を再生する。その後、
図4(b)に示すように、システムコントローラ12は、#k−3番目の拍に代えて#k−1番目の拍を新たなループインポイントに設定することで、ループ再生区間の長さを半減させる。その結果、楽曲データ再生部113は、システムコントローラ12の制御の下で、#k−1番目の拍から#k番目の拍を含む(つまり、2つの拍を含む)ループ再生区間を再生する。その後、
図4(c)に示すように、システムコントローラ12は、#k−1番目の拍に代えて#k番目の拍を新たなループインポイントに設定することで、ループ再生区間の長さを半減させる。その結果、楽曲データ再生部113は、システムコントローラ12の制御の下で、#k番目の拍を含む(つまり、1つの拍を含む)ループ再生区間を再生する。
【0058】
尚、上述の説明では、DJ機器1は、ループ再生区間を1回再生する毎にループ再生区間の長さを半減させている。しかしながら、DJ機器1は、ループ再生区間を1回再生する毎にループ再生区間の長さを所定量だけ又は所定割合だけ半減させてもよい。或いは、DJ機器1は、ループ再生区間を1回再生する毎にループ再生区間の長さを所定量だけ又は所定割合だけ半減させることに加えて又は代えて、ループ再生区間を1回再生する毎にループ再生区間の長さを所定量だけ又は所定割合だけ増加させてもよい。
【0059】
また、上述の説明では、DJ機器1は、ループアウトポイントを固定する一方でループインポイントをシフトさせることでループ再生区間の長さを変えている。しかしながら、DJ機器1は、ループアウトポイントを固定する一方でループインポイントをシフトさせることに加えて又は代えて、ループインポイントを固定する一方でループアウトポイントをシフトさせることで、ループ再生区間の長さを変えてもよい。
【0060】
本発明は、上述した実施例に限られるものではなく、請求の範囲及び明細書全体から読み取れる発明の要旨或いは思想に反しない範囲で適宜変更可能であり、そのような変更を伴なう再生装置及び方法、並びにコンピュータプログラムもまた本発明の技術的範囲に含まれるものである。