CHOW Tape Model by Jatin Chowdhury
-
- KVRian
- 678 posts since 15 Feb, 2012 from France
Jatin : whatever you feel's right for a noise control. I think you've done an outstanding job with your modeling, and would love to take ChowTape into pristine, mastering-ready territories.
Even though I don't care about this or that piece of hardware, I wish you had access to one of the usual high-end contender, say an Ampex ATR 102, to mesure in and out... I'd happily pay for such a plugin.
Thanks again for your amazing work, no matter what.
Even though I don't care about this or that piece of hardware, I wish you had access to one of the usual high-end contender, say an Ampex ATR 102, to mesure in and out... I'd happily pay for such a plugin.
Thanks again for your amazing work, no matter what.
- KVRAF
- 10361 posts since 3 Feb, 2003 from Finland, Espoo
I get really loud clicks whenever I bypass and re-engage the CHOWtape plugin. Reaper (latest version) on Windows 8. You also get these clicks whenever you stop and the start playback of the host again while having the play cursor in the middle of some audio.
Was testing all this at x16 oversampling. Not sure if it makes a difference but thought it was worth mentioning.
Also, I would really love to see a lot more fine control over Wow and Flutter. At the moment it's pretty much impossible to set it up subtly. Even a depth of 0.01 on either is extremely noticeable, especially at faster modulation rates.
Would it be possible to make the low range of the values so that we could enter 0.001 ? Basically it'd be cool if these were 10 times less drastic at subtle settings.
Other than these small niggles, the plugin is amazing!
Was testing all this at x16 oversampling. Not sure if it makes a difference but thought it was worth mentioning.
Also, I would really love to see a lot more fine control over Wow and Flutter. At the moment it's pretty much impossible to set it up subtly. Even a depth of 0.01 on either is extremely noticeable, especially at faster modulation rates.
Would it be possible to make the low range of the values so that we could enter 0.001 ? Basically it'd be cool if these were 10 times less drastic at subtle settings.
Other than these small niggles, the plugin is amazing!
"Wisdom is wisdom, regardless of the idiot who said it." -an idiot
-
- KVRian
- 520 posts since 9 Aug, 2017
Hey Jatin, I'll send a pic when I can. vst3 works (shows up tiny at first) but the vst2 GUI doesn't display correctly and when I click on it, it doesn't respond in the correct places, moving around the dials/faders respond.chowdsp wrote: ↑Wed Jun 03, 2020 4:27 pmThere's already a little bit of control over noise in the degrade section. Would this be a more direct control, say, in the hysteresis processing?nilhartman wrote: ↑Wed Jun 03, 2020 7:39 am Genuine question : would you consider adding (if technically possible) control over noise amount ?
Sorry to hear that! A picture would definitely be helpful. Also, was this from loading a session saved with the previous version of the plugin, or from a new session? Feel free to create a GitHub issue as well.
Totally understandable, that sounds great. I was unaware of the JUCE issues on the latest Xcode, so thanks for letting me know that as well. Thanks much!
Thanks to all for your feedback, it's very useful for helping to let me know what's working/not working on all these different platforms. Also, I'd love to hear any music you all are making with the plugin!
Agree with the above as well about finer wow/flutter control.
Hope that helps.
- KVRian
- 1246 posts since 14 Apr, 2008 from /* whitenoise */
/* whitenoise */
Last edited by noiseresearch on Mon Nov 30, 2020 2:07 pm, edited 1 time in total.
/* whitenoise */ /* abandon */ /* reincarnated */
-
- KVRist
- 94 posts since 18 Jan, 2019
Hey all, thanks for the kind words and bug reports. All the issues posted here are being tracked on GitHub. Feel free to add to the list, or comment on those tickets if you think I've missed anything.
I think for now I'll keep the noise control in the degrade section exclusively, since I think it fits naturally there. I actually have access to a similar Ampex model through the studio at my school, though it's pretty run-down. I was working to restore it, but that's on hold right now since I've been under quarantine.nilhartman wrote: ↑Thu Jun 04, 2020 5:46 pm Jatin : whatever you feel's right for a noise control. I think you've done an outstanding job with your modeling, and would love to take ChowTape into pristine, mastering-ready territories.
Even though I don't care about this or that piece of hardware, I wish you had access to one of the usual high-end contender, say an Ampex ATR 102, to mesure in and out... I'd happily pay for such a plugin.
Thanks again for your amazing work, no matter what.
Thanks! That project (and RNN circuit modelling in general) is a bit more experimental, but there's definitely a lot of potential. I'm not sure how well an RNN could handle something time-varying like a phaser, but that's definitely something to think about... Maybe a more traditional model could be done, I'll take a look at it when I have some time, but no promisesrbn777 wrote: ↑Thu Jun 04, 2020 6:25 pm PS. I'm also getting a REALLY nice sound out of the recent Klon Centaur emulation, the NNM technology sounds really promising, so... I'm going to pose my as-per-usual stupid question to this context, would you also be able to model a, say, phaser pedal with this tech if you got your hands on it or is it just gain-dependent stuff at this point? I've been moaning on and on about the lack of Schulte Compact Phasing 'A' in plugin format for years...
You all are very welcome! The support and feedback from this thread has been instrumental in making this plugin better. I've actually worked for some plugin/DAW companies before, most recently I made some plugins for this company, Persp3ctive. I've also done some tape emulation (along with some other interesting effects) to be part of an iPad app that is yet to be released. Currently, I work for Tesla doing some audio DSP stuff not really related to plugins or anything like that, so I'm happy to spend my free time working on projects like this!rbn777 wrote: ↑Thu Jun 04, 2020 6:25 pm EDIT: I can't stress this enough how amazing it is to have access to that kind of stuff for free right now... Bloody hell, it's miles more versatile and pretty much rivals the sound of all the expensive tape sims out there (even IK, which is the best of the bunch in paid software right now IMHO). You are a true legend mr. Chowdhury, can't believe how come any of the top manufacturers haven't contracted you to work in their ranks by now
-
- KVRer
- 8 posts since 20 Dec, 2017
Hi Jatin,
Really like this plugin, and cheers for sharing the source code! Sadly there isn't a lot of papers out there with the source.
A question about the Jiles-Atherton model : i think you are using the static Jiles-Atherton model, which was made to work at a single frequency (e.g. for energy transformers), am i correct?
As far as i remember (for having implemented an half-assed tape sim a couple years back), only the dynamic model - which isn't a lot more complicated, at least if you ignore eddy current - has frequency dependent hysteretic effect, like tape (distortion is proportional to frequency, which is why tape pre/post EQ always cut the highs iirc). However the fact there isn't any pre/post EQ either in your proposed model slightly correct this aspect.
Really like this plugin, and cheers for sharing the source code! Sadly there isn't a lot of papers out there with the source.
A question about the Jiles-Atherton model : i think you are using the static Jiles-Atherton model, which was made to work at a single frequency (e.g. for energy transformers), am i correct?
As far as i remember (for having implemented an half-assed tape sim a couple years back), only the dynamic model - which isn't a lot more complicated, at least if you ignore eddy current - has frequency dependent hysteretic effect, like tape (distortion is proportional to frequency, which is why tape pre/post EQ always cut the highs iirc). However the fact there isn't any pre/post EQ either in your proposed model slightly correct this aspect.
-
- KVRAF
- 1942 posts since 22 Mar, 2002 from Timisoara, Romania
"I've also done some tape emulation (along with some other interesting effects) to be part of an iPad app that is yet to be released."
when!? where?!:)
thanks!
when!? where?!:)
thanks!
__Makunouchi Bento
http://makunouchibento.bandcamp.com
http://makunouchibento.bandcamp.com
-
- KVRist
- 94 posts since 18 Jan, 2019
This is a good point, I'm not using the "frequency-dependent JA model" as I've heard it called. I have looked at implementing it, but haven't fully gotten around to that, and as you mentioned, I would need to implement the pre/post EQs as well for the end result to sound decent. That said, I was under the impression that the eddy current effect was the primary element in making the model frequency-dependent, the other component being "anomalous loss from domain wall motion". In case you're curious, I'm referencing this paper.groundswell wrote: ↑Sun Jun 07, 2020 8:07 pm A question about the Jiles-Atherton model : i think you are using the static Jiles-Atherton model, which was made to work at a single frequency (e.g. for energy transformers), am i correct?
As far as i remember (for having implemented an half-assed tape sim a couple years back), only the dynamic model - which isn't a lot more complicated, at least if you ignore eddy current - has frequency dependent hysteretic effect, like tape (distortion is proportional to frequency, which is why tape pre/post EQ always cut the highs iirc). However the fact there isn't any pre/post EQ either in your proposed model slightly correct this aspect.
I know the creator has a bunch more stuff he wants to add before he releases it, so no release date yet. Unfortunately, I don't know too much more at the moment. Hopefully soon though .
-
- KVRer
- 8 posts since 20 Dec, 2017
Ha, you're right, it's mostly the classical loss that is at play - at least it was sufficient for me to get frequency dependent effect. I based my work on the same paper, and still don't quite understand how a direct solution can be found for equation 24, as seems to be implied, at least if you don't set alpha = 0 (which i did).chowdsp wrote: ↑Mon Jun 08, 2020 4:21 pm This is a good point, I'm not using the "frequency-dependent JA model" as I've heard it called. I have looked at implementing it, but haven't fully gotten around to that, and as you mentioned, I would need to implement the pre/post EQs as well for the end result to sound decent. That said, I was under the impression that the eddy current effect was the primary element in making the model frequency-dependent, the other component being "anomalous loss from domain wall motion". In case you're curious, I'm referencing this paper.
Though given the complexity of the equation, it's well possible that it's simpler and faster to just use Newton-Raphson.
Also a note about tanh approximation : a very nice approximation can be made by using the tanh and exponential definition, see this graph. Exponentiation is done "recursively" so at each multiplication, the precision range double, you can also force oddness with the input sign to guarantee it has the correct limits. It's not a very well known trick in DSP world, surprisingly.
-
- KVRist
- 275 posts since 3 Dec, 2009 from Cologne, Germany
We're doomed. Mad scientists took over...
-
Gabriel Garcia Gabriel Garcia https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=351740
- KVRist
- 58 posts since 18 Feb, 2015 from Argentina
Hi guys, just found this post while searching for a tape emulation plugin. It sounds great! This is going to be my go-to tape emulation from now on. I love the detail and control it gives over the emulation, it's outstanding!
I've tested v2.3.0 on Windows, and found some weird behavior with the Dry/Wet knob when oversampling at x2 or more.
Using white noise as sound source and setting Dry/Wet to 55%, using the spectrum analyzer I could see some high frequencies cancelling each other between the dry and wet signals. Anyone else had this problem?
I've tested v2.3.0 on Windows, and found some weird behavior with the Dry/Wet knob when oversampling at x2 or more.
Using white noise as sound source and setting Dry/Wet to 55%, using the spectrum analyzer I could see some high frequencies cancelling each other between the dry and wet signals. Anyone else had this problem?
-
- KVRist
- 275 posts since 3 Dec, 2009 from Cologne, Germany
Sounds like phase cancellation. Could be by design. Equalisation is one part oft the process. Those mad scientist will give us insights.
-
- KVRist
- 94 posts since 18 Jan, 2019
Yeah, I remember the math being a bit tricky for finding a tractable solution even for the static model. When I have a couple hours free I'd love to sit down and try working it out including eddy current loss.. unfortunately I've been pretty busy with more mundane stuff lately.groundswell wrote: ↑Mon Jun 08, 2020 5:25 pm Ha, you're right, it's mostly the classical loss that is at play - at least it was sufficient for me to get frequency dependent effect. I based my work on the same paper, and still don't quite understand how a direct solution can be found for equation 24, as seems to be implied, at least if you don't set alpha = 0 (which i did).
Though given the complexity of the equation, it's well possible that it's simpler and faster to just use Newton-Raphson.
This looks pretty neat, and I definitely haven't seen it in the DSP literature before! For a while I was using the "Pade approximant continued fraction", but it was having difficulty with extreme input values causing clicks and pops in the eventual output, so I switched back to std::tanh and the extra CPU load doesn't seem to be a huge problem.groundswell wrote: ↑Mon Jun 08, 2020 5:25 pm Also a note about tanh approximation : a very nice approximation can be made by using the tanh and exponential definition, see this graph. Exponentiation is done "recursively" so at each multiplication, the precision range double, you can also force oddness with the input sign to guarantee it has the correct limits. It's not a very well known trick in DSP world, surprisingly.
Good catch! Almost certainly phase cancellation due to latency from the oversampling process. I'll get that fixed (hopefully soon).Gabriel Garcia wrote: ↑Thu Jun 11, 2020 4:36 pm I've tested v2.3.0 on Windows, and found some weird behavior with the Dry/Wet knob when oversampling at x2 or more.
Using white noise as sound source and setting Dry/Wet to 55%, using the spectrum analyzer I could see some high frequencies cancelling each other between the dry and wet signals. Anyone else had this problem?
Haha, this made me laugh a lot. In all seriousness though, this has been one of my favorite things about this thread: there's a great balance of some really insightful scientific and technical questions, mixed with a lot of folks who are after "the sound" and have useful feedback from using the plugin. As someone who lives on the line between those worlds I really appreciate this, and I can't overstate how both types of feedback have contributed to the quality of this plugin!