Creating a cassette converter plug-in

Using Nyquist scripts in Audacity.
Post and download new plug-ins.

If you require help using Audacity, please post on the forum board relevant to your operating system:
Windows
Mac OS X
GNU/Linux and Unix-like

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Mon Aug 25, 2014 2:06 pm

steve wrote:Not specifically, though yes, other noise removal effects will usually work to a greater or lesser extent.

Okay how about this. Without using a plug-in I can use Audacity to get the noise profile of the track and then apply noise reduction throughout the entire track right? (Using Effect > Noise Removal.. > Get Noise Profile) Is it possible to create my own plug-in that does this? Or will just using an existing noise reduction plug-in be better.

steve wrote:Audacity has "Sound Activated Recording", which is about as close as Audacity gets to this feature: http://manual.audacityteam.org/o/man/tr ... u.html#sar

What about silence in between tracks? Would it stop recording and then continue when the music starts again? I wouldn't want that to happen.

So going back to what i think is the flow of this project which is:
1. Auto record
2. Record entire track
3. Perform noise reduction
4. Divide the main track into songs
5. Tag each song with ID3

Which of these can I actually code with Nyquist to do?
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by steve » Mon Aug 25, 2014 7:58 pm

imnabeeltrick wrote:Okay how about this. Without using a plug-in I can use Audacity to get the noise profile of the track and then apply noise reduction throughout the entire track right? (Using Effect > Noise Removal.. > Get Noise Profile) Is it possible to create my own plug-in that does this? Or will just using an existing noise reduction plug-in be better.

It would certainly be possible to implement noise reduction as a Nyquist plug-in, but that would be a complex (difficult) task. Noise reduction effects are not simple.

imnabeeltrick wrote:What about silence in between tracks? Would it stop recording and then continue when the music starts again? I wouldn't want that to happen.

I think that is answered in the documentation?

As previously stated, detecting gaps between songs and labelling them can be implemented in Nyquist. There is already Sound Finder and Silence Finder, and both of these can be improved.
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)
steve
Site Admin
 
Posts: 45396
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Tue Aug 26, 2014 1:58 am

steve wrote:It would certainly be possible to implement noise reduction as a Nyquist plug-in, but that would be a complex (difficult) task. Noise reduction effects are not simple.

See the thing is, this project is actually for my final year project of my degree. I'm supposed to design a plug-in that would simplify the task of converting tapes into mp3s. Having said that, what can I actually code with Nyquist to do that then?
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by steve » Tue Aug 26, 2014 7:38 am

imnabeeltrick wrote:See the thing is, this project is actually for my final year project of my degree. I'm supposed to design a plug-in that would simplify the task of converting tapes into mp3s. Having said that, what can I actually code with Nyquist to do that then?

Is this a computing/programming degree?
Audacity also supports other types of plug-ins. In particular, "modules" (wxWidgets plug-ins). These are integrated more closely into the Audacity code and are able to access more features in Audacity. They are generally written in C++ (though I think it is possible to write them in other languages). There is a limited amount of documentation about modules, much of which is incomplete or out of date, but there are two functional example plug-ins of this type in the Audacity SVN source code.

"Mod-script-pipe" is probably most relevant for your purposes. This module allows Audacity to be controlled by an external script via named pipes.

I think that much of your original proposal could be implemented as a "module" type plug-in.

Some documentation:
http://wiki.audacityteam.org/wiki/Creat ... wn_Plug-in
http://manual.audacityteam.org/o/man/scripting.html
http://wiki.audacityteam.org/wiki/Modul ... Initiative
http://wiki.audacityteam.org/wiki/Experimental_Modules
http://wiki.audacityteam.org/wiki/Scripting_Module
http://manual.audacityteam.org/index.ph ... =Scripting
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)
steve
Site Admin
 
Posts: 45396
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Tue Aug 26, 2014 6:29 pm

steve wrote:
imnabeeltrick wrote:See the thing is, this project is actually for my final year project of my degree. I'm supposed to design a plug-in that would simplify the task of converting tapes into mp3s. Having said that, what can I actually code with Nyquist to do that then?

Is this a computing/programming degree?
Audacity also supports other types of plug-ins. In particular, "modules" (wxWidgets plug-ins). These are integrated more closely into the Audacity code and are able to access more features in Audacity. They are generally written in C++ (though I think it is possible to write them in other languages). There is a limited amount of documentation about modules, much of which is incomplete or out of date, but there are two functional example plug-ins of this type in the Audacity SVN source code.

"Mod-script-pipe" is probably most relevant for your purposes. This module allows Audacity to be controlled by an external script via named pipes.

I think that much of your original proposal could be implemented as a "module" type plug-in.

Some documentation:
http://wiki.audacityteam.org/wiki/Creat ... wn_Plug-in
http://manual.audacityteam.org/o/man/scripting.html
http://wiki.audacityteam.org/wiki/Modul ... Initiative
http://wiki.audacityteam.org/wiki/Experimental_Modules
http://wiki.audacityteam.org/wiki/Scripting_Module
http://manual.audacityteam.org/index.ph ... =Scripting

