raspi の omxplayer が超便利。
便利なんだけど、パイプを受け付けてくれないので困る。なぜパイプを受け付けないのか?
omxplayer はキーボードから操作できるから。
キーボードから各種操作が出来るため、キーボードをSTDINに割り振っている。
そのため、標準入力から動画をインプットすることが出来ない。
ということは、キーボード入力を無効化するオプションが有るはず。
–no-keys オプション
マニュアルを見ると、見つかった。
--no-keys Disable keyboard input (prevents hangs for certain TTYs)
キーボードを入力しないオプションを使えば、動画をパイプ経由で渡すことが可能だ。nokey ってのはキーボード
標準入力に動画を渡す
cat my-sample.mp4 | omxplayer --no-keys pipe:0
pipe:0 が標準入力だからいけますね―。コレで勝てる
みたいだけなら、コレで行ける。
操作できないじゃん。
そうなんですよ。パイプで渡せても、キーボード入力を取れないので操作ができません。
仕方ない名前付きパイプだ。
mkfifo ./pipe0001 cat my.mp4 > ./pipe0001 & omxplayer ./pipe0001
コレくらいしか解決方法はなさそう
シーク問題。
でもパイプを使うと、Seekが出来ないから不便だよ?
パイプで渡すと。シークできない。
そうなんですよ~、スキップ操作できないんですよね。コレは不便だよね。 パイプはその特性上後戻りができないファイルなのです・・・
なのでせっかくキーボードが使えるパイプで渡せても、巻き戻しなどが一切できない。とても不便です。
なのでomxplayer を使うときは、パイプよりHTTP経由にしましょう