Raspberr Piに格納した音楽や動画等のメディアファイルを。
PCやスマートフォンのWebブラウザでストリーミング再生できるように。
Raspberry Piでメディアサーバ embyを起動したいと思います。
Podmanで起動する手順を記録しておこうと思います。
Ubuntu 20.04.1 LTSのインストール
Raspberry Pi 4のOSですが。サーバとして長期間安定して使用できるように、microSDカードは使わず、USBストレージからUbuntuを起動しました。USBストレージに格納したメディアファイルをストリーミング再生する機能を、Podmanで起動してみましょう、という流れになります。
Podmanのインストール
こちらの手順でPodmanをインストールします。
emby公式イメージ
こちらの公式イメージを使用させて頂こうと思います。
Raspberry Piのハードウェアアクセラレーションに対応しており、たとえば「–device /dev/video10:/dev/video10」を付加するとハードウェアエンコードに対応するようですが。
こちらの記事に記載させて頂いたように、64ビット環境では微妙かもしれませんので、ここでは最低限の設定を行わせて頂きました。
メディアサーバemby起動設定
※21.1.31追記:
Podmanのバージョンアップの影響で、下記のYAMLファイルではポッドが正常に起動できない場合があります。
その場合、ポッドを手動で作成後、YAMLファイルを出力する必要が御座います。
手順は下記の記事を御覧ください。
ポッドの実行に使用する、Kubernetesのpod.yaml設定ファイルを作成します。
mkdir emby
cd emby
vi emby-pod.yaml
次の内容になります。
# Generation of Kubernetes YAML is still under development!
#
# Save the output of this file and use kubectl create -f to import
# it into Kubernetes.
#
# Created with podman-2.0.6
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: "2020-09-20T09:02:59Z"
labels:
app: emby-pod
name: emby-pod
spec:
containers:
- name: emby-app
env:
- name: PGID
value: "1000"
- name: PUID
value: "1000"
- name: LANG
value: ja_JP.UTF-8
- name: LANGUAGE
value: ja_JP.UTF-8
- name: TZ
value: Asia/Tokyo
image: docker.io/linuxserver/emby:latest
ports:
- containerPort: 8096
hostPort: 8096
protocol: TCP
- containerPort: 8920
hostPort: 8920
protocol: TCP
resources: {}
securityContext:
allowPrivilegeEscalation: true
capabilities: {}
privileged: false
readOnlyRootFilesystem: false
seLinuxOptions: {}
volumeMounts:
- mountPath: /data/tvshows
name: home-ubuntu-emby-tvshows
- mountPath: /config
name: home-ubuntu-emby-config
workingDir: /
volumes:
- hostPath:
path: /home/ubuntu/emby/tvshows
type: Directory
name: home-ubuntu-emby-tvshows
- hostPath:
path: /home/ubuntu/emby/config
type: Directory
name: home-ubuntu-emby-config
status: {}
volumesはconfigとtvshowsをマウントしています。configは設定の永続化に必要です。tvshows以外に下記の設定が使用可能のようです。
-v /path/to/library:/config \
-v /path/to/tvshows:/data/tvshows \
-v /path/to/movies:/data/movies \
-v /path/for/transcoding:/transcode `#optional` \
-v /opt/vc/lib:/opt/vc/lib `#optional` \
このあたりはメディアを格納するディレクトリに合わせて調整してみて下さい。
永続化するディレクトリを作成後、ポッドを起動します。
mkdir config tvshows
sudo podman play kube ./emby-pod.yaml
# コピペ用
sudo podman ps
sudo podman pod ls
sudo podman pod stop emby-pod
sudo podman pod rm emby-pod
このような感じで、Raspberry Pi 4のaarch64版Ubuntu 20.04.1 LTSで特に問題なく起動しました。
Webブラウザでメイン画面にアクセスします。
http://<Raspberry PiのIPアドレス>:8096/
先程tvshowsディレクトリをマウントしましたが、設定→ライブラリ→「+New Library」で/data/tvshowsを追加する必要があります。
設定が完了すると、このような感じで、ディレクトリ内のメディアのサムネイルが表示されるかと思います。
先日作成した録画環境をストリーミングしようと思ったのですが、いまのところうまく動作していません。
embyのエンコード設定を調整する必要がある感じですが。そのあたりは追々試したいと思います。