42 #include "audacious_control.h"
46 #include <audacious/audctrl.h>
47 #include <audacious/dbus.h>
53 audacious_remote_get_info(ui->pi->dbus_proxy, &rate, &freq, &nch);
55 gchar rate_str[32] = {
'\0' };
56 gchar freq_str[32] = {
'\0' };
57 gchar nch_str[32] = {
'\0' };
59 g_snprintf(rate_str,32,
"%d", rate/1000);
60 g_snprintf(freq_str,32,
"%d", freq/1000);
64 snprintf(nch_str, 32,
"%s", _(
"stereo"));
68 snprintf(nch_str, 32,
"%s", _(
"mono"));
71 gchar *_Kbps = _(
"Kbps");
72 gchar *_Khz = _(
"Khz");
76 g_snprintf(total_infos, 512,
"%s %s %s %s %s", rate_str,_Kbps,freq_str, _Khz,nch_str);
80 total_infos[0] =
'\0';
89 gint playlist_position = audacious_remote_get_playlist_pos(ui->pi->dbus_proxy);
90 gchar *fname = audacious_remote_get_playlist_file(ui->pi->dbus_proxy, playlist_position);
97 gchar *fname2 = g_filename_from_uri(fname, NULL, NULL);
106 return audacious_remote_get_playlist_length(ui->pi->dbus_proxy);
115 gint playlist_position = audacious_remote_get_playlist_pos(ui->pi->dbus_proxy);
116 return audacious_remote_get_playlist_title(ui->pi->dbus_proxy, playlist_position);
122 return audacious_remote_get_output_time(ui->pi->dbus_proxy);
128 static gchar *exec_command =
"audacious";
129 gchar *exec_this = g_strdup_printf(
"%s &", exec_command);
133 gint timer = time(<);
134 while (!audacious_remote_is_running(ui->pi->dbus_proxy) && ((time(<) - timer) < 4))
145 gint number = audacious_remote_get_playlist_length(ui->pi->dbus_proxy);
146 audacious_remote_set_playlist_pos(ui->pi->dbus_proxy, number - 1);
153 audacious_remote_play(ui->pi->dbus_proxy);
159 GList *list_pos = list;
162 gchar *dup_filename = strdup(list_pos->data);
163 list_pos->data = g_filename_to_uri(dup_filename,NULL,NULL);
164 g_free(dup_filename);
165 list_pos = g_list_next(list_pos);
168 audacious_remote_playlist_add(ui->pi->dbus_proxy, list);
174 audacious_remote_set_main_volume(ui->pi->dbus_proxy, volume);
180 return audacious_remote_get_main_volume(ui->pi->dbus_proxy);
196 if (!ui->pi->dbus_connection)
198 ui->pi->dbus_connection = dbus_g_bus_get(DBUS_BUS_SESSION, NULL);
201 if (!ui->pi->dbus_proxy)
203 ui->pi->dbus_proxy = dbus_g_proxy_new_for_name(ui->pi->dbus_connection,
204 AUDACIOUS_DBUS_SERVICE,
206 AUDACIOUS_DBUS_INTERFACE);
209 if (!audacious_remote_is_running(ui->pi->dbus_proxy))
220 if (!audacious_remote_is_paused(ui->pi->dbus_proxy))
231 audacious_remote_play(ui->pi->dbus_proxy);
237 audacious_remote_stop(ui->pi->dbus_proxy);
243 audacious_remote_pause(ui->pi->dbus_proxy);
249 audacious_remote_playlist_next(ui->pi->dbus_proxy);
255 audacious_remote_playlist_prev(ui->pi->dbus_proxy);
261 audacious_remote_jump_to_time(ui->pi->dbus_proxy, position);
267 gint playlist_position = audacious_remote_get_playlist_pos(ui->pi->dbus_proxy);
268 return audacious_remote_get_playlist_time(ui->pi->dbus_proxy, playlist_position);
274 if (audacious_remote_is_playing(ui->pi->dbus_proxy))