Re: [ecasound] ecasound-2.5.2 does not allow commas in input file name

From: Kai Vehmanen <kvehmanen@email-addr-hidden>
Date: Fri Apr 10 2009 - 16:35:56 EEST


On Thu, 9 Apr 2009, Sergei Steshenko wrote:

> I've noticed that ecasound-2.5.2 stops parsing input file at first comma,
> i.e. given an
> -i 'foo, bar.ext'
> input it will consider only "foo" to be its input sound object.

yep, this is a known "feature" of ecasound parser -- a bit unfortunate
one, but I don't know how to fix it without breaking backwards
compatibility. This is mentioned in the BUGS file.

Anyways, to pass arguments with commas in the parameter value (e.g. a
filename), one has to quote it with either backslashes (-i foo\\,bar.wav)
or with doublequotes (-i "foo,bar.wav").

When using ecasound from a shell (e.g. bash), things get more complicated
as the shell has special meanings for many of the same characters as well.
So to pass a backslash to ecasound, you need to use "\\" (first one is
removed by shell before ecasound sees it). Similarly, to pass a
doublequote, you need to use \". So the above example issued from shell
would be:

  ecasound -i \"foo,bar.wav\" -o null

To pass tabs and spaces, you need to get the shell to pass them as one
command-line argument. So

  ecasound -i foo\ bar.wav -o null
  ecasound -i "foo bar.wav" -o null

... will both work.

> "-i 'foo\, bar.ext'" is accepted and works as expected.

Yes, that'll work. Shell will strip the single quotes (needed to pass
the space) and ecasound will handle the \, quote.

> I haven't yet built 2.6.* versions to verify how it works with them.

It's the same in 2.6 and 2.7 snapshots..

This email is sponsored by:
High Quality Requirements in a Collaborative Environment.
Download a free trial of Rational Requirements Composer Now!
Ecasound-list mailing list
Received on Fri Apr 10 20:15:02 2009

This archive was generated by hypermail 2.1.8 : Fri Apr 10 2009 - 20:15:02 EEST