From: "Kővágó, Zoltán" <dirty.ice.hu@gmail.com>
To: qemu-devel@nongnu.org
Cc: Gerd Hoffmann <kraxel@redhat.com>
Subject: [Qemu-devel] [PATCH v2 11/24] audio: remove remains of the old backend api
Date: Sun, 8 Sep 2019 23:22:11 +0200 [thread overview]
Message-ID: <80ed6f958ab8c12c0af3d67617e1bcfd117d308d.1567965065.git.DirtY.iCE.hu@gmail.com> (raw)
In-Reply-To: <cover.1567965065.git.DirtY.iCE.hu@gmail.com>
Signed-off-by: Kővágó, Zoltán <DirtY.iCE.hu@gmail.com>
---
audio/audio.c | 42 ++++++------------------------------------
audio/audio_int.h | 7 -------
2 files changed, 6 insertions(+), 43 deletions(-)
diff --git a/audio/audio.c b/audio/audio.c
index f5a5942da9..c945f23724 100644
--- a/audio/audio.c
+++ b/audio/audio.c
@@ -541,7 +541,7 @@ static size_t audio_pcm_hw_find_min_in (HWVoiceIn *hw)
return m;
}
-size_t audio_pcm_hw_get_live_in(HWVoiceIn *hw)
+static size_t audio_pcm_hw_get_live_in(HWVoiceIn *hw)
{
size_t live = hw->total_samples_captured - audio_pcm_hw_find_min_in (hw);
if (audio_bug(__func__, live > hw->samples)) {
@@ -551,29 +551,7 @@ size_t audio_pcm_hw_get_live_in(HWVoiceIn *hw)
return live;
}
-size_t audio_pcm_hw_clip_out(HWVoiceOut *hw, void *pcm_buf,
- size_t live, size_t pending)
-{
- size_t left = hw->samples - pending;
- size_t len = MIN (left, live);
- size_t clipped = 0;
-
- while (len) {
- struct st_sample *src = hw->mix_buf + hw->rpos;
- uint8_t *dst = advance (pcm_buf, hw->rpos << hw->info.shift);
- size_t samples_till_end_of_buf = hw->samples - hw->rpos;
- size_t samples_to_clip = MIN (len, samples_till_end_of_buf);
-
- hw->clip (dst, src, samples_to_clip);
-
- hw->rpos = (hw->rpos + samples_to_clip) % hw->samples;
- len -= samples_to_clip;
- clipped += samples_to_clip;
- }
- return clipped;
-}
-
-static void audio_pcm_hw_clip_out2(HWVoiceOut *hw, void *pcm_buf, size_t len)
+static void audio_pcm_hw_clip_out(HWVoiceOut *hw, void *pcm_buf, size_t len)
{
size_t clipped = 0;
size_t pos = hw->rpos;
@@ -1078,7 +1056,7 @@ static size_t audio_pcm_hw_run_out(HWVoiceOut *hw, size_t live)
void *buf = hw->pcm_ops->get_buffer_out(hw, &size);
decr = MIN(size >> hw->info.shift, live);
- audio_pcm_hw_clip_out2(hw, buf, decr);
+ audio_pcm_hw_clip_out(hw, buf, decr);
proc = hw->pcm_ops->put_buffer_out(hw, buf, decr << hw->info.shift) >>
hw->info.shift;
@@ -1141,11 +1119,7 @@ static void audio_run_out (AudioState *s)
}
prev_rpos = hw->rpos;
- if (hw->pcm_ops->run_out) {
- played = hw->pcm_ops->run_out(hw, live);
- } else {
- played = audio_pcm_hw_run_out(hw, live);
- }
+ played = audio_pcm_hw_run_out(hw, live);
replay_audio_out(&played);
if (audio_bug(__func__, hw->rpos >= hw->samples)) {
dolog("hw->rpos=%zu hw->samples=%zu played=%zu\n",
@@ -1242,12 +1216,8 @@ static void audio_run_in (AudioState *s)
size_t captured = 0, min;
if (replay_mode != REPLAY_MODE_PLAY) {
- if (hw->pcm_ops->run_in) {
- captured = hw->pcm_ops->run_in(hw);
- } else {
- captured = audio_pcm_hw_run_in(
- hw, hw->samples - audio_pcm_hw_get_live_in(hw));
- }
+ captured = audio_pcm_hw_run_in(
+ hw, hw->samples - audio_pcm_hw_get_live_in(hw));
}
replay_audio_in(&captured, hw->conv_buf, &hw->wpos, hw->samples);
diff --git a/audio/audio_int.h b/audio/audio_int.h
index 8fb1ca8a8d..c76d7c39e8 100644
--- a/audio/audio_int.h
+++ b/audio/audio_int.h
@@ -153,7 +153,6 @@ struct audio_driver {
struct audio_pcm_ops {
int (*init_out)(HWVoiceOut *hw, audsettings *as, void *drv_opaque);
void (*fini_out)(HWVoiceOut *hw);
- size_t (*run_out)(HWVoiceOut *hw, size_t live);
size_t (*write) (HWVoiceOut *hw, void *buf, size_t size);
/*
* get a buffer that after later can be passed to put_buffer_out; optional
@@ -171,7 +170,6 @@ struct audio_pcm_ops {
int (*init_in) (HWVoiceIn *hw, audsettings *as, void *drv_opaque);
void (*fini_in) (HWVoiceIn *hw);
- size_t (*run_in)(HWVoiceIn *hw);
size_t (*read) (HWVoiceIn *hw, void *buf, size_t size);
void *(*get_buffer_in)(HWVoiceIn *hw, size_t *size);
void (*put_buffer_in)(HWVoiceIn *hw, void *buf, size_t size);
@@ -237,11 +235,6 @@ audio_driver *audio_driver_lookup(const char *name);
void audio_pcm_init_info (struct audio_pcm_info *info, struct audsettings *as);
void audio_pcm_info_clear_buf (struct audio_pcm_info *info, void *buf, int len);
-size_t audio_pcm_hw_get_live_in(HWVoiceIn *hw);
-
-size_t audio_pcm_hw_clip_out(HWVoiceOut *hw, void *pcm_buf,
- size_t live, size_t pending);
-
int audio_bug (const char *funcname, int cond);
void *audio_calloc (const char *funcname, int nmemb, size_t size);
--
2.23.0
next prev parent reply other threads:[~2019-09-08 21:29 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-09-08 21:22 [Qemu-devel] [PATCH v2 00/24] Audio: Mixeng-free 5.1/7.1 audio support Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 01/24] audio: api for mixeng code free backends Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 02/24] alsaaudio: port to the new audio backend api Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 03/24] coreaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 04/24] dsoundaudio: " Kővágó, Zoltán
2019-09-11 7:00 ` Gerd Hoffmann
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 05/24] noaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 06/24] ossaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 07/24] paaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 08/24] sdlaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 10/24] wavaudio: " Kővágó, Zoltán
2019-09-08 21:22 ` Kővágó, Zoltán [this message]
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 12/24] audio: unify input and output mixeng buffer management Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 13/24] audio: common rate control code for timer based outputs Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 14/24] audio: split ctl_* functions into enable_* and volume_* Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 15/24] audio: add mixeng option (documentation) Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 16/24] audio: make mixeng optional Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 18/24] audio: support more than two channels in volume setting Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 19/24] audio: replace shift in audio_pcm_info with bytes_per_frame Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 20/24] audio: basic support for multichannel audio Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 21/24] paaudio: channel-map option Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 22/24] usb-audio: do not count on avail bytes actually available Kővágó, Zoltán
2019-09-08 21:22 ` [Qemu-devel] [PATCH v2 24/24] usbaudio: change playback counters to 64 bit Kővágó, Zoltán
2019-09-12 10:20 ` [Qemu-devel] [PATCH v2 00/24] Audio: Mixeng-free 5.1/7.1 audio support Gerd Hoffmann
2019-09-15 1:08 ` Zoltán Kővágó
2019-09-17 11:38 ` Gerd Hoffmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=80ed6f958ab8c12c0af3d67617e1bcfd117d308d.1567965065.git.DirtY.iCE.hu@gmail.com \
--to=dirty.ice.hu@gmail.com \
--cc=kraxel@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).