ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE

Hướng dẫn người dùng

Cú pháp MIDI

OnSong sử dụng cú pháp dựa trên văn bản để biểu thị các lệnh MIDI. Mặc dù bạn có thể sử dụng Sự kiện MIDI trong Trình chỉnh sửa siêu dữ liệu, bạn cũng có thể biểu thị các lệnh MIDI dưới dạng văn bản.

Giá trị được phân tách

Trước hết, nhiều lệnh MIDI có thể được phân tách bằng các ký tự khác nhau bao gồm: ký tự tab, dấu phẩy, dấu chấm phẩy, thanh dọc hoặc dòng mới. Dấu phẩy là dấu phân tách phổ biến nhất. Ví dụ:

1.2:0@0, PC1.2:3@0, N67@1, START, SS8

Kênh

Mỗi mục có thể chứa ký hiệu @. Giá trị số sau ký hiệu là kênh mà lệnh sẽ được gửi. Vì các kênh trong MIDI bắt đầu từ không, kênh một sẽ là không (0), kênh hai là một (1), v.v.

Nếu không sử dụng ký hiệu @, lệnh sẽ được gửi hoặc nhận trên tất cả các kênh.

Tiền tố

Mỗi mục trong danh sách chứa một tiền tố. Tiền tố này xác định loại lệnh MIDI sẽ được gửi. Những cái này bao gồm:

  • PC hoặc Không có tiền tố là sự kiện thay đổi chương trình.
  • N là sự kiện ghi chú
  • CC là sự kiện thay đổi điều khiển.
  • NRPN là số tham số không được đăng ký.
  • SS là sự kiện chọn bài hát.
  • START là lệnh bắt đầu.
  • STOP là lệnh dừng.
  • CONTINUE là lệnh tiếp tục.
  • WAIT chờ một khoảng thời gian cụ thể trước khi gửi thêm sự kiện.
  • F0 là tiền tố của một thông báo SysEx.
  • @ là tiền tố của thẻ toàn cục MIDI.

Giá trị

Giá trị của lệnh xuất hiện ngay trước ký hiệu @ hoặc ở cuối mục nếu không có @ được cung cấp. Đây là giá trị của chương trình thay đổi, thay đổi điều khiển, ghi chú hoặc chọn bài hát dựa trên tiền tố. Trong trường hợp các mục SysEx, giá trị thập lục phân của SysEx được cung cấp ngay sau tiền tố F0 được sử dụng làm tiêu đề cho tất cả các lệnh SysEx.

Giá trị phụ

Trong một số trường hợp, thông tin bổ sung được truyền đạt trong lệnh MIDI dưới dạng giá trị phụ. Ví dụ: MSB và LSB, cũng như tốc độ của các giá trị điều khiển có thể được gửi theo cách này. Điều này được biểu thị thông qua việc thêm dấu hai chấm vào phần giá trị. Giá trị phụ có ngữ cảnh khác nhau tùy thuộc vào loại lệnh MIDI được gửi:

  • Thay đổi chương trình có các giá trị phụ phù hợp với MSB/LSB của việc thay đổi chương trình. Các giá trị này được phân tách bằng một dấu chấm với MSB ở bên trái và LSB ở bên phải.
  • Thay đổi điều khiển có giá trị của điều khiển được đặt sử dụng điều này. Số có thể từ 0 đến 127. Nếu bị bỏ qua, giá trị 127 được suy ra. Bạn cũng có thể phân tách nhiều giá trị bằng dấu gạch ngang để bước qua các giá trị. Ví dụ: 127-0 sẽ khóa giá trị 127 giữa các trạng thái bật và tắt.
  • Sự kiện ghi chú có giá trị phụ liên quan đến tốc độ mà ghi chú sẽ được phát. Điều này có thể được đặt thành giá trị số từ 0 đến 127. Bạn có thể bước qua nhiều vận tốc ghi chú bằng cách phân tách chúng bằng dấu gạch ngang.

Ví dụ

Hãy bắt đầu với một sự thay đổi chương trình đơn giản. Trong trường hợp này, chúng tôi sử dụng chương trình thay đổi 8 cũng gửi MSB là 4 và LSB là 2 trên kênh 1. Ví dụ bắt đầu với biến thể phức tạp nhất của điều này và loại bỏ lựa chọn ngân hàng và kênh để trở nên rộng hơn:

PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7

Những thay đổi điều khiển cũng giống nhau ngoại trừ phía bên trái của cú pháp là số thay đổi điều khiển và phía bên phải là giá trị tùy chọn. Nếu không cung cấp giá trị, 127 sẽ được gửi thay thế. Chúng tôi sẽ gửi Thay đổi điều khiển 106 với giá trị 64 trên kênh 3.

CC105:63@2, CC105:63. CC105@2, CC105

Bây giờ hãy nhìn vào các sự kiện ghi chú. Chúng tôi muốn phát C4 trên kênh 8 ở tốc độ 75%, chúng tôi sẽ nhập như sau vì OnSong bắt đầu tính MIDI C0 là 0 trên thang điểm ghi chú MIDI:

N60:95@7, N60@7, N60:95, N60

Một lần nữa, điều quan trọng cần nhớ là khi các giá trị được loại bỏ khỏi cú pháp MIDI, câu lệnh MIDI trở nên rộng hơn và ít cụ thể hơn. Ví dụ: phiên bản cuối cùng của sự kiện ghi chú sẽ gửi C4 ở vận tốc 100% trên tất cả các kênh.

Chúng tôi cũng có thể trì hoãn MIDI bằng cách thêm lệnh WAIT. Phần sau sẽ trì hoãn MIDI trong 2 giây cũng như 500 ms (nửa giây). Bạn có thể chỉ định giây từ 1-10 giây hoặc tính bằng mili giây.

WAIT2, WAIT500

Cuối cùng, chúng tôi có thể tham chiếu các toàn cầu MIDI là những danh sách lệnh MIDI được cấu hình trước có thể được tham chiếu. Nếu bạn có toàn cầu MIDI với "on" làm thẻ (không có dấu ngoặc kép), bạn có thể tham chiếu toàn cầu đó với những nội dung sau:

@on
OnSong 2026 — Cập nhật lần cuối vào March 11, 2020