abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:44 | Bezpečnostní upozornění

    Ubuntu 26.04 patrně bude ve výchozím nastavení zobrazovat hvězdičky při zadávání hesla příkazu sudo, změna vychází z nové verze sudo-rs. Ta sice zlepší použitelnost systému pro nové uživatele, na které mohlo 'tiché sudo' působit dojmem, že systém 'zamrzl' a nijak nereaguje na stisky kláves, na druhou stranu se jedná o možnou bezpečnostní slabinu, neboť zobrazování hvězdiček v terminálu odhaluje délku hesla. Původní chování příkazu sudo

    … více »
    NUKE GAZA! 🎆 | Komentářů: 2
    včera 21:33 | Komunita

    Projekt systemd schválil kontroverzní pull request, který do JSON záznamů uživatelů přidává nové pole 'birthDate', datum narození, tedy údaj vyžadovaný zákony o ověřování věku v Kalifornii, Coloradu a Brazílii. Jiný pull request, který tuto změnu napravoval, byl správcem projektu Lennartem Poetteringem zamítnut s následujícím zdůvodněním:

    … více »
    NUKE GAZA! 🎆 | Komentářů: 3
    včera 17:22 | Nová verze

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 163 (pdf).

    Ladislav Hagara | Komentářů: 0
    21.3. 15:22 | IT novinky

    Eric Lengyel dobrovolně uvolnil jako volné dílo svůj patentovaný algoritmus Slug. Algoritmus vykresluje text a vektorovou grafiku na GPU přímo z dat Bézierových křivek, aniž by využíval texturové mapy obsahující jakékoli předem vypočítané nebo uložené obrázky a počítá přesné pokrytí pro ostré a škálovatelné zobrazení písma, referenční ukázka implementace v HLSL shaderech je na GitHubu. Slug je volným dílem od 17. března letošního

    … více »
    NUKE GAZA! 🎆 | Komentářů: 3
    21.3. 15:11 | Zajímavý projekt

    Sashiko (GitHub) je open source automatizovaný systém pro revizi kódu linuxového jádra. Monitoruje veřejné mailing listy a hodnotí navrhované změny pomocí umělé inteligence. Výpočetní zdroje a LLM tokeny poskytuje Google.

    Ladislav Hagara | Komentářů: 13
    21.3. 04:44 | Zajímavý software

    Cambalache, tj. RAD (rapid application development) nástroj pro GTK 4 a GTK 3, dospěl po pěti letech vývoje do verze 1.0. Instalovat jej lze i z Flathubu.

    Ladislav Hagara | Komentářů: 0
    20.3. 14:55 | Nová verze

    KiCad (Wikipedie), sada svobodných softwarových nástrojů pro počítačový návrh elektronických zařízení (EDA), byl vydán v nové major verzi 10.0.0 (𝕏). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    20.3. 13:22 | IT novinky

    Letošní Turingovou cenu (2025 ACM A.M. Turing Award, Nobelova cena informatiky) získali Charles H. Bennett a Gilles Brassard za základní přínosy do oboru kvantové informatiky, které převrátily pojetí bezpečné neprolomitelné komunikace a výpočetní techniky. Jejich protokol BB84 z roku 1984 umožnil fyzikálně zaručený bezpečný přenos šifrovacích klíčů, zatímco jejich práce o kvantové teleportaci položila teoretické základy pro budoucí kvantový internet. Jejich práce spojila fyziku s informatikou a ovlivnila celou generaci vědců.

    Ladislav Hagara | Komentářů: 18
    20.3. 04:44 | Zajímavý článek

    Firefox 149 dostupný od 24. března přinese bezplatnou vestavěnou VPN s 50 GB přenesených dat měsíčně (s CZ a SK se zatím nepočítá) a zobrazení dvou webových stránek vedle sebe v jednom panelu (split view). Firefox Labs 149 umožní přidat poznámky k panelům (tab notes, videoukázka).

    Ladislav Hagara | Komentářů: 2
    20.3. 00:33 | Nová verze

    Byla vydána nová stabilní verze 7.9 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 146. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (15%)
     (7%)
     (1%)
     (12%)
     (29%)
     (2%)
     (5%)
     (1%)
     (13%)
     (24%)
    Celkem 1134 hlasů
     Komentářů: 27, poslední 17.3. 19:26
    Rozcestník

    Je libo ekvalizér přímo v ALSA?

    24.5.2008 12:13 | Přečteno: 3650× | Linux | Výběrový blog | poslední úprava: 24.5.2008 12:14

    Dnes ráno jsem si říkal jestli je to možné, a ono je, a ani to není nijak pracné. Má to jen jedno malé ale – zátěž procesoru.

    Takže na notebooku, kam tento nápad byl primárně mířen, moc uplatnění mít nakonec nebude. Alespoň jsem si udělal nějaké tabulky no downmix surround do sterea :)

    Co budeme potřebovat:

  • textový editor, těm otrlejším postačí cat :-D
  • zvukovou kartu a reproduktory či sluchátka
  • funkční ALSA, čím novější tím lepší, rozhodně aby uměla používat ladspa pluginy
  • ladspa plugin „Multiband EQ“, je v knihovně mbeq_1197.so, v Arch Linuxu balíček swh-plugins
  • přehrávač který mixuje do ALSA a umí nastavit ALSA device, třeba Amarok, Audacious, MPlayer…
  • nějakou tu hudbu, na které to budeme ladit, já jsem použil album Charango od Morcheeby
  • sluch, tady je to relativní
  • Co je cílem

    Kvalitní zvuková karta s kvalitní aparaturou a kvalitním zdrojem (což není mp3 s bitovým tokem 96 kbps) ekvalizér nepotřebuje, ale pokud máte nějaké šumítko, tak můžete posílit středy, nebo třeba já jsem chtěl trochu výrazněji vykreslit basy u sluchátek.

    Trocha teorie

    Ladspa je rozhraní pro pluginy zpracovávající zvuk. Dostupné pluginy umí skoro všechno co vás napadne upmix, downmix, zdroj bílého šumu, oscilátor, zesilovač… (už jsem v blogu psal o frekvenčních filtech). Ladspa využívá třeba gstreamer, nebo Audacious. Kdyby něco chybělo, tak si to můžete napsat :-D. Kromě toho lze ladspa používat přímo v ALSA (wow). Celá konfigurace se ukládá do ~/.asoundrc pro uživatele, nebo /etc/asound.conf pro systém.

    OK, dem na to

    Nejprve uvedu kompletní konfiguraci a pak si to rozebereme :).

    
    
    pcm.eq{
      type            ladspa
      slave.pcm       default
      channels        2
      plugins {
        0 {     
          id                      1197
          policy                   duplicate
          input.bindings.0        "Input"
          utput.bindings.0        "Output"
          input {
    # range -30~70    #50Hz 100Hz 156Hz 220Hz 311Hz 440Hz  622Hz 880Hz 1250Hz 1750Hz 2500Hz 3500Hz 5000Hz 10000Hz 20000Hz
            controls [  2    3     4     3     2      2     2     1      1     -1     -2     -2     -2     -2      -2 ]
          }
        }
      }
    }
    
    pcm.stereo {
      type            plug
      slave.pcm       eq
    }
    
    nadefinovali jsme PCM zařízení „stereo“, vstup do ekvalizátoru a „eg“, které má výstup napojen na výchozí (default) zařízení ALSA. Zařízení eq hostuje plugin ladspa s identifikátorem 1197, což je plugin Multiband EQ. Politika je nastavena na „duplicate“, tedy opakovat pro všechny kanály, máme nastaveno, že zařízení má dva.

    Teď už by měl ekvalizátor fungovat, ověřit to můžete například příkazem

    speaker-test -twav -c2 -Dstereo
    

    měl by být znát rozdíl od zařízení default

    speaker-test -twav -c2 -Ddefault
    

    pokud rozdíl neslyšíte poštelujte si nastavení v poli „controls“.

    Ekvalizér tedy funguje a nezbývá nic jiného, než nastavit zařízení stereo jako výchozí v přehrávači a začít ladit nastavení. Pozor po změně nastavení je potřeba přehrávač vypnout (většinou nestačí stop, protože po play se neinicializuje zvukový sýstup), aby si načetl znovu nastavení, proto se bude hodit něco do konzole :).

    Něco na přilepšenou

    Jak jsem naznačil, ekvalizér sice funguje, ale má za následek určité zvyšení zátěže CPU a u notebboku to znamená kratší čas běhu na baterii. Tak jsem si alespoň nadefinoval zařízení pro downmix :).

    ~/.asoundrc

    pcm.eq{
      type          ladspa
      slave.pcm     default
      channels      2
      plugins  {
        0 {
          id        1197
          policy    duplicate
          input.bindings.0  "Input"
          utput.bindings.0  "Output"
          input {
    # range -30~70    #50Hz 100Hz 156Hz 220Hz 311Hz 440Hz  622Hz 880Hz 1250Hz 1750Hz 2500Hz 3500Hz 5000Hz 10000Hz 20000Hz
            controls [  2    3     4     3     2      2     2     1      1     -1     -2     -2     -2     -2      -2 ]
          }
        }
      }
    }
    
    pcm.stereo {
      type       plug
      slave.pcm  eq
    }
    
    pcm.!surround40 {
      type       route
      slave.pcm  stereo
      slave.channels  2
      ttable {
        0.0  1
        0.1  0.1
        1.1  1
        1.0  0.1
        2.0  0.8
        2.1  0.1
        3.1  0.8
        3.0  0.1
      }
    }
    
    pcm.!surround41 {
      type       route
      slave.pcm  stereo
      slave.channels  2
      ttable {
        0.0  1
        0.1  0.1
        1.1  1
        1.0  0.1
        2.0  0.8
        2.1  0.1
        3.1  0.8
        3.0  0.1
        4.0  0.5
        4.0  0.5
      }
    }
    
    pcm.!surround50 {
      type       route
      slave.pcm  stereo
      slave.channels  2
      ttable {
        0.0  1
        0.1  0.1
        1.1  1
        1.0  0.1
        2.0  0.8
        2.1  0.1
        3.1  0.8
        3.0  0.1
        4.0  0.5
        4.1  0.5
      }
    }
    
    pcm.!surround51 {
      type       route
      slave.pcm  stereo
      slave.channels  2
      ttable {
        0.0  1
        0.1  0.1
        1.1  1
        1.0  0.1
        2.0  0.8
        2.1  0.1
        3.1  0.8
        3.0  0.1
        4.0  0.5
        4.1  0.5
        5.0  0.5
        5.1  0.5
      }
    }
    
    pcm.!surround71 {
      type       route
      slave.pcm  stereo
      slave.channels  2
      ttable {
        0.0  1
        0.1  0.1
        1.1  1
        1.0  0.1
        2.0  0.8
        2.1  0.1
        3.1  0.8
        3.0  0.1
        4.0  0.5
        4.1  0.5
        5.0  0.5
        5.1  0.5
        6.0  1
        7.1  1
      }
    }
    
    
           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    belisarivs avatar 24.5.2008 13:26 belisarivs | skóre: 22 | blog: Psychobláboly
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Jak je to horke s tou zatezi CPU?
    IRC is just multiplayer notepad.
    vogo avatar 24.5.2008 13:34 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    na noťasu s dvoujádrem Intel T2130 to dělá 10% při taktu 798 MHz…
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    belisarivs avatar 24.5.2008 14:17 belisarivs | skóre: 22 | blog: Psychobláboly
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Tak to je dost.
    IRC is just multiplayer notepad.
    vogo avatar 24.5.2008 14:20 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    no je to stejně jako ekvalizer v amaroku, audacious je na tom o trošičku lépe, na výdrži baterky to ubere z 3.5 hodin 0.25 hodiny…
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    25.5.2008 00:26 Radek Podgorny | skóre: 16
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Ahoj, mam dotaz, ktery az tak nesouvisi s tvym zapiskem, ale i tak to zkusim... ;-)

    Co kdybych chtel z PC udelat ekvalizer? To znamena pouzit alsu a ladspa plugin, ale nechtel bych, aby to ovlivnovalo jen zvuk z userspace (pres libalsa), ale i to, co leze z line-in apod...

    Nevedel bys (nebo nekdo) nahodou?
    25.5.2008 18:41 Kvakor
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Pokud zvukova karta umi full fuplex (dnes temer vsechny), tak to neni problem, staci nahravat a hned posilat na vystup (napr. pres Sox). Pamatuju, jak jsem kdysi davno na SB16 zkousel DOSovy programek, co dokazal delat ruzne efekty se zvukem diky duplexnimu provozu (SB16 byla jedna z prvnich beznych zvukovych karet pro PC, co to umela), i kdyz tenkrat jen jednoduche efekty typu echo ci zpozdeni, protoze vic by tehdejsi procesy nezvadaly).

    A pozdeji jsem videl podobne reseni delane pro karty zalozene na Emu10k (SB Live! a Audigy), ktere ale to same delaly hardwarove (Emu10k je vlastne signalovy procesor). Jednoduchy ekvalizer (petipasmovy, myslim) se dokonce vyskytuje jako jeden z prikladu v balicku s emu-dspmgr, ale nevim, jestli to je pouzitelne i pro Alsu (emu-dspmgr je, pokud vim, jen pro OSS driver). Alsa ma v sobe v ovladaci pro emu10k1 defaultne dvoupasmovy ekvalizer, i kdyz neni nic moc.

    Osobne bych ale PC k podobnemu ucelu nepouzival, ve srovnani se spotrebou klasickeho (tj. analogoveho ci postaveneho na specializovanych DSP) ekvalizeru je spotreba PC primo desiva, nehlede na mozne problemy s rusenim. A kdyz uz, tak pomoci prave nejake karty s Emu10k, diky ktere by to zvladl i nejaky opravdu slaby stroj (napr. neco usporneho jako VIA Epia), protoze by pouze nastavoval vlastnosti onoho ekvalizeru, samotne vypocxty by delal chip na zvukove karte.
    25.5.2008 20:55 Radek Podgorny | skóre: 16
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Diky za tipy, myslenka hnat data pres userspace tam a zase zpatky se mi moc nezamlouva, ale asi to jinak nepujde :-(.

    Jinak, co potrebuji neni ekvalizer, ale kompresor (kvuli televizi - nebavi me porad snizovat a zvysovat hlasitost). Na PC jsem to chtel delat proto, ze je proste pobliz ;-). Jinak, pokud byste vedel o nejake HW alternative, budu vdecen za kazdou radu...
    Josef Kufner avatar 26.5.2008 09:18 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Uděláš líp, když televizi vypneš úplně ;-)
    Hello world ! Segmentation fault (core dumped)
    26.5.2008 09:38 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Userspace jsou i pluginy do alsy. Obecně se nedoporučuje dělat takové vychytávky v kernel spacu, tam patří jen ovladače a nejnezbytnější infrastruktura. Každá chybka vede k pádu, blbě se do debuguje, musí se hlídat velikost použité paměti, atd.

    Overhead vytažení do userspacu je minimální.
    26.5.2008 09:41 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Ještě k té TV. Chce to vyzkoušet, ale kolečko zvukovka in - kompresor - zvukovka out bude mít nějakou latency. Pokud nelze zpozdit obraz (u TV asi problém), může být i malá latence na dialozích znát. Ale třeba se dostaneš na dobrá čísla.
    26.5.2008 09:46 dustin | skóre: 63 | blog: dustin
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Uff, samozřejmě latenci, už jsem z té angličtiny zblblý :)
    26.5.2008 10:59 petr_p | skóre: 59 | blog: pb
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    zpoždění ;)
    26.5.2008 14:47 Kvakor
    Rozbalit Rozbalit vše Re: Je libo ekvalizér přímo v ALSA?
    Jinak, co potrebuji neni ekvalizer, ale kompresor (kvuli televizi - nebavi me porad snizovat a zvysovat hlasitost).
    Navod na omezovac hlasitosti jsem videl kdysi v nejakem casopise, je to celkem jednoduce zapojeni, ktere funguje jako zesilovac se ziskem rizenym napetim, ktere se ziskava integraci vstupniho signalu. Myslim, ze tam byly jen 4 OZ v jednom pouzdre a pak uz jen odpory a kondenzatory, plus jeden stabilizator (7809, myslim). Jedina nevyhoda je, ze a) je pak treba externi zesilovac (zisk tohohle "zesilovace" je totiz pouze v intervalu 0-1) a b) nejspis to kvuli integrujicimu charakteru vstupu ma urcite nejakou nenulovou latenci, leda ze charakteritika predelala z PI na PID.

    Osobne problem s vyssi hlasitosti reklam v televizi resim tlacitkem Mute, pripadne nahranim celeho poradu a preskakovanim casti, ktere nechci ...

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.