ThbgmExtractorに関するスレッド。 バグ報告・要望など。 (全159件の投稿) Atom 1.0

※ブラウザによっては新しい書き込みが表示されない場合があるようなので、返信がないか確認したい場合はF5または更新ボタンでページの更新を試してください。

: ID:cipeco0y

ThbgmExtractorに関する質問・バク報告・要望用のスレッドです。

本体配布ページ: https://smdn.jp/works/tools/ThbgmExtractor/

以下ありがちな質問と答え。

「アプリケーションを正しく初期化できませんでした」と表示される
.NET FrameworkをインストールしてからThbgmExtractorを起動してください。
抜き出し後のファイルのサイズが大きい
エンコードするように指定しない限り、抜き出し後に出来るファイルは無圧縮のwavファイルです。
エンコーダを指定してもエンコードされない
ThbgmExtractor.exeと同じフォルダにエンコーダのexeを置くか、Encoders.confにエンコーダの.exeへのフルパスを指定してください。 またEncoders.confに書いたコマンドライン引数を確認してください。
エンコーダの設定について
エンコーダの開発元に質問してください。
最新作・東方シリーズ以外の音楽を抜き出したい
曲目ファイルを自分で書くか、公開されているところからダウンロードしてきてください。 詳細はこちらへ→ https://smdn.jp/works/tools/ThbgmExtractor/#TitleFile
エラーが出る
設定した内容やその時の操作、出たエラーメッセージの内容を教えてください。 また、ウィンドウ下部にあるテキストボックスにエラーメッセージが出力されている場合は、それを教えてください。
うまく抜き出せない
設定した内容やその時の操作、起きた現象の詳細を教えてください。

最新版で動作しない場合、過去のバージョンも試してみてください。
過去のバージョンはこちらよりダウンロードできます→ https://smdn.jp/works/tools/ThbgmExtractor/releases/

: ID:z3r39xGR

初めまして。
ThbgmExtractor version 1.4 beta2のソースをダウンロードさせて頂きました。
個人的な用途で使うソフトを作るのに、
c#で音楽ファイルの区間リピート再生できるソースを探していたので、大変助かりました。
特にalsaにまで対応しているのでありがたいです。

ところで、使わせていただく過程でバグを発見したので報告させて頂きます。
すでに修正済みの場合はご容赦下さい。

  • 壊れたwavファイルが出力されている

デフォルトの設定で複数曲出力すれば容易に再現します。
ファイル出力で出力されたファイルのWAVEデータ(dataチャンク)の末尾に
数バイトのゴミデータが付加されています。

原因は、EffectAppliedBgmStreamのLengthのgetのTimeSpanからのサイズ計算に誤差が発生し、
間違ったサイズのデータを出力しているようです。
試しに、データサイズが4の倍数になるように

-          return (long)(base.Format.BytesPerSecond * (effect.FadingStart + effect.FadingLength + effect.TrailingSilenceLength).TotalSeconds);
+          return (long)(base.Format.BytesPerSecond * (effect.FadingStart + effect.FadingLength + effect.TrailingSilenceLength).TotalSeconds) / 4 * 4;

というコードに変更すると、現象が発生しなくなります。

  • Smdn.Interop.WinMM.PcmStreamPlayerのVolumeが、setした値とgetした値で食い違う (Windows)

ThbgmExtractorには使用されていないので、ソース上のみのバグです。
次のソースで再現します。

 Smdn.Media.PcmStreamPlayer player = Smdn.Media.PcmStreamPlayer.Create();
 player.Volume= 50;
 int v = player.Volume;		// vには49が入る

原因は、PcmStreamPlayerのVolumeのgetの整数同士の計算で誤差が発生しているようです。
試しに、次のように

-        return 100 * (vol.Left - WaveOutVolume.Min.Left) / (WaveOutVolume.Max.Left - WaveOutVolume.Min.Left);
+        return (int)Math.Round(100 * (vol.Left - WaveOutVolume.Min.Left) / (double)(WaveOutVolume.Max.Left - WaveOutVolume.Min.Left));

doubleで計算してRoundすると発生しなくなります。

: ID:cipeco0y

>>2
はじめまして。
詳細な報告ありがとうございます。 2件ともこちらでは把握していないバグでした。
次のリリースでご指摘頂いた箇所をしておきます。

: ID:xSEiNy3/

Ver1.3から使わせて頂いてます。
Ver1.4について要望とエラーの報告をさせて頂きます。

■要望
現状では、一括設定で長さの基準を「ループ回数」にすると、設定したループ回数に達する手前からフェードが開始されますが、達した後でフェードが開始されるような設定が欲しいです。
例えば、「1ループ後、5秒後から10秒間フェード」という感じです。

■エラーの報告
曲目を選択した状態で、フェードの時間等が表示されているボックスに手打ちで適当に大きな数字を入力するとエラーが出たり動作が不安定になるようです。

以上よろしくお願い致します。

: ID:cipeco0y

>>4
要望ありがとうございます。 便利そうなので次バージョンにて取り入れようと思います。

エラーについてですが、CPUが弱かったり入力した時間が長すぎると不安定になると思います。
参考までに、どれくらいの時間を入力ときに不安定になったか、具体的な設定をお教え頂けますか?

現状数十分を越える長さは通常指定しないだろうという前提で作ってありますが、
それよりも長く設定したいようであれば、不安定にならない対処しようと思います。

: ID:xSEiNy3/

>>5
要望の件、前向きに検討して頂けるようで感謝感謝です。

エラーですが、例えば「フェードアウト開始」のボックスに整数で10とか突っ込むとメモリが不足していますといった内容のエラーを吐いて落ちてしまいます。ループ回数を見ると5000回を超えてるのでまずこんな設定をすることはないでしょうがw

私は1ループ聞ければよいので長時間の設定をすることはありませんが、上限は合った方がいいのかもしれないですね。

: ID:cipeco0y

>>6
先ほどversion 1.4.1をリリースしました。 ご要望頂いた一括設定でのフェード開始位置の設定を出来るようにしてあります。

エラーの方ですが、10程度で不安定になるのはおかしいと思ったのですが、version1.4では10と入力すると10日として解釈されるようになってました。
それが原因で不安定となったようです。 1.4.1では10日ではなく10秒として解釈されるように改善しました。

あと、ついでなので、時間を入力できる場所はとりあえずの上限として各6時間にしました。
これでも十分不安定になり得ますが、無応答になって設定すら保存出来なくなるということは少なくなるかと思います。

: ID:xSEiNy3/

>>7
対応ありがとうございます。
早速使わせていただきますm(_ _)m

: ID:nfz66TOS

はじめまして。バグなのかわかりませんが一応報告させていただきます。

version1.3までは外部エンコーダのプルダウンにLAME等が選択できるようになっていたのですが、version1.4の外部エンコーダからは(なし)しか選択できず、外部エンコーダが使用できません。

version1.4ではエンコーダのexeファイルをThbgmExtractor.exeと同じフォルダに入れるだけでなく、外部エンコーダで選択できるようにするための別の操作が必要なのでしょうか。

: ID:nfz66TOS

すみません。>>9ですが自己解決しました。私はEncoders.confをTeraPadを利用して参照していたのですが、コマンドが

; [FAAC 1.28]
; executable=faac.exe
; arguments=-w -b 128 --title "%THBGM_TITLE%" --artist "%THBGM_CREATOR%" --album "%THBGM_ALBUM%" --track %THBGM_TRACK% --year %THBGM_RELEASE_YEAR% -o "%THBGM_OUTPUTFILEPATH%" "%THBGM_INPUTFILEPATH%"
; extension=m4a

; [LAME 3.98.2]
; executable=lame.exe
; arguments=-h -b 192 --tt "%THBGM_TITLE%" --ta "%THBGM_CREATOR%" --tl "%THBGM_ALBUM%" --tn %THBGM_TRACK% --ty %THBGM_RELEASE_YEAR% --ignore-tag-errors "%THBGM_INPUTFILEPATH%" "%THBGM_OUTPUTFILEPATH%"
; extension=mp3

; [OggEnc 2.85]
; executable=oggenc2.exe
; arguments=-b 192 --title "%THBGM_TITLE%" --artist "%THBGM_CREATOR%" --album "%THBGM_ALBUM%" --tracknum %THBGM_TRACK% --date "%THBGM_RELEASE_YEAR%-%THBGM_RELEASE_MONTH%-%THBGM_RELEASE_DAY%" -o "%THBGM_OUTPUTFILEPATH%" "%THBGM_INPUTFILEPATH%"
; extension=ogg

となっていたので、

[FAAC 1.28]
executable=faac.exe
arguments=-w -b 128 --title "%THBGM_TITLE%" --artist "%THBGM_CREATOR%" --album "%THBGM_ALBUM%" --track %THBGM_TRACK% --year %THBGM_RELEASE_YEAR% -o "%THBGM_OUTPUTFILEPATH%" "%THBGM_INPUTFILEPATH%"
extension=m4a

[LAME 3.98.2]
executable=lame.exe
arguments=-h -b 192 --tt "%THBGM_TITLE%" --ta "%THBGM_CREATOR%" --tl "%THBGM_ALBUM%" --tn %THBGM_TRACK% --ty %THBGM_RELEASE_YEAR% --ignore-tag-errors "%THBGM_INPUTFILEPATH%" "%THBGM_OUTPUTFILEPATH%"
extension=mp3

[OggEnc 2.85]
executable=oggenc2.exe
arguments=-b 192 --title "%THBGM_TITLE%" --artist "%THBGM_CREATOR%" --album "%THBGM_ALBUM%" --tracknum %THBGM_TRACK% --date "%THBGM_RELEASE_YEAR%-%THBGM_RELEASE_MONTH%-%THBGM_RELEASE_DAY%" -o "%THBGM_OUTPUTFILEPATH%" "%THBGM_INPUTFILEPATH%"
extension=ogg

と修正したところ、外部エンコーダですべて表示されるようになり、LAMEではエンコードされる事も確認しました。

;が混入していたのはTeraPadによるものなのかが私にはわからないのですが、上記で解決できたということをあらためて報告させていただきます。

: ID:cipeco0y

>>10
version 1.4以降に含まれるデフォルトのEncoders.confは、記述例をすべて;でコメントアウトしてあります。
そのため、編集して;を消さない限り外部エンコーダのメニュー項目には表示されないようになっています。

これは、エンコーダのexeファイルが無い状態(ダウンロードして展開した直後の状態)でもメニューに
エンコーダの一覧が表示されてしまうと、exeファイルのあるなしに関わらずエンコードできるように見えてしまうと考え、
version 1.4以降はEncoder.confを編集しない限りメニューには表示されないように変更したためです。

: ID:gUwehRhI

はじめまして。
使わせていただきました所、1.4~1.5までのバージョン全てで
紅魔郷の07. 明治十七年の上海アリス.wavがなぜかエンコードされませんでした。

外部エンコーダーは LAME 3.98.2 を使いました。

: ID:cipeco0y

>>12
LAMEにはダメ文字を含むファイル名をエンコードできない不具合があります。
「明治十七年の上海アリス」だけエンコード出来ないのはそれが原因です。

先ほどダメ文字を含んでいてもエンコードできるように修正したversion 1.4.2を
リリースしましたので、1.4.2を使ってください。

もともと1.3ではエンコード出来ていたのですが、1.3から1.4でダメ文字対応を削ってしまったので
1.4.1までではエンコード出来なくなっていました。
万が一1.4.2でエンコード出来ない場合は、1.3を試してみてください。

: ID:du0UTrwN

こんにちは。1.3から愛用させて頂いていました。
新しいVer.1.4ですが、設定項目が変わりすぎていて非常に困惑しています。
フェードアウトの設定など前は特に気にせず出来ていたのに、自分で細かく秒数指定するとなると本当に悩んでしまいます。切り取りカーブの呼称も変わっていますし。デフォルトでも前回と全く違いますよね?

また、保存しなければ最後に使った設定やフォルダパスも記憶してくれないので余計に困ります。
前と同じ設定はどのようにすればいいでしょうか?新しい安定版が出た以上、そちらを使わなければ気がすみません。
設定項目を以前のようなおまかせモードと、詳細設定に分ければ良かったのでは?

