Weer eens buurten, plus gratis biofeedback ambient synth / midi generator

bsidez

Nieuwkomer
Lid sinds
10 oktober 2019
Berichten
1
Locatie
Utrecht
Hoi bsidez hier uit Utrecht weer. Ik hou vooral van experimenteren, bouw eigen controllers, synths. Ik was een tijdje weg van het forum maar ben er weer :). Eigenlijk het meest om modulaire zelfbouw projecten te volgen en over te leren en nieuwtjes te volgen. Voor de rest heb ik hardware / software synths en maak ik ambient , dub/techno ,deephouse, minimal, jazz en meer stylen, maar ben vooral bezig met willekeur, random shizzle, generatieve projecten en 3d. Probeer ook eens mijn gratis ambient synth / midi generator (en meer!). Het is ooit begonnen als aanvulling op mijn Pocket Scion, maar is zeg maar een beetje uit de hand gelopen.
Someone shared a preset on BioMidi with the name "Bon voyage!". Open it and press play to listen.

WAT IS BIOMIDI?
- BioMidi is een digitaal muziekinstrument dat werkt met biofeedback. Het gebruikt de elektrische
signalen van 24 soorten organismen - planten, schimmels, algen, mos en eencelligen - en zet die
direct om in muzieknoten. Daardoor ontstaat rustige, organische, steeds veranderende muziek die
wordt gestuurd door natuurlijke patronen.

WAT JE ERMEE KUNT DOEN
- Kiezen uit 61 instrumenten in 6 categorieën.
- Spelen in 84 toonladders uit 7 muziekculturen.
- Gebruikmaken van 17 arpeggio-patronen.
- Elk organisme heeft een eigen muzikale persoonlijkheid.

KORTE GEBRUIKSAANWIJZING VOOR BIOMIDI.NET
- Druk op Play om de simulatie te starten. Je kunt meespelen via het touchpad of met je toetsenbord
(a t/m l en q t/m p) of je gebruikt een midi keyboard, maar dit hoeft niet.
- Onderaan de pagina staat een link voor volledig scherm en de gebruiksaanwijzing. Zet animaties
uit als het geluid hapert of je telefoon oud is. Beste is bekijken op een desktop.
- Zet een Arpeggio aan voor extra noten, of gebruik Chord Voicing. Met meer Sensitivity krijg je
meer noten. Je ziet de noten in het touchpad.
- Is het geluid te hard? Zet het volume lager. Te veel noten? Zet Sensitivity omlaag. Te schel of te
dof? Pas de HiCut filter toe en speel met de Tone .
- Zijn de noten te hoog of te laag? Gebruik Octave - / +. Met Octave Range bepaal je het bereik.
- Een van de eerste dingen die je doet is spelen met Hi Cutoff of Tone om het karakter van het
geluid te veranderen. Probeer ook verschillende reverbs en delays.
- Heb je een mooie combinatie? Houd een van de 8 slots onder het touchpad 2,5 seconde ingedrukt
om hem op te slaan. Je kunt ook saven, loaden en delen.
- Druk op Random om een volledig willekeurige preset te maken. Pas daarna toonsoort, instrument,
organisme, effecten, arpeggio's of tempo aan.
- De mogelijkheden zijn eindeloos. Met de 8 slots kun je snel wisselen tussen je eigen presets. Je
kunt noten exporteren of audio opnemen. Exporteren naar .mp3 duurt even.

Er wordt volop aan ontwikkeld en opbouwende kritiek is zeer welkom! Dit is mijn eerste software synths en de uitdaging was om alles via de browser (client side) te doen (met tone.js, three.js, react.js, node.js).
Tot horens!

Voor de nerds:

TECHNISCHE DETAILS

