Linuxaudio.org presents: New Session Manager Version 1.5.0
## Summary
WARNING!
Next scheduled release (2021-04-15) will switch the default session root
to $XDG_DATA_HOME ( default on most distributions: ~/.local/share/nsm/ )
With Aprils release please prepare to do one of the following:
* Move old sessions to the new root directory (preferred)
* Symlink "~/NSM Sessions" to the new root directory
* use the nsmd --session-root commandline argument.
All changes are made only on the server side, or in the tools we
provide.
Existing sessions, clients, and GUIs remain 100% compatible without
requiring any changes.
Please see the CHANGELOG highlight below.
The project can be found on Github:
https://github.com/linuxaudio/new-session-manager/https://github.com/linuxaudio/new-session-manager/releases/tag/v1.5.0
API Document:
https://linuxaudio.github.io/new-session-manager/api/index.html
## Full Release Announcement:
New Session Manager (NSM) is a tool to assist music production by
grouping standalone programs into sessions. Your workflow becomes easy
to manage, robust and fast by leveraging the full potential of
cooperative applications.
NSM is free in every sense of the word: free of cost, free to share and
use, free of spyware or ads, free-and-open-source.
You can create a session, or project, add programs to it and then use
commands to save, start/stop, hide/show all programs at once, or
individually. At a later date you can then re-open the session and
continue where you left off.
All files belonging to the session will be saved in the same directory.
Check your distributions in a few days for New-Session-Manager 1.5.0
You can find the source release on Github:
https://github.com/linuxaudio/new-session-manager/releases/tag/v1.5.0
Bullet Points
* Drop-In replacement for the non-session-manager daemon nsmd and tools
(e.g. jackpatch)
* Simple and hassle-free build system to make packaging easy
* Possibility to react to sensible bug fixes that would not have been
integrated into original nsmd
* Stay upwards and downwards compatible with original nsmd
* Conservative and hesitant in regards to new features and
behaviour-changes, but possible in principle
* Keep the session-manager separate from the other NON* tools Mixer,
Sequencer and Timeline.
* Protect nsmd from vanishing from the internet one day.
* The goal is to become the de-facto standard music session manager for
Linux distributions
# Changes since new-session-manager v1.4.0 (2020-08-14)
All changes are made only on the server side, or in the tools we
provide.
Existing sessions, clients, and GUIs remain 100% compatible without
requiring any changes.
## nsmd:
* Fix session discovery to not report nested sessions anymore. Also more
robust file system error handling.
* Command line option --quiet: Suppress messages except warnings and
errors
* Protect against orphaned clients or daemons when the server, or even a
GUI, crashes.
* Replace cowboy-slang in info-level OSC with descriptive, technical
messages.
## Legacy-GUI:
* Fix manpage description and usage with the correct executable name
* Fix resizing to very small and back. ( / TheGreatWhiteShark )
## NSM-Proxy:
* Multiple layout and style fixes. Better texts for beginners.
## API:
* NSM_API_VERSION_PATCH from 0 to 1 (1.1.0 -> 1.1.1)
* Please see API document chapter "Changes in API Version 1.1.1"
## Extras:
* This repository now contains extras (libraries, programs,
documentation etc.) Extras are technically not connected to the main
programs of this repository. There is no dependency to any "extra" nor
any license implications. Please read extras/README.md.
* nsm.h was moved to extras/nsm.h
* "extras/pynsm" is now a part of NEW-SM. It was a standalone git repo
until now.
Greetings,
nils
Hello all,
Some people have asked me to provide a bit more documentation
on the state-variable filters I used in zita-eq1 and zita-jacktools.
So I've written a short technical note on this. You can find it at
<http://kokkinizita.linuxaudio.org/papers/digsvfilt.pdf>
Ciao,
--
FA
Hi,
I pushed a new release of the LV2 audio chopper plugin B.Choppr
(successor of B.Slizr). Now you can link different instances of the
plugin via shared data, too.
Github: https://github.com/sjaehn/BChoppr
Demo/Tutorial: https://youtu.be/PuzoxiAs-h8
Have fun
Sven
Hi
Mamba release v2.1 is out
Mamba is a Virtual MIDI keyboard with some extended, unique features.
Key features:
Supports jack-interconnect-ALSA MIDI I/O.
16 Channel Live MIDI Looper
Every channel use it's own Color to display the played Notes per channel.
MIDI File player/recorder
Integrated Fluidsynth support.
NSM support.
Release v2.1:
Add option to allow 2 keys per note in the Custom Key-map Editor, thus
allow setup key bindings for chromatic button accordion.
Add option to use right mouse button for permanent note on event. (Press
again for note off)
Add 'XDG Places' to file selector
Fix some minor bugs and hopefully don't introduce to much new ones.
Mamba is released under the BSD Zero Clause License license
The GUI is build on libxputty - A damn tiny abstraction Layer to create
X11 window/widgets with cairo surfaces
https://github.com/brummer10/libxputty
To build Mamba from source, the following dependencies must be meat.
* libfluidsynth-dev
* libc6-dev
* libsmf-dev
* libcairo2-dev
* libx11-dev
* liblo-dev
* libsigc++-2.0-dev
* libjack-(jackd2)-dev
* libasound2-dev
So, here is the project page:
https://github.com/brummer10/Mamba
and here you'll find the last release:
https://github.com/brummer10/Mamba/releases/tag/v2.1
regards
hermann
Hi,
The MIDI dynamics and vitalization LV2 plugin just got new features. Now
you can share your settings between different instances of the plugin
and thus synchronize the instances.
Key features:
* MIDI velocity amplification and timing manipulation plugin
* Swing and shuffle rhythms
* Pre-generator dynamics
* *Tempo rubato*
* Pattern (sliders) or shape-controlled
* MIDI filters
* Smart quantization
* Group / link individual instances of B.Schaffl
* Free and open source
What's new:
* Shared data: Link controllers between different instances
* New plugin sub-title
* Plugin description
* Bugfixes
Acknowledgements:
* Bart Brouns for the original idea plus subsequent ideas about
principle and features
* Robin Gareus for ideas to technically solve *rubato*-related problems
* Jatin Chowdhury for ideas to technically solve shared data storage
Links
* Project website: https://github.com/sjaehn/BSchaffl
* Features/Tutorial : https://www.youtube.com/watch?v=CBwkYDk5reU
Have fun!
Sven
Am 24.11.20 um 11:40 schrieb David Kastrup:
> Hermann Meyer <brummer-(a)web.de> writes:
>
>> Mamba release v1.9 is out
>>
>> Mamba is a Virtual MIDI keyboard with some extended, unique features.
>>
>> This is a quick fix release as I've forgotten to implement jack MIDI
>> input forwarding to ALSA MIDI output.
> Stupid question: I see you implemented different national keyboard
> layouts that basically define a mapping from characters to physical key
> positions. I think that raw X11 key events might actually encode key
> positions (or numbers based on a particular arrangement of keys) but
> maybe they are not easily available at the layer your key events arrive.
>
> But the actual question is a different one: have you considered offering
> a chromatic button accordion arrangement "on top" of that national
> remapping?
>
> Basically it would mean that a chromatic scale is encoded as
>
> zsexdrcftvgybhunjimko,lp.;[/'] for C system (with a qwerty keyboard,
> starting at C) and
> qazwsxedcrfvtgbyhnujmik,ol.p;/ for B system (again, starting at C).
>
> Finnish G system uses the same scale as C system apart from starting
> with C♯ rather than C in the first row. I can provide images if
> necessary (there are some at
> <https://en.wikipedia.org/wiki/Chromatic_button_accordion>).
>
> Modern CBA keyboards tend to have 5 rows but the inner 2 rows are
> repeats for making transposition and chord fingerings easier and
> basically every player can get along without them at least when doing
> note entry. So whether to offer more than 3 rows depends on whether
> there is an actual use for the numbers and function keys.
>
> The main advantage for CBA players of course is easier entry. The main
> advantage for everyone else would be access to more notes at the same
> time.
>
I've now implemented the possibility to define 2 keys per note within
the Keymap Editor. That enable you to setup a chromatic button
accordion arrangement for Mamba.
The release pact is an informal agreement to aim for shared, scheduled
release dates. We agree to release at least four times a year: January,
April, July and October the 15th. To participate you just need to do a
release. There is no need to register in advance or ask for permission
to participate.
A release is an important step in the development and life of software.
Users look forward to updates and improvements, but they mean additional
work for developers. It is often very hard to decide if and when to
release, so developers tend to wait and postpone. There do not seem to
be any objective, measurable reasons that could lead to a decision.
Therefore we have decided to use time as a basis.
Why should you schedule (at least) four releases per year?
Developer side:
* Incentive to release something. Releases are better than git
progress. They get packaged, they indicate a (relatively) good state of
the program.
* Momentum/Peer Pressure: Other people are going to release, so will I.
* Healthy, Active Community: Being in a developer group that you see
working (by their releases) is a good motivation to do something
yourself.
User side:
* Announcements: Keep the software in the public eye
* Trust. People see that the software is in development and is cared
for.
* The "last updated" date should never be more than 4 months away and
always the current year.
* Swarm Marketing: A small release does not have much impact and won't
get featured often by news sites. A whole group of software releases
demands more attention. At the moment we simply release on the same
date, but in the future this could grow closer together. As in: joined
press statements etc.
Minimum Viable Release:
* "Fixed typo in documentation" should be enough. Especially for
software that has huge release intervals, like a year or longer, there
is public uncertainty if a project is just "working as intended" or
dead. A minor release with minimal changes is still a signal to the
public that the software is not forgotten.
* There is always something to do: Non-Code accomplishments like
writing documentation and user manuals are also a (very good) reason to
release
Where can you announce a release?
* Send a mail to linux-audio-announce(a)lists.linuxaudio.org .No
registration needed for posting, the list is moderated.
* Also send a mail to linux-audio-user(a)lists.linuxaudio.org and
linux-audio-dev(a)lists.linuxaudio.org . Cross-Posting releases is
accepted. These two lists need registration though.
* Submit your release, or the whole software to https://libreav.org
* Post to https://linuxmusicians.com/viewforum.php?f=24
* Submit a new link or text post to https://old.reddit.com/r/linuxaudio/
* Add or update your entry at
https://gitlab.com/nodiscc/awesome-linuxaudio (see
https://gitlab.com/nodiscc/awesome-linuxaudio/-/blob/master/CONTRIBUTING.md
)
* Add or update your software to Wikipedia
* Add or update your software on this wikipedia list
https://en.wikipedia.org/wiki/List_of_Linux_audio_software
* Chat with your developer-peers on freenodes IRC channel #lad (
Libre/Linux Audio Developers )
Miscellaneous
* How to give version numbers: Semantic Versioning https://semver.org/
* Provide release notes and a CHANGELOG
https://keepachangelog.com/en/1.0.0/ ("Don’t let your friends dump git
logs into changelogs.")
* Provide a real release as tarball and/or Github Gitlab release
(resulting in a tarball). Distributions want a stable set of files for
packaging. A git tag alone is not stable.
* Check your software and information (like README, .desktop file, your
own website etc.) if it is up to date. Take inspiration from one of the
many release guides, such as
https://radek.io/2015/11/23/release-checklist/
* The Documentation Compendium: "Why must you document your project? -
Various templates & tips on writing high-quality documentation that
people want to read."
https://github.com/kylelobo/The-Documentation-Compendium#why_document
* Does your software still create (dot-)files directly in the homedir?
Start supporting the XDG Base Directory Specification
https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html