: ID:cipeco0y

>>14
ご意見ありがとうございます。
version 1.4では機能を増やすことを優先したので、1.3と比べて分かりにくくなったと思っています。 ご不便をおかけしてすみません。

以下、質問頂いた点についてそれぞれお答えします。

1.3と同じ設定の仕方

フェードアウトの設定

1.4では、波形部分のアンカーを移動させることで秒数指定せずともフェードアウトの設定が出来ます。 1.3のスライダと同様の設定がしたい場合は、アンカーを使って設定してください。

切り取りカーブの設定

1.3と1.4の切り取りカーブの呼称対応は次の表のとおりです。

1.3 1.4
通常(線形カーブ) 直線
急激(指数カーブ) 急激
緩やか(対数カーブ) 緩やか
S字(余弦カーブ) 滑らか
デフォルトの設定

デフォルトの設定は1.3と1.4で同じで、変更はしていません。 具体的には

  • ループ2回
  • フェードアウト時間は20秒
  • フェードアウト終了位置は2回目のループ終了位置と同じ
  • 切り取りカーブは線形カーブ

のままです。

設定やフォルダパスの記憶

1.4は最後に設定した内容を記憶するようにはなっていないので、設定した内容は抜き出し設定を保存しない限り破棄されます。 同じ設定を使いたい場合は抜き出し設定を保存してください。
ただそれでもフォルダを選択するときのデフォルトパスは保存されないので、その点はご容赦ください。

なお、まだテスト版ですが、1.5以降では抜き出し設定を保存しなくても、最後に設定した内容は記憶するようになっています。

おまかせモードと詳細設定について

デフォルトの設定は変えていないので、設定を変更しないで抜き出すか、編集メニューの一括設定を使えば、1.3に近いやり方で設定ができます。

一括設定よりも簡単に設定を済ませられるような案があれば採用したいと考えているので、
もし「おまかせモード」について提案や要望などあればお聞かせ頂ければと思います。

: ID:du0UTrwN

>>15
非常に丁寧なご回答を有難うございます。
参考にさせて頂きます。

: ID:MjowpUmA

初めまして。
Ver.1.4.3を使っている者ですが、起動するとCLR.エラー80004005と出てきてしまい対処に困っています。 是非アドバイスをいただけませんでしょうか?

: ID:Uc3GKKlM

はじめまして。
.NET Frameworkは既にインストールされている状態だと思いますので、
その前提でいくつか対処法を書きます。

エラーコードをもとに調べて見ましたが、はっきりとした原因と対処法が
みつからなかったのでうまくいくか分かりませんが、

  1. exeファイルのプロパティを開き「互換モードでこのプログラムを実行する」に
    チェックが付いている場合は、チェックを外す
  2. コントロールパネルで.NET Frameworkの修復を試す
  3. それでもダメなら.NET Framework自体を再インストールする

ことで治ったという例があるようなので、試してみてください。

あと、再インストールは面倒だと思うので、再インストールを試す前に、
ver 1.4.3以前のバージョンが動くかどうか試してみることをお勧めします。

: ID:RR9u3QBF

始めまして、このような素晴しいソフトを知り使おうと思ったのですが
下のようなエラーが出てエンコードできません

EventType : clr20r3 P1 : thbgmextractor.exe P2 : 1.4.3.0
P3 : 4b39d462 P4 : thbgmextractor P5 : 1.4.3.0 P6 : 4b39d462
P7 : 5 P8 : 1b P9 : system.missingmethodexception

ThbgmExtactorのバージョンは1.4.3でlameは3.98を使用しました
このようなソフトを使うのは初めてなので判らない事だらけですがよろしくお願いします。

: ID:Uc3GKKlM

はじめまして。
見慣れないエラーなのでちょっと原因がわかりません。

とりあえず、

  1. お使いのOS
  2. 調べられたらインストールされている.NET Frameworkのバージョン
  3. エラーが出たときの操作 (抜き出しを開始したとき、起動したとき、など)

を教えてください。

また、以下のことを試してみてください

  1. Windows Updateで最新の.NET Frameworkにアップデートする
  2. 1.4.3より前のバージョンを使う
: ID:mtXzEKiC

返事遅くなってすいません

使用しているOSはwindowsXPで
最初、インストールされてなかったので.NET Framework2.0をインストールしました
エラーが出たのは抜き出しの作業をしたときです。

一応最新の.NET Frameworkを最新にして古いバージョンの物を試してみたいと思います。
よろしくお願いします。

: ID:mtXzEKiC

以前質問した19ですが、最新版のNet Framework2.0をインストールしたら使えるようになりました。

お騒がせして申し訳ありませんでした。

: ID:Uc3GKKlM

>>22
ご報告ありがとうございます。 解決したようで何よりです。

入れ違いになってしまいましたが、原因と思しき箇所を修正したバージョン1.4.4を
先ほどリリースしました。
機能的な差異はないので、1.4.3が問題なく動作しているのであれば、
引き続き1.4.3を使って頂いて問題ありません。

: ID:KO3J3Fun

初めまして
1.44を使っているのですが
音楽フォイルを変更すると他の曲目ファイルに変更してもずっと同じになってしまいます。
あと少しどうでもいいですが
設定の保存で曲目ファイルを変えてたときに出るのでやると変えたあとの名前が保存ファイル名に入ってしまいます

よろしくお願いします

: ID:+iq/7O8y

>>24
2つとも意図している動作で不具合ではありません。

まず1つめについて。 曲目ファイルを変更しても、音楽ファイルは変更されません。
音楽ファイルの方を変えたい場合は、手動で希望の音楽ファイルを設定してください。

つぎに2つめについて。 設定を保存するときのデフォルトのファイル名は、
選択されている曲目ファイルのタイトルで決まります。

これらの動作に不都合があるのかと思いますが、書かれた内容からはいまいち
要望が読み取れなかったのでよくわかりません。
もし違うようでしたらご希望する動作をお教えください。

: ID:3aVbWdC7

はじめまして。
便利なソフトウェアを公開してくださってありがとうございます。
東方以外の曲抜き出しにも活用させてもらっています。

要望なのですが、
「ループしない曲」の抜き出しを定義したいとき、
Ver1.3系では、曲目ファイルの「ループ部の長さ[Bytes]」に「00000000」と書くことで対応できたんですが、
Ver1.4系でその曲目ファイルを読み込ませると、フリーズしてしまいます。
何とかフリーズしないように出来ないものでしょうか。
よろしくお願いいたします。

: ID:+iq/7O8y

>>26
先ほどversion 1.4.5をリリースしました。
このバージョンでループ部の長さに0を指定してもフリーズしないように
しましたので、お使いください。

なお、ループしない曲でもフェードアウト等を設定して抜き出せますが、
プレビュー再生ではオリジナルの曲の長さの分までしか再生されません。
この不具合については修正が少し面倒なので、今後のバージョンか
1.5系の方で修正します。 ご了承ください。

: ID:ZrPFUZX4

はじめまして。

かなり低レベルな質問だと思うのですが、ファイルのダウンロードで「このファイルを開くか、または保存しますか?」と出て「開く」を押しても何の反応もなくうまく抜き出し機を起動させることができないのですが・・・ご助言よろしくお願いいたします。

: ID:3+urb4HG

ThbgmExtractorでは未検証です。 試せる方は自己責任でどうぞ。

ttp://jbbs.livedoor.jp/bbs/read.cgi/computer/41116/1280315305/

19 名前が無い程度の能力 [sage] 2010/08/14(土) 17:16:17 ID:Nsac6.ZQ0 Be:
    @thbgm.dat,妖精大戦争
    00000010,0020A520,00CD5180,???
    00EDF6B0,0028EA80,00F6D180,???
    020DB2B0,0002A0E0,00C441C0,???
    02D49550,00232E40,00C09880,???
    03B85C10,001D0280,012B2380,???
    05008210,0008A180,010C2900,???
    06D1AB90,00119F00,019A3800,???
    087D8290,000C8300,01546700,???
    06154C90,001C1B00,00A04400,???
    09DE6C90,001CACC8,004A2FF8,???

    配慮にならない配慮で
: ID:oHpYhpjp

愛用させていただいております。

ここのところ、バージョンアップがないようなのですが開発は一時停止中なのでしょうか?

: ID:3+urb4HG

ありがとうございます。

現在、特に不具合や強い要望は無いようなので、ThbgmExtractorには注力してません。
いつになるかは分かりませんが、少なくとも1.5 beta 2はリリースする予定なので、お待ちいただければと思います。

: ID:iBvYBA+f

1.5 beta 2を使用しております。

まず、不具合ですが、時折終了しようとしたときに
編集済みの設定があります。現在の設定を保存しますか?
のダイアログが出た後、いいえを押しても終了しないことがあります。
再現方法がよくわからないのですがあちこちいじったときによくなります。

あと、こちらは要望なのですが
音楽ファイルの位置をiniか曲目リストなんかに書けるようにはならないでしょうか?
自分はD:\Program~に入れているだけなのですが。

では失礼致します。

: ID:oiKJ7Kya

ありがとうございます。 返信が遅くなりすみません。

終了しない件については、こちらでも調べてみます。
バグのようなら次のバージョンで修正します。

ご要望頂いた件については、1.5 beta 2であればiniファイルに以下の内容を書き込めば、
音楽ファイルの位置を設定できるようになっていたと思いますので、ご活用ください。
ProductInfo:~の後ろの製品名と、InstalledBgmSourcePathに指定するthbgm.datのパスは、
インストール先に合わせて書き換えてください。

[ProductInfo:東方星蓮船 〜 Undefined Fantastic Object.]
InstalledBgmSourcePath=D:\Program~\*****\thbgm.dat
: ID:iBvYBA+f

一つずつ指定するのですね、了解しました。

: ID:atf4u1gm

東方神霊廟の曲を抜き出せますか?

ファイルには星蓮船までしか表示されないのですが・・・。

: ID:vc9X37L6

現時点では東方神霊廟は表示されません。
曲目ファイルを用意すれば表示されるようになります。

また、確認はしていませんが、version 1.5.0なら神霊廟の抜き出しも出来ると思います。

: ID:atf4u1gm

36の物です。曲目ファイルを読み込む とはどうすれば良いのでしょうか?

: ID:atf4u1gm

36の者です。ありがとうございました!

: ID:DbY2Cd5D

こんにちは。いつも愛用させて頂いてます。
ver1.5.0にてタグ周りでの不具合ではないかと思われる事象を発見したのでご報告いたします。

先日ver1.5.0で東方蓄音機の曲目ファイルを使い「デザイアドライブ」を抜き出しました。
その後WMPに入れたのですが、曲名部分とアーティスト名の部分が文字化けしておりました。
また、alneoというオーディオプレーヤーに入れたのですが、こちらではエラーを出して再生することが不可能です。

ver1.4.6で抜き出したところ曲名の文字化けも無くalneoでも再生することが出来ましたので
恐らくver1.5.0の不具合かと思われます。

他の曲ではまだ試していないので全曲こうなるのかは判りませんが、取り急ぎご報告させていただきました。
長文及び原因の勝手な推測、申し訳ございませんでした。

: ID:vc9X37L6

ありがとうございます。

まず、1.5.x系のタグ付け機能については、そもそもおまけ程度の位置づけなので、
現在の動作で不都合があるようでしたら、ほかのタグ付けツールを使うことをお勧めします。
ほかのツールでタグを再設定することで、再生できない問題も回避できると思います。

