音くらべ v2.01、v3.00β1



otokurabe300b1.zip MD5=1df3401c730d83b7489d7cfcdcc62e7f

otokurabe201.zip MD5=290503df43676ff9401c49c845088049
※こちらは、Turbo Delphiで作成されているバージョンです

はじめに

これまでの音くらべで、
1.wavファイルをファイルリストからしか選ぶことができない
2.長いファイル名だと、ファイル名がすべて表示仕切れない
3.比較時間の短縮に、再度挑戦したい
のような課題があったため、Turbo C++で、作り直そうと取りかかりました。
まだ、v2.xxに実装されている機能に追いついていないので、しばらくは、
βとして公開を続けます。


機能

・WAVEファイルの比較を行います。
8bit,16bit,24bit,32bit,mono,stereo,一通りのwavに対応しています。


使用方法

wavファイルの読み込み

ドラッグ&ドロップ



エクスプローラ等からwavファイルをドロップすると、ファイル1、ファイル2、どちらに登録するかポップアップメニューが
でます。いずれかをクリックしてください。

フォルダ参照

フォルダ1,フォルダ2の隣のボタン(起動時は空欄)をクリックすると、フォルダ参照のダイアログが出ます。



フォルダを選ぶと、フォルダ1,フォルダ2の隣のボタンにフォルダ名が、下のファイルリストにwavファイルが列挙されます。


ファイルリストから、任意のwavファイルを選択(クリック)します。


いずれの場合も、

のように、wav情報が表示されていれば、比較ができる状態になります。

なお、フォームの大きさは可変なので、長いファイル名でも、フォームを横に伸ばせば、追従します。

メニューの実行をクリックすると、比較処理が始まります。

解析結果

ファイル1:*****\a.wav
サンプル数:12904836 先頭ゼロ:43647 末尾ゼロ:162247
ファイル2:*********a1.wav
サンプル数:12904836 先頭ゼロ:43647 末尾ゼロ:162247
[debug] *:**:**
ゼロスキップ ○
[debug]file1 pos 174632
[debug]file2 pos 174632
file1,file2が同時に終わりました。
一致しました。
比較サンプル(12861189)
[debug] *:**:**

[debug]は、まだ、比較処理が正しく行われているか検証している最中であるので、うまく行っていない時の
ためのものです。


比較オプション

・ゼロスキップ
同一の音楽CDを異なるドライブでリッピングすると、WAVEファイル内の音の開始位置が異なることがあります。
音のデータが始まるまでにあるゼロサンプル(無音状態)をスキップすると 多くの場合は、一致します。

・連続モード
チェックを入れると、自動的にファイルリストの選択を一つずつずらして、どちらかの
ファイルリストが終わりになるまで、連続して比較を行います。

・一致点を探す
先頭ゼロサンプルと実際の音のデータの間に先頭ゼロサンプルの出来損ない?のような
データがある場合に、先頭ゼロサンプル終了後の双方のWAVファイルを、一致検出サンプル
数分比較し、一致するまで1サンプルずつずらします。こうすることで、一致しないWAV
ファイルもほとんどのものは一致します。

・相違詳細表示
相違点を表示します。

インストール・アンインストール

当アーカイブを解凍後、otokurabe3.exeを実行してください。
レジストリは一切いじりませんので、アンインストールはotokurabe3.exeを削除するだけで済みます。

開発環境

Windows XP SP2
Turbo C++ Explorer

動作環境

動作確認は、Windows XPで行っています。


免責・その他

このソフトは、フリーソフトとして公開します。
著作権は、作者が保有します。
このソフトに起因すると思われるトラブルにより、何らかの損害が生じたとしても
作者は責任を負えません。すべては、自己責任の上、お願いします。
βなので、二次配布は禁止とします。

謝辞

