• Ny stor uppdatering: WirePlumber 0.5 introducerar smart filter policy

    Ibland kan det vara bra att filtera en del oljud.

    Efter mer än två års utveckling sedan version 0.4 släpptes, är WirePlumber 0.5 äntligen här, och med denna nya version kommer en rad nya funktioner och förbättringar. Bland dessa nya funktioner hittar vi Event Dispatcher, men i denna artikel kommer vi att fokusera på en annan mycket spännande nyhet: Smart Filter Policy.

    WirePlumber är en kraftfull session manager för PipeWire, ett modernt multimedia-ljudsystem som blir alltmer populärt på Linux-system. WirePlumber fungerar som en brygga mellan användare och PipeWire, och hanterar olika uppgifter som automatisk anslutning av ljudenheter, strömhantering och hantering av sessioner. Sedan den första lanseringen har WirePlumber spelat en central roll i att göra PipeWire mer användarvänligt och anpassningsbart för både professionella och vardagliga användare.

    Vad är ljudfilter?

    Ljudfilter är bearbetningsenheter som omvandlar frekvenserna i en ljudsignal. Dessa filter kan användas i många olika sammanhang, och likt PulseAudio erbjuder PipeWire redan moduler som inkluderar de vanligaste ljudfiltren. Exempel på dessa är:

    • Filter-Chain-modulen: Skapar ett ”pipeline”-filter från en kedja av andra filter, inklusive tredjepartsfilter från projekt som LADSPA eller LV2, samt inbyggda PipeWire-filter såsom equalizers och mixers.
    • Echo-Cancel-modulen: Tar bort eko från inspelningsenheter genom att övervaka deras respektive uppspelningsenhet.
    • Loopback-modulen: Vidarebefordrar ljudsignalen utan att ändra några frekvenser, vilket kan vara användbart för att dölja en specifik enhet.

    Hur fungerar ljudfilter i PipeWire?

    I PipeWire representeras ljudfilter som ett par av två noder: en virtuell klientnod och en virtuell enhetsnod. Detta upplägg gör att användare kan kontrollera och ändra den verkliga enheten som är kopplad till filterutgången samt den klient som skickar ljud till filteringången. Användarna kan använda verktyg som PulseAudio Volume Control eller WirePlumbers CLI-verktyg, wpctl, för att hantera dessa filter utan att behöva bekymra sig om tekniska detaljer.

    Introduktion av Smart Filter Policy i WirePlumber 0.5

    I tidigare versioner av WirePlumber behandlades ljudfilternoder som vanliga noder. Detta innebar att användaren manuellt behövde flytta filter när nya ljudenheter anslöts, om dessa enheter inte var standard. Dessutom behövde klientströmmen riktas mot det faktiska filtret istället för den riktiga enheten. Detta kunde bli krångligt, särskilt för filter som Echo-Cancel, som bara är användbart med högtalare och mikrofoner, men inte med ett headset.

    För att lösa detta introducerar WirePlumber 0.5 den nya Smart Filter Policy. Denna funktion automatiserar processen att länka filter till specifika enheter, vilket gör att användare slipper manuellt ingripande varje gång de vill använda ett specifikt filter med en viss enhet.

    Hur fungerar Smart Filter Policy?

    Den smarta filterpolicyn styrs av en uppsättning egenskaper som kan ställas in i den virtuella enhetsnoden för ett ljudfilter. Dessa egenskaper inkluderar:

    • filter.smart: Aktiverar den smarta filterpolicyn.
    • filter.smart.name: Unikt namnidentifierare för filtret.
    • filter.smart.before: Lista över filter som ska kedjas före detta filter.
    • filter.smart.after: Lista över filter som ska kedjas efter detta filter.
    • filter.smart.target: Egenskaper för det filterets slutmål.

    Dessa egenskaper gör det möjligt att automatiskt och transparent kontrollera hur filter kedjas ihop och länkas till enheter. Till exempel, om du har tre utgångsfilter och två utgångsenheter, kan du instruera WirePlumber att kedja två filter och använda dem med en viss enhet, medan ett tredje filter bara används med en annan enhet.

    Praktiska tillämpningar

    En av de mest uppenbara fördelarna med den smarta filterpolicyn är att den gör det möjligt för spelare och andra användare att konfigurera sina system så att rätt filter (som ekodämpning eller brusreducering) bara aktiveras när de behövs. Spelet eller applikationen behöver inte veta vilken enhet som används eller vilka filter som är aktiverade, allt sker automatiskt och utan att användaren behöver ingripa.

    Slutsats

    Den smarta filterpolicyn i WirePlumber 0.5 är fortfarande experimentell och kan komma att förbättras ytterligare i framtiden. Men redan nu erbjuder den en smidig lösning för att hantera och automatisera användningen av ljudfilter, vilket gör livet enklare för användare som vill ha en sömlös upplevelse. Genom att automatisera filterkonfigurationer som tidigare krävde manuellt arbete, markerar denna funktion ett betydande steg framåt för WirePlumber och PipeWire.

    Om du är nyfiken på att prova, rekommenderas att du leker med inställningarna och ger feedback till utvecklarna för ytterligare förbättringar.

    https://www.collabora.com/news-and-blog/blog/2024/06/26/smart-audio-filters-with-wireplumber-0.5