文字化けについてですが、1.5.0から使用するようになった外部のライブラリ(TagLib#)が原因ではあるのですが、
ライブラリ側の都合なので、申し訳ありませんがThbgmExtractorとしては対処はしない方針です。
代わりに、文字コードにShift-JISを使うタグ付けツールを使ってください。

ThbgmExtractorで出力したファイルがそのままでは再生できないという点については、
可能なら対処したいと思いますので、再生しようとしたのがWAVファイルなのか、
もしくはエンコードしたファイルなら使ったエンコーダを教えていただけると助かります。

: ID:DbY2Cd5D

返答ありがとうございます。

少々お訊きしたいのですがThbgmExtractorのタグ付け機能を完全に切る事はできますでしょうか。
手動でタグ部分(出力ファイル名以外)は削除してみましたが再生できない点は変わりませんでしたので。
手動でタグを消した後もalneo側で見たらリリース年の部分に変なタグがついていたので、これらを切れれば恐らく再生できるとは思うのですが・・・

再生しようとしたファイルはThbgmExtractorを使って抜き出したWAVファイルです。
上記の通りalneoでは再生不可能でしたが、WMP側では再生可能でした。

: ID:sisSL6UE

症状の詳細とご提案ありがとうございます。

先ほどタグ付け機能を無効に出来るようにしたversion 1.5.1をリリースしました。
[抜き出し]メニューの一番下に[タグを設定する]という項目を追加してあります。
これのチェックを外せば、ThbgmExtractorは一切ダグ付けをしなくなります。

こちらでは確認は出来ませんが、恐らくalneoでも再生は出来るようになっていると思います。
ご確認ください。

文字化けについては>>42のとおりですが、参考までに再生できない件について。

1.4.6ではWAVファイルの場合RIFFタグのみを埋め込んでいたのですが、
1.5.0ではRIFFタグとID3タグを埋め込んでいました。
alneoはWAVファイルに埋め込まれたID3タグに対応していないか、
ID3タグのバージョンが合わず、再生できなかったのかもしれません。
なお1.5.1でタグ付けを無効にすると、RIFFタグもID3タグも付けなくなります。

: ID:DbY2Cd5D

返答及び新版リリースありがとうございます。

ver1.5.1でタグを切ってみましたところ、無事再生することが出来ました。
どうやらalneoはID3v1・ID3v2.3の対応だったようです。

丁寧な解説、そしてわざわざ機能追加までしてくださりありがとうございました。

: ID:U0DrrUY6

緋想天と非想天則の曲を抜き出したいのですが
Variabler Sternさんのサイトが閉鎖されてしまったようで途方に暮れております。
なんとかなりませんでしょうか・・・

: ID:0r8C5mnA

先ほどまで書き込みが出来なくなっていたようです。 失礼しました。

ThbgmExtractorは緋想天・非想天則には対応してませんし、対応予定もありません。
またVariabler Sternさんの所で公開されていたツールについても詳しくは知らないので、
こちらとしてもなんともしようがありません。

代わりに他のツールを探すしかないと思うのですが、このあたりを参考にすれば
抜き出せるんじゃないでしょうか。
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1032874490

: ID:CO4vF+XP

すみません。>>36から見ましたが神霊廟の抜き出しがうまくいきません。

神霊廟にはthbgmファイルがないのでth13から抽出しようと思いましたが見事にノイズでした。

どのファイルから抽出すればいいのでしょうか

: ID:0r8C5mnA

th13というのは恐らくth13.exeのことかと思いますが、そのファイルには音楽データは
入っていないので当然ノイズしか抽出できません。

神霊廟本体を起動して音楽が再生できているのであれば、thbgm.datというファイルが
あると思います。 thbgm.datというファイルを探して、そこから抽出してください。

: ID:CO4vF+XP

>>49
解決しました。
ありがとうございました

: ID:CwMVUeLF

すみません。Ver1.5.1.0のことなんですが、
曲を抜き出すとwavのファイルが0kbになっていて曲が再生できません。
素人なので手も足も出ない状況です。
OSはXPと8と両方で試したのですが結果は変わりませんでした。
ゲーム中は音楽は流れているのでthbgmもおかしくないと思います。
どうしたらよいのでしょうか。

: ID:KDQyA187

先ほどまで書き込みするとエラーとなってしまっていたようです。 失礼しました。

>>51
エラーメッセージ等は出ず、抜き出しには成功したが、ファイルは0kbだった、ということでしょうか。

ThbgmExtractorの画面下部にあるメッセージボックスにエラーログが出ているかも
しれませんので、ご確認頂けますか。

抜き出し設定(フェードアウト開始時間など)の設定内容や、外部エンコーダの設定等が
原因の可能性もあるので、試しに設定をデフォルトのままにして抜き出せば変わるかもしれません。

: ID:/f1z9w6Z

東方心綺楼用のデータは配布されないのでしょうか?

: ID:HMbHT7/s

ThbgmExtractorとしては今の所東方心綺楼用曲目ファイルの配布予定はありません。

: ID:apqUV9sM

いつも便利に使わせていただいています。

弾幕アマノジャクの曲目ファイルを読み込ませようとすると文字化けしました。
一応解決はしましたが・・・。

http://smdn.jp/works/libs/Smdn.Formats.Thbgm/#TitleFileFormat
>@で始まる行
>音楽ファイル(thbgm.dat)のパス(インストーラのデフォルト設定でインストールされる場所)を表します。 相対パスを指定した場合は%PROGRAMFILES%からの相対パスとして解釈されます。 カンマ以降(パスの後ろ)は製品名を表します。

製品名部分で「アマノジャク」を入れると化けました。
パス部分では問題なかったです。
最終的には文字コードをUnicodeLEにすると問題なく読み込めました。
今まではShiftJISやUTF-8で問題なく使ってましたが
実は曲目ファイルに文字コードの指定があったのでしょうか。

最近は長時間作業時用再生ソフトとしても使っていたりします。
ループ回数の設定などが便利だったり。
もし可能でしたら前へ次へと連続再生ができたりすると嬉しいです。
そういうソフトじゃねえ他使え!という場合はそうなのですが。

: ID:DdfZu2HU

>>55
不具合報告とご要望ありがとうございます。
先ほど文字化けに関する改善を施したversion 1.6.1をリリースしました。

まず文字化けの件から。 これまでのバージョンでは、曲目ファイルのどこかに
「東方」という文字列が含まれていれば、そこから文字コードがShift_JISかUTF-8か
どうかの判断をしていました。
弾幕アマノジャクだと「東方」が含まれないため、文字コードの判別ができずに
文字化けしたものと思われます。

version 1.6.1からは、「東方」に加えて新たに「上海」「曲データ」という文字列
からもShift_JISかUTF-8かどうかの判別を行うようにしました。
曲目ファイルにこれらの文字列が含まれていて、かつ文字コードがShift_JISかUTF-8の
どちらかであれば正しく読み込めるようになっています。
また、判別が出来なかった場合に使用する文字コードもASCIIからUTF-8に変更しています。

UnicodeLEに変更して読み込めたのは、いわゆるBOMがセットされている場合は、
BOMから判断した文字コードを使って読み込む動作によるものと思われます。
この動作については変更はありません。

続いて、連続再生の機能について。 ThbgmExtractorの再生機能はあくまで抜き出し結果の
プレビュー用という位置づけですが、曲間の繋がりもプレビューできたほうがいいかと思い、
ご要望頂いた連続再生の機能を追加しようと思います。
ただ、動作の検証等で少し時間がかかりそうなので、次以降のバージョンにて実装する予定です。
また、再生順は曲目リスト順固定(順方向のみ)とする予定なのでその点はご了承ください。

: ID:apqUV9sM

対応ありがとうございます

文字コード判別はなるほど
実験中に色々試していて確かに「東方」と入れたときだけ化けずに不思議に思っていました
ちなみにリリース一覧には
>判別できなかった場合に使用する文字コードをASCIIからShift_JISに変更
とありますが・・・?

連続再生機能も正座して待たせていただきます。

: ID:DdfZu2HU

>>57
お待たせしました。
先ほど連続再生の機能を実装したversion 1.6.2をリリースしました。
先に書いたとおりプレビュー用としての機能追加なので、もしかしたら
ご希望に添えないものかもしれませんが、どうぞご利用ください。

文字コードに関してですが、>>56の「ASCIIからUTF-8に変更」は誤りで、
リリース一覧にある「ASCIIからShift_JISに変更」が正しいです。
失礼しました。

また、文字コード判別処理の動作について詳細を追記しています。
すでに問題は解決したものかと思いますが、よろしければ参考程度にどうぞ。
http://smdn.jp/works/libs/Smdn.Formats.Thbgm/#TitleFileFormat

: ID:apqUV9sM

全く待たされておりません・・・
本当に即行での対応ありがとうございます。
今後も末永く利用させていただきます。

: ID:5W0rON/+

東方紅魔郷にはthbgm.datがなくwavファイルになっており
変なところで切れてしまってるのですが
こちらのソフトでどうにかならないのですか?

: ID:ldeUX2tb

>>60
東方紅魔郷の場合は次の手順で編集できるようになります。

  1. 曲目ファイルで東方紅魔郷を選択
  2. 音楽ファイルの横にある[...]をクリックしてth06_01.wavを開く

これでループ回数等を指定して抜き出せるようになります。

: ID:5W0rON/+

>>61
ありがとうございます

: ID:BElaPIjM

ver1.6.2でタグが反映されません。
タグを設定するにチェックはしてます。

: ID:89zanl/k

>>63
回答が遅くなりすみません。
エンコーダー設定は何を使っていますか?

エンコードなし(WAVEファイルでの出力)の場合でもタグの設定は行いますが、
再生ソフトによってはタグが表示されません。
そのため、単に表示されていない可能性もあります。

: ID:BElaPIjM

>>64
全然大丈夫です。
mp3でエンコードしたら表示されました。
ありがとうございます。

: ID:Ujy/zDl4

稀翁玉の曲目ファイルを読み込ませてもうまくいきません

@,稀翁玉
%kog_00.wav,0000002C,0010F5DC,0072B180,稀翁玉 ~ Fairy Dance
%kog_01.wav,0000002C,00306928,019FA494,天鵞絨少女戦 ~ Velvet Battle
%kog_02.wav,0000002C,000861EC,01218B94,Castle Explorer -in the Sky-
%kog_03.wav,0000002C,001384C0,010009A4,オルフェの詩 ~ Pseudoclassic
%kog_04.wav,0000002C,000878C8,01EA3D94,新幻想 ~ New Fantasy
%kog_05.wav,0000002C,00082B8C,01430774,オルレアンの聖騎士
%kog_06.wav,0000002C,003C0304,00FE8084,My Maid, Sweet Maid
%kog_07.wav,0000002C,0029525C,01040F48,桜花之恋塚 ~ Flower of Japan
%kog_08.wav,0000002C,0003A340,01CAB3D8,乙女戦士 ~ Heart of Valkyrie
%kog_09.wav,0000002C,00855BB0,00FFBE34,エニグマティクドール ~ God Knows

なにが問題なのでしょう
読込先のファイルはkog_00.wav・・・となっております。

: ID:89zanl/k

>>66
曲目ファイルに音楽ファイルへのパスが記述されていないことが原因と思われます。
以下の手順に従って手動で音楽ファイルのパスを指定してみてください。

  1. [曲目ファイル]のリストに稀翁玉があるのを確認して、選択する
  2. [音楽ファイル]の右側にある[...]をクリック
  3. ファイルの種類を「すべてのファイル(*.*)」に変更し、kog_00.wavを開く
: ID:Ujy/zDl4

>>67
迅速な回答ありがとうございます
ですが音楽ファイルのパスを指定していても抜き出しは始まるのですがすぐに失敗してしまうのです

: ID:89zanl/k

>>68
失敗する際にエラーメッセージが表示されるならその内容を、
画面下のログにエラーが出力されていればその内容を教えてください。

: ID:Ujy/zDl4

>>69
エラーメッセージは出ていません
何一つ完了していないのに完了したという表示が出ます

: ID:89zanl/k

>>70
ありがとうございます。

ThbgmExtractorの画面最下部にあるエラーログの方は確認されましたか?
恐れ入りますが、右クリックで[すべて選択]→[コピー]でメモ帳などにコピーし、
エラーが出ていないか確認してください。
もし出ているようなら、その内容をこちらに貼り付けてください。

: ID:Ujy/zDl4

>>71
よくわからないので全部貼り付けます

loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_kioh.txt (稀翁玉)
loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_th125.txt (ダブルスポイラー ~ 東方文花帖)
loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_th128.txt (妖精大戦争 ~ 東方三月精)
loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_th13.txt (東方神霊廟 ~ Ten Desires.)
loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_th14.3.txt (弾幕アマノジャク)
loaded: C:\Users\kazu\Downloads\新しいフォルダー (2)\ThbgmExtractor-1.6.2\titles_th14.txt (東方輝針城 ~ Double Dealing Character.)
2015-02-15T19:38:15.4913071+09:00 '稀翁玉'を抜き出し中。
2015-02-15T19:38:15.5013077+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5023078+09:00 [稀翁玉 ~ Fairy Dance] 抜き出しを開始します。
2015-02-15T19:38:15.5063080+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5073081+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5083081+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5093082+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5103082+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5123083+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5133084+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5143085+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.5153085+09:00 An exception occurred while extracting: System.ArgumentException: the end of track must be before the end of stream
パラメーター名:trackInfo

  場所 Smdn.Formats.Thbgm.TrackInfo.GetStream[TBgmStream](String thbgmPath, Int32 timesToRepeat, Boolean loadOnMemory, Object[] args)
  場所 Smdn.Windows.Forms.ThbgmPlayer.Track.GetStream(String bgmSourcePath)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.ExtractTrackTask.Extract(BackgroundWorker worker)
  場所 Smdn.Applications.ThbgmExtractor.ExtractBackgroundWorker.<OnDoWork>b__e(Object sender, DoWorkEventArgs doWorkArgs)
  場所 System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
  場所 System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

2015-02-15T19:38:15.9893356+09:00 完了しました。

以上です

: ID:89zanl/k

>>72
ありがとうございます。

曲目ファイルに記述されている内容に問題があります。
具体的には、曲目ファイルに記述されている「開始位置+イントロ部の長さ+ループ部の長さ」が
各音楽ファイルの長さを超えています。

イントロ部の長さ、またはループ部の長さに指定されている数値の
どちらかまたは両方が誤っていると思われます。
数値を修正した上で改めて試してみてください。

なお、稀翁玉はゲームを所持していないため、こちらでは正しい数値の検証は出来かねます。

: ID:Ujy/zDl4

ありがとうございます
もしよろしければどのようなソフトで解析できるのか教えて貰えないでしょうか

: ID:89zanl/k

>>74
こちらではそういった話題は扱いません。
検索すればソフトや解析手法がいくつか出てくると思います。

: ID:Ujy/zDl4

そうですかわかりました
長々と失礼しました

: ID:bHqkDfog

自作曲のループを使用した時になぜか偶数ループ目だけノイズとして認識され、奇数ループの時は通常通り認識するというバグを発見しました。色々と試した所、曲データ設定ファイルのループ部長さの最下位の数字が奇数(1,3,5,7,9,B,D,F)である場合に発生するということを確認しました。

偶数ループ目では本来2バイトずつ読み込むべきデータが1バイトだけずれているのかと思われます。あまりThBgmExtractor自体の仕様は分からないので正確なことは言えませんが一応報告させて頂きます。

: ID:/b5NIECk

>>77
ご報告頂きありがとうございます。

現在のThbgmExtractorの仕様では、音源を常に2チャンネル(ステレオ)16ビットとして扱います。
つまり4バイトが最小単位であることが前提となっています。
これに従い、ループ部の長さも4バイト単位の数値となっていることが暗黙的な前提となっています。

そのため、ご報告頂いたとおりループ部の長さが奇数など4の倍数となっていない場合には、
抜き出した結果を出力する際にズレが生じます。
これにより、ズレが発現する偶数ループ目の音声を聞くとノイズとなってしまいます。

現状ではステレオ16ビット以外のPCM音源には非対応となっています。
そのため、モノラルや8ビットの音源を扱いたい場合は、ステレオ16ビットに変換した上で
ThbgmExtractorに渡すようにしてください。

: ID:bHqkDfog

>>78
素早いご回答有難うございます。

: ID:P9QcoZzq

はじめまして。
ver1.6.2をDL、解凍し、ThbgmExtractorを起動したところ、
指定されたデバイス、パス、またはファイルにアクセスできません。アクセス許可がない可能性があります
というメッセージが表示されました。
再DLを試したりもしましたが、同じメッセージが表示されました。
この場合はどう対処すればよいでしょうか?
低レベルな質問ですいません。

: ID:P9QcoZzq

>>81
解答有難うございます。
そちらの方法も試したのですが、変わらず同じ表示になりました。
もしかしたらとフォルダの中身全てに同じことをしても変わりませんでした。

: ID:roFKE8GQ

>>82
こちらの手順ではどうでしょうか?
http://okwave.jp/qa/q8512476/a23699265.html

ThbgmExtractorを管理者権限で実行すればとりあえず動作はするかもしれません(推奨はできません)

ブラウザや解凍ソフトを管理者権限で実行していないか確認してみてください。

: ID:P9QcoZzq

>>83
とりあえず動作はしました。
お手数かけてすいませんでした。

: ID:uzRyp+7Q

二分木のアルゴリズムがC#で掲載されていて、大変参考になりました。
C言語のものでは概念がなんとなくだったのですが、C#で一旦動くようになれば、値の動きや遷移がわかるので、変数の意味がよくわかったり、機能の追加ができるようになりました。
ありがとうございます。

: ID:l01bxtde

>>85
こちらはThbgmExtractorに関するスレッドで扱うテーマが異なりますので、以降はこちらhttp://smdn.jp/misc/forum/programming/をご利用いただけると幸いです。
ともあれ、参考になったようでなによりです。

: ID:kPd+s4hz

Windows10でタグが書き込まれないバグが存在します。
修正よろしくお願いします。

: ID:kPd+s4hz

Windows10でタグが書き込まれないバグが存在します。
修正よろしくお願いします。

: ID:+LyRQS9z

>>88
ご報告頂きありがとうございます。
調査の上、追って修正版をリリースしますので今しばらくお待ちください。

: ID:kPd+s4hz

環境はWindows10 Pro 64bit

     .NET4.6 (Windows10ではダウングレード不可)
     です。
     
: ID:+LyRQS9z

>>90
先ほど修正を行ったversion 1.6.3をリリースしました。

このバージョンでは、WAVファイル形式で出力した場合でもエクスプローラやプロパティでタグが表示されるように修正しています。
WAVファイルで出力する場合は抜き出しダイアログの「WAVのタグ形式」を「Windows標準形式」に設定してください。
(過去のバージョンでもWAVファイルにタグの設定自体は行っていましたが、エクスプローラ等では表示されない問題がありました)

なお、「アルバムアーティスト」の項目に関しては、タグ自体の設定は行っていますが、エクスプローラでは表示されません。
これはエクスプローラ側の問題と思われるため対処が難しいですが、今後もし可能なら修正します。

MP3, M4A, Ogg形式で出力した場合については、version 1.6.2でも問題なくタグ付けがされていたので、
本バージョンでは特に修正は行っていません。

その他、変更点について詳しくはこちらを参照してください。
http://smdn.jp/works/tools/ThbgmExtractor/releases/#changes_v1.6.3

: ID:4hNJDx8j

flacでの出力は可能でしょうか?

: ID:+LyRQS9z

>>92
コマンドラインから呼び出せるFLACエンコーダーを用意し、Encoders.confファイルに必要事項を
記載することにより、FLAC形式での出力も可能になります。
詳しくはEncoders.confファイルを参照してください。

FLACではなくALAC(Appleロスレス)形式での手順にはなりますが、こちらのエントリと
同様の方法で設定することができます。
http://blog.conafie.jp/2012/04/apple.html

: ID:w3rukCco

風神録以外のweb体験版には対応していないのですか?

: ID:w3rukCco

>>95
無いので作ろうと思ったのですが、よくわかりません
紅魔~花映のWEB体験版を抜き出そうとしています

: ID:w3rukCco

>>97
ゲーム側のBGMファイルは「th07tr」とかのDATファイルですか?
風神録はBGMと書いてあったのでわかりましたが…

: ID:5U/9Z0Js

>>98
こちらの認識に誤りがありました。

>>95にて曲目ファイルを用意することで対応可能と書きましたが、
風神録より前の作品のWEB体験版では音楽ファイル(thbgm.dat)が付属しないため、抜き出しはできません。

紅魔郷~花映塚の音楽を抜き出したい場合は音楽ファイルが同梱されている体験版Plusを入手してください。

: ID:T8Qg0/sn

素敵なツールをありがとうございます。
特に一括設定機能が大変素敵です。

曲目ファイル内の各種ProductInfoは、抜き出しを行う時に実際どのように活用できるものなのでしょうか?
また、ファイル名やタグの記述に使えるワイルドカード(?)にはどのようなものがあるのでしょうか?

フォーマット解説ページで各種ProductInfoについて「これらの情報を使ってタグ付けを行います」と書かれていることと、
「タグの一括設定(T)...」→「出力ファイル名」欄で$tracknoや$titleというワイルドカードが使われていること、
また$tracknoや$titleについての解説情報が見当たらないことから、
ProductInfoも$Creatorみたいな感じで全部同様にファイル名やタグに文字列として記述できるのかな~と思い、

@上海アリス幻樂団\東方天空璋\thbgm.dat,東方天空璋 ~ Hidden Star in Four Seasons.

#=ProductInfo,Creator,上海アリス幻樂団

#=ProductInfo,Prefix,th16
#=ProductInfo,ShortName,東方天空璋
#=ProductInfo,AbbreviatedShortName,天空璋
#=ProductInfo,ShortestName,天

#=ProductInfo,ReleaseDate,2017-08-11
... 以下略}}

