СПОСОБ КОДИРОВАНИЯ СИГНАЛА И СПОСОБ ДЕКОДИРОВАНИЯ СИГНАЛА
METHOD OF SIGNAL CODING AND SIGNAL DECODING

Настоящая заявка притязает на приоритет китайских заявок на патент № 200810247427.6 "Способ кодирования сигнала и способ для декодирования сигнала", поданной 31-го декабря 2008г., и № 200910151835.6 "Способ кодирования сигнала и способ декодирования сигнала", поданной 25-го января 2009г., которые включены в настоящий документ посредством ссылки.
Область техники, к которой относится изобретение
Настоящее раскрытие относится к кодированию и декодированию речи и, в частности, к способу, устройству и системе для кодирования и декодирования сигналов.
Уровень техники
P(z). P(z)
F(z). F(z)
F(z)
P(z)
Одной из моделей кодирования, которые широко применяются для кодирования речи, является Линейное Предсказание с Возбуждением по Кодовой Книге (Code Excited Linear Prediction, CELP). Модель CELP использует почти белый сигнал возбуждения, чтобы возбуждать два переменных по времени линейных рекурсивных фильтра. Этот сигнал возбуждения обычно выбирается из кодовой книги, содержащей последовательности белого Гауссова шума. Контур обратной связи каждого фильтра включает в себя предсказатель. Один из этих предсказателей является долгосрочным предсказателем (или предсказателем основного тона), который представляется как используется для генерации тоновой структуры голоса (например, точной структуры спектра). Еще одним общим предсказателем является краткосрочный предсказатель, который представляется как используется, чтобы восстанавливать краткосрочную огибающую спектра речи. Эта модель основана на ее обратном процессе. То есть, используется для удаления избыточности ближней выборочной точки речевого сигнала, а используется для удаления избыточности дальней выборочной точки речевого сигнала. Нормализованный остаточный сигнал получается посредством двух уровней предсказания. Остаточные сигналы принимают приблизительно стандартное нормальное распределение.
x(i)
res(i)
res(i)
x2(i)
x2(i)
Когда модель CELP применяется в области сжатия с потерями, речевой сигнал  подвергается анализу Кодирования с Линейным Предсказанием (Linear Predictive Coding, LPC), чтобы сначала получить остаточный LPC-сигнал . После кадрирования остаточного LPC-сигнала, каждый сигнал подкадра подвергается анализу Долгосрочного Предсказания (Long-Term Prediction, LTP), чтобы получить соответствующую адаптивную кодовую книгу и коэффициент усиления адаптивной кодовой книги. Поиск в адаптивной книге может выполняться множеством способов, таких как автокорреляция. После удаления долгосрочной зависимости остаточного LPC-сигнала , получается остаточный LTP-сигнал . После использования алгебраической кодовой книги для описания остаточного LTP-сигнала , весь процесс кодирования завершается. В заключение, адаптивная кодовая книга и фиксированная кодовая книга кодируются и записываются в битовой поток, и для коэффициента усиления адаптивной кодовой книги и фиксированной кодовой книги выполняется объединенное векторное квантование или скалярное квантование. В этой кодовой книге в качестве наилучшего коэффициента усиления выбирается либо коэффициент усиления адаптивной кодовой книги, либо коэффициент усиления фиксированной кодовой книги. Индекс, соответствующий этому наилучшему коэффициенту усиления, передается в декодер. Весь процесс кодирования происходит в области Импульсно-Кодовой Модуляции (Pulse Code Modulation, PCM).
В сфере сжатия без потерь устройство стандарта Moving Pictures Experts Group Audio Lossless Coding (MPEG ALS) также использует краткосрочную и долгосрочную зависимость речевых сигналов для предсказания. Предсказание выполняется в следующем порядке: сначала для речевого сигнала выполняется LPC и коэффициент LPC подвергается статистическому кодированию и записывается в битовой поток; LTP выполняется для остаточного LPC-сигнала, чтобы получить основной тон и коэффициент усиления основного тона LTP, и остаточный LPC-сигнал записывается в битовой поток; после LTP получается остаточный LTP-сигнал; и, далее, остаточный LTP-сигнал подвергается статистическому кодированию и записывается в битовой поток, после чего весь процесс кодирования завершается.
Согласно описанному предшествующему уровню техники, когда речевой сигнал менее периодичен, обработка LTP почти не дает эффекта. В этом случае остаточный LTP-сигнал все же записывается в битовой поток. Соответственно, квантование коэффициента усиления основного тона потребляет слишком много битов, и производительность сжатия кодера сокращается.
Сущность изобретения
Варианты осуществления настоящего раскрытия предоставляют способ, устройство и систему для кодирования и декодирования сигналов для повышения эффективности сжатия кодека.
Способ кодирования сигнала включает в себя этапы, на которых:
преобразуют сигнал первой области в сигнал второй области;
выполняют обработку Линейного Предсказания (Linear Predictive, LP) и обработку LTP для упомянутого сигнала второй области;
получают долгосрочный флаг согласно критериям решения;
получают сигнал вклада второй области согласно результату обработки LP и результату обработки LTP, когда упомянутый долгосрочный флаг является первым флагом, и получают сигнал вклада второй области согласно результату обработки LP, когда упомянутый долгосрочный флаг является вторым флагом;
преобразуют сигнал вклада второй области в сигнал вклада первой области и вычисляют остаточный сигнал предсказания первой области; и
выводят битовой поток, который содержит остаточный сигнал предсказания первой области.
Способ декодирования сигнала включает в себя этапы, на которых:
декодируют принятый битовой поток, чтобы получить декодированный остаточный сигнал предсказания первой области;
декодируют первую выборочную точку сигналов текущего кадра;
последовательно выполняют следующие этапы декодирования для каждой текущей выборочной точки начиная со второй выборочной точки сигналов текущего кадра:
вычисляют сигнал вклада LP текущей выборочной точки согласно сигналу второй области упомянутой декодированной выборочной точки;
получают сигнал вклада второй области согласно сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки;
получают сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом;
преобразуют упомянутый сигнал вклада второй области в сигнал вклада первой области, и декодируют сигнал первой области текущей выборочной точки согласно остаточному сигналу предсказания первой области и сигналу вклада первой области; и
преобразуют упомянутый сигнал первой области текущей выборочной точки в сигнал второй области, и получают остаточный сигнал LP согласно упомянутому сигналу второй области и упомянутому сигналу вклада LP.
Устройство кодирования сигнала включает в себя:
модуль преобразования, приспособленный для того, чтобы: преобразовывать сигнал первой области в сигнал второй области и преобразовывать сигнал вклада второй области в сигнал вклада первом области;
модуль LP, приспособленный для того, чтобы выполнять LP-обработку для упомянутого сигнала второй области;
модуль LTP, приспособленный для того, чтобы выполнять LTP-обработку для упомянутого сигнала второй области;
модуль принятия решений, приспособленный для того, чтобы получать долгосрочный флаг согласно критериям для принятия решения;
модуль предсказания второй области, приспособленный для того, чтобы: получать сигнал вклада второй области согласно результату обработки LP и результату обработки LTP, когда упомянутый долгосрочный флаг является первым флагом, и получать сигнал вклада второй области согласно результату обработки LP, когда упомянутый долгосрочный флаг является вторым флагом;
модуль остатка предсказания первой области, приспособленный для того, чтобы вычислять остаточный сигнал предсказания первой области согласно упомянутому сигналу вклада первой области;
модуль вывода, приспособленный для того, чтобы выводить битовой поток, который включает в себя остаточный сигнал предсказания первой области.
Устройство декодирования сигнала включает в себя:
модуль декодирования битового потока, приспособленный для того, чтобы декодировать принимаемый битовой поток для получения остаточного сигнала предсказания первой области;
модуль декодирования первой выборочной точки, приспособленный для того, чтобы декодировать первую выборочную точку сигналов текущего кадра;
модуль LP, приспособленный для того, чтобы вычислять сигнал вклада LP текущей выборочной точки согласно сигналу второй области упомянутой декодированной выборочной точки;
модуль предсказания второй области, приспособленный для того, чтобы: получать сигнал вклада второй области согласно упомянутому сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, или получать сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки;
модуль преобразования, приспособленный для того, чтобы: преобразовывать упомянутый сигнал вклада второй области в сигнал вклада первом области, и преобразовывать сигнал вклада первой области упомянутой текущей выборочной точки в сигнал второй области;
модуль декодирования текущей выборочной точки, приспособленный для того, чтобы декодировать упомянутый сигнал первой области текущей выборочной точки согласно упомянутому остаточному сигналу предсказания первой области и упомянутому сигналу вклада первой области; и
модуль остатка LP, приспособленный для того, чтобы получать остаточный сигнал LP согласно упомянутому сигналу второй области и упомянутому сигналу вклада LP.
Система кодирования/декодирования сигнала включает в себя:
устройство кодирования сигнала, приспособленное для того, чтобы: преобразовывать сигнал первой области в сигнал второй области;
выполнять обработку LP и обработку LTP для упомянутого сигнала второй области;
получать долгосрочный флаг согласно критериям решения;
получать сигнал вклада второй области согласно результату обработки LP и результату обработки LTP, когда упомянутый долгосрочный флаг является первым флагом, и получать сигнал вклада второй области согласно результату обработки LP, когда упомянутый долгосрочный флаг является вторым флагом;
преобразовывать сигнал вклада второй области в сигнал вклада первой области и вычислять остаточный сигнал предсказания первой области; и
выводить битовой поток, который включает в себя упомянутый остаточный сигнал предсказания первой области;
устройство декодирования сигнала, приспособленное для того, чтобы: декодировать принятый битовой поток, чтобы получить остаточный сигнал предсказания первой области и долгосрочный флаг;
декодировать первую выборочную точку сигналов текущего кадра;
последовательно выполнять следующие этапы декодирования для каждой текущей выборочной точки начиная со второй выборочной точки сигналов текущего кадра: вычислить сигнал вклада LP текущей выборочной точки согласно сигналу второй области упомянутой декодированной выборочной точки;
получить сигнал вклада второй области согласно упомянутому сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, или получать сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки;
преобразовать упомянутый сигнал вклада второй области в сигнал вклада первой области, и декодировать сигнал первой области текущей выборочной точки согласно остаточному сигналу предсказания первой области и сигналу вклада первой области; и
преобразовать упомянутый сигнал первой области текущей выборочной точки в сигнал второй области, и получить остаточный сигнал LP согласно упомянутому сигналу второй области и упомянутому сигналу вклада LP.
В этих вариантах осуществления настоящего раскрытия последующий процесс кодирования или декодирования выполняется адаптивным образом согласно долгосрочному флагу. Если долгосрочный флаг является вторым флагом, то нет необходимости учитывать результат обработки LTP, в результате чего повышается эффективность сжатия кодека.
Краткое описание чертежей
Фиг.1 - схема последовательности операций способа кодирования сигнала согласно первому варианту осуществления настоящего раскрытия;
Фиг.2 - схема последовательности операций способа кодирования сигнала согласно второму варианту осуществления настоящего раскрытия;
Фиг.3 - иллюстрация сигналов кадра после кадрирования в способе кодирования сигнала согласно второму варианту осуществления настоящего раскрытия;
Фиг.4 - схема последовательности операций способа декодирования сигнала согласно первому варианту осуществления настоящего раскрытия;
Фиг.5 - схема последовательности операций способа декодирования сигнала согласно второму варианту осуществления настоящего раскрытия;
Фиг.6 - схема последовательности операций этапа 404 способа декодирования сигнала согласно второму варианту осуществления настоящего раскрытия;
Фиг.7 - схема последовательности операций этапа 405 способа декодирования сигнала согласно второму варианту осуществления настоящего раскрытия;
Фиг.8 - иллюстрация структуры устройства кодирования сигнала согласно одному варианту осуществления настоящего раскрытия;
Фиг.9 - иллюстрация структуры устройства декодирования сигнала согласно одному варианту осуществления настоящего раскрытия; и
Фиг.10 - иллюстрация структуры системы кодирования/декодирования сигнала согласно одному варианту осуществления настоящего раскрытия.
Подробное описание раскрытия
Настоящее раскрытие более подробно описано ниже, со ссылкой на сопутствующие чертежи и иллюстративные варианты осуществления.
Фиг.1 представляет собой схему последовательности операций способа кодирования сигнала согласно первому варианту осуществления настоящего раскрытия. Этот способ включает в себя следующие этапы:
Этап 101: Преобразовать сигнал первой области в сигнал второй области.
Этап 102: Выполнить обработку LP и обработку LTP для упомянутого сигнала второй области.
Этап 103: Получить долгосрочный флаг согласно критериям решения.
Этап 104: Получить сигнал вклада второй области согласно результату обработки LP и результату обработки LTP, когда упомянутый долгосрочный флаг является первым флагом; и получить сигнал вклада второй области согласно результату обработки LP, когда упомянутый долгосрочный флаг является вторым флагом.
Этап 105: Преобразовать сигнал вклада второй области в сигнал вклада первой области и вычислять остаточный сигнал предсказания первой области.
Этап 106: Вывести битовой поток, который включает в себя упомянутый остаточный сигнал предсказания первой области.
В этом варианте осуществления упомянутый долгосрочный флаг получается согласно критериями принятия решения; упомянутый сигнал вклада второй области получается согласно результату обработки LP и результату обработки LTP, когда этот долгосрочный флаг является первым флагом, или сигнал вклада второй области получается согласно результату обработки LP, когда этот долгосрочный флаг является вторым флагом, и битовой поток получается согласно этому сигналу вклада второй области. В этом варианте осуществления последующий процесс кодирования выполняется адаптивным образом согласно упомянутому долгосрочному флагу. Когда долгосрочный флаг являет собой второй флаг, нет необходимости учитывать результат обработки LTP, в результате чего повышается эффективность сжатия кодека.
Фиг.2 представляет собой схему последовательности операций способа кодирования сигнала согласно второму варианту осуществления настоящего раскрытия. В этом варианте осуществления упомянутая первая область являет собой нелинейную область и, сверх того, в ее основе может лежать A-характеристика или Mu-характеристика; вторая область представляет собой PCM-область; обработка LP являет собой обработку LPC, а обработка LTP является Долгосрочной Обработкой (Long Term Prediction).
Способ в этом варианте осуществления включает в себя следующие этапы:
Этап 201: Преобразовать сигнал нелинейной области в сигнал PCM-области.
x(i)
y(i)
представляет сигнал нелинейной области, а представляет сигнал PCM-области. Если предположить, что в процессе преобразования имеет место потеря точности, то соответствующий процесс обратного преобразования будет без потерь точности.
y(i)
y
(i)
Этап 202: Выполнить LPC-обработку для сигнала целого кадра PCM-области, чтобы получить результат обработки LP. Результат обработки LP включает в себя сигнал 'вклада LPC, который служит как сигнал вклада LP и включает в себя коэффициент LP, что выражается в следующем виде:
a
L
y(i)
j
где  представляет собой коэффициент LP; являет собой длину кадра; а lpc_order является порядком LP. Предполагается, что y'(0)=0, где i<0, =0.
res(i)
y(i)
y'(i)
Этап 203: Вычислить остаточный LPC-сигнал , который служит как остаточный сигнал LP согласно сигналу PCM-области и сигналу вклада LPC, причем остаточный LPC-сигнал может рассматриваться как результат обработки LP.
res(i)
Этап 204: Выполнить кадрирование для остаточного LPC-сигнала  и, далее, выполнить обработку LTP, чтобы получить результат обработки LTP. Эта операция кадрирования является опциональной, и она может являть собой адаптивную операцию кадрирования. Результат обработки LTP включает в себя основной тон и коэффициент усиления основного тона.
В частности, обработка LTP на этом этапе может включать в себя: выполнение поиска основного тона для остаточного LPC-сигнала, получение наилучшего основного тона остаточного LPC-сигнала, или получение наилучшего основного тона и коэффициента усиления основного тона остаточного LPC-сигнала.
В частности, этот этап может включать в себя: если не выполняется кадрирование, выполнение поиска основного тона для сигнала PCM-области текущего кадра, чтобы найти наилучший основной тон сигнала PCM-области, и последующее выполнение точного поиска остаточного LPC-сигнала согласно наилучшему основному тону сигнала PCM-области, чтобы найти наилучший основной тон остаточного LPC-сигнала, или наилучший основной тон и коэффициент усиления основного тона этого остаточного LPC-сигнала;
если выполняется кадрирование, то до операции кадрирования выполнение поиска основного тона для сигнала PCM-области текущего кадра, чтобы найти наилучший основной тон сигнала PCM-области, используя лучший основной тон сигнала PCM-области текущего кадра в качестве наилучшего основного тона первого подкадра, и выполнение кадрирования для остаточного LPC-сигнала согласно наилучшему основному тону;
выполнение точного поиска основного тона для каждого подкадра в остаточной области, то есть, поиск основного тона каждого подкадра вблизи основного тона предыдущего подкадра, в результате чего облегчается дифференциальное кодирование для основного тона подкадра, и получение наилучшего основного тона каждого подкадра или получение наилучшего основного тона и коэффициента усиления основного тона.
В вышеупомянутом процессе поиска основного тона не удается найти коэффициент усиления основного тона, то коэффициент усиления основного тона может быть выбран адаптивным образом согласно полученному наилучшему основному тону.
res(i)
z(i)
При обработке LPC результат предсказания первых нескольких выборок обычно неточен. Чтобы избежать ухудшения эффективности LTP в этом варианте осуществления специфицируется, что первые M выборок не участвуют в обработке LTP, где M представляет собой специфицированное число. Поиск основного тона выполняется для остаточных LPC-сигналов выборок, отличных от первых M выборок, чтобы получить основной тон, коэффициент усиления основного тона и остаточный LTP-сигнал каждого подкадра.
1
1
0
1
0
1
1
1
0
j-1
j
j
j
j-1
T
+M-1
n
T
M
n
n
-1
N
n
n
.
n
n
-1
j
j
N
=n
-n
.
Фиг.3 представляет собой иллюстрацию сигналов кадра после кадрирования в способе кодирования сигнала согласно второму варианту осуществления настоящего раскрытия. Первые M выборок не участвуют в кадрировании или обработке LTP, и отношение между M и lpc_order выражается следующим образом: 0≤M≤lpc_order. T представляет основной тон первого подкадра, а выборки с M по  являются выборками в буфере. Если =+, то выборки с по являют собой выборки в первом подкадре, и длина первого подкадра составляет =-Аналогично, выборки с по  являют собой выборки в подкадре , и длина подкадра составляет Общее количество выборок сигналов в кадре равно L.
T
+M
1
Для выборок с 0 по -1 применимо следующее уравнение:
Для выборок первого подкадра применимо следующее уравнение:
g
1
где  представляет коэффициент усиление первого подкадра.
j
Для выборок подкадра  применимо следующее уравнение:
T
j
g
j.
j
j
где  представляет основной тон подкадра , а  представляет коэффициент усиления основного тона подкадра
res(i)
z(i)
Этап 205: Определить, больше ли произведение эмпирического коэффициента и энергии остаточных LPC-сигналов , которые не подвергались обработке LTP, чем энергия остаточных LTP-сигналов , которые были подвергнуты обработке LTP. При положительном результате определения перейти к этапу 206, в противном случае перейти к этапу 207.
z(i);
res(i)
E1 представляет энергию остаточного LTP-сигнала E представляет энергию остаточного LPC-сигнала ; а k может принять значение 0 или M. На этом этапе определяется, больше ли E*fac, чем E1, где fac являет собой эмпирический коэффициент. Обычно, fac=0,94.
res(i)
z(i)
В еще одном варианте осуществления альтернативной этого этапа является: Определить, больше ли произведение эмпирического коэффициента и суммы абсолютных величин остаточных LPC-сигналов , которые не подвергались обработке LTP, чем сумма абсолютных величин остаточных LTP-сигналов , которые были подвергнуты обработке LTP; при положительном результате определения перейти к этапу 206, в противном случае перейти к этапу 207.
Этап 206: Присвоить величину первого флага долгосрочному флагу Tflag. В частности, пусть Tflag=1. Перейти к этапу 208.
Этот долгосрочный флаг может быть запускающим сигналом модуля LTP. Если Tflag равен 1, то это указывает в том, что модуль LTP активирован.
Этап 207: Присвоить величину второго флага долгосрочному флагу Tflag.
В частности, пусть Tflag=0. Перейти к этапу 210. Если Tflag равен 0, то это указывает в том, что модуль LTP деактивирован.
res'(i)
res(i)
res'(i)
Этап 208: Получить сигнал  вклада LTP, который служит как сигнал вклада LTP, согласно основному тону, коэффициенту усиления основного тона и остаточному LPC-сигналу . Этот этап также может быть включен в состав этапа 204. То есть, этот этап может быть включен в обработку LPC, и результат обработки LTP, сверх того, включает в себя сигнал вклада LTP, как указано в формуле (8):
y'(i)
res'(i)
y''(i)
Этап 209: Использовать сумму сигнала вклада LPC и сигнала вклада LTP как сигнал  вклада PCM, и перейти к этапу 211, как указано в формуле (9):
y'(i)
y''(i)
Этап 210: Использовать сигнал вклада LPC как сигнал вклада PCM и перейти к этапу, как указано в формуле (10):
y''(i)
x'(i)
Этап 211: Преобразовать сигнал  вклада PCM в сигнал  вклада нелинейной области, как указано в формуле (11):
PCM2A[]
Функция  относится к преобразованию сигнала PCM-области в сигнал A-характеристики.
x(i)
x'(i)
Этап 212: Вычислить разность между и , чтобы получить остаточный сигнал предсказания нелинейной области и выполнить статистическое кодирование для остаточного сигнала предсказания нелинейной области.
a
a
j
j
Этап 213: Вывести битовой поток, который включает в себя статистический код упомянутого остаточного сигнала предсказания нелинейной области и упомянутый долгосрочный флаг. В частности, если Tflag равен 0, то битовой поток, сверх того, включает в себя LPC-коэффициент ; если Tflag равен 1, то битовой поток, сверх того, включает в себя LPC-коэффициент ,основной тон и коэффициент усиления основного тона.
a
j
В некоторых вариантах осуществления, в области кодирования с переменной длиной, когда Tflag равен 0, модуль LTP деактивируется, и нет необходимости в выводе битового потока с долгосрочным флагом; когда Tflag равен 1, модуль LTP активируется и выводится битовой поток, который включает в себя первый флаг в качестве долгосрочного флага, причем этот битовой поток, сверх того, включает в себя LPC-коэффициент , основной тон и коэффициент усиления основного тона.
В этом варианте осуществления системa получает сведения о том, активирован или деактивирован модуль LTP, путем определения, больше ли произведение эмпирического коэффициента и энергии остаточных сигналов LPC, которые не были подвергнуты обработки LTP, чем энергия остаточных сигналов LTP, которые были подвергнуты обработке LTP. Когда речевые сигналы менее периодичны, обработка LTP практически не дает эффекта, и модуль LTP деактивируется. Следовательно, нет необходимости учитывать сигналы вклада LTP, Потребляется меньше битов, и эффективность сжатия кодера повышается.
Фиг.4 представляет собой схему последовательности операций способа декодирования сигнала согласно первому варианту осуществления настоящего раскрытия. Этот способ включает в себя следующие этапы:
Этап 301: Декодировать принятый битовой поток, чтобы получить остаточный сигнал предсказания первой области.
Этап 302: Декодировать первую выборочную точку сигналов текущего кадра.
Последовательно выполнить этапы 303-306 декодирования для каждой текущей выборочной точки начиная со второй выборочной точки сигналов текущего кадра.
Этап 303: Вычислить сигнал вклада LP и остаточный сигнал LP текущей выборочной точки согласно сигналу второй области этой декодированной выборочной точки.
Этап 304: Получить сигнал вклада второй области согласно упомянутому сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, или получать сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки.
Этап 305: Преобразовать упомянутый сигнал вклада второй области в сигнал вклада первой области, и декодировать сигнал первой области текущей выборочной точки согласно остаточному сигналу предсказания первой области и сигналу вклада первой области.
Этап 306: Преобразовать сигнал первой области текущей выборочной точки в сигнал второй области.
В этом варианте осуществления последующий процесс декодирования выполняется адаптивным образом в соответствии с долгосрочным флагом: когда долгосрочный флаг является вторым флагом, нет необходимости учитывать сигналы вклада LTP, что упрощает процесс декодирования.
Фиг.5 представляет собой схему последовательности операций способа декодирования сигнала согласно второму варианту осуществления настоящего раскрытия. Способ в этом варианте осуществления может соответствовать способу кодирования сигнала согласно второму варианту осуществления, и определения терминов и выражения параметров в этом варианте осуществления такие же, как во втором варианте осуществления. Способ в этом варианте осуществления включает в себя следующие этапы:
Этап 401: Декодировать принятый битовой поток, чтобы получить остаточный сигнал предсказания нелинейной области и долгосрочный флаг.
a
a
j
j
В некоторых вариантах осуществления, если упомянутый битовой поток включает в себя битовой поток, кодированный посредством этого долгосрочного флага, битовой поток может быть закодирован так, чтобы получить долгосрочный флаг. В частности, если долгосрочный флаг Tflag равен 0, то битовой поток, сверх того, включает в себя LPC-коэффициент ; если Tflag равен 1, то битовой поток, сверх того, включает в себя LPC-коэффициент ,основной тон и коэффициент усиления основного тона. Если битовой поток не содержит коэффициента усиления, то способ в этом варианте осуществления, сверх того, включает в себя: адаптивный выбор коэффициента усиления основного тона согласно наилучшему основному тону.
d
(i)
Если  означает остаточный сигнал предсказания нелинейной области, то применимо следующее уравнение:
x(i)
Следовательно, сигнал  нелинейной области может быть получен из формулы (13) после декодирования:
Этап 402: Декодировать первую выборочную точку сигналов текущего кадра.
x(0)=d(0)
Первая выборочная точка не была подвергнута обработке LPC. Следовательно, сигнал вклада нелинейной области упомянутой первой выборочной точки равен x'(0)=0. Как видно из формулы (13), первая выборочная точка нелинейной области может быть декодирована без потерь, то есть, .
y
res(0)
Для последующего процесса декодирования этот вариант осуществления должен сохранить сигнал (0) PCM-области первой выборочной точки и остаточный LPC-сигнал (то есть, остаточный сигнал LP), где:
A2PCM[]
Функция относится к преобразованию сигнала A-характеристики в сигнал PCM-области.
В некоторых вариантах осуществления, в сфере кодирования с переменой длиной, принимаемый битовой поток декодируется так, чтобы получить остаточный сигнал предсказания первой области без получения долгосрочного флага, который являет собой второй флаг. Когда результат декодирования включает в себя долгосрочный флаг, который является первым флагом, это указывает на то, что модуль LTP активирован. В противном случае модуль LTP деактивирован. Система получает сигнал вклада второй области согласно упомянутому сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, или система получает сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки.
Этап 403: Определить, равна ли величина долгосрочного флага первому флагу. При положительном результате перейти к этапам 404-405, в противном случае - перейти к этапам 406-408.
Модуль LTP может находиться в двух состояниях: активированном (Tflag=1) и деактивированном (Tflag=0). Чтобы определить, активирован ли модуль LTP, на этом этапе система определяет, равен ли 1 флаг Tflag. Альтернативно, система может определить, равен ли 0 флаг Tflag. Разные состояния модуля LTP соответствуют разных последующим процессам декодирования.
После завершения этапа 403 следующий процесс декодирования повторяется рекурсивным образом. Следующие этапы декодирования выполняются последовательно для каждой текущей выборочной точки, начиная со второй выборочной точки сигналов текущего кадра.
В некоторых вариантах осуществления, если сторона кодера не выводит коды долгосрочного флага, который является вторым флагом, то система определяет, получен ли первый флаг в качестве долгосрочного флага. При положительном результате определения выполняются этапы 404-405, в противном случае выполняются этапы 406-408.
T
+M-1
1
Этап 404: Декодировать первые выборки за исключением первой выборочной точки.
Способ в этом варианте осуществления соответствует способу кодирования сигнала во втором варианте осуществления. То есть, в процессе кодирования первые M выборок текущего кадра не участвуют в обработке LTP. Следовательно, в этом варианте осуществления первые M выборок и выборке в буфере декодируются в первую очередь. Фиг.6 представляет собой схему последовательности операций этапа 404 в способе декодирования сигнала согласно второму варианту осуществления настоящего раскрытия. Этап 404, сверх того, может включать в себя следующие этапы:
y'(i)
y(i)
Этап 4041: Вычислить сигнал  вклада LPC текущей выборочной точки согласно сигналу PCM-области декодированной выборочной точки, согласно формуле (15):
y(i)=
когда i≤0, 0.
Например, если текущая выборочная точка является второй выборочной точкой сигналов текущего кадра, то декодированная выборочная точка является первой выборочной точкой сигналов текущего кадра. В этом случае результат декодирования на этапе 402 служит как эталонная величина.
y''(i)
y'(i)
T
+M
y''(i)=y'(i)
y''(i)
.
1
Этап 4042: Получить сигнал вклада PCM-области согласно сигналу вклада LPC для текущей выборки. Поскольку первые  выборки не участвуют в обработке LTP, . То есть, величина сигнала вклада LPC текущей выборочной точки назначается сигналу  вклада PCM-области
y''(i)
x'(i)
Этап 4043: Преобразовать сигнал вклада PCM-области в сигнал вклада нелинейной области:
x(i)
x'(i)
d(i)
.
Этап 4044: Получить сигнал нелинейной области посредством формулы (13) согласно сигналу вклада нелинейной области и остаточному сигналу  предсказания нелинейной области
x(i)
y(i)
res(i)
y(i)
y'(i)
Этап 4045: В целях декодирования последующих выборок преобразовать сигнал  нелинейной области в сигнал PCM-области и получить остаточный сигнал LPC согласно сигналу  PCM-области и сигналу  вклада LPC.
1
Этап 405: Декодировать все сигналы подкадра кроме первых T+M выборок.
Фиг.7 представляет собой схему последовательности операций этапа 405 в способе декодирования сигнала согласно второму варианту осуществления настоящего раскрытия. Этап 405 может включать в себя следующие этапы:
y'(i)
y(i)
Этап 4051: Вычислить сигнал  вклада LPC текущей выборочной точки согласно сигналу PCM-области декодированной выборочной точки, согласно формуле (18):
y(i)=
когда i≤0, 0.
1
Например, если текущая выборочная точка является первой выборочной точкой первого подкадра, декодированными выборками являются первые T+M выборок. В этом случае результат декодирования на этапе 404 служит как эталонная величина.
y''(i)
y'(i)
Этап 4052: Вычислить сигнал вклада PCM-области согласно сигналу вклада LPC для текущей выборки согласно формуле (19):
y''(i)
x'(i)
Этап 4053: Преобразовать сигнал вклада PCM-области в сигнал вклада нелинейной области:
x(i)
x'(i)
d(i)
.
Этап 4054: Получить сигнал нелинейной области посредством формулы (13) согласно сигналу вклада нелинейной области и остаточному сигналу  предсказания нелинейной области
x(i)
y(i)
res(i)
y(i)
y'(i)
Этап 4055: В целях декодирования последующих выборок преобразовать сигнал  нелинейной области в сигнал PCM-области и получить остаточный сигнал LPC согласно сигналу  PCM-области и сигналу  вклада LPC.
После завершения декодирования текущей выборочной точки, в процессе декодирования последующих выборок остаточный сигнал LPC, полученный на этапе 4055, используется для вычисления сигналов вклада PCM-области для последующих выборок.
y'(i)
y(i)
Этап 406: Вычислить сигнал  вклада LPC текущей выборочной точки согласно сигналу PCM-области декодированной выборочной точки, согласно формуле (22):
y(i)=
когда i≤0, 0.
y'(i)
x'(i)
Этап 407: Использовать сигнала вклада LPC как сигнал вклада PCM-области, и преобразовать этот сигнал вклада PCM-области в сигнал вклада нелинейной области.
y''(i)=y'(i),
y'(i)
x'(i)
Поскольку модуль LTP деактивируется и в обработке LTP не участвуют выборочные точки сигналов текущего кадра,  и величина может быть напрямую преобразована в .
x(i)
x'(i)
d(i)
.
Этап 408: Получить сигнал нелинейной области посредством формулы (13) согласно сигналу вклада нелинейной области и остаточному сигналу  предсказания нелинейной области
В этом варианте осуществления последующий процесс декодирования выполняется адаптивным образом в соответствии с долгосрочным флагом: когда долгосрочный флаг является вторым флагом, нет необходимости учитывать сигналы вклада LTP, чтобы упрощает процесс декодирования.
Фиг.8 представляет собой иллюстрацию структуры устройства кодирования сигнала согласно одному варианту осуществления настоящего раскрытия. Это устройство включает в себя: преобразующий модуль 11, модуль 12 LP, модуль 13 LTP, модуль 14 принятия решений, модуль 15 предсказания второй области, модуль 16 остатка предсказания первой области и модуль 17 вывода. Преобразующий модуль 11 приспособлен для того, чтобы: преобразовывать сигнал первой области в сигнал второй области и преобразовывать сигнал вклада второй области в сигнал вклада первом области. Модуль 12 LP приспособлен для того, чтобы выполнять LP-обработку для упомянутого сигнала второй области. Модуль 13 LTP приспособлен для того, чтобы выполнять LTP-обработку для упомянутого сигнала второй области. Модуль 14 принятия решений приспособлен для того, чтобы получать долгосрочный флаг согласно критериям для принятия решения. Модуль 15 предсказания второй области приспособлен для того, чтобы: получать сигнал вклада второй области согласно результату обработки LP и результату обработки LTP, когда упомянутый долгосрочный флаг является первым флагом, и получать сигнал вклада второй области согласно результату обработки LP, когда упомянутый долгосрочный флаг является вторым флагом. Модуль 16 остатка предсказания первой области приспособлен для того, чтобы вычислять остаточный сигнал предсказания первой области согласно упомянутому сигналу вклада первой области. Модуль 17 вывода приспособлен для того, чтобы выводить битовой поток, который включает в себя остаточный сигнал предсказания первой области.
Вышеупомянутый результат обработки LP может включать в себя коэффициент LP, сигнал вклада LP и остаточные сигналы LP. Вышеупомянутый битовой поток может, сверх того, включать в себя коэффициент LP.
Сверх того, модуль 13 LTP может выполнять поиск основного тона для остаточных сигналов LP, чтобы получить наилучший основной тон, либо наилучший основной тон и коэффициент усиления основного тона остаточных сигналов LP, и получить сигналы вклада LTP. Результат обработки LTP может включать в себя наилучший основной тон, либо наилучший основной тон и коэффициент усиления основного тона, сигналы вклада LTP и остаточные сигналы LTP.
Модуль 15 предсказания второй области приспособлен для того, чтобы: использовать сумму остаточного сигнала LP и сигнала вклада LTP как сигнал вклада второй области, когда долгосрочный флаг являет собой первый флаг, или использовать сигнал вклада LP как сигнал вклада второй области, когда долгосрочный флаг являет собой второй флаг.
Модуль 14 принятия решений может принимать решение согласно двум критериям, то есть, определить, больше ли произведение эмпирического коэффициента и энергии остаточного сигнала LP, чем энергия остаточного сигнала LTP, либо определить, больше ли произведение эмпирического коэффициента и суммы абсолютных величин остаточных сигналов LP, чем сумма абсолютных величин остаточных сигналов LTP. При положительном результате определения, модуль 14 принятия решений назначает величину первого флага долгосрочному флагу. В противном случае модуль 14 принятия решений назначает величину второго флага долгосрочному флагу.
Устройство в этом варианте осуществления может, сверх того, включать в себя модуль коэффициента усиления основного тона, который выбирает коэффициент усиления основного тона адаптивным образом согласно полученному наилучшему основному тону, и он, сверх того, может включать в себя модуль кадрирования, который выполняет кадрирование для остаточных сигналов LP.
В этом варианте осуществления последующий процесс кодирования выполняется адаптивным образом согласно долгосрочному флагу. Если долгосрочный флаг является вторым флагом, то нет необходимости учитывать результат обработки LTP, в результате чего повышается эффективность сжатия кодека.
Фиг.9 представляет собой иллюстрацию структуры устройства декодирования сигнала согласно одному варианту осуществления настоящего раскрытия. Это устройство включает в себя: модуль 21 декодирования битового потока, модуль 22 декодирования первой выборочной токи, модуль 23 LP, модуль 24 предсказания второй области, модуль 25 преобразования, модуль 26 декодирования текущей выборочной точки и модуль 27 остатка LP. Модуль 21 декодирования битового потока приспособлен для того, чтобы декодировать принимаемый битовой поток для получения остаточного сигнала предсказания первой области. Модуль 22 декодирования первой выборочной точки приспособлен для того, чтобы декодировать первую выборочную точку сигналов текущего кадра. Модуль 23 LP приспособлен для того, чтобы вычислять сигнал вклада LP текущей выборочной точки согласно сигналу второй области упомянутой декодированной выборочной точки. Модуль 24 предсказания второй области приспособлен для того, чтобы: получать сигнал вклада второй области согласно упомянутому сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, или получать сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки. Преобразующий модуль 25 приспособлен для того, чтобы: преобразовывать упомянутый сигнал вклада второй области в сигнал вклада первом области, и преобразовывать сигнал вклада первой области упомянутой текущей выборочной точки в сигнал второй области. Модуль 26 декодирования текущей выборочной точки приспособлен для того, чтобы декодировать упомянутый сигнал первой области текущей выборочной точки согласно упомянутому остаточному сигналу предсказания первой области и упомянутому сигналу вклада первой области. Модуль 27 остатка LP приспособлен для того, чтобы получать остаточный сигнал LP согласно упомянутому сигналу второй области и упомянутому сигналу вклада LP.
Сверх того, когда долгосрочный флаг являет собой первый флаг и текущая выборочная точка участвует в обработке LTP в кодере, модуль 24 предсказания второй области использует сумму сигнала вклада LP и сигнала вклада LTP как сигнал вклада второй области; когда долгосрочный флаг являет собой первый флаг и текущая выборочная точка не участвует в обработке LTP в кодере, модуль 24 предсказания второй области использует сигнал вклада LP как сигнал вклада второй области.
Устройство в этом варианте осуществления может, сверх того, включать в себя модуль коэффициента усиления основного тона, который адаптивно выбирает коэффициент усиления основного тона в соответствии с полученным наилучшим основным тоном.
В этом варианте осуществления последующий процесс декодирования выполняется адаптивным образом в соответствии с долгосрочным флагом: когда долгосрочный флаг является вторым флагом, нет необходимости учитывать сигналы вклада LTP, чтобы упрощает процесс декодирования.
Фиг.10 представляет собой иллюстрацию структуры системы кодирования/декодирования сигнала согласно одному варианту осуществления настоящего раскрытия. Эта система включает в себя устройство 31 кодирования сигнала и устройство 32 декодирования сигнала.
Устройство 31 кодирования сигнала приспособлено для того, чтобы: преобразовывать сигнал первой области в сигнал второй области;
выполнять обработку LP и обработку LTP для упомянутого сигнала второй области;
получать долгосрочный флаг согласно критериям решения;
получать сигнал вклада второй области в соответствии с результатом обработки LP и результатом обработки LTP, когда долгосрочный флаг являет собой первый флаг;
получать сигнал вклада второй области в соответствии с результатом обработки LP, когда долгосрочный флаг являет собой второй флаг;
преобразовать сигнал вклада второй области в сигнал вклада первой области и вычислять остаточный сигнал предсказания первой области; и
выводить битовой поток, который включает в себя упомянутый остаточный сигнал предсказания первой области.
Устройство 32 декодирования сигнала приспособлено для того, чтобы: декодировать принятый битовой поток, чтобы получить остаточный сигнал предсказания первой области;
декодировать первую выборочную точку сигналов текущего кадра;
последовательно выполнять следующие этапы декодирования для каждой текущей выборочной точки начиная со второй выборочной точки сигналов текущего кадра:
вычислить сигнал вклада LP текущей выборочной точки согласно сигналу второй области упомянутой декодированной выборочной точки;
получить сигнал вклада второй области согласно сигналу вклада LP и сигналу вклада LTP, если полученный долгосрочный флаг является первым флагом, причем упомянутый сигнал вклада LTP получается согласно остаточному сигналу LP упомянутой декодированной выборочной точки;
получить сигнал вклада второй области согласно сигналу вклада LP, если полученный долгосрочный флаг не является первым флагом;
преобразовать упомянутый сигнал вклада второй области в сигнал вклада первой области, и декодировать сигнал первой области текущей выборочной точки согласно остаточному сигналу предсказания первой области и сигналу вклада первой области; и
преобразовать упомянутый сигнал первой области текущей выборочной точки в сигнал второй области, и получить остаточный сигнал LP согласно упомянутому сигналу второй области и упомянутому сигналу вклада LP.
Сверх того, устройство 31 кодирования сигнала в этом варианте осуществления может представлять собой любое устройство кодирования сигнала, описанное в вышеперечисленных вариантах осуществления; и устройство 32 декодирования сигнала может представлять собой любое устройство декодирования сигнала, описанное в вышеперечисленных вариантах осуществления.
Специалистам в данной области техники будет очевидно, что все или часть этапов вышеупомянутых вариантов осуществления может быть выполнена посредством аппаратного обеспечения под управлением программы. Программа может храниться на машиночитаемом носителе. При исполнении эта программа выполняет этапы вышеописанных вариантов осуществления способа. Упомянутый машиночитаемый носитель может представлять собой любой носитель для хранения программных кодов, например, ПЗУ, ОЗУ, магнитный диск или компакт-диск.
Несмотря на то, что настоящее раскрытие было описано со ссылкой на несколько вариантов осуществления, оно не ограничивается такими вариантами осуществления. Очевидно, что специалисты в данной области техники могут реализовать различные модификации и вариации настоящего раскрытия в рамках его сущности и объема. Настоящее раскрытие предназначено для охвата всех подобных модификаций и вариаций при условии, что они входят в объем охраны, определенный следующей формулой изобретения или ее эквивалентами.