Multi thread Media Encoder Frontend(マルチスレッド対応 マルチフロントエンド)をリリース。
マルチスレッド対応 lameフロントエンド (もどき)より、
高性能で安定性も高い…と思う。
GUIも付いたので、マウスだけでも操作できます。
http://mtmef.g.hachune.net/
ここより下の情報は古いです…(´・ω・`)スマソ
mp3エンコーダーとして物凄く有名なlame。
音質などの面ではかなり良いのだが、マルチスレッド化で音質が低下するなどの問題が発生したらしく、最近主流のPhenomx4やCore2Quadなどのマルチコア・マルチスレッドCPUには対応できておらず、エンコード速度の面でちょっと問題がある。
ということで、
lameのエンコードをマルチスレッド処理するプログラム
を、Rubyで作ってみた。
(大学のレポートとして、4日間の突貫工事で作成したのだったりする)
エンコード処理内でマルチスレッドにするわけではない(コマンドプロンプトを4つ開いて、同時に実行しているのと同じ)ので、音質の問題も発生しない。…ハズ。
(以前、こんな実験をして確認したので、多分問題無い。)
一応、WindowsでもLinux・Unix・MacOSXのどれでも、Rubyが動けば使用できる…と思う。
(Windowsでは少し問題が発生したので、一応別に作り直したが)
あまりに汚いのでコメントアウトしました…(´・ω・`)
ダウンロードはこちらから。
旧バージョンの管理が大変なので、全てMulti thread Media Encoder Frontendに纏めました。
http://mtmef.g.hachune.net/
※WindowsでのRubyバイナリのインストール&スクリプトの実行
※追記: One-Click Ruby Installer for Windowsの方がたぶん楽だが、書いてしまったので一応残す。
- http://www.garbagecollect.jp/ruby/mswin32/ja/から安定版の最新版をダウンロード。
- Windows用lameバイナリはこちらからhttp://www.rarewares.org/mp3-lame-bundle.php
- 適当な解凍ツールを使用し解凍。
- "bin""doc""lib""man""share"といったディレクトリが生成されるので、ディレクトリ階層を壊さないようにそのまま全て"C:\Program Files\Ruby"などのディレクトリに入れる。
- 例:
- C:\Program Files\Ruby\bin
- C:\Program Files\Ruby\doc
- C:\Program Files\Ruby\lib
- C:\Program Files\Ruby\man
- C:\Program Files\Ruby\share
- C:\Program Files\Ruby\bin
- mtlamefconf.rbをコマンドプロンプトで実行すると、「このファイルを開けません」と出るので、「一覧からプログラムを選択する」を選択。
- 「参照」をクリックし、先ほどインストールしたRubyディレクトリの中の、bin/ruby.exeを選択。「この種類のファイルを開くときは、選択したプログラムをいつも使う」のチェックボックスをONにし、OKする。
- 再度mtlamefconf.rbをコマンドプロンプトで実行。環境を設定する。
- mtlamef_win.rbを実行。
※Linux・Unix・MacOSXでのRubyのインストール・スクリプトの実行
- ソースコードかパッケージ管理を利用してRubyとlameをインストール。
- mtlamef.rbのソースの1行目の
#!/usr/bin/ruby
を、自分でRubyをインストールしたディレクトリに設定しなおす。 - 端末でmtlame*.rbを実行。
※既知の問題
- 同じ名前のmp3ファイルが存在すると、問い合わせなしに上書きしてしまう
- ".wav"以外の拡張子が付いていた場合、wavファイルでも処理することができない
(".Wav"、".WAv"、".WAV"、".wAv"、".wAV"、".wav"、".wave"…など) - mp3ファイルの再エンコードが出来ない
- 相対パスで指定することができない("~/mp3"など)
- "lameが見つからない"、"ファイルのアクセス権が無い"などのエラーが発生した場合でも、
最後に「エンコードが完了しました」と出てしまう。
そのうちCorei7向けに8スレッドまで立てられるのも作ろうかと画策中(30分もかからずに出来そう…だが)
この要領で、他のAACやogg、flacとかのエンコーダやデコーダに対応したのも簡単に作れそうだな… …時間が足りないな('A`)
このプログラムを作成する上で、はつねさんの声を一体何回エンコードしたのだろうか…
そして1週間ほどニコニコ放置してたら新曲増えまくりで涙目w …(´;ω;`)ブワッ
0 件のコメント:
コメントを投稿