User:Contribution/Chanofreq Project: Difference between revisions

From Xenharmonic Wiki
Jump to navigation Jump to search
Contribution (talk | contribs)
Created page with "Chanofreq Project Objective: Develop a standardized file format that allows each note on every MIDI channel to be tuned to a specific frequency, using the simplest possible d..."
 
Contribution (talk | contribs)
No edit summary
Line 1: Line 1:
Chanofreq Project
== Chanofreq Project ==


Objective: Develop a standardized file format that allows each note on every MIDI channel to be tuned to a specific frequency, using the simplest possible data structure.


File Extension: .cnf
'''Objective:''' Develop a standardized file format that allows each note on every MIDI channel to be tuned to a specific frequency, using the simplest possible data structure.
Format Name: Chanofreq
 
Etymology: Channel + Note + Frequency
 
'''File Extension:''' .cnf
 
'''Format Name:''' Chanofreq
 
'''Etymology:''' Channel + Note + Frequency
 
 
'''File Structure:'''


File Structure:
A Chanofreq file is a straightforward text file with instructions formatted as follows:
A Chanofreq file is a straightforward text file with instructions formatted as follows:


channel X note Y frequency Z
channel X note Y frequency Z


Instructions can be separated either by a semicolon (";") or a newline.
Instructions can be separated either by a semicolon (";") or a newline.


Examples:
Examples:
channel X1 note Y1 frequency Z1; channel X2 note Y2 frequency Z2
channel X3 note Y3 frequency Z3
* '''X:''' An integer ≥ 1 (or 0, which does not control a MIDI channel but instead controls the internal keyboard independent of the plugin, such as the built-in sequencer in ABL3).
* '''Y:''' An integer ≥ 0.
* '''Z:''' A 64-bit floating-point number ≥ 0.


channel X1 note Y1 frequency Z1; channel X2 note Y2 frequency Z2
channel X3 note Y3 frequency Z3


X: An integer ≥ 1 (or 0, which does not control a MIDI channel but instead controls the internal keyboard independent of the plugin, such as the built-in sequencer in ABL3).
'''Behavior on Loading:'''
Y: An integer ≥ 0.
Z: A 64-bit floating-point number ≥ 0.


Behavior on Loading:
When the file is loaded, all notes are initially deactivated. Each instruction activates or updates the frequency of a note.  
When the file is loaded, all notes are initially deactivated. Each instruction activates or updates the frequency of a note.  


For instruments with internal notes that are not MIDI-controlled, use the following instruction:
For instruments with internal notes that are not MIDI-controlled, use the following instruction:
channel 0 note Y frequency Z


channel 0 note Y frequency Z


Planned Projects:
'''Planned Projects:'''


Web Interface: Create an online tool for generating .cnf files easily.
# '''Web Interface:''' Create an online tool for generating .cnf files easily.
Virtual Synthesizer: Develop a basic virtual synthesizer to serve as a reference implementation for developers.
# '''Virtual Synthesizer:''' Develop a basic virtual synthesizer to serve as a reference implementation for developers.
Presentation Video: Produce a compelling video introducing the .cnf format, featuring a demonstration of the synthesizer, designed to attract and convince developers and users of its potential.
# '''Presentation Video:''' Produce a compelling video introducing the .cnf format, featuring a demonstration of the synthesizer, designed to attract and convince developers and users of its potential.
Collaboration with Oddsound: Engage with Oddsound to integrate the .cnf format into their MTS-ESP Mini and MTS-ESP Master plugins.
# '''Collaboration with Oddsound:''' Engage with Oddsound to integrate the .cnf format into their MTS-ESP Mini and MTS-ESP Master plugins.
Update Xen Wiki: Add a "Multi-Channel Tuning Ability" column to the List of Microtonal Software Plugins, giving a green highlight to developers who properly implement the .cnf format.
# '''Update Xen Wiki:''' Add a "Multi-Channel Tuning Ability" column to the List of Microtonal Software Plugins, giving a green highlight to developers who properly implement the .cnf format or MTS-ESP Multi-Channel.
Advocacy: Promote the adoption of the .cnf format and MTS-ESP Multi-Channel among tuning-friendly companies such as these ones: https://oddsound.com/usingmtsesp.php
# '''Advocacy:''' Promote the adoption of the .cnf format and MTS-ESP Multi-Channel among tuning-friendly companies such as these ones: https://oddsound.com/usingmtsesp.php

Revision as of 14:03, 23 August 2024

Chanofreq Project

Objective: Develop a standardized file format that allows each note on every MIDI channel to be tuned to a specific frequency, using the simplest possible data structure.


File Extension: .cnf

Format Name: Chanofreq

Etymology: Channel + Note + Frequency


File Structure:

A Chanofreq file is a straightforward text file with instructions formatted as follows:

channel X note Y frequency Z

Instructions can be separated either by a semicolon (";") or a newline.

Examples:

channel X1 note Y1 frequency Z1; channel X2 note Y2 frequency Z2
channel X3 note Y3 frequency Z3
  • X: An integer ≥ 1 (or 0, which does not control a MIDI channel but instead controls the internal keyboard independent of the plugin, such as the built-in sequencer in ABL3).
  • Y: An integer ≥ 0.
  • Z: A 64-bit floating-point number ≥ 0.


Behavior on Loading:

When the file is loaded, all notes are initially deactivated. Each instruction activates or updates the frequency of a note.

For instruments with internal notes that are not MIDI-controlled, use the following instruction:

channel 0 note Y frequency Z


Planned Projects:

  1. Web Interface: Create an online tool for generating .cnf files easily.
  2. Virtual Synthesizer: Develop a basic virtual synthesizer to serve as a reference implementation for developers.
  3. Presentation Video: Produce a compelling video introducing the .cnf format, featuring a demonstration of the synthesizer, designed to attract and convince developers and users of its potential.
  4. Collaboration with Oddsound: Engage with Oddsound to integrate the .cnf format into their MTS-ESP Mini and MTS-ESP Master plugins.
  5. Update Xen Wiki: Add a "Multi-Channel Tuning Ability" column to the List of Microtonal Software Plugins, giving a green highlight to developers who properly implement the .cnf format or MTS-ESP Multi-Channel.
  6. Advocacy: Promote the adoption of the .cnf format and MTS-ESP Multi-Channel among tuning-friendly companies such as these ones: https://oddsound.com/usingmtsesp.php