---------------------------------------------------------------------------------------------------
WindowsMediaPlayer9以降の再生支援「真空波動研」260101
黒羽製作所

詳細が好きな方への詳細チェッカ兼WindowsMediaPlayerフロントエンド
---------------------------------------------------------------------------------------------------

※ 詳細の内容や各形式の仕様等はformat.txtに書いてあります ※

※ 100307やそれ以前から乗り換える方へ ※

  iniとプレイリストの文字コードがUnicodeとなります。
  旧バージョンのものが存在すると上書きでUnicodeとして保存できないので、
  一度削除するか、手動でUTF-16LEにコンバートしてください。


※ 100503から乗り換える方へ ※

  コアの変更によりiniに使われなくなったオプションが残ります。
  残っていても動作に影響はありませんが気になる人はiniを一度消してください。


Ｏ 特徴

・Windows上でなんとかして再生できる動画/音声のほぼ全ての形式で詳細を出す事が可能です。
  詳細取得には専用のライブラリ、API等一切使わずに自力での取得をしています。

・AVI等、音声映像にCodecを必要とする形式は、
  該当Codecが無かった場合に再生は出来なくても詳細は出せるようになってますので、
  コーデックチェッカとしても使用できます。
  ついでに再生できるものは再生可能という事でプレーヤー部はおまけ程度です。
  RIFF AVI,Matroska,oggで映像CodecがDivX5かXviDの動画の場合は、それぞれのエンコードバージョン判別も可能です。

・一応のプレイリスト兼一括チェッカが付いています。

