サクラトップ 掲示板トップ ログイン

自作関数「DTMらしく聞こえないようにする」 ハノン1番 - サクラ曲掲示板6

曲掲示板6にエディタ機能が追加されました!気軽に曲を作成してみましょう!
ななこっち★

自作関数「DTMらしく聞こえないようにする」 ハノン1番

  1. Tempo 120
  2.  
  3. // DTM=0
  4. // プロ級=1
  5. // 上手=2
  6. // へたくそ=3
  7. // 下手すぎ=4
  8.  
  9. Int RATE=1
  10.  
  11. System.TimeBase=768
  12.  
  13. Function BG(Str MML) {
  14. Str BUF=""
  15. Str FIRST=""
  16. Str ML=""
  17. Str M
  18. Str R
  19. Str FM
  20. Int C=0
  21.  
  22. // ハノン用に追加
  23. MML=MML+">"+MML+"<"
  24. BUF=""
  25. R=""
  26. For(Int i=1; MID(MML, i, 1)!=""; i++) {
  27. M=MID(MML, i, 1)
  28. // Print("Count "+ C + " Str="+M)
  29. IF(M="a"||M="b"||M="c"||M="d"||M="e"||M="f"||M="g") {
  30. IF(C>0) {
  31. FIRST=ML
  32. ML=FM+""+M
  33. FM=""
  34. } ELSE {
  35. IF(RATE>0) {
  36. IF(RATE=1) {
  37. R=R+"r"+Random(100,512)
  38. } ELSE {
  39. IF(RATE=2) {
  40. R=R+"r"+Random(84,384)
  41. } ELSE {
  42. IF(RATE=3) {
  43. R=R+"r"+Random(45,384)
  44. } ELSE {
  45.      R=R+"r"+Random(30,192)
  46. }
  47. }
  48. }
  49. } ELSE {
  50. R=""
  51. }
  52. BUF=BUF+"Sub" + CHR(123)+R+ML+CHR(125)
  53. ML=""+M
  54. }
  55. C++
  56. } ELSE {
  57. IF(C>0) {
  58. ML=ML+""+M
  59. } ELSE {
  60. FM=FM+""+M
  61. }
  62. }
  63. }
  64. BUF=BUF+"Sub"+CHR(123)+R+ML+CHR(125)+FIRST
  65. // Print(BUF)
  66.   BUF
  67. }
  68.  
  69.  
  70. #HANON={
  71. v127
  72. o4l16q98
  73. [
  74.  
  75. BG(c) BG(e) BG(f) BG(g) BG(a) BG(g) BG(f) BG(e)
  76. BG(d) BG(f) BG(g) BG(a) BG(b) BG(a) BG(g) BG(f)
  77. BG(e) BG(g) BG(a) BG(b)> BG(c)< BG(b) BG(a) BG(g)
  78. BG(f) BG(a) BG(b)> BG(c) BG(d) BG(c)< BG(b) BG(a)
  79. BG(g) BG(b)>BG(c) BG(d) BG(e) BG(d) BG(c)<BG(b)
  80. BG(a) > BG(c) BG(d) BG(e) BG(f) BG(e) BG(d) BG(c) <
  81. BG(b) > BG(d) BG(e) BG(f) BG(g) BG(f) BG(e) BG(d) <
  82. >
  83. ]
  84. [
  85. <
  86. >BG(g) BG(e) BG(d) BG(c) < BG(b) > BG(c) BG(d) BG(e)
  87. BG(f) BG(d) BG(c) < BG(b) BG(a) BG(b) > BG(c) BG(d)
  88. BG(e) BG(c) < BG(b) BG(a) BG(g) BG(a) BG(b) > BG(c)
  89. BG(d) < BG(b) BG(a) BG(g) BG(f) BG(g) BG(a) BG(b)>
  90. BG(c) < BG(a) BG(g) BG(f) BG(e) BG(f) BG(g) BG(a)
  91. BG(b) BG(g) BG(f) BG(e) BG(d) BG(e) BG(f) BG(g)
  92. BG(a) BG(f) BG(e) BG(d) BG(c) BG(d) BG(e) BG(f)
  93. ]
  94. BG(g) BG(e) BG(d) BG(c)< BG(b) > BG(c) BG(d) BG(e)
  95. BG(c2)
  96. r1
  97. }
  98.  
  99. TR(1)
  100. #HANON
  101.  
作者からのコメント
音大試験とかでは、本来、この速度でハノンを演奏します。
両手でピアノを1音ずつ演奏することになるのですが、完璧に同時に演奏できる演奏者は、皆無に近いです。(DTMなら別として)
Int RATE=1 の値を変更すると、習熟度?上手さ?を変更できます。
なんか、生演奏をリアリティーに聞こえるようにするSonarのプラグインがあると聞いて、真似どころか、適当に作ってみただけにすぎません。
ただし、この関数は適当に作られているので、和音数によって、関数のカスタマイズが必要です。

利用例:http://oto.chu.jp/mmlbbs6/post.php?mml_id=1579
注意:クォンタイズが高くないと、効果を発揮しません。
作曲者
Charles-Louis Hanon
ライセンス
🌐パブリックドメイン↗商用利用 ○改変 ○改変も転載も自由
転載
許可
推奨音源
@@
ピコサクラ対応
未対応
ピコサクラバージョン
0.2.3
動画
なし
投稿日時
2014-12-26 14:30
更新日時
2014-12-26 14:34
お気に入り
GOMAYoshiokaSigel
ダウンロード数
406
タグ
→この曲(id:1586)に問題がある場合こちらへ

感謝のコメント

GOMA2014/12/26
関数はよくわかりませんが、要はタイミングをどのくらいくらいずらすかを調整して生演奏感を出してるわけですね。
おもしろいなあと思いました。確かにDTM特有のムラのなさが生演奏とちがう無機質なかんじになるわけで、ちょっとした工夫で聞こえ方がちがうんですね。
極限をいうと、こういうことになるんです。

1.ピアノやオルガン
 事実上同時に演奏可能だが、上級者でも、ほんのごくわずかなタイミングのずれが生じる(耳にわからない程度のものです)

2.ギター、ベース
 それぞれ、6弦、4弦同時に演奏できるはずですが、同時に鳴らすことができるのは
 物理的な制限で1音または数音だけです。(連続して鳴らすことで和音を出すことはできますが)

3.バイオリン等
 弦を用いて2音を同時に鳴らすことができますが、3音以上は、相当目立つように
 時間差を用いて和音を表現します。
 ド→ソミ♪ みたく・・
 ピチカートは、3音ぐらいまでなら指で一応はじくことができます。

ピアノ程度の音源ですと、一種の生音サンプリング音源を使うだけでも、DTM臭さを
消し去ることはできますが、ギターとかになると、MIDIレベルでの制御は必須でしょう。
Sigel2015/01/06
わたくし昔ピアノ曲の打ち込みを頑張っておったんですが、
その時は一音一音数値を打ち込んで演奏感を出そうとしてました。
こんな方法があったのですか…
あの時の努力は一体…
スコーラ2015/01/22
どうせなら、下手すぎ演奏は、
となりの鍵盤を一緒に押すぐらいでもよかったかもしれませんね。

狂わない良さをだせるということは、狂える良さも出せるってことですね。
目からうろこです。
♪
この曲に「ありがとう」を伝えませんか?
ひとことの感想が、作った人にとって何よりの励みになります。
定型文のボタンもあるので、キーボードが苦手でも大丈夫です。