Товары в корзине: 0 шт Оформить заказ
Стр. 1
 

85 страниц

608.00 ₽

Купить ГОСТ Р 53556.8-2013 — бумажный документ с голограммой и синими печатями. подробнее

Распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль"

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

Описывает схему параметрического кодирования для сжатия высококачественного аудио MPEG–4 audio. Краткое наименование - SSC (SinuSoidal Coding). При скоростях передачи приблизительно 24 Кбит/с стерео и на частоте дискретизации 44,1 кГц схема кодирования SSC предлагает качество, которое необходимо для многих приложений

 Скачать PDF

Оглавление

1 Область применения

2 Термины и определения

3 Символы и сокращения

     3.1 Арифметические операторы

     3.2 Операторы отношения

     3.3 Мнемоники

     3.4 Диапазоны

     3.5 Численное представление

     3.6 Определения

4 Полезные нагрузки для SSC аудио объектного типа

     4.1 Конфигурация декодера (SSCSpecificConfig)

     4.2 Полезная нагрузка потока битов SSC

5 Семантика

     5.1 SSCSpecificConfig

     5.2 Декодирование полезной нагрузки потока битов SSC

     5.3 Индексация подфреймов

6 Процесс декодирования

     6.1 Переходные процессы

     6.2 Синусоиды

     6.3 Шум

     6.4 Параметрическое стерео

     6.5 Ситуации запуска/остановки для декодирования

Приложение А (обязательное) Комбинация инструмента SBR с параметрическим инструментом стерео

Приложение Б (обязательное) Нормативные таблицы

Приложение В (справочное) Темп и подача, масштабируемые в декодере

Библиография

 
Дата введения01.09.2014
Добавлен в базу01.11.2014
Актуализация01.01.2019

Этот ГОСТ находится в:

Организации:

25.10.2013УтвержденФедеральное агентство по техническому регулированию и метрологии1212-ст
ИзданСтандартинформ2014 г.
РазработанФГУП ЛО ЦНИИС

Sound broadcasting digital. Coding of signals of sound broadcasting with reduction of redundancy for transfer on digital communication channels. A part III (MPEG-4 audio). Technical description of parametric coding for high quality audio

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30

ГОСТ Р

53556.8—

2013

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

НАЦИОНАЛЬНЫМ

СТАНДАРТ

РОССИЙСКОЙ

ФЕДЕРАЦИИ

Звуковое вещание цифровое

КОДИРОВАНИЕ СИГНАЛОВ ЗВУКОВОГО ВЕЩАНИЯ С СОКРАЩЕНИЕМ ИЗБЫТОЧНОСТИ ДЛЯ ПЕРЕДАЧИ ПО ЦИФРОВЫМ КАНАЛАМ СВЯЗИ.

ЧАСТЬ III (MPEG-4 AUDIO)

Параметрическое кодирование высококачественных звуковых сигналов

(SSC)

ISO/IEC 14496-3:2009 (NEQ)

Издание официальное

Стандартинформ

2014

Предисловие

1    РАЗРАБОТАН Санкт-Петербургским филиалом Центрального научно-исследовательского института связи «Ленинградское отделение» (ФГУП ЛО ЦНИИС)

2    ВНЕСЕН Техническим комитетом по стандартизации ТК480 «Связь»

3    УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 25 октября 2013 г. № 1212-ст

4    Настоящий стандарт разработан с учетом основных нормативных положений международного стандарта ИСО/МЭК 14496-3:2009 «Информационные технологии. Кодирование аудиовизуальных объектов. Часть 3. Аудио» (ISO/IEC 14496-3:2009 «Information technology — Coding of audio-visual objects — Part 3: Audio») [1]

5    ВВЕДЕН ВПЕРВЫЕ

Правила применения настоящего стандарта установлены в ГОСТР 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе «Национальные стандарты», а официальный текст изменений и поправок— в ежемесячном информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя «Национальные стандарты». Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования—на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (gost.ru)

©Стандартинформ,2014

Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Федерального агентства по техническому регулированию и метрологии

II

Таблица 8 — Синтаксис subframe_noise()

Синтаксис

Количество битов

Мнемоника

subframe noise (sf, ch)

{

if ((refresh noise == 1) && (sf== 0)) {

njaguerrefch]

2

uimsbf

n_laguerre_granularity[sf][ch] for (i = 0; i < n nrof den; I++)

{

n_lar_den_coarse[sf][ch][i] =

1

uimsbf

1 ..18

bslbf

ssc_huff_dec(huff_nlag,bs_codeword); if (n laguerre granularity[sf][ch]==1)

{

n lar den fine[sf][ch][i]

}

2

simsbf

}

n_gain[sf][ch]

7

uimsbf

n_lsf[sf][ch][0] = ssc_huff_dec(huff_nls(bs_codeword); for (i = 1; i < n nrof Isf; /++)

{

n_delta_lsf[sf][ch][i] =

2..9

bslbf

2..9

bslbf

ssc huff dec(huff nlsfbs codeword); }

}

else {

if (mod(sf,2) = = 0)

{

n_laguerre_granularity[sf][ch]

1

uimsbf

for (i = 0; i < n nrof den; /++)

{

n_ delta_lar_ den_ coarse[sf][ch][i] =

1 ..18

bslbf

ssc_huff_dec(huff_niag,bs_codeword); if(n laguerre granularity[sf][ch]==1)

{

n delta lar den fine[sf][ch][i]

}

}

}

if (mod(s(4) == 0)

{

n_delta_gain[sf][ch] =

2

simsbf

1 ..12

bslbf

ssc_huff_dec(huff_ngain,bs_codeword);

if (n overlap Isf == 1)

{

for (i = n nrof overlap Isf; i < n nrof Isf; /++) {

n_delta_lsf[sf][ch][i] =

1

uimsbf

2..9

bslbf

ssc huff dec(huff nlsfbs codeword);

}

}

else {

n_lsf[sf][ch][0] =

2..9

bslbf

ssc_huff_dec(huff_nlsf,bs_codeword);

}uo * & = цэ! syq uinu

jqsiujn

8

junoo OSQ =+ }UO

(qi == }UO) a

jqsuim

P

az/s uo/sua}xa sd = }uo

} (}хэ~эщвиэ)j!

{

{

()в}вр OOj

jqsuim

I

[Э]}Р~001

} (оо/ aiqeua) jj

} (++э / лиэ~шпи>э o=s) JOj

