From nobody Tue Jul 30 14:18:20 2024 X-Original-To: freebsd-multimedia@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WYHQ96FBKz5S3TH for ; Tue, 30 Jul 2024 14:18:25 +0000 (UTC) (envelope-from christos@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WYHQ95NT9z4wFF; Tue, 30 Jul 2024 14:18:25 +0000 (UTC) (envelope-from christos@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1722349105; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=L3rDeAVgcTuyWJA1jW0zOQZW8m27MRmccoRZRLyD5G0=; b=ohlo9li9x7AuCniAeYpfBeoDUKdC0ftGo01iBlCAJFB15j2i/gMafgbA2sPmtWizLZee2c KC830qfqCjPftGB+kBZbweJ86Qy34fiOrrQ//2yHzMfJzNQ99Iy0YtnJPe5jvNsDuBrUcv 1CfWu7U5ZiyLVX3wtbPWEgOmJxJR5XmD3k6a12Yh4tDUxsOlti+dfmky9F0T81QAzTE0OD BUldhaBz5RjO67hQY5DdB6/NYkaHidc0JBqlYjhARTP1ALFXnvEhAReSvD2/6+AHBBSdEi ExduLkLabJQ4KsFltb/WG8s4/EiDASeMVuTrrBLBto2Wisy/Syx1YT64JQ5svg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1722349105; a=rsa-sha256; cv=none; b=ZpxfquezWlJ6cMSDItnLKaSPaA2DVdSL9wNVeD1LdrqzTxPY9gdPVUQediczzyHL/dPsRI T9txVL1xCZIp+8BEdSHjYHryHXJrrah1k1MdJiRwdi6aPCqyk9CQmCRi+7PqjkhrgOphSN YCFeSrcSclPQeMIMSBfb8sePkNaHBJ02gBpSQnAoV9iJKJ2hxv4XGMVa1lFAxagNPpYrw9 XcRS6fgSP1VGyGV3U7jmydl+Z884eXrnmBlJ4FOkhNhNOSu3nGfEtTGS273d1oBZNvbth7 WN1372LfOSbbmc340AsC6vvGLF0h8t3WLK92E0iPJqRgyuKc6gVjZ94BRJABrQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1722349105; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding:dkim-signature; bh=L3rDeAVgcTuyWJA1jW0zOQZW8m27MRmccoRZRLyD5G0=; b=DHtfgxtqbrN9yfnxz8fIRtnTJ3pxsGO2DQRmFERuiJAfSUJhTE2ckbcxPnFeHHZlj24xm/ n4rdgPOMEozabFxonb/ADkLy4CoirgtmyJfUaRT7AkLDcpTnU0TlG1sVByL/JGZjZa0N35 iV3E0cJhowcU5jfikygZnkgu8EEvg6JyVFSRUCDOQnkCW/bjrIwts9lntIiSnkSJlZC28F fU5i8AbCcvPbuDOQ94sBPSL/RuBz7Z5LauA71psOGUza88skAEBRvkZjgd/BIUEDhdnLVw 4325RuqmHZvbfaKOMrlNPpleJhgj2IyvW7IbVWtnLWf9xMhBOZ/hbqUVFWBZsQ== Received: from margiolis.net (mail.margiolis.net [95.179.159.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA512) (Client did not present a certificate) (Authenticated sender: christos/mail) by smtp.freebsd.org (Postfix) with ESMTPSA id 4WYHQ90wSHzPbk; Tue, 30 Jul 2024 14:18:25 +0000 (UTC) (envelope-from christos@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=mail; bh=L3rDeAVgcTuyWJA 1jW0zOQZW8m27MRmccoRZRLyD5G0=; h=subject:cc:to:from:date; d=margiolis.net; b=aZSOnekK+3vANeJIMKrI2SQCZtruba9Q5bWfOIZ2tuKvPy9+cvb JeGJDXZA2bPG0er9HHwezlfWcdTg25umZSmgbTkXaO3FwqISslDjJ+qrYrQjWsAO7BpP3i RtsgA6IVyErXwj28+u5uHEkt/+O4OVgU/nBCifn4lrd8cEYT44= Received: from tpad (31-217-175-70.cgn.acro.cosmote.net [31.217.175.70]) by margiolis.net (OpenSMTPD) with ESMTPSA id 3b0f473d (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Tue, 30 Jul 2024 14:18:22 +0000 (UTC) Date: Tue, 30 Jul 2024 17:18:20 +0300 From: Christos Margiolis To: status-updates@freebsdfoundation.org Cc: freebsd-multimedia@freebsd.org, markj@freebsd.org, jrm@freebsd.org, emaste@freebsd.org Subject: [Development report #18] Audio Stack Improvements Message-ID: List-Id: Multimedia discussions List-Archive: https://lists.freebsd.org/archives/freebsd-multimedia List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-multimedia@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit Submitted talk related to the project, for the 09/2024 DevSummit in Dublin, Ireland. Implementing audio(8). mixer(8): Make mute and recsrc argument parsing more robust: https://cgit.freebsd.org/src/commit/?id=8ca73331ef810cd0e0b9e3c37cddc1d89fbe8c6b sound: Implement dummy driver: https://cgit.freebsd.org/src/commit/?id=c15c9315b2cb7601cc337f7d5a8e124f4b2d5861 sound tests: Add sndstat nvlist ATF test: https://cgit.freebsd.org/src/commit/?id=95eb4b873b6a8b527c5bd78d7191975dfca38998 mixer(8): Add tests: https://cgit.freebsd.org/src/commit/?id=94a86f3f69205a6de3c07ae60daf4f5f920e9b82 sound examples: Organize files in directories: https://cgit.freebsd.org/src/commit/?id=cb00491fbc51751fe166056cc69e23beeb26fee4 sound examples: Add sndstat nvlist example: https://cgit.freebsd.org/src/commit/?id=f08ecd24a19ba772701fc35caaad92b9fe91fa9c sound: Fix memory leak in chn_init(): https://cgit.freebsd.org/src/commit/?id=16329b7b3276f09dc70bdd1ca8bc605546fe71e0 Fixed a panic reported by Peter Holm, related to fc76e24e583d (”sound: Fix lock order reversals in mseq_open()”), which was triggered by stress2. Eventually saw that rew@ had already committed the same fix: https://cgit.freebsd.org/src/commit/?id=3114d55866b86ca1132923211936aa23881b0057 snd_hdsp*: Free up channel resources in case of CHANNEL_INIT() failure: https://cgit.freebsd.org/src/commit/?id=85d1c84c2406aa2e4e2114215b01eee65714848f sound: Simplify chn_init(): https://cgit.freebsd.org/src/commit/?id=5b209e153b58515c0315f5902e18ecd7d75ecd2a sound: Rename chn_* feeder functions to feeder_*: https://cgit.freebsd.org/src/commit/?id=29ff7b08be363f0d4345794bb951d5c0c8406a0a sound: Remove unused FEEDER_DEBUG: https://cgit.freebsd.org/src/commit/?id=c55f995502cbaa2d38b7a7003bc27805b28a6a29 sound: Remove unused defines from pcm/sound.h: https://cgit.freebsd.org/src/commit/?id=f477d412530a8cb9d8e058d00189ce127584f6f6 sound: Simplify feeder_remove(): https://cgit.freebsd.org/src/commit/?id=00172d20070a544e0514cce9f94475c5525fd15e sound: Add device status string to sndstat nvlist: https://cgit.freebsd.org/src/commit/?id=810530aa2648812860e84d951d9cf96dfd24e595 sound: Add *vchanrate and *vchanformat to sndstat nvlist: https://cgit.freebsd.org/src/commit/?id=a6283717577066b0ff6c62053145470ff4134051 sound: Add OSS channel capabilities to sndstat nvlist: https://cgit.freebsd.org/src/commit/?id=bd5bcc848c5764229926ad27a4bd77af4f87d189 sndstat.4: Fix typo: https://cgit.freebsd.org/src/commit/?id=f0eceecf5ab51a68d713f9a5a7f360964d0a49ce sound: Fix VCHANs' starting and ending points in feeder chain: https://reviews.freebsd.org/D46177 Working on PR 280315: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280315 Working on PR 280319: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280319 Posted my audio(3) WIP for an initial discussion and constructive criticism. After consideration of Florian’s comments (even though I have some disagreements) and some of the potential ideas we discussed, I think it’s better to put the library on the backburner for a while, as it requires more discussion with other audio developers and a better implementation. Since I am 1.5 months away from the contract’s deadline, I think it’s better to focus on the rest of the deliverables, which are more important to the regular user than the library. Contacted hccontrol(8)’s author and wulf@ about hccontrol(8)’s lack of stability. They told me the problem is most likely in the bluetooth stack code itself, and not hccontrol(8). I am considering continuing the development of bluetooth device management utility, but in any case I will not guarantee its stability. Both the people I emailed told me that all bluetooth utilities seem to be very unstable at this point. MFC’d all recent patches to stable/14. This work is sponsored by the FreeBSD Foundation. Christos