Здесь представлена спецификация «Sintez», предназначенная для синтезатора частот (синтезатора звуков). Она основывается на международном формате данных «JSON», который легко преобразуется в любой другой современный формат, например, в «XML». Спецификация позволяет гибко подходить к формированию структуры записи, как биорезонансных частот, так и любых музыкальных произведений. Кроме этого, возможен смешанный вариант, когда в музыкальное произведение включается ряд биорезонансных частот. Эта спецификация применяется в данном синтезаторе.
########################## сокращение (можно писать полный либо сокращенный вариант):
########################## F-FREQ, B-BEAT, P-PROC, V-VOLUME, FS-FREQSECOND, Q-QUOTA, TEMPO-T, NOISE-N

{
	NAME: "Healing sound 1",	#название программы
	DESC: "desc 1",		#описание программы
	CLASS: 8,		#CLASS==0 - общие, CLASS>0 & CLASS<100 - класс, область воздействия по МКБ-10 (ICD-10), CLASS>=100 - дополнительный список
	AUTHOR: "author name",	#имя или уникальный бренд автора программы
	id: 1321234,	#внутренний идентификатор автора программы (все имена параметров большими буквами - для спецификации, маленькими - для  внутреннего использования в конкретном сервисе)
	TEMPO: 1.2,	#рекомендуемая длительность одного звука в секундах, определяющая темп мелодии; [пока реализован только для верхнего уровня]
			#реальная длительность может меняться от некоторого минимального значения, определяемого конкретной системой, до TEMPO)
	DWELL: 180,	#длительность программы, сек (по умолчанию - 120) [пока реализован только для верхнего уровня]
	FREQS: [
		200.5,	#самостоятельная частота 200.5 Гц
		{F: 568, B: 7.8, Q: 1},	#F:несущая частота, B:бинауральная частота, Q:квота-сколько мест занимает звук (целое число: 1..1000, 1-по умолчанию); quota(F:568)= 1/(1+1+2+1+1+1)
		{F: 10000, Q: 2},	#quota(F:10000)= 2/(1+1+2+1+1+1)
		{F: 1100, B: 12},	#бинауральная частота - 12 Гц (если B отсутствует или B:0 - система сама оптимально назначает эту частоту)
		{F: 250, FM: 20},	#F:несущая (основная) частота, FM:частотная модуляция относительно несущей, в пределах 240-260 Гц [пока не реализовано]
		{F: 1100, AM: 7}	#F:несущая (основная) частота, AM:амплитудная модуляция 7 Гц [пока не реализовано]
	]
}

################# CLASS, DWELL - целое число
################# FREQSECOND - десятичное число
################# FREQ  - десятичное число, строка (номер ноты) или массив (одновременно звучащие ноты, например F:["c3", "e3", "a3"])
################# VOLUME - десятичное число, строка (увеличение/уменьшение громкости в процентах, например "+20") или массив (громкость для двух или более каналов)
################# TEMPO - десятичное число или строка (увеличение/уменьшение длительности в процентах, например "-20")
################# QUOTA - целое число. Может быть дробным (0.5, 0.25, 0.125 и т.д.), если ORDER: "SERIES" (для мелодии)
################# BEAT - десятичное число или массив (для случайного выбора из списка частот)
################# FM, AM - десятичное число или массив (для случайного выбора из списка частот)
################# NOISE - строка (тип шума)
################# FREQS, PROGS, NOISES - массив

{
	NAME: "Healing sound 1",
	DESC: "desc 1",
	AUTHOR: "author name",	#имя или уникальный бренд автора программы
	DWELL: 120,
	id: 1077232,
	ORDER: "SERIES",	#"JOIN" - программы "Healing 2" и "Healing 3" работают одновременно (по умолчанию), "SERIES" - по порядку [пока не реализовано]
	PROGS: [
		{
			NAME: "Healing 2",
			DESC: "desc 2",
			AUTHOR: "author name 2",
			DWELL: 100,
			FREQS: [533, 641, 677, {F:224, B:7.8, Q:1.5, V:90}]
				#воспроизводится, как список из самостоятельных частот: 533,641,677,224; в 224 - предустановлены BEAT, QUOTA и VOLUME
		},
		{
			NAME: "Healing 3",
			DESC: "desc 3",
			DWELL: 80,
			VOLUME: 70,	#громкость 1..100 (%), по умолчанию - 100
			FREQS: [560, 670, {F:360,FS:380,P:"SWEEP"}]
				#воспроизводится, как список из двух самостоятельных частот: 560 и 670, и одной качающейся частоты: от 360 до 380 Гц
		},
		...
	]
}

