qemu-e2k/audio
Volker Rümelin a9ea567873 audio: make recording packet length calculation exact
Introduce the new function st_rate_frames_out() to calculate the
exact number of audio output frames the resampling code can
generate from a given number of audio input frames. When upsampling,
this function returns the maximum number of output frames.

This new function replaces the audio_frontend_frames_in()
function, which calculated the average number of output frames
rounded down to the nearest integer. The audio_frontend_frames_in()
function was additionally used to limit the number of output frames
to the resample buffer size. In audio_pcm_sw_read() the variable
resample_buf.size replaces the open coded audio_frontend_frames_in()
function. In audio_run_in() an additional MIN() function is
necessary.

After this patch the audio packet length calculation for audio
recording is exact.

Acked-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
Message-Id: <20230224190555.7409-12-vr_qemu@t-online.de>
2023-03-06 10:30:23 +04:00
..
alsaaudio.c alsaaudio: reintroduce default recording settings 2023-03-06 10:30:23 +04:00
audio_int.h audio: change type and name of the resample buffer 2023-03-06 10:30:23 +04:00
audio_legacy.c qapi, audio: Make introspection reflect build configuration more closely 2023-01-30 15:43:55 +01:00
audio_template.h audio: change type and name of the resample buffer 2023-03-06 10:30:23 +04:00
audio_win_int.c
audio_win_int.h
audio-hmp-cmds.c audio: Move HMP commands from monitor/ to audio/ 2023-02-04 07:56:54 +01:00
audio.c audio: make recording packet length calculation exact 2023-03-06 10:30:23 +04:00
audio.h audio: add help option for -audio and -audiodev 2022-09-19 15:15:59 +02:00
coreaudio.m
dbusaudio.c audio: swap audio_rate_get_bytes() function parameters 2022-10-11 10:17:08 +02:00
dsound_template.h
dsoundaudio.c
jackaudio.c
meson.build audio: Move HMP commands from monitor/ to audio/ 2023-02-04 07:56:54 +01:00
mixeng_template.h
mixeng.c audio: make recording packet length calculation exact 2023-03-06 10:30:23 +04:00
mixeng.h audio: make recording packet length calculation exact 2023-03-06 10:30:23 +04:00
noaudio.c audio: swap audio_rate_get_bytes() function parameters 2022-10-11 10:17:08 +02:00
ossaudio.c qapi audio: Elide redundant has_FOO in generated C 2022-12-13 18:31:37 +01:00
paaudio.c qapi audio: Elide redundant has_FOO in generated C 2022-12-13 18:31:37 +01:00
rate_template.h audio: make the resampling code greedy 2023-03-06 10:30:23 +04:00
sdlaudio.c
sndioaudio.c Fix non-first inclusions of qemu/osdep.h 2023-02-08 07:28:05 +01:00
spiceaudio.c audio: swap audio_rate_get_bytes() function parameters 2022-10-11 10:17:08 +02:00
trace-events
trace.h
wavaudio.c qapi audio: Elide redundant has_FOO in generated C 2022-12-13 18:31:37 +01:00
wavcapture.c