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

    Quick and easy guide for adding music to Emulatonstation on RetroPie. Noob friendly!

    Scheduled Pinned Locked Moved General Discussion and Gaming
    musicbgmsynackguide
    165 Posts 59 Posters 115.5k 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.
    • mituM
      mitu Global Moderator @BobHarris
      last edited by mitu

      @bobharris Since the command line using mpg321 plays the songs at random, there's no configuration involved.
      You could try replacing mpg321 -Z with mpg321 -l 0 (lowecase L, then zero) in the playing script and the playorder should be alphabetical - so you can place a 0_start.mpg3 to be always played first.

      BobHarrisB 2 Replies Last reply Reply Quote 2
      • BobHarrisB
        BobHarris @mitu
        last edited by BobHarris

        @mitu Ok thanks. This is not an option for me, as I prefer a randomized playlist after the first song.
        So I will just use the Python script instead (http://www.pretendo.online/2017/01/25/adding-background-music-to-emulation-station/).. so far it seems to work great (and it allows you to set a startsong). It has other perks too, like fade out (after starting a game) and it plays a new song after exiting a game, instead of resuming the previous song.
        I wasn't sure which method to use as I read some people were having issues with the Python script. (Songs playing at half speed for example.)

        (There is a workaround for anyone who uses mpg123 and wants the same song/sound at the start and a random playlist: Turn your song into an mp4 video file and set it as your splash screen.)

        Pi 3B , 64 GB Sandisk ultra flashdrive, 19 systems, 872 hand picked classic gaming gems :-) Dual shock 4v2

        coldnpaleC 1 Reply Last reply Reply Quote 1
        • coldnpaleC
          coldnpale @BobHarris
          last edited by coldnpale

          @mitu
          amazing! thanks alot!

          1 Reply Last reply Reply Quote 0
          • coldnpaleC
            coldnpale
            last edited by

            So, now with "mpg321 -l 0" I am able to arrange the songs in the order I want. Tha's great! However, isn't the playlist supposed to loop infinite times after it ends? Or am I missing a part?

            mituM 1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator @coldnpale
              last edited by mitu

              @coldnpale Err', I guess it only loops through the 1st song, right ? So my suggestion doesn't work right off the bat :(.
              I don't have the RPI at hand at the moment, but you could create a .m3u with the files you want, in the specific order you need, then try to run

              mpg321 -l -0 playlist.m3u
              

              so it loops continuously. I'm sure there's a one liner to make the m3u on the fly, but just need a command line on the PI to have it right.

              1 Reply Last reply Reply Quote 1
              • coldnpaleC
                coldnpale
                last edited by coldnpale

                @mitu
                Thanks!
                At the moment i am using 2 songs to test it, withou an .m3u. It plays them in alphabetical order, but once the second song finishes nothing starts again.
                But I could always try an .m3u ..i'll give it a shot

                mituM 1 Reply Last reply Reply Quote 1
                • BobHarrisB
                  BobHarris @mitu
                  last edited by BobHarris

                  @mitu This change in the script (-l 0 instead of -Z) is actually very helpful.
                  I now have another build with no music in the bgm folder except for the Sony ps1 bootup sound. With this script you hear it only once when booting and then it's all quiet. :-)
                  It might become my new main build if I get tired of my playlist.

                  Pi 3B , 64 GB Sandisk ultra flashdrive, 19 systems, 872 hand picked classic gaming gems :-) Dual shock 4v2

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @coldnpale
                    last edited by

                    @coldnpale Ok, I got to run a test and this is what seems to work:

                    1. Make a .m3u file with the names/paths of the mp3 files:
                    /home/pi/music/file_start.mp3
                    /home/pi/music/file2.mp3
                    /home/pi/music/file3.mp3
                    ...
                    
                    1. Run mpg321 with:
                    mpg321 -l 0 -@ path_to_m3u_file
                    

                    replacing path_to_m3u_filewith the actual path of the m3u file.

                    coldnpaleC 1 Reply Last reply Reply Quote 1
                    • mituM
                      mitu Global Moderator @BobHarris
                      last edited by

                      @bobharris If you only have 1 file, then just running mpg321 /path/to/mp3file would be enough, i.e. no parameters would be needed.

                      BobHarrisB 1 Reply Last reply Reply Quote 2
                      • BobHarrisB
                        BobHarris @mitu
                        last edited by

                        @mitu Ok thanks!

                        Pi 3B , 64 GB Sandisk ultra flashdrive, 19 systems, 872 hand picked classic gaming gems :-) Dual shock 4v2

                        1 Reply Last reply Reply Quote 0
                        • coldnpaleC
                          coldnpale @mitu
                          last edited by

                          @mitu thanks a lot! I'll check this as soon as I am back home!

                          1 Reply Last reply Reply Quote 0
                          • FinnbroF
                            Finnbro
                            last edited by

                            I have a couple questions involving this bgm method, would be interested if anyone has any input.

                            1. I've been wanting to modify this where it starts a new song after exiting a game, instead of resuming the same song. My current fix was to edit the /opt/retropie/configs/all/runcommand-onend.sh to be the exact same as the autostart.sh in the same folder. This effectively reloads RetroPie every time I exit a game, and while it does give me the intended effect of playing a new song, it is a bit inconvenient with the extra loading time and not resuming from the same place I was in the games menu. Anyone know of a more elegant method?

                            2. Does anyone know of a script where you can have a button that sets a different folder for bgm music, as well as some kind of skip button? I have the on/off button enabled in my RetroPie menu thanks to /u/columboscoat over on /r/RetroPie, but these extra options would be fantastic additions to my build. I have a folder for chiptunes and a folder for remixes, would be awesome to be able to switch them on the fly. I've done some research on the ins and outs of mpg123, but it is way over my head.

                            Thanks in advance.

                            cyperghostC 1 Reply Last reply Reply Quote 0
                            • cyperghostC
                              cyperghost @Finnbro
                              last edited by cyperghost

                              @finnbro said in Quick and easy guide for adding music to Emulatonstation on RetroPie. Noob friendly!:

                              I've been wanting to modify this where it starts a new song after exiting a game, instead of resuming the same song. My current fix was to edit the /opt/retropie/configs/all/runcommand-onend.sh to be the exact same as the autostart.sh in the same folder. This effectively reloads RetroPie every time I exit a game, and while it does give me the intended effect of playing a new song, it is a bit inconvenient with the extra loading time and not resuming from the same place I was in the games menu. Anyone know of a more elegant method?

                              That easy to do.
                              modify /opt/retropie/configs/all/runcommand-onstart.sh with pkill mpg123 > /dev/null 2>&1
                              This terminates mpg123 if you start a ROM

                              modify /opt/retropie/configs/all/runcommand-onend.sh with mpg123 -Z /media/usb0/BGM/*.mp3 > /dev/null 2>&1 &
                              The /media/usb... thing represents the path were the mp3 are deployed

                              Does anyone know of a script where you can have a button that sets a different folder for bgm music, as well as some kind of skip button? I have the on/off button enabled in my RetroPie menu thanks to /u/columboscoat over on /r/RetroPie, but these extra options would be fantastic additions to my build. I have a folder for chiptunes and a folder for remixes, would be awesome to be able to switch them on the fly. I've done some research on the ins and outs of mpg123, but it is way over my head.

                              Als no problem. Trigger a GPIO event that terminates mpg123 and restarts it with annother folder path. That's a kind of "SKIP" function.
                              Sadly mpg123 is a bit limited with controls but it's enough imho for a BGM player.

                              FinnbroF 1 Reply Last reply Reply Quote 1
                              • FinnbroF
                                Finnbro @cyperghost
                                last edited by

                                @cyperghost Thank you so much for the quick response! I will try this stuff and report back if I need further assistance.

                                1 Reply Last reply Reply Quote 0
                                • V
                                  vj88
                                  last edited by

                                  Hi everyone!!!
                                  I have a problem with this... splash screen won't play over e.s. loading screen! Emulation always starts at splash screen end. I know that the problem is this method cause it doesn't wait without it!
                                  Any help please?
                                  Ps sorry for bad english
                                  Thanks.

                                  coldnpaleC A 2 Replies Last reply Reply Quote 0
                                  • coldnpaleC
                                    coldnpale
                                    last edited by

                                    It happens for me also like that.. I thought it was supposed to be like this. It's not a big issue but would be nice to save some more time.

                                    1 Reply Last reply Reply Quote 0
                                    • cyperghostC
                                      cyperghost
                                      last edited by cyperghost

                                      Did not see .... I once gatherd some interesting sniplets that can be very usefull for music control.

                                      This script Toggles mpg123 - so if mpg123 ist not running it will be started. If it's running the process will be stopped. If the process is stopped it will be continued!
                                      The other script Plays annother track. This is simple the same procedure as I posted to @Finnbro - It kills the mpg123 process and restarts it with parameter -Z.

                                      Be aware to change pathes to your MP3 or playlist collection.

                                      1 Reply Last reply Reply Quote 0
                                      • Z
                                        zerojay
                                        last edited by

                                        You can use that with the script that allows you to run commands with combinations of button presses to do all that on the fly.

                                        1 Reply Last reply Reply Quote 0
                                        • AlturisA
                                          Alturis
                                          last edited by

                                          Interesting. Going to try these loops as "music"

                                          Arcade Background noises
                                          http://arcade.hofle.com/

                                          RP 4.7.1 • Pi4 4Gig • CanaKit Aluminum • 64GB microSD • 1920x1080 BarTop [2 Sanwa sticks]

                                          cyperghostC 1 Reply Last reply Reply Quote 0
                                          • cyperghostC
                                            cyperghost @Alturis
                                            last edited by cyperghost

                                            @Alturis
                                            I don't want to hijack the thread
                                            So I created a new BG-Music on Retropie - Post your favourites here

                                            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.