2016-01-13 5 views
0

Я пытаюсь передать записанный звук из моего малинового pis на мой настольный компьютер, который феноменально обрабатывает карманы. Я могу труба аудио с использованиемПотоковая передача файла с сервера

arecord -D plughw:1,0 -r 16000 -f S16_LE | ssh -C [email protected] sox - test.wav

, а затем запустить его с помощью pocketsphinx_continuous -dict ~/4568.dic -lm ~/4568.lm -infile ~/test.wav

Но как только он достигнет конца файла, он останавливается, даже если файл все еще пишет. Есть ли способ держать его открытым?

ответ

1

кому-либо еще находя это,

arecord -D plughw:1,0 -r 16000 -f S16_LE | ssh -C [email protected] pocketsphinx_continuous -infile /dev/stdin

как сделать это

2

Используйте named pipe вместо обычного файла. Также вы можете подать вопрос по адресу github.com/cmusphinx/pocketsphinx с просьбой указать, что pocketsphinx_continious должен иметь возможность читать от stdin. И, конечно же, вы можете отправить такой патч.

+0

Я попробую это завтра, но это выглядит очень перспективным решением. –

+0

Я не уверен, что работает, или я использую его неправильно. Я попытался, mkfifo/tmp/pipe, тогда arecord -D plughw: 1,0 -r 16000 -f S16_LE/tmp/pipe и, наконец, в другом термине ssh -C [email protected] pocketsphinx_continuous -infile/tmp/pipe, но он может Не найди трубку. –

+0

Также, arecord -D plughw: 1,0 -r 16000 -f S16_LE | ssh -C [email protected] sox -/tmp/pipe throws sox FAIL форматы: не могу определить тип '/ tmp/pipe ' –

Смежные вопросы