小ネタ

ネットワークから(しか)使用できないMP3プレーヤ

jukebox.png
曲を登録中...

使用方法

以下のスクリプトをバックグラウンドで実行

$ ./jukebox.sh </dev/null >&0 2>&0 &

このスクリプトを置いたディレクトリ上にMP3ファイルを置いておくと 勝手に再生を開始する。

#!/bin/sh

cd `dirname $0` || exit 1

while :
do
  if [ -f exit ]
  then
    exit
  fi
      
  set *.[Mm][Pp]3

  if [ $1 = '*.[Mm][Pp]3' ]
  then
    echo no args
    sleep 15
  else
    unset opts
    if [ -f opts ]
    then
      opts=`cat opts`
    fi
    nice -n -15 mpg123 $opts "$@"
  fi
done

Tips

再生を停止したい場合
MP3ファイルを削除するかあるいは別のディレクトリに退避する。
動作をカスタマイズしたい
optsというファイルの内容がMP3エンコーダmpg123の実行時にコマンドラインオプションとして渡されるので、ここでカスタマイズ。たとえば、
-b 8192 --shuffle
とか。
スクリプトを停止したい場合
exitという名前のファイルを作成する。

現時点での問題点

演奏中にMP3ファイルを削除すると、mpg123がハングアップする場合がある。


FrontPage


Front page   New Page list Search Recent changes   Help   RSS of recent changes