From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnaud Pouliquen Subject: [RFC] How to perform audio offloading in none tunneled mode Date: Tue, 8 Sep 2015 18:04:12 +0200 Message-ID: <55EF06FC.90400@st.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: Received: from mx07-00178001.pphosted.com (mx08-00178001.pphosted.com [91.207.212.93]) by alsa0.perex.cz (Postfix) with ESMTP id 624CA26508C for ; Tue, 8 Sep 2015 18:04:16 +0200 (CEST) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: "alsa-devel@alsa-project.org" Cc: Mark Brown List-Id: alsa-devel@alsa-project.org Hello, I'm looking at possibility to offload atomic actions like mixing, decoding, encoding on a co-processor, and collect the result on host side. Rational: - Allow none-tunneled mode: . decoding and mixing on a DSP but A/V synchro on host (android, Gstreamer) . re-encode after mixing (HDMI) - Allow to get post processing PCM stream to play it on USB or bluetooth devices. - Allow to add some processing in pipe on host side. - MIPS partitioning -... Some constraints: - avoid copy (buffer descriptors) - dynamic connection for mixing and splitting. For this, i can list two standard drivers: V4L2 and ALSA. If V4L2 should be OK for encode and decode, seems designed more for video than audio. For mixing and processing... ALSA could answer to this kind of use cases, using compress API and ASoC dynamic PCM mechanism... As example a mixer would be a sound card with several PCM playbacks and a PCM capture. For time being i have never seen this kind of implementation... What is your feeling on possibility to perform it with ALSA (with objective to be upstreamable)? Otherwise, any standard way to do it? Thanks in advance for your answer Br, Arnaud