mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-02 09:01:46 -05:00
some more work
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@23 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
993d1bce74
commit
382e7aefd4
14 changed files with 147 additions and 36 deletions
|
|
@ -25,7 +25,7 @@ struct userdata {
|
|||
|
||||
struct memchunk memchunk, silence;
|
||||
|
||||
uint32_t in_fragment_size, out_fragment_size, sample_size, sample_usec;
|
||||
uint32_t in_fragment_size, out_fragment_size, sample_size;
|
||||
|
||||
int fd;
|
||||
};
|
||||
|
|
@ -99,7 +99,7 @@ static void io_callback(struct iochannel *io, void*userdata) {
|
|||
static uint32_t sink_get_latency_cb(struct sink *s) {
|
||||
int arg;
|
||||
struct userdata *u = s->userdata;
|
||||
assert(s && u);
|
||||
assert(s && u && u->sink);
|
||||
|
||||
if (ioctl(u->fd, SNDCTL_DSP_GETODELAY, &arg) < 0) {
|
||||
fprintf(stderr, "module-oss: device doesn't support SNDCTL_DSP_GETODELAY.\n");
|
||||
|
|
@ -107,7 +107,7 @@ static uint32_t sink_get_latency_cb(struct sink *s) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
return arg/u->sample_size*u->sample_usec;
|
||||
return samples_usec(arg, &s->sample_spec);
|
||||
}
|
||||
|
||||
int module_init(struct core *c, struct module*m) {
|
||||
|
|
@ -204,7 +204,6 @@ int module_init(struct core *c, struct module*m) {
|
|||
u->memchunk.memblock = NULL;
|
||||
u->memchunk.length = 0;
|
||||
u->sample_size = sample_size(&ss);
|
||||
u->sample_usec = 1000000/ss.rate;
|
||||
|
||||
u->out_fragment_size = out_frag_size;
|
||||
u->in_fragment_size = in_frag_size;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue