[LAU] ecasound/jack records empty files

Eric Steinberg eric.steinberg at gmail.com
Wed May 25 19:13:06 UTC 2011


Kai, Everybody,

Thanks- I did try -G and flac, and it works much better: I can stop and
restart without making empty files.  I think I'm going to stick with Rotter
for this job, though, because of its file-splitting and timestamping
features (which makes searching archives a lot easier).  Much love for the
advice! Irie.

On Mon, May 23, 2011 at 3:44 PM, Eric Steinberg <eric.steinberg at gmail.com>wrote:

> 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/20110525/bab4b518/attachment.htm>


More information about the Linux-audio-user mailing list