מדריך המשתמש

תחביר MIDI

OnSong משתמש בתחביר מבוסס טקסט לביטוי פקודות MIDI. אמנם אתה יכול להשתמש בــ MIDI Events בــ Metadata Editor, אך אתה יכול גם לבטא פקודות MIDI בטקסט.

ערכים מתוחמים

קודם כל, ניתן להפריד בין פקודות MIDI מרובות על ידי תווים שונים כולל: תו טאב, פסיק, נקודה-פסיק, צינור אנכי, או שורה חדשה. הפסיק הוא המתחם הנפוץ ביותר. לדוגמה:

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

ערוץ

כל ערך עשוי להכיל סמל @. הערך המספרי לאחר הסמל הוא הערוץ שבו יש לשלוח את הפקודה. מכיוון שערוצים ב-MIDI מתחילים בתור אפס, ערוץ אחד יהיה אפס (0), ערוץ שניים אחד (1), וכו'.

אם לא נעשה שימוש בסמל @, הפקודה משודרת או מתקבלת בכל הערוצים.

קידומות

כל ערך ברשימה מכיל קידומת. קידומת זו קובעת את סוג פקודת ה-MIDI שיש לשלוח. אלה כוללים:

  • PC או No Prefix הוא אירוע שינוי תוכנה.
  • N הוא אירוע הערה
  • CC הוא אירוע שינוי בקרה.
  • NRPN היא מספר פרמטר שאינו רשום.
  • SS הוא אירוע בחירת שיר.
  • START היא פקודת התחלה.
  • STOP היא פקודת עצירה.
  • CONTINUE היא פקודת המשך.
  • WAIT מחכה כמות ספציפית של זמן לפני שליחת אירועים נוספים.
  • F0 קדימה לתוך הודעת SysEx.
  • @ קדימה לתוך תג MIDI גלובלי.

ערכים

ערך הפקודה מופיע ממש לפני סמל ה-@ או בסוף הערך אם לא ניתן @. זהו הערך של שינוי התוכנה, שינוי הבקרה, ההערה או בחירת השיר על סמך הקידומת. במקרה של ערכי SysEx, הערך ההקסדצימלי של ה-SysEx ניתן ישירות לאחר קידומת ה-F0 המשמשת כחוברת לכל פקודות SysEx.

ערכים משניים

בחלק מהמקרים, מידע נוסף מועבר בפקודת ה-MIDI כערכים משניים. לדוגמה, MSB ו-LSB, כמו גם מהירות של ערכי בקרה ניתן לשלוח בדרך זו. זה בא לידי ביטוי באמצעות הוספת קולון בחלק הערך. לערך המשני הקשר שונה בהתאם לסוג פקודת ה-MIDI המשודרת:

  • Program Change יש ערכים משניים המתיישרים עם ה-MSB/LSB של שינוי התוכנה. ערכים אלה מופרדים בתקופה כשה-MSB בצד שמאל וה-LSB בצד ימין.
  • Control Change יש את הערך של קבוצת הבקרה בשימוש זה. המספר יכול להיות בין 0 ל-127. אם השמטת, הערך של 127 משתמע. אתה יכול גם להפריד בין ערכים מרובים עם מקף כדי לעבור בין ערכים. לדוגמה, 127-0 יתלה את הערך של 127 בין מצבים פועל וכבוי.
  • Note Event יש ערך משני המתייחס למהירות שבה יש לנגן את ההערה. ניתן להגדיר זאת לערך מספרי בין 0 ל-127. אתה יכול לעבור בין מהירויות הערות מרובות על ידי הפרדתן עם מקף.

דוגמאות

בואו נתחיל עם שינוי תוכנה פשוט. בתרחיש זה אנו משתמשים בשינוי תוכנה 8 ושולח גם MSB של 4 ו-LSB של 2 בערוץ 1. הדוגמה מתחילה בווריאציה המורכבת ביותר של זה והסרת בחירת הבנק והערוץ כדי להפוך לרחב יותר:

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

שינויי בקרה דומים למעט שהצד השמאלי של התחביר הוא מספר שינוי הבקרה והצד הימני הוא ערך אופציונלי. אם לא ניתן הערך, 127 משודר במקום זאת. נשלח Control Change 106 עם ערך של 64 בערוץ 3.

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

כעת בואו נסתכל על אירועי הערות. אנחנו רוצים לנגן C4 בערוץ 8 במהירות של 75%, הייינו נוכל להזין את הדברים הבאים מכיוון ש-OnSong מתחיל ספירה MIDI C0 כ-0 בסולם ההערות MIDI:

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

שוב, חשוב לזכור שככל שערכים מוסרים מתחביר MIDI, הצהרת ה-MIDI הופכת רחבה יותר וכמעט ספציפית. לדוגמה, הגרסה האחרונה של אירוע ההערה תשלח C4 במהירות של 100% בכל הערוצים.

אנחנו יכולים גם לעכב MIDI על ידי הוספת פקודת WAIT. הדברים הבאים יעכבו את ה-MIDI למשך 2 שניות כמו גם 500 אמס (חצי שנייה). אתה יכול לציין שניות כ-1-10 שניות או במילישניות.

WAIT2, WAIT500

לבסוף, אנו יכולים להפנות למנהלים גלובליים של MIDI שהם רשימות פקודות MIDI שנקבעות מראש שניתן להפנות אליהן. אם יש לך מנהל גלובלי של MIDI עם "on" כתג (ללא מרכאות), אזי אתה יכול להפנות לגלוביל זה עם הדברים הבאים:

@on
OnSong 2023 — עדכון אחרון ב-March 11, 2020