X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/3665689ab79ea1697c58914453f676a180eec689..ba70caca3f9debf14c9f551ff4dcaddd1eb07d3d:/disobedience/disobedience.c diff --git a/disobedience/disobedience.c b/disobedience/disobedience.c index ce6eb03..e0fa295 100644 --- a/disobedience/disobedience.c +++ b/disobedience/disobedience.c @@ -2,27 +2,24 @@ * This file is part of DisOrder. * Copyright (C) 2006, 2007, 2008 Richard Kettlewell * - * This program is free software; you can redistribute it and/or modify + * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or + * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 - * USA + * along with this program. If not, see . */ /** @file disobedience/disobedience.c * @brief Main Disobedience program */ #include "disobedience.h" -#include "mixer.h" #include "version.h" #include @@ -70,6 +67,9 @@ int volume_l; /** @brief Right channel volume */ int volume_r; +/** @brief Audio backend */ +const struct uaudio *backend; + double goesupto = 10; /* volume upper bound */ /** @brief True if a NOP is in flight */ @@ -265,10 +265,10 @@ static gboolean periodic_fast(gpointer attribute((unused)) data) { } last = now; #endif - if(rtp_supported && mixer_supported(DEFAULT_BACKEND)) { + if(rtp_supported && backend && backend->get_volume) { int nl, nr; - if(!mixer_control(DEFAULT_BACKEND, &nl, &nr, 0) - && (nl != volume_l || nr != volume_r)) { + backend->get_volume(&nl, &nr); + if(nl != volume_l || nr != volume_r) { volume_l = nl; volume_r = nr; event_raise("volume-changed", 0); @@ -422,6 +422,8 @@ void logged_in(void) { periodic_fast(0); /* Recheck server version */ disorder_eclient_version(client, version_completed, 0); + disorder_eclient_enable_connect(client); + disorder_eclient_enable_connect(logclient); } int main(int argc, char **argv) { @@ -453,6 +455,10 @@ int main(int argc, char **argv) { D(("create main loop")); mainloop = g_main_loop_new(0, 0); if(config_read(0)) fatal(0, "cannot read configuration"); + /* we'll need mixer support */ + backend = uaudio_apis[0]; + if(backend->open_mixer) + backend->open_mixer(); /* create the clients */ if(!(client = gtkclient()) || !(logclient = gtkclient()))