Giter VIP home page Giter VIP logo

renardo's Introduction

Renardo

Music livecoding environment

Renardo screenshot

  • Livecoding with Python, SuperCollider, Reaper
  • FoxDot fork with a lot of new features

Installation

Renardo is a new maintained version (a fork) of FoxDot.

FoxDot is a classic/amazing software used in the algorave community, created by Ryan Kirkbride nearly 10 years ago !

...but it has not been maintained for the last 3 years.

The community is still very alive ! (check especially FoxDot channel on Telegram)

There has been multiple very cool community forks but hard to find, install and understand without looking in the code.

Even before, FoxDot was already hard to install for non developers due the multiple moving parts it is composed of.

So the intent of the project is:

  • Renardo as a fork of FoxDot will support all/most vanilla FoxDot features.
  • The new name "Renardo" comes to make the new fork identifiable and thus findable online especially to serve as support for workshops and musical teaching.
  • Renardo should be easier to install (and will continue to get easier).
  • There is a lot of potential for FoxDot/Renardo and we would like to make it even more amazing.

This software would not exist without a lot of hard and smart work from Ryan Kirkbride and all the community contributors. They should be thanked a lot for that piece !!

Presentation of new features and architecture

New documentation and tutorials (Work in progress)

Cleaning and refactoring

  • Progressive and deep code refactoring in progress seeking Python new features and good practices.
  • Renardo is FoxDot made modular, splitting the codebase into several pieces / PyPI packages : renardo-lib, renardo (launcher + configuration TUI), renardo-gatherer (install/share sample packs and Synthdefs) |FoxDotEditor (Tkinter Editor from FoxDot), renardo-reaper

New utility functions to compose musical pieces

  • Fade (...to, ...in or ...out) functions
  • Smart periodic pause functions (eclipse)
  • New rythm generators
  • New methods of Pattern interpolation
  • New utility decorators to write down/produce pieces/tracks with code (as opposed to livecoding)

Features to come...

Easy install

  • Renardo bundle, using Pyinstaller will make the environment easily installable by simply downloading an archive including Python and Renardo.

External TUI to see FoxDot state while playing

  • Independant of the editor in use (FoxDot editor, Pulsar, VIM, VSCod(ium) etc)
  • Interactive displaying of currently active players and their parameters
  • Clock display with multiple configurable modulo based progressbars
  • Error/debug display

REAPER DAW / Vital(ium) Synth integration

  • Reaper projects templates for use with Renardo
  • Instantiation of classic (VST,AU,LV2) plugins via code
  • Automatic mapping of all plugin's parameters for native control from renardo.

Ableton Link clock synchronisation...

  • ...As de facto standard for music software synchronisation and synchronisation with other livecoding environments.

renardo's People

Contributors

aguillon avatar ajtribick avatar ajyoon avatar bcgreen24 avatar berinhard avatar chovin avatar crashserver avatar dirkbosman avatar dyezz avatar e-lie avatar fgonzalez-cespi avatar hughrawlinson avatar ianb avatar ishapenoise avatar jack126guy avatar kfrncs avatar koltesdigital avatar lrs avatar mathigatti avatar moz-ljp avatar mrmebelman avatar oboingo avatar prikhi avatar psykopear avatar qirky avatar roboticmind avatar ryan-kirkbride avatar slink avatar stevearc avatar zbdm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

magicking

renardo's Issues

Implement enhanced hydra.scd player() for Pulsardo and flok for interactive response beside .fft

Enhancement request

It would be great to be able to use functions in Renardo in order to update Hydra code in Pulsar and/or flok via the hydra Player() implemented earlier by KittyClock.

This would give us the possibility to use clock scheduled functions, that changes filter attributes in audio as well as according changes in hydra code via hydra player >> https://gitlab.com/iShapeNoise/foxdot/-/blob/main/FoxDot/osc/scsyndef/hydra.scd?ref_type=heads

Cheers

Config file in FoxDot Editor blank

After trying to keep sc3-plugins activated, I realized the config file is blank. I wanted to do it manually, but it is not there.
Repeat >> Just open the config file via menu

pads command does not work

Hey,

somehow the pads command from the examples doesn't seem to produce any sound, while others (e.g. play or pluck) do.

I tried installing renardo on my up to date Arch Linux machine as described in the Installation guide. I use pipewire-jack, pulsar with pulsardo and start everything by launching the renardo TUI and launching first SuperCollider and then pulsar. I also tried reinstalling everything, including deleting and redownloading the default sample pack.

According to the logs in the renardo TUI it seems like the pad SynthDef is loaded successfully. Do you have any idea what could cause this? Or any way I can debug this?

Thanks for the great work on this!

version `GLIBC_2.38' not found (required by [...]/renardo-0.9.3/renardo-0.9.3/_internal/libpython3.11.so.1.0)

When trying to install and run renardo for the first time in a newly installed O.S. I got the error described

renardo version

0.9.3 (Binary version)

Operating System

Linux Mint 21.3 Cinnamon EDGE edition

Terminal

3.44.0+mint1+vanessa

Installation

Renardo binary tar.gz file

How to reproduce the issue

Extract renardo-0.9.3/tmp/renardo-0.9.3 into downloads
open terminal in Downloads/renardo-0.9.3/renardo-0.9.3
run the following command:
./renardo-0.9.3

Expected behavior

Launch renardo

Actual Output

[23025] Error loading Python lib '/home/[user]/Downloads/renardo-0.9.3/renardo-0.9.3/_internal/libpython3.11.so.1.0': dlopen: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found (required by /home/[user]/Downloads/renardo-0.9.3/renardo-0.9.3/_internal/libpython3.11.so.1.0)

*Where [user] is substituted by the respective username

Pattern inconsistencies list : example with implicit Pattern playstring conversion and other Pattern bugs

In some cases the implicit conversion behind the Pattern class produces unwanted result:

>>> print(PRand([".c..c...","c...c...","....c..."])[:16])

P['.', '.', '.', '.', '.', '.', '.', 'c', '.', '.', '.', '.', 'c', '.', '.', '.']

There are plenty other cases (not involving strings necessarily) that are kinda bugs of the FoxDot/renardo pattern system. If you encounter some please drop them here...

Create concept of track or busses for DJ like mixing

Inspired by KittyClock setup (TODO link the example usage code)

We could for example have high, mid low quick filtering on each track and we can build up good breaks easily while livecoding.

Then several players can be sent to the track.

first start is failing: samples.renardo.org redir error ?

  • launch renardo
  • select Autostart
  • Download renardo default samples pack
SSLError: HTTPSConnectionPool(host='samples.renardo.org', port=443): Max retries exceeded with url: /0_foxdot_default/ (Caused by 
SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate 
(_ssl.c:992)')))
Quitting...

with a web browser, https://samples.renardo.org redirect to a yunohost admin panel ;)

thx for your work,
isAAAc

startup.py file not loaded on startup

Issue

When starting renardo, the lib does not load the startup.py file, due to a wrong relative path setting.

Error

Warning: '/home/user/.local/share/pipx/venvs/renardo/lib/python3.11/site-packages/renardo_lib/lib/Custom/startup.py' startup file not found.

Expected behaviour

Loading the custom file in renardo_lib/Custom/startup.py

Fix

Editing the file renardo_lib/Settings/__init__.py at the line 43 (remove the "/lib"):

FOXDOT_STARTUP_PATH = os.path.realpath(FOXDOT_ROOT + "/Custom/startup.py")

Unsure if there is a more elegant way to do this, but this is useful for temporary fixing the issue

EDIT: typo

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.