{

{

()B}BP PH

jqsuim

I

[9]}P PH } (pa aiqeua) jj

} (++э лиэ~шпи>э 0=9) JOj

{

jqsuim

S

{

[ajuojfjsod japjoq

} (++э / лиэ~шпи>э 0=9) JOj.

} (sseio~aLuejj) jj

[xprAua~Lunu][sseio~aLuejj]qef~Aua~Lunu = лиэ~шпи

jqsuim

3

хрГлиэ~шпи

jqsuim

1-

sse/o aujejj {

}xa aiqeua {

[эрош oojjqe} jed оо/ ju = jed оо/ ju

jqsuim

1-

jqsuim

8

эрош~ээj

jqsuim

1-

} (эоГэщеиэ) ji {

[эрош puJqe} jed pdopdj ju

= jed~pdopdj~ju

[эpoш~p!!]qe}~Jed~p!ГJU = jed~pn~ju

jqsuim

£

эрош~ри

jqsuim

1-

} (pn~aiqeua) jj

jqsuim

1-

} (japeaq~sd~aiqeua) ji

}

Oejep sd

ВМИН01Л1ЭН1Л1

going оаюэьиио»

ЭИЭХВ1НИ0

Qe)ep sd ohombihhq — 6 e h и и g e i

msq

6"3

{

{

{

{

{

'.(риомэроо sqjs/u jjnq)oap jjnq oss = [!][4o][js]jsre}iap~u

}

(++! !jsi jo ju и > I ‘.j = j) JOj

ВХИН01Л1ЭН1Л1

going оаюэьиио»

ОИОХВ1НИ0

8 /чРпидеш эпненнохо

£ ЮЗ—8 99999 dlOOJ

(H

{

{

{

8 U"" U

:(рюмароо sq ‘ftuenb рц];р рц цпц)оэр цпц ass = [q][a]jp-jecTp!!

} (++q ‘.JBd~p!!~Ju>q ! o=q) Jo;

} as/e

{

{

!(раомэроо sq

02"'1-

‘[)UBnb~pii]}p~p!rynq)oap~jjnq~oss = [q][a])p~JBd~pn } (++q !jBd~pn~JU>q ! Q=q) jo;

} (M}P~PH) i! ()в;вр~рц

ВМИН01Л1ЭН1Л1

ао±ид оаюэьииох

ЭИЭЯВ1НИО

()е;вр рц оиоявхнио — U в h и lt g в i

{

{

Z =- mi syq tunu

jqsuim

I

sd~paAiasaj

{

{

Z + sfjq~pdo + sfiq pdi =- mi S)!Q шпи

()B}ep~pdo

jqsuim

I

[a]}p~pdo

()B}ep~pd!

jqsuim

I

[a];p~pdi } (++э ! лиэ~шпи>э : o=a) jo;

jqsuim

I

} (pdopdra/qBua) ;i

} (o == pruoisua)xa~sd) ;i

}

(цэi syq шпи ‘pi uojsuafxa sd)uoisuafxa sd

ВХИН01Л1ЭН1Л1

aoing оаюэьиио»

ЭИЭМВ1НИ0

Quojsuafxa sd оиэмвхниэ — 01- в h и и g в j_

jqsuim

yai S)iq шпи

z

{

{

S)iq III;

{

(mi siiq wnu ‘pruoisuaixa sd)uojsua;xa sd

z =- тГЩ!Р~шпи pi~uoisua;xa~sd } (L < mi~sm~шпи) энцм

ВХИН01Л1ЭН^

aoing оаюэьшго»

ЭИЭХВ1НИ0

б /яЬпидвш апнвинохо

еюг—8-9ssesdiooj

и

idisq

9"4

{

{

{

‘.(рюмэроо sq'ip pdo jjnq)oap ynq oss = [q]MlP~JBd~pdo } (++q ‘.jbd pdopdf ju>q ! o=q) joj

} as/a {

idisq

9"4

{

‘.(рюмэроо sq‘;p pdo jjnq)oap ynq oss = [q][o])p~JBd~pdo } (++q UBd pdopdf ju>q ! o=q) joj

} (M)P~pdo) a

}

Oejep pdo

ВНИН01Л18Н|^

going оа±оэьиио>|

ОИО>1В1НИО

()в}вр pdo oho>ibihhq — pi e h и и g e i

{

{

{

idisq

VI

‘.(рюмэроо sq‘jp pdj jjnq)oap jjnq oss = [q][a]jp jsd pdi } (++q !jbd~pdopdj~JU>q ! о=q) Щ

} as/a {

{

iqm

S"4

‘.(роомэроо sq ‘}p~pdrjjnq)oap~jjr>q~oss = [q][a]jp~JBd~pdj

} (++q :jbcTpdopdi~Ju>q ‘ Q=q) joj

} (M)P~pdi) м

}

Oejep pd!

ВЯИН01Л1ЭН1Л1

going oaio8hnuo>|

ОИО>1В1НИО

Qejep pdt oho>ibihhq — gj, в h и lt g в i

{

{

{

wisq

9ГЧ

!(рюмэроо sq‘ip ooi ynq)oap ynq oss = [q][a]jp jbcTooj

} (++q ‘jbcTooi~ju>q ! Q=q) joj } as/a {

{

jqisq

П"Ч

‘.(рюмэроо sq‘)p ooj МпЧ)Р Un4 oss = [q][a])p JBd ooi

} (++q !jed~ooj~Ju>q ! o=q) joj } ([a]ip~ooi) а

}

Oejep oo/

ВМИН01Л1ЭН|Л|

going oaio8hnuo>|

ЭИЭЯВ1НИ0

Oejep ooi оиомв1ниэ — zi в h и и g в x

9 WZ—899999 dlOOJ

5 Семантика

5.1 SSCSpecificConfig

decoderjevel— пределы сложности для настроек декодера. Декодер, который поддерживает определенный уровень сложности, не в состоянии декодировать поток битов, который кодируется согласно более высокому уровню сложности. Этот декодер в состоянии декодировать поток битов, который кодируется согласно более низкому уровню сложности (таблица 15).

Таблица 15 — Уровень декодера

decoder level

Уровень

max_nrof_sin

max nrof den

Число битов для

Число битов

СЛОЖНОСТИ

usoids

s_nrof_continuation

для n_nrof_lsf

00

Зарезервировано

Na

Na

Na

Na

01

Носитель

60

24

6

4

10

Зарезервировано

Na

Na

Na

Na

11

Зарезервировано

Na

Na

Na

Na

