ahojte
chcel by som si spraviť jednoduchý zvukový ekvalizér (v demoscéne sa to zvyklo nazývať aj bary) alebo monitor zvuku, kde by na základe úrovne aktuálnej hlasitosti došlo k vykresleniu čiary - čím väčšia hlasitosť, tým dlhšia čiara, žiadna hlasitosť, žiadna čiara. pekny gif je pri projekte cavahttps://github.com/karlstav/cava
problém je, že neviem, odkiaľ sa k tomuto údaju dostať. nemyslím teraz nstavenie alebo získanie hodnoty master volume, čo je celková hlasitosť zvuku v počítači a ktorú keď nastavíte na 0, tak nič nepočujete, a keď ju nastavíte na max, tak zvuk vypeckujete. potrebujem získať aktuálnu hodnotu úrovne zvuku - hodnotu, s ktorou pracujú monitory zvuku napr. v nastaveniach zvuku vo vašom prostredí.
ideálne by bolo, ak by som sa k tomu vedel dostať priamo z príkazového riadku. prepátral som priečinok /proc/asound, ale subor stats, ktory je pri mikrofone... mi akosi nesedi (aj ked som videl nejaky program, ktory funguje ako detektor pritomnosti osoby a povazuje za pohyb lubovolnu zmenu v tomto suboru od poslednej verzie).
pozeral som do priecinku /dev/snd/ ale to asi nebude ono. skusal som nejake kniznice v pythone. a najlepsie vyzerala asi kniznica alsaaudio, ale sposob, ktory bol pouzity v jednom priklade tiez vyzeral zvlastne (po vypnuti zvuku sa stale tvaril, ze nieco dostaval).
nemate niekto nejaky tip? slubne vyzeral sox, len som nemal cast luskat celu dokumentaciu, tak ze ak nahodou niekto viete poradit, tak budem rad ;)
mirek
V tom odkaze nieje nahodou postup ako vytvorit virtualne zariadenie z ALSA mixer? Ja sa v tom velmi nevyznam ale pripada mi to tak.
a? je jedno, ci tu hodnotu urovne odcitam z realneho alebo virtualneho zariadenia. otazkou je, ako ju dostanem.
potrebujem v principe len cislo reprezentujuce uroven, napr. 0 - je ticho a 100 - je max. zvuk. vsetko ostatne je medzitym. a samozrejme v realnom case.
Tú hodnotu dostaneš spracovaním zvukového toku získaného odpočúvaním. Pozri do adresára input.
to ma veru nenapadlo. podla by-path/ a by-id/ priecinkov som sa dostal len k vstupnym zariadeniam ako klavesnica a mys. cez evtest mi sice zobrazil aj mikrofon, ale obavam sa, ze to bude asi len priznak odpojenia/zapojenia externeho mikrofonu. alebo mas este nejaky tip?
Do adresára v tých zdrojákoch ktorými si sa chcel inšpirovať. Nie do /sys a ani do /dev .
dik. skusim kuknut. len asi neskor - povinnosti :-/
pozeral som akurat kod v hlavnom subore, ale nic podozrive som nenasiel. tusim cava pouziva aj tak nejaku externu kniznicu, ktora ma binding aj pre python (co je pre mna pre potreby pouzitia idealne). tak este hodim ockom.
Tak to si pozeral zle. Ono to má rozhranie pre Alsa a Pulse Audio, v céčku.
Zistenie aktualnej hlasitosti
A tu mas ako nastavis nastavis hlasitost.
Automaticky za teba poriesi, ci nastavuje pulseaudio, ale rovno ALSA.
Zistenie aktualnej hlasitosti
A tu mas ako nastavis nastavis hlasitost.
Automaticky za teba poriesi, ci nastavuje pulseaudio, ale rovno ALSA.
Tu mas napr. aj "jednoduchy" program.
Tri trefy vedľa, prečítaj si ešte raz zadanie kámo.
Jediné riešenie je zobrať kúsok nahrávky, napr rec, alebo ffmpeg dlhú napríklad 0,1 sekundy.
Potom nahrávku analyzovať cez sox ten ti vráti pekne popísané parametre nahrávky.
Pridáš trochu matiky k maximu a škále.
Mno a už môže magické oko plieskať o sto tristo.
no - vcera som dokazal sox spustit priamo s audio vstupom. v realnom case som ale nevedel zobrazit aktualnu uroven zvuku. statistiku aj tak vzdy vypisal az po ukonceni, ak si dobre pamatam.
problem bol aj s tym casom, o ktorom pises - cez parameter -d sa myslim nastavovala dlzka zaznamu. udava sa ale v sekundach a teda menej ako 1s som nastavit nevedel. alebo som len necital dokumentaciu.
ak vies, ake paradne parametre to urobia, tak sem s nimi :-)))
Pretože si použil arecord a nie to čo píšem ja. Rec aj ffmpeg myslím, poskytne aj nejaký úsek bytov.
Ano, zle som precital.
Kukni/nastuduj "parec -r".
diky. toto som bol schopny spravit aj cez sox/rec. v tomto pripade by uz zostavala len ta analyza zvuku.
Hladaj na nete "music visualizer".
Kukni projectM (namakana vyualizacia) a tu mas aj nieco v CLI - cava
Ked si budes skusat ten projeckt (debian instaluj projectm-pulseaudio a ttf-dejavu), tak vizualizacia asi zacne, a urcite prepne, na dalsi typ klavesou n.
osobitne skoly nezacinaju tak ako "normalne skoly", 2.9.?
osobitne skoly nezacinaju tak ako "normalne skoly", 2.9.?
Zmeškal si niečo?