Усовершенствованная коррекция потери кадров во время декодирования сигналов

Иллюстрации

Показать все

Изобретение относится к области обработки цифровых сигналов. Технический результат – обеспечение коррекции потери кадров посредством использования спектральных компонент на последних достоверных кадрах. Способ обработки сигнала, содержащего последовательность отсчетов, распределенных в последовательных кадрах, реализуется во время декодирования указанного сигнала для замены по меньшей мере одного кадра сигнала, потерянного при декодировании; при этом способ содержит этапы, на которых: выполняют поиск в действительном сигнале, доступном для декодера, сегмента сигнала длиной, соответствующей периоду, установленному в зависимости от указанного действительного сигнала; выполняют анализ спектра сегмента для определения спектральных компонент сегмента; выполняют синтез по меньшей мере одного кадра замены для потерянного кадра посредством построения синтезированного сигнала по меньшей мере из части спектральных компонент, причем указанный синтезированный сигнал содержит множество указанных спектральных компонент. 3 н. и 13 з.п. ф-лы, 10 ил.

Реферат

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

Сигнал имеет форму последовательности отсчетов, разбитой на последовательные кадры, а «кадр» понимается как сегмент сигнала, составленный из нескольких отсчетов (реализация, где один кадр содержит единственный отсчет, возможна, если сигнал имеет форму последовательности отсчетов как, например, в кодеках согласно рекомендации ITU-T G.711).

Данное изобретение относится к области обработки цифровых сигналов, в частности, но не исключительно, к области кодирования/декодирования в звуковом сигнале. Потери кадров происходят, когда обмен данными (либо посредством передачи в реальном времени, либо посредством сохранения для последующей передачи) с использованием кодера и декодера нарушается условиями канала (например, из-за проблем радиосвязи, перегруженности сети доступа и т.д.).

В этом случае, декодер использует механизмы коррекции (или «маскирования») потери кадров для того, чтобы попытаться заменить реконструированным сигналом пропущенный сигнал посредством использования информации, доступной в пределах декодера (например, уже декодированного сигнала или параметров, принятых в предыдущих кадрах). При помощи этого способа, хорошее качество обслуживания может поддерживаться, несмотря на ухудшенную работу канала.

Способы коррекции потери кадров наиболее часто являются очень зависящими от типа использования кодирования.

В случае кодирования речевого сигнала, основанного на технологиях типа CELP («линейное предсказание с кодовым возбуждением»), коррекция потери кадров использует, в частности, модель CELP. Например, при кодировании согласно рекомендации ITU-T G.722.2, решение о замене потерянного кадра (или «пакета») состоит из расширения использования долгосрочного предсказания усиления посредством аттенюатора, а также из расширения использования каждого ISF-параметра (параметра «спектральной частоты иммитанса») посредством принудительного их стремления к соответствующим им средним значениям. Шаг речевого сигнала (параметр, обозначенный через «LTP-лаг») также повторяется. Кроме того, в декодер подаются случайные значения для параметров, характеризующих данное «нововведение», (возбуждение в CELP-кодировании).

Уже следует отметить, что применение этого типа способа кодирования преобразования или кодирования формы волны типа РСМ или ADPCM требует параметрического анализа типа CELP в декодере проходящего сигнала, что вводит дополнительную сложность.

В рекомендации ITU-T G.711, соответствующей кодеру формы волны, информативный пример обработки коррекции потери кадров (данный в Приложении I текста этой рекомендации) состоит из нахождения периода шага в уже декодированном речевом сигнале и повторения этого последнего периода шага посредством восстановления-сложения («наложить-сложить») между уже декодированным сигналом и повторенным сигналом (реконструированным посредством маскирования). При помощи этой обработки, звуковые артефакты могут быть «сглажены», но требуют дополнительной задержки в декодере (задержки, соответствующей времени восстановления).

