0

cronジョブスクリプトの作成についてサポートが必要です。基本的に、次のスケジュールされたアイテムを取得し、ffmpegを介してストリーミングしたいと思います。これはmysqlクエリになります(PHP変数を使用して、そこに何を配置するかを示しています。実際には、変数がcronジョブでどのように機能するかはわかりません)。

SELECT show.file FROM show, schedule
WHERE channel = 1 AND start_time <= $current_time;

これはffmpegコマンドになります:

ffmpeg -re -i $file http://127.0.0.1:8090/feed.ffm

これらのコマンドを実行するためのcronジョブを作成するにはどうすればよいですか?

4

1 に答える 1

1

まず第一に、選択したステートメントに現在の時刻を渡す必要はありません。CURRENT_TIME

SELECT `show.file` 
  FROM show, schedule 
 WHERE channel = 1 AND start_time <= CURRENT_TIME;

実際のテーブルのDDLによっては、時間値を正しく比較するために変換を行う必要がある場合があります。

クエリが正しく、1つのファイル名のみを返すと仮定すると、mysqlを使用してクエリを実行し、結果を事前定義されたファイルに出力して、コマンド&&をチェーンするために使用できます。ffmpeg

mysql -u user -ppassword dbname -sN -e \
 "SELECT show.file \
 FROM show, schedule \
 WHERE channel = 1 AND start_time <= CURRENT_TIME" > /tmp/cur_show_file && \
 ffmpeg -re -i /tmp/cur_show_file http://127.0.0.1:8090/feed.ffm
于 2013-03-09T06:29:35.213 に答える