Ortf

ORTF

Sort of Radio music clone. Each station is an audio file.

I made this first app to learn about norns, lua and softcut (incredible piece of software!).

It’s inspired by Radio music module, the idea is to treat your tape folder as a radio and navigate into it.
You can navigate into a sample, loop a portion, change speed and save a snapshot.

Requirements

  • norns
  • samples in tape folder
  • MIDI controller (optional)

Documentation

  • E1: radio station (sample)

Some lags may occur if you change too quicly (lots of softcut load/unload!)

  • E2: scrobe into sample

  • E3: rate (-4 to 4)

  • K2: loop ponts : start / end / reset

  • k3: jump to start

  • ALT is K1

  • K1 + E2: adjust loop start

  • K1 + E3: adjust loop end

  • K1 + K3: saved loop in tape (rate=1 only)

MIDI CC

  • 9:sample

Some lags may occur if you change too quicly (lots of softcut load/unload!)

Download

Enjoy!

60 Likes

very cool! cant wait to check it out!

love the interface + visuals !

1 Like

nice visuals as well, any chance adding random? Thank you :slight_smile:

1 Like

Wow :clap: just made my first recording with this script last night, incredible work and very inspiring to play with!

Thinking of some modifcations/hacks that might be fun to add:

  • button tap to reverse
  • specify an array of (tonal) sample names to quantize to octaves, allowing others (percussion/misc) to move freely in pitch
  • tap grid button to load a known first_sample (“favorites”, or for performances)
  • overall volume control, again for performances
2 Likes

love this, I’ d like to see: volume per sample and save with rate. thanks:)

this is really cool

great demo vid too!

1 Like

Very nice! Thanks for sharing it!

Hi. What’s expected to happen if a sample is < 1 second long?

Also he MIDI cc values are

9:sample
14:start
15:end
20:rate
21:position

Sure, i am guessing these are recommended values in MIDI standard or some convenient CCs the author has in their gear setup. Would mapping them to start from 1 make sense?

Anyway using MIDI i can get thr sample start time to be between 0 and 1, but there’s some strange behavior going on like the start market jumping to the right of the screen. Seems like a potential Obi-Wan bug :lady_beetle: to me.

Doesn’t work anymore ?!

Also not working for me. When I load ORTF, it freezes up.

There have been many changes to the norns firmware over the last 3 years that could have introduced an issue.

To find out why you’ll need to have maiden open and look at the output when the script attempts to load.

How to post error output from maiden

Tap the gear icon and select hide details.

Put the code in the middle and a short summary where it says summary.

It keeps the thread tidy.

I hadn’t tried this script before so I’m going to take a look myself as I’m really into playing with the tape at the moment.

using Maiden to launch and stop the script. Starting seems good, but when i stop the script, this is what I get:

lua: /home/we/norns/lua/core/clock.lua:58: bad argument #1 to 'resume' (thread expected)
stack traceback:
	[C]: in function 'coroutine.resume'
	/home/we/norns/lua/core/clock.lua:58: in function 'core/clock.resume'
lua: /home/we/norns/lua/core/clock.lua:58: bad argument #1 to 'resume' (thread expected)
stack traceback:
	[C]: in function 'coroutine.resume'
	/home/we/norns/lua/core/clock.lua:58: in function 'core/clock.resume'
lua: /home/we/norns/lua/core/clock.lua:58: bad argument #1 to 'resume' (thread expected)
stack traceback:
	[C]: in function 'coroutine.resume'
	/home/we/norns/lua/core/clock.lua:58: in function 'core/clock.resume'

having similar freezing behavior( and corutine error messages) when I try to run Orca.

I’ve just installed and it’s running fine for me.

Really fun script.

These error messages are related to the norns core firmware, might be worth putting the full output from maiden when loading the script.

Might be worth going through the basics:

What version of norns firmware are you running?
Have you restarted since installing?
Are you running any mods?

1 Like

Thanks for the reply and taking the time to check this out. here is the full output when I launch ORTF:

 
norns.script.load("code/ortf/ortf.lua")
# script clear
# script load: /home/we/dust/code/ortf/ortf.lua
name	QuNexus 1
cc	function: 0x1640da8
note_on	function: 0x16e00e0
start	function: 0x1684c90
program_change	function: 0x16a1c88
pitchbend	function: 0x16e0008
note_off	function: 0x16e0128
channel_pressure	function: 0x16db840
clock	function: 0x1684ab0
connected	true
device	table: 0x17be148
key_pressure	function: 0x16d91d8
send	function: 0x1694980
song_select	function: 0x16814e0
song_position	function: 0x1675498
continue	function: 0x1684550
stop	function: 0x1684678
# script run
>> reading PMAP /home/we/dust/data/ortf/ortf.pmap
m.read: /home/we/dust/data/ortf/ortf.pmap not read, using defaults.
<ok>
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
1	0000.wav
2	0001.wav

The firmware was up to date- 230614… but yesterday i pulled the latest updates (using the instructions here: compiling norns | monome/docs ) …so I guess I running the “prerelease” firmware 231011 now… no change in the behavior.
I have definitely restarted, rebooted…etc. I have 3 mods installed but none are currently active:
choukanzu, nice-tapes, and semiconductor
I should mention that this is a “Norns on RPi” build- with a different Codec and TFT display, but the changes made to get it running were pretty minimal: different overlays for codec, screen and encoders, changed the card name in norns-jack.service, and added a scale factor to matron/screen.c

1 Like