【仕様改善】【GR】ギター音についての改善案(音声の1本wav化)
そうですね。一度試作してみましょうか。
ですが、私は今仕事が忙しくて全然時間がとれないので、少しでも手伝っていただけるとありがたいです。この新仕様に準じたサンプルのDTX曲データ、作ってもらえませんか?それが再生できるように本体をいじってみますので。
ご無沙汰しております。瀬名です。
横からですが、新仕様への提案が御座いますので持参しました。
デメリットとして、
・容量の増加
・に伴う読み込み速度の低下?
・実装方法によってはDTXCからの操作が難化すること
が挙げられますが、機能の実装メリットの方が高いと見て、提案させていただきます。
まず本件の実装にあたって、ドラムパートでも出来ないかということを提案させていただきます。
例えばスネアロールの音源を基盤として、無音チップを配置するだけで切り分けてくれるようなものが理想です。
では、仕様提案内容です。なるべくDTXCの仕様を変えないで実装できるものを考えました。
・#WAVxx:yy.wavの後に#CUTWAV:01とすることで自動カットのSWをオンにできる
・WAVxxの再生中にWAV無指定チップが鳴った場合、WAVxxの途中から再生する
・(鳴らす部分は、現チップの正常再生タイミングから次チップの正常再生タイミングまで)
・(再生中の現チップはレーン属性によって処理を変える)
・→次チップの再生時にミュートされるチャンネル → 次チップが鳴るタイミングで消音する
・→次チップの再生時にミュートされないチャンネル → 次チップが鳴るタイミングで消音しない(重複する)
以上に伴うDTXC側の仕様変更提案です。
・GtR~Bのレーンにチップを置いた時に自動でGtVに(GtVDefault)チップを配置する(BsVも同様とする)
・GtV,BsVのレーン単体でもチップを置けるようにし、その場合はギターBGM用チャンネル(BC,BDあたり?)を設ける
・(現状ではGtVに配置すると自動的にOPENが敷かれ、OPENを除去したGtVのみのデータだと保存されないため)
以上の提案に準じたサンプルデータをこちらでご用意させて頂きました。
http://finetskill.ddo.jp/crs/data/ippon.zip
長くなりましたが以上です。
丸投げになってしまい恐縮なのですが、よろしくお願い致します。
瀬名さん
こちらこそご無沙汰してます。台風で早く帰ってきました。(その分明日からの仕事が地獄ですが・・・)
仕様案をご呈示いただき、ありがとうございました。それを拝見して思ったのですが・・・
今晩しか時間がとれないので、取りあえず急ぎ試作を作りました。(添付のファイル群。後でソースをbranchにコミットしておきます) こんな感じでしょうか。
いや、消音を入れること自体は難しくないのですけれども、これを入れちゃうと(音切れ発生を避けようとして)どうしても演奏がツッコミ方向に矯正されちゃうような気がして、躊躇してます。(以前別のチケットでも書きましたが、ドラムはまず突っ込まないように突っ込まないように練習するところから入るものですので・・・)
消音の件。
チップが流れて100msくらい待って消音する、ってアイデアを思いつきました。いかがでしょう。
(ってか、その消音までの待ち時間をCONFIGとかでいじれるようにしろとか言われそうだな・・・ww)
早く帰ってきてその時間ですか!いつも遅くまでお疲れ様です。
ミュート
そうですね、よくよーーく考えると当たり前の話でした…。すっ飛ばして下さい。
素直にギター/ベース/ドラム用のそれぞれに、これ用のトラック(チャンネル)を新設
自分で思ったのですが、ドラム側で開始チップから発音にしてるくらいだからギターも開始チップから発音でいいんじゃ・・とか思ってしまいました。
=つまりGtVを単体で置ける必要はないってことじゃん!ということです…。
なので、新しいチャンネルを追加せずとも実装できるのであれば全レーンに対応できる汎用性を持ちますし、
レーンが増えたりだとかで見づらくなるよりは、CUTWAVを新設する方法がより操作も見た目も直感的であると思いこちらを提案させていただきます。
読み込み速度
じゃなくてもいわゆる永遠の課題な気がしますね・・・
XP早くどうにか!
宣伝
おお、ありがとうございます!ですがちょっとなんとなく後ろめたい気持ちもあるので、今回は遠慮させてください。
お気持ちだけでも、大変感謝です!
完全にすれ違いじゃないですかー!やだー! 後ほど確認させていただきます!
お疲れ様です。試作動かしてみました!
とりあえず自分の感じた点は、叩いた(弾いた)通り(のタイミング)に音がならないというのがすごい違和感でした。
早めに叩いてしまったら早めに鳴る、遅かったら遅めに、叩かなかったら鳴らない、というのは無茶でしょうか。
そういった意味で、ロード時にチップ毎にバッファを振り分けられたらそれも実現できるかなと思ったのです。
あともうひとつ、ドラムでレーン個別に使いたいというよりは使えたら尚素敵になるかな、とは思います(汎用性を持たす意味でも
えーと、ひょっとして
「音切りを自動化する機能を本体に内蔵する」
ものを期待されてますでしょうか。
私はickw_284さんの最初の提案の文章から
「1本のWAVをボリューム0で再生させておいて、チップをヒットさせたタイミングでボリュームを上げて、次のチップが来たタイミングでまたボリュームを0にする」
機能かと思ってそのように作っちゃいましたよHAHAHA。
# やっぱしちゃんと話を伺ってから作らないと「コレジャナイ」ものになりますねホント。
まさにそれです!手段的には間違いないと思うのですが、プレイした時に違和感があるのは好かなかったので・・・
提案というかアイデアを思いついた当人が実装できれば一番良いのは間違いないのですが、
プログラムを趣味でかじってるだけの人間がいじれるコードではないです('A)
すぐには対応できないので、私も担当を外れます :-)
ギター譜面制作の効率化のため、そろそろちゃんと対応したい。優先度を5→6に変更した。
現状、ギター譜面を制作するには予め音を切らないと作れず
作者の負担も大きく、ギター譜面不足の一因となっています。
自分が提案するのは、ギター音の一本WAV(ogg)を指定してノートが上手く弾けてたら鳴らし
失敗したら音消すorピッチを弄るようにする仕様です。
この方がギターのデータを作りやすくて楽な上音分割する必要がなくなり、
今以上にギター譜面が増えると見込んでいます。
(参考にしたのはFoFというギターヒー□ーのシミュレーターで
あちらも提案通りの仕様となっています)