上のような曲目ファイルを利用する状態でそのような記法を試したのですが、
ファイル名として有効に使えたのは$Creatorと$Prefixだけで、他はそのままの文字列("$ShortestName"など)となってしまいましたし、
タグにおいては$tracknoや$titleすら一切仕事をせず全てそのままの文字列となりました。

  1. ProductInfoは何に使うのか
  2. ファイル名やタグで使えるワイルドカードは($tracknoと$title以外に)何があるのか
  3. ProductInfoをファイル名やタグで使えないのが現在の仕様なら、使えるようにしていただくことは可能か(要望)

以上3点についておうかがいしたく、書き込みさせていただきました。
宜しくお願いします。
なお、OSはWindows7 Professional 64bitです。

: ID:T8Qg0/sn

…あれ? コードブロックの記法をしくじりました。すみません。

: ID:5U/9Z0Js

>>100
ご質問・ご要望を頂きありがとうございます。 以下頂いた3点について順に回答します。
($tracknoなどの文字列はワイルドカードではなくマクロと呼んでいるので、以後マクロと表記します)

1. ProductInfoは何に使うのか

曲目ファイル内に記載されたProductInfoの情報は、タグ付けの際の情報として使用されるほか、
出力フォルダ名・出力ファイル名を決める際にも使用されます。
(解説ページでは出力フォルダ・ファイル名について記載していなかったため、追記しました)

このうちタグ設定の出力ファイル名では$trackno$creatorなどのマクロが使用でき、マクロの展開(置換)が行われます。

出力ファイル名にマクロを含む文字列を設定すると、マクロが展開された結果が実際の出力ファイル名に
なりますが、この際にProductInfoなどの情報に基づいてマクロが展開されます。 (詳細は次の回答にて)

一方、タグ設定の出力ファイル名以外では$tracknoなどのマクロの展開(置換)はされません

※もともとマクロは出力ファイル名をTHxxBGM等と同じ形式にする(同時に任意の形式にもできるようにする)ことを
目的に導入したものです。 そういった経緯から、マクロが使用できるのはファイル名のみとなっています。

2. ファイル名やタグで使えるワイルドカードは($tracknoと$title以外に)何があるのか

現在version 1.6.4の時点で定義されているマクロについては、下記の場所に追記しましたのでご覧ください。
https://smdn.jp/works/libs/Smdn.Formats.Thbgm/#ThbgmExtractor_Macro

※これらのマクロは、タグの一括設定画面の出力ファイル名欄の横にある[...]をクリックして表示される
ドロップダウンメニューからも入力することができるようになっています。

3. ProductInfoをファイル名やタグで使えないのが現在の仕様なら、使えるようにしていただくことは可能か(要望)

前述の通り、現時点では出力ファイル名でマクロが使えます。
($ShortestNameが展開されなかったのはその名前ではマクロが定義されていないためで、
代わりに$pshortestと指定すれば期待する結果が得られます)

