日曜プログラムはやり出すと面白いのが困りもの。時間を忘れないように気をつけないと。:-)
という感じで目論み通りできそう。codecs.iniに定義されている800弱の拡張子に対して判定してくれるようなので、一般的に使われる音声、画像フォーマットであればほぼ問題なくカバーしているでしょう。具体的な出力は↓のような感じ。
- avi(divx)の場合
RIFF AVI2.0 640x480 24Bit DivX 5.1.1 23.98fps 34520f 1550.67kb/s MPEG1-LayerIII 48.00kHz 192.00kb/s CBR JointStereo/MS LAME-Info 59991f [LAME3.95 CBR 192kb/s AutoStereo] 00:24:00 314,746,880Bytes
- mpeg-2の場合
MPEG2 720x480 29.97fps 4:3 9000.00kb/s MPEG1-LayerII 48.00kHz 256.00kb/s CBR Stereo 00:30:10 1,417,885,696Bytes
- mp3の場合
MPEG1-LayerIII 44.10kHz 128.00kb/s CBR JointStereo/MS 9956f 00:04:19 4,152,176Bytes
こんな事仕様書に書いてあるわけ無いので、勝手に解析するしかないですが、音声と画像の二パターンに分けて処理するだけで何とかなりそう。出力項目が定型化されているのであれば、splitするだけで大丈夫そうだし。やり出すときりがなくなりそうなので、今日はこれにておしまい。
微妙に気になるのは、スクリプト動作中に他のアプリケーションがクリップボードを変更してしまうと、それでアウトなのです。明示的に動かしているアプリケーションであれば、運用でカバーできますが、バックグラウンドで動いているやつはどうしようもないなあ。クリップボードに対する排他処理なんて知らないし..まあ、とりあえず動く物を作ってから考えよう。