From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jaroslav Kysela Subject: Re: Will we ever see a low latency/high performance PCM api for usb, firewire, avb ? Date: Fri, 26 Apr 2019 08:37:24 +0200 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail1.perex.cz (mail1.perex.cz [77.48.224.245]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by alsa1.perex.cz (Postfix) with ESMTPS id ADAE9F80C41 for ; Fri, 26 Apr 2019 08:37:27 +0200 (CEST) In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: "Alsa-devel" To: Ralf Beck , alsa-devel@alsa-project.org List-Id: alsa-devel@alsa-project.org Dne 25. 04. 19 v 22:54 Ralf Beck napsal(a): > Subject says it all. > > During the Dec/Jan period i did some USB patches for the Motu AVB series and a trivial alsa driver to connect my Motu via AVB for a single i/o stream. So i discovered how totally unsuitable the mmapped ringbuffer model of alsa is for the above types of interfaces. Is there any intention to change this ? > I've read that this has already been discussed during miniconf 2017 (USB) and 2018 (AVB). Any results? Any idea to improve the transfer method? The problem with the serial buses is that you have to queue usually more samples to avoid underruns. The system scheduling comes to play, too (no direct DMA transfers from the audio buffer without further main CPU intervention). Also, you can write only read/write driver without mmap support (ALSA API supports this mode). But I don't think that it will help much. If you have problem to find good ring buffer size / period size settings, it's usually because of the hardware limitation or the system scheduler settings. Jaroslav -- Jaroslav Kysela Linux Sound Maintainer; ALSA Project; Red Hat, Inc.