ファイル名以外では現状マクロは使えませんが、使えるように変更することはできます。
ただ、実際に変更するか検討する際の参考として、どのタグにどのような値を設定したいと考えているか、
どのようなマクロが設定できると希望に沿うものとなるのか、具体的な希望をお聞かせください。
利便性があり、既存の機能で実現できないものであれば、変更を検討したいと思います。

タグに設定したい値が現在マクロ(またはProductInfo)で定義されていないものであれば、
それを挙げていただいてもかまいません。

>>101
こちらこそすみません。 記入例が分かりづらかったので改善しました。

: ID:T8Qg0/sn

全体的によく理解できました。ありがとうございました。
特に、ファイル名欄の横の「...」から選べそうという発想が全く抜けていました…!
なまじファイル名を指定する欄なので、てっきり実際のファイルを「参照...」しに行くようなボタンだとばかり思い込んでいました。
可能なら、このボタン名は「マクロ...」などとしていただけるとわかりやすくて良いかと思いました。

希望をお聞かせください

タグについてはファイル名からの流れで一緒に検証しただけなので、私自身がタグに特定のマクロを用いたいというわけではありません。
解説記事の情報追加も含め、大変ご親切にありがとうございます。
強いて言えば、Windowsのファイル名ソートの都合上、
ファイル名の小数点ナンバリングをthXX-X形式としたい(th155でもth15.5でもなくth15-5)という要望はありますが、
これはまあ曲目ファイル側で事前調整しておくことなのかなと思いますのでもし可能ならという感じです。

また、コードブロックなどについての説明の改善もありがとうございます。
「書き込み内容の確認」画面でよくチェックするようにします。

: ID:5U/9Z0Js

>>103
ご意見ありがとうございます。

[...]については確かに誤解しやすい感があるので、[マクロ...]とするか[>>]のようにするか、
今後のバージョンで入力候補的なニュアンスが現れる何らかの表記に変更したいと思います。

小数点ナンバリングについては、出力ファイル名形式を"th15-5 $trackno.wav"のように
直接文字列で記述すれば対応できますし、また曲目ファイル側で指定すれば$prefixマクロで
記述することもできます。 このため現在の機能で不足はなく、またThbgmExtractorとして
対応するほどの必要性もさほどないかなと思っています。

また、タグでマクロを使いたいという希望ではないとのことから、マクロの扱いは現状のままと
させていただきたいと思います。

今後またご要望がありましたらこちらで受け付けますので、お気軽にお問い合わせください。

: ID:RaEPwSV/

東方神霊廟の霊界トランスのBGMが倍速になってしまうのですが、、、
曲目ファイルはあま茶さんのものを使っています。

: ID:RaEPwSV/

>>105
すみません別の曲目ファイル(あま茶さん作じゃないもの)を使ったら治りました。

: ID:5U/9Z0Js

>>105 >>106
すでに解決したようですが、他ユーザーへの情報共有のため原因と対処法について記載しておきます。

まず原因について。 確認したところ、使用された曲目ファイルの霊界トランスBGMに
サンプリングレートの指定が書かれていませんでした。

倍速で再生されたのは、サンプリングレート22050Hzで抜き出されるべきところが、
デフォルトの44100Hzで抜き出されたためです。

次に対処法について。 霊界トランスBGMでは曲目ファイルでサンプリングレートを
22050Hzと指定するようにする必要があります。

具体的には曲目ファイルで次のように記述します。

#=SamplingRate,22050,開始位置,イントロ部の長さ,ループ部の長さ,(霊界トランスBGM)

代わりに使用したとされる曲目ファイルではこのような記述となっていたと思われ、これにより
適切なサンプリングレートで抜き出しが行われ、再生時も正常な速度になったと思われます。

: ID:TIOC1p5s

はじめまして。
「ループ部分のみの抽出、出力について」
自分で調べられる限り色々な所(東方音楽系ツール(東方蓄音機、THxxBGMなど)の解説サイト、知恵袋などの質問サイト、thwikiなどのWikiサイトなど)を調べたのですが、
ループ開始時間、ループ終了時間、ループする時間の一覧表を掲載しているサイト及び、
ループする部分のみを抽出し、出力するソフトを見つけられませんでした。
THbgmExtractorでは、ループする部分のみを抽出し、出力することは可能でしょうか?

もう一つ、出力時間を5時間ジャストにしようとしたら例外が発生しました。
以下のURLは、その時のスクリーンショットです。
https://drive.google.com/open?id=1rgKVK86W0_n6-qfvtMD4agyo7IEJxMWk

: ID:5U/9Z0Js

>>108
ThbgmExtractorでは、ループ部分のみの音声を抜き出して出力することはできません。
機能として用意していませんし、今後そういった機能を実装することも考えていません。
どうしてもループ部分のみを出力したいのであれば、恐れ入りますが他のツールをお使いください。

あるいは、ThbgmExtractorではフェードアウトの長さを0、ループ回数も0にすればイントロ部のみを
出力することはできるので、音声編集アプリでイントロ部+ループ部の音声からイントロ部を
取り除くことにより、ループ部のみを取り出すというやり方は考えられます。
なお、具体的な方法についてはThbgmExtractorの取り扱う範囲外となるので、ご自身でお調べください。

5時間ジャストにしたら例外が発生した件については、調査の上修正します。
現状では回避策が提示できませんので、お手数ですがこまめに設定を保存するなどして対処してください。

: ID:5U/9Z0Js

>>108
先程ThbmgExtractor version 1.6.5をリリースしました。
5時間ジャストにしたら例外が発生した件に関連して、[オプション]メニューに波形の
表示をオン/オフできる設定を追加しました。
例外が頻発する場合は波形表示をオフにすることで回避してください。
根本的な修正については原因がはっきりしないため、今後のバージョンで行います。

その他1.6.5での変更点については下記ページをご覧ください。
https://smdn.jp/works/tools/ThbgmExtractor/releases/#changes_v1.6.5

: ID:TIOC1p5s
教えていただきありがとうございます。

5時間ジャストにしようとしたら例外が発生した件なのですが、
その時のソフトのスクリーンショットを撮ってきました。
https://drive.google.com/open?id=1AVYh3BPUW70YohT9yieRoQgSkdG-TQlj
以下、例外ダイアログに表示されている全文です。


Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
System.ArgumentOutOfRangeException: ゼロまたは正の値を指定してください
パラメーター名:Position
実際の値は -1814828136 です。
   場所 Smdn.IO.CachedStreamBase.set_Position(Int64 value)
   場所 Smdn.Windows.Forms.ThbgmPlayer.EffectAppliedBgmStream.set_Position(Int64 value)
   場所 Smdn.Windows.Forms.ThbgmPlayer.WaveFormView.WaveForm.ReadWaveForm()
   場所 Smdn.Windows.Forms.ThbgmPlayer.WaveFormView.WaveForm_Modified(Object sender, EventArgs e)
   場所 Smdn.Windows.Forms.ThbgmPlayer.WaveFormView.WaveForm.Effect_PropertyChanged(Object sender, PropertyChangedEventArgs e)
   場所 System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Effect.OnPropertyChanged(PropertyChangedEventArgs e)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Effect.set_FadingStart(TimeSpan value)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Effect.SetTotalLength(TimeSpan totalLength, TimeSpan fadingLength, TimeSpan trailingSilenceLength)
   場所 Smdn.Windows.Forms.ListViewSubItemEditorBase.OnEditEntered(EventArgs e)
   場所 Smdn.Windows.Forms.ListViewSubItemEditorBase.EnterEdit()
   場所 Smdn.Windows.Forms.ListViewSubItemEditorBase.ProcessCmdKey(Message& m, Keys keyData)
   場所 System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   場所 System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
   場所 System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
   場所 System.Windows.Forms.TextBoxBase.ProcessCmdKey(Message& msg, Keys keyData)
   場所 System.Windows.Forms.TextBox.ProcessCmdKey(Message& m, Keys keyData)
   場所 System.Windows.Forms.Control.PreProcessMessage(Message& msg)
   場所 System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
   場所 System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3260.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ThbgmExtractor
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ThbgmExtractor.exe
----------------------------------------
System.Windows.Forms
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3314.0 built by: NET472REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Smdn.Formats.Thbgm
    アセンブリ バージョン:1.6.3.0
    Win32 バージョン:1.6.3.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Thbgm.DLL
----------------------------------------
Smdn
    アセンブリ バージョン:2.2.0.0
    Win32 バージョン:2.2.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.DLL
----------------------------------------
ThbgmExtractor.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/ThbgmExtractor.resources.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Forms.ThbgmPlayer.DLL
----------------------------------------
System.Core
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Smdn.Formats.Ini
    アセンブリ バージョン:0.22.0.0
    Win32 バージョン:0.22.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Ini.DLL
----------------------------------------
System.Configuration
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2612.0 built by: NET471REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Smdn.Formats.Playlists
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Playlists.DLL
----------------------------------------
taglib-sharp
    アセンブリ バージョン:2.1.0.0
    Win32 バージョン:2.1.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/taglib-sharp.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/Smdn.Windows.Forms.ThbgmPlayer.resources.DLL
----------------------------------------
Smdn.Media
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Media.DLL
----------------------------------------
Smdn.Windows.Multimedia
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Multimedia.DLL
----------------------------------------
System.Windows.Forms.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Smdn.Core.Miscellaneous
    アセンブリ バージョン:0.30.0.0
    Win32 バージョン:0.30.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Core.Miscellaneous.DLL
----------------------------------------
mscorlib.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging 
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。