Наиболее используемый способ замены потери кадров в случае кодирования посредством преобразования состоит в повторении спектра, декодированного в последнем принятом кадре. Например, в случае кодирования согласно рекомендации ITU-T G.722.1, MLT-преобразование («модифицированное наложенное преобразование»), эквивалентное модифицированному дискретному косинусному преобразованию (MDCT) с 50%-ным восстановлением и окнами анализа/синтеза синусоидальной формы, служит для обеспечения достаточно медленного перехода между последним потерянным кадром и повторенным кадром для сглаживания артефактов, относящихся к простому повторению спектра; обычно, повторенный спектр устанавливается на нуль, если потеряно более одного кадра.

Выгодно, что этот способ маскирования не требует дополнительной задержки, так как он использует восстановление-сложение между реконструированным сигналом и прошедшим сигналом для того, чтобы осуществить некоторый вид «плавного монтажного перехода» (с временным наложением спектров из-за MLT-преобразования). Он представляет собой способ с очень низкой стоимостью ресурсов.

Однако он имеет дефект, касающийся временной несовместимости между сигналом непосредственно перед потерей кадра и повторенным сигналом. Результатом этого является фазовый разрыв (или несовместимость), который может создать значительные звуковые артефакты, если время восстановления между этими сигналами, связанными двумя кадрами, уменьшено (как, в частности, в случае, когда используются MDCT-кадры, называемые «короткой задержкой»). Ситуация краткосрочного восстановления показана на фиг. 1В в случае MLT-преобразования короткой задержки, по сравнению с обычной ситуацией из фиг. 1А, в которой длинные синусные окна используются согласно рекомендации G.722.1 (таким образом, обеспечивается долгое время ZRA восстановления с очень нарастающей модуляцией). Оказывается, что модуляция посредством окна короткой задержки создает фазовый сдвиг, который является слышимым из-за короткой зоны ZRB восстановления, как показано на фиг. 1B.

В этом случае, даже хотя было бы реализовано решение, комбинирующее поиск шага (случай декодирования согласно Приложению I рекомендации G.711) и восстановление-сложение, созданное посредством окна MDCT-преобразования, это не было бы достаточным для устранения звуковых артефактов, относящихся, в частности, к фазовому сдвигу между частотными компонентами.

Данное изобретение нацелено на улучшение этой ситуации.

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

a) поиска, в достоверном сигнале, доступном для декодера, сегмента сигнала длины, соответствующей периоду, установленному как функция указанного достоверного сигнала;

b) анализа спектра этого сегмента для определения спектральных компонент этого сегмента;

c) синтеза по меньшей мере одного кадра замены для потерянного кадра, посредством построения синтезированного сигнала по меньшей мере из части этих спектральных компонент.

Здесь «кадр» понимается как блок по меньшей мере из одного отсчета. В большинстве кодеков, эти кадры строятся из нескольких отсчетов. Однако, в некоторых кодеках, особенно типа РСМ («импульсно-кодовая модуляция»), например, согласно рекомендации G.711, сигнал строится просто из последовательности отсчетов (один «кадр» в смысле данного изобретения тогда содержит только один отсчет). Данное изобретение может тогда также применяться к этому типу кодека.

Например, достоверный сигнал мог бы быть построен из последних достоверных кадров, принятых перед потерей кадра. Один или несколько следующих достоверных кадров, принятых после потерянного кадра, могли бы также использоваться (хотя такая реализация приводит к задержке декодирования). Отсчетами из достоверного сигнала, которые используются, могут быть непосредственно отсчеты из этих кадров и могли бы быть отсчеты, которые соответствуют памяти от преобразования и которые обычно содержат наложение спектров в случае декодирования типа MLT или MDCT посредством преобразования с восстановлением.

Данное изобретение обеспечивает выгодное решение коррекции потери кадров, в частности, в случае, когда запрещена дополнительная задержка декодера, например, когда преобразованный декодер используется с окнами, которые не имеют достаточно большого наложения между сигналом замены и сигналом, приходящим из временной развертки (типичный случай для окон короткой задержки для MDCT или MLT, показанных на фиг. 1b). Данное изобретение имеет конкретное преимущество для восстановления, из-за использования спектральных компонент на последних достоверных кадрах, принятых для построения синтезированного сигнала, содержащего спектральное окрашивание от этих последних достоверных кадров. Тем не менее, данное изобретение, конечно, применяется к любому типу кодирования/декодирования (посредством преобразования, CELP, РСМ или другого).

