I am trying to modify the module-alsa-sink module to process the audio data. Within: static int mmap_write(struct userdata *u) {} I am calling a routine that just sets the audio data to 0 so I know that I can actually affect the data. I am doing this like so: /* Check these are multiples of 8 bit */ pa_assert((areas[0].first & 7) == 0); pa_assert((areas[0].step & 7)== 0); /* We assume a single interleaved memory buffer */ pa_assert((areas[0].first >> 3) == 0); pa_assert((areas[0].step >> 3) == u->frame_size); p = (uint8_t*) areas[0].addr + (offset * u->frame_size); zeroData((uint8_t*) p, frames * u->frame_size); chunk.memblock = pa_memblock_new_fixed(u->core->mempool, p, frames * u->frame_size, 1); chunk.length = pa_memblock_get_length(chunk.memblock); chunk.index = 0; pa_sink_render_into_full(u->sink, &chunk); here is my function for zeroData(): static void biquadProcess(uint8_t *p, int length) { int j; for(j = 0; j < length; j++) *p++ = 0; } This does not seem to affect the audio at all. I don't know what I am doing wrong. Also is there a way to access the data through chunk.memblock? chunk is of type pa_memchunk. Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20080908/5c984d25/attachment.htm>