maxnrofsinusoids— максимальное количество синусоид, которое допускается. maxnrofden — максимальное значение для njnrof_den. update_rate — четыре бита, указывающие размер подфрейма S.

Таблица 16 показывает соотношение между update_rate и размером подфрейма S в выборках.

Таблица 16 — Уровень обновления

update_rate

S

update_rate

S

0000

Зарезервировано

1000

Зарезервировано

0001

Зарезервировано

1001

Зарезервировано

0010

Зарезервировано

1010

Зарезервировано

0011

Зарезервировано

1011

Зарезервировано

0100

384

1100

Зарезервировано

0101

Зарезервировано

1101

Зарезервировано

0110

Зарезервировано

1110

Зарезервировано

0111

Зарезервировано

1111

Зарезервировано

synthesis method—два бита, предоставляющие информацию о предпочтительном синтезе для специально закодированной программы (таблица 17).

Таблица 17 — Метод синтеза

Synthesis_method

Оптимальный синтез

00

Наложение и добавление

01

Зарезервировано

10

Зарезервировано

11

Зарезервировано

ГОСТ P 53556.8—2013

modeext— в сочетании с channelConfiguration биты modeextобеспечивают полную конфигурацию канала. Число битов зависит от channelConfiguration (таблица 18).

Таблица 18 — Конфигурация канала

channelConfiguration

Количество битов для mode_ext

nrof_channels

1

0

1

2

2

Согласно mode_ext

0, 3 ... 15

Na

Na

Для channelConfiguration -- 2, применяется таблица 19:

Таблица 19 — Конфигурация канала в случае, если channelConfiguration== 2

mode_ext

Полная конфигурация канала

nrof_channels

00

Двойной моно (ch0=left, ch/\=righf)

2

01

Параметрическое Стерео

1

10

Зарезервировано

Na

11

Зарезервировано

Na

Зарезервировано — два зарезервированных бита; должно быть установлено в %0.

5.2 Декодирование полезной нагрузки потока битов SSC

ssc_audio_frame () — синтаксический элемент, который содержит единственный фрейм SSC ssc audio frame header () — синтаксический элемент, который содержит данные заголовка для единственного фрейма SSC

ssc audio frame data () — синтаксический элемент, который содержит данные для единственного фрейма SSC

ssc huff dec () — процедура декодирования Хаффмана.

refresh sinusoids — один бит, указывающий, как кодируются синусоидальные продолжения первого подфрейма во фрейме. Если этот бит равняется %0, данные продолжающейся дорожки дифференцированно кодируются относительно последнего подфрейма предыдущего фрейма. Если этот бит равняется %1, данные продолжающейся дорожки в первом подфрейме фрейма кодируются как абсолютные значения.

refresh sinusoids next frame — один бит, обеспечивающий дополнительный предпросмотр фрейма для декодирования ADPCM синусоидальных параметров. Если этот бит устанавливается в %1, следующий фрейм является фреймом обновления. В этом случае бит refresh_sinusoids должен быть установлен в %1 в следующем фрейме. Если этот бит устанавливается в %0, следующий фрейм не является фреймом обновления.

refresh noise — один бит, указывающий, как кодируются шумовые параметры первого подфрейма во фрейме. Если этот бит равняется %0, шумовые параметры дифференцированно кодируются относительно последнего подфрейма предыдущего фрейма. Если этот бит равняется %1, шумовые параметры в первом подфрейме фрейма кодируются как абсолютные значения.

s nrof continuations [sf] [ch] — для подфрейма sf и канала ch, это значение представляет число продолжений. В случае sf== 0 значение s_nrof_continuations обеспечивается в потоке битов. Для остальных значений sf значение s nrof continuations получается неявно. Число битов, требуемых для s nrof continuations [0][ch], зависит от максимального количества разрешенных синусоид, которое зависит от сложности декодера, указанной в decoderlevel.

n_nrof_den — число коэффициентов LAR знаменателя фильтра FIR для генерации шума. n nrof lsf—число коэффициентов LSF, используемых для генерации огибающей для генерации шума. Число битов, требующихся для n nrof lsf, зависит от сложности декодера, указанной decoder level.

13

freg granularity— гранулярность дифференцированно или абсолютно кодированных частотных параметров, используемых в subframesinusoids (). Этот параметр определяет число битов, которые будут считаны из тонкоструктурной части параметров частоты.

ampgranularity— гранулярность дифференцированно или абсолютно кодированных амплитудных параметров, используемых в subframe sinusoids (). Этот параметр определяет таблицу Хаффмана, которая будет использоваться, или число битов, которые будут считаны из тонкоструктурной части амплитудных параметров.

phaseJitter_present—один бит, чтобы указать на присутствие параметров дрожания фазы. Если этот бит равняется %0, никакого дрожания фазы нет. Если этот бит равняется %1, дрожание фазы присутствует.

phase Jitter_percentage — это двухбитовое целое число без знака, указывающее процент расстояния. Полное расстояние равняется половине шага квантования. Максимальное дрожание, применяемое к частотным компонентам

max jilb, _ 2fmn "га"||,я*-1 Phase Jitter percentage+'\

phaseJitterband — два бита, указывающие уровень представления частоты, из которого должно быть применено дрожание фазы, таблица 20.

Таблица 20 — Полоса дрожания фазы, выраженная в уровнях представления

phaseJitterband

Уровень представления частоты fjitter min

00

0

01

800

10

1600

11

2400

nrof_subframes — число подфреймов в одном фрейме. Это значение фиксируется в 8. ssc_mono_subframe () — синтаксический элемент, который содержит данные для одного подфрейма

SSC.

ps data () — синтаксический элемент, который содержит параметрические данные стерео. subframe_transients () — синтаксический элемент, который содержит переходные данные для одного подфрейма SSC.

subframe_sinusoids () — синтаксический элемент, который содержит данные синусоид для одного подфрейма SSC.

subframe_noise () — синтаксический элемент, который содержит данные о шуме для одного подфрейма SSC.

t_transient_present [sf][ch] — один бит, указывающий, присутствует ли переходное состояние в подфрейме sf, канала ch. Если ttransientjpresent [sf] [ch] -- %1, переходное состояние присутствует. Если ttransientpresent [sf] [ch] == %0, переходное состояние отсутствует.

