qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Kővágó Zoltán" <dirty.ice.hu@gmail.com>
To: "Marc-André Lureau" <marcandre.lureau@gmail.com>
Cc: QEMU <qemu-devel@nongnu.org>, Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 21/25] audio: common rate control code for timer based outputs
Date: Fri, 21 Aug 2015 15:34:30 +0200	[thread overview]
Message-ID: <55D728E6.9020504@gmail.com> (raw)
In-Reply-To: <CAJ+F1CKbapd8Nck1SirRzyZm+gf2j=X_F+oKQ2nc6jjorgZ8jA@mail.gmail.com>

Hi,

2015-08-21 00:37 keltezéssel, Marc-André Lureau írta:
> Hi
>
> On Thu, Aug 6, 2015 at 8:28 PM, Kővágó, Zoltán <dirty.ice.hu@gmail.com> wrote:
>>
>> -    decr = rate_get_samples(&hw->info, &out->rate);
>> -    decr = audio_MIN(out->fsize - out->fpos, decr);
>> -
>> -    *size = decr << 2;
>> +    *size = audio_rate_get_bytes(&hw->info, &out->rate,
>> +                                 (out->fsize - out->fpos) << 2);
>>       return out->frame + out->fpos;
>>   }
>
> I am not familiar with this "rate" thing, but you are changing the way
> it works for Spice without explaining why, and that worries me a
> little.
>
> The rate->bytes_sent is not updated the same way, the result is not
> always << 2..
>
> I really don't get what this is really doing tbh, some kind of clever
> buffer limit :)
>

The old code pretty much ignored if the buffer overflow (which shouldn't 
happen normally), while the new one doesn't.  The problem is that with 
this new get_buffer/put_buffer thing if we reach the end of the circular 
buffer, it will produce have the same effect as a buffer overflow, but 
we need to handle it more gracefully as it will now happen every now and 
then.

But probably I'll change << 2 to info.shift, to handle more gracefully 
if the spice stream format changes.

Zoltan

  reply	other threads:[~2015-08-21 13:34 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-06 18:28 [Qemu-devel] [PATCH 00/25] audio: -audiodev option, multiple options Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 01/25] qapi: support implicit structs in OptsVisitor Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 02/25] qapi: convert NumaOptions into a flat union Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 03/25] net: remove NetLegacy struct Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 04/25] net: use Netdev instead of NetClientOptions in client init Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 05/25] qapi: change Netdev into a flat union Kővágó, Zoltán
2015-08-20 15:03   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 06/25] qapi: reorder NetdevBase and Netdev Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 07/25] qapi: qapi for audio backends Kővágó, Zoltán
2015-08-20 15:30   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 08/25] qapi: support nested structs in OptsVisitor Kővágó, Zoltán
2015-08-20 15:55   ` Marc-André Lureau
2015-08-20 21:21     ` Kővágó Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 09/25] audio: use qapi AudioFormat instead of audfmt_e Kővágó, Zoltán
2015-08-20 16:00   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 10/25] audio: -audiodev command line option Kővágó, Zoltán
2015-08-20 17:17   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 11/25] audio: reduce glob_audio_state usage Kővágó, Zoltán
2015-08-20 17:39   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 12/25] audio: basic support for multi backend audio Kővágó, Zoltán
2015-08-20 18:01   ` Marc-André Lureau
2015-08-21 12:23     ` Kővágó Zoltán
2015-08-21 14:24       ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 13/25] audio: add audiodev properties to frontends Kővágó, Zoltán
2015-08-20 18:55   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 14/25] audio: audiodev= parameters no longer optional when -audiodev present Kővágó, Zoltán
2015-08-20 19:15   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 15/25] paaudio: do not create multiple connections to the same server Kővágó, Zoltán
2015-08-20 19:38   ` Marc-André Lureau
2015-08-21 12:41     ` Kővágó Zoltán
2015-08-21 14:36       ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 16/25] paaudio: properly disconnect streams in fini_* Kővágó, Zoltán
2015-08-20 20:29   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 17/25] audio: remove gcc specific audio_MIN, audio_MAX Kővágó, Zoltán
2015-08-19 18:17   ` Gerd Hoffmann
2015-08-19 23:31     ` Peter Maydell
2015-08-20 20:36   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 18/25] audio: do not run each backend in audio_run Kővágó, Zoltán
2015-08-20 20:49   ` Marc-André Lureau
2015-08-21 12:59     ` Kővágó Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 19/25] paaudio: fix playback glitches Kővágó, Zoltán
2015-08-20 22:08   ` Marc-André Lureau
2015-08-21 13:18     ` Kővágó Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 20/25] audio: remove mixeng specific code from backends Kővágó, Zoltán
2015-08-19 19:07   ` Gerd Hoffmann
2015-08-20 22:28     ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 21/25] audio: common rate control code for timer based outputs Kővágó, Zoltán
2015-08-20 22:37   ` Marc-André Lureau
2015-08-21 13:34     ` Kővágó Zoltán [this message]
2015-08-06 18:28 ` [Qemu-devel] [PATCH 22/25] audio: add mixeng option (documentation) Kővágó, Zoltán
2015-08-20 22:49   ` Marc-André Lureau
2015-08-21 13:46     ` Kővágó Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 23/25] audio: make mixeng optional Kővágó, Zoltán
2015-08-20 22:56   ` Marc-André Lureau
2015-08-06 18:28 ` [Qemu-devel] [PATCH 24/25] paaudio: get/put_buffer functions Kővágó, Zoltán
2015-08-06 18:28 ` [Qemu-devel] [PATCH 25/25] audio: split ctl_* functions into enable_* and volume_* Kővágó, Zoltán
2015-08-20 23:05   ` Marc-André Lureau

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=55D728E6.9020504@gmail.com \
    --to=dirty.ice.hu@gmail.com \
    --cc=kraxel@redhat.com \
    --cc=marcandre.lureau@gmail.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).