Audio Engine & Synthese

  • Audio engine: Web Audio API met dual oscillators (sine, triangle, sawtooth, square, PWM, white/pink noise – vrij combineerbaar per voice), per-voice lowpass filter, ADSR envelope, stereo panning en ondersteuning voor FM synthesis.
  • FM synthesis: Optionele fmRatio, fmDepth en fmDecay parameters per instrument. Een modulator oscillator vermenigvuldigt de carrier frequency met de fmRatio en moduleert deze met de gespecificeerde depth. FM-instrumenten zijn onder andere Rhodes, Bell, Brass, Kalimba, Organ, Marimba en Choir.
  • LFO: Smoothing filter (25-50Hz lowpass afhankelijk van de bestemming) tussen de oscillator en de gain node om discontinuïteits-clicks te voorkomen. Filter modulation maakt gebruik van proportional swing, rate-afhankelijke schaling en een frequency floor clamp (nooit onder 20Hz) om biquad instability te voorkomen. Pan-modulatie is begrensd op 0.85 met een 25Hz smoother. Rate-bereik: 0.01-20Hz.

Effects Chain & Processing

  • Signaalpad: Voices (osc1 op unity + osc2 op 0.6, velocity-scaled peak met bass compensation + note-density scaling) > per-voice filter > envelope > pan > Dry (0.7, schaalt omlaag met reverb mix) + Reverb Send (300Hz HP) + Delay Send (300Hz HP) > Lowcut (30Hz Butterworth HP) > Master Panner (LFO pan) > Highcut (Butterworth LP) > Master Gain > Soft Clipper (unity onder 0.8, cubic saturation daarboven) > Limiter (-6dB, 12dB knee, 4:1, 3ms attack, 100ms release) > Makeup 1.7x > Output.
  • Reverb: 5 synthetische convolution impulse responses (Room 1s, Hall 3s, Plate 2s, Cathedral 6s, Cosmos 10s). Dual convolvers voor een vloeiende type-crossfade (800ms tijdconstante). Hybride send/crossfade mix: dry schaalt van 0.7 naar 0.5 naarmate de reverb toeneemt om overbelasting te voorkomen.

Algoritmes & Optimalisatie

  • Voice Management: Voice stealing geeft prioriteit aan het vrijgeven van voices, daarna aan het stelen van de stilste voice met een 40ms smooth fade-out en filter-sluiting om clicks te voorkomen.
  • Gain Scaling: Note-density-aware gain scaling verlaagt automatisch de gain per voice wanneer noten snel achter elkaar vuren (boven 4 noten/sec). Inclusief bass compensation (sqrt curve die gain onder 150Hz vermindert).
  • Parameter Control: Filter-sliders gebruiken logarithmic scaling. Audio-parameters gebruiken setTargetAtTime() met een 0.05s ramp voor klikvrije overgangen.

Functionaliteiten & Content

  • Presets: 61 instrument presets verdeeld over 12 categorieën (Pads, Organic, Ethereal, Leads, etc.). Systeem ondersteunt het lokaal opslaan van .bio files en delen via URL.
  • Muzikale Structuren:
    • 84 Toonladders: 7 categorieën waaronder Pentatonic, Western Modes, World/Ethnic en Symmetric.
    • 17 Arpeggiator patronen: O.a. Up, Down, Random, Converge, Diverge, Spiral en Drunk Walk.
    • MIDI: Web MIDI API ondersteuning voor Note On/Off en CC-berichten met ratchet support. Bereik: 21 (A0) tot 108 (C8).
  • Organisme Modellen: 24 modellen (planten, schimmels, algen, etc.) met unieke variabiliteit, responssnelheid en muzikale eigenschappen zoals humanize, swing, articulatie en accentpatronen.
  • Visualisatie: Three.js met instrument-gekleurde spore-deeltjes, elektriciteitsbogen, mycelium-tangen en organische vormen.

Systeem & Architectuur

  • Client-side: Alle audioverwerking vindt plaats in de browser van de gebruiker.
  • Server-side: De API-server (Express/MySQL) beheert gedeelde presets, instrumentdefinities, organismedata en de handleiding.
  • Defaults: 60 BPM, 6 voices, Octave Range 2, Highcut 8000Hz, Lowcut 30Hz, Hall reverb op 50%.
 
Back
Top