【 第19回 】AudacityでScratchの音源をステレオ化!

0
1165

【 第18回 】で、100均のスピーカーから出る音がステレオになったのに、残念ながらScratchの音源は全てモノラルでした。そこで、”Audacity”というアプリを使ってモノラルの音声データを疑似ステレオ化してみました。

実体配線図

使用する部品、回路共、【第18回】と同じです。

右の回路図を見ると、GPIO12の出力:PWMの”0″チャンネルが右で、GPIO13の出力:PWMの”1″チャンネルが左になっています。

Audacityのインストール

タスクバー左端のメニューアイコンから「設定」→「Add  /  Remove  Software」をクリックし、起動します。画面左上の検索枠に”audacity”と入力して「Enter」キーを押すと、しばらくして右ペインに検索結果が表示されるので、その中から”audacity”のチェックボックスにチェックを入れ、画面右下の「Apply」ボタンをクリックします。

「認証待ち」画面に続いて「認証」画面が現れるので、【STEP-09】で設定したパスワードを入力し、「OK」ボタンをクリックします。

認証が終わると、「パッケージをダウンロード中」画面が表示されます。

インストールが終わったら、”audacity”のチェックボックスにチェックが入っていることを確認して「OK」ボタンをクリックし、閉じます。

Audacityを起動し、設定を確認する

タスクバー左端のメニューアイコンから「サウンドとビデオ」→「Audacity」をクリックして起動すると、「Audacityへようこそ!」画面が現れるので、「このメッセージを次回からは開始時に表示しない」のチェックボックスにチェックを入れて、「OK」ボタンをクリックし、閉じます。

続けて、「Audacity」の編集画面が開くので、「編集」→「設定」をクリックします。

「設定:デバイス」画面が開くので、「インターフェース」と「再生デバイス」を確認しておきます。

左ペインの「品質」をクリックします。

「設定:品質」画面が開くので、各設定項目を確認しておきます。

左ペインの「トラック」をクリックします。

「設定:トラック」画面が開くので、「トラックを縦にズームして自動的に合わせる」のチェックボックスにチェックを入れます。

左ペインの「書き込み/書き出し」をクリックします。

「設定:書き込み/書き出し」画面が開くので、各設定項目を確認し、「OK」ボタンをクリックして閉じます。

「Audacity」の編集画面に戻って、「エフェクト」→「プラグインの追加/削除」をクリックします。

Audacityにデフォルトで有効になっているエフェクトが一覧で表示されます。

エフェクトを確認したら「OK」ボタンをクリックして閉じます。

Scratchの音源をステレオ化する

「Audacity」の編集画面に戻って、「ファイル」→「開く…」をクリックします。

「1つもしくは複数のオーディオファイルを選択してください…」画面が現れるので、Scratchの音源ファイルが保存されているディレクトリに移動します。

先ず、画面右上の「<」ボタンを2回、クリックします。

右ペインの「usr」をダブルクリックします。

右ペインの「share」をダブルクリックします。

右ペインの「scratch」をダブルクリックします。

右ペインの「Media」をダブルクリックします。

右ペインの「Sounds」をダブルクリックします。

ここが、Scratchの音源ファイルの保存先で、ジャンル別に分類されている中から「Music Loops」をダブルクリックします。

取り敢えず、”Techno2.mp3″を選択して「開く」ボタンをクリックしました。

「Audacity」の編集画面に戻ると、”Techno2.mp3″の波形が表示されているので、「編集」→「コピー」をクリックします。

続けて、「編集」→「複製」をクリックします。

編集画面に複製された2本のトラックが表示されるので、上のトラックの左上にある「▼」をクリックして出てくるメニューから「ステレオトラックの作成」をクリックします。

「ステレオトラックの作成」が終わったら、「ファイル」→「オーディオの書き出し」をクリックします。

現れた「オーディオの書き出し」画面の中段右側にある「WAV(Microsoft) 32 bit PCM 符号あり ▼」をクリックして出てくるメニューから「MP3 ファイル」を選択します。

「オーディオの書き出し」画面の下にある「フォーマットオプション」の「ビットレートモード:」の「一定」のラジオボタンをクリックして選択します。

続けて、「フォーマットオプション」の「品質」の「標準, 170-210kbps ▼」をクリックして出てくるメニューから「64kbps」を選択します。

