どんなことでも

この人 blog を書くのだろうか?

mkunicode.dll

2008-05-23 04:25:09 | コンピュータ
最近、mp3 などを再生しようとすると mkunicode.dll がありません。とか言われて鬱陶しかったんですが、どうも「Haali Media Splitter」が中途半端にアンインストールされていた模様。
コーデックはアンインストーラでは消えないのか?

ヒントは検索して見つけた Error with Google Desktop CPU usage
> \Filters\Haali\mkunicode.dll
という行。ヒントというか、そのまんまというか (^^;
ということで、「mkunicode.dll が見つからなかったため、このアプリケーションを開始できませんでした。」なんて出て来て、Haali Media Splitter をインストールした覚えのある人は、これを再インストールしましょう。

軽い mp3 プレイヤー。
そらみみ」とか入れてみた。ただ、なんか変でウィンドウが開いて音のでない曲とか、曲リストを作成する「Mimi.exe」が「Buffer overrun ditected!」とか言って落ちてしまう。
iTunes でエンコードした「Dr.リンにきいてみて! クリスマスナイト」の1枚分の MP3 をドロップするだけで駄目。仕方ないので、Active perl でリストを作成。
#! D:\Perl\bin\perl.exe -w
eval 'exec D:\Perl\bin\perl.exe -S $0 ${1+"$@"}'
if 0; #$running_under_some_shell

use strict;
use File::Find ();

# Set the variable $File::Find::dont_use_nlink if you're using AFS,
# since AFS cheats.

# for the convenience of &wanted calls, including -eval statements:
use vars qw/*name *dir *prune/;
*name = *File::Find::name;
*dir = *File::Find::dir;
*prune = *File::Find::prune;

sub wanted;

my $LIST_FILE = "C:/Documents and Settings/user/デスクトップ/SoraMimi/list.msl";
my $TARGET_DIR = 'S:\mirror\Admin\MP3';
our $file_count = 1;

open LIST, '>', $LIST_FILE;
print LIST "[STATUS]\n";
print LIST " VERSION=261\n";

# Traverse desired filesystems
File::Find::find({wanted => \&wanted}, $TARGET_DIR);

close LIST;
exit;

sub wanted {
 if (/\.mp3\z/s){
  $name =~ s/\//\\/g;
  printf LIST "[%d]\n", $file_count++;
  print LIST " PATH=$name\n";
  printf LIST " WEIGHT=0\n";
 }
}

で、起動..起動が遅く曲間もかなり時間があいてしまう。まぁ、2000曲もあると仕方ないのか?
目覚ましにするには foobar2000 を関数でいじるのが良いのかな。
1. 「Import CD」プレイリストを選択
2. ランダム再生 (これは foobar2000.exe /rand でできる)
3. 演奏モードをランダムに (/command:"Shuffle (tracks)" で我慢?)

foo_func の On init に以下を書いた。
> $playlist_active(Import CD)
> $mainmenu_execute('Edit/Sort/Sort by File Path')
> $mainmenu_execute('Playback/Order/Random')
これで起動時に「Import CD」プレイリストを選択
並び順はフォルダの配置に従う。
演奏モードはランダムに。
が実現。
"D:\Program Files\foobar2000\foobar2000.exe" /rand S:\mirror\Admin
と起動することで、ランダム再生と S:\mirror\Admin 以下の再生可能なファイルが追加される。
元々「Import CD」は S:\mirror\Admin 以下のファイルのリストだが、何かの弾みでリストが空になっていた場合再生出来ない。ファイルが増えていたらついでに追加。と一石二鳥。しかも、ちゃんと指定したプレイリストに重複無く再読込される。えらい。
これで Windows で目覚まし時計代わりが出来るようになったな。(上のコマンドはタスクから起動)