Article 6CPM1 Aletheia command-line media player (mplayer backend) with unique pitch controls. (SlackBuild included)

Aletheia command-line media player (mplayer backend) with unique pitch controls. (SlackBuild included)

by
apeitheo
from LinuxQuestions.org on (#6CPM1)
This is my personal project I have been working on for about two years. It's bash script, but it utilizes mplayer to play music, so the final release should support everything that mplayer does, if desired (currently flac and mp3 are supported for Music, and mp4, mkv, and webm for video, but it's a dead simple -o -iname "*wma" (or whatever) away in the appropriate find commands, for example.

https://github.com/apeitheo/aletheia

Today marks one year since I released the code I had been working on for around a year at that point on my Patreon page, and set it at version 0.1, even if it wasn't perfect or ready for public use based on the recommendation of a family member. To mark this milestone, I have decided to release the current development source code that is near release of Aletheia to GitHub. I'm a long-time member of LQ and lurk here and find the community here a refreshing take in a world filled with all kinds of social media designed to feed you with ads. If the code doesn't meet anyone's standard of quality, I'm open to code suggestions, critique, etc, and will adjust accordingly if what you are saying has merit. This is my first coding project besides a command-line tools years ago to batch adjust ID3 tags in media files based on names and other factors. I lost the code for that years ago and thought I would never code anything significant. The project has made significant progress and is now very close to the 0.9.6 version, aiming for an official 1.0 stable release.

I have set up an account and uploaded the current development code for Aletheia, along with the manual (manpage) and scripts for creating packaged versions for popular distributions. The supported distributions initially include RPM, DEB, and Slackware-based distributions. Additionally, I have included a simple script for clean installation and uninstallation to /usr/local or DESTDIR in case you want to make your own SlackBuild. I haven't used Slackware in years, but it runs on Fedora with pkgtools installed. Testing is, of course, highly appreciated before I go about submitting to SBo as I haven't written a SlackBuild in years either and rworkman and I lost touch (used to be a user of Slackware and was a contributor on SBo for a handful of scripts). Aletheia runs fine on my machine, but if you're afraid of running unknown code (as a general rule, you should be, but I stand by what I've submitted provided it gets the proper testing. Install in a VM and give it a whirl. It does have the ability to remove files, but as of right now it only moves them to ~/.aletheia/deleted, to ensure that no files are lost. Maybe someone can even try it out on Windows using the Windows Subsystem for Linux and let me know how it works! The only Windows machine I currently have access to has a 32-bit OS installed for compatibility reasons, which isn't supported by WSL as far as I'm aware. Audio control with pactl won't work on Windows, I imagine, and I'm not even certain it works on Slackware, but support for other volume control command-line tools is easy to add support for in just a few minutes.

I welcome anyone interested in reading, testing, and contributing to the code and look forward to something that's actually a valuable contribution to the community I've taken from for so long, but was never able to give back to in a way I felt was truly useful.

The upcoming 0.9.6 release brings exciting features such as customizable loop markers, real-time adjustment of pitch and tempo, and the ability to lock loops and interval adjustments using key controls. It offers support for any Equal Division of the Octave (EDO) system, with a default of 60. Switching between EDOs is straightforward, and adjusting the interval size can be easily done. The loop editor, introduced in version 0.9.5, has been further enhanced, allowing users to create, export, and play loops in high quality. However, thorough ideally I'd like to see some major testing before the final release to make sure it meets free software quality standards and is as secure as possible.

I would argue that it is on par with other command-line media players at this point. There is still more work to be done, and I encourage testers and individuals interested in contributing to the project in any way you can if you find it useful and see the potential. As Aletheia is entirely written in bash script, it is easily readable, understandable, and modifiable for those familiar with SlackBuilds and Slackware.

Currently, Aletheia supports Linux, of course, but I started working on support for MacOS. While most functionalities are expected to work on WSL2 for Windows, except for the volume control, it remains untested. Although a web interface exists, it is still in its early stages compared to the core Aletheia code and will not be released at this time. While I would like to see an interface for Android, beyond the web interface, it is uncertain if it will be realized.

To assist users who are visually impaired or require assistance, Aletheia supports voice feedback for most functionality. This feature proves beneficial for understanding key controls or providing immediate guidance. By default, it connects to Google's servers to generate voice clips, which are cached to avoid repeated requests. Additionally, the final release is likely to include a digital voice using espeak-ng for the local and faster voice generation that was default in older versions.

I welcome any suggestions on improving the accessibility features, especially those that may not have been considered. I forget what the project is called, but I believe there is a member on here who works on a Slackware-based distribution specifically with accessibility in mind. The program includes a couple of pages dedicated to key controls, accessible at any time using the '?' key or available in the menu with the ability to speak the controls, though I suggest reading or listening to the manpage that comes with it to get an understanding of how best to use Aletheia effectively.

If possible, plans for the distant future include adding support to the VLC codebase with the specific kind of interval control that Aletheia uses to allow for mobile use of the functionality without ever making an app of my own.

Enjoy using Aletheia if you decide to try it! Thanks for the interest!
External Content
Source RSS or Atom Feed
Feed Location https://feeds.feedburner.com/linuxquestions/latest
Feed Title LinuxQuestions.org
Feed Link https://www.linuxquestions.org/questions/
Reply 0 comments