@falktx Dude! This looks amazing! I just bought a bass recently so I'm watching with interest. :) Steve from the open source musician podcast days! Good to see your face again in the video. :)
Why can't Windows be normal?
The USB audio interface feature works pretty much as per standard on Linux and macOS, but on Windows it's a damn mess.
When investigating issues it was funny to see this written on an alternative usb audio implementation:
> Microsoft Windows USB Audio 2.0 driver available since Windows 10, release 1703 expects Full-Speed explicit feedback endpoint wMaxPacketSize to be equal 4, which violates the USB 2.0 Specification.
and other similar things...
🤦♂️ 😡
any TU Berlin students here? there's a brand new Open Source Hardware seminar this semester (MNT will also make an appearance if it happens) and so far only 3 students registered! they need at least 5 to make it work, so if you're interested or know potential candidates at TU, spread the word: https://www.tu.berlin/qw/studium-lehre/lehrveranstaltungen/oshs-open-source-hardware-seminar
@amadeus Does this count? https://kx.studio/screenshots/news/carla-2.2_usage.png
A screenshot from a user project when Carla got CV port support.
(I dont know if they are on mastodon to be able to tag them)
@ercanbrack anyhow, the apps and plugins on the kxstudio are indeed a bit old compared to what they should be, I got too busy and stressed with finishing my main job on time, still not quite done as USB audio is a pain to handle.
the version stuff is just as a way to enforce the packages are from kxstudio and dont get overwritten by distro updates (they would probably differ in functionality)
this is explained as the last note on https://kx.studio/Repositories:FAQ
@ercanbrack I dont really care though.
and I left LM forums quite a while ago due to the incessant shit-posting and ridiculousness going on there. it was the "paradox of tolerance" for quite a while.
@x42 ah got it. but that is what the RTL tool is measuring.
back on Linux I can't run jackd with as low buffer sizes as I can with Windows + ASIO, but 64 frames + 3 periods works fine.
8.2ms with this setup.
The same jackd args on a "real" soundcard (Roland Rubix22) gives me 7.6ms latency.
So it's quite a good result considering the Anagram side runs a full JACK audio graph inside.
@x42 system latency is quite low, I posted some cyclictests some posts ago, but it is roughly around 10us.
not sure what you mean by roundtrip latency here, but this device has 1.3ms total IO latency, so worst case we combine the USB audio latency to this one.
now this gets a bit ridiculous, 8 frames for usb audio buffer size.
gets latency quite low, but easily xrun if playing anything complex in FLStudio.
seems stable/sustainable while there is very little stuff running though.
I like the small deviation in those "distance" numbers (it is how far userspace is from the kernel position in the ringbuffer).
@inviridi I have 6 days to finish this 😁
Linux as a USB audio interface with minimal latency 😀
Hope users will appreciate the effort, the fact that this is running all inside a Linux embed device is quite something...
No external/dedicated USB Audio chips, it's all on the Linux side done in software.
I will take some big holidays after this 🌅 🏖️
Hundreds of thousands of Computers won't be able to upgrade to Windows 11, but that shouldn't make them eWaste.
Kudos to the @kde team for this amazing initiative!
Many people are thinking about ditching various US tech giants so I thought I'd try out how far I can go. I tried living about a month with as little Google, Microsoft, Apple & co as possible!
Here's the video:
https://nebula.tv/videos/techaltar-1-month-without-us-tech-giants
(On Nebula right now, YouTube coming later)
@amadeus You need to statically link plugins to not rely on any external resources. Sadly JUCE changed the default to dynamic link when Jules left...
As for flatpak. Nobody should distribute plugins in that format, it's not just technically wrong (sandboxing DSP) but also violates all plugin standards out there.
We finally got fixed system wide locations standardized (thanks VST3, CLAP, LV2), only for flatpak to come along and ruin it.
@amadeus thanks for the initiative!
reminds me of https://xkcd.com/386/ 😅
@amadeus that sounds like they just need to "lazy load" libcurl instead of linking to it.
JUCE supports this for example https://github.com/juce-framework/JUCE/blob/develop/modules/juce_core/juce_core.h#L155
But not all developers even know it's an option. 🤷
@amadeus I do not know, I only heard some some birds that the latest Push 3 is powered by Linux and has Ableton code inside.
So it is technically "Ableton Live on Linux".
Most likely it comes down to support. Many companies use libraries/frameworks that already support Linux. But these companies have no experience with Linux and don't think the expense is justified.
I have seen Linux builds that do run, but due to support costs companies prefer to keep it at macOS + Windows only.
@amadeus by the way there are several issues regarding the licenses of the frameworks, critical ones at that.
LV2 is liberally licensed https://gitlab.com/lv2/lv2/-/blob/main/COPYING
It is not under GPL as the page states, please correct it.
Also VST3 SDK is not free for non-commercial. it is GPLv3+ alike JUCE where you can use it on GPL projects but proprietary software needs a license. (*)
Anyone can make a commercial + open-source VST3 plugin, no limitations there.
* VST3 has a GPL-incompatible clause