soundflowで作ろう17 "リファレンス切り替え"

こんにちは🙋‍♂️

今日作るのは

画像1

こちら

できます!😊

ってことで作っていきましょう🔨



まずは基礎部分から

まずリファレンストラックをソロにすることを考えましょう。

マクロの "add action" で

画像2

"Set Track Solo" というアクションがあります。

あとでこねくりまわすんでなんでもいいんですが、
仮に "Ref" というトラックネームを入れてみました。


画像3

さて、これで、

画像4

できますわな。

画像5

ここが "Toggle" になっているので、連打すると切り替わっていきますが、
今回の場合は一旦 "Enable" にしましょう。


さて「Refトラックをソロにする」
次は「Refトラックのミュートを解除する」
ですね。

こちらも簡単、マクロのアクションにあります。

画像6

ほい

ここもトラック名は "Ref" に

今作ってる行動は「Refを聴こ〜っと」という時の行動なので、
それまではRefトラックはミュートされています。
ですので必要な行動は「MuteをDisableにする」こと

画像7

こうします。

すると、

画像8

うんうん。一瞬ですが、正しく行われています👍

さて、これが「Refを聴こ〜っと」のスクリプトですね。



逆のスクリプトも要ります

今度は「Refは聴いたから、ミックス戻ろ〜っと」のスクリプトが必要です。

もはやみなさんわかると思うのではしょりますが、

画像9

こういうマクロになります。

Soloを先に解除してしまうと、一瞬両方鳴ってしまう恐れがあるので、必ずミュートをかけるのが先になるようにしましょう。


さて、これで

「Refを聴こ〜っと」

「Refは聴いたから、ミックス戻ろ〜っと」

の二つのマクロができました。

この2つをAとBと呼びます。

このまま二つをそれぞれ運用してもアリです。
が、まぁ一個のショートカット(ボタン)でトグルで切り替わる方がいいですよね🙋‍♂️

というわけで先へ進みます🕺



ここでも登場if文

さーて、
今回も条件付けによる動作になってくるので、"if" を使用します

今回の条件はなんだろな〰


と考えた結果

「"Ref" トラックがミュートされているか否か」

がいいかな、と思いました。

Refがミュートされてる = カレントミックスを聴いてる、
わけだから、動作するべきはA

Refがアンミュート = Refを聴いている、
わけだから、動作するべきはB

ということ


では必要なのは
「Refのミュートがどっちになってるか」
という情報ですね。

さてさて、soundflow forumへいきましょう。

そして、まー
「mute, status」
とかで検索。

はいヒット🤩

読み解きます。簡単。


参考スクリプトはこのスレ主のリクエストに応える内容なので、ちょっと複雑ですが、我々の場合には以下でよし👍


var refTrack = sf.ui.proTools.trackGetByName({
   name: 'Ref',
   makeVisible: true
}).track;

if (refTrack.isMuted) {

} else {

}

ほい

これで「Refがミュートされていたら、されてなかったら」
という条件分岐のスクリプトができました。

イメージ-1

こういうこと。


さて、ここに先ほど作ったAとBを適宜はめこみます。

画像11

Convert to Scriptして、

合体

画像12

できた。

画像13

いえーい、ばっちり。


しかしちょっと一個前の画像に戻ってみると、

イメージ (1)-1

このへん一緒じゃね?🤔🤔🤔🤔

と気づきます💡

そうです。省略できます。

画像15

これでも同じことができます。
視認性がよくなるので省略できるとこはしましょう。



さてさて完成しました。が、

さて、これでオッケーです、これをstoreの "Engineer's Request" にアップしようと多います。

が、そうしたときに使う人には

画像16

「3行目の Ref ってとこを適宜あなたの使ってるリファレンスのトラックネームに変えてね〜」

ってことになるんですけど、

簡単なことだけど、スクリプトのことを理解してないとなかなか大変かもしれないし、
そもそも上記の画像を見ただけで音を上げる人がいることを私は知っている……🤣🤣🤣

ですので、もっと人それぞれに使いやすくしてあげましょう👏



テンプレート化

といいます。この作業。

画像17

ここ押します。

するとちょっと見た目が変わる。

コマンドメニューのところも

画像23

なにやら見た目が変わる。

「あ、これStoreで落としたスクリプトがなってるやつだ!」

と気付かれた方もいるでしょう。


そしてタブのTEMPLATEへ。

画像19

Add Propertyして

画像20

こんなん聞かれるので。

えーと

「your reference track name」

かな。

そして、

画像21

今回人それぞれ変えたいのはTrack Nameなので、文字情報ですね。
その場合は "String" 

画像22

Default Valueには "Ref" とか入れときます。

さてさて、すると……

画像24

こうなる。

「あ、マクロみたいなやつだ!」

そうです。

これだけだとまだだめなので、スクリプトをいじります。

画像25

これを、

画像26

赤矢印部分へ記入。

青線部分は任意です。

これで

画像27

ここに記入した文字列が、

画像28

スクリプト内でこう呼称される、と結びつきました。

そして察しの良い方はもうおわかりでしょう、

画像29

ここ今まで
"Ref"
だったのを
myRefTrackName
に変えます!
(Tを途中から大文字に変えたのは特に意味ありません💦)

この場合コーテーション('')で囲む必要ないです。


これで完成〜🕺🏻🕺🏻🕺🏻🕺🏻🕺🏻


使用法

画像30

Default Presetではこうなっていますが、

これを⌘+Dで複製しますと。

画像31

任意に変えられるようになります👍👍👍👍

これで人それぞれのトラックネームに変更することが、
スクリプトを触ることなくできるようになりました〜



あとがき

画像が多くなりすぎてしまいましたが、

ついてこれましたでしょうか?

最後に書いた「テンプレート化」に関しては
自分で自分用のスクリプト作る分には必要ないと思います。
ですがまぁやっておくと、複雑なスクリプトの場合は、後々楽になるし、
ストアに上げるならこうしておくと親切ですね。

このテンプレート化、やりたてのころ、How to動画をsoundflow公式が出してなくてめちゃ苦労しました😫😫😫😫




記事を購入してもらえるようにしています。

買っても買わなくても読める内容は変わらないのですが、
購入いただけると作者のやる気が出ます🤗


ここから先は

11字

¥ 100

この記事が気に入ったらサポートをしてみませんか?