はじめに

プログラマーならば、テクノ・ミュージック、ですよね。

とてもとてもニッチな小ネタだけれども、誰かの役に立てれば。

自分は、作業用音楽として、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をサポートしているとのこと。

試しに、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が流れた。いえい!あとは、こことかでやった方法を応用して、声のインタフェースを用意すれば完成!