Mercurial > audlegacy-plugins
comparison src/amidi-plug/amidi-plug.h @ 1414:5f892afeb8e1 audacious-plugins-1.4.0-dr2
- amidi-plug 0.8 beta1; support for gthread and v3 plugin system; needs testing and refinements
author | Giacomo Lozito <james@develia.org> |
---|---|
date | Mon, 06 Aug 2007 14:01:24 +0200 |
parents | 592442919dbd |
children | b7665ebc9e1e |
comparison
equal
deleted
inserted
replaced
1413:4731d28ea19d | 1414:5f892afeb8e1 |
---|---|
22 #define _I_AMIDIPLUG_H 1 | 22 #define _I_AMIDIPLUG_H 1 |
23 | 23 |
24 #define AMIDIPLUG_STOP 0 | 24 #define AMIDIPLUG_STOP 0 |
25 #define AMIDIPLUG_PLAY 1 | 25 #define AMIDIPLUG_PLAY 1 |
26 #define AMIDIPLUG_PAUSE 2 | 26 #define AMIDIPLUG_PAUSE 2 |
27 #define AMIDIPLUG_ERR 3 | 27 #define AMIDIPLUG_SEEK 3 |
28 #define AMIDIPLUG_ERR 4 | |
28 | 29 |
29 #include "i_common.h" | 30 #include "i_common.h" |
30 #include <audacious/plugin.h> | 31 #include <audacious/plugin.h> |
31 #include <audacious/output.h> | 32 #include <audacious/output.h> |
32 #include <audacious/auddrct.h> | 33 #include <audacious/auddrct.h> |
37 #include "i_midi.h" | 38 #include "i_midi.h" |
38 #include "i_fileinfo.h" | 39 #include "i_fileinfo.h" |
39 #include "i_utils.h" | 40 #include "i_utils.h" |
40 | 41 |
41 | 42 |
42 static pthread_t amidiplug_play_thread; | 43 static GThread * amidiplug_play_thread = NULL; |
43 static pthread_t amidiplug_audio_thread; | 44 static GThread * amidiplug_audio_thread = NULL; |
44 static pthread_mutex_t amidiplug_gettime_mutex = PTHREAD_MUTEX_INITIALIZER; | 45 static GMutex * amidiplug_gettime_mutex = NULL; |
45 static pthread_mutex_t amidiplug_playing_mutex = PTHREAD_MUTEX_INITIALIZER; | 46 static GMutex * amidiplug_playing_mutex = NULL; |
46 static pthread_cond_t amidiplug_playing_cond = PTHREAD_COND_INITIALIZER; | 47 static GCond * amidiplug_pause_cond = NULL; |
48 static GCond * amidiplug_seekonpause_cond = NULL; | |
47 | 49 |
48 gint amidiplug_playing_status = AMIDIPLUG_STOP; | 50 gint amidiplug_playing_status = AMIDIPLUG_STOP; |
49 | 51 |
50 midifile_t midifile; | 52 midifile_t midifile; |
51 | 53 |
61 0 /* ap_opts_lyrics_extract */ | 63 0 /* ap_opts_lyrics_extract */ |
62 }; | 64 }; |
63 | 65 |
64 gchar *amidiplug_vfs_extensions[] = { "mid" , "midi" , "rmi" , "rmid" , NULL }; | 66 gchar *amidiplug_vfs_extensions[] = { "mid" , "midi" , "rmi" , "rmid" , NULL }; |
65 | 67 |
66 void * amidiplug_play_loop( void * ); | 68 gpointer amidiplug_play_loop( gpointer ); |
67 void * amidiplug_audio_loop( void * ); | 69 gpointer amidiplug_audio_loop( gpointer ); |
68 void amidiplug_skipto( gint ); | 70 void amidiplug_skipto( gint ); |
69 static void amidiplug_init( void ); | 71 static void amidiplug_init( void ); |
70 static void amidiplug_cleanup( void ); | 72 static void amidiplug_cleanup( void ); |
71 static void amidiplug_aboutbox( void ); | 73 static void amidiplug_aboutbox( void ); |
72 static void amidiplug_configure( void ); | 74 static void amidiplug_configure( void ); |