Windowsをホームサーバーにします。
ラズパイ側でコマンドを作って送信、Windows側で音源や動画を再生したりしてもらいます。
音声認識でコマンドを作る場合JuliusとGoogle Assistantの連携
今回はコマンドを作成した後工程です。
●音楽再生
●動画再生
この3つをやりたい!
オープンソースということで、これを使ってみます。
いろいろなプラットフォームで使えます、Windowsにもインストーラーが用意されています。ダウンロードしてインストールしておきます。
Pythonインターフェースを使ってみます(Pythonモジュール)。
python-vlc (libvlcのpythonバインディング)
Anaconda Promptで以下実行
$pip install python-vlc
このモジュールを使えば、VLCを起動しておかなくても、インストールしたVLCから勝手に必要なライブラリーを読み込んで使うようです。
音源再生
1 2 3 4 5 6 7 |
import vlc p = vlc.MediaPlayer() music = r"c:\Music\ICouldHaveDancedAllNight.wav" p.set_mrl(music ) p.play() |
1 2 3 4 5 6 7 8 9 10 11 12 |
# 一時停止 止まっているときに呼べば再生を再開 p.pause() # 開始からの経過時間を取得(ms) p.get_time() # 指定した秒数(ms)にセット p.set_time(1000) # 停止 p.stop() |
動画再生
1 2 3 4 5 6 7 |
import vlc p = vlc.MediaPlayer() movie = r"c:\Video\DeepLearning.mp4" p.set_mrl(movie) p.play() |
1 2 3 4 5 6 7 8 9 10 11 |
# 一時停止 止まっているときに呼べば再生を再開 p.pause() # 開始からの経過時間を取得(ms) p.get_time() # 指定した秒数(ms)にセット p.set_time(1000) # 停止 p.stop() |
ストリーミング
VLCにはストリーミングの機能もあります。
マルチキャストでストリーミング
【クライアント側】
media playerをインストール。
起動しておきます。
メディア->ネットワークストリームを開く->ネットワークのタブ
ネットワークプロトコルにマルチキャストアドレスを入力->rtp://239.255.0.1
再生ボタンで待ち受け
【サーバー側】
rtpプロトコルを使います。
マルチキャストのアドレスは239.255.0.1
ポートは5004を使います。
このポート番号はVLCのインストール版実行ファイル起動後、マニュアルでストリーミング設定する際に参照したものです。
1 2 3 4 5 6 7 8 9 10 11 |
import vlc instance = vlc.Instance() player = instance.media_player_new() options = 'sout=#duplicate{dst=rtp{access=udp,mux=ts,dst=239.255.0.1,port=5004},dst=display}' #Load media with streaming options movie = r"c:\Video\DeepLearning.mp4" media = instance.media_new(movie, options) player.set_media(media) player.play() |
これで、DeepLearning.mp4という動画がマルチキャストで配信されます。
音源のストリーミングも同じです。
ただ、wavではうまく配信できませんでした。mp3かmp4でお試しください。
ちなみに、ラズパイのUSBカメラでライブ・ストリーミングする場合
あるいは、ラズパイのUSBマイクでライブ・ストリーミングする場合
ChromecastでTV
Chromecastを使う理由(Fire TVやStickでもいいのだけど)
PythonでFire TV (Stick)を制御したい場合はこのサイト(GitHub)参照
YoutubeやDAZN、Netflixなどを観るだけでなくローカルに保存しておいた動画もTVで観ましょう….ということで。
Chromecastはまだ持ってないので入手したら追記します。
PythonでChromecastを制御したい場合はこのサイト(GitHub)参照
準備中
地上波やケーブルTVを普通に見る場合は、赤外線リモコンで制御します。
ON・OFFしたりチャンネルを変えてみたり…….。
Windowsをホームサーバーにする
ラズパイからコマンドを送ってWindowsにいろいろやってもらう(1)
WindowsでWebブラウジング
ラズパイからコマンドを送ってWindowsにいろいろやってもらう(2)
Windowsに接続しているサーマルプリンターでメッセージを印刷(プリントサーバー)
ラズパイからコマンドを送ってWindowsにいろいろやってもらう(3)
Windowsに保存した音源やビデオ再生、ストリーミング(メディアサーバー)
ラズパイからコマンドを送ってWindowsにいろいろやってもらう(4)
Windowsに接続した学習リモコンで家電制御(リモコンサーバー)
それぞれのWindowsなどの端末にメッセージを同時配信
Leave a Reply