Index: python/aubio/aubioclass.py
===================================================================
--- python/aubio/aubioclass.py	(revision 2359cbd4974a3e9ff99496d647ba12c232ad91bf)
+++ python/aubio/aubioclass.py	(revision 34422b4c009568b7670aaec0aef5550deafe11e4)
@@ -2,38 +2,36 @@
 
 class fvec:
-    def __init__(self,size,chan):
-        self.vec = new_fvec(size,chan)
+    def __init__(self,size):
+        self.vec = new_fvec(size)
     def __call__(self):
         return self.vec
     def __del__(self):
         del_fvec(self())
-    def get(self,pos,chan):
-        return fvec_read_sample(self(),chan,pos)
-    def set(self,value,pos,chan):
-        return fvec_write_sample(self(),value,chan,pos)
-    def channel(self,chan):
-        return fvec_get_channel(self(),chan)
+    def get(self,pos):
+        return fvec_read_sample(self(),pos)
+    def set(self,value,pos):
+        return fvec_write_sample(self(),value,pos)
     def data(self):
         return fvec_get_data(self())
 
 class cvec:
-    def __init__(self,size,chan):
-        self.vec = new_cvec(size,chan)
+    def __init__(self,size):
+        self.vec = new_cvec(size)
     def __call__(self):
         return self.vec
     def __del__(self):
         del_cvec(self())
-    def get(self,pos,chan):
-        return self.get_norm(pos,chan)
-    def set(self,val,pos,chan):
-        self.set_norm(val,chan,pos)
-    def get_norm(self,pos,chan):
-        return cvec_read_norm(self(),chan,pos)
-    def set_norm(self,val,pos,chan):
-        cvec_write_norm(self(),val,chan,pos)
-    def get_phas(self,pos,chan):
-        return cvec_read_phas(self(),chan,pos)
-    def set_phas(self,val,pos,chan):
-        cvec_write_phas(self(),val,chan,pos)
+    def get(self,pos):
+        return self.get_norm(pos)
+    def set(self,val,pos):
+        self.set_norm(val,pos)
+    def get_norm(self,pos):
+        return cvec_read_norm(self(),pos)
+    def set_norm(self,val,pos):
+        cvec_write_norm(self(),val,pos)
+    def get_phas(self,pos):
+        return cvec_read_phas(self(),pos)
+    def set_phas(self,val,pos):
+        cvec_write_phas(self(),val,pos)
 
 class sndfile:
@@ -54,11 +52,11 @@
         return aubio_sndfile_channels(self.file)
     def read(self,nfram,vecread):
-        return aubio_sndfile_read(self.file,nfram,vecread())
+        return aubio_sndfile_read_mono(self.file,nfram,vecread())
     def write(self,nfram,vecwrite):
         return aubio_sndfile_write(self.file,nfram,vecwrite())
 
 class pvoc:
-    def __init__(self,buf,hop,chan):
-        self.pv = new_aubio_pvoc(buf,hop,chan)
+    def __init__(self,buf,hop):
+        self.pv = new_aubio_pvoc(buf,hop)
     def __del__(self):
         del_aubio_pvoc(self.pv)
@@ -70,6 +68,6 @@
 class onsetdetection:
     """ class for aubio_specdesc """
-    def __init__(self,mode,buf,chan):
-        self.od = new_aubio_specdesc(mode,buf,chan)
+    def __init__(self,mode,buf):
+        self.od = new_aubio_specdesc(mode,buf)
     def do(self,tc,tf):
         aubio_specdesc_do(self.od,tc(),tf())
@@ -80,10 +78,10 @@
     """ class for aubio_peakpicker """
     def __init__(self,threshold=0.1):
-        self.pp = new_aubio_peakpicker(1)
-        self.out = new_fvec(1, 1)
+        self.pp = new_aubio_peakpicker()
+        self.out = new_fvec(1)
         aubio_peakpicker_set_threshold (self.pp, threshold)
     def do(self,fv):
         aubio_peakpicker_do(self.pp, fv(), self.out)
-        return fvec_read_sample(self.out, 0, 0)
+        return fvec_read_sample(self.out, 0)
     def getval(self):
         return aubio_peakpicker_get_adaptive_threshold(self.pp)
@@ -93,15 +91,15 @@
 class onsetpick:
     """ superclass for aubio_pvoc + aubio_specdesc + aubio_peakpicker """
