|
|
|
05-17-2020, 05:06 PM
|
#81
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by ThrashJazzAssassin
This is what's happening now on windows[...]
|
hmm. i *think* that looks about right. after 'factory default', reset 4x sets the size of the big buffer to 4 times the default 1 second delay, so 4 sec. the visible range of the delay time slider is 16 sec. so clicking anywhere above 1/4 of the 16 sec slider exceeds the 4 sec limit and is halved until it is less than that. so the delay time slider will never display a value more than the big buffer size, and snaps back to the correct position if you try to set a delay time more than that. is that what you see happening TJA?
|
|
|
09-17-2020, 09:58 AM
|
#82
|
Human being with feelings
Join Date: May 2020
Posts: 22
|
This is amazing
THANK YOU SO MUCH. Seriously, this is just game changing for me. You have enabled so much creativity to be realized in me, thank you so much for making this,
|
|
|
09-19-2020, 10:00 AM
|
#83
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by gwatch
THANK YOU SO MUCH. Seriously, this is just game changing for me. You have enabled so much creativity to be realized in me, thank you so much for making this,
|
cool! & yes, wayback is transformative for me also. will take years of practice to 'realize' it all. *big* fun. :^)
update: have had a lot less time for wayback, but have made progress. wayback has been working quite well for me. no big changes. useability tweaks and minor fixes mostly. added a new kind of macro that provides momentary loops & deltas. so reorganized keyboard shortcuts otw. have been struggling with documentation. variables lots easier than words for me. :^) & wayback has an essential 'conceptual framework' that's hard to say. or something. anywho, am working on a final candidate release of sorts, rsn. kind regards to all. /dan
ps- would love to hear a bit about how you use wayback gwatch. anything in particular you like?
Last edited by bang; 09-19-2020 at 10:25 AM.
Reason: ps-
|
|
|
09-23-2020, 03:22 PM
|
#84
|
Human being with feelings
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,031
|
Just connected wayback to the Nabla Looper world. Two fantastic additions to the Reaper community. Thanks to both of you, my friends!
https://forum.cockos.com/showpost.ph...5&postcount=27
|
|
|
11-18-2020, 01:44 AM
|
#85
|
Human being with feelings
Join Date: Jul 2020
Posts: 30
|
Looking for example sounds of wayback delay
So far have not found any on youtube. Any links welcome and appreciated!
Thanks.
|
|
|
11-19-2020, 11:12 AM
|
#86
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
wayback, a fluid live looping delay
hello folks. 'how time flies' release 0.97fc is up on stash:
https://stash.reaper.fm/v/38738/wayback.zip
this release mainly reworks the wayback macro control scheme to be more keyboard and external controller friendly. macros are expanded and reorganized. there are new macros for quick, momentary loops and deltas, and a new 'grow' macro that seamlessly doubles loops. wayback presets should work better. also lot's of little useability tweaks and some minor bugfixes.
there is a rough preliminary take on documenting all this online at:
http://bangzero.org/wayback/guide
the guide begins with a simple, step by step wayback looping quickstart. this is an 8 macro exercise that demonstrates all core wayback concepts: buffered echoes, beats, delta, loop, warp, stealthloop, grow & dub. i hope it conveys the essentials, wayback in a nutshell. there is also a complete outline of wayback macros, with notes. i will be expanding and editing the guide for final release. feedback would help a lot. does the quickstart make sense? is it enough to get going? what's confusing? what's fun? note that the guide gets sketchier after the quickstart. work in progress...
the code deltas are shallow but widespread this release. and there's new code for momentary loops & such. and the preset bugfix was... tricky. most of these changes have been solid for me for a while. still, bugs in other use cases won't surprise me. please pm or post. thanks!
kind regards to all! /dan
ps- momentary loops were inspired by Timetosser ( alter.audio), a clever hardware looper which seems to work like a special case of wayback's extend op. just needed momentary controls.
pps- Jsfx coders: is there an easy/proper way in @slider to detect preset loads? wayback macro controls change core controls, and must be ignored when presets load.
ppps- any Reascript coders know a way to activate Jsfx windows for keyboard input? can't find anything that does that in the sws or js_Reascript extensions. i can get the fx window in front and visually active, but get no keyboard input until i manually click in the fx window.
|
|
|
11-19-2020, 01:49 PM
|
#87
|
Human being with feelings
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,031
|
Quote:
Originally Posted by bang
ppps- any Reascript coders know a way to activate Jsfx windows for keyboard input? can't find anything that does that in the sws or js_Reascript extensions. i can get the fx window in front and visually active, but get no keyboard input until i manually click in the fx window.
|
Dear Dan, thanks for sharing and the update.
Would using an input jsfx help here? There are lua scripts using this, like hackey trackey or reaperton, maybe those examples help a bit? Wanted to mention both, as seems related somehow to your question. Oh, I see you meant qwerty input and not midi input, anyway a helper tool might help, midi to qwerty converter from command line: receivemidi, there is also sendmidi. receivemidi can trigger any script based on incoming midi input. For linux users it can be easy trigger the fitting commands required for wayback. receivemidi and sendmidi are available for all platforms, win, linux, mac. There is no excuse not using it.
Here one example, from my use case with k-board.
PHP Code:
receivemidi dev "K-Board MIDI 1" js "if (MIDI.isNoteOn()) Util.command('/home/you/kboard.sh ' + MIDI.noteNumber());"
kboard.sh
PHP Code:
#!/usr/bin/env bash
echo $1
if [[ $1 == 61 ]]; then
xdotool key 0xff54 # down
elif [[ $1 == 63 ]]; then
xdotool key 0xff52 # up
elif [[ $1 == 66 ]]; then
xdotool key shift+h
elif [[ $1 == 70 ]]; then
xdotool key space && sleep 0.2 && xdotool key c
elif [[ $1 == 49 ]]; then
xdotool key 0xff51 # left
elif [[ $1 == 51 ]]; then
xdotool key 0xff53 # right
In short you can do whatever you want using midi input. receivemidi has lots of options, scripts can be anything, wayback is powerful (will discover its real power, in future, hopefully). Because of lack of good documentation your powerful tools are not really explored in depth I guess, but in this case you wrote a great manual, thanks for it. First thing I did was:
wkhtmltopdf http://bangzero.org/wayback/guide wayback_manual.pdf
Other than that, for Windows users there is AutoHotkey for window activation. For linux users there is this example:
xdotool search "your window title comes here" windowactivate && sleep 0.3
Slowing down things sometimes using sleep can help as well.
|
|
|
11-20-2020, 02:09 AM
|
#88
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Thanks Dan
Quote:
Originally Posted by bang
pps- Jsfx coders: is there an easy/proper way in @slider to detect preset loads? wayback macro controls change core controls, and must be ignored when presets load.
|
There's no 'proper' way AFAIK know, I seem to remember wrestling that problem before but can't remember the details off the top of my head. Can't check now but I'll look through my FX later and see if I managed to solve it. I *think* I did.
|
|
|
11-20-2020, 06:26 AM
|
#89
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Yes, I did come up with a solution. This is the relevant code from my instance tracking library. The comments should mostly explain what's going on. The 'lock' instance variable is initialised to zero in @init and set to 1 in @block so the plugin knows that any calls to @serialize must be preset loading rather than project loading...
Code:
// Call from @serialize to preserve instance id through save/load cycle.
function Tracker.Serialize(client*)
instance(assigned, clientMap, idMap, limit, lock)
local(add, current)
(
file_avail(0) > -1 ? // Loading?
(
add = 0;
current = client.id; // Store current id.
file_var(0, client.id); // Read stored id.
!(client.id < 1 || client.id > limit) ?
(
lock == 1 ? // Loading a preset or restoring a deleted instance.
(
gmem[clientMap + client.id - 1] < 0 ? // Missing?
(
add = 1;
)
:
(
client.id = current; // Restore current id.
);
)
: // Loading a song.
(
add = 1;
);
// Add client to map and update id count.
add ?
(
gmem[clientMap + client.id - 1] = 1;
gmem[idMap + client.id - 1] = 1;
assigned += 1;
);
);
)
: // Saving.
(
file_var(0, client.id); // Store id.
);
);
Hope that helps. There might be a better way but this seems to work okay. The full library is at https://stash.reaper.fm/v/25417/IX.Tracker.jsfx-inc.zip if it might be useful.
|
|
|
11-20-2020, 10:51 AM
|
#90
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by IXix
[...]The 'lock' instance variable is initialised to zero in @init and set to 1 in @block so the plugin knows that any calls to @serialize must be preset loading rather than project loading...
|
@init is not invoked when presets load. only on fx load, srate change or play start. what am i missing?
|
|
|
11-20-2020, 12:48 PM
|
#91
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Quote:
Originally Posted by bang
@init is not invoked when presets load. only on fx load, srate change or play start. what am i missing?
|
The idea is that you have a flag variable which signals that @block has happened at least once. If that's the case, any calls to @serialize must be either preset loads or project saves.
I forgot that I tend to use ext_noinit = 1 though, so if you're not doing that, you might need to jump through a couple more hoops to ensure that your flag variable isn't reset when @init is called again.
|
|
|
11-20-2020, 01:23 PM
|
#92
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by IXix
The idea is that you have a flag variable which signals that @block has happened at least once. If that's the case, any calls to @serialize must be either preset loads or project saves.
|
ok. that makes sense. but i need to know in *@slider* if a preset is loading, so i can prevent the live macro controls from overriding the actual core settings. i have something that works, but it's tricky enough to break if Reaper changes presets much.
|
|
|
11-20-2020, 01:37 PM
|
#93
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Quote:
Originally Posted by bang
ok. that makes sense. but i need to know in *@slider* if a preset is loading, so i can prevent the live macro controls from overriding the actual core settings. i have something that works, but it's tricky enough to break if Reaper changes presets much.
|
The same strategy should work. I haven't checked the sequence of events when you load a preset as far as @slider and @serialize are concerned but I'd imaging @serialize probably happens first, so if you detect a preset change in @serialize you can set a flag so @slider knows what's happening.
|
|
|
11-20-2020, 01:43 PM
|
#94
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by IXix
The same strategy should work. I haven't checked the sequence of events when you load a preset as far as @slider and @serialize are concerned but I'd imaging @serialize probably happens first, so if you detect a preset change in @serialize you can set a flag so @slider knows what's happening.
|
sadly, no. @slider is called 1st (once for each slider in use!) then @serialize.
|
|
|
11-20-2020, 01:56 PM
|
#95
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Quote:
Originally Posted by bang
sadly, no. @slider is called 1st (once for each slider in use!) then @serialize.
|
Oh, that's unfortunate. Perhaps Justin could be persuaded to change that?
|
|
|
11-22-2020, 11:02 AM
|
#96
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by IXix
Oh, that's unfortunate. Perhaps Justin could be persuaded to change that?
|
could be tricky to avoid breaking current fx. a new 'preset_loading' global might work. but wayback is really pushing jsfx sliders a bit past the intended use i think. it's working well enough now.
|
|
|
11-30-2020, 04:48 PM
|
#97
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
wayback, a fluid live looping delay
hello folks. 'loose ends' release 0.971fc is up on stash:
https://stash.reaper.fm/v/38738/wayback.zip
it has a few useability tweaks to the zap, copy & beats macros. a couple of ui tweaks, including a more prominent alt-mode indicator. it's a bit more thread safe, and improves the preset load logic a bit.
i should have noted in the last release that a few sliders have been moved. so please check any controller assignments.
the original wayback user interface was arcane. big thanks to everyone who tried it, and particularly for the feedback. wayback is more useable & coherent now. i encourage folks to read & try out the quickstart:
http://bangzero.org/wayback/guide
it's a good, brief overview of all the wayback essentials.
be well everyone! /dan
|
|
|
12-01-2020, 02:18 AM
|
#98
|
Human being with feelings
Join Date: Feb 2009
Location: Reaper HAS send control via midi !!!
Posts: 4,031
|
Thanks Dan, will check it as soon as I can.
|
|
|
12-01-2020, 02:32 AM
|
#99
|
Human being with feelings
Join Date: Jan 2007
Location: mcr:uk
Posts: 3,889
|
Thanks Dan!
|
|
|
12-05-2020, 06:52 AM
|
#100
|
Human being with feelings
Join Date: Oct 2010
Location: Scotland
Posts: 422
|
Hey Dan. Somewhere between v092rc and v0971fc the delta slider/parameter doesn't work till the gui is opened.
v092rc - [meta delta] works fine
v0971fc - [delta] does nothing till gui opened
EDIT: Fixed! Thanks Dan
Last edited by ThrashJazzAssassin; 12-06-2020 at 03:00 PM.
|
|
|
12-05-2020, 09:52 AM
|
#101
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by ThrashJazzAssassin
Hey Dan. Somewhere between v092rc and v0971fc the delta slider/parameter doesn't work till the gui is opened.
|
thanks TJA. good catch. and the licecaps & 092rc datapoint help. just to confirm what i see: delta fails until the fx window is shown *the 1st time*, but works with the window closed after that? i probly need to initialize the gui before the fx is shown. will fix that for a minor update rsn. /dan
|
|
|
12-06-2020, 12:13 PM
|
#102
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
wayback, a fluid live looping delay
hello folks. 'little fixes' release 0.972fc is up on stash:
https://stash.reaper.fm/v/38738/wayback.zip
this release primarily fixes a few minor bugs: the pre-gui delta bug TJA reported, and a couple of problems with the zap/z macro. it also tweaks the fade/x macro & windows font size. and just for fun there's an extra tiny gui mode for tcp embeds.
online documentation, including a basic quickstart at:
http://bangzero.org/wayback/guide
it's a good, brief overview of all the wayback essentials.
kind regards everyone! /dan
|
|
|
02-09-2021, 01:42 PM
|
#103
|
Human being with feelings
Join Date: Oct 2010
Location: Scotland
Posts: 422
|
Hey Dan, been playing with wayback again, a lot still figuring it out. Here's a finding..
When [hard delta-t] is enabled and the loop time is changed too much, there's a loud click, and the play-head and loop 'markers' gets lost 'off tape'. Would it be possible for these things to loop round the 'tape' (constrained) in the same manner as when [hard delta-t] is off?
Thank you so much
|
|
|
02-10-2021, 03:50 PM
|
#104
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by ThrashJazzAssassin
When [hard delta-t] is enabled and the loop time is changed too much, there's a loud click, and the play-head and loop 'markers' gets lost 'off tape'. Would it be possible for these things to loop round the 'tape' (constrained) in the same manner as when [hard delta-t] is off?
|
that sounds like a bug. i'll get a fix out asap. thanks for your report TJA. /dan
|
|
|
02-14-2021, 04:40 PM
|
#105
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
wayback, a fluid live looping delay
hi folks. 'more little fixes' release 0.973fc is up on stash:
https://stash.reaper.fm/v/38738/wayback.zip
this release mostly fixes a couple more minor bugs: TJA's hard delta-t issue & a problem with clear/C. it adds a visible control for the zap/Z fade level. and there are a few useability tweaks.
online documentation, with a basic quickstart at:
http://bangzero.org/wayback/guide
enjoy! /dan
|
|
|
10-22-2021, 08:25 AM
|
#106
|
Human being with feelings
Join Date: Oct 2010
Location: Scotland
Posts: 422
|
Hi Dan. The Zap button on the GUI doesn't seem to do what is expected (momentarily force feedback to minimum...)
|
|
|
10-27-2021, 08:15 AM
|
#107
|
Human being with feelings
Join Date: Jul 2006
Posts: 626
|
Quote:
Originally Posted by ThrashJazzAssassin
Hi Dan. The Zap button on the GUI doesn't seem to do what is expected (momentarily force feedback to minimum...)
|
hi TJA. hmmmm. i changed the behavior of zap a couple of releases back to make the default zap just temporarily lower the output level. the old, destructive zap is now active in alt mode (shortcut "/"). but i realize now this complicates external control of zap. alt should not be required to externally access any of the core ops like zap. so i will restore the old behavior for the zap js control.
and... i have a fairly simple way to implement the Beardyman "retrospective" looping technique. i can add a macro control that both sets the number of beats and starts looping immediately. so you can use macro "l" (slider55) to silently record input until macro "g2" (slider60) immediately loops the number of beats set. does this sound like it will do what you have in mind?
big thanks for the feedback TJA. enjoy! /dan
|
|
|
10-27-2021, 01:23 PM
|
#108
|
Human being with feelings
Join Date: Oct 2010
Location: Scotland
Posts: 422
|
Ooooh that sounds great. The way I've been doing it is running a script from my touchscreen controller which sends a bunch of OSC messages to simultaneously set the no. of chosen beats and set the 'delta' control to either zero or just on enough for feedback to be 100% and continue recording. then I've got a handy button to set the mode to 'hard' so that I can shorten the loop if necessary. I get a lot of clicks this way sometimes though.
|
|
|
12-03-2021, 08:59 AM
|
#109
|
Human being with feelings
Join Date: Jun 2020
Posts: 1
|
I don't have anything to add really but I just want to thank Bang for making this. I lost myself for a few hours playing with it and harmonizing with myself, it is excellent for guitar jamming.
|
|
|
12-18-2023, 05:55 AM
|
#110
|
Human being with feelings
Join Date: Jan 2018
Location: Berlin, Germany
Posts: 5
|
Anyone still here? A question about external FX
Hi, I'm obviously rather late to the party here (I'm late to a lot of parties) but definitely interested in this looper. No idea if anyone is still using it, or maintaining it, or if it ever reached a '1.0' level release (doesn't look like it?)...
Anyway, I have installed the most recent version I could find and it does still seem to work with current-gen Reaper, and it definitely still looks very cool and powerful, if quite a lot to come to grips with in terms of utilizing the considerable capabilities on offer. However, my needs are fairly simple to begin with...
Sadly though, the main thing that caught my eye is the External FX option, which is something I'd very much like to make use of if I could figure out how to get it to work.
Earlier in this thread, the developer made this reply to another query on the subject:
"for example, 'feedback fx' requires external fx with inputs & output specially routed to wayback. without that feedback fx will just break wayback..."
... which I get, but the thing is, I cannot find any explanation of how this 'special routing' is supposed to work. I have looked through all the documentation I can find, and there is literally nothing at all on the subject, except this from the in-plugin contextual help:
'send on channels 3+4, return on 5+6'
This seems clear on the surface, but any way I have attempted to do it - whether on a single, 6-channel track with the pin routing on the plugin set to output from channels 3-4 into a subsequent plugin whose output is routed back on channels 5-6, or via sends on those channels to and from a second track with an FX plugin inserted - simply stops Wayback from doing anything when the 'feedback fx' button is engaged.
While I get that putting the cart before the horse can be a danger and I might be better served to start small and simple and wait until I have developed a broader understanding of the plugin... it strikes me that this is kind of a separate function, and the required routing should be relatively simple to explain and does not depend on advanced knowledge of every mode, function and shortcut in the rest of the plugin - and is itself unlikely to be affected by such knowledge. But it is not, so far as I can find, explained anywhere.
So... if anyone is still using this and knows how it works, or the developer is still in the mix and could give a quick answer, or it could somehow be added to the documentation... I would be most appreciative! And if not... well, I'll keep plugging away at it and see if I can crack the code, or I'll give up and accept defeat. Such is life!
Thanks in advance for any advice anyone has to offer...
|
|
|
12-18-2023, 01:45 PM
|
#111
|
Human being with feelings
Join Date: Jan 2018
Location: Berlin, Germany
Posts: 5
|
Never mind, I figured it out! Reaper's helpful anti-feedback default setting needs to be overridden at the project settings level in order to allow the sends to work, even though they are on different track channels and so not inherently posing a speaker-and-or-ear-destroying risk. But it can be set to allow such feedback, allowing the sends-between-tracks method to work. So that's nifty!
Now to explore the rest of this thing's fascinating, if somewhat arcane, functionality!
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT -7. The time now is 09:46 PM.
|