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

    [opendev] The Background Music Box

    Scheduled Pinned Locked Moved Ideas and Development
    cyperghostbgmmp3mpg123
    33 Posts 6 Posters 6.0k 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 @majikill
      last edited by

      @majikill said in [opendev] The Background Music Box:

      That being said its kind of a shame this project didnt go far, i aim to change that. Is is possible to set a different volume level for mpg123 than master setting of ES.

      You can, by defining a new ALSA device, with it's own volume - https://alsa.opensrc.org/How_to_use_softvol_to_control_the_master_volume.

      Basically, you add in $HOME/.asoundrc

      pcm.mp3 {
          type            softvol
          slave.pcm       "default"
          control.name    "Softmaster"
          control.card    0
      }
      

      then you instruct the audio application to use the mp3 ALSA device. When you open alsamixer to se the volume, you'll have 2 mixer elements, one of them called "Softmaster", and you can set the volume individually.

      cyperghostC M 2 Replies Last reply Reply Quote 0
      • cyperghostC
        cyperghost @mitu
        last edited by cyperghost

        @mitu @majikill The method for volume change can be kept quite simpler. mpg123 -f switch scales volume level.

        So please feel free to improve

        32768 -- Volume 100%
        29491  --Volume 90%
        ...
        16284 -- Volume 50%
        ...
        0 -- Mute
        
        M 1 Reply Last reply Reply Quote 1
        • M
          majikill @cyperghost
          last edited by

          @cyperghost where would i apply these changes exactly? unless i make the changes to any instance mpg123 starts?

          1 Reply Last reply Reply Quote 0
          • M
            majikill @mitu
            last edited by

            @mitu this would go just in the /home directory?

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

              @majikill You can try modifying the script that starts the BGM music and add the -f parameter as @cyperghost mentioned. The .asoundrc configuration file I was mentioning should be added in $HOME (which translates to /home/pi).

              M 2 Replies Last reply Reply Quote 0
              • M
                majikill @mitu
                last edited by

                @mitu awesome. perfect guys thank you. im gonna try both and see what works best for me.

                1 Reply Last reply Reply Quote 0
                • M
                  majikill @mitu
                  last edited by

                  @mitu i managed to create the .asoundrc file where it should be. but when i launch alsasound i only have a single mixer. i did put the file in /home/pi

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

                    @majikill Can you run

                    speaker-test -D mp3
                    

                    and see if you get any errors ? Then start alsamixer and see if you have 2 mixer devices.

                    M 2 Replies Last reply Reply Quote 0
                    • M
                      majikill @mitu
                      last edited by

                      @mitu that worked! im curious why tho. once the test is run, does it force alsa to load the file i created?

                      1 Reply Last reply Reply Quote 0
                      • M
                        majikill @mitu
                        last edited by

                        @mitu ok well kinda worked. i see the softmaster in the mixer. but pcm still controls the volume for bgm

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

                          @majikill said in [opendev] The Background Music Box:

                          but pcm still controls the volume for bgm

                          You need to tell mpg321 to use the newly created device - as I said in my initial post:

                          mpg321 -o alsa --audiodevice mp3 <path/to/file>
                          
                          M 1 Reply Last reply Reply Quote 0
                          • M
                            majikill @mitu
                            last edited by

                            @mitu ok, i think i get it now. im using this as a crash course in writing scripts, so im sorry if i dont understand how this should work. but this is a huge help, thank you.

                            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.