# dtas - duct tape audio suite for *nix
Free Software command-line tools for audio playback, mastering, and whatever else related to audio. dtas follows the worse-is-better philosophy and acts as duct tape to combine existing command-line tools for flexibility and ease-of-development. dtas is currently implemented in Ruby (and some embedded shell), but may use other languages in the future.
Primary executables available are:
dtas-player - gapless music player (or pipeline/process manager :P)
dtas-cueedit - embedded cuesheet editor (FLAC-only for now)
dtas-splitfx - split audio and apply effects to all tracks
The centerpiece is dtas-player, a gapless music player designed to aid in writing scripts for sox/ecasound use. Unlike monolithic music players, dtas-player is close to a *nix shell in functionality, allowing for the execution of arbitrary commands as sources, filters, and sinks for audio. dtas-player supports:
any DSP effects offered by SoX, ecasound, LADSPA, LV2, etc..
multiple outputs for playback (including dumping audio to files or piping to arbitrary commands)
ReplayGain (including fallback gain and peak normalization)
dtas-player is a *nix pipeline and process manager. It may be used spawn and pipe to arbitrary Unix commands, not just audio-related commands. It can interactively restart/replace the source (audio decoder) component of a pipeline while keeping the sink (playback endpoint) running.
Users of dtas-player will also be interested in the following scripts:
dtas-ctl - “raw” command-line scripting interface for dtas-player
dtas-enq - enqueue files/commands for dtas-player
dtas-msinkctl - enable/disable multiple sinks with one command
dtas-console - rudimentary curses interface for dtas-player
dtas-sinkedit - edit sinks (playback targets) for dtas-player
dtas-sourceedit - edit source (decoder process parameters) for dtas-player
dtas-xdelay - alternative sink for dtas-player
dtas-tl - command-line helpers for tracklist functionality in dtas-player
All scripts have some documentation in the Documentation/ directory or manpages distributed with the gem. Documentation is also available on 80x24.org/dtas/$COMMAND.txt in plain-text form.
dtas exposes no public APIs outside of command-line and YAML text. dtas is aimed at users familiar with the *nix command-line and editing text files. Familiarity with the Ruby programming language is absolutely NOT required.
mpd (Music Player Daemon) bridge for partial dtas-player control
MPRIS/MPRIS 2.0 bridge for partial dtas-player control
whatever command-line tools come to mind…
better error handling, many bugfixes, etc…
## Source code
git clone https://80x24.org/dtas.git
Please use git-format-patch(1) and git-send-email(1) distributed with the git(7) suite for generating and sending patches. Please format pull requests with the git-request-pull(1) script (also distributed with git(7)) and send them via email to <[email protected]>.
See www.git-scm.com/ for more information on git.
All feedback (comments, results, feature requests, bug reports, patches, pull-requests) via plain-text mail to the mailing list is very much appreciated.
Please send plain-text mail to the list at <[email protected]> HTML mail will not be read. dtas is for GUI-phobes, by GUI-phobes. Mailing list archives available at <80x24.org/dtas-all/> or <lists.gnu.org/archive/html/dtas-all/>.
No subscription is necessary to post to the mailing list. You may also read via: NNTP: <nntp://news.public-inbox.org/inbox.comp.audio.dtas> <nntp://news.gmane.org/gmane.comp.audio.dtas.general> Atom: <80x24.org/dtas-all/new.atom>
dtas is copyrighted Free Software by all contributors, see logs in revision control for names and email addresses of all of them.
dtas is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
dtas is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, see www.gnu.org/licenses/gpl-3.0.txt
Note: The GPL does not and can not apply to external commands run by dtas scripts, so users may run any non-Free Software they want via dtas (just like one may do so via bash). However, the dtas project does not endorse or support the use of any non-Free Software.