summaryrefslogtreecommitdiff
path: root/firmware/target/hosted
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/target/hosted')
-rw-r--r--firmware/target/hosted/android/pcm-android.c8
-rw-r--r--firmware/target/hosted/maemo/pcm-gstreamer.c9
-rw-r--r--firmware/target/hosted/pcm-alsa.c6
-rw-r--r--firmware/target/hosted/sdl/pcm-sdl.c6
4 files changed, 14 insertions, 15 deletions
diff --git a/firmware/target/hosted/android/pcm-android.c b/firmware/target/hosted/android/pcm-android.c
index 7a0f28634e..0428e5f541 100644
--- a/firmware/target/hosted/android/pcm-android.c
+++ b/firmware/target/hosted/android/pcm-android.c
@@ -31,8 +31,8 @@
31extern JNIEnv *env_ptr; 31extern JNIEnv *env_ptr;
32 32
33/* infos about our pcm chunks */ 33/* infos about our pcm chunks */
34static const void *pcm_data_start;
34static size_t pcm_data_size; 35static size_t pcm_data_size;
35static char *pcm_data_start;
36static int audio_locked = 0; 36static int audio_locked = 0;
37static pthread_mutex_t audio_lock_mutex = PTHREAD_MUTEX_INITIALIZER; 37static pthread_mutex_t audio_lock_mutex = PTHREAD_MUTEX_INITIALIZER;
38 38
@@ -81,7 +81,7 @@ Java_org_rockbox_RockboxPCM_nativeWrite(JNIEnv *env, jobject this,
81 if (!pcm_data_size) /* get some initial data */ 81 if (!pcm_data_size) /* get some initial data */
82 { 82 {
83 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, 83 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK,
84 (const void**)&pcm_data_start, &pcm_data_size); 84 &pcm_data_start, &pcm_data_size);
85 } 85 }
86 86
87 while(left > 0 && pcm_data_size) 87 while(left > 0 && pcm_data_size)
@@ -115,7 +115,7 @@ Java_org_rockbox_RockboxPCM_nativeWrite(JNIEnv *env, jobject this,
115 if (pcm_data_size == 0) /* need new data */ 115 if (pcm_data_size == 0) /* need new data */
116 { 116 {
117 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, 117 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK,
118 (const void**)&pcm_data_start, &pcm_data_size); 118 &pcm_data_start, &pcm_data_size);
119 } 119 }
120 else /* increment data pointer and feed more */ 120 else /* increment data pointer and feed more */
121 pcm_data_start += transfer_size; 121 pcm_data_start += transfer_size;
@@ -146,7 +146,7 @@ void pcm_dma_apply_settings(void)
146 146
147void pcm_play_dma_start(const void *addr, size_t size) 147void pcm_play_dma_start(const void *addr, size_t size)
148{ 148{
149 pcm_data_start = (char*)addr; 149 pcm_data_start = addr;
150 pcm_data_size = size; 150 pcm_data_size = size;
151 151
152 pcm_play_dma_pause(false); 152 pcm_play_dma_pause(false);
diff --git a/firmware/target/hosted/maemo/pcm-gstreamer.c b/firmware/target/hosted/maemo/pcm-gstreamer.c
index 61f33cbadd..10a9d77880 100644
--- a/firmware/target/hosted/maemo/pcm-gstreamer.c
+++ b/firmware/target/hosted/maemo/pcm-gstreamer.c
@@ -90,7 +90,7 @@ GstBus *gst_bus = NULL;
90static int bus_watch_id = 0; 90static int bus_watch_id = 0;
91GMainLoop *pcm_loop = NULL; 91GMainLoop *pcm_loop = NULL;
92 92
93static __u8* pcm_data = NULL; 93static const void* pcm_data = NULL;
94static size_t pcm_data_size = 0; 94static size_t pcm_data_size = 0;
95 95
96static int audio_locked = 0; 96static int audio_locked = 0;
@@ -128,7 +128,7 @@ void pcm_dma_apply_settings(void)
128 128
129void pcm_play_dma_start(const void *addr, size_t size) 129void pcm_play_dma_start(const void *addr, size_t size)
130{ 130{
131 pcm_data = (__u8 *) addr; 131 pcm_data = addr;
132 pcm_data_size = size; 132 pcm_data_size = size;
133 133
134 if (playback_granted) 134 if (playback_granted)
@@ -189,13 +189,12 @@ static void feed_data(GstElement * appsrc, guint size_hint, void *unused)
189 from inside gstreamer's stream thread as it will deadlock */ 189 from inside gstreamer's stream thread as it will deadlock */
190 inside_feed_data = 1; 190 inside_feed_data = 1;
191 191
192 if (pcm_play_dma_complete_callback(PCM_DMAST_OK, (const void **)&pcm_data, 192 if (pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data, &pcm_data_size))
193 &pcm_data_size))
194 { 193 {
195 GstBuffer *buffer = gst_buffer_new (); 194 GstBuffer *buffer = gst_buffer_new ();
196 GstFlowReturn ret; 195 GstFlowReturn ret;
197 196
198 GST_BUFFER_DATA (buffer) = pcm_data; 197 GST_BUFFER_DATA (buffer) = (__u8 *)pcm_data;
199 GST_BUFFER_SIZE (buffer) = pcm_data_size; 198 GST_BUFFER_SIZE (buffer) = pcm_data_size;
200 199
201 g_signal_emit_by_name (appsrc, "push-buffer", buffer, &ret); 200 g_signal_emit_by_name (appsrc, "push-buffer", buffer, &ret);
diff --git a/firmware/target/hosted/pcm-alsa.c b/firmware/target/hosted/pcm-alsa.c
index 1385f75b34..715af58fd9 100644
--- a/firmware/target/hosted/pcm-alsa.c
+++ b/firmware/target/hosted/pcm-alsa.c
@@ -75,7 +75,7 @@ static snd_pcm_sframes_t buffer_size = MIX_FRAME_SAMPLES * 32; /* ~16k */
75static snd_pcm_sframes_t period_size = MIX_FRAME_SAMPLES * 4; /* ~4k */ 75static snd_pcm_sframes_t period_size = MIX_FRAME_SAMPLES * 4; /* ~4k */
76static short *frames; 76static short *frames;
77 77
78static const char *pcm_data = 0; 78static const void *pcm_data = 0;
79static size_t pcm_size = 0; 79static size_t pcm_size = 0;
80 80
81#ifdef USE_ASYNC_CALLBACK 81#ifdef USE_ASYNC_CALLBACK
@@ -223,8 +223,8 @@ static bool fill_frames(void)
223 if (!pcm_size) 223 if (!pcm_size)
224 { 224 {
225 new_buffer = true; 225 new_buffer = true;
226 if (!pcm_play_dma_complete_callback(PCM_DMAST_OK, 226 if (!pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data,
227 (const void **)&pcm_data, &pcm_size)) 227 &pcm_size))
228 { 228 {
229 return false; 229 return false;
230 } 230 }
diff --git a/firmware/target/hosted/sdl/pcm-sdl.c b/firmware/target/hosted/sdl/pcm-sdl.c
index 2c535b2dc5..bd56189f02 100644
--- a/firmware/target/hosted/sdl/pcm-sdl.c
+++ b/firmware/target/hosted/sdl/pcm-sdl.c
@@ -56,7 +56,7 @@ static int sim_volume = 0;
56#if CONFIG_CODEC == SWCODEC 56#if CONFIG_CODEC == SWCODEC
57static int cvt_status = -1; 57static int cvt_status = -1;
58 58
59static const Uint8* pcm_data; 59static const void *pcm_data;
60static size_t pcm_data_size; 60static size_t pcm_data_size;
61static size_t pcm_sample_bytes; 61static size_t pcm_sample_bytes;
62static size_t pcm_channel_bytes; 62static size_t pcm_channel_bytes;
@@ -245,8 +245,8 @@ static void sdl_audio_callback(struct pcm_udata *udata, Uint8 *stream, int len)
245 245
246 /* Audio card wants more? Get some more then. */ 246 /* Audio card wants more? Get some more then. */
247 while (len > 0) { 247 while (len > 0) {
248 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, 248 new_buffer = pcm_play_dma_complete_callback(PCM_DMAST_OK, &pcm_data,
249 (const void **)&pcm_data, &pcm_data_size); 249 &pcm_data_size);
250 250
251 if (!new_buffer) { 251 if (!new_buffer) {
252 DEBUGF("sdl_audio_callback: No Data.\n"); 252 DEBUGF("sdl_audio_callback: No Data.\n");