tloc [sf] [ch]—указание расположения переходного состояния в подфрейме sf канала ch, выраженное в числе выборок от начала подфрейма. Допустимый диапазон для t_loc равен [0, S>. Число битов, которое используется, чтобы представить t_loc, вычисляется согласно Гlog2 (Sjl, где S представляет размер подфрейма в выборках.

ttype [sf] [ch]—два бита для указания типа переходного состояния в подфрейме sf канала ch (таблица 21).

Таблица 21 — Типы переходного состояния

ttype

Тип

00

Шаг

01

Мейкснера (Meixner)

10

Зарезервировано

11

Зарезервировано

ГОСТ P 53556.8—2013

t_b_par[sf][ch]—для переходного состояния типа Мейкснера в подфрейме sf канала ch, эти 3 бита содержат значение для атаки огибающей перехода, обозначенное как 'Ь-параметр'. Допустимые значения для t_bj)ar [0, 1,2, 3]. Остальные значения резервируются. Значение Ь вычисляется как Ь = t_b_раг + 2.

t_chi_par [sf] [ch]—для переходного состояния типа Мейкснера в подфрейме sf канала ch, эти 3 бита хранят значение для спада огибающей переходного состояния, обозначенное как - параметр'. Допустимые значения для t_chi_par равны [0,1,2,3]. Остающиеся значения резервируются. Значения £ сведены в таблицу 22.

Таблица 22 — Квантованные значения для b и £

1

t_b_par

0

1

2

3

tchipar

0

0,9688

0,9685

0,9683

0,9681

1

0,9763

0,9756

0,9750

0,9744

2

0,9839

0,9827

0,9817

0,9807

3

0,9914

0,9898

0,9884

0,9870

tjnrofsin [sf] [ch]—для переходного состояния типа Мейкснера в подфрейме sf канала ch, эти 3 бита представляют число синусоид, которые присутствуют под огибающей. Число синусоид под огибающей Мейкснера равно значению в потоке плюс один.

t freq [sf] [ch] [i] — для переходного состояния типа Мейкснера в подфрейме sf канала ch эти биты представляют частоту в радианах /-ой синусоиды под огибающей переходного состояния.

т

,r)t_freq[sf][sf][ch][i] . 2%    11,4 ■ 21,4

fs    0,00437

где tfq представляет деквантизованную абсолютную частоту в радианах.

t_amp [sf] [ch] [i] — для переходного состояния типа Мейкснера в подфрейме sf канала ch эти биты представляют амплитуду /'-ой синусоиды под огибающей перехода.

taq[i]=talt-amplaf]lch]ll],

где tab представляет логарифмическую базу квантования, tab= 1885,1. tab представляет деквантован-ную абсолютную амплитуду.

t_phi [sf] [ch] [i] — для переходного состояния типа Мейкснера в подфрейме sf канала ch эти биты представляют фазу /'-ой синусоиды под огибающей переходного состояния. Декодированное значение преобразовывается в значение фазы в радианах в диапазоне [-я, п> и определяется для начала переходного состояния.

tpq[i] = 2 ■ tpe ■ t_phi[sf][nh][i],

где fpe представляет абсолютную ошибку фазы [tpe =    ,    и    tpq    представляет деквантизованную

абсолютную фазу (в радианах). Допустимый диапазон для t_phi равен [-16,15].

пос — локальная переменная, которая считает число продолжений в предыдущем подфрейме. tmp_cont[ch][пос]—локальный массив, который содержит копию э_сол/-параметров предыдущего подфрейма, необходимую для того, чтобы правильно проанализировать поток (извлечь число продолжений и отслеживать сколько подфреймов должна продолжаться синусоидальная дорожка в текущем фрейме).

s_cont [sf] [ch] [п] — для подфрейма sf и канала ch, эта величина указывает, сколько компонент подфреймов п будет продолжаться в текущем фрейме (если компонент будет продолжаться также в следующем фрейме к числу подкадров, которые он продолжается в текущем фрейме, должна быть добавлена единица. Если значение равно 0, это указывает на прекращение компонента п в подкадре sf, что называют смертью). Допустимый диапазон для s_cont составляет [0, 9].

15

sfreqcoarse [sf] [ch] [n] — для подфрейма sfn канала ch это значение представляет грубый параметр частоты л-ой синусоиды.

s freq fine [sf] [ch] [п] — для подфрейма sf и канала ch это целое число со знаком представляет более высокий уровень детализации дополнительно к грубому параметру частоты. Число битов, которые будут считаны достигает (3 - freq granularity). Уровень представления частоты fr, является суммой грубой частоты, точной частоты, масштабируемой по сетке гранулярности.

fri[n] = s freq coarse [sf] [ch] [n] + sjreqjtne [sf] [ch] [n] ■ 2freq-granu,arity.

Дрожание фазы применяется только в комбинации с масштабированием шага и темпа. Если phasejitterjpresent -- %1 и fr/ > fyffermin параметр дрожания фазы будет

fjitter\_max_jitier-(2x - 1) + 0,5j,

Ш 91,2 • 21,4


10


fs


fq[n] =


0,00437


где х содержит случайное число, равномерно распределенное между 0 и 1, сгенерированное для каждого параметра частоты в подфрейме, соответствуя вышеуказанным требованиям. Декодируемое значение преобразовывается в деквантованное абсолютное значение частоты fq в радианах, используя следующее уравнение:

s amp coarse [sf][ch][п]—для подфрейма sf и канала ch это значение представляет грубый амплитудный параметр л-ой синусоиды.

sampfme [sf][ch][п] — для подфрейма sfn канала ch этот параметр представляет более высокий уровень детализации дополнительно к грубому амплитудному параметру. Число битов, которые будут считаны, насчитывает до (3 - amp granularity). Уровень представления амплитуды sar! является суммой грубой амплитуды, точной амплитуды, масштабируемой по сетке гранулярности

sar/[n] = s amp coarse [sf] [ch] [n] + s amp fme [sf] [ch] [n] ■ 2amp-granularity.

Декодируемое значение преобразовывается в деквантованное линейное значение амплитуды saq в диапазоне [1,215-1 ] в соответствии с

saq[n] = sa2bsarlln],

где sab = 1,0218 является базой логарифмического квантования. Его значение соответствует максимальной ошибке 0,1875 дБ.

