エクステンション等を使わない私のやりかたとしてですが
まず アプリケーションのプロパティで
“フレームをまたいでサウンドを再生” にチェックします
BGMの管理はグローバルイベントで行います
効果音と違い重ねて再生する事は無いと思うのでCHは固定します
BGMのIDを入れる [再生中] [リクエスト] の変数2つを用意します
BGMID = 0(停止) 1~(各曲) として管理します
・各フレームのイベントから [リクエスト] を入力
・(グローバルイベント)
CHが再生中で [リクエスト] が 0 もしくは
[リクエスト] と [再生中] が異なる場合CH停止
・(グローバルイベント)
CHが停止中で [リクエスト] が 1 以上の場合
[リクエスト] を再生し 値を [再生中] に上書き
といった具合です
[リクエスト] と [再生中] が異なる時に CH音量を下げていき
CH音量=0 の時にCH停止 などとすれば
フェードアウトからBGM切替等も再現できます
この場合は切替時にCH音量を戻すのを忘れずに