  <?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.alsa-project.org/main/index.php?action=history&amp;feed=atom&amp;title=Detailed_changes_v1.2.7.1_v1.2.7.2</id>
	<title>Detailed changes v1.2.7.1 v1.2.7.2 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.alsa-project.org/main/index.php?action=history&amp;feed=atom&amp;title=Detailed_changes_v1.2.7.1_v1.2.7.2"/>
	<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=Detailed_changes_v1.2.7.1_v1.2.7.2&amp;action=history"/>
	<updated>2026-04-14T04:19:39Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.0</generator>
	<entry>
		<id>https://www.alsa-project.org/main/index.php?title=Detailed_changes_v1.2.7.1_v1.2.7.2&amp;diff=7483&amp;oldid=prev</id>
		<title>Perex: 1 revision</title>
		<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=Detailed_changes_v1.2.7.1_v1.2.7.2&amp;diff=7483&amp;oldid=prev"/>
		<updated>2022-07-08T16:52:57Z</updated>

		<summary type="html">&lt;p&gt;1 revision&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:52, 8 July 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Perex</name></author>
	</entry>
	<entry>
		<id>https://www.alsa-project.org/main/index.php?title=Detailed_changes_v1.2.7.1_v1.2.7.2&amp;diff=7482&amp;oldid=prev</id>
		<title>Perex at 16:52, 8 July 2022</title>
		<link rel="alternate" type="text/html" href="https://www.alsa-project.org/main/index.php?title=Detailed_changes_v1.2.7.1_v1.2.7.2&amp;diff=7482&amp;oldid=prev"/>
		<updated>2022-07-08T16:52:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
{| align=&amp;quot;right&amp;quot;&lt;br /&gt;
| __TOC__&lt;br /&gt;
|}&lt;br /&gt;
=Detailed changelog between 1.2.7.1 and 1.2.7.2 releases=&lt;br /&gt;
=Changelog between 1.2.7.1 and 1.2.7.2 releases=&lt;br /&gt;
==alsa-lib==&lt;br /&gt;
===Core===&lt;br /&gt;
- Release v1.2.7.2&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
===Mixer API===&lt;br /&gt;
- mixer: add documentation about postcondition of removal event processing&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 PulseAudio and PipeWire seems to appear including careless code to&lt;br /&gt;
 process events of mixer element in implementation of mixer class.&lt;br /&gt;
 &lt;br /&gt;
  * https://lore.kernel.org/alsa-devel/YrbxZ2b+3rIdi7Ut@workstation/&lt;br /&gt;
 &lt;br /&gt;
 They register own implementation of mixer class. At addition event,&lt;br /&gt;
 they attach own mixer element into hcontrol element. However at removal&lt;br /&gt;
 event, they never detach the mixer element from hcontrol element. They&lt;br /&gt;
 hit assertion in mixer API internal due to unsatisfied postcondition.&lt;br /&gt;
 &lt;br /&gt;
 This commit adds documentation about postcondition of removal event&lt;br /&gt;
 processing so that developer for implementation of mixer class easily&lt;br /&gt;
 realize the way to satisfy the postcondition.&amp;lt;/code&amp;gt;&lt;br /&gt;
===PCM API===&lt;br /&gt;
- pcm: share plugin: handle -EINTR&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- pcm: share plugin: return error if socket read or write call fails&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
===RawMidi API===&lt;br /&gt;
- rawmidi: fix the params_mode check condition in snd_rawmidi_tread()&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The condition should be obviously reversed.&amp;lt;/code&amp;gt;&lt;br /&gt;
===Use Case Manager API===&lt;br /&gt;
- ucm: fix st_mode check for symbolic links&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The file type in the st_mode field is not encoded as unique bits but as&lt;br /&gt;
 an enumerator. Checking if some bits of S_IFLNK are set does not work&lt;br /&gt;
 correctly because it happens to evaluate to true for regular files as&lt;br /&gt;
 well.&lt;br /&gt;
 &lt;br /&gt;
 The POSIX man page suggests using the following approach to check&lt;br /&gt;
 the file type:&lt;br /&gt;
 &lt;br /&gt;
     if ((sb.st_mode &amp;amp; S_IFMT) == S_IFLNK)&lt;br /&gt;
 &lt;br /&gt;
 Alternatively, there is a S_ISLNK() macro to check this more easily.&lt;br /&gt;
 &lt;br /&gt;
 Make use of the latter so that readlink() is only called on actual&lt;br /&gt;
 symbolic links and not regular files. This makes audio work again&lt;br /&gt;
 with slightly older alsa-ucm-conf versions or alternative top-level&lt;br /&gt;
 ucm.conf configurations that do not make use of symlinks.&amp;lt;/code&amp;gt;&lt;br /&gt;