В одном варианте осуществления, этот способ предусматривает поиск, посредством корреляции в достоверном сигнале, одного периода повторения, где длина вышеупомянутого сегмента тогда содержит по меньшей мере один период повторения.

Такой «период повторения» соответствует, например, периоду шага в случае сигнала произнесенной речи (инверсии основной частоты сигнала). Тем не менее, сигнал может также приходить от музыкального сигнала, например, имеющего общую тональность, с которой связана основная частота, а также основной период, который соответствовал бы вышеупомянутому периоду повторения.

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

Таким образом, длина сигнала, на которой осуществляется спектральный анализ, может быть определена как:

- длина, соответствующая периоду повторения (если тональность сигнала является ясно идентифицируемой);

- длина, соответствующая нескольким периодам повторения (циклы шагов, например), если корреляция дает первый результат корреляции, больший, чем заданный порог, как объяснено в рабочем варианте осуществления, который следует;

произвольная длина сигнала (например, несколько десятков отсчетов), если такая тональность не является идентифицируемой (сигнал, составленный по существу из шума).

В некотором конкретном варианте осуществления, вышеупомянутый период повторения соответствует длине, для которой корреляция превышает заданное пороговое значение. Таким образом, в этой реализации, длина сигнала идентифицируется, как только корреляция превышает заданное пороговое значение для этого времени. Таким образом идентифицированная длина соответствует одному или нескольким периодам, связанным с частотой вышеупомянутой общей тональности. При помощи такой реализации сложность поиска посредством корреляции может быть выгодно ограничена (например, посредством установления порога корреляции, равного 60 или 70%), даже если в реальности детектирован не один, а несколько периодов шага (например, между двумя и пятью периодами шага). Во-первых, сложность поиска корреляции тогда является более низкой. Во-вторых, спектральный анализ на нескольких периодах является более точным, и результирующие спектральные компоненты анализируются более точно.

Что касается получения спектральных компонент посредством анализа сегментов (например, посредством быстрого преобразования Фурье, или FFT), этот способ дополнительно предусматривает определение соответствующих фаз, связанных с этими спектральными компонентами, и построение синтезированного сигнала тогда содержит фазы этих спектральных компонент. Построение сигнала тогда включает в себя эти фазы, как будет видно позже, для оптимизации соединения синтезированного сигнала с последними достоверными кадрами и, в наиболее естественных случаях, со следующими достоверными кадрами.

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

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

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

В одной реализации, вышеупомянутый шум получается посредством взвешенной (по времени) разности между сигналом из данного сегмента и синтезированным сигналом. Он может быть, например, взвешен посредством окон восстановления, как в контексте кодирования/декодирования посредством преобразования с восстановлением.

Спектральный анализ сегмента содержит синусоидальный анализ посредством быстрого преобразования Фурье (FFT) предпочтительно длины 2^k, где k является большим или равным log2(P), где Р - число отсчетов в сегменте сигнала. Такая реализация служит для уменьшения сложности обработки, как подробно объяснено ниже. Следует отметить, что в качестве возможной альтернативы для FFT-преобразования возможны другие преобразования, например, преобразование типа модулированного сложного наложенного преобразования (MCLT).

В частности, этап спектрального анализа может обеспечить:

- интерполяцию отсчетов из сегмента для получения второго сегмента, содержащего 2^ceil(log2(P)) отсчетов, где ceil(x) - целое число, большее или равное х;

- вычисление преобразования Фурье второго сегмента; и

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

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

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

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

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

В этой реализации кадр замены может быть синтезирован посредством сложения:

- первого сигнала, построенного из спектральных компонент, выбранных в диапазоне низких частот, и

- второго сигнала, поступающего от фильтрации в диапазоне высоких частот,

где второй сигнал был получен посредством последовательного копирования по меньшей мере одного достоверного полукадра и свернутой по времени его версии.

Данное изобретение также нацелено на компьютерную программу, содержащую команды для реализации данного способа (например, общей блок-схемой может быть общее схематическое изображение из фиг. 2, и, возможно, в некоторых вариантах осуществления конкретные блок-схемы из фиг. 5 и/или 8).

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

