GithubHelp home page GithubHelp logo

mus264 / 264-tools Goto Github PK

View Code? Open in Web Editor NEW
57.0 9.0 9.0 2.91 MB

:musical_keyboard: Modular sound playback, processing, & performance tools for students of Max and live electronics at Harvard University

License: GNU General Public License v3.0

Max 99.22% JavaScript 0.78%
music audio sound midi-controller maxmsp package library signal-processing signal-analysis dsp

264-tools's People

Contributors

delucis avatar julienvincenot 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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar

264-tools's Issues

Create `key` shortcut module

Add module that makes using keyboard shortcuts easy, using key + sel analogous to 264.midi-learn

Features:

  • enable/disable shortcut
  • allow “toggle” functionality using keyup as well as key
  • store shortcuts in 264.midi-presets
  • toggle to enable/disable shift modifier (Max’s ASCII codes already distinguish shift presses sufficiently)

sflist~ bug impacting 264.sfplay~

Just reported an apparent Max 8 bug to @Cycling74 that impacts 264.sfplay~.

We depend on sflist~ outputting preload and preload_error messages to detect when a file has been loaded, but it appears that in recent versions of Max sflist~ no longer outputs these so there’s no way to detect if a file has been preloaded successfully or not.

Impact

  • Can’t hide a “file loading…” overlay once preloading is complete. For now, I have hidden this overlay entirely.

  • Can’t show the currently loaded filename once it is loaded.

  • Our seek functionality also relied on these messages so currently you can’t scroll to a time point with 264.sfplay~ or play from a specific position in a file as part of a cue.

Post here if you spot any other odd behaviour you think might be related!

Update, 23 Jan 2023

Confirmed the bug is only present in Max 8.3 and up. Until this is fixed, we recommend using Max 8.2!

Update, 26 Jan 2023

Response from Cycling '74 support:

I am able to reproduce this error and have brought it to the attention of engineering to take a look at.

Complete helpfiles

Currently in progress in the helpfiles branch.

Control

  • 264.go!
  • 264.tog

Presets

  • 264.audio-presets
  • 264.midi-presets
  • 264.midi-learn

Utility

  • 264.fullscreen
  • 264.lockstatus

Audio

Processing

  • 264.delay~
  • 264.filter~
  • 264.freeze~
  • 264.gate~
  • 264.grains~
  • 264.limit~
  • 264.reverb~
  • 264.ringmod~
  • 264.transpose~

Analysis

  • 264.envelope~
  • 264.pitchtrack~
  • 264.trigger~

Sound Files

  • 264.sfplay~
  • 264.sfrecord~
  • 264.loop~

Utility

  • 264.audiotest~

64-bit Windows Issues

I'm having some issues loading 264 Tools in 64-bit Max 8 on Windows 10. Specifically, no modules are loaded and the console displays the following error on startup:

Could not load package '264 Tools', 64-bit architecture unsupported.

I just cloned this repo directly into ~/Documents/Max 8/Packages. Here's my Max version information:

When I attempt to manually load patches like the module finder, I get errors related to jsui: can't find file 264.helptext.js. Happy to provide any other information required for debugging, thanks!

Improve 264.sfplay~ sound file loading

Currently files are loaded into an sfplay~ object using the open message. Any file loaded — including from the drop-down menu — has to be read from disk every time. The delay before a file is fully loaded makes play messages fail if they arrive before the file finishes loading.

Preloading all files in soundfiles/ into an sflist~ would alleviate that delay. However, each 264.sfplay~ module would load its own independent sflist~ (although they would all be identical, there is no way to share sflist~ names to consolidate the memory usage). This, coupled with a potentially large number of sound files, might create a heavy demand on available memory.

Another solution might be to introduce an internal buffer for messages that depend on files being loaded. When a file starts loading, the play/stop/pause input might be cached temporarily and only fed through to the internal sfplay~ once the file is loaded. (Or, if that is impossible to detect, using defer?)

Create documentation for non-user-facing patches

Some patches are not designed to be used outside of other 264 Tools modules, but should probably be documented nonetheless.

To do

Reference

  • 264.pattr-control
  • 264.preset-toggle

Help files

  • 264.pattr-control
  • 264.preset-toggle

Complete reference

Currently in progress in the documentation branch.

Control

  • 264.go!
  • 264.tog

Presets

  • 264.audio-presets
  • 264.midi-presets
  • 264.midi-learn

Utility

  • 264.fullscreen
  • 264.lockstatus

Audio

Processing

  • 264.delay~
  • 264.filter~
  • 264.freeze~
  • 264.grains~
  • 264.limit~
  • 264.reverb~
  • 264.ringmod~
  • 264.transpose~

Analysis

  • 264.envelope~
  • 264.trigger~
  • 264.pitchtrack~

Sound Files

  • 264.sfplay~
  • 264.sfrecord~
  • 264.loop~

Utility

  • 264.audiotest~

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.