omxplayerでデジタルサイネージを作るのだが、再生をloopさせると動画の先頭に戻るときにseek XX:XX:XXが表示されてしまうのに困っていた。--no-osdを付けても出るのである。
色々調べたらわかったのでここにメモしておく。
日本語で書いてあるページは調べるかぎりなかった。
omxplayerは以下のようにpopenで起動するのだが、--no-osdを付けてもseekだけは表示が出てしまって困っていた。
proc = subprocess.Popen('omxplayer --no-osd --refresh --loop --blank -o both /home/pi/demo/demo.mp4',shell=True,stdin=subprocess.PIPE)
そこで色々調べていたら以下のページにたどり着いた。
how to hide omxplayer details.
https://www.raspberrypi.org/forums/viewtopic.php?t=197087
そこにはこう書いてある。OMXのスクリプトを変更せよと。具体的にはこう。
cd /usr/bin
sudo cp omxplayer omxplayer_silent
sudo nano omxplayer_silent
そして、omxplayer_silentのLD_LIBRARY_PATHの行を以下のように変更する。
LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" > /dev/null 2>&1
これで完了。起動するときはsilentの方を実行する。
proc = subprocess.Popen('omxplayer_silent --no-osd --refresh --loop --blank -o both /home/pi/demo/demo.mp4',shell=True,stdin=subprocess.PIPE)
そして、--no-osdをつけるのも忘れずに。これでSEEK表示が出なくなった!
では、楽しいデジタルサイネージライフを!