Область техники
Настоящее раскрытие относится к устройствам комбинированной обновляющей кодовой книги и соответствующим способам для использования в кодере и декодере линейного предсказания с кодовым возбуждением (CELP).
Уровень техники
Модель CELP широко используется, чтобы кодировать звуковые сигналы, например речь, при низких скоростях передачи битов. В CELP звуковой сигнал моделируется как возбуждение, обрабатываемое посредством изменяющегося со временем синтезирующего фильтра. Хотя изменяющийся со временем синтезирующий фильтр может иметь много форм, часто используется линейный рекурсивный фильтр с одними полюсами. Инверсия этого изменяющегося со временем синтезирующего фильтра, которая является, таким образом, линейным нерекурсивным фильтром со всеми нулями, называется фильтром "краткосрочного предсказания" (STP), так как он содержит коэффициенты, вычисленные таким образом, чтобы минимизировать ошибку предсказания между выборкой s[i] звукового сигнала и взвешенной суммой предыдущих выборок s[i-1], s[i-2], .., s[i-m] звукового сигнала, где m является порядком фильтра. Другое название, часто используемое для фильтра STP, - это фильтр "линейного предсказания" (LP).
Если остаток ошибки предсказания из фильтра LP используется как ввод изменяющегося со временем синтезирующего фильтра с подходящим начальным состоянием, вывод синтезирующего фильтра является исходным звуковым сигналом, таким как речь. При низких скоростях передачи битов не является возможным передавать точный остаток ошибки предсказания. Соответственно, остаток ошибки предсказания кодируется, чтобы формировать приближение, называемое возбуждением. В традиционных кодерах CELP возбуждение кодируется как сумма двух вкладов; первый вклад создается из так называемой адаптивной кодовой книги, и второй вклад создается из так называемой обновляющей или фиксированной кодовой книги. Адаптивная кодовая книга является, по существу, блоком выборок из прошлого возбуждения с подходящим усилением. Обновляющая или фиксированная кодовая книга заполняется кодовыми векторами, имеющими задачу кодирования остатка ошибки предсказания из фильтра LP и адаптивной кодовой книги.
Обновляющая или фиксированная кодовая книга может проектироваться с использованием многих структур и ограничений. Однако в современных системах речевого кодирования часто используется модель алгебраического линейного предсказания с кодовым возбуждением (ACELP). ACELP является хорошо известной специалистам в области техники речевого кодирования и, соответственно, не будет описываться подробно в настоящем описании. В целом, каждый из кодовых векторов в обновляющей кодовой книге ACELP содержит несколько ненулевых импульсов, которые могут рассматриваться как принадлежащие разным чередующимся записям (или трекам, «track») положений импульсов. Количество записей и число ненулевых импульсов на запись обычно зависят от скорости передачи битов обновляющей кодовой книги ACELP. Задача кодера ACELP состоит в поиске положений и знаков импульсов для минимизации критерия ошибок. В ACELP этот поиск выполняется с использованием процедуры анализа посредством синтеза, в которой критерий ошибок вычисляется не в области возбуждения, но скорее в области синтеза, т.е. после того, как данный кодовый вектор ACELP был бы отфильтрован посредством изменяющегося со временем синтезирующего фильтра. Были предложены эффективные алгоритмы поиска ACELP, чтобы обеспечивать возможность быстрого поиска даже с очень большими обновляющими кодовыми книгами ACELP.
Фиг. 1 - это схематичная блок-схема, показывающая главные компоненты и принцип работы декодера 100 ACELP. Как показано на фиг. 1 декодер 100 ACELP принимает декодированные параметры 101 основного тона и декодированные параметры 102 ACELP. Декодированные параметры 101 основного тона включают в себя задержку основного тона, применяемую к адаптивной кодовой книге 103, чтобы создать адаптивный кодовый вектор. Как показано выше, адаптивная кодовая книга 103 является, по существу, блоком выборок из прошлого возбуждения, а адаптивный кодовый вектор находится посредством интерполяции прошлого возбуждения с задержкой основного тона и использованием уравнения, включающего в себя прошлое возбуждение. Декодированные параметры основного тона также включают в себя усиление основного тона, применяемое к адаптивному кодовому вектору из адаптивной кодовой книги 103 с использованием усилителя 112, чтобы сформировать первый вклад 113 адаптивной кодовой книги. Адаптивная кодовая книга 103 и усилитель 112 формируют структуру адаптивной кодовой книги. Декодированные параметры ACELP содержат параметры обновляющей кодовой книги ACELP, включающие в себя индекс кодовой книги, применяемый к обновляющей кодовой книге 104, чтобы выводить, соответствующий обновляющий кодовый вектор. Декодированные параметры ACELP также содержат усиление обновляющей кодовой книги, применяемое к корректировочному кодовому вектору из кодовой книги 104 посредством усилителя 105, чтобы формировать второй вклад 114 обновляющей кодовой книги. Обновляющая кодовая книга 104 и усилитель 105 формируют структуру 110 обновляющей кодовой книги. Полное возбуждение 115 затем формируется посредством суммирования в модуле 106 суммирования первого вклада 113 адаптивной кодовой книги и второго вклада 114 обновляющей кодовой книги. Полное возбуждение 115 затем обрабатывается посредством синтезирующего фильтра 107 LP, чтобы создавать синтез 111 исходного звукового сигнала, например речи. Память адаптивной кодовой книги 103 обновляется для следующего кадра с использованием возбуждения текущего кадра (стрелка 108); адаптивная кодовая книга 103 затем сдвигается к обработке декодированных параметров основного тона следующего подкадра (стрелка 109). Несколько модификаций могут делаться для базовой модели CELP, описанной ранее. Например, сигнал возбуждения может обрабатываться на входе синтезирующего фильтра, чтобы усиливать сигнал. Также на выходе синтезирующего фильтра может применяться постобработка. Дополнительно, усиления адаптивной и алгебраической кодовых книг могут квантоваться совместно.
Хотя кодовые книги ACELP являются очень эффективными для кодирования речи на низких скоростях передачи битов, они могут не иметь такого же быстрого усиления качества при увеличении размера кодовой книги ACELP как другие подходы, такие как кодирование с преобразованием и векторное квантование. При измерении в дБ/битах/выборках такое усиление при более высоких скоростях передачи битов (например, скоростях передачи битов, более высоких, чем 16 килобит/с), получаемое за счет использования большего показателя по числу ненулевых импульсов на запись в обновляющей кодовой книге ACELP, не является настолько большим, как усиление (в дБ/битах/выборках) в кодировании с преобразованием и в векторном квантовании. Это можно видеть, если учесть, что ACELP, по существу, кодирует звуковой сигнал как сумму задержанных и масштабированных импульсных характеристик синтезирующего фильтра. При более низких скоростях передачи битов (например, скоростях передачи битов, более низких, чем 12 килобит/с) способ ACELP быстро захватывает существенные компоненты возбуждения. Но при более высоких скоростях передачи битов, полезным является более высокая гранулярность и, в частности, более хорошее управление тем, как дополнительные биты расходуются по разным частотным компонентам сигнала.
Поэтому имеется необходимость в структуре обновляющей кодовой книги, более хорошо адаптированной для использования при более высоких скоростях передачи битов.
Раскрытие изобретения
Более конкретно, настоящее раскрытие относится к:
способу кодирования комбинированной обновляющей кодовой книги, содержащему: предварительное квантование первого остатка возбуждения адаптивной кодовой книги, причем предварительное квантование выполняется в области преобразования; и поиск обновляющей кодовой книги CELP в ответ на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги;
способу декодирования комбинированной обновляющей кодовой книги, содержащему: деквантование предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем деквантование предварительно квантованных параметров кодирования содержит вычисление обратного преобразования параметров кодирования; и применение параметров обновляющей кодовой книги CELP к структуре обновляющей кодовой книги CELP, чтобы создавать второй обновляющий вклад возбуждения;
устройству кодирования комбинированной обновляющей кодовой книги, содержащему: модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги, причем модуль предварительного квантования работает в области преобразования; и модуль обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги;
кодеру CELP, содержащему вышеупомянутое устройство кодирования комбинированной обновляющей кодовой книги;
комбинированной обновляющей кодовой книге, содержащей: модуль деквантования предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем модуль деквантования содержит модуль вычисления обратного преобразования, реагирующий на параметры кодирования; и структуру обновляющей кодовой книги CELP, реагирующую на параметры обновляющей кодовой книги CELP, чтобы создавать второй обновляющий вклад возбуждения; и
декодеру CELP, содержащему вышеописанную комбинированную обновляющую кодовую книгу.
Предшествующие и другие признаки устройств комбинированной обновляющей кодовой книги и соответствующих способов станут более ясными при чтении последующего неограничительного описания их иллюстративных вариантов осуществления, данных только в качестве примера со ссылкой на сопровождающие чертежи.
Краткое описание чертежей
В прилагаемых чертежах:
Фиг. 1 - это схематическая блок-схема декодера CELP, содержащего структуры адаптивной и обновляющей кодовых книг и использующего, в этом неограничивающем примере, ACELP;
Фиг. 2 - это схематическая блок-схема декодера CELP, содержащего комбинированную обновляющую кодовую книгу, сформированную посредством первой ступени декодирования, работающей в частотной области, и второй ступени декодирования, работающей во временной области, с использованием, например, обновляющей кодовой книги ACELP;
Фиг. 3 - это схематическая блок-схема части кодера CELP с использованием устройства кодирования комбинированной обновляющей кодовой книги;
Фиг. 4 - это график, показывающий пример частотной характеристики для фильтра предыскажений F(z), на котором динамика фильтра предыскажений показана как разность (в дБ) между наименьшей и наибольшей амплитудами его частотной характеристики.
Осуществление изобретения
Как показано в декодере 200 на фиг. 2, структура обновляющей кодовой книги CELP, например структура 110 обновляющей кодовой книги ACELP с фиг. 1, модифицируется так, что на более низких скоростях передачи битов сохраняются преимущества и эффективность кодирования ACELP, в то время как на более высоких скоростях передачи битов обеспечивается более хорошая производительность и масштабируемость. Конечно, здесь может использоваться и некоторая отличающаяся от ACELP модель CELP.
Более конкретно, фиг. 2 показывает гибкую и масштабируемую "комбинированную обновляющую кодовую книгу" 201, полученную в результате модификации структуры 110 обновляющей кодовой книги ACELP по фиг. 1. Как проиллюстрировано, комбинированная обновляющая кодовая книга 201 содержит комбинацию двух ступеней: первой ступени 202 декодирования, работающей в области преобразования, и второй ступени 203 декодирования, использующей кодовую книгу ACELP во временной области.
Перед дальнейшим описанием декодера 200 по фиг. 2 будет описан кодер 300 ACELP, в частности, со ссылкой на фиг. 3.
Фильтрация линейного предсказания
Как показано на фиг. 3, кодер 300 ACELP содержит фильтр 301 LP, обрабатывающий входной звуковой сигнал 302, подлежащий кодированию. Фильтр 301 LP может представлять, например в z-преобразовании, следующую передаточную функцию:
где ai представляет коэффициенты линейного предсказания (коэффициенты LP) с a0=1, M является количеством коэффициентов линейного предсказания (порядок анализа LP). Коэффициенты LP ai определяются в анализаторе LP (не показан) кодера 300 ACELP.
Фильтр 301 LP создает на своих выходах остаток 303 LP.
Поиск адаптивной кодовой книги
Сигнал 303 остатка LP из фильтра 301 LP используется в модуле 304 поиска адаптивной кодовой книги кодера 300 ACELP, чтобы находить вклад 305 адаптивной кодовой книги. Модуль 304 поиска адаптивной кодовой книги также создает параметры 320 основного тона, передаваемые в декодер 200 (фиг. 2), включающие в себя задержку основного тона и усиление основного тона. Поиск адаптивной кодовой книги, также известный как поиск основного тона в замкнутом контуре, обычно включает в себя вычисление так называемого целевого сигнала и нахождение упомянутых параметров посредством минимизации ошибки между исходным сигналом и сигналом синтеза в перцептуально взвешенной области. Поиск адаптивной кодовой книги кодера ACELP в других отношениях предполагается хорошо известным специалистам в данной области техники и, соответственно, не будет дополнительно описываться в настоящем описании.
Кодер 300 ACELP также содержит устройство кодирования комбинированной обновляющей кодовой книги, включающее в себя первую ступень 306 кодирования, работающую в области преобразования и называемую модулем предварительного квантования, и вторую ступень 307 кодирования, работающую во временной области и использующую, например, ACELP. Как проиллюстрировано на фиг. 3 в иллюстративном варианте осуществления, первая ступень, или модуль 306 предварительного квантования, содержит фильтр предыскажений F(z) 308, который вводит предыскажение низких частот, модуль 309 вычисления дискретного косинусного преобразования (DCT) и модуль алгебраического векторного квантования (AVQ) 310 (который включает в себя глобальное усиление AVQ). Вторая ступень 307 содержит модуль 311 поиска обновляющей кодовой книги ACELP. Следует отметить, что использование DCT и AVQ является только примерами; здесь могут использоваться и другие преобразования, а также могут использоваться другие способы для квантования коэффициентов преобразования.
Как описано выше, модуль 306 предварительного квантования может использовать, например, DCT как частотное представление звукового сигнала, и модуль алгебраического векторного квантования (AVQ), чтобы квантовать и кодировать DCT коэффициенты в частотной области. Модуль 306 предварительного квантования используется больше как ступень предварительной обработки, нежели как модуль квантования первой ступени, особенно при более низких скоростях передачи битов. Более конкретно, с использованием модуля 306 предварительного квантования модуль 311 поиска обновляющей кодовой книги ACELP (вторая ступень 307 кодирования) применяется ко второму остатку 312 возбуждения (фиг. 3) с более регулярной спектральной динамикой, чем у первого остатка 313 возбуждения адаптивной кодовой книги. В этом смысле, модуль 306 предварительного квантования поглощает большую динамику сигнала по времени и частоте, частично вследствие несовершенной работы поиска адаптивной кодовой книги, и оставляет поиску обновляющей кодовой книги ACELP задачу минимизации ошибки кодирования во взвешенной области LP (в обычном цикле анализа посредством синтеза, выполняемом в кодере 300 ACELP и хорошо известном специалистам в области техники речевого кодирования).
Создание остаточного сигнала 313 основного тона
Кодер 300 ACELP содержит модуль 314 вычитания для вычитания вклада 305 адаптивной кодовой книги из сигнала 303 остатка LP, чтобы создавать вышеупомянутый первый остаток 313 возбуждения адаптивной кодовой книги, который вводится в модуль 306 предварительного квантования. Остаток возбуждения адаптивной кодовой книги r1[n] задается посредством
где r[n] является остатком LP, gp является усилением адаптивной кодовой книги, v[n] является возбуждением адаптивной кодовой книги (обычно интерполированным прошлым возбуждением).
Предварительное квантование
Далее со ссылкой на фиг. 3 будет описываться операция модуля 306 предварительного квантования.
Фильтрация предыскажения
В данном подкадре, выровненном с подкадром поиска обновляющей кодовой книги ACELP во второй ступени 307 кодирования, первый остаток 313 возбуждения адаптивной кодовой книги (фиг. 3) предварительно искажается с помощью фильтра предыскажений F(z) 308. Фиг. 4 показывает пример частотной характеристики фильтра предыскажений F(z) 308, в котором динамика фильтра предыскажений показана как разность (в дБ) между наименьшей и наибольшей амплитудами частотной характеристики. Иллюстративный фильтр предыскажений F(z) задается посредством
что соответствует разностному уравнению
где x[n] является первым остатком 313 возбуждения адаптивной кодовой книги, введенным в фильтр предыскажений F(z) 308, y[n] является предварительно искаженным первым остатком возбуждения адаптивной кодовой книги, и коэффициент α управляет уровнем предыскажения. В этом неограничивающем примере, если значение α устанавливается между 0 и 1, фильтр предыскажений F(z) 308 будет иметь большее усиление на более низких частотах и более низкое усиление на более высоких частотах, что будет создавать предварительно искаженный первый остаток возбуждения адаптивной кодовой книги y[n] с усиленными более низкими частотами. Фильтр предыскажений F(z) 308 применяет спектральный наклон к первому остатку 313 возбуждения адаптивной кодовой книги, чтобы усиливать более низкие частоты этого остатка.
Вычисление DCT
Модуль 309 вычисления применяет, например, DCT к предварительно искаженному первому остатку возбуждения адаптивной кодовой книги y[n] из фильтра предыскажений F(z) 308 с использованием, например, прямоугольного не перекрывающегося окна. В этом неограничивающем примере используется DCT-II, которое определяется как
Алгебраическое векторное квантование (AVQ)
Модуль квантования, например модуль квантования AVQ 310, квантует и кодирует коэффициенты DCT в частотной области Y[k] (преобразованный по DCT, подвергнутый компенсации предыскажений, первый остаток возбуждения адаптивной кодовой книги) из модуля 309 вычисления. Пример варианта осуществления AVQ может быть найден в патенте США 7,106,228. Квантованные и кодированные коэффициенты 315 DCT в частотной области из AVQ 310 передаются в качестве предварительно квантованных параметров в декодер (фиг. 2). Например, AVQ 310 может создавать глобальное усиление и масштабированные квантованные коэффициенты DCT, в качестве предварительно квантованных параметров.
В зависимости от скорости передачи битов устанавливается целевое отношение сигнала к шуму (SNR) для AVQ 310 (AVQ_SNR (фиг. 4)). Чем более высока скорость передачи битов, тем более высоким устанавливается это SNR. Глобальное усиление AVQ 310 затем устанавливается так, чтобы квантовались только блоки коэффициентов DCT со средней амплитудой, более большой, чем spectral_max - AVQ_SNR, где spectral_max является максимальной амплитудой частотной характеристики фильтра предыскажений F(z) 308. Другие неквантованные коэффициенты DCT устанавливаются равными 0. В другом подходе количество квантованных блоков коэффициентов DCT зависит от бюджета скорости передачи битов; например, AVQ может кодировать коэффициенты преобразования, относящиеся только к более низким частотам, в зависимости от доступного битового бюджета.
Создание сигнала 312 остатка возбуждения
Вычисление обратного DCT
Чтобы получить сигнал 312 остатка возбуждения для второй ступени 307 кодирования (поиск обновляющей кодовой книги ACELP в этом примере; здесь также может использоваться и другая структура CELP), AVQ-квантованные коэффициенты 315 DCT из AVQ 310 подвергаются обратному DCT преобразованию в модуле 316 вычисления.
Фильтрация компенсации предыскажений
Затем обратно преобразованные по DCT коэффициенты 315 обрабатываются посредством фильтра компенсации предыскажений 1/F(z) 317, чтобы получать вклад 318 во временной области из модуля 306 предварительного квантования. Фильтр компенсации предыскажений 1/F(z) 317 имеет передаточную функцию, обратную к фильтру предыскажений F(z) 308. В неограничивающем примере для фильтра предыскажений F(z) 308, данном выше, разностное уравнение фильтра компенсации предыскажений 1/F(z) = 1 - az-1 задается посредством:
где в случае фильтра компенсации предыскажений x[n] является предварительно искаженным квантованным остатком возбуждения (из модуля 316 вычисления), y[n] является квантованным остатком возбуждения с компенсированным предыскажением (вклад 318 временной области), и коэффициент α был определен выше.
Вычитание для создания второго остатка возбуждения
В заключение, модуль 319 вычитания вычитает остаток возбуждения с компенсированным предыскажением y[n] (вклад 318 во временной области) из вклада 305 адаптивной кодовой книги, найденного посредством поиска адаптивной кодовой книги в текущем подкадре, чтобы произвести второй остаток 312 возбуждения.
Поиск обновляющей кодовой книги ACELP
Второй остаток 312 возбуждения кодируется модулем 311 поиска обновляющей кодовой книги ACELP на второй ступени 307 кодирования. Поиск обновляющей кодовой книги кодера ACELP предполагается, в другом отношении, хорошо известным специалистам в данной области техники и, соответственно, не будет дополнительно описываться в настоящем описании. Параметры 333 обновляющей кодовой книги ACELP на выходе модуля 311 вычисления поиска обновляющей кодовой книги ACELP передаются, в качестве параметров ACELP, в декодер (фиг. 2). Параметры 333 кодирования содержат индекс обновляющей кодовой книги и усиление обновляющей кодовой книги.
Работа комбинированной обновляющей кодовой книги 201
Как показано в декодере 200 на фиг. 2, первая ступень декодирования в комбинированной обновляющей кодовой книги 201, называемая модулем 202 деквантования, содержит декодер AVQ и модуль 204 вычисления обратного DCT, а также обратный фильтр 1/F(z) 205, соответствующий фильтру 317 кодера 300 по фиг. 3. Вклад из модуля 202 деквантования получается следующим образом.
Декодирование AVQ
Прежде всего, декодер (204) области преобразования, AVQ в этом примере, (204) принимает декодированные предварительно квантованные параметры кодирования, например, сформированные посредством AVQ-квантованных коэффициентов 315 DCT (которые могут включать в себя глобальное усиление AVQ) из AVQ 310 по фиг. 3. Более конкретно, декодер AVQ осуществляет деквантование декодированных предварительно квантованных параметров кодирования, принятых декодером 200.
Вычисление обратного DCT
Модуль (204) вычисления обратного DCT затем применяет обратное преобразование, например обратное DCT, к деквантованным и масштабированным параметрам из декодера AVQ Y'[k]. В этом неограничивающем примере используется обратное DCT-II, определенное как
Фильтрация компенсации предыскажений (1/F(z))
AVQ-декодированные и обратно преобразованные по DCT параметры y'[n] из декодера/модуля 204 вычисления затем обрабатываются фильтром компенсации предыскажений 1/F(z) 205, чтобы создать обновляющий вклад 208 возбуждения первой ступени, из модуля 202 деквантования.
Декодирование параметров ACELP
Кодирование в модуле 311 вычисления поиска обновляющей кодовой книги ACELP на фиг. 3 (вторая ступень 307 кодирования) также может включать в себя фильтр наклона (не показан), который может, но необязательно, управляться информацией из модуля 309 вычисления DCT и AVQ 310 первой ступени 306 кодирования. В декодере 200 по фиг. 2 декодированные параметры ACELP принимаются второй ступенью 203 декодирования. Декодированные параметры ACELP содержат параметры 313 обновляющей кодовой книги ACELP на выходе модуля 311 вычисления поиска обновляющей кодовой книги ACELP, которые передаются в декодер (фиг. 2) и содержат индекс обновляющей кодовой книги и усиление обновляющей кодовой книги. Вторая ступень декодирования комбинированной обновляющей кодовой книги 201 по фиг. 2 содержит кодовую книгу 206 ACELP, реагирующую на индекс обновляющей кодовой книги, чтобы создавать кодовый вектор, усиленный посредством усиления обновляющей кодовой книги с использованием усилителя 207. Второй вклад 209 возбуждения обновляющей кодовой книги ACELP создается на выходе усилителя 207. Этот вклад 209 возбуждения обновляющей кодовой книги ACELP обрабатывается посредством обратного для вышеупомянутого фильтра наклона в случае, если он осуществлялся в кодере (не показан), таким же образом, как в модуле 202 деквантования в отношении обратного фильтра 1/F(z) 205. Используемый здесь фильтр наклона может быть таким же, как фильтр F(z), но, в общем, он будет отличным от F(z).
Сложение вкладов возбуждения
В заключение, декодер 200 содержит модуль 210 суммирования, чтобы складывать вклад 113 адаптивной кодовой книги, вклад 208 возбуждения из модуля 202 деквантования и вклад 209 возбуждения обновляющей кодовой книги ACELP, чтобы формировать сигнал 211 полного возбуждения.
Фильтрация синтеза
Сигнал 211 возбуждения обрабатывается синтезирующим фильтром 212 LP, чтобы восстановить звуковой сигнал 213.
Как показано на фиг. 3, модуль 309 вычисления DCT и AVQ 310 модуля 306 предварительного квантования концентрируется на кодировании частей спектра остатка возбуждения, которые превосходят заданный порог по динамике. Он не стремится к отбеливанию второго остатка 312 возбуждения для второй ступени 307 кодирования, как было бы в случае обычного модуля квантования двух ступеней. Поэтому в кодере 300 второй остаток 312 возбуждения, который кодируется посредством второй ступени 307 (модуля 311 поиска обновляющей кодовой книги ACELP), является остатком возбуждения с управляемой спектральной динамикой, причем "избыточная" спектральная динамика в некотором отношении поглощается модулем 306 предварительного квантования в первой ступени кодирования. По мере того, как скорость передачи битов увеличивается, как AVQ_SNR (фиг. 4), так и количество квантованных блоков DCT, начиная с постоянной составляющей, увеличиваются в первой ступени. В другом примере, количество квантованных блоков DCT зависит от доступного бюджета скорости передачи битов.
Однако чем более высока скорость передачи битов, тем больше битов используются, в пропорции, модулем 306 предварительного квантования в первой ступени кодирования, что в результате приводит к тому, что форма шума полного кодирования все более и более следует огибающей спектра взвешенного фильтра LP.
Хотя настоящее изобретение было описано выше в отношении его иллюстративных вариантов осуществления, эти варианты осуществления могут, по желанию, модифицироваться, оставаясь в пределах объема прилагаемой формулы изобретения без отхода от объема и сущности настоящего изобретения.
Изобретение относится к средствам кодирования комбинированной обновляющей кодовой книги. Технический результат заключается в обеспечении возможности быстрого поиска даже с очень большими кодовыми книгами. Устройство содержит модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги и модуль поиска обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги. В декодере CELP комбинированная обновляющая кодовая книга содержит модуль деквантования предварительно квантованных параметров кодирования в первый вклад возбуждения и структуру обновляющей кодовой книги CELP, реагирующую на параметры обновляющей кодовой книги CELP, чтобы создавать второй вклад возбуждения. 16 н. и 22 з.п. ф-лы, 4 ил.
1. Устройство кодирования комбинированной обновляющей кодовой книги, содержащее:
модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги, причем модуль предварительного квантования работает в области преобразования; и
модуль обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги.
2. Устройство кодирования комбинированной обновляющей кодовой книги по п. 1, в котором первый остаток возбуждения адаптивной кодовой книги получается посредством вычитания вклада адаптивной кодовой книги из остатка LP.
3. Устройство кодирования комбинированной обновляющей кодовой книги, содержащее:
модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги, причем модуль предварительного квантования работает в области преобразования; и
модуль обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем модуль предварительного квантования содержит модуль вычисления преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область.
4. Устройство кодирования комбинированной обновляющей кодовой книги по п. 3, в котором преобразование является преобразованием DCT.
5. Устройство кодирования комбинированной обновляющей кодовой книги, содержащее:
модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги, причем модуль предварительного квантования работает в области преобразования; и
модуль обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем модуль предварительного квантования содержит модуль вычисления преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область и модуль квантования преобразованного первого остатка возбуждения адаптивной кодовой книги.
6. Устройство кодирования комбинированной обновляющей кодовой книги по п. 5, в котором модуль квантования преобразованного первого остатка возбуждения адаптивной кодовой книги является модулем алгебраического векторного квантования.
7. Устройство кодирования комбинированной обновляющей кодовой книги, содержащее:
модуль предварительного квантования первого остатка возбуждения адаптивной кодовой книги, причем модуль предварительного квантования работает в области преобразования; и
модуль обновляющей кодовой книги CELP, реагирующий на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем модуль предварительного квантования содержит модуль вычисления преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область и фильтр предыскажений первого остатка возбуждения адаптивной кодовой книги до вычисления преобразования упомянутого первого остатка возбуждения адаптивной кодовой книги.
8. Устройство кодирования комбинированной обновляющей кодовой книги по п. 7, в котором фильтр предыскажений вводит предыскажение низких частот первого остатка возбуждения адаптивной кодовой книги.
9. Устройство кодирования комбинированной обновляющей кодовой книги по п. 5, содержащее модуль вычисления обратного преобразования квантованного и преобразованного первого остатка возбуждения адаптивной кодовой книги, фильтр компенсации предыскажений преобразованного обратно остатка возбуждения адаптивной кодовой книги, чтобы создавать вклад во временной области, и модуль вычитания вклада во временной области из вклада адаптивной кодовой книги, чтобы создавать второй остаток возбуждения.
10. Устройство кодирования комбинированной обновляющей кодовой книги по п. 1, в котором модуль обновляющей кодовой книги CELP является модулем поиска обновляющей кодовой книги ACELP.
11. Устройство кодирования комбинированной обновляющей кодовой книги по п. 1, в котором модуль предварительного квантования квантует только коэффициенты преобразования в частотной области, имеющие энергию, превосходящую заданный порог, так что спектральная динамика второго остатка возбуждения уменьшается или поддерживается внутри требуемого диапазона.
12. Устройство кодирования комбинированной обновляющей кодовой книги по п. 5, в котором модуль квантования кодирует коэффициенты преобразования, относящиеся только к более низким частотам, в зависимости от доступного битового бюджета.
13. Кодер CELP, содержащий устройство кодирования комбинированной обновляющей кодовой книги по п. 1.
14. Комбинированная обновляющая кодовая книга, содержащая:
модуль деквантования предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем модуль деквантования содержит модуль вычисления обратного преобразования, реагирующий на параметры кодирования; и
структуру обновляющей кодовой книги CELP, реагирующую на параметры обновляющей кодовой книги CELP, чтобы создавать второй обновляющий вклад возбуждения.
15. Комбинированная обновляющая кодовая книга по п. 14, в которой модуль деквантования содержит декодер для осуществления деквантования предварительно квантованных параметров кодирования.
16. Комбинированная обновляющая кодовая книга по п. 15, в которой декодер содержит декодер AVQ.
17. Комбинированная обновляющая кодовая книга, содержащая:
модуль деквантования предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем модуль деквантования содержит модуль вычисления обратного преобразования, реагирующий на параметры кодирования; и
структуру обновляющей кодовой книги CELP, реагирующую на параметры обновляющей кодовой книги CELP, чтобы создавать второй обновляющий вклад возбуждения,
причем модуль деквантования содержит декодер для осуществления деквантования предварительно квантованных параметров кодирования, и модуль вычисления обратного преобразования реагирует на деквантованные параметры кодирования.
18. Комбинированная обновляющая кодовая книга по п. 17, в которой обратное преобразование является обратным преобразованием DCT.
19. Комбинированная обновляющая кодовая книга, содержащая:
модуль деквантования предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем модуль деквантования содержит модуль вычисления обратного преобразования, реагирующий на параметры кодирования; и
структуру обновляющей кодовой книги CELP, реагирующую на параметры обновляющей кодовой книги CELP, чтобы создавать второй обновляющий вклад возбуждения,
причем модуль деквантования содержит декодер для осуществления деквантования предварительно квантованных параметров кодирования, и модуль вычисления обратного преобразования реагирует на деквантованные параметры кодирования, при этом модуль деквантования содержит фильтр компенсации предыскажений, в который подают преобразованные обратно деквантованные параметры кодирования, чтобы создавать первый вклад возбуждения.
20. Декодер CELP, содержащий комбинированную обновляющую кодовую книгу согласно п. 14.
21. Способ кодирования комбинированной обновляющей кодовой книги, содержащий:
предварительное квантование первого остатка возбуждения адаптивной кодовой книги, причем предварительное квантование выполняется в области преобразования; и
поиск обновляющей кодовой книги CELP в ответ на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги.
22. Способ кодирования комбинированной обновляющей кодовой книги по п. 21, содержащий получение первого остатка возбуждения адаптивной кодовой книги посредством вычитания вклада адаптивной кодовой книги из остатка LP.
23. Способ кодирования комбинированной обновляющей кодовой книги, содержащий:
предварительное квантование первого остатка возбуждения адаптивной кодовой книги, причем предварительное квантование выполняется в области преобразования; и
поиск обновляющей кодовой книги CELP в ответ на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем предварительное квантование первого остатка возбуждения адаптивной кодовой книги содержит вычисление преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область.
24. Способ кодирования комбинированной обновляющей кодовой книги по п. 23, в котором преобразование является преобразованием DCT.
25. Способ кодирования комбинированной обновляющей кодовой книги, содержащий:
предварительное квантование первого остатка возбуждения адаптивной кодовой книги, причем предварительное квантование выполняется в области преобразования; и
поиск обновляющей кодовой книги CELP в ответ на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем предварительное квантование первого остатка возбуждения адаптивной кодовой книги содержит вычисление преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область и квантование преобразованного первого остатка возбуждения адаптивной кодовой книги.
26. Способ кодирования комбинированной обновляющей кодовой книги по п. 25, в котором квантование преобразованного первого остатка возбуждения адаптивной кодовой книги содержит алгебраическое векторное квантование упомянутого преобразованного первого остатка возбуждения адаптивной кодовой книги.
27. Способ кодирования комбинированной обновляющей кодовой книги, содержащий:
предварительное квантование первого остатка возбуждения адаптивной кодовой книги, причем предварительное квантование выполняется в области преобразования; и
поиск обновляющей кодовой книги CELP в ответ на второй остаток возбуждения, создаваемый из первого остатка возбуждения адаптивной кодовой книги,
причем предварительное квантование первого остатка возбуждения адаптивной кодовой книги содержит вычисление преобразования первого остатка возбуждения адаптивной кодовой книги в частотную область, и способ дополнительно содержит фильтрацию предыскажения первого остатка возбуждения адаптивной кодовой книги до вычисления преобразования первого остатка возбуждения адаптивной кодовой книги.
28. Способ кодирования комбинированной обновляющей кодовой книги по п. 27, в котором фильтрация предыскажения содержит предыскажение низких частот первого остатка возбуждения адаптивной кодовой книги.
29. Способ кодирования комбинированной обновляющей кодовой книги по п. 25, содержащий вычисление обратного преобразования квантованного и преобразованного первого остатка возбуждения адаптивной кодовой книги, фильтрацию компенсации предыскажений преобразованного обратно остатка возбуждения адаптивной кодовой книги, чтобы создать вклад во временной области, и вычитание вклада во временной области из вклада адаптивной кодовой книги, чтобы создать второй остаток возбуждения.
30. Способ кодирования комбинированной обновляющей кодовой книги по п. 21, в котором поиск обновляющей кодовой книги CELP является поиском обновляющей кодовой книги ACELP.
31. Способ кодирования комбинированной обновляющей кодовой книги по п. 21, в котором предварительное квантование первого остатка возбуждения адаптивной кодовой книги содержит предварительное квантование только коэффициентов преобразования в частотной области, имеющих энергию, превосходящую заданный порог, так что спектральная динамика второго остатка возбуждения уменьшается или поддерживается внутри требуемого диапазона.
32. Способ кодирования комбинированной обновляющей кодовой книги по п. 25, в котором квантование преобразованного первого остатка возбуждения адаптивной кодовой книги содержит кодирование коэффициентов преобразования, относящихся только к более низким частотам, в зависимости от доступного битового бюджета.
33. Способ декодирования комбинированной обновляющей кодовой книги, содержащий:
деквантование предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем деквантование предварительно квантованных параметров кодирования содержит вычисление обратного преобразования параметров кодирования; и
применение параметров обновляющей кодовой книги CELP к структуре обновляющей кодовой книги CELP, чтобы создать второй обновляющий вклад возбуждения.
34. Способ декодирования комбинированной обновляющей кодовой книги по п. 33, в котором деквантование предварительно квантованных параметров кодирования содержит декодирование предварительно квантованных параметров кодирования, чтобы создать деквантованные параметры кодирования.
35. Способ декодирования комбинированной обновляющей кодовой книги по п. 34, в котором декодирование предварительно квантованных параметров кодирования содержит декодирование AVQ упомянутых предварительно квантованных параметров кодирования.
36. Способ декодирования комбинированной обновляющей кодовой книги, содержащий:
деквантование предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем деквантование предварительно квантованных параметров кодирования содержит вычисление обратного преобразования параметров кодирования; и
применение параметров обновляющей кодовой книги CELP к структуре обновляющей кодовой книги CELP, чтобы создать второй обновляющий вклад возбуждения,
причем деквантование предварительно квантованных параметров кодирования содержит декодирование предварительно квантованных параметров кодирования, чтобы создать деквантованные параметры кодирования, и вычисление обратного преобразования параметров кодирования содержит вычисление обратного преобразования деквантованных параметров кодирования.
37. Способ декодирования комбинированной обновляющей кодовой книги по п. 36, в котором обратное преобразование является обратным преобразованием DCT.
38. Способ декодирования комбинированной обновляющей кодовой книги, содержащий:
деквантование предварительно квантованных параметров кодирования в первый обновляющий вклад возбуждения, причем деквантование предварительно квантованных параметров кодирования содержит вычисление обратного преобразования параметров кодирования; и
применение параметров обновляющей кодовой книги CELP к структуре обновляющей кодовой книги CELP, чтобы создать второй обновляющий вклад возбуждения,
причем деквантование предварительно квантованных параметров кодирования содержит декодирование предварительно квантованных параметров кодирования, чтобы создать деквантованные параметры кодирования, и вычисление обратного преобразования параметров кодирования содержит вычисление обратного преобразования деквантованных параметров кодирования, и при этом способ декодирования комбинированной обновляющей кодовой книги содержит фильтрацию компенсации предыскажений преобразованных обратно деквантованных параметров кодирования, чтобы создать первый обновляющий вклад возбуждения.
WO 2009059333 A1, 07.05.2009 |
Авторы
Даты
2015-04-10—Публикация
2011-04-08—Подача