Unlike a lot of people, I strangely like to have my individual non-mixed tracks located in one flat folder and any mixes (such as Ministry Of Sound mix albums, etc…) go into another folder sorted by Albums in separate folders. I also embed all of my MP3s with the album art from the album it is from so they are fully portable across a multi-tude of systems.
Therefore, I want my original system kept as is for me, but software like Windows Media Center annoyingly requires you to have it structured in the ‘Album Artist -> Album’ directory structure with the album art stored as ‘Folder.jpg’.
I will not be ranting about how rubbish that required structure is on a technical level; I have got over that now :). But instead, I wrote a PERL script that runs on my Linux NAS that does the following:
Only runs on Linux – if anyone wants to code link support in for Windows / NTFS partitions, please go ahead and mail back the changes.
Scans a directory (–mp3dir) (recursion is optional using –recursive) for MP3s / M3U playlists and creates softlinks pointing back to the original files under the ‘Album Artist\Album’ folder structure within –linksdir.
The embedded album art is then checked across the album being processed to ensure it is the same – if not, a Warning is output leaving you to fix it. The embedded album art is created as ‘Folder.jpg’ for Windows Media Center.
If you want it to delete soft links for tracks / directories that no longer exist in –linksdir (i.e. if you have moved / renamed the original file), you can use –delnonexists.
On the off chance you want the –linksdir within the directory structure of –mp3dir, you can use –excludemp3dir to ensure the –linksdir isn’t double scanned.
For the first run, I strongly recommend not using the –createlinks switch so you can view any errors you may get.
You need to have the library MP3::Tag installed for this to run – you can get this from CPAN.
Tksolfege is an ear training program for learning to recognize chords, intervals, perform rhythm dictation, solfege dictation and singing solfege sequences. The program requires Tcl/Tk 8.4, however the Windows executable has Tcl/Tk builtin.
Features:
The program contains ear training exercises for the identification of chords, musical intervals, key signatures, musical scales, and cadences.
PipeWire is a project that aims to greatly improve handling of audio and video under Linux. It provides a low-latency, graph-based processing engine on top of audio and video devices that can be used to support the use cases currently handled by both PulseAudio and JACK. PipeWire was designed with a powerful security model that makes interacting with audio and video devices from containerized applications easy, with support for Flatpak applications being the primary goal. Alongside Wayland and Flatpak, we expect PipeWire to provide a core building block for the future of Linux application development.
Capture and playback of audio and video with minimal latency.
Real-time multimedia processing on audio and video.
Multiprocess architecture to let applications share multimedia content.
Seamless support for PulseAudio, JACK, ALSA, and GStreamer applications.
Sandboxed applications support. See Flatpak for more info.
ReSampler is a high-performance command-line audio sample rate conversion tool which can convert audio file formats with a variety of different bit-depths and audio channel configurations. ReSampler compiles and runs on Windows, Linux and macOS
Podfetch is a self-hosted cross-platform podcast manager. It is a web app that lets you download podcasts and listen to them online. It is written in Rust and uses React for the frontend. It also contains a GPodder integration so you can continue using your current podcast app.
SuperCollider is a platform for audio synthesis and algorithmic composition, used by musicians, artists, and researchers working with sound. It consists of:
scsynth, a real-time audio server with hundreds of unit generators (“UGens”) for audio analysis, synthesis, and processing
supernova, an alternative server to scsynth with support for parallel DSP on multi-core processors
sclang, an interpreted programming language that controls the servers
scide, an editing environment for sclang with an integrated help system
sclang comes with its own package manager, called Quarks. scsynth and supernova both support third-party plugins via C and C++ APIs.