[LAU] ecasound/jack records empty files

Eric Steinberg eric.steinberg at gmail.com
Mon May 23 22:44:43 UTC 2011


Thanks for that, folks.  I haven't tried the -G option yet (I used rotter to
get what I needed for the moment), but I will come back to this tonight
because rotter is giving me some problems.

On Mon, May 23, 2011 at 1:02 PM, Kai Vehmanen <kvehmanen at eca.cx> wrote:

> Hi,
>
>
> On Mon, 16 May 2011, Eric Steinberg wrote:
>
>  and start ecasound:
>>
>> $sudo ecasound -a:1,2,3,4,5,6,7,8 -f:s16_le,8,44100 -i jack,system -a:1 -o
>> channelone.mp3 -a:2 -o channeltwo.mp3 -a:3 -o channelthree.mp3 -a:4 -o
>> channelfour.mp3 -a:5 -o channelfive.mp3 -a:6 -o channelsix.mp3 -a:7 -o
>> channelseven.mp3 -a:8 -o channeleight.mp3
>>
> [...]
>
>> ...this starts recording without problems.  However, when I stop recording
>> by issuing ctrl-c to ecasound and then start recording again, the files
>> created now have zero bytes.  If I stop and restart the jack
>>
>
> as Julien already recommended, I'd first try with
> '-G:jack,ecasound,notransport'. With this you state that you do not wish to
> follow JACK transport state (e.g. what's the current position), but just
> record whatever is coming from the JACK ports. In your use-case, you
> probably want '-x' as well (always truncate outputs).
>
> This (disable transport) is now the default for batchmode in ecasound 2.8.0
> and newer (just released).
>
> Otherwise, I think your setup is not deinterleaving the channels quite the
> way you probably intended. I think what you are looking for (guessing based
> on your file naming):
>
> ecasound -f:f32,2,44100 \
>  -G:jack,ecasound,notransport -x \
>  -a:1 -i jack_multi,system:capture_1,system:capture_2 -o chpair1.mp3 \
>  -a:2 -i jack_multi,system:capture_3,system:capture_4 -o chpair2.mp3 \
>  -a:3 -i jack_multi,system:capture_5,system:capture_6 -o chpair3.mp3 \
>  -a:4 -i jack_multi,system:capture_7,system:capture_8 -o chpair4.mp3
>
> If you want to specifically to capture the mono channels, then it's
> a bit more complicated due to odd limitations of eca+lame combination,
> but still possible:
>
> ecasound -f:f32,1,44100 \
>  -G:jack,ecasound,notransport -x \
>  -a:1 -i jack_multi,system:capture_1 -o ch1.mp3 -chcopy:1,2 \
>  -a:2 -i jack_multi,system:capture_2 -o ch2.mp3 -chcopy:1,2 \
>  -a:3 -i jack_multi,system:capture_3 -o ch3.mp3 -chcopy:1,2 \
>  -a:4 -i jack_multi,system:capture_4 -o ch4.mp3 -chcopy:1,2 \
>  -a:5 -i jack_multi,system:capture_5 -o ch5.mp3 -chcopy:1,2 \
>  -a:6 -i jack_multi,system:capture_6 -o ch6.mp3 -chcopy:1,2
>  ...
>
> This is a bit clumsy due to having to feed a stereo stream to mp3 encoding
> (probably ecasound should do this implicitly under the hood), but still
> manageable.
>
> I'd personally consider recording to flac (no need for the extra chcopy for
> flac files). Its nonlossy and allows for more options (multichannel files).
>
> PS Thanks for the post btw. I found one nasty regression in
>   recent 2.8.0 release that impacted this particular use-case.
>   Naturally I recommend the just released 2.8.1 for the above
>   examples... :)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.linuxaudio.org/pipermail/linux-audio-user/attachments/20110523/5e5a97fc/attachment.htm>


More information about the Linux-audio-user mailing list