s_phi [sf] [ch] [п] — для подфрейма sf и канала ch это представляет фазовый параметр л-ой синусоиды. Это значение преобразовывается в значение фазы в радианах в диапазоне [-л, к > в соответствии с

spq[n] = 2-spe-s_phi[sf] [ch] [п],

где spe представляет ошибку абсолютной фазы yspe =    ,    a    spq представляет деквантизованную

абсолютную фазу (в радианах). Допустимый диапазон для s phi равен [-16,15].

s_adpcm_grid [sf] [ch] [п] — для подфрейма sf и канала ch это значение представляет начальный индекс в таблице 35 как использующийся в декодере ADPCM для л-ой синусоиды. Эта таблица используется, чтобы декодировать информацию о синусоидах.

s_delta_cont_freq_pha [sf][ch][n]—для подфрейма sfn канала ch это значение представляет уровни представления для л-ой синусоиды, которые служат вводом в декодер ADPCM. Чтобы компенсировать эту задержку декодера на 2 подфрейма, уровни представления передаются заранее на 2 подфрейма. В синтаксисе потока битов будущие уровни представления обозначаются индексами sf+1 и sf+2, указывающими уровни представления двух последующих подфреймов, соответственно. В случае, если sf+1 или sf+2 превышает nrof_subframes, уровень представления присваивается следующему фрейму. В этом случае новое число подфреймов в следующем фрейме будет (sf+1) - rtrofsubframes или (sf+2) - nrof_subframes соответственно.

ГОСТ P 53556.8—2013


sdeitacontjamp [sf][ch][n]—для подфрейма sf и канала ch это представляет дифференциальный амплитудный параметр л-ой синусоиды. Это значение преобразовывается в линейное амплитудное значение в диапазоне [1,215-1] в соответствии с

sarl[n] - sariiPSf + s_delta_cont_amp [sf] [ch] [n] ,

где sar/ представляет уровень представления амплитуды, a sarl psf представляет уровень представления амплитуды в предыдущем подфрейме. Для деквантизации sari в saq смотрите s_amp_fine. В случае, если амплитудная гранулярность, amp^granularity текущего фрейма отличается от гранулярности предыдущего фрейма, перед применением дифференциально кодированных значений гранулярность значения предыдущего фрейма преобразовывается в гранулярность текущего фрейма согласно


Sarl,psf


2втр _granularity


sa rl,psf 2 amp _granularity


+


0,5 ,


где sa'ripSf представляет уровень представления амплитуды предыдущего подфрейма, и amp_granula-rity представляет гранулярность текущего подфрейма.

s_nrof_births [sf] [ch] — для подфрейма sf и канала ch это значение представляет число рождений. Позволенный диапазон [0, max_nrof_sinusoids-s_nrof continuations [sf][ch]].

s_delta_birth_freq_coarse [sf] [ch] [n] — для подфрейма sf и канала ch это значение представляет дифференциальный, грубый параметр частоты л-ой синусоиды.

s_delta_birth_freq_fine [sf] [ch] [п]— для подфрейма sf и канала ch это представляет более высокий уровень детализации в сравнении с грубым дифференциальным параметром частоты. Число битов, которые будут считаны, равно (3 - freq_granularity). Уровень представления дельта-частоты dfriбудет

dfrj = s_delta_birth_freq_coarse [sf] [ch] [n] + s_delta_birth_freq_fine [sf] [ch] [n] ■ 2freq-9ranularity.

Декодированное значение л-ой синусоиды преобразовывается в значение частоты в герцах, используя уровень представления частоты предыдущего рождения frl подкадра sf ((л-1 )-ая синусоида)

Ш = friln-П + dfrl[n],

где frt представляет уровень представления частоты. Модификация fr/ из-за дрожания фазы использует те же самые правила, как установленные под sfreqfine. О деквантизации fr/ в fq смотрите также sfreqfine.

s_delta_birth_amp_coarse [sf][ch][n]—для подфрейма sfn канала ch это представляет дифференциальный, грубый амплитудный параметр л-ой синусоиды.

s_delta_birth_amp_fine [sf][ch][п]—для подфрейма sfn канала ch это представляет более высокий уровень детализации грубого амплитудного параметра. Число битов, которые будут считаны, составляет (3 - ampgranuiarity). Уровень дельта-представления амплитуды sdaH

sdari [л] = s delta birth amp coarse [sf] [ch] [п] + sdeltabirthampfine [sf] [ch] [n] ■ 2amp-9ranu,anty.

Декодированное значение для л-ой синусоиды преобразовывается в линейное амплитудное значение, используя уровень представления амплитуды предыдущего рождения sari ((л-1 )-ая синусоида):

sarl [л] = sar/ [п-1] + sdri [л],

где sar/ представляет уровень представления амплитуды.

n laguerre [ch]—X коэффициент фильтра Лагерра для синтеза шума, см. таблицу 23.


Таблица 23 — Возможные значения для X

nlaguerre

X

00

0

01

0,5

10

0,7

11

Зарезерви ровано


17


ГОСТ P 53556.8—2013

Содержание

1    Область применения....................................... 1

2    Термины и определения...................................... 2

3    Символы и сокращения...................................... 2

3.1    Арифметические операторы.................................. 2

3.2    Операторы отношения..................................... 2

3.3    Мнемоники.......................................... 2

3.4    Диапазоны.......................................... 3

3.5    Численное представление................................... 3

3.6    Определения......................................... 3

4    Полезные нагрузки для SSC аудио объектного типа........................ 3

4.1    Конфигурация декодера (SSCSpecificConfig)......................... 3

4.2    Полезная нагрузка потока битов SSC............................. 3

5    Семантика............................................ 12

5.1    SSCSpecificConfig....................................... 12

5.2    Декодирование полезной нагрузки потока битов SSC...................... 13

5.3    Индексация подфреймов................................... 23

6    Процесс декодирования..................................... 23

6.1    Переходные процессы..................................... 23

6.2    Синусоиды.......................................... 25

6.3    Шум.............................................. 29

6.4    Параметрическое стерео................................... 32

6.5    Ситуации запуска/остановки для декодирования........................ 46

Приложение А (обязательное) Комбинация инструмента SBR с параметрическим инструментом

стерео........................................ 47

Приложение Б (обязательное) Нормативные таблицы........................ 49

Приложение В (справочное) Темп и подача, масштабируемые в декодере.............. 79

Библиография............................................ 80

n_laguerre_granularity[sf][ch]— 1 бит, обозначающий точность квантования коэффициентов Лагерра. njardencoarse [sf] [ch] [i]—для подфрейма sf и канала ch это представляет номер коэффициента LAR знаменателя /.

njardenfine [sf][ch] [i]—для подфрейма sf и канала ch это представляет более высокий уровень детализации относительно грубого параметра коэффициента LAR знаменателя. Уровень представления nlarri является суммой грубого LAR знаменателя и точного LAR знаменателя:

nlarri [i] = njar den coarse [sf] [ch] [i] + njardenfine [sf] [ch] [i]

и преобразовывается в коэффициент LAR согласно:

nlarq [/] = nlarrl [I] * ДMR.

ngain [sf] [ch]—для подфрейма sf и канала ch это значение представляет коэффициент усиления. Уровень представления усиления ngainri получается как:

ngainr/ = n gain [sf] [ch]

n lsf[sf][ch][i]—для подфрейма sf и канала ch это значение представляет номер коэффициента LSFi. Разрешенный диапазон для л/sf составляет [0,255]. Параметры деквантизованного LSFnlsfq получают так:

nlsfq [i] = njsf [sf] [ch] [i] * я / 256 + я / 512.

n_deltajsf [sf] [ch] [i]—для подфрейма sf и канала ch это значение представляет номер дифференциального коэффициента LSFi. Они получаются, используя следующий алгоритм для / > 0:

nlsfq [/] = {nlsfq [И] + n_deltajsf [sf][ch] [}]) * к / 256 + к / 512.