a) средство поиска, в достоверном сигнале, доступном для декодера, сегмента сигнала длины, соответствующей периоду, установленному как функция указанного достоверного сигнала;

b) средство анализа спектра этого сегмента для определения спектральных компонент этого сегмента;

c) средство синтеза по меньшей мере одного кадра замены для потерянного кадра, посредством построения синтезированного сигнала по меньшей мере из части этих спектральных компонент.

Такое устройство может иметь аппаратную форму, например, процессора и, возможно, рабочей памяти обычно в терминале связи.

Другие преимущества и признаки данного изобретения станут понятными после прочтения подробного описания примеров реализации данного изобретения, приведенного ниже, и изучения чертежей, в которых:

Фиг. 1А показывает восстановление со стандартными окнами в сочетании с MLT-преобразованием.

Фиг. 1В показывает восстановление с окнами малой задержки, по сравнению с представлением фиг. 1А.

Фиг. 2 показывает пример общей обработки в значении данного изобретения.

Фиг. 3 показывает определение сегмента сигнала, соответствующего основному периоду.

Фиг. 4 показывает определение сегмента сигнала, соответствующего основному периоду, со сдвигом поиска корреляции в этом примере реализации.

Фиг. 5 показывает вариант осуществления спектрального анализа сегмента сигнала.

Фиг. 6 показывает пример реализации для копирования, в высоких частотах, достоверного кадра, заменяющего несколько потерянных кадров.

Фиг. 7 показывает реконструкцию сигнала из потерянных кадров со взвешиванием посредством синтетических окон.

Фиг. 8 показывает пример применения способа в значении данного изобретения для декодирования сигнала.

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

Обработка в значении данного изобретения показана на фиг. 2. Она реализована в декодере. Декодер может иметь любой тип, так как общая обработка является независимой от природы кодирования/декодирования. В описанном примере, обработка применяется к принятому звуковому сигналу. Она может, однако, применяться более общим образом к любому типу сигнала, анализируемого посредством временного кадрирования и преобразования, с гармонизацией, подлежащей снабжению одним или несколькими кадрами замены во время синтеза посредством восстановления-сложения.

Во время первого этапа S1 обработки из фиг. 2, N звуковых отсчетов сохраняются последовательно в буфере в памяти (например, типа FIFO). Буфер аудиоданных b(n) может быть, таким образом, построен из 47 мс сигнала, которые составляют, например, 2,35=47/20 звуковых кадров по 20 мс каждый, при частоте Fs выборки, данной, например, посредством Fs=32 кГц. Эти отсчеты соответствуют отсчетам, которые уже декодированы и, следовательно, доступны во время обработки коррекции потери кадра (кадров). Если этот первый отсчет, подлежащий синтезу, является отсчетом с временным индексом N (для одного или нескольких последовательных потерянных кадров), то тогда буфер b(n) аудиоданных соответствует N предыдущим отсчетам с временными индексами 0 - N-1. В случае кодера посредством преобразования, буфер аудиоданных соответствует отсчетам, уже декодированным в прошедшем кадре (и, следовательно, немодифицируемым). Если можно добавить дополнительную задержку в декодер (например, из D отсчетов), то этот буфер может содержать только часть отсчетов, доступных для декодера, оставляя, например, последние D отсчетов для восстановления-сложения (на этапе S10 из фиг. 2).

На этапе S2 фильтрации, буфер b(n) аудиоданных затем разделяется на два частотных диапазона: диапазон LFB низких частот и диапазон HFB высоких частот с частотным разделением, записанным как Fc, например, с Fc=4 кГц. Предпочтительно, чтобы эта фильтрация не вводила задержку. Размер ранее заданного буфера аудиоданных теперь соответствует предпочтительно N'=N Fc/Fe с этой частотой Fc.

Этап S3, применяемый к диапазону низких частот, состоит из следующего поиска точки зацикливания и сегмента Р, соответствующего основному периоду (или периоду шага) в пределах буфера b(n), повторно дискретизированного с частотой Fc. С этой целью, в одном примере реализации, нормированная корреляция corr(n) вычисляется между:

- целевым сегментом из буфера (ссылка CIB из фиг. 3), где размер этого сегмента Ns включен между N'-Ns и N'-1 (для длины в 6 мс, например); и

