# Adding volume control for the displays

**URL:** https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91
**Category:** Feature Requests
**Created:** [March 12, 2015, 2:16pm UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91 "2015-03-12T14:16:47Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 12, 2015, 2:16pm UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/1 "2015-03-12T14:16:47Z")

</div>

Hi I am trying one new functionality in the server to control the volume of the displays. Suggest some ideas for doing so.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [March 12, 2015, 2:27pm UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/2 "2015-03-12T14:27:29Z")

</div>

You mean you want the Player software have control over the Display Volume?

I think you might be able to do that with a shell command, by writing a BAT file which sets the volume. Otherwise I think this will be a feature request for future versions.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 13, 2015, 5:39am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/3 "2015-03-13T05:39:52Z")

</div>

Thanks for the reply 😄

Actually we are planning to control the volume of the display from the server site itself. Can you suggest an idea for implementing this ?

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [March 13, 2015, 8:19am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/4 "2015-03-13T08:19:20Z")

</div>

😄

Well… I think anything you did would have to be actioned by the player via the server - unless your server could somehow run commands remotely (which I don’t think is advisable).

The answer depends on whether you want a workaround or a completely integrated solution. A workaround would be a set of BAT files on the Player which had commands for adjusting the volume to certain levels. Then a set of layouts in the CMS which contained the Shell Command module, calling the appropriate BAT file.

You’d schedule the layouts when you wanted the volume to change - probably with the priority flag ticked so you knew they would run.

A full integrated solution would mean modifying the Player Source Code to control the volume, based on the settings provided in the RegisterDisplay call. Then modifying the CMS so that the user could configure that information - I am not sure how the UI for it would work, as I would assume there would need to be some events, that triggered the change. Maybe as part of [Interactive Signage](https://community.xibo.org.uk/t/interactive-signage/103)

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 13, 2015, 9:35am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/5 "2015-03-13T09:35:07Z")

</div>

Thanks Dan,

We are looking for a fully integrated solution. We have developed the UI for the same. But, we are not able to pass the value of the volume from the UI to the player settings.  
kindly give us some solution on how to implement this. Thanks in advance.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [March 13, 2015, 10:19am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/6 "2015-03-13T10:19:46Z")

</div>

Will you be sharing the modifications with the community? It would be nice to have them as a Fork/Pull request in GitHub.

Regarding the settings - you’d need to add them to the SOAP service (lib/services/xmdssoap4.class.php) in the same IF conditional on Line 158.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 13, 2015, 10:49am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/7 "2015-03-13T10:49:09Z")

</div>

Thanks Dan,

We will be working on it. If we could succeed in this we will definitely share this modification with the community. 😄  
We expect your support to implement this successfully.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [March 13, 2015, 12:39pm UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/8 "2015-03-13T12:39:37Z")

</div>

😄 well - we need to see what you are doing and discuss how you are putting it together **before** we can provide any sort of support. I’m sure you can understand that we don’t have the resources to implement new functionality that we cannot then include in the solution as a whole.

Things like UI design, DB design, implementation notes, etc will need to be documented so that we have a good understanding of what is going on. There is a template for this here: [Blueprint Template](https://community.xibo.org.uk/t/blueprint-template/18) which can be copied into this topic and filled in.

---

<div class="post-metadata">

### Author: ![alex](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/alex/32/5782_2.png) [@alex](https://community.xibo.org.uk/u/alex)
#### Post date: [March 17, 2015, 10:40am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/9 "2015-03-17T10:40:21Z")

</div>

So by “normal settings”, Dan means that the CMS already sends down to the client lots of settings when the client calls “Register”:

[https://github.com/xibosignage/xibo-cms/blob/develop/lib/service/xmdssoap4.class.php#L48](https://github.com/xibosignage/xibo-cms/blob/develop/lib/service/xmdssoap4.class.php#L48)

You’d need to tag on your new settings to that.

But ideally before you do that, it would be good to understand exactly what it is you’re trying to implement with regard to volume settings and how that will integrate in to the CMS UI.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 10:45am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/10 "2015-03-17T10:45:56Z")

</div>

Hi Alex,

We are actually trying to add a volume slide bar for each display, so that we can control the volume of that particular display. We want it to be a live event, like we can adjust the volume while the display is showing.

Thank you.

---

<div class="post-metadata">

### Author: ![alex](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/alex/32/5782_2.png) [@alex](https://community.xibo.org.uk/u/alex)
#### Post date: [March 17, 2015, 10:49am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/11 "2015-03-17T10:49:12Z")

</div>

That’s going to be tricky then within the current model.

The player polls the CMS on a collection interval - say once every 5 minutes. Having a live slider in the CMS would need the client to poll every second or even more frequently which will cause massive load on the CMS and use loads of bandwidth.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 10:50am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/12 "2015-03-17T10:50:58Z")

