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にシャットダウンボタンを実装する

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

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

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

このブログの記事が紹介されました!

目次1 自分の書いた記事が・・2 紹介されました 自分の書いた記事が・・   表題のままなのですが、このブログの記事が…

中国製の怪しいエミュレータ機を買ってみた。2台目

目次1 中国製エミュレータ2台目購入2 所感3 romの追加方法は・・ 中国製エミュレータ2台目購入 ついこの前に、買ったばかり…

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

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

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

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

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

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

エミュレータランチャーCoinOps導入

目次1 CoinOpsとは2 CoinOps導入基本3 エミュレータの追加3.1 フォルダ構成 CoinOpsとは CoinOpsとは数あるPC用のエミュレー…