ホーム » コンピュータ » Linux » Debian » pychromecastを使ってgoogle homeにキャスト

システム

最近の投稿

アーカイブ

カテゴリー

pychromecastを使ってgoogle homeにキャスト

Google Homeを活用を模索するなか、Google Home は chromecast のスピーカーでもあるので、パソコンからchromecastの制御の記事を探してみた。
すると、pychromecast の記事を発見。

$ sudo aptitude install python-pychromecast

記事を参考に python script をコピペしたけど開発がすすんで関数名などが変更となっているようで、github 側の記事をみてちょっとだけ修正。pythonをいつも使っていないので、chromecast の試行錯誤の前に、漢字コードの扱いの方で四苦八苦。

#!/usr/bin/python2                                                                                                  
# -*- coding: utf-8 -*-                                                                                             
from __future__ import print_function
import sys
import re
import time
import pychromecast
#------                                                                                                             
ddev = ""
#------                                                                                                             
args = sys.argv
args.pop(0)

dev = ""    # device                                                                                                
url = ""    # chromecast URL                                                                                        
mtype = ""  # media type                                                                                            

# コマンドライン引数からキャスト内容を取得                                                                          
if len( args ) == 3 :
    dev, url, mtype = args
elif len( args ) == 2 :
    dev, url, mtype = [ ddev ] + args
elif len( args ) == 1 :
    dev = ddev
    url = args[0]
    if re.match( r'\.mp4$' , url ) :
        mtype = 'video/mp4'
    elif re.match( r'\.mp4$' , url ) :
        mtype = 'audio/mp3'
    elif re.match( r'\.jpg$' , url ) :
        mtype = 'image/jpeg'
    elif re.match( r'\.png$' , url ) :
        mtype = 'image/png'

# デバイス一覧を取得                                                                                                
chromecasts = pychromecast.get_chromecasts()
# 指定したデバイスを見つける                                                                                        
cast = next( cc for cc in chromecasts if cc.device.friendly_name.encode( 'utf-8' ) == dev )
cast.wait()
# キャスト開始                                                                                                      
mc = cast.media_controller
mc.play_media( url , mtype )
mc.block_until_active()

Google 検索

My Google   Yahoo

Microsoft

ファンサイト