... (smacks forehead) Oops! Right.AnaMark wrote: Err... We already have one version; we a designing the second one. And as you said: The first version of the specs didn't have those tags. But the second one might/should have.
[TUN] TUN Information content
Anything about MUSIC but doesn't fit into the forums above.
Moderator: KVR Moderators (Main)
[TUN] TUN Information content
2008-12-26T17:31:20+00:00
Although the .TUN format facilitates side informations using comments, these cannot be analyzed automatically. This is a problem for databases and makes the user looking into the source to get additional informations. Search functionality is very limited.
We can add new sections and new parameters without losing downwards compatibility because according to the current .TUN specification unknown sections/parameters have to be ignored and thus don't bother existing software.
My proposal:
0) New value types
Although the value type "string" was already mentioned in the current specification, it is not used. Therefore, modifying its definition does not break downward compatibility:
String: A string is enclosed in "". Special characters are encoded using a C-like syntax (Means e.g. tabulatur = \t). A string value is concatenated to the current parameter value. An empty string ("") resets the parameter value. This means:
Param1 = "123"
Param1 = ""
Param1 = "ABC\r\n"
Param1 = "DEF"
results in "ABC\r\nDEF". It is recommended to use multiple entries at line breaks ("\n") or to avoid entries exceeding the max line length.
LString: Certain parameters are not Strings but LStrings: Each parameter entry in the .TUN file adds an entry to a string list (string array). An empty string ("") clears the list. E.g.:
Keyword = "Ambient"
Keyword = "Techno"
results in a string list containing the two entries "Ambient" and "Techno".
1) New section [Info]
Usage: Contains "hard facts" about the scale
Keys:
- Format = [String] File format. Will be a constant value which declares the file compatible with .TUN specifications.
- FormatVersion = [Int] Version of the file format.
- Name = [String] Name of the scale. If not given: use file name instead (without extension).
- File = [String] Filename suggested for the scale. If not given: use value for Name instead.
- Editor = [String] Software used to create/edit the file/scale
- Author = [String] Who created the scale
- Contact = [String] Contact information of the author
- Date = [string, date format YYYY-MM-DD according to DIN specifications ] Creation date of the scale. If not given: use file date instead.
- Keyword = [LString] Keywords which may help categorizing the scale
- Comment = [String] Free comment value for informations not covered by the other keys.
I'm not sure whether adding the keys "Format" and "FormatVersion" is a good idea. If this encourages developers to create their own derivative format leading to format confusions, we should forget them. On the other side it could be important for future use.
2) New section [Usage]
Usage: What's the context of the scale? Notes about the usage.
Keys:
- History = [String] Description of the "historical context"
- Geography = [String] Description of the "geographical context"
- Ethnics = [String] Description of the "ethnical context"
- Style = [String] Description of the musical style the scale is typical for
- Instrument = [String] Description of the instrument the scale is typical for
- Song = [LString] Song in which the scale was used. Format: "Musician or Band | Album | Title | Year | Misc"
- Usage = [String] Free comment value for additional usage informations not covered by the other keys.
3) Enhancing [Exact Tuning] section or new section [Absolute Tuning]
In [Absolute Tuning] section: Keys note 0 to note 127 as in [Exact Tuning], but tunings are given in Hz instead of Cents.
As an alternative: Would you prefer including this into the [Exact Tuning] section? Let's say: "note #" for cent values and "noteHz #" for Hz values?
4) New section [Mapping]
Usage: Keyboard mapping of the tuning.
- MiddleKey = [Int] Middle key of the scale. If not given, take the note number with the lowest absolute Cent value. Note: BaseFreq may but must not specify the base tuning of the middle key. In fact, the current specification does not require positive Cent values. Without losing downwards compatibility we can give the BaseFreq parameter the tuning of *any* note by specifying negative Cent values for the notes tuned below.
- key # = [Int] corresponding note number. For keys not specified here, key #i will result in note #i.
5) New section [Editor Specifics]
This section contains keys which are specific to the software used to create the file (See section [Info], key "Editor"). The software developer can freely add keys here.
AnaMark
https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=2036
-
H-Pi Instruments H-Pi Instruments https://www.kvraudio.com/forum/memberlist.php?mode=viewprofile&u=196857
- KVRer
- 17 posts since 27 Dec, 2008
- Contact:
Post by H-Pi Instruments »
H-Pi Instruments
http://www.h-pi.com
http://www.h-pi.com
Return to “Everything Else (Music related)”
Jump to
- The Main Forums
- ↳ KVR Developer Challenge 2026
- ↳ KVR Studio Manager
- ↳ Getting Started (AKA What is the best...?)
- ↳ Instruments
- ↳ Effects
- ↳ Hosts & Applications (Sequencers, DAWs, Audio Editors, etc.)
- ↳ Guitars
- ↳ Mobile Apps and Hardware
- ↳ Soundware
- ↳ Samplers, Sampling & Sample Libraries
- ↳ Hardware (Instruments and Effects)
- ↳ Modular Synthesis
- ↳ Sound Design
- ↳ Production Techniques
- ↳ Music Theory
- ↳ Computer Setup and System Configuration
- ↳ DSP and Plugin Development
- ↳ DIY: Build it and they will come
- ↳ Music Cafe
- ↳ Machine Learning and AI for Music Creation
- ↳ Sell & Buy (+Special Offers, Deals & Promos)
- ↳ KVR Experts
- ↳ Everything Else (Music related)
- ↳ Off Topic
- ↳ Off Topic Classics
- Official Company Forums
- ↳ 2getheraudio
- ↳ accSone
- ↳ Acon Digital
- ↳ AcousticsampleS
- ↳ AcousModules
- ↳ Agitated State
- ↳ AIR Music Technology
- ↳ AMG
- ↳ Ample Sound
- ↳ Antares Audio Technologies
- ↳ Apisonic Labs
- ↳ APU Software
- ↳ apulSoft
- ↳ AriesCode
- ↳ Arts Acoustic
- ↳ Arturia
- ↳ Audjoo
- ↳ AudioSpillage
- ↳ Audiority
- ↳ Best Service
- ↳ Big Tick
- ↳ Bitwig
- ↳ Controller Scripting
- ↳ Blue Cat Audio
- ↳ Cherry Audio
- ↳ CWITEC
- ↳ Embertone
- ↳ energyXT
- ↳ Eventide
- ↳ Expert Sleepers
- ↳ forward audio
- ↳ Future Audio Workshop
- ↳ FXpansion
- ↳ g200kg
- ↳ Harrison Mixbus
- ↳ HG Fortune
- ↳ Homegrown Sounds
- ↳ HoRNet Plugins
- ↳ Ilya Efimov Production
- ↳ Image Line
- ↳ Impact Soundworks
- ↳ Indiginus
- ↳ Insert Piz Here
- ↳ Ju-X
- ↳ Kirk Hunter Studios
- ↳ Kirnu
- ↳ Kong Audio
- ↳ Krotos
- ↳ Kuassa
- ↳ KV331 Audio
- ↳ LennarDigital
- ↳ Les Productions Zvon
- ↳ Liqube Audio
- ↳ Loomer
- ↳ LVC-Audio
- ↳ Maizesoft
- ↳ Manytone Music
- ↳ Media Overkill (MOK)
- ↳ MeldaProduction
- ↳ Mellowmuse
- ↳ MIDIMood
- ↳ moForte
- ↳ Mozaic Beats
- ↳ mucoder
- ↳ MusicDevelopments
- ↳ Tips & Tricks
- ↳ MusicLab
- ↳ MuTools
- ↳ New Sonic Arts
- ↳ NUSofting
- ↳ Oli Larkin Plugins
- ↳ Orange Tree Samples
- ↳ patchpool
- ↳ Photosounder
- ↳ PlugInGuru
- ↳ Polyverse Music
- ↳ Precisionsound
- ↳ Premier Sound Factory
- ↳ Psychic Modulation
- ↳ Realitone
- ↳ Resonance-Sound
- ↳ Reveal Sound
- ↳ Roger Linn Design
- ↳ rs-met
- ↳ S3A: Spatial Audio
- ↳ SaschArt
- ↳ Smart Electronix
- ↳ sonible
- ↳ SonicBirth
- ↳ Sonic Reality / eSoundz.com
- ↳ Soundiron
- ↳ SPC Plugins
- ↳ Sugar Bytes
- ↳ TAL Software
- ↳ Tokyo Dawn Labs
- ↳ Tracktion
- ↳ Tweakbench
- ↳ u-he
- ↳ u-he Linux support
- ↳ United Plugins
- ↳ VAZ Synths
- ↳ Virharmonic
- ↳ xoxos
- ↳ XSRDO - SynthCraft
- ↳ ZynAddSubFX
- Site Stuff
- ↳ Site Stuff
- Archived Forums
- ↳ AlgoMusic
- ↳ easytoolz
- ↳ Elevayta
- ↳ Hollow Sun
- ↳ LinPlug
- ↳ Muse Research and Development
- ↳ Shuriken
- ↳ SoHa Sound Design
- ↳ Soniccouture
- ↳ Topten Software
- ↳ Valhalla DSP
- ↳ CK Modules & VST
- ↳ Sennheiser AMBEO
- ↳ Muon Software
- ↳ Westgatesounds.net
- ↳ Squaredheads
- ↳ Sonigen
- ↳ CFA-Sound
- ↳ Back In Time Records
- ↳ Livelab.dk
- ↳ Skytopia
- ↳ audioD3CK
- ↳ Inspire Audio
- ↳ Krakli
- ↳ Drumdrops
- ↳ Futucraft
- ↳ OverTone DSP
- ↳ RaXnTraX
- ↳ solar3d-software
- ↳ Signaldust
- ↳ Soundemote
- ↳ ReleaseLab (Powered by Artist Expansion)
- ↳ Wolfgang Palm
- ↳ UJAM
- KVR Forum index
- All times are UTC
- Delete cookies
