I see in almost all audio players, there is the ability to adjust the volume in the audio player. iTunes does this along with other apps like Podcast.

My question is, if you can control the volume with hardware on an iPhone and Android, why do we need the volume controls in the audio player?

  • 3
    Because you might want the app volume to be specific to the app, not the device. If my phone is on mute because I don't want it ringing but I still want to listen to music then I'd want to be able to turn down the phone hardware volume but turn up the app volume.
    – JonW
    Commented Sep 20, 2013 at 14:35
  • Just checked it: Google Play Music does not have volume controls. @JonW you can use the volume controls, but don't change the device's volume (at least on android)
    – Lovis
    Commented Sep 20, 2013 at 14:37
  • @JonW I believe the App volume and the Device volume are directly related. I don't think you can have the Device volume different from the App volume.
    – Xtian
    Commented Sep 20, 2013 at 14:39
  • 1
    @Xitan, you can (again: at least on android)! Superficially spoken, you can simply store the volume and set it back after the app finishes. On android, there're also three different volume types: ringtone, media and alarm. You can modify them independently
    – Lovis
    Commented Sep 20, 2013 at 14:47
  • At least give a local mute option even if you don't provide volume levels. Also check out how BSPlayer enables volume control of the playback (only) via gestures. Commented Sep 20, 2013 at 22:05

4 Answers 4


4 Reasons:

  • The hardware buttons are low-res step-wise controls. If you want to go super-soft to super-loud or vice versa, the sliders are much more useful. Also, to fine-tune the level, you need to use the slider - sometimes the steps of the hardware buttons take you neither here nor there (particularly the case when listening on headphones in a noisy environment).
  • The slider is more accessible when the device is not hand held, like when on a dock or on a stand. Using the slider means there's no need to grab the device to counter the force applied on the buttons.
  • Lastly, the function of the hardware buttons will be ambiguous for some - most of the time you change the ringer level; upon entering certain apps, they still change the ringer level unless you play some media - only then the hardware buttons alter the level of the media. So you can argue that there is a benefit in providing a level control that is not ambiguous - the slider within the app. After users have learnt the behaviour of the hardware buttons, these can be seen as somewhat 'expert controls'.
  • A few weeks ago a friend of mine had an egg splash on her iPhone; the result - the volume buttons are now stuck and these volume sliders prove to be very useful. But I don't think this is taken into consideration by app developers.
  • The ambiguity is a great point. Some of my apps don't allow the external buttons to control media volume until the media is playing; if I want to turn the media volume down/off, I have to either let it make noise (bad), or change the volume through other channels (inconvenient).
    – yoozer8
    Commented Sep 20, 2013 at 17:01
  • 1
    I'd say all volume controls are ambiguous. Do they affect headphones as well or only when headphones are connected? Do they affect the media playing or everything else too? Or only in this app and not in others? To me that's what I like about hardware volume controls: I don't have to look for them and I don't have to think about what kind of volume they affect (it'll probably be the right one for the moment). Commented Sep 20, 2013 at 19:38
  • +1 You never know if you are changing the media volume level, the ring volume level, the alarm volume level. Afterwards you end up not hearing your GPS or your alarm clock. Commented Sep 20, 2013 at 22:04
  • The problem of volume control is that it is required to be at different levels for different tasks. Having only a global volume control is problematic given that constraint.
    – uxzapper
    Commented Sep 22, 2013 at 1:44

In addition to the reasons described by lzhaki, a volume slider shows you the current setting, while hardware buttons don't.

  • if the user knows their favorite setting for a certain environment, they can set it directly, independently of the loudness of the currently playing music
  • it lets users preview the setting without making any sound, so that you don't accidentally start playing music with the volume cranked up to the max.
  • Is this relevant when audio can be mastered at wildly different levels?
    – Pier
    Commented Jun 13, 2022 at 15:49

One situation where audio players on mobile devices would need volume controls in software is if any hardware controls are not linked. For instance, some headphones come with an independent volume control, generally a thumb wheel or dial, which controls the volume of the sound coming out of the speakers, but does not affect the volume of the device itself. Due to technical limitations, this does not send any signal to the software to tell it what to set the volume slider to, and so it is unlinked. Likewise, adjusting the volume on the device via a slider cannot physically turn the thumb wheel, providing a technical reason why they are not linked.

The same would occur if your device is intended to be hooked up to external speakers or a TV. Again, this is due to technical limitations. One problem that is created however is that your device volume and your headphone volume may not be the same; you may have your volume for one at full and not hear anything because the other is muted, providing confusion to the user (or a momentary burst of loud noise).

Many mobile devices, such as the iPhone, do in fact have linked hardware volume buttons and software volume sliders in which pressing the down volume hardware button also makes the slider go down by some fixed amount. Some headphones, notably the stock iPhone earbuds, work the same way, having buttons that send a signal to the software and do not have a physical component that would need moving, eliminating the technical limitations. This solves the issue of not hearing anything despite one volume control being at full volume and eliminating one of the reasons why software audio players might require volume controls. However, this may not always be possible since both the device and the headphones would need to support this.


Audio levels must NOT be a software thing, it should be a hardware function instead. Software UX design can vary from one app to another, but the user must always have a unique easy-one-time access to these often used functions such as volume control and mute, that's why hardware only is a better fit for all cases.

  • But how do you determine what app you're turning the volume down for? What if I have a Skype call going on and I need to turn down my music to hear it - how does the hardware know that when I press the physical volume button that it's the Music i'm wanting to lower, but not the Call?
    – JonW
    Commented Nov 5, 2015 at 14:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.