-    def __init__(self,bufsize,hopsize,channels,myvec,threshold,mode='dual',derivate=False,dcthreshold=0):
-        self.myfft    = cvec(bufsize,channels)
-        self.pv       = pvoc(bufsize,hopsize,channels)
+    def __init__(self,bufsize,hopsize,myvec,threshold,mode='dual',derivate=False,dcthreshold=0):
+        self.myfft    = cvec(bufsize)
+        self.pv       = pvoc(bufsize,hopsize)
         if mode in ['dual'] :
-                self.myod     = onsetdetection("hfc",bufsize,channels)
-                self.myod2    = onsetdetection("mkl",bufsize,channels)
-                self.myonset  = fvec(1,channels)
-                self.myonset2 = fvec(1,channels)
+                self.myod     = onsetdetection("hfc",bufsize)
+                self.myod2    = onsetdetection("mkl",bufsize)
+                self.myonset  = fvec(1)
+                self.myonset2 = fvec(1)
         else: 
-                self.myod     = onsetdetection(mode,bufsize,channels)
-                self.myonset  = fvec(1,channels)
+                self.myod     = onsetdetection(mode,bufsize)
+                self.myonset  = fvec(1)
         self.mode     = mode
         self.pp       = peakpick(float(threshold))
@@ -115,12 +113,12 @@
         if self.mode == 'dual':
            self.myod2.do(self.myfft,self.myonset2)
-           self.myonset.set(self.myonset.get(0,0)*self.myonset2.get(0,0),0,0)
+           self.myonset.set(self.myonset.get(0)*self.myonset2.get(0),0)
         if self.derivate:
-           val         = self.myonset.get(0,0)
+           val         = self.myonset.get(0)
            dval        = val - self.oldval
            self.oldval = val
-           if dval > 0: self.myonset.set(dval,0,0)
+           if dval > 0: self.myonset.set(dval,0)
            else:  self.myonset.set(0.,0,0)
-        isonset, dval = self.pp.do(self.myonset),self.myonset.get(0,0)
+        isonset, dval = self.pp.do(self.myonset),self.myonset.get(0)
         if self.dcthreshold:
            if dval < self.dcthreshold: isonset = 0 
@@ -129,8 +127,8 @@
 class pitch:
     def __init__(self,mode="mcomb",bufsize=2048,hopsize=1024,
-        channels=1,samplerate=44100.,omode="freq",tolerance=0.1):
-        self.pitchp = new_aubio_pitch(mode,bufsize,hopsize,channels,
+        samplerate=44100.,omode="freq",tolerance=0.1):
+        self.pitchp = new_aubio_pitch(mode,bufsize,hopsize,
             samplerate)
-        self.mypitch = fvec(1, channels)
+        self.mypitch = fvec(1)
         aubio_pitch_set_unit(self.pitchp,omode)
         aubio_pitch_set_tolerance(self.pitchp,tolerance)
@@ -140,5 +138,5 @@
     def __call__(self,myvec): 
         aubio_pitch_do(self.pitchp,myvec(), self.mypitch())
-        return self.mypitch.get(0,0)
+        return self.mypitch.get(0)
 
 class filter:
Index: python/aubio/task/onset.py
===================================================================
--- python/aubio/task/onset.py	(revision 2359cbd4974a3e9ff99496d647ba12c232ad91bf)
+++ python/aubio/task/onset.py	(revision 34422b4c009568b7670aaec0aef5550deafe11e4)
@@ -10,5 +10,4 @@
 		self.opick = onsetpick(self.params.bufsize,
 			self.params.hopsize,
-			self.channels,
 			self.myvec,
 			self.params.threshold,
Index: python/aubio/task/pitch.py
===================================================================
--- python/aubio/task/pitch.py	(revision 2359cbd4974a3e9ff99496d647ba12c232ad91bf)
+++ python/aubio/task/pitch.py	(revision 34422b4c009568b7670aaec0aef5550deafe11e4)
@@ -16,5 +16,4 @@
 			bufsize=self.params.bufsize,
 			hopsize=self.params.hopsize,
-			channels=self.channels,
 			samplerate=self.srate,
 			omode=self.params.omode,
Index: python/aubio/task/task.py
===================================================================
--- python/aubio/task/task.py	(revision 2359cbd4974a3e9ff99496d647ba12c232ad91bf)
+++ python/aubio/task/task.py	(revision 34422b4c009568b7670aaec0aef5550deafe11e4)
@@ -17,7 +17,6 @@
 		self.filei     = sndfile(self.input)
 		self.srate     = self.filei.samplerate()
-		self.channels  = self.filei.channels()
 		self.params.step = float(self.params.hopsize)/float(self.srate)
-		self.myvec     = fvec(self.params.hopsize,self.channels)
+		self.myvec     = fvec(self.params.hopsize)
 		self.output    = output
 
