Компенсатор и способ компенсации потери кадров звукового сигнала в области модифицированного дискретного косинусного преобразования
Иллюстрации
Показать всеПредлагается способ компенсации потери кадров звукового сигнала в области MDCT, включающий: шаг а, на котором, когда текущий потерянный кадр является Р-ым кадром, получают набор предсказываемых частот, для каждой частоты в этом наборе используют фазы и амплитуды множества кадров перед (Р-1)-ым кадром в области MDCT-MDST для предсказания фазы и амплитуды Р-го кадра и используют предсказанную фазу и амплитуду для получения коэффициентов MDCT Р-го кадра, соответствующих каждой частоте; шаг b, на котором для частот вне набора предсказываемых частот используют коэффициенты MDCT множества кадров перед Р-ым кадром для вычисления значений коэффициентов MDCT Р-го кадра на этих частотах; шаг с, на котором выполняют обратное модифицированное дискретное косинусное преобразование (IMDCT) для коэффициентов MDCT Р-го кадра на всех частотах для получения сигнала во временной области для Р-го кадра. Предлагается также компенсатор потери кадров. Изобретение имеет преимущества отсутствия задержки, малого объема вычислений, малого объема пространства памяти и простоты реализации. Технический результат - увеличение эффективности компенсации потери кадров звукового сигнала. 2 н. и 22 з.п. ф-лы, 8 ил.
Реферат
Область техники
Изобретение относится к области декодирования звуковых сигналов и, в частности, к компенсатору и способу компенсации потери кадров звукового сигнала в области модифицированного дискретного косинусного преобразования (Modified Discrete Cosine Transform, MDCT), с низкой сложностью и без временных задержек.
Уровень техники
В сетевых коммуникациях широко применяется технология пакетной передачи. По сети передается различная информация, такая как речь, звуковые сигналы или другие данные, после кодирования с использованием технологии пакетной передачи, такой как голосовая связь по протоколу Интернета (Voice over Internet Protocol, VoIP) и т.п. Потеря информации кадра речи и звукового сигнала в результате ограничения пропускной способности передающего конца и в результате того, что кадр информации пакета не приходит в буферную зону приемного конца в пределах назначенного времени задержки, или в результате перегрузки сети и т.п., вызывает быстрое ухудшение качества синтезированной речи и звуковых сигналов на декодирующем конце, поэтому на декодирующем конце необходимо использовать технологии для компенсации потери данных кадра. Компенсатор потери кадров представляет технологию, которая уменьшает ухудшение качества речевых и звуковых сигналов вследствие потери кадров. В настоящее время имеется много технологий для компенсации потери кадров, но большинство из них предназначены для компенсации потери кадров речи, и только немногие соответствующие технологии пригодны для компенсации потери кадров звукового сигнала.
Самым простым из известных способов компенсации потери кадров звукового сигнала является способ повторения сигнала MDCT последнего кадра или замена заглушением. Хотя способ прост в реализации и не имеет задержек, результат компенсации средний. Другие способы компенсации, такие как технология оценки фазы и амплитуды данных с пропусками (Gapped Data Amplitude and Phase Estimation, GAPES), преобразовывают коэффициент MDCT в коэффициент оконного дискретного преобразования Фурье (Discrete Short-Time Fourier Transform, DSTFT). Но эти способы характеризуются высокой сложностью и требуют большие объемы памяти. Организация Проекта сотрудничества по созданию системы третьего поколения (Third Generation Partnership Project, 3GPP) предложила осуществлять компенсацию потери кадров звукового сигнала с помощью технологии внесения шума с формированем спектра, которая дает хороший результат компенсации для шумоподобного сигнала, но худший результат компенсации для звукового сигнала с множеством гармоник.
В общем, большинство известных технологий компенсации потери кадров звукового сигнала не дают явных результатов или имеют высокую сложность вычисления и чрезмерно большое время задержки.
Сущность изобретения
Техническая задача, решаемая в настоящем изобретении, заключается в предоставлении компенсатора и способа компенсации потери кадров звукового сигнала в области MDCT, при этом предлагаемое изобретение обеспечивает хорошие результаты компенсации, низкую вычислительную сложность и отсутствие задержки.
Для решения указанной выше задачи предлагается способ компенсации потери кадров звукового сигнала в области модифицированного дискретного косинусного преобразования, включающий:
шаг а, на котором, когда текущий потерянный кадр является Р-ым кадром, получают набор предсказываемых частот, для каждой частоты в наборе предсказываемых частот используют фазы и амплитуды множества кадров перед (Р-1)-ым кадром в области модифицированного дискретного косинусного преобразования - модифицированного дискретного синусного преобразования (MDCT-MDST) для предсказания фазы и амплитуды Р-го кадра в области MDCT-MDST и используют предсказанную фазу и амплитуду Р-го кадра в области MDCT-MDST для получения коэффициента MDCT Р-го кадра на каждой частоте, при этом (Р-1)-й кадр предшествует Р-му кадру;
шаг b, на котором для любой частоты в кадре вне набора предсказываемых частот используют коэффициенты MDCT множества кадров перед Р-ым кадром для вычисления коэффициента MDCT Р-го кадра на этой частоте;
шаг с, на котором выполняют обратное модифицированное дискретное косинусное преобразование (IMDCT) для коэффициентов MDCT Р-го кадра на всех частотах для получения сигнала во временной области для Р-го кадра.
Упомянутый способ может характеризоваться тем, что он также включает перед шагом а, при обнаружении того, что текущий кадр потерян, определение типа текущего потерянного кадра и выполнение шага а, если текущий потерянный кадр является кадром с множеством гармоник.
Упомянутый способ может характеризоваться тем, что шаг определения типа текущего потерянного кадра включает:
вычисление равномерности спектра каждого из K кадров перед текущим потерянным кадром; если число кадров, равномерность спектра которых меньше порогового значения, является меньшим или равным K0 в K кадрах, то текущий потерянный кадр является кадром без множества гармоник; если число кадров, равномерность спектра которых меньше порогового значения, больше K0, то текущий потерянный кадр является кадром с множеством гармоник, при этом K0≤K, где K0, K - натуральные числа.
Упомянутый способ может характеризоваться тем, что при получении набора предсказываемых частот на шаге а используют комплексные сигналы в области MDCT-MDST и/или коэффициенты MDCT множества кадров перед Р-ым кадром для получения набора Sc предсказываемых частот или непосредственно помещают все частоты в кадре в набор SC предсказываемых частот.
Упомянутый способ может характеризоваться тем, что шаг использования комплексных сигналов в области MDCT-MDST и/или коэффициентов MDCT множества кадров перед Р-ым кадром для получения набора SC предсказываемых частот включает:
назначение упомянутого множества кадров перед Р-ым кадром как L1 кадров, вычисление мощности каждой частоты в L1 кадрах, получение L1 наборов S1,…,SL1, включающих частоты с пиковыми значениями в каждом кадре из L1 кадров, при этом число частот в каждом наборе составляет N1,…,NL1, соответственно;
выбор набора Si из L1 наборов S1,…,SL1, для каждой частоты mj, j=1…Ni, с пиковым значением в наборе Si, определение, имеется ли частота, принадлежащая одновременно всем другим наборам частот с пиковыми значениями среди частот mj, mj±1,…,mj±k,
если да, помещение всех частот mj, mj±1,…,mj±k в набор SC частот;
если нет частоты, принадлежащей одновременно всем другим наборам частот с пиковыми значениями, то помещение всех частот в кадре в набор SC частот,
где k - неотрицательное целое число.
Упомянутый способ может характеризоваться тем, что упомянутая частота с пиковым значением относится к частоте, мощность которой больше мощности двух соседних с ней частот.
Упомянутый способ может характеризоваться тем, что если L1 кадров включают (Р-1)-й кадр, то мощность каждой частоты в (Р-1)-ом кадре вычисляют следующим образом:
| ν ^ р − 1 ( m ) | 2 = [ c р − 1 ( m ) ] 2 + [ с р − 1 ( m + 1 ) − с р − 1 ( m − 1 ) ] 2 , где | ν ^ р − 1 ( m ) | 2 - мощность частоты т в (Р-1)-ом кадре, ср-1(m) - коэффициент MDCT частоты т в (Р-1)-ом кадре, ср-1(m+1) - коэффициент MDCT частоты m+1 в (Р-1)-ом кадре, cp-1(m-1) - коэффициент MDCT частоты m-1 в (Р-1)-ом кадре.
Упомянутый способ может характеризоваться тем, что шаг предсказания фазы и амплитуды Р-го кадра в области MDCT-MDST на шаге а включает: использование для каждой предсказываемой частоты фаз L2 кадров перед (Р-1)-ым кадром на упомянутой частоте в области MDCT-MDST для выполнения линейной экстраполяции или линейной аппроксимации для получения фазы Р-го кадра на упомянутой частоте в области MDCT-MDST и
получение амплитуды Р-го кадра на упомянутой частоте в области MDCT-MDST согласно амплитуде одного из L2 кадров на упомянутой частоте в области MDCT-MDST, при этом L2>1.
Упомянутый способ может характеризоваться тем, что, когда L2=2, используют t1-й кадр и t2-й кадр для представления двух кадров, соответственно, и предсказывают фазу Р-го кадра в области MDCT-MDST согласно следующей формуле:
ϕ ^ p ( m ) = ϕ t 1 ( m ) + p − t 1 t 1 − t 2 [ ϕ t 1 ( m ) − ϕ t 2 ( m ) ] ,
где ϕ ^ р ( m ) - предсказанное значение фазы Р-го кадра в области MDCT-MDST на частоте m, φt1(m) - фаза t1-го кадра на частоте т в области MDCT-MDST и φt2(m) - фаза f2-го кадра на частоте m в области MDCT-MDST.
Упомянутый способ может характеризоваться тем, что, когда L2>2, для каждой предсказываемой частоты выполняют линейную аппроксимацию фаз L2 кадров перед (Р-1)-ым кадром на упомянутой частоте в области MDCT-MDST для получения фазы Р-го кадра на упомянутой частоте в области MDCT-MDST.
Упомянутый способ может характеризоваться тем, что на шаге а получают набор предсказываемых частот путем использования комплексных сигналов в области MDCT-MDST для (Р-2)-го кадра и (Р-3)-го кадра и коэффициента MDCT (Р-1)-го кадра и для каждой частоты в наборе SC частот предсказывают фазу и амплитуду Р-го кадра в области MDCT-MDST путем использования фаз и амплитуд (Р-2)-го кадра и (Р-3)-го кадра в области MDCT-MDST.
Упомянутый способ может характеризоваться тем, что на шаге b в качестве коэффициента MDCT Р-го кадра используют половину коэффициента MDCT (Р-1)-го кадра.
Предлагается также компенсатор потери кадров звукового сигнала в области модифицированного дискретного косинусного преобразования, содержащий модуль компенсации потери кадров с множеством гармоник, второй модуль компенсации и модуль IMDCT, в котором
модуль компенсации потери кадров с множеством гармоник сконфигурирован так, чтобы, когда текущий потерянный кадр является Р-ым кадром, получать набор предсказываемых частот и для каждой частоты в наборе предсказываемых частот использовать фазы и амплитуды множества кадров перед (Р-1)-ым кадром в области MDCT-MDST для предсказания фазы и амплитуды Р-го кадра в области MDCT-MDST, использовать предсказанную фазу и амплитуду Р-го кадра в области MDCT-MDST для получения коэффициента MDCT Р-го кадра на каждой упомянутой частоте и передавать коэффициент MDCT во второй модуль компенсации, при этом (Р-1)-й кадр предшествует Р-му кадру;
второй модуль компенсации сконфигурирован так, чтобы для любой частоты вне набора предсказываемых частот в кадре использовать коэффициенты MDCT множества кадров перед Р-ым кадром для вычисления коэффициента MDCT Р-го кадра на упомянутой частоте и передавать коэффициенты MDCT Р-го кадра на всех частотах в модуль IMDCT;
модуль IMDCT сконфигурирован так, чтобы выполнять преобразование IMDCT для коэффициентов MDCT Р-го кадра на всех частотах для получения сигнала во временной области для Р-го кадра.
Упомянутый компенсатор потери кадров может характеризоваться тем, что он также включает модуль определения типа кадра, который сконфигурирован так, чтобы при обнаружении потери кадра определять тип текущего потерянного кадра и подавать команду модулю компенсации потери кадров с множеством гармоник на выполнение компенсации, если текущий потерянный кадр является кадром с множеством гармоник.
Упомянутый компенсатор потери кадров может характеризоваться тем, что модуль определения типа кадра сконфигурирован для определения типа текущего потерянного кадра путем вычисления равномерности спектра каждого кадра из K кадров перед текущим потерянным кадром; при этом если число кадров, равномерность спектра которых меньше порогового значения, меньше K0 в K кадрах, то текущий потерянный кадр является кадром без множества гармоник; а если число кадров, равномерность спектра которых меньше порогового значения, больше K0, то текущий потерянный кадр является кадром с множеством гармоник, при этом K0≤K, где K0, K - натуральные числа.
Упомянутый компенсатор потери кадров может характеризоваться тем, что модуль компенсации потери кадров с множеством гармоник содержит блок генерации набора частот, при этом модуль компенсации потери кадров с множеством гармоник сконфигурирован так, чтобы посредством блока генерации набора частот использовать комплексные сигналы в области MDCT-MDST и/или коэффициенты MDCT множества кадров перед Р-ым кадром для получения набора SC предсказываемых частот или непосредственно помещать все частоты в кадре в набор SC предсказываемых частот.
Упомянутый компенсатор потери кадров может характеризоваться тем, что блок генерации набора частот сконфигурирован для использования комплексных сигналов в области MDCT-MDST и/или коэффициентов MDCT множества кадров перед Р-ым кадром для получения набора SC предсказываемых частот путем
назначения множества кадров перед Р-ым кадром как L1 кадров, вычисления мощности каждой частоты в L1 кадрах, получения L1 наборов S1,…,SL1, включающих частоты с пиковыми значениями в каждом кадре из L1 кадров, при этом число соответствующих частот в каждом наборе составляет N1,…,NL1, соответственно;
выбора набора Si из L1 наборов S1,…SL1, для каждой частоты mj, j=1…Ni с пиковым значением в наборе Si, определения, имеется ли частота, принадлежащая одновременно всем другим наборам частот с пиковыми значениями среди частот mj, mj±1,…,mj±k, если да, помещения всех частот mj, mj±1,…,mj±k в набор SC частот;
если нет частоты, принадлежащей одновременно всем другим наборам частот с пиковыми значениями для каждой частоты mj, j=1…Ni с пиковым значением в наборе Si, помещения всех частот в кадре в набор SC частот, где k - неотрицательное целое число.
Упомянутый компенсатор потери кадров может характеризоваться тем, что частота с пиковым значением относится к частоте, мощность которой больше мощности двух соседних с ней частот.
Упомянутый компенсатор потери кадров может характеризоваться тем, что блок генерации набора частот сконфигурирован так, чтобы, когда L1 кадров включают (Р-1)-й кадр, вычислять мощность каждой частоты в (Р-1)-ом кадре следующим образом:
| ν ^ р − 1 ( m ) | 2 = [ с р − 1 ( m ) ] 2 + [ с р − 1 ( m + 1 ) − с р − 1 ( m − 1 ) ] 2 , где | ν ^ р − 1 ( m ) | 2 - мощность частоты m в (Р-1)-ом кадре, ср-1(m) - коэффициент MDCT частоты m в (Р-1)-ом кадре, cp-1(m+1) - коэффициент MDCT частоты m+1 в (Р-1)-ом кадре, cp-1(m-1) - коэффициент MDCT частоты m-1 в (Р-1)-ом кадре.
Упомянутый компенсатор потери кадров может характеризоваться тем, что модуль компенсации потери кадров с множеством гармоник также содержит блок генерации коэффициентов, при этом модуль компенсации потери кадров с множеством гармоник сконфигурирован так, чтобы посредством блока генерации коэффициентов использовать фазы и амплитуды L2 кадров перед (Р-1)-ым кадром в области MDCT-MDST для предсказания фазы и амплитуды каждой частоты, принадлежащей набору предсказываемых частот в Р-ом кадре, использовать предсказанную фазу и амплитуду Р-го кадра для получения коэффициента MDCT Р-го кадра, соответствующего каждой частоте, и передавать коэффициент MDCT во второй модуль компенсации, при этом L2>1;
блок генерации коэффициентов содержит субблок предсказания фазы и субблок предсказания амплитуды, причем
субблок предсказания фазы сконфигурирован так, чтобы для предсказываемой частоты использовать фазы L2 кадров на упомянутой частоте в области MDCT-MDST для выполнения линейной экстраполяции или линейной аппроксимации для получения фазы Р-го кадра на упомянутой частоте в области MDCT-MDST,
субблок предсказания амплитуды сконфигурирован так, чтобы получать амплитуду Р-го кадра на упомянутой частоте в области MDCT-MDST из амплитуды одного из L2 кадров на упомянутой частоте в области MDCT-MDST.
Упомянутый компенсатор потери кадров может характеризоваться тем, что субблок предсказания фазы сконфигурирован так, чтобы, когда L2=2, предсказывать фазу Р-го кадра в области MDCT-MDST согласно следующей формуле:
ϕ ^ p ( m ) = ϕ t 1 ( m ) + p − t 1 t 1 − t 2 [ ϕ t 1 ( m ) − ϕ t 2 ( m ) ] ,
где t1-й кадр и t2-й кадр представляют два кадра перед (Р-1)-ым кадром, ϕ ^ р ( m ) - предсказываемое значение фазы Р-го кадра на частоте m в области MDCT-MDST, φt1(m) - фаза t1-го кадра на частоте т в области MDCT-MDST и φt2(m) - фаза f2-го кадра на частоте m в области MDCT-MDST.
Упомянутый компенсатор потери кадров может характеризоваться тем, что субблок предсказания фазы сконфигурирован так, чтобы, когда L2>2, предсказывать фазу Р-го кадра в области MDCT-MDST путем выполнения для предсказываемой частоты линейной аппроксимации фаз выбранных L2 кадров на упомянутой частоте в области MDCT-MDST для получения фазы Р-го кадра на упомянутой частоте в области MDCT-MDST.
Упомянутый компенсатор потери кадров может характеризоваться тем, что модуль компенсации потери кадров с множеством гармоник сконфигурирован так, чтобы использовать комплексные сигналы в области MDCT-MDST для (Р-2)-го кадра и (Р-3)-го кадра и коэффициенты MDCT (Р-1)-го кадра для получения набора предсказываемых частот и использовать фазы и амплитуды (Р-2)-го кадра и (Р-3)-го кадра в области MDCT-MDST для предсказания фазы и амплитуды Р-го кадра в области MDCT-MDST для каждой частоты в наборе частот.
Упомянутый компенсатор потери кадров может характеризоваться тем, что второй модуль компенсации сконфигурирован так, чтобы использовать половину значения коэффициента MDCT (Р-1)-го кадра в качестве значения коэффициента MDCT Р-го кадра на частоте вне набора предсказываемых частот.
Посредством предлагаемых в настоящем изобретении компенсатора и способа компенсации потери кадров звукового сигнала в области MDCT для случая без множества гармоник коэффициент MDCT текущего потерянного кадра получают путем использования значений коэффициента MDCT множества кадров перед текущим потерянным кадром, а для случая с множеством гармоник коэффициент MDCT текущего потерянного кадра получают с помощью характеристики текущего потерянного кадра в области MDCT-MDST. По сравнению с известным уровнем техники изобретение имеет преимущества отсутствия задержки, малого объема вычисления, малого объема пространства памяти, простой реализации и т.д.
Краткое описание чертежей
На фиг.1 показана схема последовательности кадров, используемая в настоящем изобретении.
На фиг.2 показана блок-схема способа компенсации потери кадров звукового сигнала в области MDCT согласно настоящему изобретению.
На фиг.3 показана блок-схема для определения кадра с множеством гармоник/кадра без множества гармоник согласно настоящему изобретению.
На фиг.4 показана блок-схема способа компенсации потери кадров с множеством гармоник согласно настоящему изобретению.
На фиг.5 показана блок-схема способа вычисления коэффициента MDCT для компенсации потери кадров с множеством гармоник согласно примеру 1 изобретения.
На фиг.6 показана структурная схема компенсатора потери кадров звукового сигнала в области MDCT согласно настоящему изобретению.
На фиг.7 показана структурная схема компенсатора потери кадров звукового сигнала в области MDCT в другом примере изобретения.
На фиг.8 показана структурная схема компенсатора потери кадров звукового сигнала в области MDCT в еще одном примере изобретения.
Предпочтительные формы осуществления изобретения
Основная идея изобретения состоит в следующем: предсказывают фазу и амплитуду в области MDCT-MDST для текущего потерянного кадра с помощью использования линейности фазы гармонического сигнала в области MDCT-MDST и информации множества кадров перед текущим потерянным кадром и таким образом получают коэффициент MDCT для текущего потерянного кадра, согласно которому затем получают сигнал во временной области для текущего потерянного кадра.
Предлагается способ компенсации потери кадров звукового сигнала в области MDCT, показанный на фиг.2 и включающий:
Шаг S1, на котором, при обнаружении того, что пакет данных текущего кадра потерян, на декодирующем конце обозначают текущий кадр как текущий потерянный кадр, определяют тип текущего потерянного кадра и осуществляют переход к шагу S2, если текущий потерянный кадр является кадром без множества гармоник, или, в противном случае, переход к шагу S3;
при этом операция определения типа текущего потерянного кадра, которую выполняют согласно коэффициентам MDCT К кадров перед текущим потерянным кадром, как показано на фиг.3, включает:
1а) вычисление равномерности спектра каждого кадра из К кадров перед текущим потерянным кадром и определение того, что кадр состоит главным образом из множества гармоник и является кадром стационарного сигнала с множеством гармоник, если равномерность спектра меньше заранее заданного порога;
1b) если число кадров стационарного сигнала с множеством гармоник в К кадрах меньше или равно K0 кадрам, считают, что текущий потерянный кадр является кадром без множества гармоник, или, в противном случае, текущий потерянный кадр является кадром с множеством гармоник (таким как музыкальный кадр), при этом K0≤K, где K0 и K - заранее заданные значения.
Изобретение не ограничено использованием показанного на фиг.3 способа определения типа текущего потерянного кадра, и для определения также могут использоваться другие способы, например, без ограничения этим, коэффициент перехода через ноль (zero-pass ratio).
Шаг S2. Если определяют, что текущий потерянный кадр является кадром без множества гармоник, то используют значения коэффициентов MDCT множества кадров перед текущим потерянным кадром для вычисления значения коэффициентов MDCT текущего потерянного кадра для каждой частоты в кадре, затем осуществляют переход к шагу S4.
Например, в качестве значения коэффициента MDCT текущего потерянного кадра используют половину или другие отношения значения коэффициента MDCT кадра, непосредственно предшествующего текущему потерянному кадру.
Шаг S3. Если определяют, что текущий потерянный кадр является кадром с множеством гармоник, то посредством оценки получают значение коэффициента МОСТ текущего потерянного кадра с использованием алгоритма компенсации потери кадров с множеством гармоник без задержки, который показан на фиг.4 и, в частности, включает:
3а) когда потерян Р-й кадр, то есть текущий потерянный кадр является Р-ым кадром, взятие L1 кадров перед Р-ым кадром.
Если L1 кадров включают (Р-1)-й кадр, используют алгоритм быстрого модифицированного дискретного синусного преобразования (Fast Modified Discrete Sine Transform, FMDST) для получения коэффициентов MDST L1-1 кадров из L1 кадров за исключением (Р-1)-го кадра согласно коэффициентам MDCT, полученным посредством декодирования кадров перед текущим потерянным кадром. Для каждого кадра в L1-1 кадрах комплексный сигнал в области MDCT-MDST каждого кадра включает коэффициент MDST и коэффициент MDCT кадра, где коэффициент MDCT - параметр вещественной части, а коэффициент MDST - параметр мнимой части.
Если L1 кадров не содержат (Р-1)-й кадр, используют алгоритм FMDST для получения коэффициентов MDST L1 кадров согласно коэффициентам MDCT, полученным посредством декодирования кадров перед текущим потерянным кадром. Для каждого кадра в L1 кадрах комплексный сигнал в области MDCT-MDST каждого кадра включает коэффициент MDST и коэффициент MDCT кадра, где коэффициент MDCT - параметр вещественной части, а коэффициент MDST - параметр мнимой части.
При этом способ вычисления коэффициента MDST включает:
выполнение обратного преобразования MDCT для получения сигнала во временной области для (Р-2)-го кадра согласно коэффициентам MDCT (Р-1)-го кадра и (Р-2)-го кадра и выполнение обратного преобразования MDCT для получения сигнала во временной области для (Р-3)-го кадра согласно коэффициентам MDCT (Р-2)-го кадра и (Р-3)-го кадра и т.д.;
использование алгоритма FMDST для получения коэффициента MDST (Р-2)-го кадра согласно сигналам во временной области для (Р-2)-го кадра и (Р-3)-го кадра и использование алгоритма FMDST для получения коэффициента MDST (Р-3)-го кадра согласно сигналам во временной области для (Р-3)-го кадра и (Р-4)-го кадра и т.д.
Последовательность Р-го кадра, (Р-1)-го кадра и других кадров показана на фиг.1.
3b) Нахождение набора частот с пиковыми значениями для каждого кадра в упомянутых L1 кадрах.
Если L1 кадров содержат (Р-1)-й кадр, то
для (Р-1)-го кадра вычисляют мощность каждой частоты в (Р-1)-ом кадре согласно коэффициенту MDCT (Р-1)-го кадра и получают набор, включающий множество предыдущих частот, имеющих самую большую мощность;
для каждого другого кадра, кроме (Р-1)-го кадра, вычисляют мощность каждой частоты в кадре согласно комплексному сигналу кадра в области MDCT-MDST и получают набор, включающий множество предыдущих частот, имеющих самую большую мощность; при этом частота с пиковым значением относится к частоте, мощность сигнала на которой больше мощности сигнала на двух соседних с ней частотах.
Если L1 кадров не содержат (Р-1)-й кадр, то
для каждого кадра в L1 кадрах набор, включающий множество предыдущих частот, имеющих самые большие значения мощности, получают согласно комплексному сигналу кадра в области MDCT-MDST,
при этом число частот в L1 наборах может быть одинаковым или различным.
Наборы L1 также могут быть получены другими способами, например, для каждого кадра берут набор, включающий частоты с пиковыми значениями, мощности которых больше установленного порога, при этом порог для каждого кадра может быть одинаковым или различным.
3с) Если L1>1, и L1 наборов частот обозначены как S1,…,SL1, и число соответствующих частот в наборах составляет N1,…,NL1, выбирают набор Si и для каждой частоты mj (j=1…Ni) с пиковыми значениями в наборе Si определяют, принадлежит ли какая-либо частота среди частот mj, mj±1,…,mj±K (K - неотрицательное целое число, обычно K=0 или 1) одновременно всем другим наборам частот с пиковыми значениями, если да, помещают все частоты mj, mj±1,…,mj±k в набор SC частот.
Если среди частот mj, mj±1,…mj±К для каждой частоты mj (j=1…Ni) с пиковым значением в наборе Si нет частоты, принадлежащей одновременно всем другим наборам частот с пиковыми значениями, все частоты в кадре непосредственно помещают в набор SC частот.
Если L1=1, и набор частот обозначен как S1, а соответствующее число частот равно N1, для каждой частоты mi (i=1…N1) с пиковым значением в наборе S1 частот с пиковыми значениями все частоты mi, mi±1,…mi±K (K - неотрицательное целое число, которое обычно выбирается как K=0 или 1) помещают в набор SC частот.
Вышеупомянутые разделы шагов 3а, 3b и 3с также можно не выполнять и непосредственно помещать все частоты в кадре в набор SC частот.
3d) Берут L2 (L2>1) кадров перед (Р-1)-ым кадром, вычисляют и получают комплексные сигналы L2 кадров в области MDCT-MDST (кокретный способ вычисления такой же, как на шаге 3а). Для каждой частоты в наборе SC частот получают фазу текущего потерянного кадра в области MDCT-MDST, используя фазы L2 кадров в области MDCT-MDST, и получают амплитуду текущего потерянного кадра в области MDCT-MDST, используя амплитуды L2 кадров в области MDCT-MDST, и затем получают коэффициент MDCT текущего потерянного кадра, соответствующий каждой частоте, согласно фазе и амплитуде текущего потерянного кадра.
Если L2=2, то для всех частот в наборе SC частот используют фазы двух выбранных кадров на каждой предсказываемой частоте, чтобы выполнить линейную экстраполяцию для получения фазы комплексного сигнала в области MDCT-MDST для текущего потерянного кадра на этой частоте; получают амплитуду комплексного сигнала в области MDCT-MDST для текущего потерянного кадра на упомянутой частоте из амплитуды в области MDCT-MDST одного из двух кадров на этой частоте, то есть используют амплитуду в области MDCT-MDST одного из двух кадров на данной частоте в качестве амплитуды в области MDCT-MDST для текущего потерянного кадра на этой частоте.
Один из способов линейной экстраполяции заключается в следующем.
Если L2=2, f1-и кадр и t2-й кадр используют для представления двух кадров, соответственно, фазу Р-го кадра в области MDCT-MDST предсказывают для предсказываемой частоты т следующим образом: ϕ ^ p ( m ) = ϕ t 1 ( m ) + p − t 1 t 1 − t 2 [ ϕ t 1 ( m ) − ϕ t 2 ( m ) ] , где ϕ ^ р ( m ) - предсказываемое значение фазы Р-го кадра в области MDCT-MDST на частоте m, φt1(m) - фаза t1-го кадра в области MDCT-MDST на частоте m и φt2(m) - фаза t2-го кадра в области MDCT-MDST на частоте m.
Если L2>2, то для всех частот в наборе SC используют фазы в области MDCT-MDST для L2 кадров на каждой предсказываемой частоте, чтобы выполнить линейную аппроксимацию для получения фазы комплексного сигнала в области MDCT-MDST для текущего потерянного кадра на упомянутой частоте; получают амплитуду комплексного сигнала в области MDCT-MDST текущего потерянного кадра на упомянутой частоте из амплитуды в области MDCT-MDST одного из двух кадров на этой частоте, то есть используют амплитуду в области MDCT-MDST одного из двух кадров на упомянутой частоте в качестве амплитуды в области MDCT-MDST текущего потерянного кадра на этой частоте.
3е) Для частоты вне набора SC частот вычисляют значения коэффициентов MDCT Р-го кадра, используя значения коэффициентов MDCT множества кадров перед Р-ым кадром. Например, в качестве значения коэффициента MDCT текущего потерянного кадра используют половину значения коэффициента MDCT кадра, непосредственно предшествующего текущему потерянному кадру.
В другом примере изобретения на шаге S3 или перед шагом 3а выполняют шаг использования значений коэффициентов MDCT множества кадров перед текущим потерянным кадром, чтобы вычислить значение коэффициента MDCT текущего потерянного кадра для каждой частоты в кадре, и затем выполняют шаги 3а, 3b, 3с и 3d, а шаг 3е пропускают для перехода к шагу S4.
Могут быть выполнены и другие изменения, например, шаг 3е может быть выполнен после шага 3с и перед шагом S4, то есть только после того, как получен набор SC частот.
Шаг S4. Выполняют преобразование IMDCT (обратное преобразование MDCT) для коэффициентов MDCT текущего потерянного кадра на всех частотах, чтобы получить сигнал во временной области для текущего потерянного кадра.
Приведенный пример может быть изменен следующим образом: сначала выполняют начальную компенсацию, то есть вычисляют значение коэффициента MDCT Р-го кадра, используя значения коэффициентов MDCT множества кадров перед Р-ым кадром, затем определяют тип текущего потерянного кадра и выполняют различные шаги согласно типу текущего потерянного кадра; непосредственно выполняют шаг S4, если кадр является кадром без множества гармоник, а если кадр является кадром с множеством гармоник, выполняют на шаге S3 шаги 3а, 3b, 3с и 3d и тогда пропускают шаг 3е, чтобы непосредственно выполнить шаг S4.
Далее изобретение будет пояснено на двух конкретных примерах.
Пример 1
Шаг 110. При обнаружении потери пакета данных текущего кадра декодирующий конец определяет, является ли текущий кадр (то есть текущий потерянный кадр) кадром с множеством гармоник (например, музыкальный кадр, включающий различные гармоники), и выполняет шаг 120, если текущий кадр является кадром без множества гармоник, или, в противном случае, выполняет шаг 130.
Конкретный способ оценки включает
вычисление равномерности спектра 10 кадров перед текущим потерянным кадром, при этом, если равномерность спектра меньше 0,1, считают, что кадр является кадром стационарного сигнала с множеством гармоник; если более 8 кадров в 10 кадрах перед потерянным кадром являются кадрами стационарного сигнала с множеством гармоник, считают, что текущий потерянный кадр является кадром с множеством гармоник, в противном случае считают, что текущий потерянный кадр является кадром без множества гармоник. Способ вычисления равномерности спектра состоит в следующем:
равномерность спектра i-го кадра SFMi определяют как отношение среднего геометрического к среднему арифметическому амплитуды сигнала в области преобразования сигнала i-го кадра:
S F M i = G i A i , ( 1 )
где G i = ( ∏ m = 0 M − 1 | c i ( m ) | ) 1 M - среднее геометрическое амплитуды сигнала i-го кадра, A i = 1 M ∑ m = 0 M − 1 | c i ( m ) | - среднее арифметическое амплитуды сигнала i