Forums: ユーザフォーラム (Thread #40297)

bjxa (2019-01-11 00:05 by yyagi #82388)

Dridiさんから紹介いただいたプロジェクトをご紹介。 (昨年11月にご本人からメールをいただいていたのですが、今までそのメールに気づいていませんでした・・)

https://github.com/dridi/bjxa

BandJamのxaフォーマットを、xadec.dllを使わずにデコードできるライブラリのようです。すごい!DTXManiaでもこれを試してみようと思っています。xadec.dllを無くすことができれば、x64化もできようというものです。(ただしGPL3.0なので要注意)

xaファイルフォーマットの解析ドキュメントもついてます。

Reply to #82388×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-11 00:51 by from #82389)

何タイトルバグってるんすかbotですかと思ったらちゃんとしたタイトルだった件

Dridiさんから紹介いただいたプロジェクトをご紹介。 BandJamのxaフォーマットを、xadec.dllを使わずにデコードできるライブラリのようです。すごい!DTXManiaでもこれを試してみようと思っています。xadec.dllを無くすことができれば、x64化もできようというものです。

おおー!

(ただしGPL3.0なので要注意)

えっ

それ

MITじゃ使えないのでは?

てかDTXMania2はなぜか問題なくx64でビルドできて実行できてるんですけどなぜに?

Reply to #82388

Reply to #82389×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-11 01:35 by yyagi #82391)

MITじゃ使えないのでは?

デスヨネー

Dridiさんに、せめてGPL2.1にしてもらえないかとお願いメールを出しました。今日はもう遅いので寝ます・・・

Reply to #82389

Reply to #82391×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-11 07:58 by yyagi #82395)

早々にお返事をいただきました。C++版=GPL3,0 (or later), C#版=LGPⅬ2.1 (or later) のデュアルライセンスの方向でご検討いただけるとのこと。ありがたや。

DTXMania2がx64ビルドで(xa対応部が)動作する理由は、私もわからないです・・・DTXManiaの方はまだ試していませんが。

おさらい:

DTXMania的には、x64対応の上で xadec.dllとSoundDecoder.dll がボトルネックとの認識。どちらもソースコードがない。で、後者を未だ使っている理由は「OS標準codecだとmp3再生の頭にプチノイズが乗るから」なので、そこだけ再実装してしまえば何とかなるだろうとみていて、残る懸案がxadec.dllでした。

Reply to #82391

Reply to #82395×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-11 12:25 by from #82396)

早々にお返事をいただきました。C++版=GPL3,0 (or later), C#版=LGPⅬ2.1 (or later) のデュアルライセンスの方向でご検討いただけるとのこと。ありがたや。

おおー。 こちらでも試してみます!

DTXMania2がx64ビルドで(xa対応部が)動作する理由は、私もわからないです・・・DTXManiaの方はまだ試していませんが。

よく見たら、x64だとxaのデコードに失敗してました(汗 タスクマネージャでは32ビットとは表示されてないので本体がx64なのは間違いないですが、 x64 exeからx86 dllを呼び出したらBadImageFormat例外ですよねふつう。

てかx64にするメリットってなんでしたっけ メモリがいっぱい使えるんでしたっけ あるいはbjxa作者さんのブログにあったwineへの対応?ですかね?

Reply to #82395

Reply to #82396×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-12 20:39 by from #82397)

さっそく、bjxaの.NET版をDTXMania2に組み込んでみました。

x86でもx64でも問題なく XA サウンドが再生できました。

すげぇ。

ただ、bjxa.Decode で渡す short[] pcm のサイズは Format.DataLengthPcm ではなく Format.RiffHeaderLength にしないと、サイズ不足で変換に失敗するようです。

で、GitHubのLicenceがまだLGPLに更新されていないのですが、bjxa対応のDTXMania2の公開はそれまで待っておくほうがいいんでしょうかね?(汗

Reply to #82396

Reply to #82397×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-12 22:23 by yyagi #82399)

今日はジムに行って運動して帰ってきて爆睡して目を覚ましたらDTXManai2での検証が完了していたとは。早ぇぇ。

ただ、bjxa.Decode で渡す short[] pcm のサイズは Format.DataLengthPcm ではなく Format.RiffHeaderLength にしないと、サイズ不足で変換に失敗するようです。

Windowsは全く触らない方だそうですからね。githubの方にプルリクかissueをあげていただければよろしいかと。私からもつい先ほどメールで一報を入れておきました。

で、GitHubのLicenceがまだLGPLに更新されていないのですが、bjxa対応のDTXMania2の公開はそれまで待っておくほうがいいんでしょうかね?(汗

今週末か来週っておっしゃってましたから、もうちょっとかかるかなと。

| Sure, I will dual license the C# code and add "LGPL2.1 or later" this | weekend or some time next week. Feel free to start working with the | code as-is and I'll let you know when I cut a release.

開発日記のようなものを見つけましたので、ご覧いただきつつお待ちくださいな。 https://dridi.fedorapeople.org/tags/bjxa/

Reply to #82397

Reply to #82399×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-14 09:29 by yyagi #82412)

先ほどgithubを見たところ、GPLとLGPLのdual license化、ならびにDecode引数修正がなされたようです。

Reply to #82399

Reply to #82412×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-14 18:25 by from #82414)

先ほどgithubを見たところ、GPLとLGPLのdual license化、ならびにDecode引数修正がなされたようです。

どもですー。 さっそくDTXMania2に組み込んで公開(push)しました。

リポジトリからはexeとdllが削除されてたので、

自分でautoreconfしてconfigureしてmakeしようとしたらめっさわけわからん状態になって、

結局 dotnet コマンドでビルドしてしまいました。(汗

あと、Decodeでpcmサイズが受け取れるようになったぽいですが、中身は DataLengthPcm と同じなので、 やっぱりサイズ不足のままですねー……

Reply to #82412

Reply to #82414×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login

Re: bjxa (2019-01-14 20:45 by yyagi #82415)

おつかれさまです。こちらもとりあえず、動作確認用の組み込みが出来ました。従来のSoundDecoderインターフェースに合わせ込むのが少々面倒くさかったですが、おかげさまで今のところ、おばたけとDSP1で全く問題なしです。

とりあえずlibbjxa.dllは、0.2の添付のものをそのままコピって使ってますが、本体側の修正が一段落したので、ここからはdll側のビルドに入ろうかと思ってます。(autoconf等々Windows上でやると超面倒くさそうなので、何も考えずにVisualStudioのDLLテンプレートにソースコードをコピペして対応するつもり)

あと、Decodeでpcmサイズが受け取れるようになったぽいですが、中身は DataLengthPcm と同じなので、 やっぱりサイズ不足のままですねー……

どうやら私の拙い英語では伝わらなかったようですので、すみませんが直接ご相談いただけますと幸いっす・・・

Reply to #82414

Reply to #82415×

You can use Wiki syntax
You are not logged in. To discriminate your posts from the rest, you need to pick a nickname. (The uniqueness of nickname is not reserved. It is possible that someone else could use the exactly same nickname. If you want assurance of your identity, you are recommended to login before posting.) Login