n delta lar den coarse [sf] [ch][i]—для подфрейма sf и канала ch это представляет номер дифференциального коэффициента LAR знаменателя /.

ndeltalardenfine [sf] [ch] [i] — для подфрейма sf и канала ch это представляет более высокий уровень детализации для грубого параметра коэффициента LAR знаменателя. Уровень представления ndlarri является суммой дифференциального грубого LAR знаменателя и дифференциального точного LAR знаменателя:

ndlarri [/'] = n_deltaJar_den_coarse [sf] [ch] [i] + n delta lar den fine [sf] [ch] [i] и преобразовывается в коэффициент LAR согласно: nlarrj [/'] = nlar’ri psf [/] + ndlarri [/],

где nlarri [/] и nlarripsf[i] представляют уровень представления LAR текущего и предыдущего подфреймов, соответственно. В случае, когда n laguerre_granulahty изменяется от %1 до %0 проходя от подфрейма sf—1 к sf значение nlarri psf[i] сначала преобразовывается в наиболее грубую сетку квантования согласно:

rl, psf [/] = 4 * Ln/ar’r/ psf [/'] /4 + 0,5.1,

где nlar’rtpsf [/] представляет уровень представления LAR предыдущего подфрейма. ndeltagain [sf][ch]—для подфрейма sf и канала ch это значение представляет дифференцированный коэффициент усиления и преобразовывается в уровень представления ngainrt согласно:

ngainri = ngainrt p4sf + n delta gain [sf] [ch],

где ngainrip4sf представляет уровень представления усиления для подфрейма sf-4. n_ovedapJsf—один бит, указывающий, перекрываются ли коэффициенты LSF из предыдущего определения в канале ch.

enablejps header—один бит, указывающий, присутствует ли информация заголовка PS. Если установлен в %1, данные заголовка PS, конфигурирующие декодер PS, передаются. Иначе, сохраняется последняя конфигурация.

enableJid—один бит, обозначающий присутствие параметров IID. Если enable iidустанавливается в %1, параметры межканального различия интенсивности (//О) будут отправлены с этого момента в потоке битов. Если enable iid==%0, никакие параметры IID не будут отправлены с этого момента в потоке битов.

iid mode — конфигурация параметров IID (число полос и сетка квантования, iid quant) определяется iid_mode. Поддерживаются восемь различных конфигураций для параметров IID (таблица 24).

ГОСТ Р 53556.8-2013

НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

Звуковое вещание цифровое

КОДИРОВАНИЕ СИГНАЛОВ ЗВУКОВОГО ВЕЩАНИЯ С СОКРАЩЕНИЕМ ИЗБЫТОЧНОСТИ ДЛЯ ПЕРЕДАЧИ ПО ЦИФРОВЫМ КАНАЛАМ СВЯЗИ.

ЧАСТЬ III (MPEG-4 AUDIO)

Параметрическое кодирование высококачественных звуковых сигналов (SSC)

Sound broadcasting digital. Coding of signals of sound broadcasting with reduction of redundancy for transfer on digital communication channels. A part III (MPEG-4 audio).

Technical description of parametric coding for high quality audio

Дата введения — 2014—09—01

1 Область применения

Стандарт описывает схему параметрического кодирования для сжатия высококачественного аудио MPEG-4 audio. Краткое наименование — SSC (SinuSoidal Coding). При скоростях передачи приблизительно 24 Кбит/с стерео и на частоте дискретизации 44,1 кГц схема кодирования SSC предлагает качество, которое необходимо для многих приложений.

SSC использует четыре различных инструмента, которые вместе параметризуют аудиосигнал. Эти инструменты состоят из моделирования переходного процесса, моделирования синусоид, моделирования шума и моделирования образа стерео. Одна из отличительных особенностей SSC состоит в том, что оно оказывает поддержку декодера для независимого темпа и масштабирования шага при почти любой дополнительной сложности.

Инструмент переходного процесса

Инструмент переходного процесса захватывает чрезвычайно динамичные события входного аудиосигнала. Эти события эффективно моделируются посредством ограниченного количества синусоид, которые формируются посредством огибающей.

Инструмент синусоид речевого выхода для инструментов FA и для дублирования МР с информацией о форме губ.

Инструмент синусоид захватывает детерминированные события входного аудиосигнала. Природа медленного изменения синусоидальных компонентов для типичных аудиосигналов используется, соединяя синусоиды по последовательным фреймам. Посредством дифференциального кодирования могут быть эффективно представлены параметры частоты, амплитуды и фазы.

Шумовой инструмент

Шумовой инструмент захватывает стохастические или недетерминированные события входного аудиосигнала. В декодере в качестве возбуждения используется генератор белого шума. Чтобы управлять временными и спектральными свойствами шума в аудиосигнале применяется временная и спектральная огибающая.

Инструмент параметрического кодирования стерео

Инструмент параметрического кодирования стерео в состоянии захватывать стереообраз входного аудиосигнала в ограниченном количестве параметров, требуя только небольшого служебного сигнала в пределах от нескольких Кбит/с для среднего качества до приблизительно 9 Кбит/с для более высокого качества. Вместе с монофоническим смешиванием входного сигнала стерео, сгенерированного параметрическим инструментом кодирования стерео, инструмент параметрического декодирования стерео в состоянии регенерировать стереосигнал. Это—универсальный инструмент, который может работать в комбинации с любым монофоническим кодером. В Приложении А настоящего стандарта приводится нормативное описание комбинации НЕ—ААС с инструментом параметрического кодирования стерео. SSC также может работать в двойном режиме моно. В этом случае инструмент параметрического кодирования стерео не используется. Инструмент параметрического стерео предназначается для низких скоростей передачи.

Издание официальное

2    Термины и определения

2.1    фрейм: Основная единица, которая может декодироваться сама по себе (требуется информация заголовка файла для общих настроек декодера).

2.2    фильтр Лагерра: Структура фильтра, используемого в анализе шумов и синтезе.

2.3    аудио фрейм: Содержит все данные, чтобы декодировать SSC-кодированный фрейм как автономный модуль (требуется информация заголовка файла для общих настроек декодера). Для аудио фреймов с refresh_sinusoids = = %1 и refresh_noise = = %1 полный фрейм всегда может быть восстанавлен, иначе в случае произвольного доступа возможно, что части сигнала не могут быть восстановлены (например, синусоидальные продолжения, шум).

2.4    подфрейм: Мелкоструктурированность в пределах фрейма.

2.5    fs: Частота дискретизации в герцах.

2.6    сегмент: Интервал выборок, которые могут быть синтезированы на основе параметров, которые соответствуют подфрейму. Размер сегмента 2*S.

2.7    окно: Функция, которая используется, чтобы взвешивать синтезируемые выборки в пределах сегмента так, чтобы получить достоверный синтез.

2.8    LSF: Спектральная частота линии.

2.9    наложение и дробление: Аддитивный метод объединения перекрывающихся интервалов во время синтеза сигнала.

2.10    процесс связывания: Метод отслеживания синусоидальных компонент в течение продолжительного времени.

2.11    рождение: Первый компонент синусоидальной дорожки.

2.12    продолжение: Компонент синусоидальной дорожки, который находится не в начале или конце дорожки.

2.13    смерть: Последний компонент синусоидальной дорожки.

2.14    SMR: Отношение сигнала к маскировке.

2.15    частичный: Синусоида ограниченной продолжительности.

2.16    IID: Межканапьные различия в интенсивности.

2.17    IPD: Межканальная разность фаз.

2.18    OPD: Полная Разность фаз.

2.19    ICC: Межканальная когерентность.

3    Символы и сокращения

3.1 Арифметические операторы

LxJ Округление х к минус бесконечность Гх1 Округление х к плюс бесконечность.


Оператор модуля: mod(x,y)=x-


Определенный только для положительных значений


mod


хиу.


Г(а) Гамма функция распределения, определенная какГ(а) = je f х ta Adt

о

3.2    Операторы отношения

х? y:z Если х является истиной, тогда у, иначе z.

3.3    Мнемоники


Чтобы описать различные типы данных, используемые в кодированном потоке битов, определяются следующие мнемоники.

uimsbf Целое число без знака, старший значащий бит в начале. simsbf Целое число со знаком, старший значащий бит в начале. bslbf Левый бит потока битов в начале


2


ГОСТ P 53556.8—2013

3.4    Диапазоны

[0, 10]    Число в диапазоне от 0 до, и включая 10.

[0, 10>    Число в диапазоне от 0 до, но исключая 10.

3.5    Численное представление

%Х    Представление    двоичного числа (например, %01111100).

$Х    Представление    шестнадцатеричного    числа    (например,    7$С).

X    Числа    без    префикса    используют    представление    десятичного    числа    (например,    124).

3.6    Определения

S    Число    выборок    в подфрейме.

L    Число    выборок    в сегменте; L - 2*S.

numQMFSIots Число выборок поддиапазона QMF на элемент psdata (). Для SSC этот параметр фиксируется в 24.

4 Полезные нагрузки для SSC аудио объектного типа

4.1 Конфигурация декодера (SSCSpecificConfig)

Синтаксис SSCSpecificConfig () смотри таблицу 1.

Таблица 1 — Синтаксис SSCSpecificConfig ()

Синтаксис

Количество битов

Мнемоника

SSCSpecificConfig ( channelConfiguration ) {

decoder_level

2

uimsbf

update rate

4

uimsbf

synthesis_method if (channelConfiguration != 1)

{

mode_ext

if ((channelConfiguration == 2) && (mode ext == 1))

{

reserved

}

}

}

2

uimsbf

2

uimsbf

2

uimsbf

4.2 Полезная нагрузка потока битов SSC

Полезная нагрузка потока битов SSC приведена в таблицах 2—14.

Таблица 2 — Синтаксис sscaudioframe ()

Синтаксис

Количество битов

Мнемоника

ssc audio frame ()

{

ssc_audio_frame_header() ssc audio frame dataQ

}

Таблица 3 — Синтаксис ssc_audio_frame_header ()

Синтаксис

Количество битов

Мнемоника

ssc audio frame header ()

{

refresh_sinusoids

1

uimsbf

refresh_sinusoids_next_frame

1

uimsbf

refresh_noise

for (ch = 0; ch < nrof channels; ch++) {

s nrof continuations[0][ch]

}

n_nrof_den

1

uimsbf

Примечание

uimsbf

5

uimsbf

n_nrof_lsf

Примечание

uimsbf

freq_granularity

2

uimsbf

amp granularity

2

uimsbf

phasejitter_present if (phaseJitter present = = 1)

{

phasejitter_percentage

1

uimsbf

2

uimsbf

phasejitter band }

}

2

uimsbf

Примечание: См. описание snrofjcontinuations и n_nroflsf в 5.2.

Таблица 4 — Синтаксис ssc_audio_frame_data ()

Синтаксис

Количество битов

Мнемоника

ssc audio frame dataQ {

for (sf = 0; sf < nrof subframes; sf++) {

for (ch = 0; ch < nrof channels; ch++)

{

ssc_mono_subframe(sf,ch)

if ((channelConfiguration = = 2) && (mode_ext = = 1J && (mod(sM,4)= =0))

{

ps data()

}

}

}

}

Таблица 5 — Синтаксис ssc_mono_subframe ()

Синтаксис

Количество битов

Мнемоника

ssc mono subframe (sf,ch)

{

subframe_transients(sf, ch) subframe_sinusoids(sf, ch) subframe noise(sf, ch)

}

Таблица 6 — Синтаксис subframe_transients ()

Синтаксис

Количество битов

Мнемоника

subframe transients (sf, ch)

{

t_transient_present[sf][ch]

1

uimsbf

if (t transient_present[sf][ch] == 1) {

t_loc[sf][ch]

Примечание

uimsbf

if (t type[sf][ch]==1) {

t_b_par[sf][ch]

2

uimsbf

3

uimsbf

t_chi_par[sf][ch]

3

uimsbf

t_nrof_sin[sf][ch]

t_nrof_sin[sf][ch]++

for (i = 0; i < t nrof sin[sf][ch]; /'++)

{

t_freq[sf][ch][i]

3

uimsbf

9

uimsbf

t amp[sf][ch][i]

5

uimsbf

t phi[sf][ch][i]

}

}

}

}

5

simsbf

Примечание: См. описание tjoc в 5.2.

Таблица 7 — Синтаксис subframe sinusoidsQ

Синтаксис

Количество битов

Мнемоника

subframe sinusoids(sf, ch)

{

n = 0; p=0; q=0;

Г Continuations У if (sf > 0)

{

noc = 0;

while (tmp_cont[ch][noc] > 0) { noc++;} s nrof continuations[sf][ch] = noc;

}

if ((refresh sinusoids == 1) && (sf== 0))

{

for (i = 0; i < s nrof continuations[sf][ch]; i++, n++)

{

s_cont[sf][ch][n] = ssc_huff_dec(huff_scont,bs_codeword);

2..5

bslbf

s_freq_coarse[sf][ch][n] = ssc_huff_dec(huff_sfreqc,bs_codeword);

7..25

bslbf

s_freq_fine[sf][ch][n]

0..3

simsbf

s_amp_coarse[sf][ch][n] = ssc_huff_dec(huff_sampca,bs_codeword);

3..16

bslbf

s_amp_fine[sf][ch][n]

0..3

simsbf

s_phi[sf][ch][n]

if (s cont[sf][ch][n] > 0)

{

s_adpcm_grid[sf][ch][n] = ssc_huff_dec(huff_sgrid,bs_codeword);

5

simsbf

3..7

bslbf

s_delta_cont_freq_pha[sf+1 ][ch][p]

p++;

2

uimsbf

9

!++d

{

[d][qo][i.+js]eqd bay fuoo ej/ap s

}

jqsuijn

z

< js-sauuejjqns joju) || (o == auuejj jxau spiosnuis qsajjaj)) p

' }

(0 < [u][qo][jS])UOD s)p

jqsuiis

s

[u][qo][}s]jqd~s

jqsujis

£"0

[u][qo][js]au!j duie s

‘.(pjoMapoo~sq‘eqdwes~pnq)oap~pnq~oss

jqisq

Sl."£

= [u][qo][js]asjeoo~duie~s

jqsuj/s

£"0

[u][qo][}s]auij~bajj~s

Misq

1.Z'L

‘(pjoMapoo~sq‘eqbajjs~pnq)oap~jpiq~oss = [u][qo][js]asjeoo~bajj~s

JQIsq

S"3

‘.(pjoMapoo~sq‘iuoos~nnq)oap~ipiq~oss = [u][qa][)s];uoa~s

}

(0 < [qo][fs]sqpjq joju s) p

Misq

SI-"£

‘.(pjoMapoo~sq‘sqp!qiOJU~pnq)oap~unq~oss = [qo][}s]sqpjq~}OJU~s

