## MIDI Decoder and Encoder: 2 atoms for SDK

Scope and XITE Development

Original topic on PlanetZ: https://forums.scopeusers.com/viewtopic.php?t=36242

#### MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Fri Dec 27, 2019 4:01 am
by at0m
Hi,
I think some of you been looking forward to these 2 atoms: Here's a MIDI Decoder and a MIDI Encoder atom.
Not that I could stop anyone from using them commercially, but I'm really looking forward to your creative use of them in free devices
at0m.

Attachments
  midi_codec.zip
    (22.95 KiB) Downloaded 236 times

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Fri Dec 27, 2019 10:30 am
by Peter Drake
It's probably less expensive (money vs time) for me to commision devices instead of trying to build. I'll blunder around with these, thank you.

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Fri Jan 03, 2020 4:07 am
by Spielraum
thanks for that!! , i'll see what's possible
i have a lot of SDK things in the pipeline, but i want to make sounds again the next few days... kribbel kribbel

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sun Jan 05, 2020 10:48 am
by Spielraum
first view <zplane> dsp?!
ok i will check again! thanks for the open container structure, maybe a stable solution can be found in this connection...
basically i want rebuild shark's LOOP from 2006, he must have used the midi message builder !? only the stable triggering still fails, but his sequencer is running stable on my xite, which gives me great hope
\o/

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Wed Jan 15, 2020 6:07 am
by at0m
Spielraum,
Do these load ok? Or ask for extra .dsp files or so?
Have fun

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Thu Jan 16, 2020 10:58 pm
by Spielraum

> at0m wrote: ↑Wed Jan 15, 2020 6:07 am Do these load ok?

yes, can load it, thnks man
i haven't checked it yet, i just drifted to preset management workflow...

> at0m wrote: ↑Wed Jan 15, 2020 6:07 am Or ask for extra .dsp files or so?

oh yes, I'd love to!
everything about midi would be great! my last approach was with value sender for s&h. OK, mathematic logic works, but timing is unstable again.
the challenge: s&h 2x2 events for Note On (pitch + velocity). and Note Off (pitch + Vel 0)
in addition, music hangers must be avoided at all costs

> at0m wrote: ↑Wed Jan 15, 2020 6:07 am Have fun

ever!!
75 years of peace in europe
CHEERS

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Fri Apr 03, 2020 12:38 pm
by jpo_midigods
Hi,
Im just needing this encoder atom to use in Modular. Any chance that it exists as a Modular module?
I need to extract cc number from incoming midi cc messages, it seems easy but not for me in Modular,
thanks,
jpo

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Fri Apr 03, 2020 11:14 pm
by Spielraum
https://bcmodular-guide.000webhostapp.com/chapter/Multi-Mo.html
hello anon, sharc used the atom in his multi-mo.
works perfectly,
except for midi notes, since a midi message is issued for each event. (pitch> 1st event, velocity> 2nd event) the same applies to note off.
therefore i do not recommend this atom for midi notes.
i have been checking all atoms and scripts for several months now, and i already have about 10 approaches in the drawer. unfortunately the timing is always unstable. since sharc runs his LOOP v0.6b super stable on XITE, i have been analyzing his device for months as well. unfortunately simon does not respond to my requests. not here, not in the bc-modular forum, not even in GitHub. a shame, but I'm not giving up. the last two days i checked some ideas again and also noticed that LOOP seq + midi convert engine does not need dsp atoms. i almost suspect that he uses scripts and midi messages / sysex ...
i created a topic to generate more curiosity, enthusiasm and support.
unfortunately not really successful so far
https://forums.scopeusers.com/viewtopic.php?f=36&t=36169
ps .: zaquencer is awesome, thanks for refreshing;)
https://forums.scopeusers.com/viewtopic.php?f=5&p=344318#p344318

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 12:42 am
by jpo_midigods
Hi Spielraum, im always using the multi-mo to encode but i need also to decode midi in cc messages. So i can proccess the cc value received, but also which cc number was sent. Im using BCM-32A module to catch 32 different ccs (for the mackie C4 project). I need a way to know cc number.
why theres no a multi-mo to decode? Modular has lots of modules...
A workaround could be connecting the 32 async outs of BCM-32A to a module with 32 async inputs that outs the index of the last input that has changed its value. Its like a 32to1 autoswitch. Im not sure if this its called multiplexing nor such a module exists for Modular, maybe i'll design mine as a circuit level module, i like clms.
Otherwise i will have to repeat my design x32 since i have 32 knobs to program, not elegant for Modular as a rapid prototype design tool aj aj

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 1:31 am
by Spielraum
since according to logic you can only route to one destination, use this module.
i'm wondering if there is a midi2cc120 splitter (without scope "midi assignment"),
mmhh... i'll look today.
may be that i had already built such a module.
...if no other scoper foresaws?

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 1:41 am
by Spielraum
https://forums.scopeusers.com/viewtopic.php?f=10&t=36320
see preview pic
"C120" is bidirectional if you need, but with 120 fix destinations...
or "C16" with multi cc i/o...

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 2:02 am
by jpo_midigods
Yes i have one mackie C4 knob working ok using Control Change S.
now i want to replicate it x32 so i need a Control Change S for 32 ccs that outs the value but also the cc number. This cc number is the last touched knob number. I need it as index for 1x32 switch i use to send calculated cc value to correct async connector of BCM32A for the midi out.
So i have a BCM32 to catch 32 ccs. Another BCM32 to spit out 32 new, different ccs assigned. And in the middle is the logic for inc/dec one cc using another, diferent cc, and the sysex logic for the C4 screen. Modules in the middle are shared for all 32 knobs.
I need just the switch 32x1 and the 1x32. first must provide cc index for last. did I explain it well?
today ill try j9k ad da bit modules for decoding. Im learning recursivity of clm modules (ideally I only use one instance of each module in a design) so maybe im missing something, any ideas welcome

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 2:09 am
by jpo_midigods
uh! ah! oh! i had missed the whole thread and pack! im installing it right now. Thanks! i'll test and comment
jpo

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 5:21 am
by jpo_midigods
ops... just preview pic, still no pack. what a nice pack!
I do need this pack but right now im just needing a async connector with the last cc midi number received.
I have connectors for cc value but not for cc number, or index, or id.

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 7:57 am
by Spielraum
ok, i will check+built a module,
but it will then output all midi input data,
if necessary you have to put a filter

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 8:18 am
by jpo_midigods
Thank you Spielraum, i hope its only add a async connector and put data you have as internal index, so not much work and allows more modular automation. I'll test it deeply.

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sat Apr 04, 2020 10:35 am
by Spielraum
https://forums.scopeusers.com/viewtopic.php?p=344359#p344359
Midi to Value Analyzer
(7bit logic: 1 is 0, 2 is 1, and so on)
! most bcm switches needs a 32bit logic (must convert 7bit to 32 bit range) or take the "BitRes" SR-module soon...
cheers ron

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sun Apr 05, 2020 2:20 am
by jpo_midigods
Thanks Atom and Spielraum, this was Scopes Missing Link!
now it is Modular Power for the MIDI masses
jpo

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sun Apr 05, 2020 2:42 am
by jpo_midigods
There is also old Midi2Val module from CWM but it seems only works for velocity data so the name is confusing.

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sun Apr 05, 2020 8:00 am
by Spielraum