exception occured while conversion
System.ArgumentOutOfRangeException: must be in range 1 to 6 (Parameter 'Level')
Actual value was 17.
   at Smdn.Formats.Notations.XhtmlFormatter.FormatHeading(Heading heading)
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.PukiWiki.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.SmdnExtensions.PukiWikiXhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNodes(IEnumerable`1 nodes)+MoveNext()
   at System.Xml.Linq.XContainer.AddContentSkipNotify(Object content)
   at System.Xml.Linq.XContainer.Add(Object content)
   at Smdn.Formats.Notations.XhtmlFormatter.Format(Document document)
   at Smdn.Applications.SmdnBbs.Xhtml.ConvertNotation(String content, Parser parser, XhtmlFormatter formatter)
: ID:5U/9Z0Js

>>111
例外全文ありがとうございます。 また、返信が遅くなりすみません。
こちらで試してた限りでは同じ現象が再現しないため、未だ原因ははっきりしない状況です。

恐れ入りますが、参考として例外が発生する際の入力操作を具体的に教えてもらえますと幸いです。

: ID:T8Qg0/sn

http://web.archive.org/web/20171213081948/http://www.selena-net.com/~piabrpg/mata-ri/tohotool.html
ダブルスポイラー用の曲目ファイルとしてこちらを掲載してはどうかと思いました。
閉鎖済み(?)ですがこのように何とかアクセスできますし、これを見つけるのがかなり大変で、他に公開しているサイトや記事等は見当たりませんでしたので…。

: ID:5U/9Z0Js

>>113
曲目ファイル配布サイトの一覧に掲載しました。 ご提案頂きありがとうございました。

東方蓄音機さんのところは今も404の状況が続いている、かつ移転等も行っていないことから、
アーカイブでのアクセスも望まれていない可能性もあるかと思っています。
利便性を考慮して掲載しましたが、今後もし掲載取り下げの要望等があった場合は、
一覧から再度削除するかもしれないことを申し添えておきます。

: ID:zDIgCU8h
>>112

返信が遅くなりすみません。

こちらで環境を再現して同じ操作をしたのですが、例外は発生しませんでした。

このこととは別で、Windowsの既定の再生デバイスがエラーで音が出ない状況で
再生ボタンを押すと必ず例外が発生します。
https://drive.google.com/open?id=1xkXc_uxxWBdYcJc3mpmFKnLF7zprAW1I
以下、例外ダイアログに表示されている全文です。


Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
Smdn.Windows.Multimedia.WinMMException: Undefined external error. (MMSYSERR_ERROR)
   場所 Smdn.Windows.Multimedia.WinMMException.ThrowIfWaveOutError(MMRESULT result)
   場所 Smdn.Windows.Multimedia.WaveformAudio.WaveOutDevice..ctor(UInt32 deviceID, WAVEFORMATEX format, Int32 bufferSize, Int32 bufferCount)
   場所 Smdn.Windows.Multimedia.WaveformAudio.PcmStreamPlayer.DoPlayAsync(Stream linearPcmStream, WAVEFORMATEX format)
   場所 Smdn.Media.PcmStreamPlayer.PlayAsync(Stream linearPcmStream, WAVEFORMATEX format, Boolean repeat)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Player.Play()
   場所 System.Windows.Forms.Control.OnClick(EventArgs e)
   場所 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   場所 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   場所 System.Windows.Forms.Control.WndProc(Message& m)
   場所 System.Windows.Forms.ButtonBase.WndProc(Message& m)
   場所 System.Windows.Forms.Button.WndProc(Message& m)
   場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3260.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ThbgmExtractor
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ThbgmExtractor.exe
----------------------------------------
System.Windows.Forms
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3314.0 built by: NET472REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Smdn.Formats.Thbgm
    アセンブリ バージョン:1.6.3.0
    Win32 バージョン:1.6.3.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Thbgm.DLL
----------------------------------------
Smdn
    アセンブリ バージョン:2.2.0.0
    Win32 バージョン:2.2.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.DLL
----------------------------------------
ThbgmExtractor.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/ThbgmExtractor.resources.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Forms.ThbgmPlayer.DLL
----------------------------------------
System.Core
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Smdn.Formats.Ini
    アセンブリ バージョン:0.22.0.0
    Win32 バージョン:0.22.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Ini.DLL
----------------------------------------
Smdn.Formats.Playlists
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Playlists.DLL
----------------------------------------
System.Configuration
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2612.0 built by: NET471REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
taglib-sharp
    アセンブリ バージョン:2.1.0.0
    Win32 バージョン:2.1.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/taglib-sharp.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/Smdn.Windows.Forms.ThbgmPlayer.resources.DLL
----------------------------------------
Smdn.Media
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Media.DLL
----------------------------------------
Smdn.Windows.Multimedia
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Multimedia.DLL
----------------------------------------
System.Windows.Forms.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Smdn.Core.Miscellaneous
    アセンブリ バージョン:0.30.0.0
    Win32 バージョン:0.30.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Core.Miscellaneous.DLL
----------------------------------------
mscorlib.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Smdn.Interop
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Interop.DLL
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging 
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。


exception occured while conversion
System.ArgumentOutOfRangeException: must be in range 1 to 6 (Parameter 'Level')
Actual value was 17.
   at Smdn.Formats.Notations.XhtmlFormatter.FormatHeading(Heading heading)
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.PukiWiki.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.SmdnExtensions.PukiWikiXhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNodes(IEnumerable`1 nodes)+MoveNext()
   at System.Xml.Linq.XContainer.AddContentSkipNotify(Object content)
   at System.Xml.Linq.XContainer.Add(Object content)
   at Smdn.Formats.Notations.XhtmlFormatter.Format(Document document)
   at Smdn.Applications.SmdnBbs.Xhtml.ConvertNotation(String content, Parser parser, XhtmlFormatter formatter)
: ID:5U/9Z0Js

>>115
ご報告ありがとうございます。
5時間ジャストで例外の件については、こちらでも依然はっきりした原因が掴めていません。
原因と対策がわかり次第修正はしますが、現状は波形表示オフでの対応にて一旦保留とさせてください。

既定の再生デバイスに問題がある状況で再生しようとすると例外となる件については、
少なくとも再生以外の操作は継続できるように修正します。

参考までに、音が出ない状況の原因はわかりますでしょうか?
修正に必須の情報ではないですが、修正後に正しく動作するかテストする際の
参考としたいので、もしわかりましたらお教えいただけると助かります。

: ID:zDIgCU8h

調べてみると、どうやらサウンド デバイスを全て無効
https://drive.google.com/open?id=1m_hUaO6txm761YIt_Wq-px59bd9cefaj
にしただけで例外が発生し、
アプリケーションを再起動するまで再生できなくなるようです。

: ID:zDIgCU8h
まず、サウンド デバイスを無効化して再生すると、下記のような例外が発生します。
https://drive.google.com/open?id=13W4h-jim-6Y7JzVKCHZEhuOCzBO25jZ7
以下、例外ダイアログに表示されている全文です。


Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
Smdn.Windows.Multimedia.WinMMException: There is no driver installed on your system. (MMSYSERR_NODRIVER)
   場所 Smdn.Windows.Multimedia.WinMMException.ThrowIfWaveOutError(MMRESULT result)
   場所 Smdn.Windows.Multimedia.WaveformAudio.WaveOutDevice.SetVolume(WaveOutVolume volume)
   場所 Smdn.Windows.Multimedia.WaveformAudio.PcmStreamPlayer.set_Volume(Int32 value)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Player.Play()
   場所 System.Windows.Forms.Control.OnClick(EventArgs e)
   場所 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   場所 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   場所 System.Windows.Forms.Control.WndProc(Message& m)
   場所 System.Windows.Forms.ButtonBase.WndProc(Message& m)
   場所 System.Windows.Forms.Button.WndProc(Message& m)
   場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3260.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ThbgmExtractor
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ThbgmExtractor.exe
----------------------------------------
System.Windows.Forms
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3314.0 built by: NET472REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Smdn.Formats.Thbgm
    アセンブリ バージョン:1.6.3.0
    Win32 バージョン:1.6.3.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Thbgm.DLL
----------------------------------------
Smdn
    アセンブリ バージョン:2.2.0.0
    Win32 バージョン:2.2.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.DLL
----------------------------------------
ThbgmExtractor.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/ThbgmExtractor.resources.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Forms.ThbgmPlayer.DLL
----------------------------------------
System.Core
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Smdn.Formats.Ini
    アセンブリ バージョン:0.22.0.0
    Win32 バージョン:0.22.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Ini.DLL
----------------------------------------
Smdn.Formats.Playlists
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Playlists.DLL
----------------------------------------
System.Configuration
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2612.0 built by: NET471REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
taglib-sharp
    アセンブリ バージョン:2.1.0.0
    Win32 バージョン:2.1.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/taglib-sharp.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/Smdn.Windows.Forms.ThbgmPlayer.resources.DLL
----------------------------------------
Smdn.Media
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Media.DLL
----------------------------------------
Smdn.Windows.Multimedia
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Multimedia.DLL
----------------------------------------
System.Windows.Forms.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Smdn.Core.Miscellaneous
    アセンブリ バージョン:0.30.0.0
    Win32 バージョン:0.30.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Core.Miscellaneous.DLL
----------------------------------------
mscorlib.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Smdn.Interop
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Interop.DLL
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging 
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。


exception occured while conversion
System.ArgumentOutOfRangeException: must be in range 1 to 6 (Parameter 'Level')
Actual value was 17.
   at Smdn.Formats.Notations.XhtmlFormatter.FormatHeading(Heading heading)
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.PukiWiki.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.SmdnExtensions.PukiWikiXhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNodes(IEnumerable`1 nodes)+MoveNext()
   at System.Xml.Linq.XContainer.AddContentSkipNotify(Object content)
   at System.Xml.Linq.XContainer.Add(Object content)
   at Smdn.Formats.Notations.XhtmlFormatter.Format(Document document)
   at Smdn.Applications.SmdnBbs.Xhtml.ConvertNotation(String content, Parser parser, XhtmlFormatter formatter)
: ID:zDIgCU8h
上記の例外ダイアログで[続行]を押しても、再生ボタンを押した時に例外が発生します。

二回目以降の場合、再生ボタンを何度も押しても、この例外
https://drive.google.com/open?id=1NxB9VrQLOClmg470FXTkaAPtkHSmQiVT
(と恐らく同じだと思われる例外)が必ず発生します。

以下、例外ダイアログに表示されている全文です。


Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
System.ObjectDisposedException: 破棄されたオブジェクトにアクセスできません。
オブジェクト名 'Smdn.Windows.Multimedia.WaveformAudio.WaveOutDevice' です。
   場所 Smdn.Windows.Multimedia.WaveformAudio.WaveOutDevice.CheckDisposed()
   場所 Smdn.Windows.Multimedia.WaveformAudio.PcmStreamPlayer.set_Volume(Int32 value)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Player.Play()
   場所 System.Windows.Forms.Control.OnClick(EventArgs e)
   場所 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   場所 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   場所 System.Windows.Forms.Control.WndProc(Message& m)
   場所 System.Windows.Forms.ButtonBase.WndProc(Message& m)
   場所 System.Windows.Forms.Button.WndProc(Message& m)
   場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3260.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ThbgmExtractor
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ThbgmExtractor.exe
----------------------------------------
System.Windows.Forms
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3314.0 built by: NET472REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Smdn.Formats.Thbgm
    アセンブリ バージョン:1.6.3.0
    Win32 バージョン:1.6.3.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Thbgm.DLL
----------------------------------------
Smdn
    アセンブリ バージョン:2.2.0.0
    Win32 バージョン:2.2.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.DLL
----------------------------------------
ThbgmExtractor.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/ThbgmExtractor.resources.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Forms.ThbgmPlayer.DLL
----------------------------------------
System.Core
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Smdn.Formats.Ini
    アセンブリ バージョン:0.22.0.0
    Win32 バージョン:0.22.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Ini.DLL
----------------------------------------
Smdn.Formats.Playlists
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Playlists.DLL
----------------------------------------
System.Configuration
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2612.0 built by: NET471REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
taglib-sharp
    アセンブリ バージョン:2.1.0.0
    Win32 バージョン:2.1.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/taglib-sharp.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/Smdn.Windows.Forms.ThbgmPlayer.resources.DLL
----------------------------------------
Smdn.Media
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Media.DLL
----------------------------------------
Smdn.Windows.Multimedia
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Multimedia.DLL
----------------------------------------
System.Windows.Forms.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Smdn.Core.Miscellaneous
    アセンブリ バージョン:0.30.0.0
    Win32 バージョン:0.30.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Core.Miscellaneous.DLL
----------------------------------------
mscorlib.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
Smdn.Interop
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Interop.DLL
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging 
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。


exception occured while conversion
System.ArgumentOutOfRangeException: must be in range 1 to 6 (Parameter 'Level')
Actual value was 17.
   at Smdn.Formats.Notations.XhtmlFormatter.FormatHeading(Heading heading)
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.PukiWiki.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.SmdnExtensions.PukiWikiXhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNodes(IEnumerable`1 nodes)+MoveNext()
   at System.Xml.Linq.XContainer.AddContentSkipNotify(Object content)
   at System.Xml.Linq.XContainer.Add(Object content)
   at Smdn.Formats.Notations.XhtmlFormatter.Format(Document document)
   at Smdn.Applications.SmdnBbs.Xhtml.ConvertNotation(String content, Parser parser, XhtmlFormatter formatter)
: ID:zDIgCU8h
また、以下の場合においては別の例外が発生します。
1.サウンド デバイスを無効化してから、アプリケーションを起動、音楽を指定、再生。
2.アプリケーションを起動してから、サウンド デバイスを無効化、音楽を指定、再生。
3.アプリケーションを起動、音楽を指定してから、サウンド デバイスを無効化、再生。
上記の3パターンの場合において(または、(恐らくですが)同じタイミングでサウンド デバイスにエラーが発生した場合)この例外が発生します。
https://drive.google.com/open?id=1oIV9cv5H4aklSBp-p3PvE9_bLdkfal1U

以下、例外ダイアログに表示されている全文です。


Just-In-Time (JIT) デバッグを呼び出すための詳細については、
ダイアログ ボックスではなく、このメッセージの最後を参照してください。