л sqm j

{

{

:(pjOMapoa sq‘[A)ueinuejb duiB]joduiBS pnq)aap pnq ass

jq/sq

SI." 1.

= [u][qo][js]duje~)uoo~e)iap~s {

.‘++b

{

[b][qo][z+js]eqd bajj }uoo eyap s

}

((z

jqsujin

Z

< js-saujejjqns }oju) || (о == эшвц fxau spiosnuis qsajjaj)) p

}

(l < [u][qo]frs]}uoo s)p {

:++d

{

(0 < [u][qo]frs]}uoo s)p {

■I - [u][qo]}uoo dui} = [u][qo][js]}uoo s

} as/a {

‘.(pjowapoo sq'fuoos pnq)oap pnq oss = [u][qo][js]}uoo s

}

(0 ==js)p

}

(++u ‘++I ![qo][fs]suo!)Bnu!)uoo }oju s > i .‘o = j) joj

Misq

S'Z

} as/a {

{

{

.‘++b

jqsuijn

z

[b][qo][z+Js]Bqd~bajj^~;uoo~Byap~s

}

(l < [u][qo][}s]}uoo s)p {

ехиношэнуч

аохид оа±ээьиио>|

ОИО>Ш±НИЭ

I 1яРпидвш эпнэжио0ос1ц

е юг—899909 dlOOJ

Окончание таблицы 7

Синтаксис

Количество битов

Мнемоника

}