> anon wrote: ↑Sun Apr 05, 2020 2:42 am ...old Midi2Val module from CWM...

is a "Midi to Note Number" module
http://www.cwmodular.org/bcmcwmmodules01.html

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Mon Apr 06, 2020 3:55 am
by jpo_midigods
So i figure Midi2Val is a midi noteon message to sync notenumber, it gives you 2nd byte of a noteon ignoring 1st and 3rd (channel and velocity). I had never use for it... not important issue but i'd had called it "NoteOn to notenumber".
I had it always on my searchs for cc midi modules before fantastic and keep-it-simple-as-in-midi M2V.
I never knew why MVC modules don't sends out direct midi notenumber... but i remember they has an async socket for notes.
Im using M2V for ccs as asked but also for notes. Im using Mackie C4 32 knobs pusbuttons sending hardcoded noteons as a text keyboard for fast C4 screens label editing. Its not qwerty but very fast also and i can edit labels hands on C4 hardware without breaking my music workflow, with just pressing 7 pushbuttons for a five chars label. No more char scrolling with knobs nor other workflow breaking, time consuming options.
you can filter notes from ccs easily by using a midifilter before M2V but also manually after by conditional send if type equals 11 or 9 (for ch1).
thanks to M2V module and BC Multi-Mo im abling to design for 32 physical knobs using almost same resources than for just one. It had took many many years and a global pandemic but finally i feel i can make good simple, reusable designs on fabulous Modular.
YES!
"MIDI is the languaje of Gods"
early www anonymous
"We have SC Xites and CW Pulsars"
jpo

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Tue Apr 07, 2020 2:35 am
by Spielraum
i like to work with IF modules, that's so logical.
if you desired, then i expand the filter options in M2Vf or Mf2V
crucial for Midi Out (filtered/thru)
i think, cwm module out is async, because no converter is queried when "blue" out is connected to async I / O
have check this with bcm Fader A
scope atom logic, i think
+ async out > sync in (auto conv)
- sync out > async in (need manual conv)

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Wed Apr 08, 2020 2:08 am
by jpo_midigods
Thanks Spielraum, i dont need any filtering and monitoring because im now used to monitor everything inside and outside of Modular to be completely sure haha i dont trust anyone haha. I havent catch any errors in M2V as im very early user of this module.
I like simple modules with simple use, small, clear view and well named so dont needing any further manuals. Maybe a gate out socket? im not sure how easy is to trigger a gate from an async socket.
Also I always thinking about saving async connections on general Scope use as a good design rule.
But I think more funcionality can be useful for others to learn. A complete MIDI tutorial for Scopers can be made on a Modular project, providing complete interactive data visualization over messages and conversions...
Only Problem for me now is I never know if a async white socket on a module will be 7 or 32 bits, i always feel im doing rare conversions with control rangers.
cheers,
jpo

#### Re: MIDI Decoder and Encoder: 2 atoms for SDK

Posted: Sun May 03, 2020 9:16 am
by Liquid EDGE
Where do you install these midi decoder and encoder atoms files to?
Not got a clue about SDK yet, but setting it all up to then dig into.