RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Arcade Ambience MP3

    Scheduled Pinned Locked Moved Ideas and Development
    mp3ambientbackgroundmusic
    23 Posts 14 Posters 13.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      backstander @MapleStory
      last edited by

      @MapleStory
      You also need to make the script executable:

      chmod +x /home/pi/bgm.sh
      
      MapleStoryM 1 Reply Last reply Reply Quote 2
      • MapleStoryM
        MapleStory @backstander
        last edited by

        @backstander said in Arcade Ambience MP3:

        chmod +x /home/pi/bgm.sh

        That did the trick, huge thanks for that! Just one last thing. Is there some way to lower music volume to say, 70%? The music comes out blasting sometimes after playing a game. haha

        B 1 Reply Last reply Reply Quote 1
        • B
          backstander @MapleStory
          last edited by

          @MapleStory

          There's an alternate RetroPie BGM python script by @Livewire that has an option to set a volume and fade out & in:
          https://retropie.org.uk/forum/topic/347/background-music-continued-from-help-support

          I believe all he is doing is added mixer.music.set_volume(70); to set the volume to 70%

          I'm not much of a python programmer so I'm not sure if you'd need to run sudo apt-get install python-pygame first for this to work or not.

          synackS 1 Reply Last reply Reply Quote 0
          • synackS
            synack @backstander
            last edited by synack

            It looks like @Livewire put some thought into his setup, definitely worth checking out.

            However, I'm probably going to stick with what I know. Using the runcommand-onend.sh script mentioned earlier in the thread, another quick and easy method for BGM would be the following (and doesn't require checking for various processes every couple of seconds)

            1. edit /etc/rc.local and insert the following before the "exit 0" line
            (sleep 10; sudo -u pi mpg123 -Z /home/pi/bgm/*.mp3 >/dev/null 2>&1) &
            

            change the sleep time as needed before music starts playing
            2) edit/create /opt/retropie/configs/all/runcommand-onstart.sh and add the following

            pkill -STOP mpg123
            
            1. edit/create /opt/retropie/configs/all/runcommand-onend.sh and add the following
            pkill -CONT mpg123
            
            1. make sure both scripts are executable
            chmod a+x /opt/retropie/configs/all/runcommand-onstart.sh
            chmod a+x /opt/retropie/configs/all/runcommand-onend.sh
            

            If you wanted to play music based on the system you're exiting, instead of adding the command above to runcommand-onend.sh, you can add a check like the following and then play mp3s from the desired directory

            if [[ $1 == *mame* ]]; then
              pkill mpg123
              mpg123 -Z /path/to/mame/mp3s/*.mp3 >/dev/null 2>&1 &
            else
              pkill -CONT mpg123
            fi
            
            1 Reply Last reply Reply Quote 2
            • D
              df13 @synack
              last edited by

              @synack I like your script a lot since it's just an mp3 player in the background. However, I had an idea.
              Although ES doesn't detect what menu you're on, the theme should detect it right? If so, would it be possible to alter the .xml of the theme and tell it to play a certain folder of bg music?

              I know very little about programming so I could be way off, but it's just an idea.
              Thanks for the script by the way!

              synackS 1 Reply Last reply Reply Quote 1
              • synackS
                synack @df13
                last edited by

                @df13 Unfortunately no, it doesn't work like that since the music playing is completely external. If ES accessed the individual XML files every time a new system was selected it would be possible using the 'last accessed time' of the files, but ES loads all of the files upon startup.

                D 1 Reply Last reply Reply Quote 0
                • K
                  kcsims
                  last edited by

                  when running arcade games using pifba emulator, the music doesn't stop playing...any fix?

                  1 Reply Last reply Reply Quote 0
                  • D
                    deadeye @synack
                    last edited by

                    @synack This is actually a really great and simple solution... But I'm not sure if I'm going crazy or not, but it doesn't seem to kill mpg123 if I boot up Kodi. Not sure why that would be.

                    synackS 1 Reply Last reply Reply Quote 0
                    • synackS
                      synack @deadeye
                      last edited by

                      @deadeye I don't know either. Is it only with Kodi? I also use it and have confirmed it works on my side.

                      Make sure you're using the latest version of the runcommand script and ensure /opt/retropie/configs/all/runcommand-onstart.sh contains pkill -STOP mpg123

                      D 2 Replies Last reply Reply Quote 1
                      • D
                        deadeye @synack
                        last edited by

                        @synack thanks - yeah, it works for everything else. I tried both iterations you posted. The first didn't kill when loading up n64/kodi, the latter just kodi. I'll try updating and see if that changes anything. I'll post back to confirm. Cheers.

                        K 1 Reply Last reply Reply Quote 0
                        • D
                          deadeye @synack
                          last edited by

                          @synack Ah, figured it out. It's only an issue if KODI is launched as an emulator. If I launch it through the Ports, it kills the music.

                          1 Reply Last reply Reply Quote 0
                          • K
                            kcsims @deadeye
                            last edited by

                            @deadeye mine does not stop the music with certain arcade emulators. Is there a setting I'm missing?

                            1 Reply Last reply Reply Quote 0
                            • fnkngrvF
                              fnkngrv
                              last edited by

                              @synack I see there is a command on that other gent's thread for setting the volume level:

                              mixer.music.set_volume(70)

                              It is in the post that @backstander made about the .py script.

                              Would you happen to know how to integrate that command or one like it into your setup? The fact that the music is so loud is kind of a bummer and of course it does play over the game snap music which kind of sucks too.

                              Thanks in advance if you have any ideas!

                              1 Reply Last reply Reply Quote 0
                              • W
                                westleigh77 @synack
                                last edited by

                                @synack If you have a solution that would be amazing!

                                1 Reply Last reply Reply Quote 0
                                • First post
                                  Last post

                                Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.