if (s_cont[sf][ch][n] > 1)

}

if ((refresh sinusoids next frame == 0) || (nrof subframes-sf > 2)) {

s_delta cont freq pha[sf+2][ch][q]

}

<?++;

}

n++;

2

uimsbf

for (i = 1; i < s nrof births[sf][ch]; /++, n++)

{

s_corrt[sf][ch][n] = ssc_huff_dec(huff_scont,bs_codeword);

2..5

bslbf

s_delta_birth_freq_coarse[sf][ch][n] =

5..23

bslbf

ssc_huff_dec(huff_sfreqbr,bs_codeword);

s_delta_birth_freq_fine[sf][ch][n]

0..3

simsbf

s_delta_birth_amp_coarse[sf][ch][n] =

2..21

bslbf

ssc_huff_dec(huff_sampbr,bs_codeword);

s_deita_birth_amp_fine[sf][ch][n]

0..3

simsbf

sj>hi[sf][ch][n]

if (s cont[sf][ch][n] > 0)

{

if ((refresh sinusoids next frame == 0) || (nrof subframes-sf > 1)) {

s_delta cont_freq_pha[sf+1 ][ch][p]

}

p++;

}

if (s_cont[sf][ch][n] > 1)

{

if ((refresh_sinusoids_next_frame == 0) || (nrof_subframes-sf > 2)) {

s delta cont freq pha[sf+2][ch][q]

}

q++;

5

simsbf

2

uimsbf

2

uimsbf

}

}

}

/* Keep track of sinusoids that continue in next sub-frame(s) */ for (i = 0, k= 0; i < n; /++)

{

if (s_cont[sfJ[ch][i] > 0)

{

tmp_cont[ch][k] = s_cont[sf][ch][i];

/C++;

}

}

}

Примечание — Переменные p, q используются в качестве индексов позиции для subframe+1 и

subframe+2, соответственно.