************** 例外テキスト **************
System.NotSupportedException: unsupported pcm format
   場所 Smdn.Windows.Multimedia.WaveformAudio.PcmStreamPlayer.FindDevice(WAVEFORMATEX format)
   場所 Smdn.Windows.Multimedia.WaveformAudio.PcmStreamPlayer.DoPlayAsync(Stream linearPcmStream, WAVEFORMATEX format)
   場所 Smdn.Media.PcmStreamPlayer.PlayAsync(Stream linearPcmStream, WAVEFORMATEX format, Boolean repeat)
   場所 Smdn.Windows.Forms.ThbgmPlayer.Player.Play()
   場所 System.Windows.Forms.Control.OnClick(EventArgs e)
   場所 System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   場所 System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   場所 System.Windows.Forms.Control.WndProc(Message& m)
   場所 System.Windows.Forms.ButtonBase.WndProc(Message& m)
   場所 System.Windows.Forms.Button.WndProc(Message& m)
   場所 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** 読み込まれたアセンブリ **************
mscorlib
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3260.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll
----------------------------------------
ThbgmExtractor
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ThbgmExtractor.exe
----------------------------------------
System.Windows.Forms
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3314.0 built by: NET472REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
Smdn.Formats.Thbgm
    アセンブリ バージョン:1.6.3.0
    Win32 バージョン:1.6.3.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Thbgm.DLL
----------------------------------------
Smdn
    アセンブリ バージョン:2.2.0.0
    Win32 バージョン:2.2.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.DLL
----------------------------------------
ThbgmExtractor.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/ThbgmExtractor.resources.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Forms.ThbgmPlayer.DLL
----------------------------------------
System.Core
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.3221.0 built by: NET472REL1LAST_C
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
Smdn.Formats.Ini
    アセンブリ バージョン:0.22.0.0
    Win32 バージョン:0.22.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Ini.DLL
----------------------------------------
Smdn.Formats.Playlists
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Formats.Playlists.DLL
----------------------------------------
System.Configuration
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2612.0 built by: NET471REL1LAST_B
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
taglib-sharp
    アセンブリ バージョン:2.1.0.0
    Win32 バージョン:2.1.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/taglib-sharp.DLL
----------------------------------------
Smdn.Windows.Forms.ThbgmPlayer.resources
    アセンブリ バージョン:1.6.4.0
    Win32 バージョン:1.6.4.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/ja/Smdn.Windows.Forms.ThbgmPlayer.resources.DLL
----------------------------------------
Smdn.Media
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Media.DLL
----------------------------------------
Smdn.Windows.Multimedia
    アセンブリ バージョン:0.10.0.0
    Win32 バージョン:0.10.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Windows.Multimedia.DLL
----------------------------------------
System.Windows.Forms.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/System.Windows.Forms.resources.dll
----------------------------------------
Smdn.Core.Miscellaneous
    アセンブリ バージョン:0.30.0.0
    Win32 バージョン:0.30.0.0
    コードベース:file:///C:/Users/user/Desktop/ThbgmExtractor-1.6.4/Smdn.Core.Miscellaneous.DLL
----------------------------------------
mscorlib.resources
    アセンブリ バージョン:4.0.0.0
    Win32 バージョン:4.7.2556.0 built by: NET471REL1
    コードベース:file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_ja_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------

************** JIT デバッグ **************
Just-In-Time (JIT) デバッグを有効にするには、このアプリケーション、
またはコンピューター (machine.config) の構成ファイルの jitDebugging 
値を system.windows.forms セクションで設定しなければなりません。
アプリケーションはまた、デバッグを有効にしてコンパイルされなければ
なりません。

例:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

JIT デバッグが有効なときは、このダイアログ ボックスで処理するよりも、
ハンドルされていない例外はすべてコンピューターに登録された
JIT デバッガーに設定されなければなりません。


