aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd.simons@collabora.co.uk>2011-11-18 02:15:55 +0800
committerSjoerd Simons <sjoerd.simons@collabora.co.uk>2011-11-19 01:49:56 +0800
commit0cdf4ddeb2d49377d99077afa574962a622035a4 (patch)
tree30b9b9582611f7fdd0b1c9b565b00e94d76d5c3a
parente40052870d5566ccc48109ef3f8202c889a06eab (diff)
downloadgsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar.gz
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar.bz2
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar.lz
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar.xz
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.tar.zst
gsoc2013-empathy-0cdf4ddeb2d49377d99077afa574962a622035a4.zip
Implement Audiocontrol for the output volume
-rw-r--r--src/empathy-call-window.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/empathy-call-window.c b/src/empathy-call-window.c
index 945650606..a2b89f2ba 100644
--- a/src/empathy-call-window.c
+++ b/src/empathy-call-window.c
@@ -2914,6 +2914,22 @@ empathy_call_window_get_audio_sink_pad (EmpathyCallWindow *self,
priv->audio_output = empathy_audio_sink_new ();
g_object_ref_sink (priv->audio_output);
+ g_object_bind_property_full (content, "requested-output-volume",
+ priv->audio_output, "volume",
+ G_BINDING_DEFAULT,
+ audio_control_volume_to_element,
+ element_volume_to_audio_control,
+ NULL, NULL);
+
+ /* Link volumes together, sync the current audio input volume property
+ * back to farstream first */
+ g_object_bind_property_full (priv->audio_output, "volume",
+ content, "reported-output-volume",
+ G_BINDING_SYNC_CREATE,
+ element_volume_to_audio_control,
+ audio_control_volume_to_element,
+ NULL, NULL);
+
if (!gst_bin_add (GST_BIN (priv->pipeline), priv->audio_output))
{
g_warning ("Could not add audio sink to pipeline");