- скользящим сегментом размера Ns, который начинается в отсчете, занимающем положение между отсчетом 0 и отсчетом Nc (с Nc>N'-Ns; где Nc соответствует, например, длине в 35 мс),

где

Со ссылкой на фиг. 3, если максимальная корреляция найдена для отсчета с индексом времени n=mc, то точка зацикливания с одним периодом шага, с индексом n=pb, соответствует отсчету mc+Ns, а сегмент, обозначенный через р(n), который следует на фиг. 3, соответствует периоду шага размера P=N'-Ns-mc, заданному между отсчетами n=pb и n=N'-1.

Скользящий сегмент поиска предшествует целевому сегменту, как показано на фиг. 3. В частности, первый отсчет из целевого сегмента соответствует последнему отсчету из сегмента поиска. Если максимальная корреляция с целевым сегментом CIB расположена раньше в сегменте поиска в индексной точке тс, то по меньшей мере один период шага (с той же самой синусоидной интенсивностью, например) истекает между индексной точкой времени mc и отсчетом с индексом времени mc+Р. Таким же образом по меньшей мере один период шага истекает между отсчетом с индексом mc+Ns (точка зацикливания, индекс pb) и последним отсчетом из буфера N'.

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

Кроме того, другой вариант этой реализации состоит необязательно из поиска максимальной корреляции на всем сегменте поиска, а из простого поиска сегмента, где корреляция с целевым сегментом является большей, чем выбранный порог (например, 70%). Такая реализация не дает точно один период Р шага (а, возможно, несколько последовательных периодов), но, тем не менее, сложность, связанная с этим поиском максимума корреляции на полном сегмент поиска, требует столько же, или даже больше ресурсов, чем обработка длинного синтезированного сегмента (с несколькими периодами шага).

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

В случае, когда динамические режимы могут присутствовать в звуковом сигнале, содержащемся в буфере (пики интенсивности очень короткой длительности в звуковом сигнале), можно адаптировать зону поиска корреляции, например, посредством сдвига поиска корреляции (посредством принудительного его начала обычно 20 мс после начала буфера аудиоданных, как показано в качестве примера на фиг. 4, или посредством выполнения поиска корреляции во временной зоне, начинающейся после окончания динамического режима).

Этап, следующий за S4, состоит из декомпозиции сегмента р(n) на сумму синусов. Обычно декомпозиция сигнала на сумму синусов состоит из вычисления преобразования Фурье сигнала на времени, соответствующем длине сигнала. Таким образом получаются частота, фаза и амплитуда каждой из синусоидальных компонент, которые составляют данный сигнал. В одном конкретном варианте осуществления данного изобретения, по причине уменьшенной сложности, этот анализ осуществляется при помощи быстрого преобразования Фурье FFT, с длиной 2^k (с k, большим или равным log2(P)).

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

- операцию S41, когда отсчеты из сегмента р(n) интерполируются таким образом, чтобы получить сегмент р'(n), составленный из Р' отсчетов с Р'=2cei1 (log2(P))>P, где ceil(x) - целое число, большее или равное х (например, и без ограничения, можно использовать линейную интерполяцию или даже интерполяцию типа кубического сплайна);

- операцию S42 с вычислением FFT-преобразования ; и

- операцию S43, в которой на основе FFT-преобразования, фазы ср(к) и амплитуды А(к) синусоидальных компонент получаются непосредственно, где частоты, нормированные между 0 и 1, даются выражением:

На этапе S5 из фиг. 2, синусоидальные компоненты выбираются таким образом, чтобы сохранить наиболее значащие компоненты. В одном конкретном варианте осуществления, выбор этих компонент достигает:

- сначала выбора амплитуд А(k), для которых A(k)>A(k-1) и A(k)>A(k+1) ,

- затем выбора среди амплитуд из этого первого выбора компонент, например, в порядке убывания амплитуд, таким образом, что накопленная амплитуда выбранных пиков составляет по меньшей мере х% (например, х=70%) накопленной амплитуды половины спектра.

Кроме того, также можно ограничить число компонент (например, числом 20) таким образом, чтобы сделать синтез менее сложным. Альтернативно, поиск может быть осуществлен для заданного числа наибольших пиков.

Конечно, способ выбора спектральных компонент не ограничен примерами, представленными выше. Могут быть варианты. Он может быть, в частности, основан на критериях, при помощи которых можно идентифицировать спектральные компоненты, полезные в синтезе сигнала (например, на субъективных критериях, относящихся к маскированию, критериях, относящихся к гармоничности сигнала, или других).

Следующий этап S6 охватывает синусоидальный синтез. В реализации отсчетов, он состоит из генерации сегмента s(n) длины, по меньшей мере равной размеру потерянного кадра (Т). В одном конкретном варианте осуществления, длина, равная двум кадрам (40 мс, например) генерируется таким образом, чтобы выполнить микширование звуковых сигналов типа «плавного монтажного перехода» (в качестве перехода) между сигналом, синтезированным (посредством коррекции потери кадров), и сигналом, декодированным из следующего достоверного кадра, когда некоторый кадр опять принимается корректно.

Для упреждения повторной выборки кадра (длина выборки обозначена через LF), число отсчетов, подлежащих синтезу, может быть увеличено на половину размера фильтра повторной выборки (LF). Синтезированный сигнал s(n) вычисляется как сумма выбранных синусоидальных компонент:

где k - индекс К компонент, выбранных на этапе S5. Возможны несколько стандартных способов для осуществления этого синусоидального синтеза.

Этап S7 из фиг. 2 состоит из введения шума таким образом, чтобы компенсировать потерю энергии, относящуюся к опусканию некоторых частотных компонент в диапазоне низких частот. Один конкретный вариант осуществления состоит из вычисления разности r(n)=p(n)-s(n) между соответствующим сегментом при шаге р(n) и синтезированным сигналом s(n), где n∈[0, Р-1].

Эта разность размера Р повторяется, пока не достигнет размера 2T+LF/2.

Сигнал s(n) затем смешивается (суммируется с возможным взвешиванием) с сигналом r(n).

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

Параллельно, этап S8 состоит из обработки диапазона высоких частот просто посредством повторения сигнала. Например, она могла бы включать в себя повторение длины кадра Т. В более сложной реализации, синтез HFB получается посредством взятия последних Т' отсчетов перед потерей кадра (например, при T'=N/2) и посредством временной их свертки, а затем посредством повторения их без свертки и т.д., как показано на фиг. 6. С такой реализацией выгодно, что слышимых артефактов можно избежать посредством помещения начала и конца кадров при одной и той же громкости.