exception occured while conversion
System.ArgumentOutOfRangeException: must be in range 1 to 6 (Parameter 'Level')
Actual value was 17.
   at Smdn.Formats.Notations.XhtmlFormatter.FormatHeading(Heading heading)
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.PukiWiki.XhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.SmdnExtensions.PukiWikiXhtmlFormatter.FormatNode(Node node)+MoveNext()
   at Smdn.Formats.Notations.XhtmlFormatter.FormatNodes(IEnumerable`1 nodes)+MoveNext()
   at System.Xml.Linq.XContainer.AddContentSkipNotify(Object content)
   at System.Xml.Linq.XContainer.Add(Object content)
   at Smdn.Formats.Notations.XhtmlFormatter.Format(Document document)
   at Smdn.Applications.SmdnBbs.Xhtml.ConvertNotation(String content, Parser parser, XhtmlFormatter formatter)
: ID:5U/9Z0Js

>>117-120
詳細な情報をご提示いただきありがとうございます。 参考になります。
頂いた状況と例外を元に修正&テストをしますので、次バージョンのリリースまで
お待ちいただければと思います。

: ID:5U/9Z0Js

>>117-120
おまたせしてすみません。
ご報告いただいた事象に対処したversion 1.6.6を先ほどリリースしました。

なお、今回の1.6.6を含む以前のバージョンにおいては、再生に使用している
サウンドデバイスが使用不可能ないしは無効になった場合、一切の操作がハングする
問題があります。

これはUSBスピーカーを外した場合等に起こり得ますが、対処するとなると修正規模が
大きくなりそうなため、現時点での対処は保留とさせていただきます。 ご理解ください。

リリース内容についてはこちらをご確認ください。
https://smdn.jp/works/tools/ThbgmExtractor/releases/#changes_v1.6.6

: ID:VsNoRjwM

こちらの誤りで書き込みを削除してしまいましたので、手動にて復元します。
申し訳ございません。

ななし 2019-09-18T19:01:53 ID:ub0XHE+d

いつも新作が出る度にお世話になっております。
不具合?のような現象が起きてしまいましたのでこちらでの質問をお許しくださいませ。

私はインストール時に作成される上海アリスファイルではなく
保存したゲームのファイルにいつも原作をインストールしており
そこからdatを指定し それ以降は抜き出し機の音楽ファイルの欄も
保存したゲーム(saved game)からとなるのですが
新作である鬼形獣のみ毎回音楽ファイルの欄が存在しない
C:\Program Files\上海アリス幻樂団\東方鬼形獣\thbgm.dat
と、なってしまい 毎回保存したゲームファイルから鬼形獣のdatファイルを指定しないと
音楽が再生されない状態です。

それ以外の天空璋等他の作品はしっかり保存したゲームファイルからの
紐づけが出来ています。

拙く分かり辛い説明で申し訳ありません。
解決方法がございましたら何卒お願い致します。
お忙しいところ、申し訳ございません。
: ID:VsNoRjwM

>>123
ご質問についてですが、「鬼形獣を含め、すべてデフォルト以外の場所に
インストールしている」状態で、「鬼形獣のみdatファイルのパスが
記憶されない」という状況ということでしょうか。

現状はっきりした原因は不明なのですぐに提示できる解決方法はありませんが、
まずは以下の点を教えていただけますか?

【1】
ThbgmExtractor.exeと同じフォルダにあるThbgmExtractor.iniを開いて、
以下のように記載されている部分の内容を教えてください。
鬼形獣以外の作品のセクションと、もしあれば鬼形獣のセクションの
内容を確認したいです。

[ProductInfo:東方星蓮船 ~ Undefined Fantastic Object.]
InstalledBgmSourcePath=C:\*********

[ProductInfo:東方妖々夢 ~ Perfect Cherry Blossom.]
InstalledBgmSourcePath=C:\*********

  :
  :

【2】
使用している曲目ファイルの内容もしくは入手元をを教えてください。

原因特定のため上記2点を教えていただけると幸いです。

: ID:ub0XHE+d

>>124
管理人様、お返事ありがとうございます。

はい、その通りです
<ご質問についてですが、「鬼形獣を含め、すべてデフォルト以外の場所に
インストールしている」状態で、「鬼形獣のみdatファイルのパスが
記憶されない」という状況ということでしょうか。

【1】
[ProductInfo:東方天空璋 ~ Hidden Star in Four Seasons.]
InstalledBgmSourcePath=C:\Users\*********\Saved Games\東方天空璋\thbgm.dat

[ProductInfo:東方紺珠伝 ~ Legacy of Lunatic Kingdom.]
InstalledBgmSourcePath=C:\Users\*********\Saved Games\カンジュデン\thbgm.dat

と、なっており鬼形獣に関してはありませんでした。
(申し訳ございませんけれどユーザー名は伏せさせて頂きました)

【2】
#「東方鬼形獣 ~ Wily Beast and Weakest Creature.」 製品版曲データ (シロ@迷い家の白猫 2019-08-13)
#デフォルトのパスと製品名
@上海アリス幻樂団\東方鬼形獣\thbgm.dat,東方鬼形獣 ~ Wily Beast and Weakest Creature.
#原作者名
#=ProductInfo,Creator,上海アリス幻樂団
#製品略称
#=ProductInfo,Prefix,th17
#=ProductInfo,ShortName,東方鬼形獣
#=ProductInfo,AbbreviatedShortName,鬼形獣
#=ProductInfo,ShortestName,鬼
#頒布年月日
#=ProductInfo,ReleaseDate,2019-08-12

#=ProductInfo,BgmSourceLength,444964864

#=ProductInfo,BgmSourceHash,MD5Sum,1c8586cf502da2e310d22f3719515db6

#=ProductInfo,BgmSourceIdentificationHash,MD5Sum,
#曲データ
#開始位置[Bytes]、イントロ部の長さ[Bytes]、ループ部の長さ[Bytes]、曲名
#位置・長さは16進値として記述する
00000010,00489F40,00A58F40,物言わぬ獣の霊
00EE2E90,0028E780,013CFE00,地蔵だけが知る哀嘆
02541410,001209E8,00D3A670,ジェリーストーン
0339C468,0036C000,01552900,ロストリバー
04C5AD68,00206680,0125F840,石の赤子と水中の牛
060C0C28,00261ED0,01A3DD10,不朽の曼珠沙華
07D60808,001A1F50,016AE720,セラフィックチキン
095B0E78,00411600,01C9E080,アンロケイテッドヘル
0B6604F8,00059A80,01C01540,トータスドラゴン ~ 幸運と不運
0D2BB4B8,000DA380,0193BB80,ビーストメトロポリス
0ECD13B8,00415E84,01377670,セラミックスの杖刀人
1045E8AC,0062D900,00DB4080,エレクトリックヘリテージ
1184022C,00508980,02251480,偶像に世界を委ねて ~ Idoratrize World
13F9A02C,00455080,01A97B80,輝かしき弱肉強食の掟
15E86C2C,00455BC0,02232F40,聖徳太子のペガサス ~ Dark Pegasus
1850F72C,0042F900,00516600,畜生達の休息
18E5562C,00F57300,0043F300,地下からの帰還
1A1EBC2C,001CACC8,004A2FF8,プレイヤーズスコア

と、なっております。

お忙しい所のお返事と応対、ありがとうございます。

: ID:ub0XHE+d

そして、もう一つ不具合が発生しておりまして
天空璋等は曲目ファイルを他作品に変更しても同時に音楽ファイルも変更されるのですが
鬼形獣のみ曲目ファイルを変更しても音楽ファイルが鬼形獣のまま変更されません。

抜き出し機を起動させる→鬼形獣のパスが記憶されていないのでdatファイルを選択する→
音楽ファイルが 
C:\Users\*********\Saved Games\東方鬼形獣\thbgm.dat
に変更される→曲目ファイルを他作品に変更しても音楽ファイルの欄が鬼形獣のまま
(C:\Users\*********\Saved Games\東方鬼形獣\thbgm.dat)になってしまう

こちらもご報告させて頂きました。

: ID:VsNoRjwM

>>125
情報を提供頂きありがとうございます。

>>126
こちらの問題も、先の問題に関連するものかと思われます。
先にご報告頂いた内容と合わせて原因調査と修正をします。

ただ、時間の都合によりすぐには着手できないので、申し訳ありませんが
今しばらくお待ちください。

: ID:s7e5L562

>>125,126
調査した結果、曲目ファイルの内容に誤りがあることが原因とわかりました。
曲目ファイルの下記の部分(thbgm.datのサイズ)を、444964864から444963052に修正したのち、
ThbgmExtractorを再起動し、鬼形獣の音楽ファイルを選択しなおしてください。

以後は、鬼形獣の音楽ファイルのパスが記憶されるようになります。
また、曲目ファイルを変更したときの動作についても、記憶されているパスが設定されるようになります。

修正前の内容
#thbgm.datのサイズ(バイト単位)
#=ProductInfo,BgmSourceLength,444964864
修正後の内容
#thbgm.datのサイズ(バイト単位)
#=ProductInfo,BgmSourceLength,444963052

原作の入手に手間取り原因調査が遅くなりました。
返答までの間、お待たせしてしまい申し訳ありません。

なお、曲目ファイルの内容に誤りがある旨は、こちらから曲目ファイル作者である
シロさんの方にコメントで報告しておきましたので、それに関してはアクションを
取る必要はありません。

: ID:TpexdCUX

smdn様
このたびはご迷惑をおかけし、誠に申し訳ございません。

ご指摘いただいた、「thbgm.datのサイズ」の値を修正したファイルを再アップロードいたしました。
今回は私の作成した曲目ファイルの不備により、
お手数をおかけしましたこと深くお詫び申し上げます。
このようなことが再び起こらぬよう、改善に努めます。

: ID:s7e5L562

>>129
こちらこそお手数をおかけした上に、わざわざこちらにもコメントを頂き恐縮です。
ご対応いただきありがとうございました。

: ID:J+ylg0yH

昨年の9月に不具合のご報告をさせて頂いた者です。
お陰様で正常に動作するようになりました。

管理人様・シロ様ご多忙の中お時間等を割いて頂きまして
まことにありがとうございました。

: ID:OrWLdt2o

要望です。
曲目ファイルの置く場所が「ThbgmExtractor.exeと同じフォルダ」となっていますが、
曲目ファイルを入れる専用のフォルダを作りそこに入れるという風にしてほしいです。

: ID:oXzST78S

>>132
ご要望を頂きありがとうございます。
曲目ファイル専用フォルダを設けるのは管理しやすく利便性が高そうなので
今後のバージョンにて採用させていただきたいと思います。

一方、exeと同じフォルダの曲目ファイルを読む仕様は初期のバージョンからの仕様で、
これを安易に変えるは混乱の種となると考えています。
そのため、この仕様は維持しつつ、同時に専用フォルダからも読むような形で
実装しようかと思います。

: ID:OrWLdt2o

>>133
よろしくお願いします!

: ID:oXzST78S

>>134
先程ThbgmExtractor v1.6.7をリリースしました。 先日ご要望頂いた件を実装しました。
https://smdn.jp/works/tools/ThbgmExtractor/releases/#changes_v1.6.7

v1.6.7ではTitleFilesという名前のフォルダを用意してあります。
このフォルダに曲目ファイルを置くと読み込むようになっています。
どうぞご利用ください。

: ID:lytktY0b

管理人さん
初めまして、東方の原作曲を抽出できると知り、東方永夜抄で試してみて感動しています。
これから東方原作をまとめて買おうかと思うのですが、いくつか教えていただけないでしょうか?
東方自体も初心者であるので、基本的なことをお伺いするかもしれませんがよろしくお願いします。

抽出可能なゲームはどれになるのでしょうか?
東方萃夢想などのアクションの方も抽出できるのでしょうか?
シューティングであっても、東方文花帖のような所謂小数点版?のものは抽出できるのでしょうか?

ここで伺うのは違うのかもしれないのですが、Steamで購入した東方ゲームでも抽出することができるのでしょうか?
CD-ROM版を購入する必要があるのでしょうか?

お手数ですがよろしくお願いします。

: ID:oXzST78S

>>136

①抽出可能なゲーム
ThbgmExtractorでは、東方紅魔郷(th06)〜東方星蓮船(th12)の製品版・体験版(文花帖含む)に対応しています。
また、曲目ファイルを追加することで、他の作品にも対応することができます。
詳しくは下記のリンクをご覧ください。

https://smdn.jp/works/tools/ThbgmExtractor/#TitleFile

東方萃夢想等については、詳しく把握していませんが、別途他のツールと組み合わせる必要があったかと思います。
恐れ入りますが、このあたりについてはご自身にてお調べください。

②Steam版
Steam版は購入したことが無く、動作確認もしていないので、抽出できるかどうかはわかりません。

仮に抽出できたとしても、Steam利用規約上の下記の部分に抵触する可能性があるので、
それを理解した上でご利用ください、という回答になります。
(ライセンスの解釈に自信はないので、「かもしれない」程度の回答しかできません)

2.ライセンス
G. 本コンテンツ/本サービスの使用に対する制限
本コンテンツ/本サービス(〜中略〜)について、(〜中略〜)派生成果物の創作(〜中略〜)を行えません。

https://store.steampowered.com/subscriber_agreement/?l=japanese

そのため、音楽の抽出を目的とするのなら、CD-ROM版のほうがよいと思います。

: ID:lytktY0b

>>137
管理人さん回答ありがとうございました。
仰られている通り主目的は音楽で、ゲームする際にSteam版なら管理が楽でいいな、と思った
だけなので、幸い今なら一通りそろえることができそうなので、CD=ROM版を購入しようと思います。
また、わからないことがあれば質問させてください。
ありがとうございました。

: ID:oo9jvXJ7

管理人さん
136です。質問です。
紅魔郷にはthbgm.datファイルが存在せず、元々あるBGMもぶつ切りになっているので困っています。
こちらのツールを用いることで他の作品同様の形で抽出することは可能なのでしょうか?

: ID:oo9jvXJ7

>>139
管理人さん
136です。
自己解決しました。回答不要です。
紅魔郷は曲目ファイルを指定後、datファイルではなくwavファイルの01を指定するんですね。

: ID:Qxmlom5H

永夜抄の抜き出しをしようとしたのですが、アルバムなどの設定が生成ファイルに適応されません。

: ID:oXzST78S

>>141
原因特定のため、以下の3点について教えてください。

  1. 永夜抄以外を抜き出した場合もタグ設定が適用されないかどうか
  2. 抜き出す際にどういう設定をしたか (エンコーダーを使ったか、あるいはWAVE形式で抜き出したか、など)
  3. 適用されているか確認するのに使った手段 (ファイルエクスプローラ、音楽プレイヤー、など)
: ID:7FnOAdJt

神霊廟の曲を抽出すると霊界トランスが倍速になるんですがどうすればいいでしょうか。

: ID:oXzST78S

>>143
使用している曲目ファイルによるのですが、恐らく曲目ファイル内で
サンプリングレートが指定されていないと思われます。

過去の投稿(>>105>>107)を参照して、サンプリングレートが
指定されているかご確認ください。

: ID:7FnOAdJt

>>144
ありがとうございます。できました

: ID:sBZHjQB5

管理人さん
質問です。
東方風神録の曲を抜き出したのですが、下記のようなことになってしまい、少々困っております。
対象方法を教えて頂けると有難いです。

・神さびた古戦場の2:42辺りから実機音源と抜き出した音源とで音ズレする
・プレイヤーズスコアの2ループ目以降に抜き出した音源のみループされない小節が数小節ある

: ID:sMAGM1Ee

>>146
曲目ファイルで定義されているループ位置に誤りがあることが原因と思われます。

使用しているのはThbgmExtractor同梱の曲目ファイルでしょうか?
もしそうでしたら、ご報告を頂いた以上はこちらで対処したいとは考えていますが、
曲目ファイルは作成から10年以上経過していることもあり手を付けづらく、
申し訳ないのですが相当お待たせすることになると思います。

可能なら曲目ファイルを編集してループ位置を修正するか、もしお急ぎなら
他の方が作成した曲目ファイルを使用することで対応できます。

曲目ファイルの修正は、ファイルメニューから目的の曲目ファイルをエクスポートし、
編集したあとに再読み込みすることで行なえます。

: ID:Yz4BBHi1

要望です
ループ回数を一括で変更する方法はありますでしょうか?
無ければ実装して頂けると幸いです

: ID:sMAGM1Ee

>>148
ご要望ありがとうございます。

[編集]メニュー → [エフェクトの一括設定]をクリックして一括設定画面を開き、
[長さの基準]を[ループ回数]に変更、その後[ループ回数]に目的の回数を指定して
OKを押すことで、一括して設定できます。

もしこの機能では不足があるようでしたら、お知らせください。

: ID:kt7V5T2S

いつもお世話になっております
しばらくぶりにバージョンを上げましたら波形がきれいになっておりびっくりしました。
実用上は問題ないのですが、表示されている波形と実際に再生される音声がずれているようです。
(波形の方がわずかに短くなっている?繰り返しループを伸ばしていくとわかりやすいです)
Ver1.6.4~1.6.7で同様でした。

また、再現はできていないのですが、
1.6.7でシロさんの曲目ファイルを使い、鬼形獣を連続再生していたところ、
いくつかの曲で先頭が少しカットされる現象が発生しました。(途中から始まる)
曲を選択し直したり、いったんほかの作品に変更したりしても治りませんでしたが
ThbgmExtractorの再起動で治りました(曲目ファイルの変更などはしていません)
一応ご報告まで

: ID:kt7V5T2S

先ほどの書き込みの後半について、
過去の掲示板を読み返していてdatのサイズ指定が違っていたことを知りました!
おそらくはこれが原因だと思います。(ファイル指定が変わらなくなる現象も発生していました)
お騒がせいたしました。

: ID:sMAGM1Ee

>>150
問題のご報告ありがとうございます。
波形と再生音声がずれる件については、調査した後、修正したいと思います。

抜き出し機能自体には影響が無い点、また、すぐには修正に着手できない点から、
今後のバージョンにて修正が完了したら、改めてお知らせいたします。

: ID:viYZmpHU

お世話になっております。迷い家の白猫のシロです。
GitHubの名前の表記は、「shiroemons」のみでお願いいたします。

: ID:sMAGM1Ee

>>153
いつもありがとうございます。
表記を修正いたしましたのでご確認ください。

: ID:viYZmpHU

>>153

修正ありがとうございます!
GitHub側のみですが、以下の曲目ファイルを追加しています。
・東方神霊廟 製品版
・東方神霊廟 体験版
・妖精大戦争 〜 東方三月精
・ダブルスポイラー

: ID:sMAGM1Ee

>>155
わざわざお知らせいただいてありがとうございます。
記載内容を更新しておきました。 ご確認ください。

: ID:T8Qg0/sn

いつも重宝しております。

http://phroneris.com/text/20220117.html
僭越ながら、東方剛欲異聞(製品版)のBGM抜き出し支援物を公開いたしました。
曲目ファイルのリンク集に掲載していただければ幸いです。

: ID:T3nzjJAd

>>157
公開のお知らせをいただきありがとうございます。
返信が遅れましたが、早速掲載させていただきましたのでご確認ください。

なお掲載に際して、リンク先はニコニコ動画のユーザーページをご希望とのことなので、そちらへリンクさせていただきました。
ただ、ユーザーページのみへのリンクとなると、利用者が配布元に到達しづらくなるなどの不便が予想されるため、勝手ながら括弧書きでphroneris.comの方にもリンクさせていただきました。
上記の点について、もしご希望に沿わないようでしたら訂正しますので、その場合はご連絡ください。

: ID:T8Qg0/sn

>>158
お手数おかけしました。仰る通りかと存じます。
柔軟で適切なご対応に感謝いたします。

⚠一度書き込みが完了すると、以降は投稿内容を編集できません
  • >>1と入力すると1番へのアンカーになります。
  • 投稿内容はPukiWiki記法で整形されます。
    • 以下のPukiWiki記法が使えます。
      • 引用文
      • 番号付きリスト、番号なしリスト、定義リスト
      • 整形済みテキスト
        • 複数行のコードブロックを書き込むには次のように記入してください。
          #code{{
          int x = 2;
          int y = 3;
          }}
        • 複数行のコマンド出力を書き込むには次のように記入してください。
          #prompt{{
          C:\> echo "foo"
          "foo"
          }}
      • 表組み
      • 見出し
      • 強調・斜体、取り消し線・下線
      • 文字色(&color)、文字サイズ(&size)
      • 注釈
    • URL・メールアドレスは自動的にリンクになります。
    • 詳しくはPukiWikiのFormattingRulesを参照してください。