Comments (13)
Alright, that will work then. Thanks very much!
よし、それなら大丈夫だ。どうもありがとう!
from mml2vgm.
わかりにくいので、「記述するmml」と「実際に演奏されるmml」を提示していただけるとありがたいです。
仰りたいのはこういうことでしょうか?
Case 1:
記述するmml
'S1-3 o2 [` l`8 l4 [cd+g>]2 `]
実際に演奏されるmml
'S1 o2 l8 c& c> r c& c> r r
'S2 o2 l8 r d+& d+> r d+& d+> r
'S3 o2 l8 r r g& g> r g& g>
Case 2:
記述するmml
'L03-05 o6 [` l2 l`8 >e< `4. b `4 aga `8 b `]
実際に演奏されるmml
'L03 o6 l8 >e& <e& e g& g& g
'L04 o6 l8 >r <b& b& b a& a
'L05 o6 l8 >r <r a& a r b
↑の理解であっているのであれば、以下の通りに記述できるようにしたほうが分かりやすいかもしれません。如何でしょうか。(実際に発音する音調をlコマンド、音符コマンドの修飾コマンドとして指定する)
Case 1:
記述するmml
'S1-3 o2 [` l8`4 [cd+g>]2 `]
実際に演奏されるmml
'S1 o2 l8 c& c> r c& c> r
'S2 o2 l8 r d+& d+> r d+& d+>
'S3 o2 l8 r r g& g> r g >
~~~~最後だけ違いが出る
Case 2:
記述するmml
'L03-05 o6 [` l8`2 >e< b`4. a`4 ga b`8 `]
実際に演奏されるmml
'L03 o6 l8 >e& <e& e g& g& g
'L04 o6 l8 >r <b& b& b a& a
'L05 o6 l8 >r <r a& a r b
~~この場合は違い無し
from mml2vgm.
I suppose I must have provided difficult data to start with, or maybe just incorrect. If we take it to be a note modifier, applied to the note that comes before the switch, the input for your second example would be:
'L03-05 o6 l2`8 [` >e1`4.< b.`2 ag a`4 b `]
Which says the default note length is a half note, and the default switch step is an eighth note. That would then give the output:
'L03 >e1< g2
'L04 r4. b2. a2
'L05 r4. r2 a2 b2
Or if it has to be modifying the note after the switch rather than before, shift all of the explicit `n modifications one to the right, which better matches your example.
It still would require some careful timing by the composer if they wanted the notes to extend all the way up until the channel is to be used again, like I just did, but if the round-robin comes around and a note is still playing from a previous one it should just get cut off. As for the first case the sound is fine, the rests at the end are the only thing that's different aren't they? Do they make it so that all the channels will end at the same place in the overall tempo? That may or may not be desirable depending on if you want to put other things on the channels, like I did in the composition for the transitions, so the second idea you provided seems to be the better way to go.
私が最初に提供したデータが難しかったか、あるいは間違っていたのでしょう。スイッチの前の音に適用されるノートモディファイアだとすると、2番目の例の入力は次のようになります:
'L03-05 o6 l2`8 [` >e1`4.< b.`2 ag a`4 b `]
デフォルトの音符の長さは2分音符で、デフォルトのスイッチステップは8分音符です。そうすると、次のように出力される:
'L03 >e1< g2
'L04 r4. b2. a2
'L05 r4. r2 a2 b2
あるいは、スイッチの前ではなく、スイッチの後に音を修正する必要がある場合は、明示的な n
の修正をすべて右に1つずらせば、あなたの例によりよくマッチします。
しかし、もしラウンドロビンが回ってきて、前の音符がまだ演奏されている場合は、その音符はカットされます。最初のケースに関しては、音は問題なく、最後の休符だけが違いますよね?全体のテンポの中で、すべてのチャンネルが同じところで終わるようにするのですか?それは、トランジション用のコンポジションでやったように、チャンネルに他のものを置くかどうかによって、望ましいかどうかが変わってくる。
from mml2vgm.
言いたいことはわかりました。
しかしmmlが読みにくい。
'L03-05 [` l8`2 e4.`1 b2`. a g a4 b2 `]
妥協案としては↑ですね。。。
from mml2vgm.
So the existing note length specification determines the switch length, and the extra ` decorator controls the note's duration on that channel?
つまり、既存の音符の長さの指定がスイッチの長さを決定し、追加のデコレーターがそのチャンネルでの音符の長さをコントロールするということですか?
from mml2vgm.
Yes.
そうです。
from mml2vgm.
TAG715をお試しください。
from mml2vgm.
One last question. Will the tie decoration on a note cause it to play the next note on the next channel without waiting any time at all, thus allowing the creation of chords? I figured it would be tie rather than length 0 since length 0 is related to the tone doubling functionality.
最後の質問です。ある音符にtieの装飾があると、次のチャンネルで次の音符が待たずに演奏され、和音を作ることができるのでしょうか?長さ0は倍音機能に関係しているので、長さ0ではなくtieだろうと思いました。
from mml2vgm.
どのようなmmlですか?
from mml2vgm.
I just realized it would actually make more sense for it to be the existing chord modifier that you have for the MIDI mode :
. So say I gave this MML.
'L01-05 o6 [` l8`2 g4:b4:>e4< egba4b `]
It would give something like this.
'L01 g b
'L02 b r8 a
'L03 >e< r4. b
'L04 r4 e
'L05 r4 r8 g
That is, the part arp would distribute the notes about the allocated channels without waiting between switches at all, making a chord.
MIDIモードのコード・モディファイア:
を使う方が理にかなっていることに気づいたんだ。例えば、こんなMMLを作ったとしよう。
'L01-05 o6 [` l8`2 g4:b4:>e4< egba4b `]
このようになります。
'L01 g b
'L02 b r8 a
'L03 >e< r4. b
'L04 r4 e
'L05 r4 r8 g
つまり、パートアルペジオは、スイッチとスイッチの間をまったく待たずに、割り当てられたチャンネルにノートを分散させ、和音を作ることになる。
from mml2vgm.
今回はその機能は要らないです。
なぜなら、
・似たような機能が既にある
・コマンドの本来の目的から外れる
・読みにくい
からです。
from mml2vgm.
Fair enough, although as I can't see it's likely my MML will on the whole be less readable. What is the similar function you mention? I know there is the chord thing but that only applies to MIDI. Otherwise you have implemented this feature well and can close this issue.
そうだね。でも、僕は見えないから、僕のMMLは全体的に読みにくくなるだろうね。あなたがおっしゃる同様の機能とは何ですか?コードのことは知っていますが、それはMIDIにしか適用されません。そうでなければ、あなたはこの機能をうまく実装しているので、この問題を解決することができます。
from mml2vgm.
'[|'コマンドと '|]'コマンドです>似たような機能
from mml2vgm.
Related Issues (20)
- solo cannot eliminate SSGPCM sound HOT 2
- huc6280 files don't play properly when using MAME HOT 10
- secondary chips HOT 9
- Gigatron sound engine support HOT 29
- トーンダブラーがコンパイル通らなくなってる HOT 3
- Latest version not running (English Only?) HOT 5
- .gwi files will not compile & play, compile to vgm. HOT 2
- The description of the Gigatron sound source is missing in mml2vgm_MMLCommandMemo.txt. HOT 1
- Feature Request: Add intel(uPD)8253) (PIT音源) HOT 5
- How to change YM chip for MUC file ? (to be Sega Genesis Accurate) HOT 1
- 無限ループ内でデチューン指定すると音がおかしくなる(HuC6280) HOT 2
- XGM FMモードのE06でベンドコマンドが効かない HOT 3
- TLオフセットコマンドの補正値がおかしくなる HOT 10
- Can't transpose down (error code:1) HOT 3
- vコマンドをエイリアスにすると、yTLコマンドが正常に動作しない HOT 5
- mml command table is out of date HOT 1
- Can't find YM2609 emulator code HOT 3
- Feature request:Supports DSG (YM2163), OPK (YM7129), SAA1099 and playback via SPFM hardware. HOT 1
- DCSGでエンベロープを使用すると正常にコンパイルできない HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mml2vgm.