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í
×
    včera 14:22 | Nová verze

    HollowByte je zranitelnost typu Denial of Service (DoS) v kryptografické knihovně OpenSSL. Útočník může odesíláním škodlivého payloadu o velikosti pouhých 11 bajtů zaplnit paměť serveru. OpenSSL před ověřením dat vyhradí nepřiměřený blok paměti (až 131 KB). Server pak čeká na data, která nepřišla. Zranitelnost je opravena ve verzích OpenSSL 4.0.1, 3.6.3, 3.5.7, 3.4.6 a 3.0.21.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | Komunita

    Ve španělské A Coruñě probíhá GUADEC 2026, tj. letošní konference vývojářů a uživatelů desktopového prostředí GNOME. Videozáznamy přednášek jsou k dispozici na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Komunita

    Společnost Collabora ve spolupráci s Valve vyvíjí Holo Core, tj. port Arch Linuxu pro ARM64 procesory (AArch64), který bude pohánět VR headset Steam Frame. Pro testování Arch Linuxu pro AArch64 jsou k dispozici binární balíčky, zdrojové kódy i kontejner pro Docker nebo Podman.

    Ladislav Hagara | Komentářů: 1
    včera 13:00 | IT novinky

    Mikroprocesor Zilog Z80 byl oficiálně uveden na trh před 50 lety, tj. v červenci 1976. Výroba mikroprocesoru skončila v roce 2024.

    Ladislav Hagara | Komentářů: 0
    včera 02:55 | Bezpečnostní upozornění

    Výzkumníci ze společnosti ESET objevili 11 zapomenutých UEFI shim zavaděčů, které byly podepsány společností Microsoft, a které umožňují útočníkům obejít ochranu UEFI Secure Boot na většině zařízení. Microsoft je zneplatnil (přidal jejich hash do databáze dbx) v rámci aktualizace Patch Tuesday dne 9. června 2026. Uživatelé Linuxu mohou databází aktualizovat pomocí LVFS. Ověřit zneplatnění zavaděčů lze pomocí skriptu uefi-dbx-audit. Jedná se o CVE-2026-8863 a CVE-2026-10797.

    Ladislav Hagara | Komentářů: 3
    17.7. 16:55 | Zajímavý software

    pico-usb-wifi je open source firmware pro Raspberry Pi Pico W, který jej promění v USB Wi-Fi adaptér. Po připojení k počítači se objeví jako zařízení USB CDC-NCM.

    Ladislav Hagara | Komentářů: 0
    17.7. 16:00 | IT novinky

    Americká společnost Google ze skupiny Alphabet bude muset podle nových požadavků Evropské unie umožnit společnosti OpenAI i dalším konkurentům v oblasti umělé inteligence (AI) a internetových vyhledávačů přístup ke svým službám. Ve svém rozhodnutí o tom včera informovala Evropská komise (EK). Opatření má zajistit dodržování pravidel, jejichž cílem je omezit v EU tržní sílu velkých technologických firem. Google s tím nesouhlasí.

    … více »
    Ladislav Hagara | Komentářů: 0
    17.7. 04:55 | Komunita

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 150. Aktuální verze Firefoxu je 152. V březnu bylo oznámeno, že od září přejde Chrome na dvoutýdenní cyklus vydávání verzí. To by znamenalo, že Chrome v číslování verzí Firefox brzy přeskočí. Vývojáři Firefoxu proto také od září přecházejí na dvoutýdenní cyklus vydávání verzí. :-)

    Ladislav Hagara | Komentářů: 7
    17.7. 00:22 | Zajímavý software

    Microsoft Comic Chat (Wikipedie), tj. grafický IRC klient z devadesátek, který převáděl konverzace na IRC do podoby komiksových panelů, a který zpopularizoval font Comic Sans, je dnešním dnem open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 1
    16.7. 19:55 | Nová verze

    Byla vydána (𝕏) nová verze 26.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 26.7 je Xenial Xenops. Přehled novinek v příspěvku na fóru.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (4%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2168 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dva dny souboje s ALSA: víceméně úspěšný konec

    4.9.2007 14:52 | Přečteno: 2439× | Linux | Výběrový blog | poslední úprava: 5.9.2007 23:29

    Takhle jsem jednou strčil DVD do počítače, spustil ho v kaffeine, osolil repro a nestačil se divit nad vyluzovanými zvuky.

    Většinou když poslouchám jen tak empétrojky, tak jen potichu šumí, to že to hraje všelijak už tuším dost dlouho. Teprve tohle mě ale nakoplo a já jsem se začal zajímat co s tím.

    Zaprvé jsem chtěl, aby když budu přehrávat surround sound (4.0, 4.1, 5,0, 5.1, 7.1), aby se mi hloubky ze satelitů posílaly do subwooferu, protože nemám megalomanské repro, spíš taková chrastítka :). Za druhé subwoofer nemá filtr který by odřízl výšky.

    Zadání zní celkem jednoduše. První bod je splnitelný velmi snadno, ALSA má plugin route, který má požadovaný efekt. Druhý bod je trošku obtížnější a s jeho řešením jsem strávil hodně času, ale i to nakonec funguje a výsledkem je tato konfigurace:

    # /etc/asound.conf
    
    # hlasitost mixovaných zdrojů
    pcm.volume {
            type            softvol
            slave.pcm       "lowpass_in"
            control {
                    name    "Master (mix)"
                    card    0
            }
    }
    
    # hlasitost pro upmixované mono a stereo
    pcm.volume_upmix {
            type            softvol
            slave.pcm       "volume"
            control {
                    name    "Master (upmix)"
                    card    0
            }
    }
    
    # nízkofrekvenční filtr s rezonancí
    pcm.lowpass_in {
            type            plug
            slave {
                    pcm             lowpass
                    channels        6
                    rate            44100
            }
    }
    
    pcm.lowpass {
            type            ladspa
            slave.pcm       lowpass_out
            path "/usr/lib/ladspa"
            channels 6
            plugins {
                            0 {
                                    id                      1098
                                    policy                  duplicate
                                    input.bindings.0        "Input";
                                    output.bindings.0       "Output";
                            }
                            1 {
                                    id                      1672
                                    policy                  none
                                    input.bindings.5        "Input";
                                    output.bindings.5       "Output";
                                    input {
                                            controls        [ 120 2.2 ] # [ frekvence rezonance ]
                                    }
                    }
            }
    }
    
    pcm.lowpass_out {
            type            plug
            slave {
                    pcm             surround51
                    channels        6
            }
    }
    
    # mixování zdrojů
    
    pcm.mix10 {
            type            route
            slave.pcm       "volume_upmix"
            slave.channels  6
            ttable {
                    0.0     1
                    0.1     1
                    0.2     1
                    0.3     1
                    0.4     1
                    0.5     1
            }
    }
    
    pcm.mix20 {
            type            route
            slave.pcm       "volume_upmix"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    0.2     1
                    1.3     1
                    0.4     0.5
                    1.4     0.5
                    0.5     0.5
                    1.5     0.5
            }
    }
    
    pcm.mix40 {
            type            route
            slave.pcm       "volume"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    2.2     1
                    3.3     1
                    0.4     0.5
                    1.4     0.5
                    0.5     0.25
                    1.5     0.25
                    2.5     0.25
                    3.5     0.25
            }
    }
    
    pcm.mix41 {
            type            route
            slave.pcm       "volume"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    2.2     1
                    3.3     1
                    0.4     0.5
                    1.4     0.5
                    0.5     0.25
                    1.5     0.25
                    2.5     0.25
                    3.5     0.25
                    4.5     1
            }
    }
    
    pcm.mix50 {
            type            route
            slave.pcm       "volume"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    2.2     1
                    3.3     1
                    4.4     1
                    0.5     0.25
                    1.5     0.25
                    2.5     0.25
                    3.5     0.25
                    4.5     0.25
            }
    }
    
    pcm.mix51 {
            type            route
            slave.pcm       "volume"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    2.2     1
                    3.3     1
                    4.4     1
                    5.5     1
                    0.5     0.25
                    1.5     0.25
                    2.5     0.25
                    3.5     0.25
                    4.5     0.25
            }
    }
    
    pcm.mix71 {
            type            route
            slave.pcm       "volume"
            slave.channels  6
            ttable {
                    0.0     1
                    1.1     1
                    2.2     1
                    3.3     1
                    4.4     1
                    5.5     1
                    0.5     0.16
                    1.5     0.16
                    2.5     0.16
                    3.5     0.16
                    4.5     0.16
                    6.5     0.16
                    7.5     0.16
                    6.0     0.5
                    6.2     0.5
                    7.1     0.5
                    7.3     0.5
            }
    }
    

    O co tedy jde? je to jednoduché, v přehrávači se nastaví patřičné výstupní zařízení, tedy například v xine se pro 5.1 výstup dá mix51.

    Potom se zvuk vstupující do mix51 rozmixuje do kanálů podle tabulky (tedy 0,25% signálu ze satelitu se pošle do subooferu), celková hlasitost se bude dát upravit v mixéru šoupátkem Master (mix), podobně je to i u mona a sterea, tam je ovšem jěště jedno šoupátko, protože upmixované zdroje byly děsně uřvané.

    Po upravení hlasitosti putuje zvuk do lowpass_in kde je převzorkován, to je důležité, protože bez tohoto mi po pokusu něco přehrát okamžitě spadlo xine. Můžete si zvolit libovolnou frekveci, já jsem nechal obligátních 44100Hz, 48000Hz značně vytězuje CPU.

    Teď už se nacházíme v lowpass filtru, ten se skládá ze dvou pluginů, ten první nedělá nic jiného, než že pošle na prvních 5 kanálů identický signál jako obdržel, druhý plugin je zajímavější, ten právě ořeže výšky. Dají se v něm nastavit hodnoty frekvence a rezonance, frekvence je jasná, podle specifikace surround zvuku má být 120Hz, rezonanci je pak potřeba vyladit podle velikosti subwooferu od 0.0 do 4.0.

    Nakonec se konečně přes lowpass_out dostáváme do zvukové karty, přesněji na její pcm.surround51.

    Při používání tohoto nastavení si filtry a softwarové hlasitosti vyžádají kolem 5% CPU (Athlon64 přiškrcený na 1000MHz), ovšem konečně je to pak poslouchatelné :).

    Konfigurace je ušitá na míru pro moji obstarožní SoundBlaster Live! 5.1 Digital [SB0220], no pořád lepší než ta integrovaná co nemá ani HW mixer ;). Pro lowpass filtr je třeba mít balíčky blop ladspa (tak se jmenují v Archu).

    Domácí stránky ALSA
    Neoficiální wiki o ALSA

           

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    xvasek avatar 4.9.2007 15:42 xvasek | skóre: 21 | blog: | Zlín
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    Mám opačný problém - chtěl bych Alse vysvětlit, že mám jenom dvě bedny a nula subwooferů, tak ať to všechno pošle tam. Na řešení jsem zatím nepracoval, protože to nějak funguje a popravdě ani nevím, jestli se to směšuje nebo ne. Nemáte někdo tip na toto?
    vogo avatar 4.9.2007 17:33 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    na to by mělo stačit předefinovat pcm.surround51 pomocí nějaké routovací tabulky, určitě může být inspirující můj konfigurák :)
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    4.9.2007 15:49 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    Mě zase trápí softwarové mixování zvuku. Na desktopu mám SB Live 5.1 a ta to samozřejmě v pohodě zvládá, ale na mém hahapecku nx7400 HW mixování není. Jenže rozjet SW mixování není zas taková legrace jak jsem si myslel. :/
    mess avatar 4.9.2007 15:54 mess | skóre: 43 | blog: bordel | Háj ve Slezsku - Smolkov
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    Možná by ti mohl pomoct konfig z tohohle FAQ, hlavně ta první sekce. Takhle SW mixuju zvuk doma na AC'97.
    Cez párne mesiace zošíváš vaginy, cez neparne montuješ hajzle.
    4.9.2007 16:59 fakenickname | skóre: 42 | blog: fakeblog
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    Tak dobrý, pomohl mi http://www.abclinuxu.cz/clanky/multimedia/na-co-se-casto-ptame-alsa-ii. Do .asoundrc jsem přidal
    > cat .asoundrc 
    pcm.!default {
            type plug
            slave.pcm "vystup"
        }
     
    pcm.vystup {
        type dmix
        ipc_key 1024
        slave {
            pcm "hw:0,0"
            period_time 0
            period_size 1024
            buffer_size 4096
            rate 44100
        }
    }
    
    pcm.dsp0 {
        type plug
        slave.pcm "dmix"
    }
    > 
    
    A open arena mi jede v klidu s metal express radio :-) Ale teda musel sem mplayeru nacpat -ao alsa..
    frEon avatar 4.9.2007 19:02 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    hodnota frekvence az po kterou se ma signal poustet do beden neni vubec jasna. jedna vec je co rika nejaka specifikace cehosi, druha vec je co ty bedny dokazou uhrat (nebo jak to zni). rozumny je taky nastavit highpass filter.
    Talking about music is like dancing to architecture.
    vogo avatar 4.9.2007 19:05 vogo | skóre: 34 | blog: "Skládat papír"
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    highpass filter je v plánu, jinak těch 120Hz je naprosto vyhovujicích, samozřejmě že i s tím jsem šteloval ;)
    Nejsem paranoidní, ale to ještě neznamená, že po mě nejdou.
    frEon avatar 4.9.2007 20:02 frEon | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    jasne, me jenom zarazilo ze jsi mluvil o specifikacich a ne o tom jak to hraje :-)
    Talking about music is like dancing to architecture.
    msk avatar 5.9.2007 08:17 msk | skóre: 27 | blog: msk
    Rozbalit Rozbalit vše Re: Dva dny souboje s ALSA: víceméně úspěšný konec
    Ty brdo! Alsa s podporou (interneho) routovania cez ladspa? To som sa prave posadil na prdel... Asi si o tom nieco budem musiet precitat, v asoundrc neviem ani korektne nastavit, ze out chcem na zvukovku A a in zo zvukovky B :)

    Založit nové vláknoNahoru

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