![見出し画像](https://assets.st-note.com/production/uploads/images/130628782/rectangle_large_type_2_b46d6058a5d60d1aa9aa013d3843e712.png?width=1200)
Xスペースのタイマー自動録音①
今週の水曜日にプレゼンのためにほぼ1日、家を空けることになり、不在に備えていろいろプログラムを作ることになりました。
X(Twitter)のSpacesを自動録音するソリューション
X上のSpacesで不定期開催されている、音声番組「あのコン」。これまでも、実家に行く用事があった場合にはサブマシンのMacBook Airを持って実家で聞いたりしていたのですが、今回のお出かけは遠方であるため行き帰りが上越新幹線。トンネル率が高く、ネット接続は望むべくもありません。
毎回、私的に録音を行なっているのですが、その方法は仮想音声デバイス(BlackHole)をインストールして実現。
macOS標準装備の「オーディオMIDI設定」で、スピーカーとBlackHoleに同時出力するデバイスを新規登録。Webブラウザからの出力音声をスピーカーから出しつつ、仮想デバイスにも同時出力。
![](https://assets.st-note.com/img/1707721620813-DLwT08wx6C.png?width=1200)
その仮想デバイスへの音声出力をQuickTime Playerの音声入力に指定し、「スピーカーで聴きながら、録音も行う」という格好です。
BlackHole
https://github.com/ExistentialAudio/BlackHole
自動でXのSpaces(音声チャット)に参加する
不在のときにも、指定時刻に指定のアカウントが開催しているSpacesを検出して、Spacesに参加して内容を録音してくれるAppleScriptを書いてみました。
まだ、通しで連結テストはしていないのですが……
・指定時刻に指定のハンドラを実行するAppleScript(NSTimerを利用)
・QuickTime Playerでオーディオ録音を開始するAppleScript
![](https://assets.st-note.com/img/1707721475371-SyU3Lu9Z2K.png)
・SafariでTwitterをオープンして、指定アカウントが開催しているSpacesがあれば参加するAppleScript
![](https://assets.st-note.com/img/1707721514054-93Jx9QDx0l.png)
・不在であることを示すために、定型文をX(Twitter)に投稿するAppleScript
![](https://assets.st-note.com/img/1707721540960-nOnnCx77Mk.png?width=1200)
【無人聴取テスト】(本人は不在です)
— Piyomaru 𝕏 (@Piyomaru) February 9, 2024
の3本を書いたり使いまわしたりで用意したので、多分これで撮れることでしょう。トラブルが起こって失敗しても、その失敗は今後の糧になるとかならないとか。
失敗したときに理由がわかるように、
・画面キャプチャを撮ってスマホのメールアカウントにメールで画像を送信するAppleScript
も用意しておくといいのかも。
技術的には別に大したことはないものの、こういう問題を解決する方法がないので、解決したのはいいことです(多分)。
Macってこんなふうに標準のOSのソフトウェアを動かして、手軽にシステム構築できるのがメリットだと思っています。勘所さえ押さえれば、たいへんに手軽です。