blog.bouzuya.net

2012-08-12 Windows環境で分単位のタスクをスケジュールするにはその2

昨日はschtasksで登録したのだけれど、それを元にタスクスケジューラで確認することで、毎分実行するタスクを登録する方法が分かったのでメモしておく。

要はトリガータブをいかに設定するかだ。次のように設定すると良い。

タスクの開始:スケジュールに従う
頻度:毎日
間隔:1日
開始:開始時間
繰り返し間隔:1分間
継続時間:無期限
停止するまでの時間:1日間

「毎日1回、決まった時間に開始し、そこからは1分おきに繰り返す。翌日も開始されるので、最長1日で停止させる。」という設定にしているつもり。

元記事と同様に10秒間隔で撮影するためのスクリプトも書いてみた。wsh-capture-screenとしてGitHubにコード全体を公開した。以下にはコアな部分だけを抜き出している。

処理としては、起動時に既に起動していたらロックファイルがなくなるまで待機し、ロックファイルがなければ作成し、処理に入る。WinShotを用いて約10秒間隔で画面をキャプチャし、処理開始から約24時間経過するまでキャプチャを続ける。キャプチャ終了後ffmpegを用いてキャプチャした画像ファイルを動画ファイルに変換し、画像ファイルを削除する。最後にロックファイルを削除して完了。

このスクリプトを一日一回実行するタスクに設定すれば、動画ができる、はず。(まだ実行していないため)

135 min.