Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: DSP sound effect - Slowdown (Read 1870 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

DSP sound effect - Slowdown

Hi everybody,

I was wondering if there is a DSP sound effect (maybe something for the standard DSP Manager) that acts each time we put a song on pause, and that simulates a vinyl/tape slowdown effect ? (I hope you see what I mean)

Ideally the effect would be customizable (length of the effect, acts on pause AND/OR on stop AND/OR on play, etc.).

Any hints ? Thank you.

Re: DSP sound effect - Slowdown

Reply #1
Guys, feel free to answer. Anytime, lol. ;)
Thanks.

Re: DSP sound effect - Slowdown

Reply #2
DSP can't give you slowdown effect as the output is stopped before DSP even knows about pausing. It might be possible to simulate speeding up after unpause. Slowdown could be achieved with a custom output component, if someone wished to create it.

Re: DSP sound effect - Slowdown

Reply #3
The added problem with that is then working out the right API and then making a output component that uses it properly.

What if the person wants ASIO, DirectSound, WinMM, or WASAPI, or even XAudio2?

Re: DSP sound effect - Slowdown

Reply #4
All right then. I take it that DSP is not the right way, and that "slowdown could be achieved with a custom output component, if someone wished to create it". Which will probably never happen. Thanks anyway.

Re: DSP sound effect - Slowdown

Reply #5
It may yet happen. Don't give up on your dream. Even I may be bored enough to do such a thing. And the key bonus element here is, the output implementation can be an output wrapper:

1) Implement it as an output service.
2) Give it configuration for its behavior.
3) Give it a configuration for the output it passes through to. It will enumerate all output services and remove itself from the selection, granting access to all of the remaining outputs.

Since this would be acting like either a vinyl record or a tape player, the speed up and slow down effect would be nothing more than an instance of the resampler service, ramping either down in sample rate to speed up, or up in sample rate to slow down.

Now, come to think of it, this may not be best implemented using a wrapper method, since we want a low latency output, with our own pre-buffering immediately prior to the resampler. So, WASAPI or even DirectSound or WaveOut, it only needs to be between 5 and 60ms. Yes, as generous as 60ms, and the latency isn't too horrible. It just needs that much latency between the resampler and the output for hitch safety, then it needs the usual 1000 or 2000 or more milliseconds of buffer prior to the resampler.

The total duration of the pre-buffer, output buffer, and the resampler's latency will be summed for the output's own latency reporting, so visualizations continue to operate at proper timing.

Re: DSP sound effect - Slowdown

Reply #6
Wow @kode54, that's nice to hear. I agree that it wouldn't be the most essential foobar component (more like "ear-candy", lol), but it would be a nice add-on for some special occasions. Is there some place/thread I could monitor in case you'd be "bored enough to do such a thing" one of these days ? Thanks again, it's always good to see that my little idea was able to raise somebody's interest. :)

Re: DSP sound effect - Slowdown

Reply #7
@kode54 , I know I may be chasing ghosts, but has anything happened on this subject since last time ?  :)) Thanks.

Re: DSP sound effect - Slowdown

Reply #8
Nope, I haven't done anything like this yet.

 

Re: DSP sound effect - Slowdown

Reply #9
"Don't give up on your dream", he said...  :P