mirror of
https://github.com/Llewellynvdm/conky.git
synced 2025-01-12 19:06:36 +00:00
Fetch volume through Audacious API (thanks Erik)
This commit is contained in:
parent
b64203b547
commit
51fe4fa419
@ -6,6 +6,7 @@
|
|||||||
* Adds a variable if_xmms2_connected to hide objects when xmms2d is not
|
* Adds a variable if_xmms2_connected to hide objects when xmms2d is not
|
||||||
running (thanks Lassi)
|
running (thanks Lassi)
|
||||||
* Fix for buffer overflow with $execi (thanks Cesare)
|
* Fix for buffer overflow with $execi (thanks Cesare)
|
||||||
|
* Fetch volume through Audacious API (thanks Erik)
|
||||||
|
|
||||||
2008-12-06
|
2008-12-06
|
||||||
* Removed duplicate sanity check for diskio
|
* Removed duplicate sanity check for diskio
|
||||||
|
@ -241,6 +241,15 @@
|
|||||||
<para></para></listitem>
|
<para></para></listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>
|
||||||
|
<command><option>audacious_main_volume</option></command>
|
||||||
|
</term>
|
||||||
|
<listitem>
|
||||||
|
The current volume fetched from Audacious
|
||||||
|
<para></para></listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>
|
<term>
|
||||||
<command><option>battery</option></command>
|
<command><option>battery</option></command>
|
||||||
|
@ -125,7 +125,7 @@ void *audacious_thread_func(void *pvoid)
|
|||||||
{
|
{
|
||||||
static audacious_t items;
|
static audacious_t items;
|
||||||
gint playpos, frames, length;
|
gint playpos, frames, length;
|
||||||
gint rate, freq, chans;
|
gint rate, freq, chans, vol;
|
||||||
gchar *psong, *pfilename;
|
gchar *psong, *pfilename;
|
||||||
|
|
||||||
#ifndef AUDACIOUS_LEGACY
|
#ifndef AUDACIOUS_LEGACY
|
||||||
@ -233,6 +233,11 @@ void *audacious_thread_func(void *pvoid)
|
|||||||
/* Playlist position (index of song) */
|
/* Playlist position (index of song) */
|
||||||
snprintf(items[AUDACIOUS_PLAYLIST_POSITION],
|
snprintf(items[AUDACIOUS_PLAYLIST_POSITION],
|
||||||
sizeof(items[AUDACIOUS_PLAYLIST_POSITION]) - 1, "%d", playpos + 1);
|
sizeof(items[AUDACIOUS_PLAYLIST_POSITION]) - 1, "%d", playpos + 1);
|
||||||
|
/* Main volume */
|
||||||
|
vol = audacious_remote_get_main_volume(session);
|
||||||
|
snprintf(items[AUDACIOUS_MAIN_VOLUME],
|
||||||
|
sizeof(items[AUDACIOUS_MAIN_VOLUME]) - 1, "%d", vol);
|
||||||
|
|
||||||
} while (0);
|
} while (0);
|
||||||
/* Deliver the refreshed items array to audacious_items. */
|
/* Deliver the refreshed items array to audacious_items. */
|
||||||
timed_thread_lock(info.audacious.p_timed_thread);
|
timed_thread_lock(info.audacious.p_timed_thread);
|
||||||
|
@ -37,10 +37,11 @@ enum _audacious_items {
|
|||||||
AUDACIOUS_FILENAME,
|
AUDACIOUS_FILENAME,
|
||||||
AUDACIOUS_PLAYLIST_LENGTH,
|
AUDACIOUS_PLAYLIST_LENGTH,
|
||||||
AUDACIOUS_PLAYLIST_POSITION,
|
AUDACIOUS_PLAYLIST_POSITION,
|
||||||
|
AUDACIOUS_MAIN_VOLUME,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* 12 slots for the audacious values */
|
/* 12 slots for the audacious values */
|
||||||
typedef char audacious_t[12][128];
|
typedef char audacious_t[13][128];
|
||||||
|
|
||||||
/* type for data exchange with main thread */
|
/* type for data exchange with main thread */
|
||||||
typedef struct audacious_s {
|
typedef struct audacious_s {
|
||||||
|
@ -1373,6 +1373,7 @@ enum text_object_type {
|
|||||||
OBJ_audacious_filename,
|
OBJ_audacious_filename,
|
||||||
OBJ_audacious_playlist_length,
|
OBJ_audacious_playlist_length,
|
||||||
OBJ_audacious_playlist_position,
|
OBJ_audacious_playlist_position,
|
||||||
|
OBJ_audacious_main_volume,
|
||||||
OBJ_audacious_bar,
|
OBJ_audacious_bar,
|
||||||
#endif
|
#endif
|
||||||
#ifdef BMPX
|
#ifdef BMPX
|
||||||
@ -4071,6 +4072,7 @@ static struct text_object *construct_text_object(const char *s,
|
|||||||
END OBJ(audacious_filename, INFO_AUDACIOUS)
|
END OBJ(audacious_filename, INFO_AUDACIOUS)
|
||||||
END OBJ(audacious_playlist_length, INFO_AUDACIOUS)
|
END OBJ(audacious_playlist_length, INFO_AUDACIOUS)
|
||||||
END OBJ(audacious_playlist_position, INFO_AUDACIOUS)
|
END OBJ(audacious_playlist_position, INFO_AUDACIOUS)
|
||||||
|
END OBJ(audacious_main_volume, INFO_AUDACIOUS)
|
||||||
END OBJ(audacious_bar, INFO_AUDACIOUS)
|
END OBJ(audacious_bar, INFO_AUDACIOUS)
|
||||||
scan_bar(arg, &obj->a, &obj->b);
|
scan_bar(arg, &obj->a, &obj->b);
|
||||||
#endif
|
#endif
|
||||||
@ -6283,6 +6285,10 @@ static void generate_text_internal(char *p, int p_max_size,
|
|||||||
snprintf(p, p_max_size, "%s",
|
snprintf(p, p_max_size, "%s",
|
||||||
cur->audacious.items[AUDACIOUS_PLAYLIST_POSITION]);
|
cur->audacious.items[AUDACIOUS_PLAYLIST_POSITION]);
|
||||||
}
|
}
|
||||||
|
OBJ(audacious_main_volume) {
|
||||||
|
snprintf(p, p_max_size, "%s",
|
||||||
|
cur->audacious.items[AUDACIOUS_MAIN_VOLUME]);
|
||||||
|
}
|
||||||
OBJ(audacious_bar) {
|
OBJ(audacious_bar) {
|
||||||
double progress;
|
double progress;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user