Date | Commit message (Collapse) |
|
Using the 'update-copyright' script from gnulib[1]:
git ls-files | UPDATE_COPYRIGHT_HOLDER='all contributors' \
UPDATE_COPYRIGHT_USE_INTERVALS=2 \
xargs /path/to/gnulib/build-aux/update-copyright
[1] git://git.savannah.gnu.org/gnulib.git
|
|
It's easier to leave numerics unquoted in YAML; so automatically
stringify comments comming from the YAML file.
|
|
While we're in the area, make a wording change from "GPLv3 or later"
to "GPL-3.0+", as the latter is favored by SPDX.org
|
|
Since writing nested shell commands inside YAML is subject to all
sorts of strange quoting rules, encourage users to rely on external
scripts which the YAML file refers to instead. These scripts can be
written in any reasonable scripting language capable of executing
other commands.
This allows transparently monitoring things such as `my-script.rb'
in the below example when playing my-splitfx.yml via dtas-player:
--------------------- my-splitfx.yml -----------------------
infile: input.flac
command: $INDIR/my-script.rb "$INFILE"
...
--------------------- my-script.rb --------------------------
#!/usr/bin/ruby
require 'shellwords'
infile = ARGV.shift
ch = %W(sox #{infile} -p).concat((ENV['TRIMFX'] || '').shellsplit)
fx = %W(highpass 25 gain 9)
l = ch.dup.concat(%W(remix 1v1)).concat(fx).concat(%w(contrast 30))
r = ch.dup.concat(%W(remix 2v1)).concat(fx).concat(%w(contrast 0))
cmd = %W(sox -M |#{l.shelljoin} |#{r.shelljoin})
cmd.concat((ENV['SOXFMT'] || '-p').shellsplit)
cmd.concat(%w(- stats))
warn cmd.inspect
exec *cmd
|
|
This feature is intended to allow users to "zoom-in" on a
particular portion of a track to tweak parameters (either
with dtas-sourceedit(1) or via playback of splitfx YAML files).
This may be combined with looping the tracklist
(via "tl repeat").
|
|
The documentation part is managed by the new
Documentation/update-copyright script. For the future, the rest may
be managed by the update-copyright tool in gnulib
|
|
This makes debugging, grepping, and following code confusing
at times and also unexpected breaks usage of the global "spawn"
method.
|
|
This allows changes in the source YAML file to be reflected
immediately in player after the user saves the file in their
favorite $EDITOR. Previously, a user would need to:
1) start dtas-sourceedit, spawning $EDITOR
2) edit the file
3) save changes
4) exit $EDITOR
5) repeat starting from 1) until happy with the results
Now, the workflow allows avoiding the context switch between their
$EDITOR and terminal to restart dtas-sourcedit:
1) start dtas-sourceedit, spawning $EDITOR
2) edit the file
3) save changes
4) repeat starting from 1) until happy with the results
5) exit $EDITOR
In my experience, this greatly speeds up tuning of the playback
change, giving all the repeatability and flexibility of editing text
files while having the immediacy of an interactive UI.
Keep in mind this can cause problems for those with auto-save
enabled in their $EDITOR buffer at inopportune times, so a
-N/--no-watch option is added.
|
|
These are intended to act like `$(@D)' and `$(@F)' in GNU make(1)
and to ease managing temporary files for some effects
(e.g. noiseprof + noisered in sox) for splitfx users.
|
|
We cannot afford to break the entire player because somebody
enqueued a non-existent file (or enqueued and later renamed it).
|
|
While the splitfx source is intended for applying effects to
untracked audio files (e.g. transfers of vinyl records or
live concert recordings), it should be useful for applying
effects to an already-tracked recording.
|
|
This should allow users to setup effects in a more standardized
fashion and avoid needing to specify a "command:" field in their
splitfx YAML files in the general case.
|
|
Since splitfx YAML files are intended to be frequently edited and
modified by the user, we'll support automatically restarting the
source when the user saves changes via their favorite $EDITOR
This change is only for Linux users. However, sleepy_penguin
supports kqueue nowadays so a patch to support such functionality
would be appreciated.
|
|
This allows splitfx users to test CUE breakpoints and run
file-specific effects without interrupting their normal flow.
|