[audacity4blind] Vocal remover plug-in, attached

  • From: "David R. Sky" <davidsky@xxxxxxxxxxxxxx>
  • To: audacity4blind@xxxxxxxxxxxxx
  • Date: Fri, 16 Jun 2006 16:29:34 -0700 (PDT)

I've attached a file called vremover.ny , written by David hostetler. Copy and paste it into your Audacity plug-ins folder, next time you re-start Audacity and have selected audio to remove vocals, you'll be able to click on Vocal Remover under the effects menu.

I've copied and pasted David's original email below, read through his comments for instructions.

David

{begin David hostetler's post}

Below is a new vocal remover that I developed as a Nyquist plug in for 
Audacity. I have also submitted it for inclusion on the Nyquist plug in web 
page.

Enjoy and let me know of any comments or recommendations, it is my first 
Nyquist plug in! Hopefully the comments in the code explain it all.


;nyquist plug-in ;version 1 ;type process ;name "Vocal Remover..." ;action "Removing vocal..." ;info "Vocal Remover by David Hostetler"

;control sw "Remove in voice band or full bandwidth" int "0=voice 1=full" 0 0 1
;control lower "Voice band lower limit..." int "Hz" 200 20 20000
;control upper "Voice band upper limit..." int "Hz" 3000 20 20000

; Vocal Remover by David Hostetler February 23, 2005

; This effect is intended to remove a vocal that appears equally on the right ; and left channel of a stereo recording. The results would be used as a backing ; track for a vocalist singing the song in place of the original vocalist. The ; best cancellation of the vocal will probably be if the sound file used is ; ripped directly from the original CD, without any conversion to analog and ; back or any compression (such as MP3, etc.), either of which may disturb the ; vocal level between the right and left channel.

; Many previous versions of this function in both the analog and digital domain ; have used a simpler full bandwidth subtraction. A switch is provided to try it ; both ways for comparison.

(cond
((= sw 0) ; remove in just voice band
(vector
(sum (highpass8 (lowpass8 (sum (aref s 0) (mult -1 (aref s 1))) upper) lower) (sum (highpass8 (aref s 0) upper) (lowpass8 (aref s 0) lower)))
(sum (highpass8 (lowpass8 (sum (aref s 1) (mult -1 (aref s 0))) upper) lower) (sum (highpass8 (aref s 1) upper) (lowpass8 (aref s 1) lower)))))


; The above section subtracts one channel from the other and THEN filters to the ; voice band specified by the controls. The subtraction is done BEFORE any other ; processing because I found that if you filter before, the amplitude is ; disturbed just a little and the cancellation is not as complete. After the ; voice band is filtered, the frequencies below and above the voice band are ; added back.

((= sw 1) ; remove in full bandwidth
(sum (aref s 0)(mult -1 (aref s 1)))))

; This is just one channel subtracted from the other.
;nyquist plug-in

;version 1

;type process

;name "Vocal Remover..."

;action "Removing vocal..."

;info "Vocal Remover by David Hostetler"



;control sw "Remove in voice band or full bandwidth" int "0=voice 1=full" 0 0 1

;control lower "Voice band lower limit..." int "Hz" 200 20 20000

;control upper "Voice band upper limit..." int "Hz" 3000 20 20000



; Vocal Remover by David Hostetler February 23, 2005

 

; This effect is intended to remove a vocal that appears equally on the right 

; and left channel of a stereo recording. The results would be used as a 
backing 

; track for a vocalist singing the song in place of the original vocalist. The 

; best cancellation of the vocal will probably be if the sound file used is 

; ripped directly from the original CD, without any conversion to analog and 

; back or any compression (such as MP3, etc.), either of which may disturb the 

; vocal level between the right and left channel.



; Many previous versions of this function in both the analog and digital domain 

; have used a simpler full bandwidth subtraction. A switch is provided to try 
it 

; both ways for comparison.



(cond

((= sw 0) ; remove in just voice band

(vector

(sum (highpass8 (lowpass8 (sum (aref s 0) (mult -1 (aref s 1))) upper) lower) 

(sum (highpass8 (aref s 0) upper) (lowpass8 (aref s 0) lower)))

(sum (highpass8 (lowpass8 (sum (aref s 1) (mult -1 (aref s 0))) upper) lower) 

(sum (highpass8 (aref s 1) upper) (lowpass8 (aref s 1) lower)))))



; The above section subtracts one channel from the other and THEN filters to 
the 

; voice band specified by the controls. The subtraction is done BEFORE any 
other 

; processing because I found that if you filter before, the amplitude is 

; disturbed just a little and the cancellation is not as complete. After the 

; voice band is filtered, the frequencies below and above the voice band are 

; added back.



((= sw 1) ; remove in full bandwidth

(sum (aref s 0)(mult -1 (aref s 1)))))

 

; This is just one channel subtracted from the other.

Other related posts:

  • » [audacity4blind] Vocal remover plug-in, attached