diff --git a/_sources/index.txt b/_sources/index.txt
index 56c0058..658d656 100644
--- a/_sources/index.txt
+++ b/_sources/index.txt
@@ -13,7 +13,7 @@ Github pages
=================
* `Project page `_
-* `Download from pypi: `_
+* `Download from pypi `_
* `Bug tracker `_
diff --git a/index.html b/index.html
index e1d9be2..ae8ff33 100644
--- a/index.html
+++ b/index.html
@@ -75,7 +75,7 @@
Github pages
diff --git a/objects.inv b/objects.inv
index b4f12f3..0b56f3b 100644
Binary files a/objects.inv and b/objects.inv differ
diff --git a/searchindex.js b/searchindex.js
index 1fba569..622f1e4 100644
--- a/searchindex.js
+++ b/searchindex.js
@@ -1 +1 @@
-Search.setIndex({objects:{"":{alsaaudio:[1,0,1,""]},"alsaaudio.PCM":{pause:[1,1,1,""],setrate:[1,1,1,""],cardname:[1,1,1,""],setformat:[1,1,1,""],write:[1,1,1,""],read:[1,1,1,""],pcmmode:[1,1,1,""],setchannels:[1,1,1,""],pcmtype:[1,1,1,""],setperiodsize:[1,1,1,""]},"alsaaudio.Mixer":{getmute:[1,1,1,""],getrange:[1,1,1,""],setmute:[1,1,1,""],cardname:[1,1,1,""],switchcap:[1,1,1,""],mixer:[1,1,1,""],volumecap:[1,1,1,""],getenum:[1,1,1,""],getrec:[1,1,1,""],polldescriptors:[1,1,1,""],mixerid:[1,1,1,""],setrec:[1,1,1,""],getvolume:[1,1,1,""],setvolume:[1,1,1,""]},alsaaudio:{cards:[1,2,1,""],mixers:[1,2,1,""],ALSAAudioError:[1,4,1,""],Mixer:[1,3,1,""],PCM:[1,3,1,""]}},terms:{all:[1,2,3],concept:[0,2],queri:1,oss:3,alsaaudio:[0,1,2],signific:2,follow:[1,3],underrun:1,send:3,program:1,pcm_playback:1,those:3,under:3,aux:1,"case":1,libasound:3,liter:1,everi:[1,2],string:1,util:2,volum:1,failur:1,veri:[2,3],relev:1,level:3,gui:1,list:[1,3],item:1,team:3,small:[2,3],pleas:[1,3],prevent:1,slower:2,natur:3,direct:[1,2],sign:1,greatli:3,rate:[1,2],design:1,pcm_nonblock:1,download:0,click:1,even:3,index:0,what:[0,1,3],mpeg:1,microphon:[1,3],sun:1,item0:1,multimedia:1,abl:1,current:[1,2,3],version:[1,3],"new":[1,2],net:1,method:1,full:[1,3],gener:2,error:1,here:1,let:1,ubuntu:3,path:3,becom:1,sinc:[1,2,3],interpret:1,wait:1,search:0,convers:[1,2],larger:2,precis:2,trial:1,ctl:[1,3],extrem:1,chang:1,mix:1,volunt:3,extra:1,modul:[0,1,3],filenam:[1,3],api:[1,2,3],setperiods:1,instal:[0,3],soundcard:[1,3],select:1,from:[0,1,2,3],describ:1,would:[1,2,3],memori:2,two:[1,2,3],implic:2,few:[1,3],music:2,usr:3,taken:2,type:1,until:1,more:[1,3],wrapper:3,flag:1,accept:1,polldescriptor:1,known:2,must:[1,2],logarithm:1,join:1,player:1,cardnam:1,setup:[1,3],work:3,pcm_format_s16_l:1,dev:3,annoi:1,descriptor:1,can:[1,2,3],endian:[1,2],purpos:[1,3],root:3,volumecap:1,control:[1,2],process:[1,2],getvolum:1,indic:[0,1],libasound2:3,unsign:1,occur:1,delai:1,alwai:1,multipl:[1,2],goal:3,anoth:1,pcm_format_float64_l:1,write:[1,2],how:[1,2],playback:[1,3],aplai:1,verifi:3,simpl:1,pcm_format_float64_b:1,resourc:2,after:1,befor:3,mai:[1,3],end:2,associ:1,lar:3,github:0,element:1,inform:3,"switch":1,amix:1,allow:1,exclus:1,order:[1,2],mute:1,major:3,report:3,through:[1,3],setrat:1,mainli:1,dynam:2,paramet:1,call:[1,3],chosen:1,better:1,requir:3,pcm:[0,1,2,3],speaker:1,therefor:2,might:1,pcm_format_a_law:1,"return":[1,2],thei:2,python:[0,1,3],somebodi:1,half:1,interrupt:[1,2,3],now:3,introduct:[0,3],pcm_format_s24_b:1,term:3,name:1,anyth:[1,3],pcm_format_s24_l:1,separ:1,chois:1,achiev:1,mode:1,timeout:1,each:[1,2],found:[1,3],difficult:3,mean:[1,2],compil:3,resum:1,individu:2,realli:1,frames:1,our:3,happen:1,cardindex:1,space:3,your:[1,3],footnot:1,fairli:3,suitabl:1,hardwar:[2,3],advanc:3,manipul:[1,3],standard:3,reason:1,put:1,org:3,"byte":[1,2],card:1,thread:1,midi:3,could:1,timer:1,length:1,resproduc:2,licens:3,first:[1,3],oper:[1,3],softwar:3,rang:[1,2],directli:2,onc:2,independ:1,qualiti:1,number:[1,2],yourself:3,rant:1,unlik:3,done:2,least:[1,3],horribl:1,size:[1,2],prioriti:3,differ:[2,3],data:[1,2],interact:1,system:3,construct:1,master:1,too:1,similarli:[1,2],low:[2,3],option:1,copi:2,specifi:1,pcm_format_u32_l:1,mostli:3,exactli:[1,2],than:1,pcm_format_u32_b:1,provid:[1,2,3],zero:1,project:[0,3],pcm_captur:1,pre:1,pass:1,ani:[1,3],quietest:2,raw:1,expir:1,have:[1,3],tabl:0,need:[1,3],seem:3,probabl:3,lib:3,mic:1,note:[1,3],also:[1,2,3],exampl:[0,1,2],take:1,which:[1,2,3],noth:[1,2],channel:[1,2],alsa:[0,1,2,3],simplifi:[1,3],sure:1,unless:1,incorpor:1,setformat:1,object:[0,1],compress:1,pcm_format_u8:1,most:[1,3],plai:[1,2,3],mixerid:1,homepag:3,"class":1,pcm_format_ima_adpcm:1,stereo:[1,2],don:3,later:[1,3],flow:2,doe:1,getmut:1,pcm_format_u16_l:1,determin:[1,2],nchannel:1,pcm_format_u16_b:1,affair:1,find:[1,3],playbacktest:[1,3],impact:2,access:[1,3],onli:[1,2],ratio:1,execut:3,configur:2,activ:3,state:1,should:[1,2,3],latenc:2,getenum:1,getrec:1,get:1,familiar:2,pypi:0,pcm_format_s32_b:1,nativ:3,cannot:1,pcm_async:1,pcm_format_s32_l:1,enabl:1,headphon:1,recordtest:[1,3],patch:3,"default":[1,3],common:1,contain:[2,3],userspac:[2,3],where:1,wrote:3,kernel:[1,2,3],set:[1,2,3],commandlin:1,frame:[1,2],respons:3,fail:[1,3],whatsoev:3,best:1,vari:2,someth:1,enumer:1,wilstrup:3,enough:1,setchannel:1,between:2,"import":[1,2],neither:3,appreci:3,sole:1,setvolum:1,come:1,both:1,last:1,eventmask:1,howev:1,alon:1,etc:[1,2],inconsist:1,logic:3,mani:2,simpli:2,pcm_format_gsm:1,point:2,within:3,period:[1,2],header:3,written:1,colon:1,linux:3,poll:1,assum:1,speak:[1,3],quit:1,second:[1,2],devic:[1,2,3],been:[1,3],compon:3,accumul:1,much:[1,2],valu:1,basic:3,hass:3,strategi:1,wish:3,argument:1,understand:[1,2],demand:2,present:1,sound:[1,2,3],ugli:1,myself:1,look:[1,3],packag:3,replac:2,mixertest:1,sourceforg:3,defin:1,"while":2,mono:[1,2],exist:3,immisch:3,telephoni:[1,2],layer:2,nessecari:1,almost:2,pyalsaaudio:3,physic:3,accummul:1,pcm_format_mu_law:1,"64kbit":2,sever:3,develop:3,welcom:3,author:3,perform:3,make:1,same:[1,2,3],handl:[2,3],complex:1,speech:1,ossaudiodev:3,document:[0,1],complet:3,http:3,psf:3,pcm_format_s16_b:1,driver:3,capabl:[1,3],rais:1,user:3,typic:[1,2],task:1,older:3,well:3,know:1,without:1,playout:1,thi:[1,2,3],audio:[1,2,3],usual:2,explan:1,paus:1,just:1,less:1,casper:3,yet:1,alsasound:3,easi:1,hint:1,had:1,except:1,littl:[1,2],add:1,valid:1,input:2,match:1,build:3,applic:3,format:[1,2],read:[1,2],big:[1,2],howto:1,pcmmode:1,alsaaudioerror:1,bit:[1,2],pcm_format_s8:1,rear:1,pcm_format_u24_b:1,like:1,specif:[1,2,3],deprec:3,docutil:1,signal:2,pcm_format_u24_l:1,integ:[1,2],necessari:2,either:[1,2],choic:1,output:[1,2],page:0,underli:1,www:3,often:2,captur:[1,2,3],interv:2,some:[1,2],back:[1,3],percentag:1,intern:2,sampl:[1,2],proper:3,pain:1,librari:3,distribut:3,scale:2,setmut:1,avoid:1,per:2,buffer:[1,2],tracker:[0,3],leav:1,commerci:3,complic:1,preload:1,run:[1,3],"enum":1,usag:2,loudest:2,although:3,pyalsa:3,about:3,actual:[1,2],coupl:1,slightli:1,mixer:[0,1,3],unfortun:1,constructor:1,pcmtype:1,block:1,own:3,hardli:1,"float":[1,2],encod:1,terminolog:[0,2],warranti:3,empti:1,pcm_normal:1,playwav:1,getrang:1,span:1,wai:1,support:[1,3],"long":3,avail:[1,3],start:1,singl:[1,2],includ:[1,3],lot:[1,2],suit:3,wav:1,chunk:2,"function":[1,3],tupl:1,regard:3,reexpos:1,link:3,line:1,volumn:1,bug:[0,3],immedi:1,consist:[1,2,3],possibl:1,whether:[1,2],setrec:1,displai:1,record:[1,2,3],limit:1,otherwis:1,problem:1,similar:3,featur:3,constant:1,creat:1,certain:2,"abstract":3,doesn:1,repres:[1,2],implement:[1,3],periods:1,file:[1,3],ship:3,check:1,fill:3,readi:2,when:[1,2],switchcap:1,other:[1,2,3],futur:1,test:[0,1,3],you:[1,2,3],out:1,architectur:3,pcm_format_mpeg:1,sequenc:3,amplitud:2,gap:3,debian:3,stai:1,descript:1,pcm_format_float_b:1,time:[1,2,3],cpu:2,pcm_format_float_l:1},objtypes:{"0":"py:module","1":"py:method","2":"py:function","3":"py:class","4":"py:exception"},titles:["alsaaudio documentation","alsaaudio","PCM Terminology and Concepts","Introduction"],objnames:{"0":["py","module","Python module"],"1":["py","method","Python method"],"2":["py","function","Python function"],"3":["py","class","Python class"],"4":["py","exception","Python exception"]},filenames:["index","libalsaaudio","terminology","pyalsaaudio"]})
\ No newline at end of file
+Search.setIndex({objects:{"":{alsaaudio:[1,0,1,""]},"alsaaudio.PCM":{pause:[1,1,1,""],setrate:[1,1,1,""],cardname:[1,1,1,""],setformat:[1,1,1,""],write:[1,1,1,""],read:[1,1,1,""],pcmmode:[1,1,1,""],setchannels:[1,1,1,""],pcmtype:[1,1,1,""],setperiodsize:[1,1,1,""]},"alsaaudio.Mixer":{getmute:[1,1,1,""],getrange:[1,1,1,""],setmute:[1,1,1,""],cardname:[1,1,1,""],switchcap:[1,1,1,""],mixer:[1,1,1,""],volumecap:[1,1,1,""],getenum:[1,1,1,""],getrec:[1,1,1,""],polldescriptors:[1,1,1,""],mixerid:[1,1,1,""],setrec:[1,1,1,""],getvolume:[1,1,1,""],setvolume:[1,1,1,""]},alsaaudio:{cards:[1,2,1,""],mixers:[1,2,1,""],ALSAAudioError:[1,4,1,""],Mixer:[1,3,1,""],PCM:[1,3,1,""]}},terms:{all:[1,2,3],concept:[0,2],queri:1,oss:3,signific:2,follow:[1,3],underrun:1,send:3,program:1,pcm_playback:1,present:1,under:3,aux:1,sound:[1,2,3],libasound:3,liter:1,everi:[1,2],string:1,util:2,volum:1,failur:1,veri:[2,3],relev:1,level:3,gui:1,list:[1,3],item:1,team:3,small:[2,3],eventmask:1,pleas:[1,3],prevent:1,slower:2,natur:3,direct:[1,2],sign:1,valu:1,rate:[1,2],design:1,pcm_nonblock:1,download:0,click:1,even:3,index:0,what:[0,1,3],mpeg:1,microphon:[1,3],sun:1,item0:1,multimedia:1,abl:1,current:[1,2,3],version:[1,3],"new":[1,2],net:1,method:1,full:[1,3],gener:2,here:1,let:1,ubuntu:3,path:3,becom:1,sinc:[1,2,3],interpret:1,wait:1,search:0,convers:[1,2],larger:2,precis:2,trial:1,ctl:[1,3],extrem:1,chang:1,volunt:3,extra:1,modul:[0,1,3],filenam:[1,3],api:[1,2,3],setperiods:1,instal:[0,3],"byte":[1,2],select:1,from:[0,1,2,3],describ:1,would:[1,2,3],memori:2,fill:3,two:[1,2,3],implic:2,few:[1,3],music:2,usr:3,taken:2,type:1,until:1,more:[1,3],wrapper:3,flag:1,accept:1,polldescriptor:1,known:2,must:[1,2],logarithm:1,join:1,accummul:1,cardnam:1,setup:[1,3],work:3,pcm_format_s16_l:1,dev:3,annoi:1,descriptor:1,can:[1,2,3],endian:[1,2],purpos:[1,3],root:3,volumecap:1,control:[1,2],process:[1,2],getvolum:1,indic:[0,1],libasound2:3,unsign:1,occur:1,delai:1,alwai:1,multipl:[1,2],goal:3,anoth:1,pcm_format_float64_l:1,write:[1,2],how:[1,2],playback:[1,3],aplai:1,verifi:3,simpl:1,pcm_format_float64_b:1,resourc:2,after:1,befor:3,mai:[1,3],end:2,data:[1,2],lar:3,github:0,element:1,inform:3,"switch":1,amix:1,incorpor:1,exclus:1,order:[1,2],mute:1,major:3,pcm_async:1,through:[1,3],setrat:1,mainli:1,dynam:2,paramet:1,chosen:1,better:1,pcm_format_s32_l:1,pcm:[0,1,2,3],alsaaudioerror:1,speech:1,therefor:2,might:1,pcm_format_a_law:1,"return":[1,2],thei:2,python:[0,1,3],somebodi:1,half:1,interrupt:[1,2,3],now:3,introduct:[0,3],pcm_format_s24_b:1,term:3,name:1,anyth:[1,3],pcm_format_s24_l:1,separ:1,chois:1,achiev:1,mode:1,timeout:1,each:[1,2],found:[1,3],complet:3,mean:[1,2],compil:3,resum:1,individu:2,realli:1,pcm_normal:1,our:3,happen:1,cardindex:1,space:3,getrang:1,footnot:1,suitabl:1,hardwar:[2,3],advanc:3,manipul:[1,3],standard:3,reason:1,put:1,org:3,soundcard:[1,3],card:1,thread:1,midi:3,could:1,timer:1,length:1,resproduc:2,licens:3,first:[1,3],oper:[1,3],softwar:3,rang:[1,2],directli:2,onc:2,independ:1,qualiti:1,number:[1,2],yourself:3,rant:1,unlik:3,done:2,least:[1,3],horribl:1,size:[1,2],prioriti:3,differ:[2,3],associ:1,interact:1,system:3,construct:1,master:1,too:1,similarli:[1,2],includ:[1,3],option:1,copi:2,specifi:1,pcm_format_u32_l:1,mostli:3,wav:1,exactli:[1,2],than:1,pcm_format_u32_b:1,provid:[1,2,3],zero:1,project:[0,3],pcm_captur:1,pre:1,pass:1,ani:[1,3],quietest:2,raw:1,expir:1,have:[1,3],tabl:0,need:[1,3],seem:3,lib:3,mic:1,note:[1,3],also:[1,2,3],without:1,take:1,which:[1,2,3],noth:[1,2],channel:[1,2],alsa:[0,1,2,3],simplifi:[1,3],sure:1,unless:1,allow:1,setformat:1,object:[0,1],compress:1,pcm_format_u8:1,most:[1,3],plai:[1,2,3],mixerid:1,homepag:3,"class":1,pcm_format_ima_adpcm:1,stereo:[1,2],don:3,later:[1,3],flow:2,doe:1,getmut:1,pcm_format_u16_l:1,determin:[1,2],nchannel:1,pcm_format_u16_b:1,affair:1,find:[1,3],playbacktest:[1,3],impact:2,access:[1,3],onli:[1,2],ratio:1,just:1,configur:2,activ:3,enough:1,should:[1,2,3],latenc:2,getenum:1,getrec:1,get:1,familiar:2,pypi:0,pcm_format_s32_b:1,nativ:3,cannot:1,report:3,requir:3,enabl:1,headphon:1,recordtest:[1,3],patch:3,whether:[1,2],common:1,contain:[2,3],userspac:[2,3],where:1,wrote:3,kernel:[1,2,3],set:[1,2,3],commandlin:1,"float":[1,2],frame:[1,2],respons:3,fail:[1,3],whatsoev:3,best:1,vari:2,someth:1,enumer:1,wilstrup:3,state:1,setchannel:1,between:2,"import":[1,2],neither:3,appreci:3,sole:1,setvolum:1,come:1,both:1,last:1,mono:[1,2],howev:1,hint:1,alon:1,constructor:1,etc:[1,2],capabl:[1,3],inconsist:1,logic:3,mani:2,simpli:2,pcm_format_gsm:1,point:2,period:[1,2],header:3,written:1,colon:1,linux:3,poll:1,assum:1,speak:[1,3],quit:1,second:[1,2],coupl:1,devic:[1,2,3],been:[1,3],compon:3,accumul:1,much:[1,2],alsaaudio:[0,1,2],basic:3,hass:3,strategi:1,argument:1,understand:[1,2],demand:2,those:3,"case":1,ugli:1,myself:1,look:[1,3],packag:3,mixertest:1,sourceforg:3,defin:1,"while":2,error:1,periods:1,telephoni:[1,2],layer:2,nessecari:1,almost:2,pyalsaaudio:3,physic:3,player:1,pcm_format_mu_law:1,"64kbit":2,sever:3,develop:3,welcom:3,author:3,perform:3,make:1,same:[1,2,3],handl:[2,3],complex:1,speaker:1,ossaudiodev:3,document:[0,1],difficult:3,http:3,howto:1,pcm_format_s16_b:1,driver:3,fairli:3,rais:1,user:3,typic:[1,2],task:1,older:3,well:3,exampl:[0,1,2],playout:1,thi:[1,2,3],audio:[1,2,3],usual:2,explan:1,paus:1,execut:3,less:1,casper:3,setrec:1,yet:1,alsasound:3,easi:1,mix:1,had:1,except:1,littl:[1,2],add:1,other:[1,2,3],input:2,suit:3,match:1,build:3,applic:3,format:[1,2],read:[1,2],big:[1,2],psf:3,pcmmode:1,know:1,bit:[1,2],pcm_format_s8:1,rear:1,pcm_format_u24_b:1,like:1,specif:[1,2,3],deprec:3,docutil:1,signal:2,pcm_format_u24_l:1,integ:[1,2],necessari:2,either:[1,2],choic:1,output:[1,2],page:0,underli:1,www:3,often:2,captur:[1,2,3],interv:2,some:[1,2],back:[1,3],percentag:1,intern:2,sampl:[1,2],proper:3,pain:1,librari:3,distribut:3,scale:2,setmut:1,implement:[1,3],avoid:1,per:2,buffer:[1,2],tracker:[0,3],leav:1,complic:1,preload:1,run:[1,3],"enum":1,usag:2,loudest:2,although:3,pyalsa:3,about:3,actual:[1,2],greatli:3,slightli:1,mixer:[0,1,3],unfortun:1,commerci:3,pcmtype:1,block:1,own:3,hardli:1,within:3,encod:1,terminolog:[0,2],warranti:3,empti:1,frames:1,playwav:1,your:[1,3],span:1,wai:1,support:[1,3],"long":3,avail:[1,3],start:1,singl:[1,2],low:[2,3],lot:[1,2],replac:2,call:[1,3],chunk:2,"function":[1,3],tupl:1,regard:3,reexpos:1,link:3,line:1,volumn:1,bug:[0,3],immedi:1,consist:[1,2,3],possibl:1,"default":[1,3],wish:3,displai:1,record:[1,2,3],limit:1,otherwis:1,problem:1,similar:3,featur:3,constant:1,creat:1,certain:2,"abstract":3,doesn:1,repres:[1,2],exist:3,immisch:3,file:[1,3],ship:3,check:1,probabl:3,readi:2,when:[1,2],switchcap:1,valid:1,futur:1,test:[0,1,3],you:[1,2,3],out:1,architectur:3,pcm_format_mpeg:1,sequenc:3,amplitud:2,gap:3,debian:3,stai:1,descript:1,pcm_format_float_b:1,time:[1,2,3],cpu:2,pcm_format_float_l:1},objtypes:{"0":"py:module","1":"py:method","2":"py:function","3":"py:class","4":"py:exception"},titles:["alsaaudio documentation","alsaaudio","PCM Terminology and Concepts","Introduction"],objnames:{"0":["py","module","Python module"],"1":["py","method","Python method"],"2":["py","function","Python function"],"3":["py","class","Python class"],"4":["py","exception","Python exception"]},filenames:["index","libalsaaudio","terminology","pyalsaaudio"]})
\ No newline at end of file