</div>

So you are telling that we will not be able to add this feature in the current model?

---

<div class="post-metadata">

### Author: ![alex](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/alex/32/5782_2.png) [@alex](https://community.xibo.org.uk/u/alex)
#### Post date: [March 17, 2015, 10:51am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/13 "2015-03-17T10:51:55Z")

</div>

No I’m saying some thought needs to be given to how it would be possible to implement something like that. I don’t have any suggestions immediately but others may have.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 10:53am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/14 "2015-03-17T10:53:20Z")

</div>

Ok. Thank you Alex. If you came to know any possible way please share with us too.

---

<div class="post-metadata">

### Author: ![alex](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/alex/32/5782_2.png) [@alex](https://community.xibo.org.uk/u/alex)
#### Post date: [March 17, 2015, 10:55am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/15 "2015-03-17T10:55:21Z")

</div>

Does it have to be manually controlled?

Would it be acceptable for example to set a volume level on an individual layout or media item? That way the volume can change layout to layout and that information can come down with the layout so that it’s known ahead of time?

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 10:56am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/16 "2015-03-17T10:56:59Z")

</div>

No, we actually want it to be manually controlled for each display not depending on layout.

---

<div class="post-metadata">

### Author: ![alex](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/alex/32/5782_2.png) [@alex](https://community.xibo.org.uk/u/alex)
#### Post date: [March 17, 2015, 10:57am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/17 "2015-03-17T10:57:42Z")

</div>

And it has to be controlled in real time? ie adjusted continuously? Or is the volume set once and then left?

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 10:58am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/18 "2015-03-17T10:58:37Z")

</div>

Yeah, it has to be adjustable continuously as we see in media players.

---

<div class="post-metadata">

### Author: ![dan](https://community.xibo.org.uk/user_avatar/community.xibo.org.uk/dan/32/9115_2.png) [@dan](https://community.xibo.org.uk/u/dan)
#### Post date: [March 17, 2015, 11:15am UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/19 "2015-03-17T11:15:18Z")

</div>

Hmm, perhaps this isn’t something we could include after all 😖

If you did not want it “real-time” then I would have said to implement it exactly as we have discussed so far:

- new field on Display table for volume
- modify register XMDS method to send a configuration node for `<Volume>`
- modify client `ApplicationSettings` with a new public property for `Volume`
- modify client `default.config.xml` to have a default Volume property
- listen for changes to the volume property (maybe have to implement some delegates/events in `ApplicationSettings`) and take necessary action

However - if you want your player to poll that service every second - that would add an unacceptable level of load because it would also have to poll all of the other services at the same rate.

Some suggestions:

- Have a separate polling interval for register
- Have a separate “highFrequencyConfig” method in XMDS with a separate polling interval
- Suck it up and make sure your CMS has enough power to cope with a very low collection interval for all services.

---

<div class="post-metadata">

### Author: ![Pavithra](https://community.xibo.org.uk/letter_avatar_proxy/v4/letter/p/e9a140/32.png) [@Pavithra](https://community.xibo.org.uk/u/Pavithra)
#### Post date: [March 17, 2015, 12:35pm UTC](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91/20 "2015-03-17T12:35:51Z")

</div>

Sure Dan. Thank you very much for your suggestion. We will definitely give a try 😄

[Next page](https://community.xibo.org.uk/t/adding-volume-control-for-the-displays/91.md?page=2)