В одном конкретном варианте осуществления, кадр размера Т' может быть взвешен таким образом, чтобы избежать некоторых артефактов, когда содержание является особенно интенсивным в диапазоне высоких частот. Это взвешивание (обозначенное через W на фиг. 6) может, например, принять форму синусоидального полуокна в 1 мс в начале и конце кадра длины Т/2. Последовательные кадры могут также накладываться.

На этапе S9, сигнал синтезируется посредством повторной дискретизации диапазона низких частот при его первоначальной частоте Fc и его сложения с сигналом, приходящим от повторения от этапа S8 в диапазоне высоких частот.

На этапе S10, осуществляется восстановление-сложение для гарантии непрерывности между сигналом перед потерей кадра и синтезированным сигналом. Например, в случае кодирования посредством преобразования низкой задержки, L отсчетов расположены между началом наложенной части (остающейся наложенной части) MDCT-преобразования и отметкой в три четверти окна (например, с осью временного наложения спектров для окон, как обычно в соединении с MDCT-преобразованием). Со ссылкой на фиг. 7, эти отсчеты уже охвачены окном W1 синтеза MDCT-преобразования. Для возможности прикладывания к ним окна W2 восстановления, эти отсчеты делятся на окно W1 (которое уже известно от декодера) и умножаются на окно W2. Сигнал S(n), синтезированный посредством реализации ранее описанных этапов S1-S9, таким образом, записывается следующим образом:

где, например и без ограничения, функции восстановления заданы следующим образом:

W3(n)=1-W2(n) и n∈[0; L-1].