最後になりましたが、当ソフトの作成のきっかけとなった、WaveCompareの
作者であるefu氏、また、エラー報告および機能アップのきっかけとなった
CD-R実験室(http://homepage2.nifty.com/yss/)を運営されているYSS氏には、
この場を借りて感謝申し上げます。


更新履歴

v3.00β1 2008.4.27
・開発言語を、Turbo C++に変更
・比較処理の時間を改善
※機能としては、比較のみ

v2.01 2003.11.19
・1時間超のWAVEファイルの再生時間が正しく取得できなかった不具合を修正

v2.00 2003.11.8
・prelease3に特に問題がないようなので、正式版として公開する。
・相違表で、再生時間以上のマスメを描画しないようにした。
・〃で、0,10,20,30,40,50秒のマスメを灰色にして、見やすくした

v2.00 prerelease3 2003.10.30
・相違表を装備した。
・比較オプションのチェックマークのルールを少し変えた。
・ゼロサンプル編集で、ファイル生成時に、ファイル名に全角文字を使っているときに、
 拡張子の変更がうまくいかないことがあるのを修正

v2.00 prerelease2 2003.10.27
・ゼロサンプル編集機能を装備した

v2.00 prerelease1 2003.10.23
・開発環境をDelphiに移行した。
・16bit/Stereo以外にも8bit.Mono、すべてに対応させた。(一致点を探すのみ16bit/Stereo)
・アイコンを変更した。

※装備できているのは比較のみ。
他の機能については、随時追加していきます。
その際には、prereleaseの数字を一つずつ増やしていきます。

v1.49 2003.5.17
・ソフト終了時にドライブとフォルダ位置、フォーム位置を保存し、次回起動時に前回と
 同じにするようにした。
・オプション設定の内容の保存を任意にできるようにした。

v1.48 2003.5.14
・3秒以下のWAVファイルも比較対象にした。
・一致点を探す処理で、1秒以下のWAVファイルでも処理できるようにした。
・ゼロサンプル編集で、末尾ゼロの処理がうまく行かなかったのを修正した。
・フォームの大きさを可変にし、ファイルリストと、ログの大きさを変えられるようにした。

v1.47 2003.5.12
・16bit/StereoのWAVE全般を比較対象にした(サンプリング周波数に制限なし)
・フォームのレイアウトを一部変更
・演奏時間の取得方法を変更
・演奏時間に、ms(ミリ秒)を追加した
・端数フレーム数を追加した
・アイコンを変更した

v1.46 2003.2.16
・連続モード時において、1つ目の比較直後にエラーが発生するのを修正

v1.45 2003.1.12
・プログラムアイコンの変更
・比較処理の若干の改良
 (アルゴリズムは変えていないので、比較時間を短縮するほどのものではない)
※アイコンを変更するのが主な目的

v.144 2003.1.8
・ゼロサンプル編集時のエラー回避処理の改善(ゼロサンプルの追加機能含む)
・WAVファイルの10分を超える部分に相違点があった場合、強制終了してしまうのを修正
・その他、細かなUIの修正あり

v1.43 2003.1.6
・比較実行中にフォーム上のボタンを押してしまうことによる誤動作を防ぐため、
 比較中はボタン等を使用不可にした。
・ゼロサンプル編集のファイル名表示がおかしいことがある不具合を修正

v1.42 2003.1.5
・ログ表示の蓄積が許容範囲を超えた場合、強制終了してしまうのを回避し、
 メッセージを出すようにした
・相違点表の赤をエラー数に応じた赤系のグラデーションにし、凡例も付けた。

v1.41 2003.1.4
・相違点表にて、演奏時間以上のマスを表示しないようにした。
・ゼロ編集にて、編集可能なWAVファイルの演奏時間の目安を表示するようにした。

v1.40 2003.1.3
・相違詳細表示の時に、相違点を視覚的に分かるように表を表示するようにした。
※大きな機能追加により、バージョンナンバーは少数第1位をアップ
・二重起動ができないようにした
以下は従来機能の改善
・ゼロサンプル編集にて、対象WAVファイルの読込を4分割するようにした。
 このことにより、空きメモリーの4倍までのWAVファイルの編集が比較的安全になった(はず)。

v1.31 2003.1.3
・ログにおける相違詳細表示のオンオフがうまく行かないバグ修正
・明らかに違うWAVファイルを比較した場合に、相違サンプル数を正しくカウント
 しないことがあったので、修正した
・その他、細かなバグフィクスのみのバージョンアップです。

v1.30a 2003.1.2
・v1.22と同様のエラー(COMCT232.OCX)が発生する報告があり、それを回避するバージョン

v1.30 2003.1.1
・ゼロサンプルを編集できるようにした。
※大きな機能追加により、バージョンナンバーは少数第1位をアップ

v1.22b 2002.12.31
・起動時に、COMCT232.OCXが関係するエラーが出てしまうのを回避するかもしれないバグフィックス
作者環境では、エラーが出ていないため、確実に回避できる保証は出来ません。

v1.22 2002.12.30
・WAVEファイルのリストで、他のソフトによりWAVEファイルの数が増減された場合に
自動的に更新するようにした。
・比較中の中断チェックの監視回数を多くした。

v1.21 2002.12.28
・相違があった場合に、その位置(分/秒/サンプル)を表示するようにした。
・フォームレイアウトを一部変更

v1.20 2002.12.28
・一致点を探す機能を追加
※大きな機能追加により、バージョンナンバーは少数第1位をアップ

v1.12 2002.12.27
・ゼロサンプルが非常に大きい場合に、強制終了する場合があるのを修正
・比較ルーチンの簡素な修正(v1.11の比較結果には問題ないはずなんですが。。。)
・WAVファイルの読み込みを一括から分割するようにしました。
 これにより巨大なWAVファイル(例えばアルバム丸ごとWAV)を選んでも比較ができると思います。

v1.11 2002.12.26
・比較速度の高速化を実現(v1.10比 約40%アップ,WaveCompare比 25〜30%)
・WAVファイルの読込のタイミングをv1.10以前に戻しました。

v1.10 2002.12.24
・連続モード、中断機能を追加しました。
※仕様変更に伴い、バージョンナンバーは少数第1位をアップ

v1.04 2002.12.12
・比較アルゴリズムの再構築を行い、20%の速度アップが実現できました(v1.03比)

v1.03 2002.12.8
・ログ保存時のファイル名生成に問題があり、強制終了することがあったのを修正しました。
・比較アルゴリズムの再構築を行い、若干の速度アップになりました。

v1.02 2002.12.7
・v1.01に致命的なバグがあったため、急遽修正しました。
そのため、比較速度は4倍ほど長くなりました(v1.01比)
・ログにシステム時間が残るようにしました。

v1.01 2002.12.6
・比較速度 約50%アップ
・WAVEファイル情報の計算式の改善(WaveCompareと誤差があったため)
・ログを保存できるようにした。

v1.00 初版開発 2002.12.5