Date | Commit message (Collapse) |
|
Ruby 2.2.0dev does not bundle the "curses" gem anymore.
Note: not a hard RubyGem dependency since dtas-console is optional.
|
|
splitfx is incapable of knowing in 100% of cases whether dithering
should be used (as it has no visibility into sox internals), so
support disabling it completely via command-line.
This is like the identical sox option, and passed to sox(1), too.
This feature is useful for splitting already-mastered 16-bit
recordings.
|
|
Using a regexp to match trackIDs is probably not intended
by the user.
|
|
dtas-partstats divides large audio files into small partitions (10
seconds by default) and runs the "stats" effect of sox(1) against each
partition.
Currently it emits space-delimited output, but configurable output
options (including Sequel/SQLite) support is coming.
The intended use of this tool is for quickly finding the loudest
portions of a given recording without the need for a graphical viewer.
This can be useful for selectively applying (and testing the results of)
dynamic range compression filters.
Use with sort(1) in a pipeline is recommended in this scenario
(but again, Sequel support is coming).
|
|
It is easier to break out of dtas-console with one key than using a
2-finger combination.
|
|
We must not assume the temporary file remains in place while
$EDITOR/$VISUAL is running, as it is common for editors to rename
over a file to atomically replace existing files.
|
|
This behaves like "goto", but takes a regular expression
instead of a track_id
|
|
Shorten these commands since they're frequently used and
to make eventual tab completion easier.
|
|
This is implemented in client space, as the MPRIS 2.0
spec does not say this needs to be implemented at all...
|
|
We may get a pause event when we do not have a valid current
hash.
|
|
It's easier to handle the client and player to be in different
directories (and we also do this for dtas-enq(1))
|
|
This adds a bunch of tracks sequentially to the end of the tracklist
|
|
This should allow us to repeat through a list of tracks with relative
ease. There is a rudimentary dtas-tl client implemented. This
may be removed in the future.
|
|
This seems to be working out nicely. Having a basic integration
test should be enough to get us started for now.
|
|
This is lacking tests and documentation, but it works from
a old trivial sample I had from a recording I previously
split using plain POSIX shell
splitfx is like make(1) for splitting and minor audio
editing. It also allows any number of effects.
|
|
Lightly tested, but this seems to work.
|
|
This allows me to hit Ctrl-C on a dtas-player(1) process, wait on
termination of the player, and immediately restart it without
worrying about sink conflicts upon restart.
Before this change, sinks would continue running for a bit
(depending on buffer sizes).
|
|
We also do this for our defaults sinks, as multiple sinks makes
the meter output of play(1) annoying
|
|
This should make it easy to save/load sink profiles depending on
the users mood. One could easily create different profiles
depending on different listening criteria.
dtas-ctl source cat sox > casual.yml
dtas-sourceedit sox < critical.yml
|
|
We don't need it since IO#read(bytes, buf) will convert to
ASCII-8BIT anyways. Everywhere else, we ensure path names are
already binary. We do this mainly at the client layer before using
Shellwords to escape the paths.
We also must be careful about parsing output from soxi/avprobe
which can show us metadata in whatever encoding is in the file.
We must still handle data from parsing command output as binary,
as the encoding of file metadata tends to vary.
This also should buy us Syck compatibility for Ruby 1.9.3 users
on Debian systems where Ruby 1.9.3 still uses Syck.
|
|
Lightly-tested, but this seems to work.
|
|
All files we distribute in the tarball need to have a
copyright/license specified for Savannah.
We don't need the example state file anymore.
|
|
These two are similar enough that it's possible to share
some code between them and also increase user-friendliness
at the same time.
|
|
We should be fully-capable of managing any number of options
to try sources in.
|
|
It's useful to show inactive ReplayGain values, as users may
switch between the defaults and non-default values frequently.
|
|
This also matches the KEY_UP and KEY_DOWN behavior, and probably(?)
makes more sense.
|
|
Add hotkeys for the (probably) frequently changed ReplayGain mode,
preamp and fallback_gain parameters. And display the RGFX volume
change.
While we're at it, we'll display the format info to get a better
idea of what we're decoding and playing to.
|
|
Oops, not everybody has their VISUAL or EDITOR environment set.
|
|
I haven't figured out what to do with this, yet, since I have yet
to find and ASCII-art capable grapher in Ruby. This was intended
to become dtas-ps, but maybe that'll be something else...
|
|
dtas-xdelay is shorter and easier-to-type. The "play" in the name
is also not entirely accurate, as it is capable of using plain
"sox", too.
|
|
Occasionally we will play the output of a command, just display
that.
|
|
Omitting a command: entry or an entry inside env: should delete
it from the player
|
|
|