web-dev-qa-db-ja.com

LinuxでSSHセッションを終了するとMplayerが停止します

私はSSHを介してMPlayerを起動し、実行させる(私はラジオファンです)。このI SSHの私のリモートマシン(Lubuntuを実行しているキューブラック)にSSHと次のコマンドを発行します。

screen mplayer -playlist .path/to/the/playlist

すべてが期待どおりに動作しますが、SSHセッションを終了すると、音楽は完全に停止します。ログインした後、私の画面インスタンスが見つからない(screen -ls/var/run/screen/で見つかったソケットは言う)

私は別のアプリケーション(RTRERRENTなど)で画面を使用していました、そして、すべてがOKになった。これは特定のMPlayerの問題ですか?

更新:私が画面を使用する理由と私は "NOHUP"の方法ではありません。

2
Daniel Platon

あなたは見てみるべきです: http://www.tuxradar.com/content/command-ladar.com/content/commandlak-tricks-smart-geeks

面白いビット:

リモコンMPlayer

この世界には2つのタイプの人々がいます.Mplayerが存在の歴史の中で最高のメディアプレーヤー、そして間違っている人たちが最も良いメディアプレーヤーです。 MPlayerの短い既知の機能の1つは、コンソール、シェルスクリプト、またはネットワーク経由でもコントロールする機能です。このトリックの秘密はMPlayerの-Slaveオプションにあります。これは、キーストロークではなくSTDINストリームからコマンドを受け入れるようにプログラムに指示されます。これを-Inputオプションと組み合わせると、ファイルからコマンドが読み込まれます。たとえば、これを1つの端末に試してください。

mKFIFO~/MPLAYER-CONTROL MPLAYER -SLAVE -INPUTファイル=/home/user/mplayercontrol filetoplay

次に、別の端末またはスクリプトから、次のように入力します。

エコー「一時停止」>〜/ MPlayer-Control

このコマンドは現在実行中のMPlayerを一時停止し、コマンドを再度発行すると再生が再開されます。 〜/ mplayer-controlのみが機能しないため、コントロールファイルのフルパス、/ home/userなどを使用して、mplayerとmplayerなどを与える必要があります。 MPlayerに送信できる他のコマンドがたくさんあります - 実際には、プログラム内のキーボード操作は、コントロールスクリプトで使用できるコマンドをトリガーします。 SSHまたはNetCATを使用して、ネットワーク上の他のコンピュータからMPlayerを操作することもできます。この例を参照してください。

ssh user @ host "echo pause> mplayer-control"

ここでは、ユーザー名のユーザーを使用してリモートマシン(ホスト)にログインし、リモートマシンのMPlayerコントロールファイルに一時停止を送信するためのコマンドを実行します。もちろん、パスワードを毎回渡す必要がないので、これはSSHキー認証が有効になっている場合、これをはるかに高速にすることができます。

ここで述べるように、MPlayerモードでMPlayerを実行した場合は、その入力ファイルがその入力ファイルを監視し、それを呼び出した端末ウィンドウではないバックグラウンドに残っている必要があります。

最後の注意:彼らはそれが同じマシンによって編集されているのであれば、彼らが表示されていない限り、彼らがそれが同じマシンで編集されているのであれば、彼らがそれが同じマシンで編集されているのであれば、彼らは実際にそれが編集している限り、彼らはそれが本当にそれが編集されている限り、彼らはそれが同じマシンで編集されている限り、彼らはネットワーク上で動作している限り、彼らはそれが実際に編集されている限り、彼らはそれが本当にそれが編集されている限り、彼らはそれが同じマシンで編集されている限り、彼らはそれが本当に編集されている限り、彼らはそれが本当に編集されている限り、彼らはそれが本当に編集されている限り、彼らはそれが本当に編集されている限り、彼らはそれを言うことができます。 MPlayerは、それに配置されたコマンドに対してそのファイルを見てから、コマンドがそれをするように求めているものに行動しています。

0
Pariah