Как описано ранее, если разрешена задержка в декодере, это время задержки может использоваться для осуществления восстановления с синтетической частью, посредством использования любого взвешивания, подходящего для восстановления-сложения.

Конечно, данное изобретение не ограничено вариантом осуществления, описанным выше; оно простирается и на другие варианты.

Таким образом, например, разделение на этапе S2 на диапазоны высоких и низких частот является необязательным. В одном варианте реализации, сигнал, приходящий от буфера (этап S1) не разделяется на два поддиапазона, а этапы S3-S10 остаются идентичными этапам, описанным выше. Тем не менее, обработка спектральных компонент только в низких частотах выгодно служит ограничению ее сложности.

Данное изобретение может быть реализовано в диалоговом декодере, в случае потери кадров. Материально, оно может быть реализовано в схеме декодера, обычно в телефонном терминале. С этой целью, такая схема CIR может содержать или быть подключенной к процессору PROC, как показано на фиг. 9, и может содержать рабочую память MEM, запрограммированную командами компьютерной программы согласно данному изобретению для исполнения вышеуказанного способа.

Например, данное изобретение может быть реализовано в декодере реального времени посредством преобразования. Со ссылкой на фиг. 8, этот декодер посылает запросы для получения звукового кадра и буфера кадров (этап S81). Если кадр является доступным («ОК» выводится из теста), то декодер декодирует этот кадр (S82) с тем, чтобы получить сигнал в преобразованной области, выполняет обратное преобразование INDCT (S83), которое затем служит для получения «наложенных» временных отсчетов, а затем переходит к финальному кадрированию (посредством окна синтеза) и этапу S84 восстановления для получения временных отсчетов, свободных от наложения спектров, которые будут затем посланы в цифроаналоговый преобразователь для восстановления.

Когда кадр теряется («КО» выводится из теста), тогда декодер использует уже декодированный сигнал, а также «наложенную» часть из предыдущего кадра (этап S85) в способе коррекции потери кадров в значении данного изобретения.

1. Способ обработки сигнала, содержащего последовательность отсчетов, распределенных в последовательных кадрах, причем способ реализуется во время декодирования указанного сигнала для замены по меньшей мере одного кадра сигнала, потерянного при декодировании;

при этом способ содержит этапы, на которых:

выполняют поиск в действительном сигнале, доступном для декодера, сегмента сигнала длиной, соответствующей периоду, установленному в зависимости от указанного действительного сигнала;

выполняют анализ спектра сегмента для определения спектральных компонент сегмента;

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

2. Способ по п. 1, содержащий этап, на котором выполняют поиск, посредством корреляции в указанном действительном сигнале, одного периода повторения, причем длина сегмента содержит по меньшей мере один период повторения.

3. Способ по п. 2, в котором период повторения соответствует длине, на которой корреляция превышает заданное пороговое значение.

4. Способ по п. 1, дополнительно содержащий этап, на котором определяют соответствующие фазы, связанные со спектральными компонентами, при этом построение синтезированного сигнала содержит указанные фазы спектральных компонент.

5. Способ по п. 1, дополнительно содержащий этап, на котором определяют соответствующие амплитуды, связанные со спектральными компонентами, при этом построение синтезированного сигнала содержит указанные амплитуды спектральных компонент.

6. Способ по п. 1, дополнительно содержащий этап, на котором определяют соответствующие амплитуды, связанные со спектральными компонентами, при этом выбирают спектральные компоненты с наибольшей амплитудой для построения синтезированного сигнала.

7. Способ по п. 1, в котором добавляют шум к синтезированному сигналу для компенсации потери энергии, относящейся к спектральным компонентам, не выбранным для построения синтезированного сигнала.

8. Способ по п. 7, в котором вышеупомянутый шум получают посредством взвешенной разности между сигналом из сегмента и синтезированным сигналом.

9. Способ по п. 1, в котором на этапе выполнения спектрального анализа сегмента выполняют синусоидальный анализ посредством быстрого преобразования Фурье с длиной 2^k, где k больше или равно log2(P), где Р – число отсчетов в сегменте сигнала.

10. Способ по п. 9, в котором на этапе выполнения спектрального анализа выполняют:

интерполяцию отсчетов из указанного сегмента для получения второго сегмент