Reels

from Norns: update 201113

deprecated
for scripting, mix is deprecated. please use:

params:set('output_level', value)
params:delta('output_level', delta)
params:get('output_level'

lines 374 and 804 of /code/reels/lib/libreels.lua should be changed from
mix:set_raw("monitor", rec_vol)
to
params:set("monitor", rec_vol)

maybe more after that, not in front of norns

1 Like

Ughh. This is why I never update anymore. Shit always gets broke

2 Likes

quick correction, these param addresses all end with _level, so monitor_level, etc

looks like a fix already got in, threw up a PR with correct syntax, should be only a little bit before reels is up and running again :slight_smile:

4 Likes

Thanks @dan_derks and @speakerdamage, all should be fine now! :slight_smile:

2 Likes

things like this are usually resolved quickly, and should be expected every now and then with so much continued active development taking place. plus, even if you don’t have a background in coding it’s a good exercise to try to troubleshoot things like this using maiden output and going from there. (I accidentally “liked” this post and can’t undo it for some reason)

2 Likes

I’m performing next month and was planning on using reels as a live looper and I’ve noticed sometimes when I record a loop it makes the end point - whatever number and it kind of glitches.

Is there anyway to keep the start and end points consistent and not have it change after recording to a track?

hi @its_your_bedtime wondering if it’s possible to allocate a specific 60 sec chunk of a sample in reels rather than the first 60 seconds? would be nice to be able to choose a desired segment from a longer pre-existing recording

1 Like

was wondering if it’s possible to add end of splice gates for each of the 3 reels for crow outs 1-3? reels is my favorite script and i think this would lead to some interesting/useful synced events with the modular :slight_smile: or if anyone knows of any other scripts that implement this behavior, i’d be happy to mess around with it. thanks

1 Like

I’m having an odd issue: Trying to record from Nintendo DS into Reels, it monitors at a reasonable level but the recorded result is super quiet/barely there. Other stuff, (eg tried a casio keyboard) using the same 3.5mm cable for the input, records onto the reel fine and plays back at the same volume at which it monitored. All levels are set to 6db in the params and unity in the main Norns levels page

one thing that comes to mind is that L+R are summed on record to reels (and most other softcut scripts by default, since softcut voices are mono.)

is it conceivable that the DS source has phase inverted on one channel? should be easy to test at least.

… in fact i guess according to that hypothesis, you would get cancellation on the monitor path by setting monitor mode to mono in the system audio parameters.

3 Likes

ooh good to know. Could well be the case especially since I’m using some oddball unfinished DS music software ROM. Will test it with a stereo to dual-mono cable, thanks!

EDIT: OK yes that fixed it. Split the signal to mono and it records fine :slight_smile: Will test some other time if it’s an issue with the DS as a whole or just that particular ROM

3 Likes

I’ve reinstalled the norns .img, updated through Wi-Fi, and am still not able to boot up the Reels script on my Norns Shield. Is there a fix for this or am I doing something wrong? Thanks.

hi! sorry to hear about the trouble!
reels is loading fine on my local device. if you have maiden open, what information prints to the matron REPL?

1 Like

Hey, thanks so much for coming to help so quickly! (Note: I am a beginner to programming)

I think this is what you’re looking for? I ran the reels.lua script and copied/pasted the matron output:

?

norns.script.load(“code/reels/reels.lua”)

script load: /home/we/dust/code/reels/reels.lua

cleanup

script clear

including /home/we/dust/code/reels/lib/libreels.lua

script run

reading PMAP /home/we/dust/data/reels/reels.pmap

m.read: /home/we/dust/data/reels/reels.pmap not read.

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

clock: ignoring resumption of canceled clock (no coroutine)

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

clock: ignoring resumption of canceled clock (no coroutine)

lua: /home/we/dust/code/cheat_codes/cheat_codes.lua:869: attempt to call a nil value (global ‘grid_redraw’)

stack traceback:

/home/we/dust/code/cheat_codes/cheat_codes.lua:869: in field ‘event’

/home/we/norns/lua/core/metro.lua:165: in function </home/we/norns/lua/core/metro.lua:162>

Engine.register_commands; count: 0

___ engine commands ___

___ polls ___

amp_in_l

amp_in_r

amp_out_l

amp_out_r

cpu_avg

cpu_peak

pitch_in_l

pitch_in_r

script init

SCRIPT ERROR: init

/home/we/dust/code/reels/lib/libreels.lua:374: attempt to index a nil value (global ‘mix’)

stack traceback:

/home/we/norns/lua/core/norns.lua:138: in metamethod ‘__index’

/home/we/dust/code/reels/lib/libreels.lua:374: in field ‘init’

/home/we/dust/code/reels/reels.lua:19: in global ‘init’

/home/we/norns/lua/core/script.lua:107: in function ‘core/script.init’

[C]: in function ‘xpcall’

/home/we/norns/lua/core/norns.lua:139: in field ‘try’

/home/we/norns/lua/core/engine.lua:91: in function </home/we/norns/lua/core/engine.lua:89>

1 Like

yep, perfect!

ah, super helpful – seems like you have some old versions of the scripts, which need to be updated through the steps listed here: maiden - docs. note that this isn’t the same as a system update – if it helps, norns is just a computer, so programs need to be updated as well as the OS.

after that, you should be able to load reels without trouble :slight_smile:

we’re replacing these old script versions in the next base image compile, apologies for those troubles!

(i’d also suggest deleting the old cheat codes, which has been replaced by cheat codes 2)

2 Likes

oh my god, updating reels through maiden solved it haha thank you! really appreciated the prompt explanations and guidance. looking forward to learning more and playing around with these scripts now :smiley:

2 Likes

ayyy, happy to help! icymi, you can hit that “update all” button at the top of the “installed” tab to make quick work of it in the future :sparkles:

have fun!

1 Like

I had same issue on my norns shield. Uninstalling and reinstalling was able to get script to load and work.

1 Like

Hey there,
Is it possible to add a “rewind to beginning” feature ?
Maybe I missed it also

I really love this script.

1 Like