ГОСТ Р 53556.3—2012
for (j
=
0:j
< /;
j ++)
f
if (lsp_bws_currert[j]
+
min_gap >lsp_bws_current[j+1))
{
tmp
=
0.5
*
(lsp_bws_current[j] * lsp_bws_current[j*1]);
lsp_bws_current[j]
= /mp -
0.51
*
min_gap;
lsp_bws_current[j+1] - tmp * 0.51 ’min_gap;
}
}
}
где
PAI
= 3.141592 и
min_gap -
0.028.
Интерполяция параметров
LSP
Декодированные
LSPs
линейно интерполируются в каждом подфрейме.
for(n -0 ;п < nrof subframes_bws: п*+)
{
ratio_sub
=
(п+1}/nrof_subframos_bws:
for(i
=
0: i
<
2’lpc_order:
/■*•+>
{
lsp_bws_subframo[n][i}=((1-ratio_sub) *tsp_bws_previous[i]
+
ratio_sub’lsp_bws_current[i))):
}
}
for (i
=
0: i
<
2’lpc_order: i++)
{
lsp_bws_previous[i]
=
lsp_bws_subframe(nrof_subframes_bws-
Ш
}
Преобразование
LSPs
в коэффициенты
LPC
Интерполированные
LSPs
преобразуются в коэффициенты
LPC
в каждом подфрейме.
for(n - О:п< nrof_subframes_bws
, л++>
{
Convort2lpc (lpc_order_bws. Isp_bws_subframe[n),
&int_Olpc_coefficionts[n’lpc_order_bws]).
}
5.6.4 Управление скоростью в инструменте декодирования
LSP
5.6.4.1 Описание инструмента
Управление скоростью возможно с помощью инструмента декодирования
LSP.
Если используется
FRC.
во входные параметры включаются два дополнительных параметра
interpolationJ iад
и
LPC_present.
Процессдекодирования узкополосного
LSP
выполняется, если в текущем фрейме присутствуют
lpc_indices[]
(LPC_prosent = YES).
5.6.42 Определения
Вход
lpc_indices(]:
Размерность этого массива равна
num_lpc_indices
и содержит индексы
LPC.
intorpolation_flag:
Это однобитовый флажок. Когда он установлен, флажок указывает, что рассматри
ваемый фрейм является неполным фреймом, то есть фрейм не несет коэффициенты
LPC
текущего рече
вого фрейма, а только его параметры возбуждения (параметры адаптивной и фиксированной книги шиф
ров). Коэффициенты
LPC
для рассматриваемого речевого фрейма должны быть получены, используя
интерполяцию коэффициентов
LPC
смежных фреймов.
1коэффициенты
LPC
фрейма должны быть найдены интерполяцией
0 коэффициенты
LPC
фрейма не нужно интерполировать.
Для того чтобы поддержать хорошее субъективное качество, никогда недолжно быть более одного
фрейма подряд без информации
LPC
. то есть.
interpolation_flag
не может иметь значения 1вдвух последо
вательных
CetpFrames.
44