#てぃみ式コードエディタ

投稿日:2024-10-09
更新日:2024-10-09

ジャンル:ツール


リンク
>>>#てぃみ式 コードエディタ<<<
  • ソース(pagesフォルダ:ページの表示など、libフォルダ:計算など色々)
  • サンプルデータ(sample.json:普通のサンプル、169.json:Sazupinyaviの動画に使ったデータ、動画生成用スクリプト付き)
概要
#てぃみ式の理論をもとにコードのデータを入力して分析したり音を鳴らしたりできるツール
※「#てぃみ式」:超雑にいうと「①スケール(キー・変位)と②ベースと③和音の形(135とか)が決まればコードの構成が決まるよ!」という独自の理論
できること
  • コードのデータの作成(json形式)
  • 作成したデータの保存・読み込み
  • コードの再生
  • MIDIの生成
  • 分析情報の表示
画面説明
上部
  • ①初期BPM:
    最初~BPM変更に値が入るまでの間のBPM
  • ②初期キー:
    最初~キー変更に値が入るまでの間のキー(Maj基準)
  • ③デフォルト拍数:
    コードを追加したり読み込むデータに拍数がない場合に入る拍数
  • ④ファイル名:
    jsonとmidiを保存するときのファイル名
  • ⑤JSONダウンロード:
    入力したデータをJSON形式で保存
  • ⑥JSON読み込み:
    ⑤で保存したデータを読み込み
  • ⑦MIDI作成:
    入力したデータを基にMIDIを生成して保存
  • ⑧全て再生:
    開始位置から順番にコードを再生(再生中に編集しても再生開始時点のデータのまま再生される)
  • ⑨開始位置:
    ⑧で再生を始めるコードのインデックス
  • ⑩コード編集部分:
    詳しくは下で
コード編集部分
  • ①再生ボタン:
    コード単体で再生
  • ②インデックス:
    何個目のコードか
  • ③ベース:
    コードのベース音の度数
  • ④和音:
    ベース音を1として何度の音が和音に含まれるか
  • ⑤和音(ルート音基準):
    ④でルート音(1)を1とした場合の表記
  • ⑥構成音:
    コードの実際の構成音(ベース音から順番に)
  • ⑦主機能:
    和音の値から導かれる第一主機能/第二主機能(onコードと表記似てるけど違うので注意)
    背景色はそのコードのキーによって変わる
    →計算方法
  • ⑧前のコードとの繋がり:
    前のコードの機能から半音三度圏的にどの程度移動しているか
    (d:3度下方向、u:3度上方向、数字は0~12)
    →計算方法
  • ⑨変位:
    スケールに含まれる変位(臨時の#♭)
  • ⑩音程レベル:
    スケールに含まれる五度圏的に最も離れた音程
    (β→増5度、γ→増2度、δ→増6度…)
  • ⑪キー変更:
    転調する場合はそのキーを入力
  • ⑫拍数:
    そのコードが持続する拍数
  • ⑬メモ:
    ただのメモ
  • ⑭BPM変更:
    BPMを変更する場合はそのBPMを入力(変更しない場合は0)
  • ⑮上に追加
  • ⑯削除
  • ⑰追加:
    末尾に新しいコードを追加
和音選択
  • ①音数:
    和音に含まれる音の数を選択
  • ②基本和音のベースの位置:
    その列の和音を基本和音(行の一番左の和音)の転回形と見たときに基本和音のベースが何度に相当するか
  • ③和音選択ボタン:
    クリックすると和音が決定される
    (緑:基本和音・準基本和音、赤:現在入力されている和音、青:その他)
  • ④主機能:
    第一主機能/第二主機能(ベース音を1とする)
変位選択
1~7の各音について#, ♮, ♭から選ぶ
計算方法
主機能
  • 和音に含まれる各音についてポイントを計算
    • ベース音 → +2
    • 3度上の音を含む → +2
    • 5度上の音を含む → +3
    • 7度上の音を含む → +1
  • 最も高いポイントの音(度数)が第一主機能(1つ以上存在する)
  • 最も高いポイント-1の音が第二主機能(ない場合もある)
  • 表記方法は「(第一カンマ区切り)(第二があれば『/』)(第二カンマ区切り)」
コードの繋がり
  • 今のコードとその1つ前のコードの主機能を計算
  • 「1つ前のコードに含まれる主機能のうち1つ → 今のコードに含まれる主機能のうち1つ」全パターンについて半音三度圏的に何個移動したかを数える
  • 比重をかけて移動数の平均を計算
    • 比重:
      両方第一 → ×1、第一と第二 → ×1/2、両方第二 → ×1/4
    • 平均の計算方法:
      値を円状に並べてその重心をとる → 重心を通る角度を求める → その角度に相当する値が平均値
      • 例1:1→5でu(三度上)方向に7移動した場合 → 7/24の位置に配置する
      • 例2:4→2でd(三度下)方向に3移動した場合 → -3/24の位置に配置する
半音三度圏
未実装機能
今のところやる気はない
  • N.C.(無音)
  • 選択範囲の再生
  • MIDI解析(無理)
  • etc.

←前へ一覧へ 次へ→

Tweet