===Kernel Headers===&lt;br /&gt;
- include/sound/type_compat.h: fix include guard&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 include/sound/type_compat.h uses #define __TYPE_COMPAT_H but it conflicts&lt;br /&gt;
 same include guard of include/type_compat.h&lt;br /&gt;
 &lt;br /&gt;
 now, include/sound/type_compat.h uses #define __SOUND_TYPE_COMPAT_H&lt;br /&gt;
 &lt;br /&gt;
 this is already done in NetBSD's pkgsrc patch.&lt;br /&gt;
 &lt;br /&gt;
 (thanks to tsutsui@netbsd.org)&amp;lt;/code&amp;gt;&lt;br /&gt;
==alsa-ucm-conf==&lt;br /&gt;
===Configuration===&lt;br /&gt;
- tegra: max98090: cleanups&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 - add &amp;quot;all switches (devices) off&amp;quot; to the verb's enable sequence&lt;br /&gt;
 - reshuffle positions of device enable/disable sequences in HiFi.conf&lt;br /&gt;
 - add missing newline to the end of file&amp;lt;/code&amp;gt;&lt;br /&gt;
- tegra: max98090: move enable sequence to main file&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- tegra: max98090: disable all inputs and outputs in enable sequence&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- tegra: max98090: use only needed switches&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- tegra: max98090: add speakers and internal mic&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- ucm2: sof-soundwire: rt711-sdca: use codec volume/switch consistently&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 We already use&lt;br /&gt;
 &lt;br /&gt;
                 CaptureSwitch &amp;quot;rt711 FU0F Capture Switch&amp;quot;&lt;br /&gt;
                 CaptureVolume &amp;quot;rt711 FU0F Capture Volume&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 but the enable/disable sequences used the SOF 'PGA2.0 2 Master Capture&lt;br /&gt;
 Switch'&amp;lt;/code&amp;gt;&lt;br /&gt;
- ucm2: sof-soundwire: rt711: use codec volume/switch instead of SOF ones&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 When possible, it's better to use the codec volume and switch. The&lt;br /&gt;
 firmware PGA is provided mostly for testing.&amp;lt;/code&amp;gt;&lt;br /&gt;
- Add support for the Traktor Kontrol Z1&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 This is a small DJ mixer with a main output and a monitor output.&lt;br /&gt;
 The outputs appear as a single subdevice, we use the SplitPCM macros to&lt;br /&gt;
 present separate outputs.&lt;br /&gt;
 &lt;br /&gt;
 Link: https://www.native-instruments.com/en/products/traktor/dj-controllers/traktor-kontrol-z1/specifications/&amp;lt;/code&amp;gt;&lt;br /&gt;
- Allow direct cards that only work in one direction&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Allow DirectCaptureChannels or DirectPlaybackChannels to be left&lt;br /&gt;
 undefined.&amp;lt;/code&amp;gt;&lt;br /&gt;
- USB-Audio: Dell-WD15-Dock: add jack controls&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 I recently added support for these to Linux, see&lt;br /&gt;
 https://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound.git/commit/?id=4b8ea38fabab45ad911a32a336416062553dfe9c&amp;lt;/code&amp;gt;&lt;br /&gt;
- SplitPCM: Set buffer parameters for dshare/dsnoop&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 Set the period time to 20ms and buffer time to 500ms by default.&lt;br /&gt;
 For USB devices, use the period time 10ms for the better latency.&amp;lt;/code&amp;gt;&lt;br /&gt;
- UMC204HD: Add PCM control autodetection&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The USB driver has two variants for the PCM control&lt;br /&gt;
 names:&lt;br /&gt;
 &lt;br /&gt;
   UMC204HD 192k Output Playback Switch / Volume&lt;br /&gt;
     and&lt;br /&gt;
   PCM Playback Switch / Volume&lt;br /&gt;
 &lt;br /&gt;
 BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/177&amp;lt;/code&amp;gt;&lt;br /&gt;
- common: ctl - remap.conf - switch Dst / Src use&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 The Dst and Src macro arguments were improperly used. Switch them.&lt;br /&gt;
 &lt;br /&gt;
 BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/177&amp;lt;/code&amp;gt;&lt;br /&gt;
- USB-Audio: Audient-ID4 - add device number to file names (0009 variant)&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- USB-Audio: add support for Audient-ID4 (variant 0003)&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- common: direct - fix the case where DirectCardName variable is undefined&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
- ucm2: sof-hda-dsp,sof-soundwire - fix typo devdisall -&amp;amp;gt; disdevall&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 BugLink: https://github.com/alsa-project/alsa-ucm-conf/issues/171&amp;lt;/code&amp;gt;&lt;br /&gt;
===Description===&lt;br /&gt;
- Release v1.2.7.2&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Perex</name></author>
	</entry>
</feed>