はじめに
プログラマーならば、テクノ・ミュージック、ですよね。
とてもとてもニッチな小ネタだけれども、誰かの役に立てれば。
自分は、作業用音楽として、Digitally Importedの Tech Houseを溺愛している。
テクノ・ミュージックを聴くと、テンション上がって作業がとても捗るのだ。Google Homeを購入したので、せっかくいいスピーカーなので、これで聴きたい!
ということで、Digitally ImportedのTech House のチャンネルを聴く方法を試した。もちろん、同様の方法は、JazzRadioでもいける。
ChromeCastできくとwifiが切れる
まず思い付いた方法は、Google Chromeのキャスト機能を利用して、Google Chromeで流れている音楽をGoogle Homeに転送して聴く方法。
これでうまく行った、と思いきや、なぜかwifiが1分もするとブツブツ切れてしまう。失敗。
iPhone経路で聴くことに成功
調査を続けると、Digitally Imported が Chromecastをサポートしているとのこと。
- Digitally Imported Radio supports Chromecast and somehow I missed it - Ausdroid
- Digitally Imported Radio (DI.FM) Gets Google Cast Support In Latest Update
試しに、iPhoneアプリを起動してみて、上記記事のようなアイコンを押すと、なんと流れた!おおーっ。
パソコン経由で聴くことに成功
欲を入れば、OK Google, テクノ・ミュージックかけて、で音楽を流したい。なので、パソコンからやる方法を調べた。pychromecastを使えばいけた。
まずは、digitally importedのstream urlをしらべる。
次に以下のスクリプトを書いた。
#!/usr/bin/env python
import pychromecast
def play_mp4(url):
cast.wait()
mc = cast.media_controller
mc.play_media(url, 'audio/mp4')
mc.block_until_active()
chromecast_name = "Main"
chromecasts = pychromecast.get_chromecasts()
cast = next(cc for cc in chromecasts if cc.device.friendly_name == chromecast_name)
play_mp4("https://pub2.diforfree.org:8000/di_techhouse_hi")
これを実行すると、Tech Houseが流れた。いえい!あとは、こことかでやった方法を応用して、声のインタフェースを用意すれば完成!