################# DWELL самого высокого уровня (здесь - 120) является определяющим для длительности программы,
################# при этом DWELL-ы более низкого уровня распределяются пропорционально их длительности

################# FREQS:[360,380] - список из двух самостоятельных частот 360 и 380 Гц (по умолчанию),
################# что эквивалентно: FREQS:[{F:360,P:"ONE"}, {F:380,P:"ONE"}], что эквивалентно: FREQS:[{F:360}, {F:380}]
################# Если PROC:"ONE" не нужно указывать определённо, то это поле необязательное

################# FREQS:[360, {F:480,FS:580,P:"ONE"}] - список из одной самостоятельной частоты, а вторая - выбирается любая из диапазона 480-580 Гц (по умолчанию),
################# что эквивалентно: FREQS:[360, {F:480,FS:580}]
################# FREQS:[360, {F:480,FS:580,P:"RANGE"}] - список из одной самостоятельной частоты и звук с одновременно звучащими частотами в диапазоне 480-580 Гц [пока не реализовано]
################# FREQS:[360, {F:480,FS:580,P:"SWEEP"}] - список из одной самостоятельной частоты и звук с качающейся частотой от 480 до 580 Гц [пока не реализовано]

{
	NAME: "Healing sound 4",
	DESC: "desc 4",
	id: 2921285,
	DWELL: 360,
	VOLUME: 100,	#громкость 1..100, по умолчанию - 100
	FREQS: [500,570],
	PROGS: [
		{
			NAME: "Healing sound 5",
			DESC: "desc 5",
			AUTHOR: "author name 5",
			DWELL: 250,
			FREQS: [20, 10000, {F:568, V:70}]		#уточняется громкость для частоты 568 - VOLUME:70
		},
		...
	]
}

#################

{
	NAME: "Healing sound 5",
	DESC: "desc 5",
	DWELL: 360,
	FREQS: [
		500,
		{F:570, V:[30,90]},	#громкость разная в двух каналах: левый - 30, правый - 90 [пока не реализовано]
		1000
	]
}

#################

{
	NAME: "Healing sound 6",
	DESC: "desc 6",
	id: 4561875,
	DWELL: 180,
	PROGS: [
		{
			NAME: "Healing sound 2",
			DESC: "desc 2",
			AUTHOR: "author name 2",
			DWELL: 180,
			PROGS: [
				{
					NAME: "Healing sound 21",
					BEAT: [1.5, 4, 6, 8.8],		#к каждой частоте из списка FREQS подбирается одна из бинауральных частот [1.5, 4, 6, 8.8] случайным образом [пока не реализовано]
					FREQS: [1533 ,241, 377, {F:24, B:6.1}]
				},
				{
					NAME: "Healing sound 22",
					FREQS: [533, 141, 177, {F:523, FS:525}]	#то же, что и {F:523, FS:525, P:"ONE"}
				},
				{
					NAME: "Healing sound 23",
					FREQS: [56, 7665, 1775, {F:1789, B:[4.4, 6]}]	#к частоте F:1789 подбирается одна из бинауральных частот [4.4, 6] случайным образом [пока не реализовано]
				},
				...
			]
		},
		{
			NAME: "Healing sound 7",
			DESC: "desc 7",
			DWELL: 180,
			FREQS: [366,380]
		}
	]
}

################# Если на первом уровне ORDER:"JOIN", а на более нижнем втором ORDER:"SERIES",
################# то мы получаем музыкальное произведение, где две подпрограммы ("track1" и "track2") - это две звуковые дорожки [пока не реализовано]
################# При этом, параметр TEMPO для всех звуков имеет строго определённую заданную длительность,
################# а значению параметра можно присвоить название ноты, например F:"a3" (Ля третьей октавы); F:0 - пауза.
################# Параметр QUOTA при этом имеет значение длительности ноты в такте

{
	NAME: "Gamma",
	DWELL: 120,
	ORDER: "JOIN",
	TEMPO: 0.25,
	PROGS: [
		{
		 NAME: "track1",
		 ORDER: "SERIES",
		 FREQS: [{F:0},		"c3",		"d3",		"e3",		"f3",		"g3",		"a3",		"b3",		"c4"]	#дорожка основной мелодии
		},
		{
		 NAME: "track2",
		 ORDER: "SERIES",
		 FREQS: [{F:"c1", Q:4},							{F:"f1", Q:2},			{F:"e1", Q:2},			"c2"]	#дорожка басовой партии
		}
	]
}

