Restim: e-stim audio generation software
Moderator: andyp
Restim: e-stim audio generation software
The old topic was getting large and hard to search, time for a new one.
Restim is a piece of software that generates three-phase e-stim audio for stererostim boxes. The audio is generated in real-time and can be modified to suit your preferences, electrode placement, skin resistance, nerve sensitivity, etc. Experimentation is easy because changes take effect immediately.
The main use case for Restim is to generate e-stim audio alongside a video playing. This can be done with tools developed for use with stroking devices, such as Scriptplayer + Intiface Central, or MultiFunPlayer. There are also a few games that can be played with e-stim support.
The audio is generated based on funscript files, Restim can work with funscripts developed for stroker devices. Scripting can be performed with OpenFunscripter or various other tools. Hopefully this makes scripting for e-stim easier than it used to be.
See Restim on github, releases. See the wiki for help.
In addition to three-phase audio generation, I have been working on 4- and 5-phase generation. To use this feature you need a stimbox with 4 independent output channels. The code works well, but figuring out how to script this is challenging... if you want to play around with this, see this post for instructions.
Restim is a piece of software that generates three-phase e-stim audio for stererostim boxes. The audio is generated in real-time and can be modified to suit your preferences, electrode placement, skin resistance, nerve sensitivity, etc. Experimentation is easy because changes take effect immediately.
The main use case for Restim is to generate e-stim audio alongside a video playing. This can be done with tools developed for use with stroking devices, such as Scriptplayer + Intiface Central, or MultiFunPlayer. There are also a few games that can be played with e-stim support.
The audio is generated based on funscript files, Restim can work with funscripts developed for stroker devices. Scripting can be performed with OpenFunscripter or various other tools. Hopefully this makes scripting for e-stim easier than it used to be.
See Restim on github, releases. See the wiki for help.
In addition to three-phase audio generation, I have been working on 4- and 5-phase generation. To use this feature you need a stimbox with 4 independent output channels. The code works well, but figuring out how to script this is challenging... if you want to play around with this, see this post for instructions.
- Kelvinator
- Explorer At Heart
- Posts: 147
- Joined: Fri Aug 27, 2021 1:05 am
- Gender: Male
- Sexual Orientation: Straight
- I am a: Switch
- Location: US
Re: Restim: e-stim audio generation software
Hi Diglet, I like this refreshed topic and your straightforward explanation of Restim and what it does. The updated and improved Restim Wiki covers a wealth of useful and interesting topics. I enjoyed reading about your experiments and results with resisters and carrier frequencies. These helped answer and explain some sensations I had experienced while using Restim. I'm happy that you and the community are brainstorming on ways to improve this e-stim audio generation software. K
- fragrantEmulsion
- Explorer At Heart
- Posts: 399
- Joined: Sun Aug 26, 2018 12:14 pm
- Gender: Male
- I am a: Switch
Re: Restim: e-stim audio generation software
I tried this out last night and I am impressed with the functionality. I will continue to experiment with it, maybe even crack open the source code to see how it works. This seems like a crucial piece of the future.
Re: Restim: e-stim audio generation software
Good idea with a new thread, this one also has a more explanatory subject line
Looking forward to hearing your conclusions regarding the volume normalization tests!
This sounds like a Windows thing. Mine is set to ALSA, which traditionally requires exclusive access to the sound device, but I suspect it's either rerouted to PulseAudio (which is a mixing layer on top of ALSA) or my Linux distribution enables the ALSA audio mixer by default. Should be ok now though, the incident happened because I had swapped the headphones and stim box cables to test a thing, so the stim box was connected to the default audio device
Looking forward to hearing your conclusions regarding the volume normalization tests!
- fragrantEmulsion
- Explorer At Heart
- Posts: 399
- Joined: Sun Aug 26, 2018 12:14 pm
- Gender: Male
- I am a: Switch
Re: Restim: e-stim audio generation software
Okay after fucking about with the full stack of ReStim, OpenFunScripter, MultiFunPlayer, and MPV, I can confidently say that this is the future of Cock Hero. The only thing missing would be some kind of extension to use OFS to render a beat meter for those structure purists who *need* that. (I know this is possible because ffmpeg is amazing). I would also like to able to script carrier frequency, modulation, and volume.
I fell down a rabbit hole last night and created several funscripts for a few pmvs. The process was easy and fun, way easier than creating a beatmeter back in the old days. I was able to test and edit in near real time. It was so agile. (Oh yeah measure my KPIs, scrum master).
Also I think my understanding of how to create good stim signals has increased tenfold and I am reinvigorated now that I don't have to rely on other people for this. (Some of the files I've found are very harsh and I had no idea how to fix this before now).
All in all, well done, this tech is amazing and I can't wait to see it ruin my life.
I fell down a rabbit hole last night and created several funscripts for a few pmvs. The process was easy and fun, way easier than creating a beatmeter back in the old days. I was able to test and edit in near real time. It was so agile. (Oh yeah measure my KPIs, scrum master).
Also I think my understanding of how to create good stim signals has increased tenfold and I am reinvigorated now that I don't have to rely on other people for this. (Some of the files I've found are very harsh and I had no idea how to fix this before now).
All in all, well done, this tech is amazing and I can't wait to see it ruin my life.
Re: Restim: e-stim audio generation software
I managed to change the volume scaling so that it always outputs L or R at max volume at some point in the phase diagram. This boosts output volume by ~60% for my settings. This will be included in the next release.
My hobby: ruining peoples lives with quality open source softwarefragrantEmulsion wrote: ↑Tue Jun 13, 2023 8:06 pm Okay after fucking about with the full stack of ReStim, OpenFunScripter, MultiFunPlayer, and MPV, I can confidently say that this is the future of Cock Hero. The only thing missing would be some kind of extension to use OFS to render a beat meter for those structure purists who *need* that. (I know this is possible because ffmpeg is amazing). I would also like to able to script carrier frequency, modulation, and volume.
I fell down a rabbit hole last night and created several funscripts for a few pmvs. The process was easy and fun, way easier than creating a beatmeter back in the old days. I was able to test and edit in near real time. It was so agile. (Oh yeah measure my KPIs, scrum master).
Also I think my understanding of how to create good stim signals has increased tenfold and I am reinvigorated now that I don't have to rely on other people for this. (Some of the files I've found are very harsh and I had no idea how to fix this before now).
All in all, well done, this tech is amazing and I can't wait to see it ruin my life.
It is already possible to script carrier frequency, modulation and volume. I should add some extra documentation for this, but you need to add outputs for L2/L3/L4 to the device config in MFP, and enable those settings in restim preferences. Then you can add the relevant axis to OFS and start scripting. The UI shows the volume clearly, but there is no visual feedback when the carrier or modulation frequency changes.
Changing the carrier frequency in the middle of the script has a few complicated effects. Your stimbox might change the output volume for higher/lower frequencies, my stimbox lowers the volume at low frequencies but edger477's box does the opposite. The transformers we use have frequency-dependent impedance, so changing the carrier frequency throws off the calibration. The nerves' sensitivity is also frequency dependent. All these effects combined makes it basically impossible to change the carrier frequency without affecting the subjective volume in unpredictable ways. Scripting the carrier frequency on your box and reproducing it accurately on another box or electrode config is unlikely. I measured these effects with my stimbox and body on the wiki.
I personally don't feel much difference when changing the carrier frequency, I gave up on playing with frequency effects because it's just too complicated.
You can do very cool things with volume and modulation control, I've been waiting for someone to experiment with that.
- fragrantEmulsion
- Explorer At Heart
- Posts: 399
- Joined: Sun Aug 26, 2018 12:14 pm
- Gender: Male
- I am a: Switch
Re: Restim: e-stim audio generation software
Neat, I will try this next time I get a chance. I may ask a few questions. The modulation I guess is the most important thing to script.diglet wrote: ↑Tue Jun 13, 2023 8:58 pm It is already possible to script carrier frequency, modulation and volume. I should add some extra documentation for this, but you need to add outputs for L2/L3/L4 to the device config in MFP, and enable those settings in restim preferences. Then you can add the relevant axis to OFS and start scripting. The UI shows the volume clearly, but there is no visual feedback when the carrier or modulation frequency changes.
I personally don't feel much difference when changing the carrier frequency, I gave up on playing with frequency effects because it's just too complicated.
You can do very cool things with volume and modulation control, I've been waiting for someone to experiment with that.
DPL told me about this technique where you offset the frequency to the bpm. Something like 128 bpm / 60 s = 2.1333 hz modulation would result in pulses that are in sync with the music. With this technique, I could keep that section of the script constant (either at center or neutral) but rely on the frequency modulation to maintain the beat.
The other technique I want to try is to use short bursts of modulation for intense or painful signals.
Re: Restim: e-stim audio generation software
I would use the volume axis for following the beats, the modulation can't be synced to anything. Try pythondancer to generate the base volume funscript, you will have to do some modifications but it'll save a lot of time finding the beats: https://discuss.eroscripts.com/t/python ... hon/103029
I think synchronizing the position to the beat is more useful than synchronizing the volume, maybe you can do a mix (volume 4/4 time, position 1/4 time), I'm curious to see what you can come up with.
Modulation is useful for higher frequency effects. The 50-100hz range feels smooth and reduces the power transmitted through the skin, lower feels rough, can be used for painful signals. I like smooth, predictable signals so I haven't played around with signals in the 10-50hz range that much, although I sometimes combine 50hz with 5hz for some variation. I used these setting in my last session:
...but most of the time I use 50hz modulation at 100%, and the rest of the settings at 0.
I think synchronizing the position to the beat is more useful than synchronizing the volume, maybe you can do a mix (volume 4/4 time, position 1/4 time), I'm curious to see what you can come up with.
Modulation is useful for higher frequency effects. The 50-100hz range feels smooth and reduces the power transmitted through the skin, lower feels rough, can be used for painful signals. I like smooth, predictable signals so I haven't played around with signals in the 10-50hz range that much, although I sometimes combine 50hz with 5hz for some variation. I used these setting in my last session:
...but most of the time I use 50hz modulation at 100%, and the rest of the settings at 0.
Re: Restim: e-stim audio generation software
I used to feel quite big difference with different frequencies, though primarily that lower frequencies felt more intense, and if I compensated with volume it would feel almost identical to the higher level freq. I even did some experiments where I tried to find combinations of frequency+amplitude that felt equivalent, plotted them, and got a graph that looked similar to "intensity = amplitude / frequency" but not exact enough to be able to find a simple mathematical expression by adding constants..
Nowadays I feel less of an intensity difference, and I don't know if it's because I've become desensitised or if it's because I rebuilt my stim box (new one has parallel resistors that the old one didn't have). If I go to really low carrier freqs, like 300-500 Hz, the signal feels more rough. But I can imagine trying to quickly change frequency the same time as you need a specific phase shift would be quite complicated..
Re: Restim: e-stim audio generation software
Restim is already capable of smoothly interpolating the frequency while keeping the phase shift and other parameters.
The problem really is making sure the different frequencies result in a consistent output volume. It's doable, but you need hours of body-testing. That might have been worth it if different frequencies actually feel different, but that's not really the case.
The problem really is making sure the different frequencies result in a consistent output volume. It's doable, but you need hours of body-testing. That might have been worth it if different frequencies actually feel different, but that's not really the case.
Re: Restim: e-stim audio generation software
This looks really cool! Is it okay if I borrow some of your code to use in my e-stim game? I've been looking at real-time generation of e-stim signals and have made some progress but this looks like a more flexible and complete solution to what I've got so far.
Thanks!
Thanks!
Re: Restim: e-stim audio generation software
Sure, go ahead.tr0gd0r wrote: ↑Thu Jun 15, 2023 4:34 am This looks really cool! Is it okay if I borrow some of your code to use in my e-stim game? I've been looking at real-time generation of e-stim signals and have made some progress but this looks like a more flexible and complete solution to what I've got so far.
Thanks!
I think it's easier to integrate with the api, but if you want to copy the code that's fine.
-
- Explorer At Heart
- Posts: 142
- Joined: Mon Oct 17, 2011 9:43 am
- Gender: Male
- Sexual Orientation: Straight
Re: Restim: e-stim audio generation software
Well, this is great tool. Gave it a try and set up restim and multifunplayer. It's great and works about out of the box
My biggest concern usage-wise is audio device selection. How do people manage their audio devices? restim seems to "capture" whatever is your windows default device. I really don't want to have estim audio on default audio device when you have no idea what windows decides to plingplong and when. Is there a way I've missed where you can define which audio device is used for restim?
Also is there any android client for restim? 99.99% of time atleast I'm using separate android phone with 3.5mm jack for estim. Much more portable aaaand it's not a windows which, again, can do whatever plingplongs whenever it decides
Great work anyways. Did not think that community is this far with the integrations especially with estim
My biggest concern usage-wise is audio device selection. How do people manage their audio devices? restim seems to "capture" whatever is your windows default device. I really don't want to have estim audio on default audio device when you have no idea what windows decides to plingplong and when. Is there a way I've missed where you can define which audio device is used for restim?
Also is there any android client for restim? 99.99% of time atleast I'm using separate android phone with 3.5mm jack for estim. Much more portable aaaand it's not a windows which, again, can do whatever plingplongs whenever it decides
Great work anyways. Did not think that community is this far with the integrations especially with estim
Re: Restim: e-stim audio generation software
There is a device selection option in the preferences menu, here you can choose the audio driver and device. I recommend using WDM-KS, as it has the lowest latency and this claims exclusive access to the device, minimizing the chance other programs try using the same device. It is a bit finicky, if it doesn't work just use something else.
There is no android build, but the software is open source so someone else could make one... I won't do it myself. If you just want to use your android device as an output, there are a few apps that let you forward audio to a mobile device, such as voicemeeter.
There is no android build, but the software is open source so someone else could make one... I won't do it myself. If you just want to use your android device as an output, there are a few apps that let you forward audio to a mobile device, such as voicemeeter.
-
- Explorer At Heart
- Posts: 142
- Joined: Mon Oct 17, 2011 9:43 am
- Gender: Male
- Sexual Orientation: Straight
Re: Restim: e-stim audio generation software
Hah, great. I just missed the whole preferences while playing with other stuff. Ok, well that quite well addresses the worries about the audio devicesdiglet wrote: ↑Thu Jun 15, 2023 4:29 pm There is a device selection option in the preferences menu, here you can choose the audio driver and device. I recommend using WDM-KS, as it has the lowest latency and this claims exclusive access to the device, minimizing the chance other programs try using the same device. It is a bit finicky, if it doesn't work just use something else.
There is no android build, but the software is open source so someone else could make one... I won't do it myself. If you just want to use your android device as an output, there are a few apps that let you forward audio to a mobile device, such as voicemeeter.
Who is online
Users browsing this forum: Amazon [Bot], Ambicatus, cityofindy, Google [Bot] and 48 guests