Lines Matching full:frames

234 unsigned int pcm_frames_to_bytes(struct pcm *pcm, unsigned int frames)  in pcm_frames_to_bytes()  argument
236 return frames * pcm->config.channels * in pcm_frames_to_bytes()
312 unsigned int frames) in pcm_areas_copy() argument
314 int size_bytes = pcm_frames_to_bytes(pcm, frames); in pcm_areas_copy()
335 unsigned int pcm_offset, frames, count = 0; in pcm_mmap_transfer_areas() local
338 frames = size; in pcm_mmap_transfer_areas()
339 pcm_mmap_begin(pcm, &pcm_areas, &pcm_offset, &frames); in pcm_mmap_transfer_areas()
340 pcm_areas_copy(pcm, pcm_offset, buf, offset, frames); in pcm_mmap_transfer_areas()
341 commit = pcm_mmap_commit(pcm, pcm_offset, frames); in pcm_mmap_transfer_areas()
343 oops(pcm, commit, "failed to commit %d frames\n", frames); in pcm_mmap_transfer_areas()
357 int frames; in pcm_get_htimestamp() local
378 frames = hw_ptr - pcm->mmap_control->appl_ptr; in pcm_get_htimestamp()
380 frames = hw_ptr + pcm->buffer_size - pcm->mmap_control->appl_ptr; in pcm_get_htimestamp()
382 if (frames < 0) in pcm_get_htimestamp()
383 frames += pcm->boundary; in pcm_get_htimestamp()
384 else if (frames > (int)pcm->boundary) in pcm_get_htimestamp()
385 frames -= pcm->boundary; in pcm_get_htimestamp()
387 *avail = (unsigned int)frames; in pcm_get_htimestamp()
400 x.frames = count / (pcm->config.channels * in pcm_write()
437 x.frames = count / (pcm->config.channels * in pcm_read()
828 static void pcm_mmap_appl_forward(struct pcm *pcm, int frames) in pcm_mmap_appl_forward() argument
831 appl_ptr += frames; in pcm_mmap_appl_forward()
840 unsigned int *frames) in pcm_mmap_begin() argument
847 /* and the application offset in frames */ in pcm_mmap_begin()
855 /* we can only copy frames if the are availabale and continuos */ in pcm_mmap_begin()
856 copy_frames = *frames; in pcm_mmap_begin()
861 *frames = copy_frames; in pcm_mmap_begin()
866 int pcm_mmap_commit(struct pcm *pcm, unsigned int offset, unsigned int frames) in pcm_mmap_commit() argument
869 pcm_mmap_appl_forward(pcm, frames); in pcm_mmap_commit()
872 return frames; in pcm_mmap_commit()
942 int err = 0, frames, avail; in pcm_mmap_transfer() local
952 /* get the available space for writing new frames */ in pcm_mmap_transfer()
955 fprintf(stderr, "cannot determine available mmap frames"); in pcm_mmap_transfer()
972 /* sleep until we have space to write new frames */ in pcm_mmap_transfer()
974 /* enable waiting for avail_min threshold when less frames than we have to write in pcm_mmap_transfer()
1003 frames = count; in pcm_mmap_transfer()
1004 if (frames > avail) in pcm_mmap_transfer()
1005 frames = avail; in pcm_mmap_transfer()
1007 if (!frames) in pcm_mmap_transfer()
1010 /* copy frames from buffer */ in pcm_mmap_transfer()
1011 frames = pcm_mmap_transfer_areas(pcm, (void *)buffer, offset, frames); in pcm_mmap_transfer()
1012 if (frames < 0) { in pcm_mmap_transfer()
1017 return frames; in pcm_mmap_transfer()
1020 offset += frames; in pcm_mmap_transfer()
1021 count -= frames; in pcm_mmap_transfer()