################# В мелодию можно добавить биорезонансные частоты. [пока не реализовано]
################# Например, низкие частоты БРТ можно добавить в виде бинауральных ритмов (BEAT) или AM модуляции (AM)

{
	NAME: "Gamma",
	DWELL: 120,
	ORDER: "SERIES",
	TEMPO: 0.7,
	FREQS: [{F:"c3", B:5}, {F:"d3", B:5}, {F:"e3", B:5}, "f3", {F:"g3", B:7}, {F:"a3", AM:7}, {F:"b3", AM:7}, "c4"]
}

################# TEMPO, FM, AM, BEAT, VOLUME, PROC, NAME, AUTHOR - наследуются от прямых родителей (от родителей более высокого уровня наследования нет)
################# Если TEMPO, VOLUME - строка (не число), то - не наследуется от родителей. В этом случае подстройка принадлежит только конкретному звуку.

{
	NAME: "Example",
	DWELL: 120,
	B: 3.8,
	TEMPO: 0.7,
	FREQS: [150, {F:160, B:5}, {F:160, T:3}, 550]
}

# эквивалентно:

{
	NAME: "Example",
	DWELL: 120,
	TEMPO: 0.7,
	FREQS: [{F:150, B:3.8, T:0.7}, {F:160, B:5, T:0.7}, {F:160, B:3.8, T:3}, {F:550, B:3.8, T:0.7}]
}

################# Применение BEAT, FM, AM в качестве массива. [пока не реализовано]
################# В следующем примере, при звучании частоты F:1160, к ней подбирается одна из бинауральных частот из списка [3.3, 5, 7] случайным образом

{
	NAME: "Example 21",
	DWELL: 120,
	FREQS: [150, {F:1160, B:[3.3,5,7]}, {F:560, [3,7.7,12]}, 550]
}

# или - с помощью прямого родителя. В следующем примере, AM одинаково относится ко всем частотам в FREQS

{
	NAME: "Example 22",
	DWELL: 120,
	AM: [3,7.7,12],
	TEMPO: 0.7,
	FREQS: [440, 679, 399, 5234]
}

################# Шумы. Для них создан специальный массив NOISES. В примере он располагается на верхнем уровне, т.к. такой шум сопровождает всю Программу.
################# Значения NOISE (N): white, pink, brown

{
	NAME: "Example 23",
	DWELL: 120,
	TEMPO: 0.7,
	FREQS: [440, 679, 399, 5234],
	NOISES: [{N:"white", V:0.1}, {N:"pink", AM:0.1, V:0.2}]	#различные шумовые эффекты: N:white - создаёт общий фон, N:pink - шум моря (амплитудная модуляция с частотой 0.1 Гц)
}

{
	NAME: "Example 24",
	DWELL: 120,
	TEMPO: 0.7,
	FREQS: [440, 679, 399, 5234],
	NOISES: [{N:"white", V:0.3, AM:0.1, B:0.01}]	#шум моря (AM 0.1 Гц) перемещается между стерео каналами с частотой 0.01 Гц (B:0.01)
}

################# По умолчанию, шумы из массива NOISES звучат последовательно (ORDER: "SERIES").
################# Если требуется определённая последовательность, то NOISES располагают в подпрограмме PROGS [пока не реализовано]

{
	NAME: "Example 25",
	DWELL: 120,
	TEMPO: 0.7,
	FREQS: [440, 679, 399, 5234],
	PROGS: [
		{
		 ORDER: "SERIES",
		 NOISES: [{N:"white", V:0.1}, {N:"pink", AM:0.1, V:0.2}]	#здесь, сначала звучит шум N:white, затем - шум N:pink; их длительность распределяется равномерно по длине Программы
		}
	]
}

{
	NAME: "Example 26",
	DWELL: 120,
	TEMPO: 0.7,
	FREQS: [440, 679, 399, 5234],
	PROGS: [
		{
		 ORDER: "SERIES",
		 NOISES: [{N:"white", V:0.1, Q:2}, {N:"pink", AM:0.1, V:0.2, Q:1}]	#длительность N:white в два раза больше, чем N:pink
		}
	]
}

################# В массиве NOISES параметры также наследуются от прямых родителей, кроме TEMPO.
################# В частотной модуляции (FM) и в параметре PROC, при генерации шума, нет никакого смысла, поэтому здесь они не применяется.

Для простоты восприятия, имена параметров здесь представлены без кавычек, но в реальных данных кавычки должны быть обязательно, согласно спецификации формата «JSON».