Gadget Goods・Gadget・Tool

RetroPie4.5.1に起動時のSplashscreenを入れる方法

 

下記の記事でラズベリーパイ4にRetroPie4.5.1をインストールしましたが、
ラズベリーパイ4には正式対応していない為、起動時にSplashscreenが表示されません。
英語サイトから情報を集めた所、「insserv」が必要なパッケージの1つがRaspberryPi44で使用できなくなった為だそうです。
詳細は良くわかりませんが、サービスの問題なのでしょうかね。

RetroPie起動時のSplashScreenは、かなり好きなので、どうしても導入したく、
英語サイトで情報収集し、
下記の方法でSplashscreenが使えるようになりました。

sudo apt-get install fbi omxplayer -y
sudo nano /etc/systemd/system/asplashscreen.service

上記nanoコマンドからの編集モードになるので下記内容を記入。

[Unit]
Description=Show custom splashscreen
DefaultDependencies=no
Before=local-fs-pre.target
Wants=local-fs-pre.target
ConditionPathExists=/opt/retropie/supplementary/splashscreen/asplashscreen.sh

[Service]
Type=oneshot
ExecStart=/opt/retropie/supplementary/splashscreen/asplashscreen.sh
RemainAfterExit=yes

[Install]
WantedBy=sysinit.target

保存し(ctrl+O)nano編集モードから抜け(ctrl+X)、下記コマンド実行。

sudo mkdir /opt/retropie/supplementary/splashscreen
sudo nano /opt/retropie/supplementary/splashscreen/asplashscreen.sh

上記nanoコマンドからの編集モードになるので下記内容を記入。

#!/bin/sh
ROOTDIR="/opt/retropie"
DATADIR="/home/pi/RetroPie"
RANDOMIZE="disabled"
REGEX_VIDEO="\.avi\|\.mov\|\.mp4\|\.mkv\|\.3gp\|\.mpg\|\.mp3\|\.wav\|\.m4a\|\.aac\|\.ogg\|\.flac"
REGEX_IMAGE="\.bmp\|\.jpg\|\.jpeg\|\.gif\|\.png\|\.ppm\|\.tiff\|\.webp"

do_start () {
    local config="/etc/splashscreen.list"
    local line
    local re="$REGEX_VIDEO\|$REGEX_IMAGE"
    case "$RANDOMIZE" in
        disabled)
            line="$(head -1 "$config")"
            ;;
        retropie)
            line="$(find "$ROOTDIR/supplementary/splashscreen" -type f | grep "$re" | shuf -n1)"
            ;;
        custom)
            line="$(find "$DATADIR/splashscreens" -type f | grep "$re" | shuf -n1)"
            ;;
        all)
            line="$(find "$ROOTDIR/supplementary/splashscreen" "$DATADIR/splashscreens" -type f | grep "$re" | shuf -n1)"
            ;;
        list)
            line="$(cat "$config" | shuf -n1)"
            ;;
    esac
    if $(echo "$line" | grep -q "$REGEX_VIDEO"); then
        # wait for dbus
        while ! pgrep "dbus" >/dev/null; do
            sleep 1
        done
        omxplayer -o both -b --layer 10000 "$line"
    elif $(echo "$line" | grep -q "$REGEX_IMAGE"); then
        if [ "$RANDOMIZE" = "disabled" ]; then
            local count=$(wc -l <"$config") else local count=1 fi [ $count -eq 0 ] && count=1 [ $count -gt 20 ] && count=20 local delay=$((20/count)) if [ "$RANDOMIZE" = "disabled" ]; then fbi -T 2 -once -t $delay -noverbose -a -l "$config" >/dev/null 2>&1
        else
            fbi -T 2 -once -t $delay -noverbose -a "$line" >/dev/null 2>&1
        fi
    fi
    exit 0
}

case "$1" in
    start|"")
        do_start &
        ;;
    restart|reload|force-reload)
        echo "Error: argument '$1' not supported" >&2
        exit 3
       ;;
    stop)
        # No-op
        ;;
    status)
        exit 0
        ;;
    *)
        echo "Usage: asplashscreen [start|stop]" >&2
        exit 3
        ;;
esac

:

保存し(ctrl+O)nano編集モードから抜け(ctrl+X)、下記コマンド実行。

sudo chmod a+x /opt/retropie/supplementary/splashscreen/asplashscreen.sh
mkdir /home/pi/RetroPie/splashscreens
sudo chmod 777 /home/pi/RetroPie/splashscreens

2行目のmkdirはデフォルトで既に存在しているので実行は不要かと思います。

下記のサイトでデフォルトのSplashScreenが公開されています。

同一無線LANにあるWindowsPCから下記のようにsplashscreenフォルダが見えるので、
そこにpngファイルをコピーするのが楽です。

下記コマンドでsplashscreen.listファイルを作成。

sudo nano /etc/splashscreen.list

編集モードでsplashscreenフォルダにコピーしたファイルのフルパスを記入
(例)
/home/pi/RetroPie/splashscreens/retropie-2015.png

保存し(ctrl+O)nano編集モードから抜け(ctrl+X)、下記コマンドを実行。

sudo systemctl enable asplashscreen.service

 

これで完了です。

youtubeなどで自作のSplashScreenVIDEOなども使用できます。
youtubeの動画をオンラインで変換してダウンロードできるサイト等を使用し、
ダウンロードしたmp4をsplashscreenフォルダにコピーし、
splashscreen.listにフルパスのファイル名を記入するだけです。

-Gadget, Goods・Gadget・Tool


comment

メールアドレスが公開されることはありません。

関連記事

中国製ノーブランド コインセレクターをRetroPieで使うには

RetroPieでコインセレクターを使って、RetroPieをゲームセンター筐体化をしようと思ってます。 アメリカなどではArcade Cabi…

RetroPie4.6がリリース。RaspberryPi4に正式に対応しました。

  RetroPie4.6がリリースされました。 ついにRaspberryPi4に正式に対応です。 RetroPie 4.6 released with Raspberry P…

そうだ、ゲーセン筐体を作ろう

  目次1 自作ゲーセン筐体を作ろう2 製作過程 自作ゲーセン筐体を作ろう 外出自粛で家に篭ってます。 時間もあるので、…

RetroPieにシャットダウンボタンを実装する

  Raspberry Pi RetroPie Shutdown Button 超簡単   STARTボタンからシャットダウンするより、ボタンでシャット…

携帯するのにぴったりの極小マウス

目次1 なんなんだこれは2 そして購入してみた なんなんだこれは   これなんだと思いますか? 大きさの対比として眼鏡の…

RetroPie4.5のscraper設定で苦労する

  目次1 scraperでプレビュー動画を設定しよう2 SCRAPERの設定3 もう一つのSCRAPER(skyscraper)の実行方法4 SCRAPER後…

3MダイノックシートをMDFに貼ってみた

  現在アーケード筐体(テーブル筐体)を製作中で、MDFにダイノックシートを貼ってみました。 ダイノックシートは壁紙な…

GeekBuyingでGPD Pocket2を購入してみた

目次1 あまり評判は良くないGeekBuying.com2 不安ながらもポチってみた あまり評判は良くないGeekBuying.com GeekBuying ネ…