appsも手軽に試せそう。ご指摘ありがとうございました、誤った情報を載せてしまっていました。私が正しく理解できたかどうか自信がありませんが、ひとまず問題の記事を訂正しました。間違っていませんように......User側としては、Java関連の更新作業から解放されるならありがたい限りです。8を入れっぱなしにしたいところですが......あとBGAが表示されなくなった方もいつのまにか表示されるようになっていたとのことで、良かったです。liskとかを考慮すると一般的には推奨できない行為でしょうから、古いBMSの映像視聴にはBGAEncAdvanceをお勧めしておきます。関係ないけど先日の干支を間違えていたことに気付きました。午(うま)が一周して処女厨と化す流れ、微妙に気に入ってたけど、直した。寝るべきか、書くべきか。数年前から(実際はもっと前から)身体のあちこちにがたがきていて、たとえていうならkeyboardでBMSを遊ぶ際にKEY三個同時押しがいつのまにか効かなくなっているような感じなので、好む好まざるにかかわらず生活習慣を変えざるをえない。2018-12-25🕚https://tm3.nekokan.dyndns.info/サブドメイン方式でtm3のHTTPSに行くと証明書がうまくいってないことに気づき、今になって更新しました。いつまでたってもそんな体たらくの13年目の猫でございました。証明書の更新によって参照しやすくなり非常にありがたいです。ありがとうございます〜某お相撲糞譜面も十五周年らしく。今回新しい映像を作られたiimo氏のみならずxarva氏にまで件の差分の存在が知られていたようで、背中から汗が噴き出しました。buttons差分まで作っていただけて、ありがたくも汗顔の至り。COMBOしてくださったPEN氏・酷くしてくださったkeh氏・懐かしの攻略法を披露してくださったblutic氏にも、この機会に感謝を。拙作scriptによる変換結果に首を傾げてる先日のbme2bmson2bme図表、小節長1になるべき箇所が小節長1になっていなかった。誤差は16777216分音符一個分よりは小さく、33554432分音符一個分よりは大きい。他の箇所の丸め誤差とかのほうが深刻だと思うけど......、可能ならどうにかしたい。beatorajaは今後はuser側でJavaを導入する必要がなくなるかもしれないらしい。正しくは「beatorajaは今後はuser側でJavaを導入できなくなる」でした。誤った情報を載せてしまい申し訳ございません。Ver.2.412.42TM3スタッフです。ご丁寧にお知らせくださり大変にありがたいです。当Webpagesからは勝手ながらHTTPSのURIを参照させていただきましたが、問題があればHTTPに貼り直しますのでお気軽にお申し付けください。詫び石はあえて交互打ちを崩していくstyleが厭らしくて良かったです。SHOPで二億ptとか見えて、皆さん頑張ってくださいという気分になりました。v0.2.1BMSON形式からBMS形式へ変換する際、BMS仕様に準拠するLAYER画像を出力するようにした。一部のBMS-on定義番号の置換に失敗していたbugを修正した。"bga"関連の"id"番号を詰めてから変換するようにした。"lines":[]を「小節線のないBMS」に変換できるよう修正した。変換後のBMSのData文の長さが、LR2の文字列長さ上限(102400字)を超えないようにした。実装しようとしていた機能まで辿り着けてさえいませんが、今日あたりに更新しておかないと今年中はもう間に合わない感じだったので、PATCH版としてreleaseします。「LAYER用の画像がRGB(0,0,0)を持たない場合、黒の近似色を透過する」という処理はやめました。透過部位を持たないLAYERは普通にありうるし(たとえばSTAGE開幕前の暗幕)、この処理はそういった「仕様に準拠した演出」を潰す可能性があるので、良くない......良くなくない?LR2の文字列長上限を採り入れたのですが、あんまりうまくいってない感じ。“Halo”の_DPA.bmeをBMSON化したのちBMSに戻した場合、beatorajaやuBMplayは元の図表に近い感じで演奏してくれますが、肝心のLR2だけLongNotesが変になります。ありがたいことです!私の環境ではBGAも、すくなくともBMS仕様に準拠するresourcesであれば、modeを問わずほぼ正常に描画されているように見えます。私が無自覚に不具合を回避できていた可能性はあるかもしれません。私は新しいbeatorajaを導入するたびに古いbeatorajaをfolderごと削除しているし、今回も初回起動前に「スキン」tabから「スキン種類:5KEYS」の項目を眺めていました(値は初期値から一切変更していません)。BMS変換の際に、BMSON用のLAYER画像をBMS用に変換したい。先日の「LAYER用の画像がRGB(0,0,0)を持たない場合、黒の近似色を透過」した画像は、histogramを眺めるとRGBa(1,1,1,0)とかになっている。ここから透過を無効化しても「透過色がRGB(0,0,0)になっていない画像」に戻るだけなんだよな。黙ってお節介を焼くことはできるけど、誤爆が怖い。RGBa(1,1,1,0)とかを手軽にRGBa(0,0,0,255)に変換できる方法を見つけた。Mix)”で「LAYERの透過色がRGB(0,0,0)になっていないBMS」の存在を知った私は、拙作scriptに「LAYER用の画像がRGB(0,0,0)を持たない場合、黒の近似色を透過する」という処理を追加した。BMS技術情報集積所の情報を参考にさせていただき、#000000から#0F0F0Fまでの範囲を透過する。4×小節長」「LR2の文字数上限」のうち最小のものを使うようにした。小節捏造案や通分しない案は捨てた。DUBAI]をBMSONに変換→"lines":[]に書き換え→再びBMSに変換」で小節線を一掃できるようになった。Scrolling関連の座標を丸めると曲が大きく変わりうるので、対策が必要なんだけど、現時点では何もしていない。あと通分で配列500桁個とかbuggy(バグい)、絶対にbuggy(バグい)。う〜ん2018-12-18🕧bug続き拙作script、長い小節をものすごく細かく分けようとする→長さ500桁を超える配列を初期化しようとする→沈黙、みたいな感じで頭の悪さが平常運転だった。長さが1以上になる小節は事前に分割しておく。BMSONなら小節線を足すだけなのでお手軽。図表著者の端くれだった者としては「それはやっちゃ駄目でしょ」という感覚がある。data配列の長さ上限として定め、notesの座標をその近似値に丸める。これはfail-safeとして用意しておきたいところだけど、丸めた後のmoiréへの対処も問われる。座標分母を通分せず、channel文を複数行出力する。行合成の責任は他の構文解析器に丸投げ。これ自分にしては良い発想だと思うけど、公害をまき散らすような罪悪感もある。👐(🙄)自分が書いていたscriptに関して。BMS変換の際に、長さを持つnotesが存在しない場合、正しく変換できなくなるbugを直した。これから実装しようとしている事柄と全然関係ないbugをざくざく掘り当ててしまう。なかでも「小節線なし」に関するbugが面倒くさそう。DUBAI]をBMSON化して小節線だけ全部削ってBMS形式に戻そうとしたら永遠に仕事が終わらず「こりゃ駄目だ」ってなった。いちおう“(^^)”とかでtestはしていたけど、全長が短かったからたまたまうまくいっていただけでした。自分は以前まったく同じことを調べたはずだが、肝心の調査結果を思い出せなかったので改めて調べた。おおむね三通りの解釈に分かれた。末尾一文字を捨てる実装と、末尾一文字を00に置き換える実装と、行ごと捨てる実装があった。BM98k/nazo/LR2/ruvit/Angolmois/beatoraja/Bemuse/QMS/BMSC/BMSE/uBMplay/BMEV/nBMplay/TechnicalGrooveは、末尾一文字を捨てる。a.wav#00111:01000100010000iBMSC/μBMSCは面白い例外で、末尾一文字を休符とみなすが、文字列長に対する位置関係が保たれる。元の文字列長が7の場合、小節は七等分される。Requirementsに、微妙にこの話題に関連する仕様があった。(EFG)およびHIによって小節を四等分するか、または最後に00を補って五等分する感じかな。#00111:abcd(efg)hijん〜。これならif文とwhile文しか読み書きできない俺でも実装できそうかな。2018-12-15🕦Free(フリー)Lossless(ロスレス)Audio(オーディオ)Codec(コーデック)beatorajaにFLACを実装された方や目を付けておられた方に気付いていなかった私、驚かされました。あと私、不覚にも見落としていましたが、OggEnc2の更新と同時期にFLACも更新されていました。*.flacこのようなdirectory構成のとき、このようにcommandを指定すれば、WAVに一括decodeできます。usersは_decode.batなんて知らないかも。yassu氏の新作が数日前にreleaseされていたことを知って小躍りしています。地味にencoderが最新!#SETRANDOMに関する私の理解が誤っていたことに気づいたBMX2WAVが乱数をGlobal変数様(よう)に扱うという知見を得て、もしかしてと思って試したところ、普通に#RANDOMと#SETRANDOMを併記できて頽れてる(くずおれてる)。2ndからして、両者を併記できた。私はこれらが二者択一であり排他的な記述しか許されないと思い込んでいたが、普通に考えればわざわざそんな処理を書くほうが難しい。memoが私の誤解に基づいて書かれており、誤解を自覚した以上は可能な限り早急に書き直すべきだということ。なんだけど諸事情あり、暖かくなるまで後回しにする。BMX2WAVが負数値のscrollingをどう扱うかも確かめた。負数BPM変更はよく分からなかった。26みたいなやつは、resoundingしまくりのWAVに変換してくれる。Errorが発生する。kick.wav#00108:0001#00111:01010101#00211:01010101負数STOPは、“Halo”の[rather]とかは、たぶん図表著者の期待通りに変換される。拙作scriptは今のところこのへん全部無視してるけど、全無視だとさすがにつらい状況もありそうなので、歴代覇権機種の不正dataの取り扱いを調べることにした。翌日調べて日記にmemoした。up”の#016–#033のように音声の音量を変えるなど、何らかの意図があるはずなので、その原則を変える設定は上級者向けになりそう。来た時に行数表示してこのif成立させる?見たいに聞くのはアリか。Style-”はuser側で1619行目を書き換えない限り変換できないと思われるし、手入力された分岐系BMSは書き間違いが避けられないものと思われるので。WAVがちょっぴり出てきました。特殊WAV関連でもうひとつ、FLACにも私は触れるべきでした。Day”などがFLAC版を持ちます)、なにせ可逆圧縮(強い絶対に強い)なのでBMSの外ではがんがん使われていますし、Webでももう使えるし(BemuseがFLACをsupportするかどうかは不明ですが)、LR2の後継的存在たるbeatorajaも既にFLACをsupportしているので、切っ掛けがあればOgg並みに普及する可能性もありそうです。Partition)10000までのrhythmを正確に扱えます。Line)ごとに区切られて独立しています。code上のrhythmは変化しない。列はいずれも10000等分に届いていないので、iBMSC/μBMSCが正しく扱える範囲内に収まる。code上のrhythmが改竄される。このrhythmを正確に記述するためには、Gridを12673等分できる精度が最低限要求される(はず)。各小節のdata列11番は一行にmergeされ、丸められる。6118/6337に。BMSON)とは相容れないBMSになりがち。WAVによってerrorが発生します。#[10-14].wav”を予め普通の形式に変換しておけば、BMX2WAVは無事に働いてくれます。このような特殊なWAVを持つ作例が他にどの程度存在するものか、あいにく私は知りません。誰か自信ニキ......“歓喜の歌”、こういうのはBMX2WAVの面目躍如という感じ。重複行(68–69行目の#00102・#00113、238–241行目の#127–#128)を消すと変換できます。他にもいくつか同種のBMSがあって、ひとつは“王宮のロンド”、これは普通に変換できました。sample一個を1295等分に切り刻んで数秒で全部鳴らして元通りに聴こえます的なBMSがあったような。codeに誤りがなければ普通に変換できるはず。量子化BMSという記事が詳しいです。BMS自体は旧版BMX2WAVでも変換できていた模様。$1”の続編が2014年にreleaseされておりまして、WAV化して聴き込みたい方は要望を出されてはいかがでしょう。softwareが頑張り出した結果、どうやら良くないtimingで処理が競合してしまったらしく、Firefox再起動後に永遠にv64への自動更新が繰り返される状態に陥った。仕方なくFirefoxをuninstallして再びinstallしたところ、履歴やbookmarkの一部が壊れてしまい、自分のwebpageさえsuggestされなくなってしまった。版)が出ていた、ことについさっき気付いたうえまたもやAntivirus先生が疑い始めたので本日のtestはお休み。if”がcheckedのほうが良いかもしれないです。test続き#ENDRANDOM正式対応予定ありがとうございます。これで!!DataErr0r!!.bmsとかも変換できるかな、と思いきや、46805行目のDataErr0rや、最後の余計な#ENDIFや、fileが存在しない#WAVYWのせいで無理でした。機械的に出力したdataに対してわざわざerrorsを取って付けた感あるので、そういうのはべつに変換できなくていいんじゃねって思いますが、それはさておき#ENDIFの当てにならなさよ......時間がなくて全然testできてない。Drive”を11.81秒で変換できた。a.wav#00111:01#00111:00“PAL,36”や“Netzwerkgenen”や“2112”はdata文が合成されることを前提として書かれているので、E.g.1は変換できたほうが嬉しい。fileには、data文の合成に関する解説がある。Yane氏版のBM98を知らない私には判断しかねるけれども。#ENDIFを持たない#IFは変換されない。G2R2018出展作品では“【Freak《Show】Down》”の_whatsmeanbpm.bmlなどが該当する。私は寛容なparserを書くことに挫折した身なので何ともいえない。1#00211:01#endif#endrandomnanasigrooveは#RANDOMを47回以上繰り返すと強制終了する。これに対処するには各#RANDOM区間を#ENDRANDOMで閉じていく必要がある。閉じると「ヘッダ重複だお」と怒られる。v2は入れ子の分岐を変換できる。Zero”が鳴らされる。v2は“オートメーション工場”を正しく解釈できる数少ないapplicationsのうちのひとつということに。0.6.4時点では(0.6.6時点でも)、終端定義を重ねても鳴る音は最後のひとつのみ。"y":11}]}]}終端定義がLayerableであるべきかどうかは私にはわからない。codeは以下のような感じ。C-02一回目の置換結果のみ、不思議な位置に"0"が挿入される。Hostに限らずBlinkでもEdgeHTMLでもGeckoでもTridentでもOSを問わず同じ結果になる。間違っているのは私のほうだ。何が間違いなのか分からない。RegExp.exec()やString.replace()を使うのをやめて、それらの代わりにString.split()を使うようにしたところ、この現象は解消された。日記を更新した後に即座に間違いに気付いた。v0.2.0BMSON形式からBMS形式への、(BMS-on記法による擬似的な)変換をsupportした。定義されたBMS-onが別の#WAV定義に上書きされると変になるのを修正した。tagsをsupportした。値を右から左に渡すだけ。文書を整備しないと私自身が混乱に陥りそうなので、数日中にどうにかします。G2R2018開催期間中に間に合わせたく急いだため、細かい箇所の煮詰めが足りていません。BMSON仕様のlayer画像における透過部分は、BMS形式に合わせて黒で塗りつぶす必要が本来ありますが、いまのところそこまで手が回っていません。そのへんは今後の予定ということでご了承をば。BMSON固有の仕様には追従しきれないので、あくまで一方向の擬似的な変換にとどまります。Lines仕様を組み合わせて無理矢理に体裁を整えています。問題は拙作変換器がReader要件を満たしていないことですが、これも今後の課題とします。Notesは全部BGMに回しています。beatoraja拡張"up"は変換できそうだけど、それをするとbeatoraja/HDX/BMIIDXView以外で困るんじゃないかな〜。BGMの並びが汚くなるのは、どうにかできるなら改善したいけど、難しそう。ここまでやるなら実際に音声の裁断もできるといいんですけど、それは今の私には難しいうえに、素晴らしい音切り専用softwaresが既に存在するので、あんまりやる気ないです。960}]}同一channel内で同一の"y"を持つnotesを何個並べても、音声は一個しか鳴らされない。BGM]と同種の「訂正されるべき誤り」に見える。いえBMSON仕様はこのような状況を禁止しないし、playableなBMSON実装もこれを許容している(いくつかの発音処理はうまくいかないようだけど)。BmsONEは最後方のひとつを残して他を捨てる。piano”のような図表を再現できないのは問題かもしれない。問題......問題?2018-12-02🕦なんとなく捗った使わないが構文解析だけしていた#VIDEODLYを、一年以上#VIDEODRYと書き間違えていたことに今更気がついた。対応ついでに数日中に修正するつもりだけど今日は寝る。]}]BMSON仕様v1.0.0に準拠する実装はこれらを通常のnotesと区別できないので、この方法は使えない。それならそれで"hidden_channels"のような独自keysに出し分けておき、myParser内部ではObject.assign()とか[].concat()みたいな形で一緒くたにして取り扱えばよろしいがな。2018-12-01🕗BMSE非公式Helpを更新した先月末の日記で読み仮名を参照したとき、そういえばWinampとかHTTPS化してたなあ、と思い出してcheckしてみたら他にもいろいろなURIが変わりまくっていて、けっこう忙しかった。以前は無料で読めたはずの記事が会員制に変わっていたり、まさに隔世の感。4.1.0がreleaseされていた。WinMerge日本語版2.16.0+-jp-1がreleaseされていた。GeoCitiesから移転。Properties。