Can this somehow be used to edit a file on a system remotely? Say I have some .wav's on a raspberryPi, can I publish them, edit, send them back to that raspberryPi?
Because that seems to me to be a very awesome use-case ..
There was a lot of discussion back when Audacity decided to make some changes. I don't remember what they were specifically, but I do remember a few threads here about forks of the project. I don't remember the name wavvy, so maybe this is another fork. I was thinking the fork discussed here previously also was a play on the "*city" name as well.
Wow, this is incredible! I was not expecting it to work on mobile Safari of all things, but it does! The UI is even usable.
Audacity is an indispensable utility. It’s great to see it and other “real” software on the web. I’m reminded of Photopea[1] which is a web clone of Photoshop.
> Audacity is an indispensable utility. It’s great to see it and other “real” software on the web.
It's been a very long time since I used it, but didn't Audacity turn evil, add a bunch of networking code it never needed before, and start spying on people? (https://fosspost.org/audacity-is-now-a-spyware/). I remember people reverting to older "safe" versions.
I guess that doesn't much matter for this web app since it's collecting your IP and data by design (their privacy policy seems very vague and handwavy), but for the desktop app it seemed like kind of a big deal at the time.
I'll never understand peoples' obsession with equating telemetry with spyware. As an application developer, I need to know that my application is working appropriately for my users. It's not sufficient to rely on manual bug reports. If someone doesn't like that, then that's perfectly fine in my opinion. Just don't use the product. To accuse an application developer of spying on users is a bit much imo.
According to that link, all the browsers do implement the non-experimental parts of that API. The other features seem to be ones that Chrome has shipped unilaterally - the links to the standards docs seem to only have Google authors for those bits.
I agree that it running on mobile safari is incredible - I wouldn’t call the UI ‘usable’ though, it’s a straight duplicate of the desktop UI, which isn’t geared for mobile by any stretch of the imagination, and is actually unusable on my iPhone due to (I assume) far too small a clickable area for most controls.
A UI rework to incorporate mobile-friendly design would be a ton of effort, but it would really take this project to the next level!
Does EVERY desktop application really need to run on mobile? Some apps are just... call me crazy... desktop apps! (NOTE: "native vs. browser-based" is separate distinction from "desktop vs. mobile".)
That's not to say that there can't be mobile audio apps, or mobile whatever. I just think that's a separate app, and should be designed and written as a mobile app from conception.
I realize that a large cohort finds desktop applications uncool today, but I'm just so frustrated with the idea that serious and powerful desktop interfaces need to crippled in order to fit into a "mobile-first" (a.k.a. "lowest-common denominator") paradigm. For audio listening, that's fine. But for serious audio creation and editing? FUCK an iPhone, sheesh.
Are you using an old iPhone with a tiny screen or have you not tried turning it sideways? It's extremely usable in landscape. My sausage fingers don't have trouble hitting any buttons.
Wow this is just incredible! Seeing this and software like photopea I can now start to feel that HTML has become powerful enough that almost any desktop app can now be built for the web just as same.
A lot of people/companies tried their best to impede this progress (1) for promoting app stores but I'm so glad we are finally getting there regardless. Better late than never!
Can anyone summarize how this works. Guessing Audacity is some C++ program. How did they take all the dependencies and make them work on browser, using WASM? What about the frontend? Is the UI just completely re-written?
wxWidgets uses native controls, so just compiling to "WebAssembly" (I'm assuming it's compiled to WebAssembly, plus some JavaScript for DOM manipulation) was probably a significant amount of work. I'm actually curious how it was done!
Alright, it's at a kind of uncanny valley situation where we have Windows XP applications running real-time in our browsers. Is the end-game just a universal sandboxed VM that's cross-platform? What do we do next?
For better or for worse, that's what Google is aiming at with ChromeOS. Especially now that the overarching "OS" is really just a Linux shell for multiple VMs.
People often claim that ChromeOS is versatile enough to replace a normal computer because it has these various compatibility layers. They often fail to mention that they work terribly. You wind up with the poor performance and annoying isolation that VMs give, but with an extra helping of instability and incompatibility. Running anything Google hasn't approved is gated behind "developer mode", and even for a developer the pseudo-Debian container "developer mode" unlocks is confusing. I regularly encounter problems (like needing to run Wireshark) that I believe are simply unsolvable.
I don't understand anything about ChromeOS. At one point it was a bad but clear idea: a machine with just a web browser, capable only of running web apps. Then at some point they decided to just make the world's most complicated and confusing Linux distro, with the vestigial browser-centric design kept around just to make things as inconsistent as possible.
FWIW: native audacity (literally the debian package) runs in ChromeOS as a wayland/somellier client from crostini. Basically everything not tied to particular driver or hardware environments runs great.
The whole OS is really the best "app fusion" desktop environment out there. I've got Android apps for Threads and Tesla running alongside all the web apps you'd expect to find. I've got my personal email via linux Thunderbird. I read my PDFs in Evince (because, let's be honest, both the Chrome and Adobe readers are junk) and it integrates with the native ChromeOS Files app like a normal app. In fact all the Gnome .desktop files in the Crostini personality appear as apps in the OS menu that can be associated with files types or pinned to the shelf, so there's a surprising amount of scriptability to the process. Likewise it makes a great X terminal for shells and emacs windows from development machines.
In fact I've moved (to be fair: for professional reasons, and I resisted for quite a while) to a mid-tier junky old Chromebook for basically all my client activity at this point (windows games being the sole exception). Really it's pretty great. The proverbial year of Linux on the desktop arrived and won while we were all looking elsewhere.
Fun fact: when you don't give a shit about whether your UI looks like what "the OS looks like" (no offense to Tantacrul, but audacity clearly doesn't), you can get a surprising amount of work done. This isn't a Windows XP application, it looked like this well before Windows XP existed.
Audacity is a cross-platform app that runs on (at least) Linux, macOS and windows (I suspect most other *nixes are supported to).
Also, note that most creative apps (music, video, art) do not follow the UI guidelines for any particular OS platform (partly because they tend to be cross-platform, partly because their needs are very different from office productivity and communications apps. This is true even when the apps are nominally made by Apple for Apple (see Logic Pro or FCP for examples).
Finally, Tantacrul has zero responsibility for the UI appearance of the Audacity that Wavacity is based on.
I strongly support using OSS every chance I have, and do what I can as a non-programmer to support OSS projects, but as someone who trained on industry standards for audio editing (since the 1990s, starting with Syntrillium’s Cool Edit Pro) I found Audacity quite difficult to use. I really don’t understand this philosophy that prefers when applications lack any cohesive visual design language. “Designed by engineers” is every bit as problematic to me as “engineering by designers”.
The next step will be the same stack except the browser engine will be running in """The Cloud""" and streamed to your consumption-only device like an OnLive/Stadia/PSNow game. Everything already has dedicated video-decoding hardware so it will probably be sold as better for battery life to rely on that instead of the unpredictable load of your own local OS and browser engine.
Recompile Chromium for webasm. Run Chromium in Chromium in Chromium…
Then add Firefox into the mix.
(Being facetious of course, not wishing to put down managing to get an Audacity port running this way which is cool and even potentially useful (should you find yourself desperately in need of an audio editor in a place where you can't install software packages)).
Back in the 80s, when 90% of software development consisted of using a database and the tooling provided by the database supplier, and creating a front end to enter/edit/view the database contents, the results were called "applications".
In the 2020s, when 90% of software development consists of using a database, tooling supplied by various open source projects and some choice of web front- and backends to create a front end to enter/edit/view the database contents, the results are called "apps".
Honestly it's just so hurtful to me how confined & narrow opinions are on what the web should be, on what should be allowed, for what it can be.
This sort of stuff is so prime to me, so excellent.
There's plenty of scary platforms about, less than great sites, sure. But there is no other connected medium available for humanity.
And to let the Fear Uncertainty & Doubt - or to let IMHO pitiful pointless sad grumbling about performance - dog us down is is to miss such huge potential, to grow & expand & improve, in unconstrained & vast greatness. This sort of shit is so excellent. Yes you can. And anyone with any kind of computing device can tune in & try it. Heck yeah!
We need to split the web into documents and apps, in my opinion.
We still don't have a standard HTML text editor, instead relying on hundreds of Incompatible WYSIWYG editors which all produce custom output, or worse (much, much worse) the abomination that is MarkDown. Every browser should be an editor which all produce standardized output.
In 2023, we're still relying on asterisk, hash marks and underscores to format text, while simultaneously being able to run full fledged audio editors. It's ridiculous.
https://news.ycombinator.com/item?id=32688646
https://news.ycombinator.com/item?id=32692882
The world needs more folks to take initiative like this.
Maybe add a description and URL in the repo settings? https://github.com/ahilss/wavacity
(and linking back to the GitHub from Wavacity would be nice too, as right now it's not obvious it's available)
Because that seems to me to be a very awesome use-case ..
Audacity is an indispensable utility. It’s great to see it and other “real” software on the web. I’m reminded of Photopea[1] which is a web clone of Photoshop.
[1]: https://www.photopea.com/
It's been a very long time since I used it, but didn't Audacity turn evil, add a bunch of networking code it never needed before, and start spying on people? (https://fosspost.org/audacity-is-now-a-spyware/). I remember people reverting to older "safe" versions.
I guess that doesn't much matter for this web app since it's collecting your IP and data by design (their privacy policy seems very vague and handwavy), but for the desktop app it seemed like kind of a big deal at the time.
https://developer.mozilla.org/en-US/docs/Web/API/File_System...
A UI rework to incorporate mobile-friendly design would be a ton of effort, but it would really take this project to the next level!
That's not to say that there can't be mobile audio apps, or mobile whatever. I just think that's a separate app, and should be designed and written as a mobile app from conception.
I realize that a large cohort finds desktop applications uncool today, but I'm just so frustrated with the idea that serious and powerful desktop interfaces need to crippled in order to fit into a "mobile-first" (a.k.a. "lowest-common denominator") paradigm. For audio listening, that's fine. But for serious audio creation and editing? FUCK an iPhone, sheesh.
So yes, this is a WebAssembly app. It loads a 5.2MB .wasm file and 2.3MB .data file.
Neat, isn't it?
Edit I guess the wxWidgets lib is smaller, as it is more incomplete.
A lot of people/companies tried their best to impede this progress (1) for promoting app stores but I'm so glad we are finally getting there regardless. Better late than never!
(1) https://thenewstack.io/apples-browser-engine-ban-is-holding-...
https://github.com/ahilss/wavacity
Remarkable.
Edit: the previous submission had a helpful thread on this very topic: https://news.ycombinator.com/item?id=32689423
https://chromium.googlesource.com/chromium/src/+/main/docs/l...
I don't understand anything about ChromeOS. At one point it was a bad but clear idea: a machine with just a web browser, capable only of running web apps. Then at some point they decided to just make the world's most complicated and confusing Linux distro, with the vestigial browser-centric design kept around just to make things as inconsistent as possible.
The whole OS is really the best "app fusion" desktop environment out there. I've got Android apps for Threads and Tesla running alongside all the web apps you'd expect to find. I've got my personal email via linux Thunderbird. I read my PDFs in Evince (because, let's be honest, both the Chrome and Adobe readers are junk) and it integrates with the native ChromeOS Files app like a normal app. In fact all the Gnome .desktop files in the Crostini personality appear as apps in the OS menu that can be associated with files types or pinned to the shelf, so there's a surprising amount of scriptability to the process. Likewise it makes a great X terminal for shells and emacs windows from development machines.
In fact I've moved (to be fair: for professional reasons, and I resisted for quite a while) to a mid-tier junky old Chromebook for basically all my client activity at this point (windows games being the sole exception). Really it's pretty great. The proverbial year of Linux on the desktop arrived and won while we were all looking elsewhere.
Also, note that most creative apps (music, video, art) do not follow the UI guidelines for any particular OS platform (partly because they tend to be cross-platform, partly because their needs are very different from office productivity and communications apps. This is true even when the apps are nominally made by Apple for Apple (see Logic Pro or FCP for examples).
Finally, Tantacrul has zero responsibility for the UI appearance of the Audacity that Wavacity is based on.
Blender, Houdini, 3DCoat, Photoshop, Krita, FL Studio, Bitwig... all of them use their own UI widget.
The next step will be the same stack except the browser engine will be running in """The Cloud""" and streamed to your consumption-only device like an OnLive/Stadia/PSNow game. Everything already has dedicated video-decoding hardware so it will probably be sold as better for battery life to rely on that instead of the unpredictable load of your own local OS and browser engine.
Recompile Chromium for webasm. Run Chromium in Chromium in Chromium…
Then add Firefox into the mix.
(Being facetious of course, not wishing to put down managing to get an Audacity port running this way which is cool and even potentially useful (should you find yourself desperately in need of an audio editor in a place where you can't install software packages)).
On the right, we have more layers, so we must boot a VM in the browser, visit the same webpage, boot a vm on that page, and then run wavacity in that.
My heart will go on.
In the 2020s, when 90% of software development consists of using a database, tooling supplied by various open source projects and some choice of web front- and backends to create a front end to enter/edit/view the database contents, the results are called "apps".
plus ça change, plus c'est la même chose
Though if you call the PNG file that's a menu for your restaurant an app, that's just wrong.
This sort of stuff is so prime to me, so excellent.
There's plenty of scary platforms about, less than great sites, sure. But there is no other connected medium available for humanity.
And to let the Fear Uncertainty & Doubt - or to let IMHO pitiful pointless sad grumbling about performance - dog us down is is to miss such huge potential, to grow & expand & improve, in unconstrained & vast greatness. This sort of shit is so excellent. Yes you can. And anyone with any kind of computing device can tune in & try it. Heck yeah!
We still don't have a standard HTML text editor, instead relying on hundreds of Incompatible WYSIWYG editors which all produce custom output, or worse (much, much worse) the abomination that is MarkDown. Every browser should be an editor which all produce standardized output.
In 2023, we're still relying on asterisk, hash marks and underscores to format text, while simultaneously being able to run full fledged audio editors. It's ridiculous.
Notepad.
https://www.destroyallsoftware.com/talks/the-birth-and-death...