XG音源で遊ぶ(GURU スクリプト・ツール + NSX-1・ポケットミク)

既にRenoiseを使っているユーザー向けのフォーラムです。
質問・要望・Tips・バグ報告等、Renoiseに関する話題を書き込んでください。

XG音源で遊ぶ(GURU スクリプト・ツール + NSX-1・ポケットミク)

投稿記事by satobox » 2016年3月22日(火) 2:53 am

このスレは、Renoise のスクリプト・ツール「GURU」の XG 音源用シンセ定義ファイルを作ってみよう(出来たらいいな)、くらいの思い付きで始めた試みです。「今更 XG 音源って誰得?」というつぶやきが聞こえてきそうですが、まぁ過疎地ですし、この斜め下感がいいでしょ?(笑)

まず冒頭で GURU の説明と導入方法だけ書いておきます。その後の返信欄で、のんびり・だらだらと駄文が幾つか続く予定です。

■ GURU のマニュアルとシンセ定義ファイルの作り方 ■(英語なので分かり難いかも。実際の定義ファイルの中を見た方が参考になります)


■ GURU のダウンロード ■(V1.7 が最新版で、恐らくもう放置状態でしょう・・・ :(


■ 本家フォーラムの GURU スレッド ■(後半の方に、そこでしか手に入らない MS2000 や Blofeld のシンセ定義ファイルがあります)


遅ればせながら、この GURU という素晴らしいツールの生みの親である Cornbeast 氏に感謝します。<(_ _)>

##################################################

GURU について

- GURU の開発が活発だったのは、2012年頃です。現在の Renoise 3.1 でも使えますが、GURU 自体の開発はもはや望み薄です。現状で何とかするしかありません。Lua の知識があれば、自由に改造は出来るはずです(僕には出来ません :roll: )。

- デフォルトでシンセ定義ファイルが幾つか入っていますが(特に Example synth def は分かり易い)、それらを参考にすれば、シンセ定義ファイルは自分で作れます。多分、コントロールチェンジ信号(MIDI-CC)だけでノブを動かせるようなシンセならかなり簡単です。SysEx が絡んでくると少々難しくなります。

- GURU は、シンセからの情報(MIDI フィードバックやバルクダンプ等)は受信出来ません。基本的に GURU >>> シンセの一方通行だと思ってください。

- GURU の各スライダーは、MIDI マッピングは可能ですが、Renoise のオートメーションで操作する事は出来ません。

*基本的には「シンセの本体パネルだけでは弄れないようなパラメーターも操作可能な自作音色エディター」という認識で良いかと思います。そもそも Renoise 自体、あんまり MIDI シーケンスは得意ではないですし、それよりもサンプリングの為の音ネタ作りなんかに役立つかな?と思っています。


導入方法

■ GURU のインストール ■

- 上のリンク先より、GURU V1.7 をダウンロードしてください。(注:Renoise.com からダウンロードすると V1.6 になってしまいます)

- Renoise の画面上に "com.cornbeast.Guru_V1.7.xrnx" をドラッグ&ドロップしてインストールします。自動アップデートの表示が出るので [OK] を押してください。

- Renoise のメインメニューの Tools >> Guru >> Settings... をクリックすると、図のような設定画面が開きます。ここでの MIDI-In / Out は一応の設定です。後でシンセ毎に設定出来ます。
"Guru working folder" というのは、自作の音色パッチや、シンセ毎の MIDI-In / Out の設定を保存するフォルダです。ご自分で分かり易い場所にフォルダを作ってください。
guru_setting.png
guru_setting.png (2.57 KiB) 表示数: 7262 回


- Tools >> Guru >> Scan synth definitions をクリックすると、その下にシンセ定義ファイルのリストが表示されます。どれでも好きなシンセを選んでみてください。スライダーがずらりと並んだエディットパネルが表示されるはずです。

もし、ご自分でシンセ定義ファイルを作られた場合は、必ずそのファイルのバックアップをどこかに保存しておいてください。何かの都合で GURU を再インストールした場合には、シンセ定義ファイルはデフォルト状態に戻ってしまいます。上で説明した "Guru working folder" なら安全なので、そこに保存しておくといいかもしれません。



####################################################################################################

XG 音源用・シンセ定義ファイル

ポケットミクと SK1XG というミニ・キーボード用の定義ファイルです。
(まだまだ怪しい部分もありますので、もしバグを見つけたら更新しておきます)

■ ポケットミクと SK1XG 用ファイル ■

GURU_NSX-39_SK1XG_jpn.zip
(156.36 KiB) ダウンロード数: 531 回


:!: (2016/4/7 更新)

####################################################################################################


■ XG 音源用・シンセ定義ファイルの導入 ■

- 上で配布している Zip ファイルをダウンロードして解凍します。中には改変済の class ファイルとシンセ定義ファイルが入っています。

- Renoise のメインメニューの Help >> Show the Preferences Folder... をクリックすると Renoise の管理フォルダが開きます。そこに "Scripts" というフォルダがありますので、Scripts \ Tools \ com.cornbeast.Guru.xrnx と開いたディレクトリに、改変済の class ファイルを入れてください。

- 更にそのディレクトに "synthdefinitions" というフォルダがあるので、その中にシンセ定義ファイルを入れてください。

- Renoise のメインメニューの Tools >> Guru >> Scan synth definitions をクリックすると、リストの中に "Yamaha NSX-39" と "Yamaha SK1XG" が出現するはずです。

- NSX-39 又は SK1XG のエディットパネルを開いて、上部にある "Settings" ボタンを押すと図のような MIDI-In / Out の設定画面が出ます。ただ、ここで重要なのは MIDI-Out device だけです。他は、恐らく当時、バルクダンプ機能等を実装しようとしていた名残りじゃないかなぁ?と思います。MIDI-In や Channel は Renoise 本体で設定します。
guru_setting_sk1xg.png
guru_setting_sk1xg.png (2.41 KiB) 表示数: 7262 回



■ Renoise 本体の MIDI-In / Out / Channel 設定 ■

ポケットミクや SK1XG の中身は 16 Channel のマルチティンバー音源なので、Renoise の設定次第で、MIDI Channel 1, 2, 3 を同時に鳴らす事が出来たりします。本当はもっとチャンネルを増やせるんですけど、そこまでやると同時発音数(SK1XG は 32音)がネックになってくるので、とりあえずチャンネルは3つしか付けてません(ポケミクは 64 音なので、チャンネルは増やしてあります)。その Renoise の MIDI 設定方法を簡単に書いておきます。

この図を見てください。
midi_setting.png
midi_setting.png (36.16 KiB) 表示数: 7262 回


- [1] でインストゥルメントの空きスロットを選ぶ。
- 画面左上の [MIDI] タブをクリックして MIDI 画面を開く。
- [2] で MIDI-Input Device を選ぶ。
- [3] で MIDI-Output Device を選ぶ。
- [4] で MIDI Channel を選ぶ。
この操作を3回行います。

[4] のチャンネル設定で、インストゥルメント・スロット毎に MIDI Channel を 1, 2, 3, と振り分けます。
音色の切り替えは、GURU の SK1XG パネルの "Program_Number" というスライダーを使ってください。

*ドラム音を鳴らしたい場合は、もう一つ別のインストゥルメント・スロットを用意して、 [4] で 10 Channel を選んでください。PC キーボードとか叩けばドラム音だけ鳴らせます。

それと、SK1XG の場合は、本体側で内蔵音源はオフにしておきましょう。そうしないと、本体で直接鳴る音と MIDI In からの音が両方鳴ってしまいます。内蔵音源をオフにしても MIDI In からの音は鳴ります。
やり方は、SK1XG 本体の [シフト] を押しながら、[実行] >> [J] >> [実行] です。(CBX の場合は J ではなく "MERGE ON/OFF" と表記)


##################################################

長くなりそうなので、とりあえず冒頭では、このくらいでいいかな。今後、2つの TODO があります。

- 実はドラム・エディターが出来ていないんです。少し特殊な SysEx 信号を送信しないといけないんですが、それを実現する Lua コードの書き方が全く分からないんです(~_~;)。これについては後日詳しく書こうと思います。それにどなたか答えて頂けると嬉しいんですけどね。まぁ無理なら無理で仕方ないかもなぁ。

- SK1XG は、ドラム・エディター以外はほぼ出来ています。まぁ昭和の XG 音源ですよね。では最新の XG 音源って何だと思いますか? これが、まさかのポケットミクなんですよ(笑)。正確には GM 音源 + XG エフェクトなんですが、NSX-1 というチップを積んでいまして、その仕様書を見てたまげました。エフェクターの数が尋常じゃないんです。ちょっと多すぎて、スクリプト・ツールとしてちゃんと動作するかどうか分かりませんが、ぼちぼちと挑んでみようと思います。

ちなみに、SK1XG のエディターでも、ポケットミクの XG エフェクトの一部なら弄れますよ。

それと、期待された方がいたら申し訳無いんですが、今回、ミクの部分は触りません(なんじゃそりゃ!って言われそうですけども :wink: )。僕に Lua で歌詞入力とか作れと言われても、それは無理なので・・・(;^ω^)。

:!: 追記:結果的にはちょっとだけ触ってるんですけどね。予め歌詞を SysEx で仕込んでおくくらいは出来ます。)

Renoise_SK1XG.jpg
Renoise_SK1XG.jpg (73.92 KiB) 表示数: 7262 回


とりあえず記念撮影。今はポケミクのノイズが酷いので、グランドループ・アイソレーターって怪しげな物(1000円くらい)を注文した所です。1週間くらい掛かりそう。
アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都

Re: XG音源で遊ぶ

投稿記事by satobox » 2016年3月22日(火) 8:43 pm

今日は SK1XG 本体について、ちょっと書いておきます。

多分、知ってる方もおられると思うんですが、3~4年ぐらい前かなぁ?、ヤフオクで SK1XG が大量に出回ってたんですよ。ほんとに毎週のように何個も出品されてて、有難味ゼロな感じだったんです(笑)。僕も是非欲しいって程では無かったけど、値段が確か2~3千円くらいやったので、まぁそんなら一個ぐらい買っとこかぁ、と思って落札したんです。で、それは、箱はボロボロだったんですが、確かに中身は未使用品でした。今考えると、4つぐらい買っておけばよかったかなぁ・・・(;^ω^)。

当時僕は、SK1XG は CBX の機能制限版だと思ってたんです。パネルには 128 音色しか書いてないし、そういうポータトーン的な物だろうと。一時期は、ギター用のディレイペダルとか繋げて遊んでました。今考えるとアホですよね~、XG にディレイ内蔵してるやん・・・(苦笑)。

で、こいつの本当の機能に気付き始めたのが、ほんの3週間前ぐらいです。パソコンも変わったし部屋も整理しようと思って、もう SK1XG はヤフオクで売ろうと思ったんです(^^;)。だから一応、動作確認はせなあかんと思って、初めて CBX-K1XG のマニュアルを読んだんです。そこで「あれっ!?これドラム音鳴るやん」とか「おぉっ!ポルタメント掛かった!!」とか、調べれば調べる程、何か思ってた性能と違うんです。もちろん良い意味で。 :shock:

で、何かこれ、売ってしまうのも惜しいなぁ~と思いまして、それなら何かのネタとして活用できひんかなぁ?と悪巧みを企てたのが、今回のこのスレの内容です。

####################################################################################################################

で、その過程で、SK1XG 本体で出来る操作表とか、CBX のマニュアルを参照しながらまとめてみました。多分僕と同じように、ヤフオクで何となく SK1XG を買って、ほとんど使ってない人はいると思うんですよね。当時のヤマハの技術者さん達ががっかりすると思うので、これを見てその多機能さに気付いてあげてください(笑)。

■ SK1XG の本体キーボードで出来る操作 ■

####################################################################################################################

それと、ムービーも作ってみました。良かったら見てやってくださいませ。

https://youtu.be/73jnyUZ15UA

アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都

Re: XG音源で遊ぶ

投稿記事by satobox » 2016年3月23日(水) 1:18 pm

今日は、Lua コードについて教えて頂きたい事を書きます。
この部分が分からなくて、ドラム・エディターが未完成の状態です。
もしどなたか、分かる方がいらっしゃったら良いんですけど・・・。

■ まずこれが、ドラム・セットアップの為の SysEx の書式です。

question_0.png
YAMAHA CBX-K1XG の PDF マニュアルから抜粋
question_0.png (15.43 KiB) 表示数: 7221 回

頭の "3n" は問題無いです。これは "30" か "31" しか無いんで、パネル上に2列固定で表示させるつもりです。ドラムセットが同時に2つ使える感じです。
問題は次の "rr" で、ノートナンバー(0D~5B)を表しています。鍵盤1つ1つに割り当てられたドラムの個別音をエディット出来る仕組みなんです。これは魅力的なんですよね~。

■ で、考えたのが次の図です。

question_1.png
question_1.png (14.81 KiB) 表示数: 7221 回

まぁ、図に書いてある通りなんですが、形は出来ても中身のコードの書き方が分からないんです。一応、何度も試行錯誤しましたので、書くべき場所は分かっています(多分 :wink: )。

■ class_midi.lua ファイルの 34 行目辺りからの部分です。

question_2.png
question_2.png (31.34 KiB) 表示数: 7221 回

これも図に書いてある通り、yamaha_sk1xg.lua ファイル内の "Note_Number_10" というパラメータの value を何とかして認識させないとダメな気がします。その方法や書き方がさっぱり分かりません。

幾つか、うまい人のコードを探ってたんですが、こういう例が無いんですよ。僕は、先例があれば、それをコピーして適当に改変するくらいならある程度勘で出来るんですが、1から Lua コードを書けと言われると全然理解できてないんです・・・(涙)。

まぁ、ここは誰も見てくれてない可能性もあるんですが(;^ω^)、そんなに急いでいるわけでもないですし、もし目に留まった方がいらっしゃいましたら御教授お願いします。もし、全然違う方法で実現出来るというなら、それでも勿論構いませんので、よろしくお願いします。m(_ _)m

(後日、一応ドラム・エディターを動作させる事が出来ました。ただ、ほぼ同じ 15 個の Sysex 信号を約 70 回コピペするという荒業なので :roll: 、もしもっとスマートな方法があるのなら、ぜひ教えて頂きたいとは思っています。)
アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都

Re: XG音源で遊ぶ(GURU スクリプト・ツール)

投稿記事by satobox » 2016年3月30日(水) 7:18 pm

今日はちょっとポケミクのノイズの話。まぁ、また懲りずにムービー作ったので、それを見れば分かるんですけどね。



グラウンド・ループ・ノイズに関しては、随分前に藤本健氏も記事にされてましたし、以前トラッカー関連でやり取りさせて頂いた事があるプログラマーのS.F. さんのブログでも語られていましたので、ポケミクを買う前から知っていました。

ぶっちゃけ、ポケミク本体よりも、ノイズ対策費の方が上回ってしまいました(;^ω^)。しかも結果的には無駄やったという・・・(涙)。
こんだけお金使うんなら、eVY1 を買った方がよかったかなぁ~と・・・・・後の祭りですが。
まぁポケミクの値段じゃなかったら、初めから手も出さなかったやろうし、これはこれで勉強になったから良しとしましょう。

#################################################

そのノイズのせいで、若干モチベーションが下がったんですが(ポケミクはあんまり人に薦められない音質だと分かったので・・・)、GURU のポケミク用シンセ定義ファイルもほぼ出来ています。
もちろん、上で書いたようなドラム・エディターとか、ミクの歌詞入力なんかは手付かずですけど。
それはまた後でアップします。
アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都

Re: XG音源で遊ぶ(GURU スクリプト・ツール)

投稿記事by satobox » 2016年4月01日(金) 1:09 am

とりあえず、ポケットミク用のシンセ定義ファイルを出来た所まででアップしておきます(最初の投稿欄です)。
多分、本職のプログラマーさんがこのファイルの中身を見たら、「こいつ、何やってんの? :roll: 」というぐらい、数字の羅列とかコピペとかがあったりします。まぁとにかく「動けばOK!」という方針で電卓片手に頑張りました。

最初は、大量の数字の中から間違いを探す羽目になったり、カンマがピリオドになっててパラメーターが一つずれたりして(;^ω^)、大変な思いをしました(苦笑)。ようやく、一通りマトモに動くようになった気がします。まぁエフェクターの数が膨大なので、全てをチェックは出来ませんけども・・・。

それと、XG 音源のエフェクターの構成を簡単に解説した PDF ファイルも作りました(配布ファイルにも入れてあります)。やっぱり、この構成を知っておかないと、どう使っていいか分からないと思ったので。別にポケミクに限らず、XG 音源は皆同じ構成だと思うので、参考になれば幸いです。

XG_Effect_構成解説.pdf
(129.52 KiB) ダウンロード数: 830 回


ミクさんに関しては、歌詞入力は出来ませんが、「あいうえお」だけなら鳴らせるようにしてあります。本体ボタンでも鳴らせますしね。エフェクトは掛かりますんで、結構綺麗に鳴りますよ。普通に一つのシンセ音として使うのも有りかなぁ?と思います。

##################################################


:!: 追記 :!:
夜通し悪あがきした結果、最大の難関だったドラム・エディターも一応使えるようになりました。これ、何度か挫折していて突破できるとは思ってなかったので、正直嬉しいです。 :mrgreen:  深夜に一人で「おっしゃーっ!!」と万歳しておりました(笑)。
ただ、中身を見てもらったら分かるんですが、ほぼ同じコードを70回ぐらいコピペしてる酷い状態なので (;^ω^)、もしもっと良いやり方をご存じの方がおられましたら、引き続き御教授頂きたいとは思っております。
アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都

Re: XG音源で遊ぶ(GURU スクリプト・ツール + NSX-1・ポケットミク)

投稿記事by satobox » 2016年4月06日(水) 8:32 pm

今日は、簡単な機能紹介ムービーを作ってみました。「GURU 用の XG 音源シンセ定義ファイルを作る」という目的に関しては、一応これで一段落かなぁ。まぁ中のコードは酷いけど、別に普通に動いてるし使ってる分には気にならないです。僕にしては、途中で投げ出さずに良く出来た方だと思っております(自画自賛・苦笑)。



このシンセ定義ファイルは、完全にポケットミクに合わせて作りましたけど、ミクさん以外の部分では、他の XG 音源(MU シリーズとか)とかなりの部分で互換性があるはずです。そういう音源をお持ちの方は、このシンセ定義ファイルを叩き台にして活用してもらえればいいと思います。今更そんな人、いない気もしますけどね。。。 :mrgreen:
アバター
satobox
Site Admin
 
記事: 691
登録日時: 2008年5月12日(月) 10:33 am
お住まい: 京都


Return to Renoise ユーザーズ・フォーラム

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[58人]

cron