everything related to duct tape audio suite (dtas)
 help / color / mirror / code / Atom feed
* [PATCH 0/2] splitfx updates ahead of 0.20.0 release
@ 2022-02-03  0:48 Eric Wong
  2022-02-03  0:48 ` [PATCH 1/2] splitfx: disallow combining --trim and --filter Eric Wong
  2022-02-03  0:48 ` [PATCH 2/2] splitfx: document changes ahead of 0.20.0 release Eric Wong
  0 siblings, 2 replies; 3+ messages in thread
From: Eric Wong @ 2022-02-03  0:48 UTC (permalink / raw)
  To: dtas-all

Eric Wong (2):
  splitfx: disallow combining --trim and --filter
  splitfx: document changes ahead of 0.20.0 release

 Documentation/dtas-splitfx.pod | 41 ++++++++++++++++++++++++++++------
 lib/dtas/splitfx.rb            |  6 +++--
 2 files changed, 38 insertions(+), 9 deletions(-)


^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH 1/2] splitfx: disallow combining --trim and --filter
  2022-02-03  0:48 [PATCH 0/2] splitfx updates ahead of 0.20.0 release Eric Wong
@ 2022-02-03  0:48 ` Eric Wong
  2022-02-03  0:48 ` [PATCH 2/2] splitfx: document changes ahead of 0.20.0 release Eric Wong
  1 sibling, 0 replies; 3+ messages in thread
From: Eric Wong @ 2022-02-03  0:48 UTC (permalink / raw)
  To: dtas-all

They're two different ways of accomplishing roughly the same thing,
but --filter can be more flexible given the use of per-track
environment variables.
---
 lib/dtas/splitfx.rb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lib/dtas/splitfx.rb b/lib/dtas/splitfx.rb
index 696b9ce..c7eaf42 100644
--- a/lib/dtas/splitfx.rb
+++ b/lib/dtas/splitfx.rb
@@ -1,4 +1,4 @@
-# Copyright (C) 2013-2020 all contributors <dtas-all@nongnu.org>
+# Copyright (C) all contributors <dtas-all@nongnu.org>
 # License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt>
 # frozen_string_literal: true
 require_relative '../dtas'
@@ -357,7 +357,9 @@ def run(target, opts = {})
     @rate = opts[:rate]
     @bits = opts[:bits]
     trim = opts[:trim] and @tracks = [ UTrim.new(trim, @env, @comments) ]
-
+    if trim && opts[:filter]
+      raise ArgumentError, 'trim and filter are mutually exclusive'
+    end
     fails = []
     tracks = @tracks.dup
     (opts[:filter] || []).each do |re|


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] splitfx: document changes ahead of 0.20.0 release
  2022-02-03  0:48 [PATCH 0/2] splitfx updates ahead of 0.20.0 release Eric Wong
  2022-02-03  0:48 ` [PATCH 1/2] splitfx: disallow combining --trim and --filter Eric Wong
@ 2022-02-03  0:48 ` Eric Wong
  1 sibling, 0 replies; 3+ messages in thread
From: Eric Wong @ 2022-02-03  0:48 UTC (permalink / raw)
  To: dtas-all

--filter, per-track comments and environments are the subtle but
major new features for the next release.
---
 Documentation/dtas-splitfx.pod | 41 ++++++++++++++++++++++++++++------
 1 file changed, 34 insertions(+), 7 deletions(-)

diff --git a/Documentation/dtas-splitfx.pod b/Documentation/dtas-splitfx.pod
index 717cfa6..f8de59b 100644
--- a/Documentation/dtas-splitfx.pod
+++ b/Documentation/dtas-splitfx.pod
@@ -26,7 +26,8 @@ to use L<ecasound(1)>, too.
 =item -j, --jobs [JOBS]
 
 Number of jobs to run in parallel.  If no number is specified, all
-jobs are run in parallel.
+jobs are run in parallel.  Default: number of CPUS (dtas 0.20.0+),
+previous versions of dtas defaulted to 1.
 
 =item -n, --dry-run
 
@@ -76,6 +77,16 @@ outputs the result as a single file with the TRACKNUMBER
 of "000".  For ease-of-typing, commas in this command-line
 argument are automatically expanded to spaces when passed to sox.
 
+This switch may not be combined with L</--filter>
+
+=item -f, --filter [FIELD=]VALUE
+
+Only process tracks matching a given comment FIELD and VALUE.
+If no C<=> is exists, then all comment fields are matched
+against the specified VALUE.
+
+This switch may not be combined with L</--trim>
+
 =item -p, --sox-pipe
 
 Used in place of an output target to specify outputting audio data in
@@ -121,7 +132,12 @@ highest-numbered track.  Default: true
 
 =item targets - hash, see "TARGETS" section
 
-=item command - used only by L<dtas-player(1)>
+=item command - override the default sox invocation
+
+This command may be used to specify an alternate command to process each
+track.
+
+Default: sox "$INFILE" $COMMENTS $OUTFMT $OUTDST $TRIMFX $FX $RATEFX $DITHERFX
 
 =back
 
@@ -133,11 +149,22 @@ segment.
 
 =over
 
-=item t TIME TITLE [fade_in/fade_out=FADE_ARGS]
+=item t TIME TITLE [fade_in/fade_out=FADE_ARGS] [.FIELD=VALUE] [env.X=Y]
+
+The start of a new track at TIME with TITLE.
+An optional L</fade_in> and L</fade_out> may be specified for any tracks.
+Per-track comments may be specified in the form of C<.FIELD=VALUE>.
+Using per-track C<.ARTIST=FOO> allows proper tagging of multi-artist
+compilations.
 
-The start of a new track
-at TIME with TITLE.  An optional fade_in and fade_out may be specified
-for the first/last tracks.
+Per-track environment variables may be specified in the form
+of C<env.K=V> where C<K> is the environment variable name and
+C<V> is its value.  Per-track environment variables do not affect
+playback of YAML files via L<dtas-player(1)> nor use of the L</--trim>
+command-line option.  However, per-track environment variables do affect
+any tracks written to the filesystem, including those using the L</--filter>
+switch.   These environment variables are intended to affect the specified
+L</command> or default L<sox(1)> invocation.
 
 =item skip TIME - skip a segment starting at TIME
 
@@ -268,7 +295,7 @@ imbalance in a live concert recording from the audience:
 
 =head1 COPYRIGHT
 
-Copyright 2013-2020 all contributors L<mailto:dtas-all@nongnu.org>
+Copyright all contributors L<mailto:dtas-all@nongnu.org>
 
 License: GPL-3.0+ L<https://www.gnu.org/licenses/gpl-3.0.txt>
 


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-02-03  0:49 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-03  0:48 [PATCH 0/2] splitfx updates ahead of 0.20.0 release Eric Wong
2022-02-03  0:48 ` [PATCH 1/2] splitfx: disallow combining --trim and --filter Eric Wong
2022-02-03  0:48 ` [PATCH 2/2] splitfx: document changes ahead of 0.20.0 release Eric Wong

Code repositories for project(s) associated with this public inbox

	http://80x24.org/dtas.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).