状況に応じてトラックのボリューム（またはミュート）を制御

# 状況に応じてトラックのボリューム（またはミュート）を制御する

ADX2を使ってやります。
このデモページの
http://www.criware.jp/adx2/demo/download_j.php

CRI Atom Craftアクションデモプロジェクト
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/2a128da4-fae9-1fea-eb45-2e6de4c6f01d.png)
を使います。

## 08-02_MusicSession
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/8e9a1c1b-9e0c-6602-a5fd-fa147b498818.png)
このデータ

これの解説になります。

##　キューの構成
srcフォルダの中に「_MusicSessionSrc」というキューがあります。
これが再生されるキューです。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/c6315555-e537-ca79-b19c-ed072e3e9765.png)

中に3トラックあります。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/e078d189-4493-1868-77a9-dd8ac4e8a3de.png)
1トラックがドラム
2トラックが楽器
3トラックがリード楽器

で、これを再生するキューが、オレンジ色の「MusicStart」キュー
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/4b9a5dd3-1d6e-63fd-962d-d56a6195cb22.png)

中に、アクショントラックがあります。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/e94d3b93-b78d-3b42-23b6-86e8a4f2fbc9.png)
アクショントラックには、先ほどのSrcフォルダにあった「_MusicSessionSrc」のキューが設定されています。
（ドラッグで違うキューにもできる）
で、再生アクションが一つあるだけです。

まぁ、再生するだけなら先ほどのSrcのキューを直接鳴らしてもかまいません。

## ドラムだけにする
Music_DrumOnlyをみていきましょう。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/102a511f-5dc6-6e33-c8ed-ad5d474b15ac.png)

3つトラックがあります。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/842c8c79-b134-f08b-be71-5abfe864dcd9.png)
それぞれ、
1トラックが、「_MusicSessionSrc」のキューのドラムのトラック
2トラックが、「_MusicSessionSrc」のキューの楽器のトラック
3トラックが、「_MusicSessionSrc」のキューのリードのトラック

1トラックのアクションの内容をみてみます。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/34f391c3-e266-040f-29db-6459d3b73ba4.png)
再生パラメータアクションで、
再生パラメータがボリュームで、目標値が1、目標への速度が1となっています。

これは、
「このトラックのボリュームを1に1の速度であげる」というアクションです。

つまり、ドラムトラックが1の音量になる。

2トラックのアクションの内容をみてみます。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/1dddb2d3-548a-35c6-ad4d-a7ce3b3b3823.png)
再生パラメータアクションで、
再生パラメータがボリュームで、目標値が0、目標への速度が1となっています。

これは、
「このトラックのボリュームを0に1の速度であげる」というアクションです。

つまり、楽器トラックが0の音量になる。ミュートされます。

3トラック目も同様です。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/6991f978-c474-5391-b1e8-18c78b91e798.png)

## まとめ
アクショントラックで、ターゲットをトラックにし
1トラック目の音量をあげる
2トラック目の音量をさげる
3トラック目の音量をさげる
で
1トラックのドラムだけの音になります。

この組み合わせが
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/d0dce209-44f7-1638-8cf8-29540b9abea9.png)
それぞれキューで用意されています。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/0a2a1090-d203-aa6c-5820-3364e4a8c752.png)
ドラムさげる
楽器さげる
リードあげる

##全部のトラックを素早くあげる

「Music_All_FastIn」キューで
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/a1341bed-836b-db86-6f64-e563859893e9.png)
目標への速度が4になっています。　変化が４倍。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/cba8b07e-229f-dc48-f872-d32e740e6e8f.png)
あと、全てのトラックが「あげる」
になっています。

これで、素早く全トラックの音が鳴るように変化します。

#となっていたが（重要）

これ、LE版では可能ですが、
最新版では機能が制限されていてトラックをアクションターゲットにできない様子です。
最新版の方は次のリリースで修正予定とのことです。

#変わりの方法紹介　ミュート制御
考え方はほぼ同じです。
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/f43bd22b-23d3-3c3b-e6fc-a79d0fe7c6e4.png)

アクショントラックを3つ用意します。
先ほどの「_MusicSessionSrc」をアクションとします。（一つでもOKですが見やすさ優先）
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/f6480cba-dab4-7bf1-c723-15c4d6ceee54.png)

1トラック目がミュート解除
2トラック目がミュート
3トラック目がミュート
となります。
キューを指定しているので、トラックインデックスを指定します。
0から始まりなので注意！
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/a0d25912-e4cb-8529-5c4a-ed730967ee7f.png)

![image](https://qiita-image-store.s3.amazonaws.com/0/96808/8b2bd931-7046-b5bd-8df9-97a140f015fd.png)

これで、ドラムだけといったキューになります。

## まとめ2
アクションでキューを指定する
ミュートアクションを使う
トラックインデックスを指定する

## ミュートアクションはフェードもできる
![image](https://qiita-image-store.s3.amazonaws.com/0/96808/d4e6ceda-9e3c-8629-3ef1-b6752eb65e6d.png)
フェード時間で指定できるので、こっちの方が直感的ですね。