raspi上で動くスマートリモコン&メディアプレーヤを作成しました。
セットアップ手順も作成しています。
初心者向けに作成しているつもりなので興味があればレッツトライ!
ちょっとだけ初期費用はかかりますけど今時の中学生のおこづかいで買えるかもしれません。
※お父さんのおこづかいで買えるかはわかりません!!
全体図
画面見本
寝室のエアコンとライト
寝室のプロジェクタ
こどものねかしつけに便利なプロジェクタ ステータスは持たない
リビングのエアコンとライトとモニター
リビングのメディアプレーヤ
- 再生/一時停止/停止/バックスキップ/フォワードスキップが可能
- 再生位置の同期機能
- ファイルアップロード(同一ファイル名はアップロード不可)
- ビデオのタップでスマホ上で再生
- ビデオのロングタップで再生対象か対象外かを切り替え
機能概要
-
raspi4
- ウェブサーバ・・・スマホと各種機能の仲介処理
- メディアサーバ・・モニターにビデオを出力。再生状況をウェブサーバ経由でスマホ側に送信。
- ファイルサーバ・・ファイルを保存。ファイル一覧をウェブサーバ経由でスマホ側に送信。
- デバイスサーバ・・IR情報を各部屋にあるIR送信サーバに転送。家電情報をウェブサーバ経由でスマホ側に送信。
-
raspiZero
- リビングと寝室に設置。デバイスサーバから送信されたIR情報を赤外線にして家電を操作。
実装概要
-
raspi4
- ウェブサーバ・・・go(echo&webSocket), grpc※
- メディアサーバ・・vlc(libvlc-go), grpc※
- ファイルサーバ・・ファイル情報をjson保存, grpc※
- デバイスサーバ・・IR送信サーバへhttp:getリクエストで送信, grpc※
※サーバ間通信
-
raspiZero
- getリクエストで受け取った情報を赤外線に変換して送信
リンク
ソースコード
こちら参照
※リンク切れてました。。
リンク
セットアップ
共通設計
サーバ
以下参照
ウェブサーバ
ファイルサーバ
メディアサーバ
デバイスサーバ
ブラウザ
引用元
参考にした記事はたくさんあるのですが、メモってなかったので時間のあるときに追加します。