Ny stor uppdatering: WirePlumber 0.5 introducerar smart filter policy

Ibland kan det vara bra att filtera en del oljud.

Efter mer än två års utveckling sedan version 0.4 släpptes, är WirePlumber 0.5 äntligen här, och med denna nya version kommer en rad nya funktioner och förbättringar. Bland dessa nya funktioner hittar vi Event Dispatcher, men i denna artikel kommer vi att fokusera på en annan mycket spännande nyhet: Smart Filter Policy.

WirePlumber är en kraftfull session manager för PipeWire, ett modernt multimedia-ljudsystem som blir alltmer populärt på Linux-system. WirePlumber fungerar som en brygga mellan användare och PipeWire, och hanterar olika uppgifter som automatisk anslutning av ljudenheter, strömhantering och hantering av sessioner. Sedan den första lanseringen har WirePlumber spelat en central roll i att göra PipeWire mer användarvänligt och anpassningsbart för både professionella och vardagliga användare.

Vad är ljudfilter?

Ljudfilter är bearbetningsenheter som omvandlar frekvenserna i en ljudsignal. Dessa filter kan användas i många olika sammanhang, och likt PulseAudio erbjuder PipeWire redan moduler som inkluderar de vanligaste ljudfiltren. Exempel på dessa är:

  • Filter-Chain-modulen: Skapar ett ”pipeline”-filter från en kedja av andra filter, inklusive tredjepartsfilter från projekt som LADSPA eller LV2, samt inbyggda PipeWire-filter såsom equalizers och mixers.
  • Echo-Cancel-modulen: Tar bort eko från inspelningsenheter genom att övervaka deras respektive uppspelningsenhet.
  • Loopback-modulen: Vidarebefordrar ljudsignalen utan att ändra några frekvenser, vilket kan vara användbart för att dölja en specifik enhet.

Hur fungerar ljudfilter i PipeWire?

I PipeWire representeras ljudfilter som ett par av två noder: en virtuell klientnod och en virtuell enhetsnod. Detta upplägg gör att användare kan kontrollera och ändra den verkliga enheten som är kopplad till filterutgången samt den klient som skickar ljud till filteringången. Användarna kan använda verktyg som PulseAudio Volume Control eller WirePlumbers CLI-verktyg, wpctl, för att hantera dessa filter utan att behöva bekymra sig om tekniska detaljer.

Introduktion av Smart Filter Policy i WirePlumber 0.5

I tidigare versioner av WirePlumber behandlades ljudfilternoder som vanliga noder. Detta innebar att användaren manuellt behövde flytta filter när nya ljudenheter anslöts, om dessa enheter inte var standard. Dessutom behövde klientströmmen riktas mot det faktiska filtret istället för den riktiga enheten. Detta kunde bli krångligt, särskilt för filter som Echo-Cancel, som bara är användbart med högtalare och mikrofoner, men inte med ett headset.

För att lösa detta introducerar WirePlumber 0.5 den nya Smart Filter Policy. Denna funktion automatiserar processen att länka filter till specifika enheter, vilket gör att användare slipper manuellt ingripande varje gång de vill använda ett specifikt filter med en viss enhet.

Hur fungerar Smart Filter Policy?

Den smarta filterpolicyn styrs av en uppsättning egenskaper som kan ställas in i den virtuella enhetsnoden för ett ljudfilter. Dessa egenskaper inkluderar:

  • filter.smart: Aktiverar den smarta filterpolicyn.
  • filter.smart.name: Unikt namnidentifierare för filtret.
  • filter.smart.before: Lista över filter som ska kedjas före detta filter.
  • filter.smart.after: Lista över filter som ska kedjas efter detta filter.
  • filter.smart.target: Egenskaper för det filterets slutmål.

Dessa egenskaper gör det möjligt att automatiskt och transparent kontrollera hur filter kedjas ihop och länkas till enheter. Till exempel, om du har tre utgångsfilter och två utgångsenheter, kan du instruera WirePlumber att kedja två filter och använda dem med en viss enhet, medan ett tredje filter bara används med en annan enhet.

Praktiska tillämpningar

En av de mest uppenbara fördelarna med den smarta filterpolicyn är att den gör det möjligt för spelare och andra användare att konfigurera sina system så att rätt filter (som ekodämpning eller brusreducering) bara aktiveras när de behövs. Spelet eller applikationen behöver inte veta vilken enhet som används eller vilka filter som är aktiverade, allt sker automatiskt och utan att användaren behöver ingripa.

Slutsats

Den smarta filterpolicyn i WirePlumber 0.5 är fortfarande experimentell och kan komma att förbättras ytterligare i framtiden. Men redan nu erbjuder den en smidig lösning för att hantera och automatisera användningen av ljudfilter, vilket gör livet enklare för användare som vill ha en sömlös upplevelse. Genom att automatisera filterkonfigurationer som tidigare krävde manuellt arbete, markerar denna funktion ett betydande steg framåt för WirePlumber och PipeWire.

Om du är nyfiken på att prova, rekommenderas att du leker med inställningarna och ger feedback till utvecklarna för ytterligare förbättringar.

https://www.collabora.com/news-and-blog/blog/2024/06/26/smart-audio-filters-with-wireplumber-0.5