4

Linuxサーバーでmpg123を使用しており、リンクを使用してさまざまなコントロールを送信し、Webページ(apache)から制御しようとしています。

mpg123 には-Cフラグがあるため、文字を送信できます。"s" キー = 開始/停止、"f" キー = 次のトラックなど。

mpg123 にこれらのキーを fifo で送信して、mpg123 stdin を fifo stdout に変更できると思いますが、この場合の fifo の使用方法がわかりません (mpg123 を別の stdin に「リッスン」させる方法)。私がやったことは次のとおりです。

mkfifo myfifo
myfifo | mpg123 -C -@ musiclist.txt
And then I've created keys.txt adding some keys to the file:
echo "f" >> keys.txt
echo "s" >> keys.txt

それで:

cat keys.txt >> myfifo.fifo

これは動作しません。fifos を使用して、実行中の mpg123 にメッセージを渡す方法を説明できますか? 私はそれをグーグルで検索しましたが、欲しいものが見つかりません。

この質問は私にいくらかの光を与えるようですが、mpg123 に fifo の出力をリッスンさせる方法はまだわかりません。

前もって感謝します、

4

3 に答える 3

0
mkfifo myfifo
tail -f myfifo | mpg123 .. &
# send commands
echo .. > myfifo
sleep 5
echo .. > myfifo

tailmpg123stdin で EOF を受け取った場合に終了しない限り、オプションです。それ以外の場合は、次を使用できます<myfifo mpg123 ..

&echo別の端末でコマンドを実行する場合、最後に(バックグラウンドでコマンドを実行するための制御演算子)はオプションです。

于 2013-12-20T10:21:00.720 に答える
0

myfifo をパイプするために何を使用していますか?

私は仮定しますcat myfifo | mpg123 -C -@ musiclist.txt

cat は、最初のファイルが myfifo を介してパイプされた後に閉じます。tail -f myfifo | ...代わりに使用して、EOF 後に開いたままにしてください。

于 2013-12-20T00:19:02.653 に答える
0

mpg123 には独自の --fifo オプションがあります

于 2014-08-18T19:57:52.987 に答える