IPB

Welcome Guest ( Log In | Register )

Release: Dynamic DSP: gives custom effect chains for individual tracks, [was “dynamic dsp”]
popatr
post Jul 18 2012, 16:17
Post #1





Group: Members
Posts: 69
Joined: 19-December 03
Member No.: 10558



I made this DSP and have been using it for months now to my satisfaction. So, first off thanks to those who helped me figure some things out: mudlord, foosion, Yegor, and Zao, and others who made SDK, Documentation, and samples. By no means does their help imply that they like my plugin or much less endorse it!

It is a DSP which is designed to switch effects based on the track being played.

Usage:
Sorry, documentation is not going to be great. But basically:
1)add the dynamicDSP to your DSP chain. It can be in among other DSPs, or even have multiple instances of itself in a chain but the way I use it is have a single instance of it as the sole DSP at the top level.
2)select and click configure to bring up the configuration window.
3)Enter a titleformat script in the large textbox at the top of the configure window, or use the one provided. The script you enter should evaluate to a single word, which is the name of the DSP Chain you want to use for that track. The titleformat will be run on each track as it is about to be played and provide the switching of chains. It's OK if this script evaluates to a Chain name which does not exist or blank, in which case no DSP will be applied to that track.
4)enter a DSP chain name in the little textbox to the left of the "Add Chain" button then click that button. The name will appear in the listbox just above.
5) doubleclick the chain name in the list box to bring up the configuration window for this Named chain. It is the stock DSP config window, you should be familiar with how to use it. Add DSPs and configure them, then click ok.
6)repeat steps 4-5 as many times as desired
7)click OK
8)click apply/ok

That's it. If you use the stock titleformat script, you can just add a custom tag to any track called "TRACKDSP" with the value of the Named Chain you want to use. When that track is played that chain will activate.

Other people may prefer to evaluate to a chain based on Genre tags or some other scheme which uses tags which already commonly exist in their tracks. I do not provide any titleformat scripts and it's not a strong area of mine. Feel free to create and share scripts which you like on this thread. (That is, if anybody likes this component besides me)

Known Issues / Limitations
This component is sensitive to track changes but has gone to some lengths to avoid using the needstrackchangemark thingy which breaks gapless playback. To the best of my ability to theorize or detect, gapless playback remains perfect IF the track currently playing and the track that is to follow evaluates to the same chain, or to no chain at all.
BUT, if they evaluate to different chains there is in my tests the tiniest audible dropout between the tracks as the old chain empties and the new chain takes its place. I don't know how to avoid this so I don't intend to fix it.
A corollary to my decision to avoid needing the needstrackchangemark thingy is that I cannot guarantee that 100% of the samples of a track go through their intended chain. Some may go through the previous chain so once again this is only an issue if the chain changes. It was beyond my ability to detect this though.
But the final warning is that if you create a titleformat script which takes too long to evaluate then you could break gapless playback even if the chains do not change. I have not tested the threshold on this nor do I have any recommendations to offer except to try it and see. Using the titleformat I provide default, I could detect no flaw in gapless playback on Pink Floyd Dark side of the moon or a white noise sample I made copies of and played back to back.

License
I make no restrictions on what you can do with the the source code or component.

Warrantee/Support
None. Use at your own risk. I may consider fixing a bug or two if you find them but I don't spend much time here so if you find something bring it forward fast because I will probably stop visiting this thread regularly in a week or two.

Download
fb2k-component
source

Building
A release build is provided in the download above but if you want to build from source, note that you need to download the boost libraries, specifically releated to boost::bind, and you must add a new include directory to your VC setup.

You also need WTL but I think that's common for foobar components.

This post has been edited by db1989: Apr 3 2014, 22:46
Reason for edit: updating links as per request in post #25
Go to the top of the page
+Quote Post
 
Start new topic
Replies
Denma Panter
post Jun 14 2013, 00:04
Post #2





Group: Members
Posts: 5
Joined: 23-February 13
Member No.: 106823



I added [Downmix channels to stereo] and [Convert mono to stereo] to this DSP and tried it.
But Those DSP is already like the true bypass.
Go to the top of the page
+Quote Post

Posts in this topic
- popatr   Release: Dynamic DSP: gives custom effect chains for individual tracks   Jul 18 2012, 16:17
- - NullString   Thanks!! I'll give it a spin   Jul 18 2012, 18:06
- - romor   Thanks for making this component I needed it to c...   Aug 16 2012, 20:42
- - romor   I noticed an issue however with VST component, it...   Aug 16 2012, 22:46
|- - popatr   QUOTE (romor @ Aug 16 2012, 14:46) I noti...   Aug 20 2012, 21:18
- - EpicForever   works great gives some possibilities missing in c...   Mar 1 2013, 22:55
- - WilB   Since my media files are already replay gained, I ...   Mar 2 2013, 00:38
- - Dynamic   I took the liberty of making WilB's version wo...   Mar 4 2013, 19:45
- - Dynamic   I made a mistake. In the previous post, it was the...   Mar 6 2013, 03:37
- - Dynamic   kode54 made a good point about the use of Dynamic ...   Mar 7 2013, 11:34
- - EpicForever   I got small problem with this plugin. I had to rei...   Apr 8 2013, 20:29
- - popatr   I'm gratified to find that some people are fin...   Apr 25 2013, 21:44
|- - pablof   QUOTE (popatr @ Apr 25 2013, 22:44) I...   Sep 28 2013, 17:11
- - EpicForever   QUOTE (popatr @ Apr 25 2013, 21:44) (...)...   Apr 27 2013, 14:31
- - EpicForever   I found that even changing DSP chain causes that d...   May 1 2013, 21:45
- - Gnx   EpicForever, see post #3 QUOTE (romor @ Aug 1...   May 2 2013, 08:50
- - Denma Panter   I added [Downmix channels to stereo] and [Convert ...   Jun 14 2013, 00:04
- - bdport67   Need some assistance for a basic script for Dynami...   Jan 22 2014, 20:45
|- - Rollin   QUOTE (bdport67 @ Jan 22 2014, 23:45) I j...   Jan 23 2014, 14:33
- - BenB   You shouldn't need a script. Just add a TRACKD...   Jan 22 2014, 22:46
- - d125q   Why suggest an additional tag? Just use $if(...   Jan 22 2014, 23:34
- - BenB   Because it's the default and bdport67 doesn...   Jan 23 2014, 02:15
- - bdport67   Thanks guys for the responses. I will try to get t...   Jan 23 2014, 16:38
- - WilB   I have just noticed this issue ( http://www.hydrog...   Mar 23 2014, 19:54
|- - popatr   QUOTE (WilB @ Mar 23 2014, 11:54) I have ...   Apr 3 2014, 22:25
- - WilB   Thanks for doing this so promptly.   Apr 3 2014, 22:42
- - popatr   ps, in the past I have looked into why the compone...   Apr 4 2014, 16:33
- - EpicForever   After using this plugin for some time I need to as...   May 1 2014, 20:21
|- - popatr   QUOTE (EpicForever @ May 1 2014, 12:21) A...   May 2 2014, 21:25
- - EpicForever   Excellent answer !! Thank you !! ...   May 3 2014, 09:33


Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 25th July 2014 - 15:11