Yes, it's an IT degree.
So you're saying a better way of doing this is by using Audacity Modules, specifically Mod-script-pipe? I did do some reading prior to starting this project, I chose Nyquist because it seems to be the most used plug-in? Or at least it seems easier to get info on Nyquist anyway.
I did initially wanted to use a plug-in that mainly uses C++, but since it says it's still a work in progress I decided not to look into it any further.
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Wed Aug 27, 2014 9:12 pm

steve wrote:
imnabeeltrick wrote:See the thing is, this project is actually for my final year project of my degree. I'm supposed to design a plug-in that would simplify the task of converting tapes into mp3s. Having said that, what can I actually code with Nyquist to do that then?

Is this a computing/programming degree?
Audacity also supports other types of plug-ins. In particular, "modules" (wxWidgets plug-ins). These are integrated more closely into the Audacity code and are able to access more features in Audacity. They are generally written in C++ (though I think it is possible to write them in other languages). There is a limited amount of documentation about modules, much of which is incomplete or out of date, but there are two functional example plug-ins of this type in the Audacity SVN source code.

"Mod-script-pipe" is probably most relevant for your purposes. This module allows Audacity to be controlled by an external script via named pipes.

I think that much of your original proposal could be implemented as a "module" type plug-in.

Some documentation:
http://wiki.audacityteam.org/wiki/Creat ... wn_Plug-in
http://manual.audacityteam.org/o/man/scripting.html
http://wiki.audacityteam.org/wiki/Modul ... Initiative
http://wiki.audacityteam.org/wiki/Experimental_Modules
http://wiki.audacityteam.org/wiki/Scripting_Module
http://manual.audacityteam.org/index.ph ... =Scripting

Actually you know what, let's not get into that for now. I think for now I wanna go with chains. How would I go about adding all my functionalities into a chain?
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by steve » Wed Aug 27, 2014 9:32 pm

imnabeeltrick wrote:Actually you know what, let's not get into that for now. I think for now I wanna go with chains. How would I go about adding all my functionalities into a chain?

This should answer most of your questions about Chains: http://manual.audacityteam.org/o/man/ch ... ation.html
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)
steve
Site Admin
 
Posts: 45396
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Sun Sep 07, 2014 8:04 pm

steve wrote:This should answer most of your questions about Chains: http://manual.audacityteam.org/o/man/ch ... ation.html

It seems like I can only use chains for noise removal. Is there anyway to use sound finder in the chain?
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by steve » Sun Sep 07, 2014 8:28 pm

Chains only support "Effects". Fortunately, Sound Finder will still work correctly if it is defined as an "Effect". To do that, you need to change the plug-in header so that the "type" is set to "process". See here for more details: http://wiki.audacityteam.org/wiki/Nyqui ... pe_process
9/10 questions are answered in the FREQUENTLY ASKED QUESTIONS (FAQ)
steve
Site Admin
 
Posts: 45396
Joined: Sat Dec 01, 2007 11:43 am
Operating System: Linux *buntu

Re: Creating a cassette converter plug-in

Permanent link to this post Posted by imnabeeltrick » Fri Oct 17, 2014 4:51 pm

steve wrote:Is this a computing/programming degree?
Audacity also supports other types of plug-ins. In particular, "modules" (wxWidgets plug-ins). These are integrated more closely into the Audacity code and are able to access more features in Audacity. They are generally written in C++ (though I think it is possible to write them in other languages). There is a limited amount of documentation about modules, much of which is incomplete or out of date, but there are two functional example plug-ins of this type in the Audacity SVN source code.

"Mod-script-pipe" is probably most relevant for your purposes. This module allows Audacity to be controlled by an external script via named pipes.

I think that much of your original proposal could be implemented as a "module" type plug-in.

Some documentation:
http://wiki.audacityteam.org/wiki/Creat ... wn_Plug-in
http://manual.audacityteam.org/o/man/scripting.html
http://wiki.audacityteam.org/wiki/Modul ... Initiative
http://wiki.audacityteam.org/wiki/Experimental_Modules
http://wiki.audacityteam.org/wiki/Scripting_Module
http://manual.audacityteam.org/index.ph ... =Scripting


So I've been on break for a while and now I'm restarting my project.

Just to recap, this project is basically to create a fully automated way for Audacity to record, split and tag tracks. The hardware involved at the moment doesn't matter. The key importance is:

1. User just needs to enter the song information either before or after the process is done, and play the album. This should be the only thing the user has to do.
2. Audacity records automatically when the song starts, and stops when the album ends.
3. Splits the entire track into individual songs.
4. Saves with the ID3 tags that were already set by user.

At the end of phase 1, I actually got nowhere near the progress I would've liked.
Now that I'm going into phase 2, it looks like from what you say Mod-script-pipe is the way to go. Is there another subforum you could lead me to that specializes in that? I think I would need a really detailed guide on how to do this.. And a lot of help.
imnabeeltrick
 
Posts: 24
Joined: Thu Aug 07, 2014 4:12 pm
Operating System: Please select

PreviousNext

Return to Nyquist



Who is online

Users browsing this forum: No registered users and 2 guests