YamJJazzリズムエンジンは、標準ヤマハスタイルファイル(.sty、.prs、.stなど)の機能を拡張した新しいファイルフォーマット(.yjz)を読み込むことができます。目的は、リズムにより広いダイナミックレンジを持たせ、パターン繰り返しが少ないサウンドになるようデザインすることです。
拡張スタイル(.yjz)は、以下をサポートします:
無制限のバリエーション数 メインA/B/C/Dの代わりに、メインA-1、メインA-2、メインB-1、メインB-2、メインB-3、メインC-1、メインC-2、...とすることができます。
各バリエーション毎に無制限のソースフレーズ数 標準ヤマハスタイルでは、1つのバリエーションには必ず同じソースフレーズが使われます。 代替ソースフレーズでは、リズムデザイナーがメインA-1などのほんの少し異なるフレーズを定義し、YamJJazzエンジンがランダムにそれを使用することで、パターン繰り返しが少ないサウンドを実現します。
.yjzファイルは、基礎スタイルである標準ヤマハスタイルファイルの拡張部分に過ぎません。つまり、MyRhythm.yjzを読もうとすると、YamJJazzは同じディレクトリにMyRhythm.sty(またはMyRhythm.prs)を見つける必要があります。
ツール(Tools) メニューにあるこのウィザードは、標準のヤマハスタイルファイル(.sty, .prs, ...)から、すぐにカスタマイズできる拡張スタイルファイル(.yjz) を作成するためのものです。操作方法は以下のビデオをご覧ください。
作成後は、MIDIエディターやCubase、Ableton LiveなどのDAWを使って、.yjz MIDIファイルの音楽フレーズを手動で変更する必要があります。そうしないと、新しい拡張スタイルは基礎スタイルと全く同じ音になってしまいます。
独自の.yjzファイルを作成する予定がない場合は、この項目を読み飛ばしても構いません。
拡張スタイル作成ウィザードを使用して、カスタマイズ可能な.yjzファイルを準備することをお勧めします(上記参照)。
拡張ファイル(.yjz)は、同じディレクトリにある同名の基礎となるヤマハスタイルファイル(.sty、.prs、.stsなど)に関連付けられている必要があります。
YamJJazzは、最初に基礎スタイルファイルを読み込んで、次のようなヤマハスタイル情報を得ます:
CASM データ:バリエーションごとのチャンネルパラメーター(使用するMIDIチャンネル、ソースコード、ノートの下限/上限、コード/メロディーのチャンネルなど
SINT データ:楽器パラメーター(バンク選択/プログラムチェンジ、音量など)
Musical データ:使用する各バリエーションの各チャンネルのMIDIソースフレーズ
その後、YamJJazzは.yjz拡張ファイルを読み込んで、基礎となる使用するバリエーションを改良したり、代替ソースフレーズを追加したりするためのMIDIソースフレーズを取得します。
基礎スタイルがバリエーションのメインA(例)であれば、拡張ファイルでバリエーションのメインA-1、メインA-2、メインA-3などを定義することが可能です。その数を「複雑度」と呼びます。拡張ファイルでMain A-xのバリエーションを定義するとすぐに、基礎ファイルの元のMain Aのバリエーションを置き換えます。
基礎ファイルにバリエーションメインD(例)が定義されていても、拡張ファイルにメインD-xが定義されていない場合、オリジナルのメインDがメインD-1という名前で使用されます。
基礎スタイルにバリエーションIntro Bが定義されていない場合(例)、拡張ファイルにIntro B-xを定義することはできません。
.yjzファイルはMIDIフォーマット1を使用しており、 複数のトラックを含んでいます。なお、.styまたは.prsファイルはMIDIフォーマット0を使用しており、1つのトラックを含んでいます。
拡張ファイルの各トラックは、次のような構文のMIDIトラック名メタイベントで始まる必要があります。
trackname=<base variation>-<complexity level>-<id string>-<phrase length in beats>
トラック名の例:
Main A-1-drums-8
Main A-1-bass-8
Main A-1-guitar-8
Main A-1-guitar_root-8
Main A-2-drums-8
Main A-2-bass-8
Main A-2-guitar-8
Main A-2-guitar_root-8
Ending B-1-piano-4
Ending B-1-bass-4
<id string>
には、好きな文字列を使うことができますが、少なくとも対象となる楽器を明記しておくことをお勧めします。拡張スタイル作成ウィザードを使用した場合、id string
を[Bass, C7M, ch11]
のように生成し、楽器名、ソースコード、ソースMIDIチャンネルを記述します。
バリエーションのトラックは、全て同じ拍数でなければなりません。しかし、異なるバリエーションは異なる拍数にすることができます。
CASMデータによっては、1つの楽器に対して複数のソースフレーズが存在する場合があります(上の例ではguitarとguitar_rootのフレーズ)。例えば、1つのチャンネルにはメジャーコード、もう1つのチャンネルにはマイナーコードを使用することができます。
1つのトラックは、基礎スタイルのCASMデータで定義されている、ソースコードとソースMIDIチャンネルのMIDIノートのオン/オフメッセージのみを含んでいます。拡張スタイル作成ウィザードを使用した場合は、上記のように<id string>
にソースコードとMIDIチャンネルを指定します.
あるバリエーションに代替ソースフレーズを追加するには、そのバリエーションの各トラックにソースフレーズを追加するだけです。追加される音源フレーズは、元のフレーズと同じ拍数でなければなりません。
例 トラックMain A-1-bass-8のソースフレーズの長さは8拍(4分の4拍子で2小節)です。このトラックに同様の8拍子のソースフレーズを2つ追加できるので、トラックの長さは24拍子になります。YamJJazzでは、この追加の2つのフレーズを最初のソースフレーズの代替ソースフレーズとみなし、Main A-1bassパートのレンダリング時にランダムに使用します。
なお、他のMain A-1トラックである、Main A-1-drums-8、Main A-1-guitar-8、Main A-1-guitar_root-8にも2つの代替ソースフレーズを追加しなくてはいけません。
例えばメインA-1に3つのソースフレーズがあった場合、JJazzLabは2小節ごとにランダムにソースフレーズを選択します。最初のソースフレーズは2番目のソースフレーズよりも選択される可能性が高く、2番目のソースフレーズは3番目のソースフレーズよりも選択される可能性が高い、といったように、実際には100%ランダムではありません。言い換えれば、最後のソースフレーズが選択される可能性は最も低いということです。