|
hifi.slovanet.sk
Bolo zavedene manualne potvrdzovanie registracii !!!
|
|
Zobraziť predchádzajúcu tému :: Zobraziť nasledujúcu tému |
Autor |
Správa |
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Po jún 01, 2009 06:43:45 Predmet: |
|
|
citácia: | Proč myslíš? V souboru /home/durgo/.bash_history máš historii všech příkazů (pokud jsi nejel ve více terminálech současně, pak se to může přepisovat), klidně to sem připoj, můžeme na to mrknout. |
Keď skúšam teraz prehrávať cez banshee, tak sa nič neprehrá a pri každej skladbe sa objaví "krížik". Ale skúsme najskôr nastaviť prehrávanie 0,0 v prehrávači, ak by s tým všetkým bol potom nejaký problém, hodil by som sem výpis.
Keď som nahrával ten skript alsa, uložil som ho na plochu a skopíroval do home/durgo. No vždy po použití toho skriptu sa z home/durgo odstráni, ostane len na ploche a musím ho tam vždy nakopírovať znova. Ale toto robilo aj pred skúšaním anglického odkazu.
citácia: | Ano, legálně máš k dispozici obrovskou šíři softwaru/řešení, které můžeš kdykoliv (tedy okamžitě) použít a o kterém se můžeš zcela detailně dozvědět, jak vlastně funguje. Bohužel argument legálnosti a otevřenosti je většině lidí ukradený, tak raději pracně hledají a stahují zavirované cracky. |
No ani ja by som neinštaloval linux keby som nepotreboval prehrávať hudbu a fungovalo by to vo windowse. Asi je to aj tým, že win má doma každý, linux skoro nikto, aspoň ja nikoho osobne nepoznám, a potom sa nemám s kým poradiť v prípade problémov. Rád skúšam nové veci a tak som to riskol a nainštaloval. Úpne nahrubo som sa už zorientoval, aj keď ešte úplne nezvykol, chce to čas, a vlastne som od inštalácie linuxu windows doma nepoužil. Neviem ako je to s vírusmi, ale čítal som, že netreba antivír, čo by bol asi druhý dôvod ho používať. Asi preto, že linix nemá skoro nikto, tak načo škodiť skoro nikomu |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po jún 01, 2009 11:01:14 Predmet: |
|
|
durgo napísal: |
Keď skúšam teraz prehrávať cez banshee, tak sa nič neprehrá a pri každej skladbe sa objaví "krížik". Ale skúsme najskôr nastaviť prehrávanie 0,0 v prehrávači, ak by s tým všetkým bol potom nejaký problém, hodil by som sem výpis. |
Přepokládám, že jsi vyzkoušel aplay přes 0,0 a tedy zvukovka funguje OK.
Koukal jsem na starší verzi banshee a tam to nastavení není. Banshee jede přes gstreamer (multimediální vrstva projektu gnome), jehož nastavení zvukových zařízení je právě v tom dialogu Systém - Volby - Zvuk. Tam to musíš mít přepnuté vše na alsu.
Ještě vyzkoušíme, zda máš správně nastavené zařízení default. Hoď sem výpis
aplay -v -D default ten-tvuj-wav.wav
Defaultní zařízení se používá standardně, určitě to je ta volba "Alsa sound system" v nastavení zvuku.
citácia: | Keď som nahrával ten skript alsa, uložil som ho na plochu a skopíroval do home/durgo. No vždy po použití toho skriptu sa z home/durgo odstráni, ostane len na ploche a musím ho tam vždy nakopírovať znova. Ale toto robilo aj pred skúšaním anglického odkazu. |
Proč by se měla odstraňovat kopie souboru po jeho spuštění? Možná to bude trochu jinak Ale to bych nyní neviděl jako problém.
citácia: | Neviem ako je to s vírusmi, ale čítal som, že netreba antivír, čo by bol asi druhý dôvod ho používať. |
Virů a adwaru se opravdu bát nemusíš. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Po jún 01, 2009 11:34:25 Predmet: |
|
|
citácia: | Tam to musíš mít přepnuté vše na alsu. |
Toto mám určite v poriadku.
citácia: | Proč by se měla odstraňovat kopie souboru po jeho spuštění? Možná to bude trochu jinak Ale to bych nyní neviděl jako problém. |
Neviem prečo sa to vždy ostráni, ale keď sa pozriem na miesto kde to bolo skopírované, tak to tam už neni a musím to znova z plochy prekopírovať do home/durgo.
Ešte by som sa spýtal, prečo sme nahrávali skript alsy, potom nastavili spustenie a následne ho zastavili alsasound stop??? Po ten druhý krok by som to chápal, ale to posledné mi hlava neberie |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Po jún 01, 2009 21:44:48 Predmet: |
|
|
durgo napísal: |
Toto mám určite v poriadku. |
A hraje ten aplay přes default? Funguje test zvuku - tlačítko vedle toho přepínače výstupního zařízení v dialogu nastavení zvuku?
citácia: |
Neviem prečo sa to vždy ostráni, ale keď sa pozriem na miesto kde to bolo skopírované, tak to tam už neni a musím to znova z plochy prekopírovať do home/durgo. |
Tipnul bych si, že to kopíruješ do adresáře, kam nemáš právo zápisu a proto se to tam neuloží.
citácia: |
Ešte by som sa spýtal, prečo sme nahrávali skript alsy, potom nastavili spustenie a následne ho zastavili alsasound stop??? Po ten druhý krok by som to chápal, ale to posledné mi hlava neberie |
To jsme chtěli pro odstranění modulu snd-intel8x0. Nakonec jsme jej ale odstranili jednoduchým rmmod. Takže ten skript nakonec nebyl a již nebude potřeba. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Ut jún 02, 2009 14:08:29 Predmet: |
|
|
citácia: | A hraje ten aplay přes default? |
Práveže nič nehrá
citácia: | aplay -v -D default ...... |
a vypisuje, že alsa error
citácia: | Funguje test zvuku - tlačítko vedle toho přepínače ..... |
vyskúšam, alsu tam mám všade zapnutú
Ešte sa s tým pozabávam a prekontrolujem či som všetky kroky spravil naozaj správne. Zrozumiteľnejšie ako si to napísal sa to už asi nedá a evidentne bude chyba medzi mojim kompom a stoličkou.
Napíšem výsledok. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut jún 02, 2009 14:36:40 Predmet: |
|
|
Takže hw:0 hraje, zatímco default nehraje. Tedy default není nastaven.
Je to zřejmě způsobené nedokončeným odstraněním pulseaudia - viz druhá část kroku 2 v tom dlouhém anglickém postupu.
Hoď sem výstup příkazů:
cat ~/.asoundrc
cat ~/.asoundrc.asoundconf
asoundconf list
To snadno spravíme. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Ut jún 02, 2009 18:32:54 Predmet: |
|
|
Tak cez default to nehrá a ani test nič neprehá cez 0,0 ide všetko v poriadku.Už ma z toho asi porazí.
Pri teste prehrávania zvuku vypíše:
audiotestsrc wave=sine freq=512 ! audioconvert ! audioresample ! gconfaudiosink: Nepodarilo sa otvoriť zvukové zariadenie pre prehrávanie.
durgo@durgo-laptop:~$ cat ~/.asoundrc
# ALSA library configuration file
# Include settings that are under the control of asoundconf(1).
# (To disable these settings, comment out this line.)
</home/durgo/.asoundrc.asoundconf>
durgo@durgo-laptop:~$ cat ~/.asoundrc.asoundconf
# ALSA library configuration file managed by asoundconf(1).
#
# MANUAL CHANGES TO THIS FILE WILL BE OVERWRITTEN!
#
# Manual changes to the ALSA library configuration should be implemented
# by editing the ~/.asoundrc file, not by editing this file.
!defaults.pcm.card Intel
defaults.ctl.card Intel
defaults.pcm.device 0
defaults.pcm.subdevice -1
defaults.pcm.nonblock 1
defaults.pcm.ipc_key 5678293
defaults.pcm.ipc_gid audio
defaults.pcm.ipc_perm 0660
defaults.pcm.dmix.max_periods 0
defaults.pcm.dmix.rate 48000
defaults.pcm.dmix.format "unchanged"
defaults.pcm.dmix.card defaults.pcm.card
defaults.pcm.dmix.device defaults.pcm.device
defaults.pcm.dsnoop.card defaults.pcm.card
defaults.pcm.dsnoop.device defaults.pcm.device
defaults.pcm.front.card defaults.pcm.card
defaults.pcm.front.device defaults.pcm.device
defaults.pcm.rear.card defaults.pcm.card
defaults.pcm.rear.device defaults.pcm.device
defaults.pcm.center_lfe.card defaults.pcm.card
defaults.pcm.center_lfe.device defaults.pcm.device
defaults.pcm.side.card defaults.pcm.card
defaults.pcm.side.device defaults.pcm.device
defaults.pcm.surround40.card defaults.pcm.card
defaults.pcm.surround40.device defaults.pcm.device
defaults.pcm.surround41.card defaults.pcm.card
defaults.pcm.surround41.device defaults.pcm.device
defaults.pcm.surround50.card defaults.pcm.card
defaults.pcm.surround50.device defaults.pcm.device
defaults.pcm.surround51.card defaults.pcm.card
defaults.pcm.surround51.device defaults.pcm.device
defaults.pcm.surround71.card defaults.pcm.card
defaults.pcm.surround71.device defaults.pcm.device
defaults.pcm.iec958.card defaults.pcm.card
defaults.pcm.iec958.device defaults.pcm.device
defaults.pcm.modem.card defaults.pcm.card
defaults.pcm.modem.device defaults.pcm.device
defaults.pcm.file_format "raw"
defaults.pcm.file_truncate true
defaults.rawmidi.card 0
defaults.rawmidi.device 0
defaults.rawmidi.subdevice -1
defaults.hwdep.card 0
defaults.hwdep.device 0
defaults.timer.class 2
defaults.timer.sclass 0
defaults.timer.card 0
defaults.timer.device 0
defaults.timer.subdevice 0
defaults.namehint.showall off
defaults.namehint.basic on
defaults.namehint.extended off
durgo@durgo-laptop:~$ asoundconf list
Names of available sound cards:
I82801DBICH4
durgo@durgo-laptop:~$ |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut jún 02, 2009 19:51:05 Predmet: |
|
|
To je v pořádku, hned to spravíme.
Zazálohuj stávající soubor .asoundrc pro případnou budoucí potřebu:
mv ~/.asoundrc ~/.asoundrc.orig
A vyrobíme nový
gedit ~/.asoundrc
Do kterého zkopíruj:
kód: |
pcm.I82801DBICH4 {
type hw;
card I82801DBICH4 ;
}
ctl.I82801DBICH4 {
type hw;
card I82801DBICH4 ;
}
pcm.!default {
type plug;
slave {
pcm I82801DBICH4 ;
}
}
ctl.!default ctl.I82801DBICH4
|
Tímto jsme pro tvého uživatele durgo nadefinovali dvě nová zařízení:
I82801DBICH4 - v podstatě ekvivalent hw:0, ale směřující vždy na integrovanou zvukovku. Pokud bys při bootu měl připojenou USB zvukovku, mohlo by dojít ke změně pořadí zvukovek, takže hw:0 by ukazovalo na tu druhou. Ale identifikace názvem je napevno.
default - jako slave použije I82801DBICH4, ale nad ni napojí plugin plug (viz "type plug;"). Ten jsme zde již používali, zajišťuje automatickou konverzi na parametry podporované svým slavem - tedy zde přímo tou zvukovkou. Důvod - můžeš nyní přehrávat i jiné frekvence než nativní 44.1 a 48kHz, a to i 24bity. Plugin plug zajistí minimální potřebnou konverzi.
Toto řešení není vhodné pro běžného uživatele, protože nefunguje mixování zvuku z více aplikací (a proto se samozřejmě nepoužívá v mainstreamovém ubuntu), ale pro audiofila je ideální
Nyní by již mělo fungovat aplay -v -D default (potažmo i čisté aplay, zařízení default se nemusí uvádět - je defaultní ). Vyzkoušej si přehrávání nějakého wavu v jiné frekvenci/rozlišení, detailní výpis v aplay ti ukáže, jaké změny musel plugin plug provést - to již umíš.
Myslím, že tím by měl začít fungovat i test v dialogu nastavení zvuku.
PS: libovolnou fs si vyrobíš příkazem sox (pokud by nebyl, pak nainstaluj přes správce balíků nebo rychleji přes sudo aptitude install sox)
sox -V tvujstavajici44.1-16.wav -r 192000 -b 24 novy192-24.wav
A máš ze svého 44/16 rázem 192/24. Se soxem jdou delat kouzla, ale to je jiz jine tema. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Ut jún 02, 2009 20:39:30 Predmet: |
|
|
BINGO! hrá default aj zvuk z testu funguje.
Skúsil som prehrávať aj cez prehrávač a tam je ticho. Toto by pre teba mala už byť len formalitka
Ostatné budem skúšať keď bude hrať hudba aj cez player.
Keby si nebýval tak ďaleko tak ti donesiem prvého kapra, ktorého hádam cez víkend chytím |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut jún 02, 2009 21:42:40 Predmet: |
|
|
Dej příkaz gstreamer-properties a nastav plugin alsu, zařízení default, otestuj. To by snad mělo být ono.
Jaké máš na přehrávač požadavky? Možná bys mohl vyzkoušet i nějaký jiný. Mně osobně vyhovují specializované nástroje (proto se zajímám o linux) - správce hudby vs. přehrávač. Správce hudby řeší vše kolem alb, coverů, souborů atd., vs. přehrávač si řeší kodeky, zvukové výstupy atd. Tento koncept je pěkně realizován v sw gmusicbrowser, který má jako přehrávač např. univerzální mplayer (lze nakonfigurovat v preferencích). Vše se ovládá z GUI, ale funkčně je to pěkně oddělené. Dávám to jen jako příklad, podobných softů (ne tak komplexních) máš v ubuntu spoustu. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Ut jún 02, 2009 23:01:07 Predmet: |
|
|
Hráááááááááá to A zase mám novú hračku
Chcelo to len reštart.
Pár dní budem počúvať tak ako to mám teraz a medzitým si ujasním požiadavky na player.
Je to pre mňa niečo úplne nové a tak to nešlo až tak hladko
Dustin si šikula, díky moc za trpezlivosť, ochotu a odborné rady |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: St jún 03, 2009 07:51:52 Predmet: |
|
|
Super, kobouk dolů, žes vydržel a nevzdal to.
Dej si regulátor hlasitosti naplno (v banshee i Master a PCM v alsamixeru), abys měl bit-perfect cestu. Předpokládám, že budeš regulovat na zesíku. Možná, že regulátory Master a PCM nebudou mít na hlasitost SPDIF vliv, záleží, zda se v kodeku STAC9750 odebírá signál pro SPDIF ještě před regulací hlasitosti nebo až za. Šlo by to vyčíst z datasheetu, ale ty to můžeš snadno vyzkoušet. Tipnul bych si před.
Když bych to shrnul:
1. Nejdříve jsme pár příkazy zanalyzovali reálné možnosti tvého HW. To si dokonce vyžádalo parametr modulu, jehož zadávání jsme nastavili při startu. Zjistili jsme, že lze pouštět 44.1 do SPDIF bez převzorkování.
2. Poměrně hrubě jsme odstranili pulseaudio, tudíž jsme pak museli ručně dokonfigurovat zařízení alsy (default) do "audiofilského" režimu.
Když to připodobním windows, pulseaudio je obdoba mixeru ve win. Zatímco ve win se pro přímější přístup ke zvukovce používá ASIO, vytvořené třetí stranou a podporované drivery jen některých zvukovek, v linuxu poskytuje alsa (tj. systém ovladačů a základních knihoven) přímý přístup ke všem podporovaným zvukovkám. Mixery apod. jsou záležitostí vyšších vrstev a lze je obejít.
Ještě bych doporučoval zvýšit latenci zvukovky, aby se minimalizovala pravděpodobnost výpadku zvuku při nárazové zátěži systému. Asi to v tvém případě není nutné, dej vědět, pokud bys o to měl zájem. Bylo by to pár příkazů a pár nových poznatků, ale nebudu tě s tím teď zatěžovat. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Št jún 04, 2009 08:37:43 Predmet: |
|
|
citácia: | Ještě bych doporučoval zvýšit latenci zvukovky, aby se minimalizovala pravděpodobnost výpadku zvuku při nárazové zátěži systému. Asi to v tvém případě není nutné, dej vědět, pokud bys o to měl zájem. Bylo by to pár příkazů a pár nových poznatků, ale nebudu tě s tím teď zatěžovat. |
jasné, že mám záujem
citácia: | Dej si regulátor hlasitosti naplno (v banshee i Master a PCM v alsamixeru), abys měl bit-perfect cestu. Předpokládám, že budeš regulovat na zesíku. Možná, že regulátory Master a PCM nebudou mít na hlasitost SPDIF vliv, záleží, zda se v kodeku STAC9750 odebírá signál pro SPDIF ještě před regulací hlasitosti nebo až za. Šlo by to vyčíst z datasheetu, ale ty to můžeš snadno vyzkoušet. Tipnul bych si před. |
Regulácia je na predzosilovači a tiež myslím, že tiahla PCM nemajú na hlasitosť žiadny vplyv. Zdá sa mi, že som to už pred časom aj skúšal keď to prvý krát začalo hrať.
Včera sa stalo, že zrazu to prestalo hrať (skúsil som opakovane prehrať jednu pasáž skladby znova a tiahlo času skladby som posunul dozadu), tiahlo ukazovateľa času skladby išlo normáne ďalej, vyskúšal som pohnúť tiahlom na spdif, a zvuk zase išiel normálne. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Št jún 04, 2009 23:49:29 Predmet: |
|
|
durgo napísal: |
Regulácia je na predzosilovači a tiež myslím, že tiahla PCM nemajú na hlasitosť žiadny vplyv. Zdá sa mi, že som to už pred časom aj skúšal keď to prvý krát začalo hrať. |
Dobrá zpráva.
durgo napísal: |
Včera sa stalo, že zrazu to prestalo hrať (skúsil som opakovane prehrať jednu pasáž skladby znova a tiahlo času skladby som posunul dozadu), tiahlo ukazovateľa času skladby išlo normáne ďalej, vyskúšal som pohnúť tiahlom na spdif, a zvuk zase išiel normálne. |
A dělá to vždy při tom posunu zpět? Je to divné, ten přepínač spdif by na vlastní přehrávání neměl mít žádný vliv, jen přepíná vstup SPDIF vysílače na konkrétní páry kanálů v AC97 kodeku. Když to vypadne, je jeho nastavení nějak změněné, třeba na poslední nejvyšší hodnotu (3)?
Teď k té latenci.
Přehrávací řetězec funguje tak, že aplikace nachystá do paměti určitý objem audiodat a řekne zvukovce, kde je najde. Pak aplikace usne. Zvukovka si sama přes přímý přístup do paměti bez využití CPU (tzv. DMA) data postupně načítá a když má již jen malou rezervu, pošle přerušení, které vzbudí aplikaci, aby dodala další data. Čím delší perioda přerušení, tím má aplikace méně práce (přípravu i několika sekund audiodat stíhá za zlomek milisekundy) a CPU může déle spát/méně žrát, méně točit ventilátorem.
V jednom terminálu budeme sledovat počet přerušení (interruptů) od zvukovky za sekundu. Příkaz
kód: |
cat /proc/interrupts |
vypíše čísla a významy přerušení. Nalezni řádek, kde je něco jako ICH4 - tvá zvukovka. Číslo na začátku je hledané číslo přerušení. Ukáži na mém PC:
kód: | pavel@nahore:~$ cat /proc/interrupts
CPU0
0: 160 IO-APIC-edge timer
1: 6865 IO-APIC-edge i8042
4: 2 IO-APIC-edge
7: 0 IO-APIC-edge parport0
8: 2 IO-APIC-edge rtc0
9: 0 IO-APIC-fasteoi acpi
12: 73295 IO-APIC-edge i8042
14: 20453 IO-APIC-edge pata_via
15: 25594 IO-APIC-edge pata_via
16: 152752 IO-APIC-fasteoi nvidia
19: 184 IO-APIC-fasteoi eth1
20: 0 IO-APIC-fasteoi sata_via
21: 0 IO-APIC-fasteoi ehci_hcd:usb1, uhci_hcd:usb2,
uhci_hcd:usb3, uhci_hcd:usb4, uhci_hcd:usb5
22: 13821 IO-APIC-fasteoi VIA8237
23: 5777 IO-APIC-fasteoi eth0
NMI: 0 Non-maskable interrupts
LOC: 230766 Local timer interrupts
RES: 0 Rescheduling interrupts
CAL: 0 function call interrupts
TLB: 0 TLB shootdowns
SPU: 0 Spurious interrupts
ERR: 0
MIS: 0
|
Mám zvukovku VIA8237, tedy mě zajímá číslo 22. Nyní dám
kód: | cat /proc/interrupts | grep "22:" |
a vypíše se pouze řádek s přerušením zvukovky, protože jsem výstup catu prohnal textovým filtrem, který vypíše jen řádky obsahující zadaný řetězec (viz man grep). Ta dvojtečka je důležitá, jinak by to vypisovalo i řádky obsahující 22 někde jinde.
Nyní ve stejném terminálu spusť příkaz:
kód: |
watch -n1 'cat /proc/interrupts | grep "22:"' |
kde místo 22 dej své číslo. Tento příkaz dělá to, že každou jednu sekundu spustí příkaz v uvozovkách - tedy každou sekundu uvidíš aktuální počet přerušení zvukovky od spuštění systému.
V druhém terminálu spusť již známé aplay, tentokrát s parametrem -F (význam period _time), určujícím periodu v mikrosekundách mezi přerušeními zvukovky.
kód: | pavel@nahore:~$ aplay -v -F 1 audio/441.wav
Playing WAVE 'audio/441.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Plug PCM: Hardware PCM card 1 'VIA 8237' device 0 subdevice 0
Its setup is:
stream : PLAYBACK
access : RW_INTERLEAVED
format : S16_LE
subformat : STD
channels : 2
rate : 44100
exact rate : 44100 (44100/1)
msbits : 16
buffer_size : 1016
period_size : 8
period_time : 181
tstamp_mode : NONE
period_step : 1
avail_min : 8
period_event : 0
start_threshold : 1016
stop_threshold : 1016
silence_threshold: 0
silence_size : 0
boundary : 2130706432
|
Hodnota -F 1 je samozřejmě pod dolní mezi zvukovky (je to 1 mikrosekunda), aplay tedy použije nejkratší možnou periodu. Z výpisu je patrné, že moje onboard zvukovka zvládá minimální periodu (tj. latenci) 181 mikrosekund. Monitor přerušení v druhém terminálu ukazuje, že takové přehrávání vyžaduje 5 500 přerušení za sekundu, což nelze spolehlivě udržet a velice rychle se objeví chybové hlášky, že aplikace nestíhá dodávat data zvukovce, tzv. xruny. Jsou slyšet jako praskání ve zvuku.
Nás spíše zajímá druhý extrém - co nejdelší přerušení. Dáme tedy -F obrovské, ať aplay vrátí horní limit:
kód: | pavel@nahore:~$ aplay -v -F 10000000 audio/441.wav
Playing WAVE 'audio/441.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Plug PCM: Hardware PCM card 1 'VIA 8237' device 0 subdevice 0
Its setup is:
......
period_time : 185759
........
|
Zvukovka tedy umí při 44.1kHz běžet 186ms sama bez potřeby CPU. Opravdu, monitor ukazuje cca 6 přerušení za sekundu.
Nyní dej přehrávat v banshee. Tipnul bych si, že budeš dostávat okolo 100 přerušení za sekundu. To je poměrně hodně, znamená to, že aplikace musí každých 10ms dodat zvukovce data. Když to nestihne (např. nárazová zátěž systému), uslyšíš prasknutí, xruny. Možná kdybys otevřel hodně stránek se velkým flashem (třeba na youtube), takové zátěže bys dosáhl.
Nastavíme vyšší hodnotu. Dej příkaz
Objeví se ti v podstatě ekvivalent regeditu ve win, zde pro prostředí gtk a gnome. Osobně nemám taková řešení konfigurace rád, preferuji textové konfiguráky, ale nenadělám nic.
Přes Ctrl+F dej hledat řetězec musicaudiosink, zaškrtni hledat v názvech klíčů. Klikni na nalezený výsledek (v mém případě)
kód: | /system/gstreamer/0.10/default/musicaudiosink |
V hlavním seznamu dvojklikni na ten klíč, abys mohl editovat hodnotu "alsasink" a připiš specifikaci latence:
kód: | alsasink latency-time=10000000 |
Zavři okno, tj. ukonči ten editor, restartuj banshee (pozor, minimalizuje se do panelu, na jeho ikoně dej pravým tlačítkem ukončit - zlatý příkazový řádek na vysvětlování a nastavování). V mém případě kleslo počet přerušení na 10 za sekundu. Proč to není 6 přesně nevím, zřejmě se provádí konverze do 32bitu (to je bitově věrné). Ale i tak je 100ms pro aplikaci spoustu času. To už asi k xrunu snadno nepřinutíš.
Mimochodem, běžné USB zvukovky jsem takto "skřípnul" až na 3 přerušení za sekundu, Intel HDA (dnes všude) umí údajně na jedno přerušení hrát až několik sekund. |
|
Návrat hore |
|
|
federmann Persona non grata
Založený: 08 máj 2008 Príspevky: 240 Bydlisko: Valašské Království
|
Zaslal: Ut jún 16, 2009 17:15:29 Predmet: |
|
|
Nezbýva než gratulovat k úspěchu. _________________ Svět nekončí tím co znám, ale začíná tím co neznám a znát bych mohl. |
|
Návrat hore |
|
|
durgo Hifista - pokročilec
Založený: 23 január 2007 Príspevky: 250 Bydlisko: Zvolen
|
Zaslal: Ut júl 07, 2009 11:47:13 Predmet: |
|
|
Federman díky.
Moje díky patrí každopádne dustinovi!
Priznávam, že k nasteveniu latencie zvukovky som sa ešte nedostal, hádam časom.
Objavuje sa občas jeden menší problémik. A to, že sem tam musím pohnúť tiahlom spdif a vrátiť ho späť do pôvodnej polohy tak ako sme ho nastavili. Čo som tak vypozoroval, stáva sa to pri hudbe nahratej do viac trackov, niekedy to jednoducho prestane hrať aj keď ukazovateľ času skladby beží ďalej. Stačí pohnúť tiahlom hore/dole a všetko funguje normálne ďalej. |
|
Návrat hore |
|
|
dustin Hifi inventar
Založený: 06 október 2006 Príspevky: 4857 Bydlisko: Plzeň
|
Zaslal: Ut júl 07, 2009 21:12:11 Predmet: |
|
|
durgo napísal: |
Objavuje sa občas jeden menší problémik. A to, že sem tam musím pohnúť tiahlom spdif a vrátiť ho späť do pôvodnej polohy tak ako sme ho nastavili. Čo som tak vypozoroval, stáva sa to pri hudbe nahratej do viac trackov, niekedy to jednoducho prestane hrať aj keď ukazovateľ času skladby beží ďalej. Stačí pohnúť tiahlom hore/dole a všetko funguje normálne ďalej. |
To je nesporně nepříjemné a neměli bychom to tak nechat. Divil bych si, kdyby se to interně přepínalo "samo". Ale dovedu si představit, že se něco pokouší hrát na výstup "spdif", který by se sice neměl nahodit (ten parametr spdif_aclink modulu vypne vytvoření zařízení hw:0,4), ale možná zacvičí s tím táhlem "IEC958 Playback AC97-SPSA".
Protože - mrkni se do souboru /usr/share/alsa/cards/ICH4.conf . Skoro až na konci v sekci ICH4.pcm.iec958 (spdif je jen alias iec958) je blok hooks :
kód: | type ctl_elems
hook_args [
{
name "IEC958 Playback AC97-SPSA"
lock true
preserve true
value 3
optional true
}
|
Což říká, že při otevření zařízení iec958 (=spdif) se ovládací prvek "IEC958 Playback AC97-SPSA" nastaví na hodnotu 3 (tedy spdif výstup, přesně to co již nepoužíváme), zamkne, aby s ním nešlo hýbat (lock true), a po uzavření zařízení se vrátí na původní hodnotu (preserve true). To je samozřejmě správné, protože normálně spdif funguje jen a pouze s tím táhlem na trojce. My to ale kvůli podpoře 44.1 pouštíme na nule.
Možná nám tato konfigurace hýbe čudlíkem pod rukama. Možná taky ne, ale někde začít musíme
Takže v prvním kole bude nejjednodušší změnit tu trojku na nulu (máš to na nule, že?). Tedy i kdyby došlo k provedení tohoto příkazu, táhlo zůstane stále na nule. Soubor může samozřejmě editovat jen superuživatel root, tedy editor spustíme s jeho právy pomocí sudo:
sudo gedit /usr/share/alsa/cards/ICH4.conf
Uvidíme, zda to pomůže. |
|
Návrat hore |
|
|
|
|
Nemôžete pridávať nové témy do tohto fóra. Nemôžete odpovedať na témy v tomto fóre. Nemôžete upravovať svoje príspevky v tomto fóre. Nemôžete mazať svoje príspevky v tomto fóre. Nemôžete hlasovať v tomto fóre. Nemôžete pripojiť súbory do tohto fóra. Nemôžete sťahovať súbory z tohto fóra.
|
|