・最早コーデックチェッカーくらいにしかなりません(;-;

・Lite、SuperLiteと派生版を用意してあります。用途に応じて選べます。
  ショボいメディアランチャ代わりにする人はLite、詳細だけ見れれば後はいらないという人はSuperLite。

・ID3v2タグ、Flac、ogg、AAC(m4a)で画像の表示が可能です。
  (MP3,Flac,TTA,AAC(m4a),ogg(Vorbis))


Ｏ 必要なもの/動作するOS

・動作OS
  Windows2000/XP/Vista/7/8/8.1です。
  Unicode版かつWindowsMediaPlayer9以降を必要とするのでWindows2000以前でのOSでは動作しません。

・WindowsMediaPlayer9以降
  「クラスが登録されていません」と出て起動しない場合は新しいWindowsMediaPlayerをインストールしてください。

・TagLib
  同梱ですが詳細ウインドウでタグの表示をする場合に必要です。
  VCのランタイムが必要かもしれませんのでその場合は以下からダウンロードしてください。
  https://learn.microsoft.com/ja-jp/cpp/windows/latest-supported-vc-redist?view=msvc-170


Ｏ 詳細表示対応フォーマット

  表示が変化したりするフォーマットが増えてきているので、FORMAT.TXTの方を見て下さい。

  RIFF
   AVI (*.avi)
   WAVE (*.wav,*.wave等) ※DTS-WAVにも対応しています
   MIDI (*.rmi) ※かなり適当です
   MP3 (*.rmp,*.rmp3)
   CDDA (*.cda) ※音楽CDです
   CDXA (*.dat) ※VideoCDです

  MPEG1/2 (*.mpg,*.mpeg,*.vob等)

  MPEG2-TS (*.ts,*.m2ts等)

  MIDI (*.mid)

  AIFF (*.aiff等)

  AU/SND (*.au/*.snd) ※1秒未満の場合はビットレート算出に誤差が出ます

  MPEG Audio(*.mp3等) ※mp3Proは対応していません

  Ogg
   Vorbis (*.ogg)
   Speex (*.spx)
   Media (*.ogm)
   Theora (*.ogv)

  QuickTime
   一般的な形式 (*.mov,*.qt)
   MP4 (*.mp4,*.m4v,*.m4a) ※*.m4aは音だけなので実質AAC,MP3,Vorbisのどれかになります
   携帯向け (*.3gp,*.3gpp,*.3g2) ※一部はMPEG4と同じ扱いになります

  Dolby AC-3 (*.ac3)

  WindowsMedia (*.wmv,*.wma,*.asf) ※DRMの有無を判別できます

  Monkey's Audio (*.ape)

  MusePack (*.mpc)

  MPEG2/4-AAC (*.aac) ※詳細なプロファイル判別(HE等)はMPEG4格納時のみです

  FLAC (*.flac)

  RealMedia/旧RealAudio (*.rm,*.ram,*.ra等)

  The True Audio (*.tta)

  TwinVQ (*.vqf)

  Matroska (*.mkv,*.mka) ※出回っている映像と音声の組み合わせにはほぼ対応してあります

  DTS (*.dts) ※14/16Bitと両エンディアンに対応してあります

  Wavpack4 (*.wv)

  OptimFROG (*.ofr,*.ofs)

  FlashVideo (*.flv)

  Shockwave Audio (*.swa) ※先頭のヘッダを読み飛ばす以外はMP3と同一です

  WebM (*.webm) ※Matroskaとして処理

  QUALCOMM PureVoice (*.qcp)

  DSD Stream File (*.dsf)

  Direct Stream Digital Interchange File Format (*.dff)

  Wideband Single-bit Data (*.wsd)

  Sony MSF (*.msf)

  CRI ADX (*.adx,*.aix)

  CRI HCA (*.hca)

  S98 (*.s98) ※おまけです

  BitMap (*.bmp) ※おまけです

  JPEG,Exif (*.jpg,*.jpeg等) ※おまけです

  GIF87a,89a (*.gif) ※おまけです

  ※以下の種類に関しては詳細を出しません

  ・詳細表示対応以外で再生できるファイル
  ・ストリーミング系のURL等
  ・形式判定に失敗したファイル


Ｏ 使い方

  天をも貫く波動の力により理解して下さい。
  ...と、ずっと言ってましたが機能が増えてきましたので補足程度で書いておきます。


Ｏ 基本操作

・真空波動研に再生したいファイルをD&Dして再生するのを基本としています。
  [ファイル]->[開く]でも良いです。
  いっぺんに複数のファイルをD&Dすると(2個以上)、プレイリストに登録もされます。

・詳細表示はウインドウタイトルに出してますが、大抵はみ出すのでヒントの方にも入れてあります。
  ヒントはウインドウの適当な空いてる場所にカーソル置いておくと出ます。表示時間を30秒にしてあるのでゆっくり見れると思います。

・Codecが無い等の場合でエラーが出て再生できない場合でも、詳細はヒントの方に出てます。

・一応各項目にヒントを付けてあります。参考までにどうぞ。

・ショートカットキーは以下を設定しています。

  動画サイズx1   : 数字の[1]キー
  動画サイズx2   : 数字の[2]キー
  動画サイズx0.5 : 数字の[3]キー
  動画サイズ1/16 : 数字の[4]キー
  動画サイズ1/4  : 数字の[5]キー
  動画サイズ1/2  : 数字の[6]キー
  フルスクリーン : [F] or ALT+ENTERキー
  再生/一時停止  : [SPACE] or WMPの画面部分をクリック
  指定秒スキップ : [←] or [→]キー (移動量は後述の[設定]->[カーソルキー移動量])


Ｏ 動画のサイズ変更について

  マルチモニタ環境の場合、動画サイズの1/nの設定は真空波動研のウインドウを置いているウインドウを基準に計算します。
  サイズの計算は動画の縦横サイズのうち、大きい方を基準に使用します。

  フルスクリーン時はウインドウの残骸が他画面に残るのを防ぐ為、画面サイズを1/4にした上でフルスクリーンにします。


Ｏ 視覚エフェクトについて

  音声再生時に出る視覚エフェクトは本家WindowsMediaPlayerの設定がそのまま使用されます。
  フルーティ等、大きめのエフェクトを使っている場合ははみ出てしまいますので隠しとして調整可能にしてあります。

  詳しくは後述の「隠しオプションについて」を参照してください。


Ｏ 説明

  以下、各メニューの適当な説明です。

  [ファイル]->[開く]
  読み込めそうなファイルを開きます。

  [ファイル]->[ファイル以外のものを開く]
  URLとか、ストリーミング系とかファイル以外のものを開きます。

  [ファイル]->[閉じる]
  閉じると書いてますので、閉じます。

  [ファイル]->[終了]
  お疲れさまでした。

  [表示]->[常に最前面に表示]
  他のウインドウの下に潜らなくなります。
  フルスクリーン時には強制解除されます。

  [表示]->[コントロール非表示]
  横のコントロールを非表示にします。
 
  [表示]->[プレイリスト]
  後述するプレイリストを表示します。既に表示されている場合は非表示にします。

  [表示]->[拡大鏡]
  MediaPlayerのシークバーだけ取り出したようなものを表示します。
  長さ、幅は自由なのでWindowsMediaPlayer純正よりは細かいシークが可能だと思います。

  [表示]->[画像]
  タグやファイルからの画像抽出に対応している形式の画像を表示するウインドウです。
  自由に拡大縮小できますが、初期/読み込み時は縦を基準にした元の比率で表示をします。

  [表示]->[詳細]
  詳細を表示するだけのウインドウです。
  読み込み専用のテキストとして表示しているので自由にコピーできます。

  [表示]->[半透明]->[オフ]
  [表示]->[半透明]->[25%]
  [表示]->[半透明]->[50%]
  [表示]->[半透明]->[75%]
  [表示]->[半透明]->[メインウインドウも半透明]
  Windows2000/XPから対応の、半透明APIを使ってウインドウを半透明にします。
  メインウインドウを半透明にすると、動画で絵が出なくなりますのでメインを半透明にする場合は音声のみのファイルで使って下さい。

  [表示]->[ヒント設定]->[表示する]
  OFFにすると一切のヒントを表示しなくなります。

  [表示]->[ヒント設定]->[半透明ヒント]
  [表示]->[ヒント設定]->[文字色]
  [表示]->[ヒント設定]->[縁取り色]
  半透明のヒント表示を使用します。
  Windows Vista以降ではAeroモード時に背景に透過がかからず表示がおかしくなるので通常表示ヒントにした方が良いと思います。
  色はお好みで変えて下さい。

  [表示]->[ヒント設定]->[通常表示ヒント]
  [表示]->[ヒント設定]->[文字色]
  [表示]->[ヒント設定]->[背景色]
  こちらは見慣れた通常出るヒントに似せてあります。
  色はお好みで変えて下さい。

  [表示]->[詳細のコピー]
  詳細をクリップボードへ転送します。
  テキストにコピペする等して自由に使って下さい。

  [設定]->[レジューム]
  終了時に再生していたファイル、再生位置を覚えておいて、次回起動時に続きからスタートさせます。

  [設定]->[拡張子自動リネーム]
  チェックを付けた場合、間違っていると思われる拡張子のファイルを読み込ませた場合、正しい拡張子に変更します。
  MPEG等、拡張子が複数見受けられる形式については後述します。

  [設定]->[実行中はスクリーンセーバー停止]
  真空波動研が起動している間のみ、スクリーンセーバーを一時的に停止させます。

  [設定]->[再生前に読取専用属性を付加する]
  WindowsMediaPlayer11がMP3を勝手に書き換えてしまうのを防ぐ為、再生前に読取専用の属性を付けてから再生します。
  解除は終了時に纏めて行われます。都合上、MP3だけでなく再生する全てのファイルで機能します。
  異常終了等で解除されないままのファイルが出る場合があるので気をつけてください。
  ※この機能で書き換えられる可能性が大幅に減りますが、希にそれでも書き換えられてしまうMP3があるようです

  [設定]->[ダークモード]
  VCLのStyleを使った似非ダークモード(Carbon)を適用します。
  Windows純正より良い結果のダーク具合になりますが起動するまでに1秒近く時間が余計にかかるようになります。
  似非なのでWindows10以降以外でもダークになり、Windowsのダークモードの設定の有効/無効に関係無く任意に変更できます。
  ※次回起動後から有効になります

  [設定]->[多重起動を許可する]
  真空波動研の多重起動を許可します。これは真空波動研を再起動後に有効になります。

  [設定]->[タスクトレイアイコンを使用しない]
  タスクトレイアイコンを使用するかどうかです。チェックを付けると使用しなくなります。

  [設定]->[タスクトレイのバルーンヘルプを使用しない]
  最小化時にタスクトレイアイコンに格納されますが、その状態でプレイリスト経由でファイルが切り替わった場合等に
  詳細をバルーンで出しますが、チェックを付けるとバルーンを使用しなくなります。

  [設定]->[MirandaIMのWATrackに反応させる]
  後述。

  [設定]->[カーソルキー移動量]
  カーソル左右での早送りと巻き戻しの設定です。秒単位です。

  [設定]->[既定のプログラム一覧に登録/解除]
  後述。

  [ヘルプ]->[バージョン情報]
  バージョン情報を見ます。URLとメールアドレスはクリックすると開けます。

  [ヘルプ]->[Readme.txt参照]
  このテキストを開きますのでちっとも参考にならない事請け合いです。

  [ヘルプ]->[History.txt参照]
  HISTORY.TXTを開きます。何か意味あるのかどうか怪しいんですが。

  [ヘルプ]->[History.txt参照]
  FORMAT.TXTを開きます。詳細の見方が解らない時にでもどうぞ。


Ｏ プレイリストについて

  D&Dでファイルを追加するのが楽だと思います。
  リストの編集に関してはIriaの操作体系を一部取入れた格好となってます。
  リストは複数選択できます。

  ツールバーは左右の移動とバー自体の上下への移動ができます。
  左右の移動を行った際に描画のゴミが出ますが、最小化->復帰等で治ります。

  [ファイル]->[開く]
  読み込めそうなファイルを開きます。
  複数ファイルの選択も可能です。

  [ファイル]->[フォルダを開く]
  選択したフォルダの中のファイルを全て読み込みます。
  [設定]->[フォルダ読み込み時にサブフォルダも検索]にチェックが付いている場合は、
  選択したフォルダより下のサブフォルダも検索します。

  [ファイル]->[リスト保存]
  プレイリストを各種形式で保存します。

  [ファイル]->[選択範囲のリスト保存]
  選択しているファイルのみで、プレイリストを各種形式で保存します。

  [ファイル]->[選択ファイルのコピー]
  選択しているファイルをコピーします。

  [ファイル]->[選択ファイルの移動]
  選択しているファイルを移動します。

  [ファイル]->[選択ファイルの削除]
  選択しているファイルを「実際に」削除します。リストから消えるだけでは無いので注意して下さい。

  [リスト編集]->[一つ上へ] / [一つ下へ]
  選択項目を一つ上か下へずらします。

  [リスト編集]->[先頭へ] / [最下段へ]
  選択項目を先頭か、最後尾に移動します。

  [リスト編集]->[削除]
  選択項目を削除します。実際のファイルは消えません。

  [リスト編集]->[クリア]
  リストを空にします。

  [リスト編集]->[シャッフル]
  リストの内容をランダムで並べ替えします。元に戻せないので注意して下さい。

  [リスト編集]->[再検査]
  選択項目のファイルに対して、再度詳細取得をします。

  [リスト編集]->[全ファイル再検査]
  再検査の、全リスト項目版です。

  [リスト編集]->[詳細のコピー]
  詳細をクリップボードへ転送します。
  テキストにコピペする等して自由に使って下さい。

  [リスト編集]->[リネーム]
  選択項目のファイル名を実際に変更します。

  [リスト編集]->[詳細付リネーム]
  選択項目のファイル名に詳細を後ろに付けてリネームをします。
  昔の名残に近いですが今は詳細がかなり長い形式が多いのであまりお勧めできません...

  [リスト編集]->[全て選択]
  全て選択します。

  [リスト編集]->[選択の切り替え]
  現在の選択を反転します。

  [検索]->[検索]
  入力した内容でファイル名の部分を部分一致で検索します。

  [検索]->[次の候補]
  次の検索結果へ移動します。
  末尾までいくと先頭からの検索になります。

  [検索]->[前の候補]
  前の検索結果へ移動します。
  先頭まで戻ると末尾からの検索になります。

  [演奏]
  この部分は名前の通りなので割愛します。

  [設定]->[リスト順に再生]
  プレイリストが画面に出ていて、かつどれか1つでも選択されていると、現在再生中のファイルが終り次第、
  リスト上の次のファイルの再生へと自動で移行します。
  現在のファイル終了直後に選択されていた場所の次を選ぶ、という点に留意しておいて下さい。最後まで到達すると先頭に戻ります。
  ちなみにAutoRepeatよりも優先されます。

  [設定]->[ランダム再生]
  上の[リスト順に再生]にチェックが付いている場合、次のファイルはランダムになります。
 
  [設定]->[同じファイルは複数登録をしない]
  リストに登録する際に重複するファイルを登録しなくなります。

  [設定]->[フォルダ読込時にサブフォルダも検索]
  ディレクトリを登録する際、サブフォルダも検索するようになります。

  [設定]->[演奏前にファイルを再チェックする]
  演奏前に対象ファイルを自動で再検査します。

  [設定]->[表示フォント]
  プレイリストの表示フォントを変更します。
  色と言語セット以外は反映されます。フォントのサイズを変えた場合、リストのグリッドが元のままで描画がおかしくなる場合がありますが、
  そのまま真空波動研を一度再起動してください。(対策方法が解るまで)


  真空波動研の終了時、自動的にSinkuHadouken.exeと同じ場所へSinkuHadouken.shdklというファイルを作成し、終了時のリストを保存します。
  中身は普通のCSV形式で "ファイル名","詳細","サイズ" ですが、ファイル名はリストの存在する場所からの相対パスになっています。
  C:\@@@\1234\AAAA.AVIがあった場合にC:\@@@\にリストを保存すると、ファイル名には1234\AAAA.AVIと入ります。

  プレイリスト保存時の、各種形式による文字コードは以下の通りです。

  真空波動研 (*,sgdkl)         : UTF-16LE
  Media Player Classic (*.pls) : UTF-16LE
  DV (*.lst)                   : ShiftJIS
  Zoom Player (*.zpl)          : UTF-16LE
  BSPlayer (*.bsl)             : ShiftJIS
  WinAMP (*.m3u)               : ShiftJIS
  WinAMP (*.m3u8)              : UTF-8


Ｏ 拡張子自動リネーム時の挙動について

  形式によっては拡張子が複数知られている場合等があります。
  真空では以下の形式は拡張子を揃えてしまいますので、意図しないリネームを避ける為に参考にして下さい。

  MPEG Audio系
   正確にはMPEG1-LayerIIIが*.mp3ですが、LayerII等も全て*.mp3になります。

  MPEG Video系
   *.mpgで統一します。*.vobも実際はMPEG2なので、これも*.mpgになります。
   VideoCDで実際に映像が入ってる*.datも同じく*.mpgになります。

  QuickTime
   *.qt等色々あるみたいですが*.movになります。

  MPEG4
   3GPP系も含めて*.mp4になります。

  Matroska
   音声有り無しを簡単に判別できるものでは無い為、*.mkvなります。


Ｏ CODECS.INI編集について

  Codec判別の核となる対応情報がここに書かれています。

  形式に応じたセクション([AVI]とか)から、次に空行がある所までが検索対象になります。
  従って、セクション中に空行があってはいけません。
  セクション終わりから次のセクションには必ず空行を1行入れる事になります。
  なお、セクションの順番は構いません。

  現状のCodecs.iniを見れば大体解ると思います。

  AVIとREAL系であれば、FourCC タブ Codec名
  WAVであれば、wFormatTag(16進4桁) タブ Codec名
  QTは少し特殊で、FourCCみたいなもの、あるいは文字で表せないものは16進8桁 タブ Codec名

  となります。
  セクションとセクションの間には、セクションと間違えるもの以外は何を書いても影響はありません。
  全てコメント扱いになります。


Ｏ FORMAT.INI編集について

  詳細の出力形式の並び順と、一部の数値の単位を変える事が可能です。
  変更するような人は恐らく見ればすぐ解ると思いますので説明は割愛します。
  なお、項目名は大文字小文字どちらでもOKです。各項目名はFOTMAT.TXTを見て下さい。


Ｏ 既定のプログラム一覧に登録/解除について

  ※管理者権限での起動が必要です※

  既定のプログラム一覧に真空波動研を登録または解除します。
  登録するだけなので、実際に形式ごとに既定にするのは各自行ってください。

  全てを既定にするのはよく考えてから行ってください。
  作者もそうですが、音楽を鳴らす時くらいしか使ってません(汗


Ｏ 隠しオプションについて

  iniの[Main]セクションに以下のパラメータを追記します。

  WMPDefaultWidth=450 (数値)
  WMPDefaultHeight=205 (数値)

  音声再生時のWindowsMediaPlayer部分のサイズを変更する事ができます。大きめの視覚エフェクトを使っている人向けです。
  数値はドット単位なので各自調節してください。

  WMPRateMax=20 (数値)

  再生速度の可変の上限(標準は200%)を引き上げます。
  最高で1000%が上限で、指定の%を10で割った値を入れます。(1000%なら100、標準は200%なので20)


 Ｏ アンインストールについて

  レジストリを使っていませんので、フォルダごと削除してしまえばそれで完了です。
  関連付けをしていた場合は予め解除して下さい。[全て選択]->[元に戻す]が簡単でしょう。

  拡張子を追加していた場合はもちろん、追加してから[全て選択]して下さい。

  なお、先に削除してしまった場合でも、また立ち上げさえすればいつでも関連付け解除は可能です。


Ｏ 現状での仕様と決り事

  ・WindowsMediaPlayerに出来ない事は原則的に出来ません。
  ・WindowsMediaPlayerの仕様上、Speed設定が効かない種類のファイルや、効いても音と映像がズレたりするものが結構あります。
  ・WindowsMediaPlayer側のオプションで設定を変えると、真空波動研上での表示や設定に矛盾が発生します。

  以下はC++Builderに絡む仕様ですが、回避方法等が見つかった場合はできるだけ修正しようと思っています。

  ・ごく希にタスクバーとタスクアイコンが両方出てしまう場合があります。
  ・プレイリストがメインウインドウより上位に固定されます。


Ｏ アイコンについて

  SinkuHadouken.exeにはアイコン募集で送って下さった方々が作成したアイコンを入れてあります。
  ショートカット作成の際や関連付けの際等、あのアイコンが気にくわない方等こちらから選んでみて下さい。

  作成者

  M-Shinichiさん
  e-mouseさん
  Yamaguchi Junpeiさん
  Norio Maedaさん
  匿名希望さん
  クッチ〜さん
  NAYUTAさん

  ありがとうございました。この場を借りてお礼申し上げます。


Ｏ お世話になった方々、ツール、その他

・エル氏 (Almatwool Laboratory http://blue.ribbon.to/~usamimi/)
・yakki氏 (スクリプトのチカラ http://yakki-.hp.infoseek.co.jp/)

  GUIに以下のVCLコンポーネントを使わせてもらっています。

・パンタグラフ氏 (アプリケーションヒント・コンポーネント) ※表示の改造

・yasucchi氏 (URLリンクラベル Ver1.30)

・上記のアイコン提供者の方々

・その他、掲示板やメールで情報提供やバグ報告をしてくれた皆様

・Mersenne Twister (mt19937ar.c)
  Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
  All rights reserved.
  Copyright (C) 2005, Mutsuo Saito
  All rights reserved.
  http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/mt.html

  TagLib (LGPL 2.1) ※同梱のものはVS2022でx86版としてビルドしたDLLになります
  https://github.com/taglib/taglib
  https://github.com/taglib/taglib/blob/master/COPYING.LGPL

  zlib
  https://zlib.net/
  https://zlib.net/zlib_license.html


Ｏ 使用許諾等

  当ソフトを使用した結果被った損害には一切保証しません。
  自己責任にて使用してください。

  詳細の数値は様々な理由上、概算である場合が殆どです。
  真に近いとはいえ正確な値を示している訳では無かったり、バグその他の理由で間違っている
  可能性があります。

  使用形態に関して商用、非商用を問いませんが、
  商用の場合は事後報告でも良いので連絡をお願いします。


Ｏ 要望、文句とかはこちら(できる範囲で要望はなるべく実現します)

------------------------------------------------------
黒羽製作所
https://kurohane.net/
kurohane@kurohane.net