「フォーマットオプション」の「チャンネルモード:」の「ステレオ」のラジオボタンをクリックして選択します。

ステレオ化した音源ファイルは、元の保存先に上書き保存できないので、取り敢えず、保存先として「Desktop」をダブルクリックし、選択しておきます。

項目「名前:」の入力欄には、”Techno2.aiff”と入力されていますが、拡張子は不要なので、”.aiff”を削除して”Techno2″に書き換えた上で、「保存」ボタンをクリックして閉じます。

続けて、「メタデータを編集」画面が現われますが、編集する必要はないので、このまま「OK」ボタンをクリックして閉じます。

「Audacity」の編集画面に戻るので、右上の「×」をクリックして閉じます。

「変更を保存しますか?」画面が現われれますが、既に保存しているので、「いいえ」ボタンをクリックして閉じます。

ステレオ化した音源ファイルを元の保存先に上書き保存する

LXTerminalを起動し、コマンド”cp -f”で音源ファイルを強制上書きします。行末に半角スペースを置いておきます。

sudo cp -f

先程、Desktopに保存しておいた音源ファイル”Techno2.mp3″を右クリックして出てくるメニューから「パスをコピーする」を選択します。

LXTerminal画面に戻って、行末で右クリックして出てくるメニューから「貼り付け」を選択します。

貼り付けた後に半角スペースとダブルクォーテーションを入力しておきます。

sudo cp -f /home/pi/Desktop/Techno2.mp3 "

ファイルマネージャを起動し、Scratchの音源ファイルが保存されているディレクトリに移動します。

先ず、画面上の「↑」ボタンを2回、クリックします。

右ペインの「usr」をダブルクリックします。

右ペインの「share」をダブルクリックします。

右ペインの「scratch」をダブルクリックします。

右ペインの「Media」をダブルクリックします。

右ペインの「Sounds」をダブルクリックします。

ここが、Scratchの音源ファイルの保存先で、ジャンル別に分類されている中から「Music Loops」をダブルクリックします。

先程、ステレオ化した音源ファイルで上書きした”Techno2.mp3″を右クリックして、出てくるメニューから「パスをコピーする」を選択します。。

LXTerminal画面に戻って、行末で右クリックして出てくるメニューから「貼り付け」を選択します。

貼り付けた後に、ダブルクォーテーションを入力して「Enter」キーを押します。ディレクトリ名”Music Loops”に半角スペースが含まれているので、パス全体をダブルクォーテーションで囲わないとパスが通りません。

sudo cp -f /home/pi/Desktop/Techno2.mp3 "/usr/share/scratch/Media/Sounds/Music Loops/Techno2.mp3"

本当にステレオ化した音源ファイルで上書きされているか確かめる為、ファイルマネージャ画面に戻り、”Techno2.mp3″を右クリックして出てくるメニューから「アプリケーションで開く」を選択します。

「アプリケーションの選択」画面が現われるので、「サウンドとビデオ」の「+」をクリックして「Audacity」を選択し、「OK」ボタンをクリックして閉じます。

「Audacity」画面が開いて、ちゃんと左右2トラックのステレオ音声になっていることが確認できました。

GPIO12とGPIO13の出力モードをハードウェアPWMに設定する

LXTerminalを起動し、コマンド”gpio -g mode”でGPIO12とGPIO13の出力モードをハードウェアPWMに設定します。

gpio -g mode 12 pwm
gpio -g mode 13 pwm

Scratch 2.0Nの音ライブラリーから出力してみる

Scratch 2.0を起動して、スクリプトエリアのタブ「音」を開き、左上のスピーカーアイコンをクリックします。

「音ライブラリー」画面が開くので、左側のカテゴリーから「音楽のループ」をクリックします。

ステレオ化した音源ファイルで上書きした”Techno2″を選択し、「OK」ボタンをクリックして閉じます。

選択した”Techno2″がスクリプトエリアの波形欄に表示されているので、「▶」ボタンをクリックして音声を出力します。左右の100均スピーカーから音が出ましたが、正直言ってステレオかどうかは分かりませんでした。

GPIO12とGPIO13を既定の入力モードに戻しておく

LXTerminal画面に戻って次のコマンドを実行し、GPIO12とGPIO13を既定の入力モードに戻しておきます

gpio -g mode 12 in
gpio -g mode 13 in