Код документа: RU2679973C1
ОБЛАСТЬ ТЕХНИКИ, К КОТОРОЙ ОТНОСИТСЯ ИЗОБРЕТЕНИЕ
Настоящее изобретение относится к декодеру речи, кодеру речи, способу декодирования речи, способу кодирования речи, программе декодирования речи и программе кодирования речи.
УРОВЕНЬ ТЕХНИКИ
Технологии кодирования речи и аудио, которые сжимают количество данных в сигнале до одной-нескольких десятых посредством удаления информации, которая не обязательно воспринимается человеком в соответствии с психологией слуха, представляют собой очень важную технологию в связи с передачей и накоплением сигналов. Примером общепринятых методов перцептуального звукового кодирования является MPEG4 AAC (улучшенное звуковое кодирование), стандартизованное ISO/IEC MPEG (Экспертная группа по вопросам движущегося изображения Международной организации по стандартизации/Международной электротехнической комиссии).
Кроме того, в качестве способа для улучшения рабочих характеристик кодирования речи и получения высокого качества речи при низкой скорости передачи битов, в последнее время широко использовалась технология расширения полосы частот, которая генерирует составляющие высокочастотной полосы речи, используя ее составляющие низкочастотной полосы. Типовым примером технологии расширения полосы частот является технология дублирования спектральных полос (SBR), используемая в MPEG4 AAC. Технология SBR генерирует составляющие высокочастотной полосы посредством выполнения, над сигналом, преобразованным в частотную область посредством банка квадратурного зеркального фильтра (QMF), копирования спектральных коэффициентов из низкочастотной полосы в высокочастотную полосу и после этого корректирует составляющие высокочастотной полосы посредством коррекции спектральной огибающей и тональности дублированных коэффициентов. Коррекция спектральной огибающей и тональности ниже в данном документе упоминается как «коррекция частотной огибающей». Способ кодирования речи, использующий такую технологию расширения полосы частот, может воспроизводить составляющие высокочастотной полосы сигнала, используя только малую величину дополнительной информации, и, таким образом, он является эффективным для достижения более низкой скорости передачи битов при кодировании речи.
В технологии расширения полосы частот в частотной области, такой как SBR, так как частотная огибающая корректируется в соответствии со спектральными коэффициентами, выраженными в частотной области, когда кодируется аудиосигнал с большими изменениями временной огибающей, такой как речевой сигнал, звук аплодисментов или звук кастаньет, существует случай, когда реверберирующий шум, называемый опережающее эхо или запаздывающее эхо, может восприниматься в декодированном сигнале. Эта проблема вызывается тем фактом, что временная огибающая составляющих высокочастотной полосы деформируется в процессе коррекции и, во многих случаях, становится более плоской по форме, чем перед коррекцией. Временная огибающая составляющих высокочастотной полосы, которая стала плоской в результате коррекции, не совпадает с временной огибающей составляющих высокочастотной полосы в исходном сигнале перед кодированием и вызывает опережающее эхо или запаздывающее эхо.
В качестве решения этой проблемы известен следующий способ (см. патентную литературу 1). Конкретно, способ получает электрическую мощность составляющих низкочастотной полосы для каждого временного интервала сигнала частотной области, извлекает информацию о временной огибающей из полученной мощности и накладывает извлеченную информацию о временной огибающей на составляющие высокочастотной полосы, которые корректируются с использованием дополнительной информации и затем обрабатываются для коррекции частотной огибающей. Этот способ ниже в данном документе упоминается как «способ деформации временной огибающей». Таким образом, является возможным корректировать временную огибающую декодированного сигнала, чтобы иметь менее искаженную форму и получить воспроизводимый сигнал с меньшим опережающем эхо и запаздывающим эхо.
СПИСОК ССЫЛОК
ПАТЕНТНАЯ ЛИТЕРАТУРА
PTL1: WO/2010/114123
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
ТЕХНИЧЕСКАЯ ПРОБЛЕМА
В способе деформации временной огибающей, описанном в вышеописанной патентной литературе 1, после того как будет получен декодированный сигнал, который содержит только составляющие низкочастотной полосы, которые получены на основе введенного мультиплексированного битового потока, сигнал в области QMF получается из декодированного сигнала. Кроме того, информация о временной огибающей получается из сигнала в области QMF, и информация о временной огибающей корректируется с использованием параметров. После этого, используя откорректированную информацию о временной огибающей, процесс деформации временной огибающей выполняется над сигналом в области QMF, полученным из его составляющих высокочастотной полосы.
Однако, в вышеописанном способе деформации временной огибающей, так как процесс деформации временной огибающей выполняется с использованием единственной информации о временной огибающей, которая является функцией времени, полученной из сигнала в области QMF, полученного из составляющих низкочастотной полосы, когда временная огибающая составляющих низкочастотной полосы и временная огибающая составляющих высокочастотной полосы не коррелируются в достаточной степени, трудно корректировать форму волны временной огибающей. В результате, имеется тенденция, что в декодированном сигнале недостаточно уменьшаются опережающее эхо и запаздывающее эхо.
Настоящее изобретение было выполнено, принимая во внимание вышеупомянутую проблему, и обеспечивает декодер речи, кодер речи, способ декодирования речи, способ кодирования речи, программу декодирования речи и программу кодирования речи, в которых посредством коррекции временной огибающей декодированного сигнала, чтобы иметь менее искаженную форму, получается воспроизводимый сигнал, опережающее эхо и запаздывающее эхо которого уменьшаются в достаточной степени.
РЕШЕНИЕ ПРОБЛЕМЫ
Чтобы решить вышеупомянутую проблему, декодер согласно одному аспекту изобретения представляет собой декодер речи, который декодирует кодированную последовательность речевого сигнала кодирования. Декодер речи содержит средство демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средство декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, и средство преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область. Декодер речи содержит средство анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, и средство декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы. Декодер речи содержит средство генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты. Декодер речи дополнительно содержит первое-N-ое (N представляет собой целое число, равное или больше двух) средство вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, и средство вычисления временной огибающей для вычисления временной огибающей для высокочастотной полосы, используя информацию о временной огибающей, полученную средством декодирования и деквантования кодированной последовательности, и множество временных огибающих низкочастотной полосы, полученных средством вычисления временной огибающей низкочастотной полосы. Декодер речи содержит средство коррекции временной огибающей для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, временной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и средство обратного преобразования частоты для суммирования составляющих высокочастотной полосы, скорректированных средством коррекции временной огибающей, и сигнала низкочастотной полосы, декодированного средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Декодер согласно другому аспекту изобретения представляет собой декодер речи, который декодирует кодированную последовательность речевого сигнала кодирования. Декодер речи содержит средство демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средство декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, которая демультиплексируются средством демультиплексирования, и получения сигнала низкочастотной полосы, средство преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, и средство анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, которая демультиплексируются средством демультиплексирования, и получения дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Декодер речи дополнительно содержит средство декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, средство генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированной средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты. Декодер речи дополнительно содержит первое-N-ое (N представляет собой целое число, равное или больше двух) средство вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, который преобразован в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, и средство вычисления временной огибающей для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, полученную средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, полученных средством вычисления временной огибающей низкочастотной полосы. Декодер речи дополнительно содержит средство наложения частотной огибающей для наложения информации о частотной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, на временную огибающую высокочастотной полосы и получения частотно-временной огибающей, средство коррекции частотно-временной огибающей для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, и частотно-временную огибающую, полученную средством наложения частотной огибающей, временной огибающей и частотной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и средство обратного преобразования частоты для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Декодер согласно еще другому аспекту изобретения представляет собой декодер речи, который декодирует кодированную последовательность речевого сигнала кодирования. Декодер речи содержит средство демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средство декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, средство преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, и средство анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения кодированной дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Декодер речи дополнительно содержит средство декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, средство генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированной средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, первое-N-ое (N представляет собой целое число, равное или больше двух) средство вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, и средство вычисления временной огибающей для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы. Декодер речи дополнительно содержит средство вычисления частотной огибающей для вычисления частотной огибающей, используя информацию о частотной огибающей, полученную средством декодирования и деквантования кодированной последовательности, средство коррекции частотно-временной огибающей для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, и частотную огибающую, полученную средством вычисления частотной огибающей, временной огибающей и частотной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и средство обратного преобразования частоты для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Способ декодирования согласно одному аспекту изобретения представляет собой способ декодирования речи для декодирования кодированной последовательности кодированного речевого сигнала. Способ содержит этап демультиплексирования, выполняемый средством демультиплексирования, для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, этап декодирования низких частот, выполняемый средством декодирования низкочастотной полосы, для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, и этап преобразования частоты, выполняемый средством преобразования частоты, для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, этап анализа кодированной последовательности высокочастотной полосы, выполняемый средством анализа кодированной последовательности высокочастотной полосы, для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей. Этап дополнительно содержит этап декодирования и деквантования кодированной последовательности, выполняемый средством декодирования и деквантования кодированной последовательности, для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, полученной средством анализа кодированной последовательности высокочастотной полосы, этап генерирования высокочастотной полосы, выполняемый средством генерирования высокочастотной полосы, для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, который преобразуется в частотную область средством преобразования частоты. Способ дополнительно содержит первый-N-ый (N представляет собой целое число, равное или больше двух) этап вычисления временной огибающей низкочастотной полосы, выполняемый первым-N-ым средством вычисления временной огибающей низкочастотной полосы, для анализа сигнала низкочастотной полосы, который преобразуется в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, этап вычисления временной огибающей, выполняемый средством вычисления временной огибающей, для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, этап коррекции временной огибающей, выполняемый средством коррекции временной огибающей, для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, временной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и этап обратного преобразования частоты, выполняемый средством обратного преобразования частоты, для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Способ декодирования согласно другому аспекту изобретения представляет собой способ декодирования речи для декодирования кодированной последовательности кодированного речевого сигнала. Способ содержит этап демультиплексирования, выполняемый средством демультиплексирования, для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, этап декодирования низкой частоты, выполняемый средством декодирования низкочастотной полосы, для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, этап преобразования частоты, выполняемый средством преобразования частоты, для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, этап анализа кодированной последовательности высокочастотной полосы, выполняемый средством анализа кодированной последовательности высокочастотной полосы, для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Способ дополнительно содержит этап декодирования и деквантования кодированной последовательности, выполняемый средством декодирования и деквантования кодированной последовательности, для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, этап генерирования высокочастотной полосы, выполняемый средством генерирования высокочастотной полосы, для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты. Способ дополнительно содержит первый-N-ый (N представляет собой целое число, равное или больше двух) этап вычисления временной огибающей низкочастотной полосы, выполняемый первым-N-ым средством вычисления временной огибающей низкочастотной полосы, для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, этап вычисления временной огибающей, выполняемый средством вычисления временной огибающей, для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, этап наложения частотной огибающей, выполняемый средством наложения частотной огибающей, для наложения информации о частотной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, на временную огибающую высокочастотной полосы и получения частотно-временной огибающей, этап коррекции частотно-временной огибающей, выполняемый средством коррекции частотно-временной огибающей, для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, и частотно-временную огибающую, полученную средством наложения частотной огибающей, временной огибающей и частотной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и этап обратного преобразования частоты, выполняемый средством обратного преобразования частоты, для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Способ декодирования согласно еще другому аспекту изобретения представляет собой способ декодирования речи для декодирования кодированной последовательности кодированного речевого сигнала. Способ содержит этап демультиплексирования, выполняемый средством демультиплексирования, для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, этап декодирования низкочастотной полосы, выполняемый средством декодирования низкочастотной полосы, для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, этап преобразования частоты, выполняемый средством преобразования частоты, для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, этап анализа кодированной последовательности высокочастотной полосы, выполняемый средством анализа кодированной последовательности высокочастотной полосы, для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Способ дополнительно содержит этап декодирования и деквантования кодированной последовательности, выполняемый средством декодирования и деквантования кодированной последовательности, для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, этап генерирования высокочастотной полосы, выполняемый средством генерирования высокочастотной полосы, для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты. Способ дополнительно содержит первый-N-ый (N представляет собой целое число, равное или больше двух) этап вычисления временной огибающей низкочастотной полосы, выполняемый первым-N-ым средством вычисления временной огибающей низкочастотной полосы, для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, этап вычисления временной огибающей, выполняемый средством вычисления временной огибающей, для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, этап вычисления частотной огибающей, выполняемый средством вычисления частотной огибающей, для вычисления частотной огибающей, используя информацию о частотной огибающей, полученную средством декодирования и деквантования кодированной последовательности, этап коррекции частотно-временной огибающей, выполняемый средством коррекции частотно-временной огибающей, для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, и частотную огибающую, полученную средством вычисления частотной огибающей, временной огибающей и частотной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и этап обратного преобразования частоты, выполняемый средством обратного преобразования частоты, для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Программа декодирования согласно одному аспекту изобретения представляет собой программу декодирования речи, которая декодирует кодированную последовательность кодированного речевого сигнала. Программа вызывает функционирование компьютера в качестве средства демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средства декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, средства преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, и средства анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения кодированной дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей. Программа дополнительно вызывает функционирование компьютера в качестве средства декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, средства генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, первого-N-ого (N представляет собой целое число, равное или больше двух или более) средства вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения множества временных огибающих низкочастотной полосы, средства вычисления временной огибающей для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, средства коррекции временной огибающей для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, временной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и средства обратного преобразования частоты для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Программа декодирования согласно другому аспекту изобретения представляет собой программу декодирования речи, которая декодирует кодированную последовательность кодированного речевого сигнала. Программа вызывает функционирование компьютера в качестве средства демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средства декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, средства преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, средства анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения кодированной дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Программа дополнительно вызывает функционирование компьютера в качестве средства декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, средства генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, первого-N-ого (N представляет собой целое число, равное или больше двух) средства вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения временных огибающих для множества низкочастотных полос, средства вычисления временной огибающей для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, средства наложения частотной огибающей для наложения информации о частотной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, на временную огибающую высокочастотной полосы, и получения частотно-временной огибающей, средства коррекции частотно-временной огибающей для коррекции, используя временную огибающую, которая получается средством вычисления временной огибающей, и частотно-временную огибающую, которая получается средством наложения частотной огибающей, временной огибающей и частотной огибающей составляющих высокочастотной полосы, сгенерированных средством генерирования высокочастотной полосы, и средства обратного преобразования частоты для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Программа декодирования согласно еще другому аспекту изобретения представляет собой программу декодирования речи, которая декодирует кодированную последовательность кодированного речевого сигнала. Программа вызывает функционирование компьютера в качестве средства демультиплексирования для демультиплексирования кодированной последовательности в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы, средства декодирования низкочастотной полосы для декодирования кодированной последовательности низкочастотной полосы, демультиплексированной средством демультиплексирования, и получения сигнала низкочастотной полосы, средства преобразования частоты для преобразования сигнала низкочастотной полосы, который получается средством декодирования низкочастотной полосы, в частотную область, и средства анализа кодированной последовательности высокочастотной полосы для анализа кодированной последовательности высокочастотной полосы, демультиплексированной средством демультиплексирования, и получения кодированной дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей. Программа дополнительно вызывает функционирование компьютера в качестве средства декодирования и деквантования кодированной последовательности для декодирования и деквантования дополнительной информации для генерирования высокочастотной полосы, информации о частотной огибающей и информации о временной огибающей, полученных средством анализа кодированной последовательности высокочастотной полосы, средства генерирования высокочастотной полосы для генерирования, используя дополнительную информацию для генерирования высокочастотной полосы, декодированную средством декодирования и деквантования кодированной последовательности, составляющих высокочастотной полосы в частотной области речевого сигнала из сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, первого-N-ого (N представляет собой целое число, равное или больше двух) средства вычисления временной огибающей низкочастотной полосы для анализа сигнала низкочастотной полосы, преобразованного в частотную область средством преобразования частоты, и получения множества временных огибающих низкочастотной полосы, средства вычисления временной огибающей для вычисления временной огибающей высокочастотной полосы, используя информацию о временной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, и множества временных огибающих низкочастотной полосы, которые получаются средством вычисления временной огибающей низкочастотной полосы, средства вычисления частотной огибающей для вычисления частотной огибающей, используя информацию о частотной огибающей, которая получается средством декодирования и деквантования кодированной последовательности, средства коррекции частотно-временной огибающей для коррекции, используя временную огибающую, полученную средством вычисления временной огибающей, и частотную огибающую, полученную средством вычисления частотной огибающей, временной огибающей и частотной огибающей высокочастотных составляющих, сгенерированных средством генерирования высокочастотной полосы, и средства обратного преобразования частоты для суммирования составляющих высокочастотной полосы, которые корректируются средством коррекции частотно-временной огибающей, и сигнала низкочастотной полосы, который декодируется средством декодирования низкочастотной полосы, и вывода сигнала временной области, содержащего составляющие всей частотной полосы.
Согласно декодеру, способу декодирования или программе декодирования, описанным выше, сигнал низкочастотной полосы получается из кодированной последовательности посредством демультиплексирования и декодирования, и дополнительная информация для генерирования высокочастотной полосы и информация о временной огибающей получаются из кодированной последовательности посредством демультиплексирования, декодирования и деквантования. Затем составляющие высокочастотной полосы в частотной области генерируются из сигнала низкочастотной полосы, преобразованного в частотную область, используя дополнительную информацию для генерирования высокочастотной полосы, и после получения множества временных огибающих низкочастотной полосы посредством анализа сигнала низкочастотной полосы в частотной области, вычисляется временная огибающая высокочастотной полосы, используя множество временных огибающих низкочастотной полосы и информацию о временной огибающей. Далее, временная огибающая составляющих высокочастотной полосы корректируется посредством вычисленной временной огибающей высокочастотной полосы, и скорректированные составляющие высокочастотной полосы и сигнал низкочастотной полосы суммируются вместе, и, таким образом, выводится сигнал временной области. Таким образом, так как множество временных огибающих низкочастотной полосы используется для коррекции временной огибающей составляющих высокочастотной полосы, форма волны временной огибающей составляющих высокочастотной полосы корректируется с высокой точностью посредством использования корреляции между временными огибающими составляющих низкочастотной полосы и временной огибающей составляющих высокочастотной полосы. В результате, временная огибающая в декодированном сигнале корректируется так, что имеет менее искаженную форму, и, поэтому, может быть получен воспроизводимый сигнал, в котором существенно уменьшены опережающее эхо и запаздывающее эхо.
Предпочтительно, что декодер речи дополнительно включает в себя средство управления вычислением временной огибающей для управления по меньшей мере одним из (i) вычисления временных огибающих низкочастотной полосы в первом-N-ом средстве вычисления временной огибающей низкочастотной полосы и (ii) вычисления временной огибающей высокочастотной полосы в средстве вычисления временной огибающей, используя сигнал низкочастотной полосы, преобразованный в частотную область средством преобразования частоты. Со средством управления вычислением временной огибающей является возможным пропустить вычисление временных огибающих низкочастотной полосы или вычисление временной огибающей высокочастотной полосы в соответствии со свойствами, такими как мощность сигнала низкочастотной полосы, так образом уменьшая количество вычислений.
Также является предпочтительным, что декодер речи дополнительно включает в себя средство управления вычислением временной огибающей для управления по меньшей мере одним из (i) вычисления временных огибающих низкочастотной полосы в первом-N-ом средстве вычисления временной огибающей низкочастотной полосы и (ii) вычисления временной огибающей высокочастотной полосы в средстве вычисления временной огибающей, используя информацию о временной огибающей, полученную средством декодирования и деквантования кодированной последовательности. Со средством управления вычислением временной огибающей является возможным пропустить вычисление временных огибающих низкочастотной полосы или вычисление временной огибающей высокочастотной полосы в соответствии с информацией о временной огибающей, полученной из кодированной последовательности, таким образом уменьшая количество вычислений.
Также является предпочтительным, что средство анализа кодированной последовательности высокочастотной полосы дополнительно получает информацию управления вычислением временной огибающей, и декодер речи дополнительно включает в себя средство управления вычислением временной огибающей для управления по меньшей мере одним из (i) вычисления временных огибающих низкочастотной полосы в первом-N-ом средстве вычисления временной огибающей низкочастотной полосы и (ii) вычисления временной огибающей высокочастотной полосы в средстве вычисления временной огибающей, используя информацию управления вычислением временной огибающей, полученную средством анализа кодированной последовательности высокочастотной полосы. В такой конфигурации является возможным пропустить вычисление временных огибающих низкочастотной полосы или вычисление временной огибающей высокочастотной полосы в соответствии с информацией управления вычислением временной огибающей, полученной из кодированной последовательности, таким образом уменьшая количество вычислений.
Также является предпочтительным, что средство анализа кодированной последовательности высокочастотной полосы дополнительно получает информацию управления вычислением временной огибающей, и что средство декодирования и деквантования кодированной последовательности дополнительно включает в себя средство управления вычислением временной огибающей, которое дополнительно получает информацию о второй частотной огибающей и определяет, основываясь на информации управления вычислением временной огибающей, корректировать ли частотную огибающую составляющих высокочастотной полосы, основываясь на информации о второй частотной огибающей, и, когда определяется коррекция частотной огибающей, управляет не выполнять вычисление временных огибающих низкочастотной полосы посредством первого-N-ого средства вычисления временной огибающей низкочастотной полосы и вычисление временной огибающей высокочастотной полосы средством вычисления временной огибающей. В этом случае также является возможным пропустить вычисление временных огибающих низкочастотной полосы или вычисление временной огибающей высокочастотной полосы в соответствии с информацией управления вычислением временной огибающей, полученной из кодированной последовательности, таким образом уменьшая количество вычислений.
Также является предпочтительным, что средство коррекции частотно-временной огибающей обрабатывает при помощи заданной функции составляющие высокочастотной полосы речевого сигнала, сгенерированные средством генерирования высокочастотной полосы. Также является предпочтительным, что средство вычисления временной огибающей низкочастотной полосы обрабатывает при помощи заданной функции полученное множество временных огибающих низкочастотной полосы.
Кроме того, кодер согласно одному аспекту изобретения представляет собой кодер речи, который кодирует речевой сигнал. Кодер речи содержит средство преобразования частоты для преобразования речевого сигнала в частотную область, средство понижающей дискретизации для понижающей дискретизации речевого сигнала и получения сигнала низкочастотной полосы, средство кодирования низкочастотной полосы для кодирования сигнала низкочастотной полосы, полученного средством понижающей дискретизации, первое-N-ое (N представляет собой целое число, равное или больше двух) средство вычисления временной огибающей низкочастотной полосы для вычисления множества временных огибающих составляющих низкочастотной полосы речевого сигнала, преобразованного в частотную область средством преобразования частоты, средство вычисления информации о временной огибающей для вычисления, используя временные огибающие составляющих низкочастотной полосы, вычисленные первым-N-ым средством вычисления временной огибающей низкочастотной полосы, информации о временной огибающей, необходимой для получения временной огибающей составляющих высокочастотной полосы речевого сигнала, преобразованного средством преобразования частоты, и средство вычисления дополнительной информации для анализа речевого сигнала и вычисления дополнительной информации для генерирования высокочастотной полосы, подлежащей использованию для генерирования составляющих высокочастотной полосы из сигнала низкочастотной полосы. Кодер речи дополнительно содержит средство квантования и кодирования для квантования и кодирования дополнительной информации для генерирования высокочастотной полосы, сгенерированной средством вычисления дополнительной информации, и информации о временной огибающей, вычисленной средством вычисления информации о временной огибающей, средство составления кодированной последовательности для составления кодированной последовательности высокочастотной полосы из дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, квантованной и кодированной средством квантования и кодирования, и средство мультиплексирования для генерирования кодированной последовательности, которое мультиплексирует кодированную последовательность низкочастотной полосы, которая получается средством кодирования низкочастотной полосы, и кодированную последовательность высокочастотной полосы, которая составляется средством составления кодированной последовательности.
Способ кодирования согласно одному аспекту изобретения представляет собой способ кодирования речи для кодирования речевого сигнала. Способ содержит этап преобразования частоты, выполняемый средством преобразования частоты, для преобразования речевого сигнала в частотную область, этап понижающей дискретизации, выполняемый средством понижающей дискретизации, для понижающей дискретизации речевого сигнала и получения сигнала низкочастотной полосы, этап кодирования низкочастотной полосы, выполняемый средством кодирования низкочастотной полосы, для кодирования сигнала низкочастотной полосы, полученного средством понижающей дискретизации, первый-N-ый (N представляет собой целое число, равное или больше двух) этап вычисления временной огибающей низкочастотной полосы, выполняемый первым-N-ым средством вычисления временной огибающей низкочастотной полосы, для вычисления множества временных огибающих составляющих низкочастотной полосы речевого сигнала, преобразованного в частотную область средством преобразования частоты, этап вычисления информации о временной огибающей, выполняемый средством вычисления информации о временной огибающей, для вычисления, используя временные огибающие составляющих низкочастотной полосы, вычисленные первым-N-ым средством вычисления временной огибающей низкочастотной полосы, информации о временной огибающей, необходимой для получения временной огибающей составляющих высокочастотной полосы речевого сигнала, преобразованного средством преобразования частоты, и этап вычисления дополнительной информации, выполняемый средством вычисления дополнительной информации, для анализа речевого сигнала и вычисления дополнительной информации для генерирования высокочастотной полосы, подлежащей использованию для генерирования составляющих высокочастотной полосы из сигнала низкочастотной полосы. Способ дополнительно содержит этап квантования и кодирования, выполняемый средством квантования и кодирования, для квантования и кодирования дополнительной информации для генерирования высокочастотной полосы, сгенерированной средством вычисления дополнительной информации, и информации о временной огибающей, вычисленной средством вычисления информации о временной огибающей, этап составления кодированной последовательности, выполняемый средством составления кодированной последовательности, для составления кодированной последовательности высокочастотной полосы из дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, квантованной и кодированной средством квантования и кодирования, и этап мультиплексирования, выполняемый средством мультиплексирования, для генерирования кодированной последовательности, который мультиплексирует кодированную последовательность низкочастотной полосы, полученную средством кодирования низкочастотной полосы, и кодированную последовательность высокочастотной полосы, составленную средством составления кодированной последовательности.
Программа кодирования согласно одному аспекту изобретения представляет собой программу кодирования речи, которая кодирует речевой сигнал. Программа вызывает функционирование компьютера в качестве средства преобразования частоты для преобразования речевого сигнала в частотную область, средства понижающей дискретизации для понижающей дискретизации речевого сигнала и получения сигнала низкочастотной полосы, средства кодирования низкочастотной полосы для кодирования сигнала низкочастотной полосы, полученного средством понижающей дискретизации, первого-N-ого (N представляет собой целое число, равное или больше двух) средства вычисления временной огибающей низкочастотной полосы для вычисления множества временных огибающих составляющих низкочастотной полосы речевого сигнала, преобразованного в частотную область средством преобразования частоты, средства вычисления информации о временной огибающей для вычисления, используя временные огибающие составляющих низкочастотной полосы, вычисленные первым-N-ым средством вычисления временной огибающей низкочастотной полосы, информации о временной огибающей, необходимой для получения временной огибающей составляющих высокочастотной полосы речевого сигнала, преобразованного средством преобразования частоты, и средства вычисления дополнительной информации для анализа речевого сигнала и вычисления дополнительной информации для генерирования высокочастотной полосы, подлежащей использованию для генерирования составляющих высокочастотной полосы из сигнала низкочастотной полосы. Программа дополнительно вызывает функционирование компьютера в качестве средства квантования и кодирования для квантования и кодирования дополнительной информации для генерирования высокочастотной полосы, сгенерированной средством вычисления дополнительной информации, и информации о временной огибающей, вычисленной средством вычисления информации о временной огибающей, средства составления кодированной последовательности для составления кодированной последовательности высокочастотной полосы из дополнительной информации для генерирования высокочастотной полосы и информации о временной огибающей, квантованной и кодированной средством квантования и кодирования, и средства мультиплексирования для генерирования кодированной последовательности, которое мультиплексирует кодированную последовательность низкочастотной полосы, полученную средством кодирования низкочастотной полосы, и кодированную последовательность высокочастотной полосы, составленную средством составления кодированной последовательности.
Согласно кодеру речи, способу кодирования или программе кодирования, описанным выше, сигнал низкочастотной полосы получается посредством понижающей дискретизации речевого сигнала, и кодируется сигнал низкочастотной полосы, в тоже время множество временных огибающих составляющих низкочастотной полосы вычисляется на основе речевого сигнала в частотной области, и, используя множество временных огибающих составляющих низкочастотной полосы, вычисляется информация о временной огибающей для получения временной огибающей составляющих высокочастотной полосы. Кроме того, вычисляется дополнительная информация для генерирования высокочастотной полосы для генерирования составляющих высокочастотной полосы из сигнала низкочастотной полосы, и, после того как дополнительная информация для генерирования высокочастотной полосы и информация о временной огибающей будут квантованы и кодированы, составляется кодированная последовательность высокочастотной полосы, которая содержит дополнительную информацию для генерирования высокочастотной полосы и информацию о временной огибающей. Затем генерируется кодированная последовательность, в которой мультиплексируются кодированная последовательность низкочастотной полосы и кодированная последовательность высокочастотной полосы. Следовательно, когда кодированная последовательность вводится в декодер, множество временных огибающих низкочастотной полосы может использоваться на стороне декодера для коррекции временной огибающей составляющих высокочастотной полосы на стороне декодера, и, таким образом, форма волны временной огибающей составляющих высокочастотной полосы корректируется с высокой точностью, используя корреляцию между временной огибающей составляющих низкочастотной полосы и временной огибающей составляющих высокочастотной полосы на стороне декодера. В результате, временная огибающая в декодированном сигнале корректируется так, что имеет менее искаженную форму, и, поэтому, на стороне декодера может быть получен воспроизводимый сигнал, в котором существенно уменьшены опережающее эхо и запаздывающее эхо.
Является предпочтительным, что кодер речи дополнительно включает в себя средство вычисления частотной огибающей для вычисления информации о частотной огибающей составляющих высокочастотной полосы речевого сигнала, который преобразуется в частотную область средством преобразования частоты, что средство квантования и кодирования дополнительно квантует и кодирует информацию о частотной огибающей, и что средство составления кодированной последовательности составляет кодированную последовательность высокочастотной полосы посредством дополнительного суммирования информации о частотной огибающей, квантованной и кодированной средством квантования и кодирования. В этой конфигурации коррекция частотной огибающей составляющих высокочастотной полосы может выполняться на стороне декодера, и, поэтому, воспроизводимый сигнал с улучшенными частотными характеристиками может быть получен на стороне декодера.
Также является предпочтительными, что кодер речи дополнительно включает в себя средство генерирования информации управления для генерирования информации управления вычислением временной огибающей, которая управляет вычислением временной огибающей в декодере речи, используя по меньшей мере одно из (i) речевого сигнала, преобразованного в частотную область средством преобразования частоты, и (ii) информации о временной огибающей, вычисленной средством вычисления информации о временной огибающей, и что средство составления кодированной последовательности составляет кодированную последовательность высокочастотной полосы посредством дополнительного добавления информации управления вычислением временной огибающей, сгенерированной средством генерирования информации управления. В данном случае, является возможным увеличить эффективность вычисления временной огибающей на стороне декодера посредством ссылки на свойство, такое как мощность речевого сигнала и информацию о временной огибающей, таким образом уменьшая количество вычислений.
Также является предпочтительным, что средство вычисления информации о временной огибающей вычисляет временную огибающую составляющих высокочастотной полосы речевого сигнала, преобразованного в частотную область средством преобразования частоты, и вычисляет информацию о временной огибающей, основываясь на корреляции между временной огибающей, вычисленной из первой-N-ой временных огибающих составляющих низкочастотной полосы, и временной огибающей частотных составляющих.
ПОЛЕЗНЫЕ ЭФФЕКТЫ ИЗОБРЕТЕНИЯ
Согласно настоящему изобретению является возможным корректировать временную огибающую декодированного сигнала так, чтобы она имела менее искаженную форму и, таким образом, получать воспроизводимый сигнал, в котором существенно уменьшены опережающее эхо и запаздывающее эхо.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг. 1 представляет собой схематическую блок-схему декодера 1 речи согласно первому варианту осуществления изобретения;
фиг. 2 представляет собой блок-схему последовательности операций, изображающую процедуру способа декодирования речи, реализуемую декодером 1 речи, показанным на фиг. 1;
фиг. 3 представляет собой схематическую блок-схему кодера 2 речи согласно первому варианту осуществления изобретения;
фиг. 4 представляет собой блок-схему последовательности операций, изображающую процедуру способа кодирования речи, реализуемую кодером 2 речи, показанным на фиг. 3;
фиг. 5 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей в первом альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 6 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую декодером 1 речи, показанным на фиг. 5;
фиг. 7 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей во втором альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 8 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую декодером 1 речи, показанным на фиг. 7;
фиг. 9 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей в третьем альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 10 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую декодером 1 речи, показанным на фиг. 9;
фиг. 11 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей в четвертом альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 12 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей в пятом альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 13 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей в шестом альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 14 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления временной огибающей, выполняемую блоком 1g вычисления временной огибающей в седьмом альтернативном примере декодера 1 речи согласно первому варианту осуществления;
фиг. 15 представляет собой блок-схему последовательности операций, изображающую часть обработки блоком 1m управления вычислением временной огибающей, когда седьмой альтернативный пример декодера 1 речи согласно первому варианту осуществления применяется ко второму альтернативному примеру декодера 1 речи согласно первому варианту осуществления;
фиг. 16 представляет собой блок-схему последовательности операций, изображающую часть обработки блоком 1n управления вычислением временной огибающей, когда седьмой альтернативный пример декодера 1 речи согласно первому варианту осуществления применяется к четвертому альтернативному примеру декодера 1 речи согласно первому варианту осуществления;
фиг. 17 представляет собой схему, изображающую конфигурацию первого альтернативного примера кодера 2 речи согласно первому варианту осуществления;
фиг. 18 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 2 речи, показанным на фиг. 17;
фиг. 19 представляет собой схему, изображающую конфигурацию второго альтернативного примера кодера 2 речи согласно первому варианту осуществления;
фиг. 20 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 2 речи, показанным на фиг. 19;
фиг. 21 представляет собой схему, изображающую конфигурацию третьего альтернативного примера кодера 2 речи согласно первому варианту осуществления;
фиг. 22 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 2 речи, показанным на фиг. 21;
фиг. 23 представляет собой схему, изображающую конфигурацию декодера 101 речи согласно второму варианту осуществления;
фиг. 24 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи, выполняемую декодером 101 речи, показанным на фиг. 23;
фиг. 25 представляет собой схему, изображающую конфигурацию кодера 102 речи согласно второму варианту осуществления;
фиг. 26 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 102 речи, показанным на фиг. 25;
фиг. 27 представляет собой схему, изображающую конфигурацию, в которой первый альтернативный пример кодера 2 речи согласно первому варианту осуществления изобретения применяется к кодеру 102 речи согласно второму варианту осуществления изобретения;
фиг. 28 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 102 речи, показанным на фиг. 27;
фиг. 29 представляет собой схему, изображающую конфигурацию, в которой второй альтернативный пример кодера 2 речи согласно первому варианту осуществления изобретения применяется к кодеру 102 речи согласно второму варианту осуществления изобретения;
фиг. 30 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 102 речи, показанным на фиг. 29;
фиг. 31 представляет собой схему, изображающую конфигурацию декодера 201 речи согласно третьему варианту осуществления;
фиг. 32 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи, выполняемую декодером 201 речи, показанным на фиг. 31;
фиг. 33 представляет собой схему, изображающую конфигурацию декодера 301 речи согласно четвертому варианту осуществления;
фиг. 34 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи, выполняемую декодером 301 речи, показанным на фиг. 33;
фиг. 35 представляет собой схему, изображающую конфигурацию кодера 202 речи согласно третьему варианту осуществления;
фиг. 36 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 202 речи, показанным на фиг. 35;
фиг. 37 представляет собой схему, изображающую конфигурацию кодера 302 речи согласно четвертому варианту осуществления;
фиг. 38 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи, выполняемую кодером 302 речи, показанным на фиг. 37;
фиг. 39 представляет собой схему, изображающую конфигурацию третьего альтернативного примера декодера 101 речи согласно второму варианту осуществления; и
фиг. 40 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи, выполняемую декодером 101 речи, показанным на фиг. 39.
ОПИСАНИЕ ВАРИАНТОВ ОСУЩЕСТВЛЕНИЯ
Предпочтительные варианты осуществления декодера речи, кодера речи, способа декодирования речи, способа кодирования речи, программы декодирования речи и программы кодирования речи согласно настоящему изобретению подробно описываются ниже в данном документе с ссылкой на чертежи. Отмечается, что в описании чертежей одинаковые элементы обозначаются одинаковыми ссылочными позициями, и опускается излишнее описание.
[ПЕРВЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ]
Фиг. 1 представляет собой схематическую блок-схему декодера 1 речи согласно первому варианту осуществления изобретения, и фиг. 2 представляет собой блок-схему последовательности операций, изображающую процедуру способа декодирования речи, реализуемую декодером 1 речи. Декодер 1 речи включает в себя центральный блок обработки (CPU), постоянное запоминающее устройство (ROM), оперативное запоминающее устройство (RAM), устройство связи и т.п., которые не показаны, и CPU загружает заданную компьютерную программу (например, компьютерную программу для выполнения процесса, показанного на блок-схеме последовательности операций на фиг. 2), хранимую во внутренней памяти, такой как ROM декодера 1 речи, в RAM и исполняет программу для осуществления управления декодером 1 речи. Устройство связи декодера 1 речи принимает мультиплексированную кодированную последовательность, которая выводится из кодера 2 речи, который описан ниже, и выводит декодированный речевой сигнал на внешние устройства.
Как показано на фиг. 1, декодер 1 речи функционально включает в себя блок 1a демультиплексирования (средство демультиплексирования), блок 1b декодирования низкочастотной полосы (средство декодирования низкочастотной полосы), блок 1c банка фильтров разделения полосы частот (средство преобразования частоты), блок 1d анализа кодированной последовательности (средство анализа кодированной последовательности высокочастотной полосы), блок 1e декодирования/деквантования кодированной последовательности (средство декодирования и деквантования кодированной последовательности), первый-n-ый (n представляет собой целое число, равное двум или более) блок 1f1-1fn вычисления временной огибающей низкочастотной полосы (средство вычисления временной огибающей низкочастотной полосы), блок 1g вычисления временной огибающей (средство вычисления временной огибающей), блок 1h генерирования высокочастотной полосы (средство генерирования высокочастотной полосы), блок 1i коррекции временной огибающей (средство коррекции временной огибающей) и блок 1j банка фильтров синтеза полосы частот (средство обратного преобразования частоты) (1c-1e и 1h-1i иногда упоминаются также как блок расширения полосы частот (средство расширения полосы частот)). Соответствующие блоки декодера 1 речи, показанные на фиг. 1, представляют собой функциональные блоки, которые реализуются при помощи CPU декодера 1 речи, исполняя компьютерную программу, хранимую во внутренней памяти декодера 1 речи. CPU декодера 1 речи исполняет компьютерную программу (использует функциональные блоки на фиг. 1) и, таким образом, последовательно исполняет процесс, показанный на блок-схеме последовательности операций на фиг. 2 (процесс этапов S01-S10). Предполагается, что различные данные, требуемые для исполнения компьютерной программы, и различные данные, генерируемые в результате исполнения компьютерной программы, сохраняются во внутренней памяти, такой как ROM и RAM, декодера 1 речи.
Ниже в данном документе подробно описываются функции соответствующих блоков декодера 1 речи.
Блок 1a демультиплексирования делит мультиплексированную кодированную последовательность, которая вводится при помощи устройства связи декодера 1 речи в кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы посредством демультиплексирования.
Блок 1b декодирования низкочастотной полосы декодирует кодированную последовательность низкочастотной полосы, подаваемую от блока 1a демультиплексирования, и получает декодированный сигнал, который содержит только составляющие низкочастотной полосы. Способ декодирования может основываться на способе кодирования речи, таком как CELP (линейное предсказание с кодовым возбуждением), или основываться на звуковом кодировании, таком как AAC (перспективное звуковое кодирование) и TCX (кодирование с преобразованием кодированного возбуждения). Кроме того, оно может основываться на кодировании с кодово-импульсной модуляцией (PCM). Кроме того, оно может основываться на способе, который использует эти способы кодирования переключаемым образом. В данном варианте осуществления конкретно не ограничивается способ кодирования.
Блок 1c банка фильтров разделения полосы частот анализирует декодированный сигнал, содержащий только составляющие низкочастотной полосы, подаваемые от блока 1b декодирования низкочастотной полосы, и преобразовывает декодированный сигнал в сигнал в частотной области. Ниже в данном документе сигнал в частотной области, который соответствует низкочастотной полосе, получаемый блоком 1c банка фильтров разделения полосы частот, представлен как Xdec(j,i) {0≤jE) кадру. Кроме того, sE представляет собой количество всех кадров. Вышеупомянутый кадр соответствует кадру, задаваемому способом кодирования, которому соответствует способ декодирования блока 1b декодирования низкочастотной полосы. Кроме того, вышеупомянутый кадр может соответствовать так называемому кадру SBR или временному сегменту огибающей SBR в SBR, используемому в «MPEG4 AAC», заданным стандартом «ISO/IEC 14496-3». Отметьте, что в данном варианте осуществления временной интервал, задаваемый кадром, не ограничивается вышеупомянутым примером. Вышеупомянутый индекс i может соответствовать субполосному подотсчету QMF или временному слоту, равному нескольким субполосным отсчетам в SBR, используемым в «MPEG4 AAC», заданным в «ISO/IEC 14496-3».
Блок 1d анализа кодированной последовательности анализирует кодированную последовательность высокочастотной полосы, подаваемую от блока 1a демультиплексирования, и получает кодированную дополнительную информацию для генерирования высокочастотной полосы и кодированную информацию о частотно-временной огибающей.
Блок 1e декодирования/деквантования кодированной последовательности декодирует и деквантует кодированную дополнительную информацию для генерирования высокочастотной полосы, подаваемую от блока 1d анализа кодированной последовательности, и получает кодированную дополнительную информацию для генерирования высокочастотной полосы, и декодирует и деквантует кодированную информацию о временной огибающей, подаваемую от блока 1d анализа кодированной последовательности, и получает информацию о временной огибающей.
Первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы вычисляют временные огибающие, отличающиеся друг от друга. Конкретно, k-ый блок 1fk (1≤k≤n) вычисления временной огибающей низкочастотной полосы принимает сигнал X(j,i) {0≤j
Сначала разные субполосы в низкочастотной полосе могут быть заданы с использованием двух целых чисел k1 и kh, удовлетворяющих следующему условию.
[Уравнение 1]
Общее количество возможных наборов целых чисел (k1, kh), удовлетворяющих вышеупомянутому условию, равно nmax=kx(kx+1)/2. Субполосы могут задаваться посредством выбора любого одного из этих наборов целых чисел.
Затем n количество субполос задается посредством выбора n количества из nmax наборов целых чисел. Ниже в данном документе для представления n количества полос определяются два массива B1 и Bh с размером n, так что сигнал Xdec(j,i) {B1(k)≤j≤Bh(k), t(s)≤i
Далее, мощность временной огибающей n количества субполосных составляющих получается по следующему уравнению.
[Уравнение 2]
Затем следующее уравнение вычисляется для вышеупомянутой EL(k,i).
[Уравнение 3]
Затем временная огибающая L(k,i) получается в результате выполнения заданной обработки величины L0(k,i). Например, временная огибающая L(k,i) может быть получена посредством сглаживания величины L0(k,i) по направлению времени посредством использования следующего уравнения.
[Уравнение 4]
В вышеупомянутом уравнении sc(j), 0≤j≤d представляет собой коэффициент сглаживания, и d представляет собой порядок сглаживания. Значение sc(j) устанавливается, например, по следующему уравнению.
[Уравнение 5]
Однако в данном варианте осуществления значение sc(j) не ограничивается вышеупомянутым уравнением.
Кроме того, вышеупомянутая L0(k,i) может вычисляться, например, по следующему уравнению.
[Уравнение 6]
Кроме того, вышеупомянутая L0(k,i) может вычисляться, например, по следующему уравнению.
[Уравнение 7]
где ε представляет собой множитель релаксации для исключения деления на ноль. Далее, вышеупомянутая L0(k,i) может вычисляться, например, по следующему уравнению.
[Уравнение 8]
Временная огибающая Ldec(k,i), вычисленная k-ым блоком 1fk вычисления временной огибающей низкочастотной полосы, получается с использованием следующего уравнения:
[Уравнение 9]
или следующего уравнения:
[Уравнение 10]
Отметьте, что вышеупомянутая Ldec(k,i) может быть любым параметром, представляющим изменение во времени мощности сигнала или амплитуды сигнала k-ого субполосного сигнала и не ограничивается вышеупомянутым видом L0(k,i) и L1(k,i).
Кроме того, вышеупомянутая Ldec(k,i) может вычисляться по способу, использующему анализ главных компонент, следующим образом.
Сначала в процессе вычисления Ldec(k,i) {1≤k≤n, t(s)≤i≤t(s+1), 0≤sE}, описанном выше, m видов величин, соответствующих вышеупомянутой Ldec(k,i), вычисляются для индекса k посредством замены n другим целым числом m=n-1, и эти величины представлены как L2(k,i) {1≤k≤m(=n-1), t(s)≤i≤t(s+1), 0≤sE}. Затем вышеупомянутая L2(l,i) {1≤l≤m, t(s)≤i
[Уравнение 11]
Используя вышеупомянутое среднее, вектор смещения определяется следующим уравнением.
[Уравнение 12]
Из этих векторов смещения вычисляется дисперсионно-ковариационная матрица Cov с размером D×D по следующему уравнению.
[Уравнение 13]
Затем вычисляются собственные векторы V(k) матрицы Cov, которые удовлетворяют следующему уравнению
[Уравнение 14]
и являются ортогональными друг другу. Вышеупомянутый V(k)i представляет собой составляющую собственных векторов V(k), и λ(k) представляет собой собственное значение матрицы Cov, соответствующей V(k). Каждый из вышеупомянутых векторов V(k) может быть нормализован. Однако способ нормализации не ограничивается в данном изобретении. Ниже в данном документе предполагается, что λ(1)≥λ(2)≥…≥λ(D) для упрощения описания.
Используя собственные векторы, полученные вышеописанным образом, блок 1fk (1≤k≤n) вычисления временной огибающей низкочастотной полосы вычисляет временную огибающую Ldec(k,i) следующим образом. Конкретно, когда D≥m(=n-1), n-1 количество векторов выбирается из вышеупомянутых собственных векторов в порядке величин, соответствующих собственным значениям, и временная огибающая вычисляется по следующему уравнению.
[Уравнение 15]
С другой стороны, когда D [Уравнение 16]
где α представляет собой постоянное число, и, например, α=0. Далее, когда D [Уравнение 17]
Кроме того, вышеупомянутая Ldec(k,i) может вычисляться следующим способом. Сначала, в процессе вычисления L2(l,i), описанной выше, L2(l,i), 1≤l≤m, t(s)≤i
Блок 1g вычисления временной огибающей вычисляет временную огибающую высокочастотной полосы, используя n количество временных огибающих низкочастотной полосы, подаваемых от первого-n-ого блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы, и информацию о временной огибающей, подаваемую от блока 1e декодирования/деквантования кодированной последовательности. Конкретно, вычисление временной огибающей блоком 1g вычисления временной огибающей выполняется следующим образом.
Сначала высокочастотная полоса делится на nH(nH≥1) количество субполос, и эти субполосы представляются как B(T)l(l=1,2,3,…,nH). Затем, используя вышеописанную временную огибающую Ldec(k,i), вычисляется временная огибающая gdec(l,i) субполосы B(T)lв высокочастотной полосе. i представляет собой индекс по направлению времени.
Например, вышеописанная gdec(l,i) задается следующим уравнением.
[Уравнение 18]
Значение в вышеупомянутом уравнении:
[Уравнение 19]
представляет собой информацию о временной огибающей, подаваемую от блока 1e декодирования/деквантования кодированной последовательности.
Далее, в информации о временной огибающей, подаваемой от блока 1e декодирования/деквантования кодированной последовательности, коэффициент Al,k(s) может содержать коэффициент:
[Уравнение 20]
и, в данном случае, вышеописанная gdec(l,i) может определяться следующим уравнением.
[Уравнение 21]
Кроме того, информация о временной огибающей, подаваемая от блока 1e декодирования/деквантования кодированной последовательности, может содержать коэффициент, определяемый следующим уравнением:
[Уравнение 22]
в дополнение к вышеописанному коэффициенту Al,k(s) {1≤l≤nH, 1≤k≤n, 0≤sE} или вышеописанному коэффициенту Al,k(s) {1≤l≤nH, 0≤k≤n, 0≤sE}, и, в данном случае, вышеупомянутая gdec(l,i) может определяться следующим уравнением:
[Уравнение 23]
или следующим уравнением:
[Уравнение 24]
где U(k,i) {1≤k≤g, t(s)≤i
[Уравнение 25]
где Ω представляет собой заданный коэффициент.
Вышеупомянутая gdec(l,i) может быть в другом виде до тех пор, пока она является представлением посредством Ldec(k,i), и информация о временной огибающей также не ограничивается видом коэффициента Al,k(s).
Наконец, используя вышеупомянутую gdec(l,i), блок 1g вычисления временной огибающей вычисляет временную огибающую по следующему уравнению
[Уравнение 26]
или по следующему уравнению.
[Уравнение 27]
Блок 1h генерирования высокочастотной полосы дублирует, используя дополнительную информацию для генерирования высокочастотной полосы, подаваемую от блока 1e декодирования/деквантования кодированной последовательности, сигнал Xdec(j,i) {0≤j
Блок 1i коррекции временной огибающей корректирует временную огибающую сигнала XH(j,i) {kx≤j≤kmax, t(s)≤i
Конкретно, коррекция временной огибающей выполняется по способу, подобному коррекции HF в SBR в «MPEG4 AAC», как описано ниже. Для упрощения, ниже описывается способ, который принимает во внимание только добавление шума в коррекции HF, и опускаются способы, соответствующие обработке, такой как ограничитель коэффициента усиления, подавитель коэффициента усиления и добавление синусоиды. Однако легко обобщить обработку, чтобы включить опущенную выше обработку. Отметьте, что предполагается, что масштабный коэффициент минимального уровня шума, требуемый для выполнения обработки, соответствующей добавлению шума, или параметр, требуемый для выполнения вышеописанной опущенной обработки, уже подается от блока 1e декодирования/деквантования кодированной последовательности.
Сначала, для упрощения последующего описания, определяется массив FH, имеющий nH+1 количество индексов, представляющих границу субполосы B(T)1(1≤l≤nH) в качестве элементов, так что сигнал XH(j,i) {FH(l)≤j
При вышеупомянутом определении временная огибающая преобразуется по следующему уравнению:
[Уравнение 28]
После этого, масштабный коэффициент Q(m,i) минимального уровня шума, определяемый блоком 1e декодирования/деквантования кодированной последовательности, преобразуется по следующему уравнению:
[Уравнение 29]
где M=F(nH+1)-F(l). Кроме того, коэффициент усиления вычисляется по следующему уравнению:
[Уравнение 30]
Определяется величина, представляемая следующим уравнением.
[Уравнение 31]
Наконец, блок 1i коррекции временной огибающей получает сигнал со скорректированной временной огибающей по следующему уравнению:
[Уравнение 32]
где V0 и V1 представляют собой массивы, задающие составляющую шума, и f представляет собой функцию для отображения индекса i на индекс массивов (см. «ISO/IEC 14496-3 4.B.18» в отношении конкретного примера).
Блок 1j банка фильтров синтеза полосы частот суммирует сигнал Y(i,j) {kx≤j≤kmax, t(s)≤i
Ниже в данном документе описывается работа декодера 1 речи, и способ декодирования речи в декодере 1 речи также подробно описывается с ссылкой на фиг. 2.
Сначала блок 1a демультиплексирования делит входную кодированную последовательность на кодированную последовательность низкочастотной полосы и кодированную последовательность высокочастотной полосы (этап S01). Затем блок 1b декодирования низкочастотной полосы декодирует кодированную последовательность низкочастотной полосы и получает декодированный сигнал, содержащий только составляющие низкочастотной полосы (этап S02). Затем блок 1c банка фильтров разделение полосы частот анализирует декодированный сигнал, содержащий только составляющие низкочастотной полосы, и преобразует его в сигнал в частотной области (этап S03).
Далее, блок 1d анализа кодированной последовательности анализирует кодированную последовательность высокочастотной полосы и получает кодированную дополнительную информацию для генерирования высокочастотной полосы и квантованную информацию о временной огибающей (этап S04). Затем блок 1e декодирования/деквантования кодированной последовательности декодирует дополнительную информацию для генерирования высокочастотной полосы и деквантует информацию о временной огибающей (этап S05). После этого блок 1h генерирования высокочастотной полосы дублирует сигнал Xdec(j,i) низкочастотной полосы на высокочастотную полосу, используя дополнительную информацию для генерирования высокочастотной полосы и, таким образом, генерирует сигнал Xdec(j,i) высокочастотной полосы (этап S06). Затем первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы вычисляют множество временных огибающих Ldec(k,i) низкочастотной полосы, основываясь на сигнале X(j,i) низкочастотной полосы (этап S07).
Далее, блок 1g вычисления временной огибающей вычисляет временную огибающую ET(l,i) высокочастотной полосы, используя множество временных огибающих Ldec(k,i) низкочастотной полосы и информацию о временной огибающей (этап S08). Затем блок 1i коррекции временной огибающей корректирует временную огибающую сигнала XH(j,i) высокочастотной полосы посредством использования временной огибающей ET(l,i) (этап S09). Наконец, блок 1j банка фильтров синтеза полосы частот суммирует сигнал Y(i,j) высокочастотной полосы и сигнал X(j,i) низкочастотной полосы вместе и затем синтезирует их для получения декодированного речевого сигнала во временной области и выводит декодированный речевой сигнал (этап S10).
Фиг. 3 представляет собой схему, изображающую конфигурацию кодера 2 речи согласно первому варианту осуществления изобретения, и фиг. 4 представляет собой блок-схему последовательности операций, изображающую процедуру способа кодирования речи, реализуемую кодером 2 речи. Кодер 2 речи включает в себя CPU, ROM, RAM, устройство связи и т.п., которые не показаны физически, и CPU загружает заданную компьютерную программу (например, компьютерную программу для выполнения процесса, показанного на блок-схеме последовательности операций на фиг. 4), хранимую во внутренней памяти, такой как ROM кодера 2 речи, в RAM и исполняет программу, таким образом осуществляя управление кодером 2 речи. Устройство связи кодера 2 речи принимает речевой сигнал, подлежащий кодированию, извне и выводит кодированный мультиплексированный битовый поток на внешние устройства.
Как показано на фиг. 3, кодер 2 речи функционально включает в себя блок 2a понижающей дискретизации (средство понижающей дискретизации), блок 2b кодирования низкочастотной полосы (средство кодирования низкочастотной полосы), блок 2c банка фильтров разделения полосы частот (средство преобразования частоты), блок 2d вычисления дополнительной информации для генерирования высокочастотной полосы (средство вычисления дополнительной информации, первый-n-ый (n представляет собой целое число, равное двум или больше) блоки 2e1-2en вычисления временной огибающей низкочастотной полосы (средство вычисления временной огибающей низкочастотной полосы), блок 2f вычисления информации о временной огибающей (средство вычисления информации о временной огибающей), блок 2g квантования/кодирования (средство квантования и кодирования), блок 2h составления кодированной последовательности высокочастотной полосы (средство составления кодированной последовательности) и блок 2i мультиплексирования (средство мультиплексирования). Соответствующие блоки кодера 2 речи, показанные на фиг. 3, представляют собой функциональные блоки, которые реализуются посредством CPU кодера 2 речи, исполняя компьютерную программу, хранимую во внутренней памяти кодера 2 речи. CPU кодера 2 речи исполняет компьютерную программу (использует функциональные блоки на фиг.3) для последовательного исполнения процесса, показанного на блок-схеме последовательности операций на фиг. 4 (процесс этапов S11-S20). Предполагается, что различные данные, требуемые для исполнения компьютерной программы, и различные данные, сгенерированные в результате исполнения компьютерной программы, сохраняются во внутренней памяти, такой как ROM и RAM, кодера 2 речи.
Блок 2a понижающей дискретизации обрабатывает внешний входной сигнал, который принимается при помощи устройства связи кодера 2 речи, и получает сигнал временной области с пониженной дискретизацией в низкочастотной полосе. Блок 2b кодирования низкочастотной полосы кодирует сигнал временной области с пониженной дискретизацией и получает кодированную последовательность низкочастотной полосы. Кодирование в блоке 2b кодирования низкочастотной полосы может основываться на способе кодирования речи, таком как CELP, или может основываться на кодировании с преобразованием, таком как AAC, или кодировании аудио, таком как TCX. Кроме того, оно может основываться на кодировании PCM. Кроме того, оно может основываться на способе, который использует эти способы кодирования переключаемым образом. В данном варианте осуществления способ кодирования конкретно не ограничивается.
Блок 2c банка фильтров разделения полосы частот анализирует внешний входной сигнал, который принимается при помощи устройства связи кодера 2 речи, и преобразует его в сигнал X(j,i) во всех частотных полосах в частотной области, где j представляет собой индекс по направлению частоты, i представляет собой индекс по направлению времени.
Блок 2d вычисления дополнительной информации для генерирования высокочастотной полосы принимает сигнал X(j,i) частотной области от блока 2c банка фильтров разделения полосы частот и вычисляет, основываясь на анализе мощности, изменений сигнала, тональности и т.п. высокочастотной полосы, дополнительную информацию для генерирования высокочастотной полосы, используемую при генерировании составляющих сигнала высокочастотной полосы из составляющих сигнала низкочастотной полосы.
Первый-n-ый блоки 2e1-2en вычисления временной огибающей низкочастотной полосы вычисляют множество разных временных огибающих составляющих низкочастотной полосы соответственно. Конкретно, k-ый блок 2ek (1≤k≤n) вычисления временной огибающей низкочастотной полосы принимает сигнал X(j,i) {0≤j
Блок 2f вычисления информации о временной огибающей принимает сигнал X(j,i) {kx≤j
Конкретно, вычисление информации о временной огибающей выполняется следующим образом. Сначала временная огибающая мощности вычисляется по следующему уравнению.
[Уравнение 33]
Затем, когда опорная временная огибающая в l-ой (1≤l≤nH) частотной полосе высокочастотной полосы представляется как H(l,i) {t(s)≤i [Уравнение 34]
или по следующему уравнению.
[Уравнение 35]
Отметьте, что опорная временная огибающая в высокочастотной полосе может получаться посредством выполнения заданной обработки (например, сглаживания) над H(l,i), подобно временной огибающей в низкочастотной полосе, описанной выше. Кроме того, опорная временная огибающая в высокочастотной полосе необязательно вычисляется по вышеупомянутому способу вычисления при условии, что она представляет собой параметр, представляющий изменение во времени мощности сигнала или амплитуды сигнала в сигнале высокочастотной полосы. Когда аппроксимация опорной временной огибающей H(l,i) временной огибающей L(k,i) представляется как g(l,i), вид g(l,i) согласовывается с видом gdec(l,i) в декодере 1 речи. Временная огибающая L(k,i) соответствует временной огибающей Ldec(k,i) на стороне декодера 1 речи.
Например, информация о временной огибающей может вычисляться посредством определения ошибки вышеупомянутой g(l,i) в отношении опорной временной огибающей H(l,i) и вычисления g(l,i), которая минимизирует ошибку. Конкретно, она может вычисляться, рассматривая ошибку как функцию информации о временной огибающей и определяя информацию о временной огибающей, которая дает минимальное значение ошибки. Вычисление информации о временной огибающей может выполняться численно или может вычисляться с использованием числовой формулы.
Более конкретно, ошибка вышеупомянутой g(l,i) в отношении опорной временной огибающей H(l,i) может вычисляться по следующему уравнению:
[Уравнение 36]
Далее, ошибка может вычисляться как взвешенная ошибка, используя следующее уравнение:
[Уравнение 37]
Кроме того, ошибка может вычисляться по следующему уравнению:
[Уравнение 38]
Весовой коэффициент w(l,i) может определяться как весовой коэффициент, который изменяется в зависимости от временного индекса i, или весовой коэффициент, который изменяется в зависимости от частотного индекса l, и он может определяться как весовой коэффициент, который изменяется в зависимости от временного индекса i и частотного индекса l. Отметьте, что в данном варианте осуществления вид ошибки и вид весового коэффициента конкретно не ограничиваются вышеприведенными примерами.
Блок 2g квантования/кодирования принимает информацию о временной огибающей от блока 2f вычисления информации о временной огибающей и затем квантует и кодирует информацию о временной огибающей, и принимает дополнительную информацию для генерирования высокочастотной полосы от блока 2d вычисления дополнительной информации для генерирования высокочастотной полосы и затем кодирует дополнительную информацию для генерирования высокочастотной полосы.
В качестве способа квантования и кодирования информации о временной огибающей, когда информация находится в виде коэффициента Al,k(s), например, Al,k(s) может скалярно квантоваться и затем энтропийно кодироваться. Кроме того, Al,k(s) может векторно квантоваться, используя заданную кодовую книгу, и затем его индекс может кодироваться. В данном варианте осуществления, однако, способ квантования и кодирования информации о временной огибающей не ограничивается вышеописанными.
Блок 2h составления кодированной последовательности высокочастотной полосы принимает кодированную дополнительную информацию для генерирования высокочастотной полосы и квантованную информацию о временной огибающей от блока 2g квантования/кодирования и составляет кодированную последовательность высокочастотной полосы, содержащую их.
Блок 2i мультиплексирования принимает кодированную последовательность низкочастотной полосы от блока 2b кодирования низкочастотной полосы и принимает кодированную последовательность высокочастотной полосы от блока 2h составления кодированной последовательности высокочастотной полосы, мультиплексирует эти две кодированные последовательности для генерирования кодированной последовательности и выводит сгенерированную кодированную последовательность.
Ниже в данном документе описывается работа кодера 2 речи, и способ кодирования речи в кодере 2 речи также подробно описывается с ссылкой на фиг. 4.
Сначала блок 2c банка фильтров разделения полосы частот анализирует входной речевой сигнал и, таким образом, получает сигнал X(j,i) частотной области во всех частотных полосах (этап S11). Затем блок 2a понижающей дискретизации обрабатывает внешний входной речевой сигнал и получает сигнал временной области с пониженной дискретизацией (этап S12). Затем блок 2b кодирования низкочастотной полосы кодирует сигнал временной области с пониженной дискретизацией и получает кодированную последовательность низкочастотной полосы (этап S13).
Далее, блок 2d вычисления дополнительной информации для генерирования высокочастотной полосы анализирует сигнал X(j,i) частотной области, полученный от блока 2c банка фильтров разделения полосы частот, и вычисляет дополнительную информацию для генерирования высокочастотной полосы, подлежащую использованию при генерировании составляющих сигнала высокочастотной полосы (этап S14). Затем первый-n-ый блоки 2e1-2en вычисления временной огибающей низкочастотной полосы вычисляют множество временных огибающих L(k,i) низкочастотной полосы, основываясь на сигнале X(j,i) низкочастотной полосы (этап S15). После этого блок 2f вычисления информации о временной огибающей вычисляет, основываясь на сигнале X(j,i) высокочастотной полосы и множестве временных огибающих L(k,i) низкочастотной полосы, информацию о временной огибающей, требуемую для получения временной огибающей составляющих высокочастотной полосы сигнала X(j,i) (этап S16). Затем блок 2g квантования/кодирования квантует и кодирует информацию о временной огибающей и кодирует дополнительную информацию для генерирования высокочастотной полосы (этап S17).
Далее, блок 2h составления кодированной последовательности высокочастотной полосы составляет кодированную последовательность высокочастотной полосы, содержащую кодированную дополнительную информацию для генерирования высокочастотной полосы и квантованную информацию о временной огибающей (этап S18). Затем блок 2i мультиплексирования генерирует кодированную последовательность посредством мультиплексирования кодированной последовательности низкочастотной полосы и кодированной последовательности высокочастотной полосы и выводит сгенерированную кодированную последовательность (этап S19).
В соответствии с декодером 1 речи, способом декодирования или программой декодирования, описанными выше, сигнал низкочастотной полосы получается из кодированной последовательности посредством демультиплексирования и декодирования, и дополнительная информация для генерирования высокочастотной полосы и информация о временной огибающей получаются из кодированной последовательности посредством демультиплексирования, декодирования и деквантования. Затем составляющая Xdec(j,i) высокочастотной полосы в частотной области генерируется из сигнала Xdec(j,i) низкочастотной полосы, преобразованного в частотную область, используя дополнительную информацию для генерирования высокочастотной полосы, и, с другой стороны, после получения множества временных огибающих Ldec(k,i) низкочастотной полосы посредством анализа сигнала Xdec(j,i) низкочастотной полосы в частотной области, временная огибающая ET(l,i) высокочастотной полосы вычисляется с использованием множества временных огибающих Ldec(k,i) низкочастотной полосы и информации о временной огибающей. Далее, временная огибающая составляющей XH(j,i) высокочастотной полосы корректируется посредством вычисленной временной огибающей ET(l,i) высокочастотной полосы, и откорректированная составляющая высокочастотной полосы и сигнал низкочастотной полосы суммируются вместе и, таким образом, выводится сигнал временной области. Таким образом, так как множество временных огибающих Ldec(k,i) низкочастотной полосы используется для коррекции временной огибающей составляющей XH(j,i) высокочастотной полосы, форма волны временной огибающей составляющей высокочастотной полосы корректируется с высокой точностью посредством использования корреляции между временной огибающей составляющих низкочастотной полосы и временной огибающей составляющих высокочастотной полосы. В результате, временная огибающая в декодированном сигнале корректируется в менее искаженную форму, и, поэтому, может быть получен воспроизводимый сигнал с меньшим опережающим эхо и запаздывающим эхо.
Кроме того, в соответствии с кодером 2 речи, способом кодирования или программой кодирования, описанными выше, сигнал низкочастотной полосы получается посредством понижающей дискретизации речевого сигнала, и кодируется сигнал низкочастотной полосы, и, с другой стороны, множество временных огибающих L(k,i) составляющих низкочастотной полосы вычисляется на основе речевого сигнала X(j,i) в частотной области, и информация о временной огибающей для получения временной огибающей составляющих высокочастотной полосы вычисляется с использованием множества временных огибающих L(k,i) составляющих низкочастотной полосы. Далее, вычисляется дополнительная информация для генерирования высокочастотной полосы для генерирования составляющих высокочастотной полосы из сигнала низкочастотной полосы, и, после того как дополнительная информация для генерирования высокочастотной полосы и информация о временной огибающей будут квантованы и кодированы, составляется кодированная последовательность высокочастотной полосы, содержащая дополнительную информацию для генерирования высокочастотной полосы и информацию о временной огибающей. Затем генерируется кодированная последовательность, в которой мультиплексируется кодированная последовательность низкочастотной полосы и кодированная последовательность высокочастотной полосы. Следовательно, когда кодированная последовательность вводится в декодер 1 речи, множество временных огибающих низкочастотной полосы может использоваться для коррекции временной огибающей составляющих высокочастотной полосы на стороне декодера 1 речи, и форма волны временной огибающей составляющих высокочастотной полосы, таким образом, корректируется с высокой точностью посредством использования корреляции между временной огибающей составляющих низкочастотной полосы и временной огибающей составляющих высокочастотной полосы на стороне декодера 1 речи. В результате, временная огибающая в декодированном сигнале корректируется в менее искаженную форму, и, поэтому, на стороне декодера может быть получен воспроизводимый сигнал с меньшим опережающим эхо и запаздывающим эхо.
[ПЕРВЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 5 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей в первом альтернативном примере декодера 1 речи согласно первому варианту осуществления, и фиг. 6 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей декодером 1 речи, показанным на фиг. 5.
Декодер 1 речи, показанный на фиг. 5, включает в себя блок 1k управления вычислением временной огибающей (средство управления вычислением временной огибающей) в дополнение к блокам 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоку 1g вычисления временной огибающей. Блок 1k управления вычислением временной огибающей принимает сигнал низкочастотной полосы от блока 1c банка фильтров разделения полосы частот, вычисляет мощность сигнала низкочастотной полосы в кадре (этап S31) и сравнивает вычисленную мощность сигнала низкочастотной полосы с заданным порогом (этап S32). Когда мощность сигнала низкочастотной полосы не больше заданного порога (НЕТ на этапе S32), блок 1k управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что вычисление временной огибающей не выполняется в блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы и в блоке 1g вычисления временной огибающей. В данном случае, временная огибающая сигнала высокочастотной полосы посылается на блок 1j банка фильтров синтеза полосы частот без выполнения коррекции, основываясь на вышеописанной временной огибающей (например, в вышеупомянутом уравнении 29 E(m,i) заменяется на Ecurr(m,i)), и следующее уравнение:
[Уравнение 39]
используется вместо вышеупомянутого уравнения 30) (этап S36). С другой стороны, когда мощность сигнала низкочастотной полосы больше заданного порога, блок 1k управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что вычисление временной огибающей выполняется в блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы и в блоке 1g вычисления временной огибающей. В данном случае, сигнал высокочастотной полосы, временная огибающая которого корректируется блоком 1i коррекции временной огибающей, основываясь на вышеописанной временной огибающей, посылается на блок 1j банка фильтров синтеза полосы частот.
Как показано на фиг. 6, в первом альтернативном примере декодера 1 речи процесс вычисления огибающей, показанный на этапах S31-S36, выполняется вместо процесса на этапах S07-S09 декодера 1 речи согласно первому варианту осуществления, показанному на фиг. 2.
В первом альтернативном примере декодера 1 речи, описанном выше, когда мощность сигнала низкочастотной полосы является низкой и не используется для вычисления временной огибающей сигнала высокочастотной полосы, процесс на этапах S07-S08 может пропускаться для уменьшения количества вычислений.
Отметьте, что блок 1k управления вычислением временной огибающей может вычислять мощность части, соответствующей первой-n-ой временным огибающим низкочастотной полосы, вычисленным первым-n-ым блоками 1f1-1fn вычисления временной огибающей низкочастотной полосы, выводить сигнал управления вычислением временной огибающей низкочастотной полосы, основываясь на результате сравнения вычисленной мощности, соответствующей первой-n-ой временным огибающим низкочастотной полосы, с заданным порогом и, таким образом, управлять, пропускать ли или нет обработку первого-n-ого блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы.
В данном случае, когда блок 1k управления вычислением временной огибающей выполняет управление для пропуска обработки всеми из первого-n-ого блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы, он выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, чтобы пропустить процесс вычисления временной огибающей. С другой стороны, когда блок 1k управления вычислением временной огибающей выполняет управление, так что по меньшей мере один из первого-n-ого блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы выполняет процесс вычисления временной огибающей низкочастотной полосы, он выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, чтобы выполнить процесс вычисления временной огибающей.
[ВТОРОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 7 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей во втором альтернативном примере декодера 1 речи согласно первому варианту осуществления, и фиг. 8 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую декодером 1 речи, показанным на фиг. 7.
Декодер 1 речи, показанный на фиг. 7, включает в себя блок 1m управления вычислением временной огибающей (средство управления вычислением временной огибающей) в дополнение к блокам 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоку 1g вычисления временной огибающей. Блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы, основываясь на информации о временной огибающей, принятой от блока 1e декодирования/деквантования кодированной последовательности, и управляет выполнением вычисления временной огибающей низкочастотной полосы в первом-n-ом блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы.
Более конкретно, во втором альтернативном примере декодера 1 речи выполняется процесс вычисления огибающей на этапах S41-S48, показанных на фиг. 8, который заменяет процесс на этапах S07-S09 декодера 1 речи согласно варианту осуществления, показанному на фиг. 2.
Сначала блок 1m управления вычислением временной огибающей устанавливает значение счета «count» на 0 (этап S41). Затем блок 1m управления вычислением временной огибающей определяет, равен ли коэффициент Al,count+1(s), содержащийся в информации о временной огибающей, принятой от блока 1e декодирования/деквантования кодированной последовательности, 0 или нет (этап S42).
В результате определения, когда коэффициент Al,count+1(s) равен 0 (НЕТ на этапе S42), блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на count-ый блок 1fcount вычисления временной огибающей низкочастотной полосы, так что не выполняется вычисление временной огибающей низкочастотной полосы в блоке 1fcount вычисления временной огибающей низкочастотной полосы, и затем переходит на этап S44. С другой стороны, когда определяется, что коэффициент Al,count+1(s) не равен 0 (ДА на этапе S42), блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на count-ый блок 1fcount вычисления временной огибающей низкочастотной полосы, так что выполняется вычисление временной огибающей низкочастотной полосы в блоке 1fcount вычисления временной огибающей низкочастотной полосы. Временная огибающая низкочастотной полосы вычисляется, таким образом, посредством блока 1fcount вычисления временной огибающей низкочастотной полосы (этап S43).
Далее, блок 1m управления вычислением временной огибающей увеличивает значение счета «count» на 1 (этап S44), и затем сравнивает значение счета «count» с количеством n блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы (этап S45). Когда значение счета «count» меньше количества n (ДА на этапе S45), процесс возвращается на этап S42 и повторяет определение для следующего коэффициента Al,count(s), содержащегося в информации о временной огибающей. С другой стороны, когда значение счета «count» равно или больше количества n (НЕТ на этапе S45), процесс переходит на этап S46. Затем блок 1m управления вычислением временной огибающей определяет, выполняется ли вычисление временной огибающей низкочастотной полосы в одном или нескольких блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы (этап S46). В результате определения, когда не выполняется вычисление временной огибающей низкочастотной полосы ни в каком из блоков 1f1-1fn вычисления временной огибающей низкочастотной полосы (НЕТ на этапе S46), блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, чтобы пропустить процесс вычисления временной огибающей. В данном случае, этап S49 выполняется вместо этапа S47-S48, и затем процесс переходит на этап S10 (фиг. 2). С другой стороны, когда выполняется вычисление временной огибающей низкочастотной полосы в одном или нескольких блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы (ДА на этапе S46), блок 1g вычисления временной огибающей выполняет процесс вычисления временной огибающей (этап S47). Затем блок 1i коррекции временной огибающей выполняет коррекцию временной огибающей сигнала высокочастотной полосы (этап S48). После этого блок 1j банка фильтров синтеза полосы частот синтезирует выходной сигнал.
Посредством второго альтернативного примера декодера 1 речи, описанного выше, когда часть процесса не требуется на основе информации о временной огибающей, полученной из кодированной последовательности, любая часть процесса на этапах S07-S08 может быть пропущена для уменьшения количества вычислений.
[ТРЕТИЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 9 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей согласно третьему альтернативному примеру декодера 1 речи согласно первому варианту осуществления, и фиг. 10 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей декодером 1 речи, показанным на фиг. 9.
Декодер 1 речи, показанный на фиг. 9, включает в себя блок 1n управления вычислением временной огибающей (средство управления вычислением временной огибающей) в дополнение к блокам 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоку 1g вычисления временной огибающей. Блок 1n управления вычислением временной огибающей принимает информацию управления вычислением временной огибающей от блока 1d анализа кодированной последовательности. В данном альтернативном примере информация управления вычислением временной огибающей описывает, выполнять ли или нет процесс вычисления временной огибающей в кадре. Когда требуется декодирование и деквантование для считывания описания информации управления вычислением временной огибающей, блок 1e декодирования/деквантования кодированной последовательности выполняет декодирование и деквантование. Кроме того, блок 1n управления вычислением временной огибающей определяет, выполнять ли или нет процесс вычисления временной огибающей в кадре посредством ссылки на информацию управления вычислением временной огибающей. Когда блок 1n управления вычислением временной огибающей определяет не выполнять процесс вычисления временной огибающей, он выводит сигнал управления вычислением временной огибающей низкочастотной полосы на блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что процесс вычисления временной огибающей не выполняется в блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоке 1g вычисления временной огибающей. В данном случае, сигнал высокочастотной полосы посылается на блок 1j банка фильтров синтеза полосы частот без коррекции его временной огибающей, основанной на вышеописанной временной огибающей. С другой стороны, когда блок 1n управления вычислением временной огибающей определяет выполнение процесса вычисления временной огибающей, он выводит сигнал управления вычислением временной огибающей низкочастотной полосы на блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что процесс вычисления временной огибающей выполняется в блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоке 1g вычисления временной огибающей. В данном случае, сигнал высокочастотной полосы посылается на блок 1j банка фильтров синтеза полосы частот, после того как его временная огибающая будет скорректирована в блоке 1i коррекции временной огибающей.
Как показано на фиг. 10, в третьем альтернативном примере декодера 1 речи процесс вычисления огибающей на этапах S51-S54 выполняется вместо процесса этапов S07-S09 декодера 1 речи согласно первому варианту осуществления, показанному на фиг. 2.
В третьем альтернативном примере декодера 1 речи, описанным также выше, процесс на этапах S07-S08 может быть пропущен на основе информации управления от кодера, таким образом, уменьшая количество вычислений.
[ЧЕТВЕРТЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 11 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую четвертым альтернативным примером декодера 1 речи согласно первому варианту осуществления. Отметьте, что конфигурация четвертого альтернативного примера декодера 1 речи является такой же, что и конфигурация, показанная на фиг. 9.
В четвертом альтернативном примере процесс вычисления огибающей на этапах S61-S64, показанных на фиг. 11, выполняется вместо процесса на этапах S07-S09 декодера 1 речи согласно первому варианту осуществления, показанному на фиг. 2.
Конкретно, информация управления вычислением временной огибающей описывает временную огибающую низкочастотной полосы, подлежащую использованию для вычисления временной огибающей в кадре из числа первой-n-ой временных огибающих низкочастотной полосы. Когда требуется декодирование и деквантование для считывания описания информации управления вычислением временной огибающей, блок 1e декодирования/деквантования кодированной последовательности выполняет декодирование и деквантование. Затем блок 1n управления вычислением временной огибающей выбирает, основываясь на информации управления вычислением временной огибающей, временную огибающую низкочастотной полосы, подлежащую использованию для процесса вычисления временной огибающей в кадре (этап S61).
Затем блок 1n управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы. Он управляется таким образом, так что временная огибающая низкочастотной полосы вычисляется блоком 1f1-1fn вычисления временной огибающей низкочастотной полосы, соответствующим временной огибающей низкочастотной полосы, которая выбрана при вышеупомянутом выборе, и временная огибающая низкочастотной полосы не вычисляется блоком 1f1-1fn вычисления временной огибающей низкочастотной полосы, соответствующим временным огибающим низкочастотной полосы, которая не выбрана при вышеупомянутом выборе (этап S62).
После этого блок 1n управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что временная огибающая вычисляется с использованием только выбранной временной огибающей низкочастотной полосы (этап S63). Кроме того, блок 1i коррекции временной огибающей корректирует, используя вычисленную временную огибающую, временную огибающую сигнала высокочастотной полосы, сгенерированного в блоке 1h генерирования высокочастотной полосы (этап S64).
Кроме того, когда никакая из временных огибающих низкочастотной полосы не выбрана при вышеупомянутом выборе, этапы S62-S63 могут быть пропущены, и сигнал высокочастотной полосы может посылаться на блок 1j банка фильтров синтеза полосы частот без коррекции его временной огибающей, основанной на вышеописанной временной огибающей (этап S36 на фиг. 6).
В четвертом альтернативном примере декодера 1 речи, также описанным выше, процесс на этапах S07-S08 может быть пропущен, основываясь на информации управления от кодера, для уменьшения количества вычислений.
[ПЯТЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 12 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую пятым альтернативным примером декодера 1 речи согласно первому варианту осуществления. Отметьте, что конфигурация пятого альтернативного примера декодера 1 речи такая же, что конфигурация, показанная на фиг. 9.
В пятом альтернативном примере процесс вычисления огибающей на этапах S71-S75, показанных на фиг. 12, выполняется вместо процесса на этапах S07-S09 декодера 1 речи согласно первому варианту осуществления, показанному на фиг. 2.
Конкретно, информация управления вычислением временной огибающей описывает способ вычисления первой-n-ой временных огибающих низкочастотной полосы в кадре. Когда требуется декодирование и деквантование для считывания описания информации управления вычислением временной огибающей, блок 1e декодирования/деквантования кодированной последовательности выполняет декодирование и деквантование. Способ вычисления первой-n-ой временных огибающих низкочастотной полосы, описанный в информации управления вычислением временной огибающей, может представлять собой содержимое, относящееся к установлению массивов B1 и Bh, представляющих субполосы, например, и частотный диапазон субполосы может управляться на основе информации управления вычислением временной огибающей. Содержимое, относящееся к установлению массивов B1 и Bh, может представлять собой описание набора целых чисел (k1,kh) для установления массивов B1 и Bhили описание, относящееся к выбору из множества заданных содержимых установления массивов B1 и Bh. В данном альтернативном примере способ описания содержимого, относящегося к установлению массивов B1 и Bh, не ограничивается конкретно. Кроме того, способ вычисления первой-n-ой временных огибающих низкочастотной полосы, описанный в информации управления вычислением временной огибающей, может представлять собой содержимое, относящееся к установлению заданной обработки (например, содержимое, относящееся к установлению коэффициента sc(j) сглаживания, описанному выше), и заданная обработка (например, сглаживание) может управляться на основе информации управления вычислением временной огибающей. Содержимое, относящееся к установлению коэффициента sc(j) сглаживания, может быть результатом квантования и кодирования значения коэффициента sc(j) сглаживания или может быть содержимым, относящимся к выбору любого одного из множества заданных коэффициентов sc(j) сглаживания. Кроме того, оно может включать в себя описание, выполнять ли или нет сглаживание. В данном альтернативном примере способ описания содержимого, относящегося к установлению заданной обработки (например, установление коэффициента sc(j) сглаживания, описанного выше) не ограничивается конкретно. Кроме того, способ вычисления первой-n-ой временных огибающих низкочастотной полосы, описанный в информации управления вычислением временной огибающей, может включать в себя по меньшей мере один из вышеупомянутых способов вычисления. Отметьте, что в данном альтернативном примере способ вычисления первой-n-ой временных огибающих низкочастотной полосы, описанный в информации управления вычислением временной огибающей, не ограничивается вышеприведенным описанием, пока описывается содержимое, относящееся к способу вычисления временной огибающей низкочастотной полосы.
На этапе S71 блок 1n управления вычислением временной огибающей определяет, основываясь на информации управления вычислением временной огибающей, сменить ли или нет способ вычисления временной огибающей низкочастотной полосы в кадре. Когда определяется не менять способ вычисления временной огибающей низкочастотной полосы (НЕТ на этапе S71), первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы вычисляют первую-n-ую временные огибающие низкочастотной полосы без изменения способа вычисления временной огибающей низкочастотной полосы (этап S73). С другой стороны, когда определяется сменить способ вычисления временной огибающей низкочастотной полосы (ДА на этапе S71), блок 1n управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и, таким образом, инструктирует способ вычисления временной огибающей низкочастотной полосы, так что меняется способ вычисления временной огибающей низкочастотной полосы (этап S72). После этого, первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы вычисляют первую-n-ую временные огибающие низкочастотной полосы по измененному способу вычисления временной огибающей низкочастотной полосы (этап S73). Кроме того, блок 1g вычисления временной огибающей вычисляет временную огибающую посредством использования первой-n-ой временных огибающих низкочастотной полосы, вычисленных первым-n-ым блоками 1f1-1fn вычисления временной огибающей низкочастотной полосы (этап S74). Затем блок 1i коррекции временной огибающей корректирует, используя временную огибающую, вычисленную в блоке 1g вычисления временной огибающей, временную огибающую сигнала высокочастотной полосы, сгенерированного в блоке 1h генерирования высокочастотной полосы (этап S75).
В пятом альтернативном примере декодера 1 речи, также описанным выше, процесс на этапах S07-S08 может точно управляться на основе информации управления от кодера, таким образом позволяя выполнять очень точную коррекцию временной огибающей.
[ШЕСТОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 13 представляет собой схему, изображающую конфигурацию главной части, относящейся к вычислению огибающей в шестом альтернативном примере декодера 1 речи согласно первому варианту осуществления. Декодер 1 речи, показанный на фиг. 13, включает в себя блок 1o управления вычислением временной огибающей (средство управления вычислением временной огибающей) в дополнение к блокам 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоку 1g вычисления временной огибающей. Блок 1o управления вычислением временной огибающей выполнен с возможностью выполнения любого одного или нескольких из процессов вычисления огибающей в первом-пятом альтернативных примерах декодера 1 речи.
[СЕДЬМОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 14 представляет собой блок-схему последовательности операций, изображающую процедуру вычисления огибающей, выполняемую седьмым альтернативным примером декодера 1 речи согласно первому варианту осуществления. Отметьте, что конфигурация седьмого альтернативного примера декодера 1 речи является такой же, что и конфигурация декодера 1 речи согласно первому варианту осуществления. Этапы S261-S262 на фиг. 14 заменяют этап S08 на блок-схеме последовательности операций на фиг. 2, изображающей процесс декодера 1 речи согласно первому варианту осуществления.
В данном альтернативном примере блок 1g вычисления временной огибающей выполняет заданную обработку (обработку этапа S261), используя временную огибающую Ldec(k,i) {1≤k≤n, t(s)≤i
В первом примере, коэффициент Al,k(s) в уравнении 18, 21, 23 или 24 вычисляется с использованием информации о временной огибающей, подаваемой в другом виде от блока 1e декодирования/деквантования кодированной последовательности. Например, коэффициент вычисляется по следующему уравнению.
[Уравнение 40]
где αk(s), k=1,2,…,Num, 0≤sE представляет собой информацию о временной огибающей, подаваемую от блока 1e декодирования/деквантования кодированной последовательности, и Flk(x1,x2,…,xNum), 1≤l≤nH, 1≤k≤n представляет собой заданную функцию с Num количеством переменных в качестве аргументов. После этого, используя коэффициент Al,k(s), полученный в вышеупомянутом способе, вычисляется временная огибающая по уравнению 18, 21, 23 или 24.
Во втором примере, сначала вычисляется величина, определяемая следующим уравнением.
[Уравнение 41]
Отметьте, что следующее уравнение:
[Уравнение 42]
представляет собой заданный коэффициент.
Кроме того, вышеописанная g(0)(l,i) может представлять собой заданный коэффициент или заданную функцию для индекса l, i. Например, g(0)(l,i) может представлять собой функцию, определяемую следующим уравнением.
[Уравнение 43]
Затем вычисляется величина, соответствующая левой стороне уравнения 18, 21, 23 или 24, и результат представляется как g(1)(l,i) {1≤l≤nН, t(s)≤i
[Уравнение 44]
Кроме того, временная огибающая может вычисляться по следующему уравнению.
[Уравнение 45]
Кроме того, временная огибающая может вычисляться по следующему уравнению.
[Уравнение 46]
Когда информация о временной огибающей не подается от блока 1e декодирования/деквантования кодированной последовательности, временная огибающая может вычисляться по следующему уравнению.
[Уравнение 47]
В данном альтернативном примере вид вышеописанной gdec(l,i) не ограничивается вышеупомянутым примером.
Отметьте, что в настоящем изобретении заданная обработка и вычисление временной огибающей, связанной с ней, не ограничивается вышеупомянутыми примерами.
Данный альтернативный пример может применяться к первому-шестому альтернативным примерам декодера 1 речи согласно первому варианту осуществления следующим образом.
В случае применения в первом альтернативном примере декодера 1 речи согласно первому варианту осуществления, этап S34 на фиг. 6 заменяется, например, этапами S261-S262 на фиг. 14. Множество видов вышеописанной заданной обработки может быть подготовлено заранее и может меняться в зависимости от мощности сигнала низкочастотной полосы. Кроме того, любой один из a) вычисления временной огибающей посредством выполнения только вышеописанной заданной обработки, b) вычисления временной огибающей посредством выполнения вышеописанной заданной обработки и дополнительного использования информации о временной огибающей и c) вычисления временной огибающей, используя информацию о временной огибающей, без выполнения вышеописанной заданной обработки может выбираться в зависимости от мощности сигнала низкочастотной полосы.
Фиг. 15 представляет собой блок-схему последовательности операций, изображающую часть обработки, выполняемой блоком 1m управления вычислением временной огибающей, когда седьмой альтернативный пример декодера 1 речи согласно первому варианту осуществления применяется во втором альтернативном примере декодера 1 речи согласно первому варианту осуществления.
В случае применения во втором альтернативном примере декодера 1 речи согласно первому варианту осуществления, этап S42 на фиг. 8 заменяется этапом S271 на фиг. 15, и этап S47 на фиг. 8 заменяется, например, этапами S261-S262 на фиг. 14. Множество видов вышеописанной заданной обработки может быть подготовлено заранее и может меняться в зависимости от информации о временной огибающей. Кроме того, может быть выбран любой один процесс в зависимости от информации о временной огибающей из a) вычисления временной огибающей посредством выполнения только вышеописанной заданной обработки, b) вычисления временной огибающей посредством выполнения вышеописанной заданной обработки и дополнительного использования информации о временной огибающей и c) вычисления временной огибающей, используя информацию о временной огибающей, без выполнения вышеописанной заданной обработки.
В случае применения в третьем альтернативном примере декодера 1 речи согласно первому варианту осуществления, этап S53 на фиг. 10 заменяется этапами S261-S262 на фиг. 14. Множество видов вышеописанной заданной обработки может быть подготовлено заранее и может меняться в зависимости от информации управления вычислением временной огибающей. Кроме того, может быть выбрано любое одно в зависимости от информации управления вычислением временной огибающей из a) вычисления временной огибающей посредством выполнения только вышеописанной заданной обработки, b) вычисления временной огибающей посредством выполнения вышеописанной заданной обработки и дополнительного использования информации о временной огибающей и c) вычисления временной огибающей, используя информацию о временной огибающей, без выполнения вышеописанной заданной обработки.
Фиг. 16 представляет собой блок-схему последовательности операций, изображающую часть обработки, выполняемую блоком 1n управления вычислением временной огибающей, когда седьмой альтернативный пример декодера 1 речи согласно первому варианту осуществления применяется в четвертом альтернативном примере декодера 1 речи согласно первому варианту осуществления.
В случае применения в четвертом альтернативном примере декодера 1 речи согласно первому варианту осуществления, этап S61 на фиг. 11 заменяется этапом S281 на фиг. 16, и этап S63 на фиг. 11 заменяется этапами S261-S262 на фиг. 14. На этапе S281 на фиг. 16 в качестве способа выбора временной огибающей составляющих низкочастотной полосы, вычисляемой из первой-n-ой временных огибающих низкочастотной полосы, может проверяться, равен ли нулю или нет A(0)l,k в одном примере вышеописанной заданной обработки, и блок 1fk вычисления временной огибающей сигнала низкочастотной полосы может вычислять Ldec(k,i), когда A(0)l,k не равен нулю, и он направляется на вычисление Ldec(k,i) в блоке 1fk вычисления временной огибающей сигнала низкочастотной полосы в информации управления вычислением временной огибающей.
В случае применения в пятом альтернативном примере декодера 1 речи согласно первому варианту осуществления, этап S74 на фиг. 12 заменяется этапами S261-S262 на фиг. 14. Когда меняется способ вычисления временной огибающей составляющих низкочастотной полосы, вышеописанный способ обработки может быть изменен соответствующим образом.
Кроме того, применение в шестом альтернативном примере декодера 1 речи согласно первому варианту осуществления выполняется в соответствии со способом применения в первом-пятом альтернативных примерах, описанных выше.
Отметьте, что, хотя последовательность операций, которая вычисляет временную огибающую после выполнения заданной обработки показана на фиг. 14, заданная обработка может выполняться после вычисления временной огибающей. Например, заданная обработка, такая как сглаживание, может выполняться над вычисленной временной огибающей. Кроме того, временная огибающая может вычисляться после выполнения заданной обработки, и еще другая заданная обработка может выполняться над этой временной огибающей.
[ПЕРВЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 17 представляет собой схему, изображающую конфигурацию первого альтернативного примера кодера 2 речи согласно первому варианту осуществления, и фиг. 18 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 2 речи, показанным на фиг. 17.
В кодере 2 речи, показанном на фиг. 17, блок 2j генерирования информации управления вычислением временной огибающей (средство генерирования информации управления) добавляется к кодеру 2 речи согласно первому варианту осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, используя по меньшей мере одно из сигнала X(j,i) в области частотной полосы, принимаемого от блока 2c банка фильтров разделения полосы частот, и информации о временной огибающей, принимаемой от блока 2f вычисления информации о временной огибающей. Сгенерированная информация управления вычислением временной огибающей может быть любой из информации управления вычислением временной огибающей в третьем-седьмом альтернативных примерах декодера 1 речи согласно первому варианту осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей может вычислять мощность сигнала в частотной полосе, соответствующей сигналу низкочастотной полосы в сигнале X(j,i) в частотной области, принимаемому от блока 2c банка фильтров разделения полосы частот, например, и генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи в соответствии с вычисленной мощностью сигнала.
Альтернативно, блок 2j генерирования информации управления вычислением временной огибающей может вычислять мощность сигнала в частотной полосе, соответствующей сигналу высокочастотной полосы в сигнале X(j,i) в частотной области и генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи в соответствии с вычисленной мощностью сигнала.
Кроме того, блок 2j генерирования информации управления вычислением временной огибающей может вычислять мощность сигнала в частотной полосе, соответствующей сигналу всей частотной полосы (т.е. частотной полосе, соответствующей сигналу низкочастотной полосы, и частотной полосе, соответствующей сигналу высокочастотной полосы) в сигнале X(j,i) в частотной области, и генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере в соответствии с вычисленной мощностью сигнала.
Блок 2j генерирования информации управления вычислением временной огибающей может вычислять мощность части, соответствующей первой-n-ой временным огибающим низкочастотной полосы, вычисленным первым-n-ым блоками 2e1-2en вычисления временной огибающей низкочастотной полосы, и генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, используемой для вычисления временной огибающей в декодере 1 речи в соответствии с вычисленной мощностью сигнала.
Блок 2j генерирования информации управления вычислением временной огибающей может вычислять мощность сигнала в частотной полосе, соответствующей сигналу низкочастотной полосы сигнала X(j,i) в частотной области, и генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи в соответствии с вычисленной мощностью сигнала.
В данном альтернативном примере частотная полоса вычисляемой мощности сигнала конкретно не ограничивается, и информация управления вычислением временной огибающей, которая генерируется в соответствии с вычисленной мощностью сигнала, может быть любой одной или несколькими из информации управления вычислением временной огибающей в третьем-седьмом альтернативных примерах декодера 1 речи согласно первому варианту осуществления, описанному выше.
Кроме того, блок 2j генерирования информации управления вычислением временной огибающей может обнаруживать или измерять характеристики сигнала у сигнала X(j,i) в частотной области и генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи в соответствии с вычисленными характеристиками сигнала.
Альтернативно, блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи в соответствии с характеристиками сигнала у сигнала X(j,i) в частотной области.
Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи в соответствии с характеристиками сигнала у сигнала X(j,i) в частотной области.
Отметьте, что характеристики сигнала, обнаруженные или измеренные в блоке 2j генерирования информации управления вычислением временной огибающей, могут представлять собой характеристики, относящиеся к крутизне переднего фронта или заднего фронта сигнала. Характеристиками сигнала могут быть характеристики, относящиеся к стационарности сигнала. Характеристиками сигнала могут быть характеристики, относящиеся к интенсивности тональности сигнала. Кроме того, характеристиками сигнала могут быть по меньшей мере одна из вышеупомянутых характеристик.
В данном альтернативном примере характеристики сигнала, подлежащие обнаружению или измерению, не ограничиваются конкретно, и информация управления вычислением временной огибающей, которая генерируется в соответствии с обнаруженными или измеренными характеристиками сигнала, может быть любой одной или несколькими из информации управления вычислением временной огибающей в третьем-шестом альтернативных примерах декодера 1 речи согласно первому варианту осуществления, описанному выше.
Кроме того, блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи в соответствии со значением информации Al,k(s) {1≤l≤nH, 1≤k≤n, 0≤sE} о временной огибающей, принимаемой от блока 2f вычисления информации о временной огибающей, например. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи.
В данном альтернативном примере информация управления вычислением временной огибающей, которая генерируется в соответствии с информацией о временной огибающей, может представлять собой любую одну или несколько из информации управления вычислением временной огибающей в третьем-шестом альтернативных примерах декодера 1 речи согласно первому варианту осуществления, описанному выше.
Альтернативно, блок 2j генерирования информации управления вычислением временной огибающей может генерировать, используя сигнал X(j,i) в частотной области, принимаемый от блока 2c банка фильтров разделения полосы частот, и кодированную последовательность дополнительной информации для генерирования высокочастотной полосы, принимаемой от блока 2g квантования/кодирования, например, информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи.
Более конкретно, блок 2j генерирования информации управления вычислением временной огибающей может декодировать и деквантовать кодированную последовательность дополнительной информации для генерирования высокочастотной полосы, принимаемой от блока 2g квантования/кодирования, и, таким образом, получает локально декодированную дополнительную информацию для генерирования высокочастотной полосы, и затем генерирует псевдо локально декодированный сигнал высокочастотной полосы, используя локально декодированную дополнительную информацию для генерирования высокочастотной полосы и сигнал X(j,i) в частотной области. Псевдо локально декодированный сигнал высокочастотной полосы может генерироваться посредством выполнения такой же обработки, что и блока 1h генерирования высокочастотной полосы декодера 1 речи согласно первому варианту осуществления. Блок 2j генерирования информации управления вычислением временной огибающей сравнивает сгенерированный псевдо локально декодированный сигнал высокочастотной полосы с частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области и генерирует информацию управления вычислением временной огибающей, основываясь на результате сравнения.
Сравнение между псевдо локально декодированным сигналом высокочастотной полосы и частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, может выполняться посредством вычисления разностного сигнала двух сигналов и может основываться на мощности разностного сигнала. Кроме того, оно может выполняться посредством вычисления временных огибающих псевдо локально декодированного сигнала высокочастотной полосы и частотной полосы, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, и основывается на по меньшей мере одном из разности временных огибающих и амплитуды разности.
Альтернативно, блок 2j генерирования информации управления вычислением временной огибающей может генерировать, используя, например, сигнал X(j,i) в частотной области, принимаемый от блока 2c банка фильтров разделения полосы частот, информацию о временной огибающей, принимаемую от блока 2f вычисления информации о временной огибающей, и кодированную последовательность дополнительной информации для генерирования высокочастотной полосы, принимаемой от блока 2g квантования/кодирования, информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи.
Более конкретно, блок 2j генерирования информации управления вычислением временной огибающей может генерировать псевдо локально декодированный сигнал высокочастотной полосы и корректировать временную огибающую псевдо локально декодированного сигнала высокочастотной полосы посредством использования информации о временной огибающей, принимаемой от блока 2f вычисления информации о временной огибающей, и затем сравнивать псевдо локально декодированный сигнал высокочастотной полосы с откорректированной временной огибающей с частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, и генерировать информацию управления вычислением временной огибающей, основываясь на результате сравнения.
Сравнение между псевдо локально декодированным сигналом высокочастотной полосы с откорректированной временной огибающей и частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, может выполняться таким же образом, как выполняется сравнение между псевдо локально декодированным сигналом высокочастотной полосы и частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области.
Кроме того, в блоке 2f вычисления информации о временной огибающей кодера 2 речи согласно первому варианту осуществления, информация о временной огибающей может вычисляться с использованием псевдо локально декодированного сигнала высокочастотной полосы. Более конкретно, кодированная последовательность дополнительной информации для генерирования высокочастотной полосы, принимаемой от блока 2g квантования/кодирования, дополнительно вводится в блок 2f вычисления информации о временной огибающей, и кодированная последовательность дополнительной информации для генерирования высокочастотной полосы декодируется и деквантуется для получения локально декодированной дополнительной информации для генерирования высокочастотной полосы, и псевдо локально декодированный сигнал высокочастотной полосы генерируется с использованием локально декодированной дополнительной информации для генерирования высокочастотной полосы и сигнала X(j,i) в частотной области.
Например, блок 2f вычисления информации о временной огибающей может выводить, в качестве вычисленной информации о временной огибающей, информацию о временной огибающей, которая позволяет получить наилучшую аппроксимацию частотной полосы, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, когда временная огибающая псевдо локально декодированного сигнала высокочастотной полосы корректируется с использованием временной огибающей, вычисленной из информации о временной огибающей. Определение, является ли она близкой к частотной полосе, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, может выполняться на основе разностного сигнала между псевдо локально декодированным сигналом высокочастотной полосы с откорректированной временной огибающей и частотной полосой, соответствующей сигналу высокочастотной полосы сигнала X(j,i) в частотной области, или может основываться на ошибке между временными огибающими этих сигналов.
Альтернативно, блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, указывающую, выполнять ли или нет вычисление временной огибающей в декодере 1 речи в соответствии с количеством информации (более конкретно, количеством битов), необходимой для кодирования информации о временной огибающей, принимаемой от блока 2g квантования/кодирования, например. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи. Блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи.
Более конкретно, блок 2j генерирования информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, указывающую выполнение вычисления временной огибающей в декодере 1 речи, когда количество информации (более конкретно, количество битов), необходимой для кодирования информации о временной огибающей, принимаемой от блока 2g квантования/кодирования, равно или меньше, например, заданного порога. С другой стороны, когда количество информации, необходимой для кодирования информации о временной огибающей больше заданного порога, блок 2j генерирования информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, указывающую не выполнять вычисление временной огибающей в декодере 1 речи.
Кроме того, блок 2j генерирования информации управления вычислением временной огибающей может генерировать информацию управления вычислением временной огибающей, относящуюся к выбору временной огибающей низкочастотной полосы, подлежащей использованию для вычисления временной огибающей в декодере 1 речи, так что количество информации, необходимой для кодирования информации о временной огибающей, равно или меньше заданного порога. В этот момент, блок 2j генерирования информации управления вычислением временной огибающей может уведомить о результате сравнения количества информации, необходимой для кодирования информации о временной огибающей, с порогом блок 2f вычисления информации о временной огибающей, и блок 2f вычисления информации о временной огибающей может повторно вычислить информацию о временной огибающей в соответствии с уведомленным результатом сравнения. Отметьте, что, в случае, когда повторно вычисляется информация о временной огибающей, блок 2g квантования/кодирования кодирует и квантует повторно вычисленную информацию о временной огибающей. Количество повторных вычислений информации о временной огибающей конкретно не ограничивается.
В данном альтернативном примере информация управления вычислением временной огибающей вычисляется на основе количества информации, необходимой для кодирования информации о временной огибающей, и информация управления вычислением временной огибающей, подлежащая генерированию, может быть любой одной или несколькими из информации управления вычислением временной огибающей в третьем-шестом альтернативных примерах декодера 1 речи согласно первому варианту осуществления, описанному выше.
Информация управления вычислением временной огибающей, генерируемая блоком 2j генерирования информации управления вычислением временной огибающей вышеописанным образом, дополнительно добавляется к кодированной последовательности высокочастотной полосы блоком 2h составления кодированной последовательности высокочастотной полосы, и, таким образом, составляется кодированная последовательность высокочастотной полосы.
[ВТОРОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 19 представляет собой схему, изображающую конфигурацию второго альтернативного примера кодера 2 речи согласно первому варианту осуществления, и фиг. 20 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 2 речи, показанным на фиг. 19.
В кодере 2 речи, показанном на фиг. 19, блок 2k декодирования низкочастотной полосы добавлен к кодеру 2 речи согласно первому варианту осуществления.
Блок 2k декодирования низкочастотной полосы принимает кодированную последовательность низкочастотной полосы от блока 2b кодирования низкочастотной полосы, декодирует и деквантует кодированную последовательность низкочастотной полосы и, таким образом, получает локально декодированный сигнал низкочастотной полосы. Отметьте, что, когда квантованный сигнал низкочастотной полосы может быть получен от блока 2b кодирования низкочастотной полосы, блок 2k декодирования низкочастотной полосы может деквантовать квантованный сигнал низкочастотной полосы и получать локально декодированный сигнал низкочастотной полосы. Затем блоки 2e1-2en вычисления временной огибающей низкочастотной полосы вычисляют первую-n-ую временные огибающие низкочастотной полосы посредством использования локально декодированного сигнала низкочастотной полосы, полученного блоком 2k декодирования низкочастотной полосы.
Отметьте, что второй альтернативный пример кодера 2 речи согласно первому варианту осуществления может быть применен также к первому альтернативному примеру кодера 2 речи согласно первому варианту осуществления.
[ТРЕТИЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 21 представляет собой схему, изображающую конфигурацию третьего альтернативного примера кодера 2 речи согласно первому варианту осуществления, и фиг. 22 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 2 речи, показанным на фиг. 21.
Кодер 2 речи, показанный на фиг. 21, отличается от кодера 2 речи согласно первому варианту осуществления тем, что он включает в себя блок 2m банка фильтров синтеза полосы частот вместо блока 2a понижающей дискретизации.
Блок 2m банка фильтров синтеза полосы частот принимает сигнал X(j,i) в частотной области от блока 2c банка фильтров разделения полосы частот, выполняет синтез полосы частот для частотной полосы, соответствующей сигналу низкочастотной полосы, и, таким образом, получает сигнал с пониженной дискретизацией. Получение сигнала с пониженной дискретизацией посредством синтеза полосы частот может выполняться, например, согласно способу банка фильтров синтеза с пониженной дискретизацией в SBR «MPEG4 AAC», определенным в «ISO/IEC 14496-3» («ISO/IEC 14496-3 subpart 4 General Audio Coding»).
Отметьте, что третий альтернативный пример кодера 2 речи согласно первому варианту осуществления может применяться также в первом и втором альтернативных примерах кодера 2 речи согласно первому варианту осуществления.
В четвертом альтернативном примере кодера 2 речи согласно первому варианту осуществления, заданная обработка, соответствующая седьмому альтернативному примеру декодера 1 речи согласно первому варианту осуществления, описанному выше, выполняется при вычислении g(l,i) в блоке 2f вычисления информации о временной огибающей кодера 2 речи согласно первому варианту осуществления. Отметьте, что, как описано в седьмом альтернативном примере декодера 1 речи согласно первому варианту осуществления, g(l,i) может вычисляться с использованием временной огибающей низкочастотной полосы после выполнения заданной обработки, или g(l,i) может вычисляться посредством выполнения заданной обработки после вычисления g(l,i), используя временную огибающую низкочастотной полосы.
Отметьте, что четвертый альтернативный пример кодера 2 речи согласно первому варианту осуществления может применяться также в первом-третьем альтернативных примерах кодера 2 речи согласно первому варианту осуществления.
В случае применения четвертого альтернативного примера кодера 2 речи согласно первому варианту осуществления в первом альтернативном примере кодера 2 речи согласно первому варианту осуществления, информация, выполнять ли или нет вышеописанную заданную обработку в декодере 1 речи согласно первому варианту осуществления, может содержаться в информации управления вычислением временной огибающей, основанной на ошибке g(l,i) в отношении H(l,i), описанного выше.
[ВТОРОЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ]
Второй вариант осуществления настоящего изобретения описывается ниже в данном документе.
Фиг. 23 представляет собой схему, изображающую конфигурацию декодера 101 речи согласно второму варианту осуществления, и фиг. 24 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи декодером 101 речи, показанным на фиг. 23. Декодер 101 речи на фиг. 23 отличается от декодера 1 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 1q наложения частотной огибающей (средство наложения частотной огибающей), и что он включает в себя блок 1p коррекции частотно-временной огибающей (средство коррекции частотно-временной огибающей) вместо блока 1i коррекции временной огибающей (1c-1e, 1h, 1j и 1p иногда упоминаются также как блок расширения полосы частот (средство расширения полосы частот)).
Блок 1d анализа кодированной последовательности анализирует кодированную последовательность высокочастотной полосы, подаваемую от блока 1a демультиплексирования, и, таким образом, получает кодированную дополнительную информацию для генерирования высокочастотной полосы и квантованную информацию о частотно-временной огибающей.
Блок 1e декодирования/деквантования кодированной последовательности декодирует кодированную дополнительную информацию для генерирования высокочастотной полосы, подаваемую от блока 1d анализа кодированной последовательности, и, таким образом, получает дополнительную информацию для генерирования высокочастотной полосы, и деквантует квантованную информацию о частотно-временной огибающей, подаваемую от блока 1d анализа кодированной последовательности, и, таким образом, получает информацию о частотно-временной огибающей.
Блок 1q наложения частотной огибающей принимает временную огибающую ET(l,i) от блока 1g вычисления временной огибающей и информацию о частотной огибающей от блока 1e декодирования/деквантования кодированной последовательности. Затем блок 1q наложения частотной огибающей вычисляет частотную огибающую из информации о частотной огибающей и накладывает частотную огибающую на временную огибающую. Конкретно, блок 1q наложения частотной огибающей, например, выполняет эту обработку в следующей процедуре.
Сначала блок 1q наложения частотной огибающей преобразует временную огибающую по следующему уравнению.
[Уравнение 48]
Затем блок 1q наложения частотной огибающей делит высокочастотную полосу на mH(mH≥1) количество субполос. Субполосы представлены как B(F)k (k=1,2,3,…,mH). Далее, для упрощения описания, определяется массив GH, имеющий mH+1 количество индексов, представляющих границу субполосы B(F)k (1≤k≤mH) в качестве коэффициентов, так что сигнал XH(j,i), GH(k)≤j
Затем блок 1q наложения частотной огибающей вычисляет частотную огибающую по следующему уравнению.
[Уравнение 49]
где sfdec(k,s) (где 1≤k≤mH, 0≤sE) представляет собой масштабный коэффициент, соответствующий субполосе B(F)k.
Отметьте, что частотная огибающая может вычисляться по следующему уравнению.
[Уравнение 50]
В данном варианте осуществления вид EF,dec(k,s) не ограничивается вышеприведенным примером.
Блок 1q наложения частотной огибающей вычисляет sfdec(k,s) следующим образом. Сначала значения sfdec(k,s), соответствующие нескольким субполосам, устанавливаются в качестве постоянных чисел, которые не зависят от времени, как представлено следующим уравнением (ниже в данном документе набор индексов k, соответствующих этим субполосам, обозначается как NC).
[Уравнение 51]
Хотя значение C может быть равно C=0, значение C не задается в данном варианте осуществления. Тогда, когда целое число 1 не включено в набор Nc, блок 1q наложения частотной огибающей получает масштабный коэффициент sfdec(1,s), 0≤sE из информации о частотной огибающей.
После этого блок 1q наложения частотной огибающей повторяет обработку следующего (этап k) от k=2 до k=mH и вычисляет вышеописанный масштабный коэффициент.
(Этап k)
Когда целое число k не включено в набор Nc, разность в масштабном коэффициенте dsfdec(k,s), 0≤s
[Уравнение 52]
и 1 добавляется к целому числу k, и затем процесс переходит на следующий (этап k). С другой стороны, когда целое число k включено в набор Nc, 1 добавляется к целому числу k как есть и затем процесс переходит на следующий (этап k).
Кроме того, в случае приема разности в масштабном коэффициенте sfdec(1,s), 0≤sE из информации о частотной огибающей, обработка на вышеупомянутом этапе k может выполняться посредством вычисления sfdec(0,s), 0≤sE, используя составляющую низкочастотной полосы сигнала в частотной области, принятого от блока 1c банка фильтров разделения полосы частот. Например, в уравнениях 63, 64 и 65, описанных ниже, X(j,i) может заменяться Xdec(j,i), и sf(0,s), вычисленный с использованием заданного k1 и kh, удовлетворяющих 0≤k1≤kh, где k=0, может устанавливаться в качестве sfdec(0,s).
В данном примере, в отличие от вышеописанного примера, информация о частотной огибающей может соответствовать самому масштабному коэффициенту sfdec(k,s). Кроме того, информация о частотной огибающей может представлять собой разность dtsf(s,k), 1≤sE, 1≤k≤mH по направлению времени при вычисления масштабного коэффициента sfdec(k,s), 1≤k≤mH в s-ом (s≥1) кадре по следующему уравнению, используя масштабный коэффициент sfdec(k,s-1) в (s-1)-ом кадре.
[Уравнение 53]
В данном случае, однако, sfdec(k,0), 1≤k≤mH, соответствующий исходному значению, получается с использованием другого способа, такого как вышеописанный способ.
Кроме того, масштабный коэффициент субполосы может вычисляться с использованием интерполяции или экстраполяции из по меньшей мере одного из масштабного коэффициента составляющей низкочастотной полосы и масштабного коэффициента субполосы высокочастотной полосы. В данном случае, информация о частотной огибающей представляет собой масштабный коэффициент субполосы, подлежащий использованию для интерполяции или экстраполяции, и параметр интерполяции или экстраполяции в высокочастотной полосе. Для вычисления масштабного коэффициента составляющей низкочастотной полосы используется составляющая низкочастотной полосы сигнала в частотной области, принимаемого от блока 1c банка фильтров разделения полосы частот.
Параметр интерполяции или экстраполяции может представлять собой заданный параметр. Кроме того, интерполяция или экстраполяция масштабного коэффициента может выполняться посредством вычисления параметра, подлежащего фактическому использованию для интерполяции или экстраполяции, из заданного параметра интерполяции или экстраполяции и параметра интерполяции или экстраполяции, содержащегося в информации о частотной огибающей. Кроме того, в по меньшей мере одном из случаев, когда не принимается информация о частотной огибающей, и когда информация о частотной огибающей не содержит параметр интерполяции или экстраполяции, интерполяция или экстраполяция масштабного коэффициента может выполняться с использованием только заданного параметра интерполяции или экстраполяции. Отметьте, что в данном варианте осуществления способ интерполяции и экстраполяции конкретно не ограничивается.
Вид информации о частотной огибающей, описанной выше, представляет собой просто один пример, и она может быть любого вида до тех пор, пока она представляет собой параметр, представляющий изменение мощности сигнала или амплитуды сигнала по направлению частоты для каждой субполосы высокочастотной полосы. В данном варианте осуществления вид информации о частотной огибающей конкретно не ограничивается.
Затем блок 1q наложения частотной огибающей преобразует вышеописанную EF(k,s), используя следующее уравнение.
[Уравнение 54]
Затем блок 1q наложения частотной огибающей вычисляет величину E2(m,i) по следующему уравнению, используя временную огибающую E0(m,i) и частотную огибающую E1(m,i), преобразованную так, как указано выше.
[Уравнение 55]
Кроме того, вышеописанная E2(m,i) может быть в виде, определяемым следующим уравнением.
[Уравнение 56]
Кроме того, она может быть в виде, определяемым следующим уравнением.
[Уравнение 57]
где Q(m), 0≤m
[Уравнение 58]
Кроме того, она может быть в виде, определяемым следующим уравнением.
[Уравнение 59]
Отметьте, что, однако, вид вышеописанной E2(m,i) не ограничивается вышеприведенными примерами в настоящем изобретении.
Затем блок 1q наложения частотной огибающей вычисляет величину E(m,i) по следующему уравнению, используя вышеописанную E2(m,i).
[Уравнение 60]
Коэффициент C(s) определяется следующим уравнением.
[Уравнение 61]
Кроме того, им может быть следующее уравнение.
[Уравнение 62]
Блок 1p коррекции частотно-временной огибающей корректирует, используя частотно-временную огибающую E1(m,i), подаваемую от блока 1q наложения частотной огибающей, частотно-временную огибающую сигнала XH(j,i), kx≤j
Необходимо отметить, что первый-шестой альтернативные примеры декодера 1 речи согласно первому варианту осуществления изобретения могут применяться в декодере 101 речи согласно второму варианту осуществления изобретения.
Фиг. 25 представляет собой схему, изображающую конфигурацию кодера 102 речи согласно второму варианту осуществления, и фиг. 26 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 102 речи, показанным на фиг. 25. Кодер 102 речи на фиг. 25 отличается от кодера 2 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 2n вычисления информации о частотной огибающей.
Блок 2n вычисления информации о частотной огибающей принимает сигнал X(j,i) {0≤j
Сначала блок 2n вычисления информации о частотной огибающей вычисляет частотную огибающую мощности на субполосе B(F)k (где k=1,2,3,…,mH) по следующему уравнению.
[Уравнение 63]
Затем блок 2n вычисления информации о частотной огибающей вычисляет масштабный коэффициент sf(k,s), 1≤k≤mH субполосы B(F)k. Значение sf(k,s) вычисляется, например, по следующему уравнению.
[Уравнение 64]
Кроме того, блок 2n вычисления информации о частотной огибающей может вычислять значение sf(k,s) по следующему уравнению согласно способу, описанному в «ISO/IEC 14496-3 4.B.18».
[Уравнение 65]
Кроме того, оно может устанавливаться по следующему уравнению
[Уравнение 66]
в соответствии с декодером 101 речи.
Затем блок 2n вычисления информации о частотной огибающей может устанавливать информацию о частотной огибающей в качестве вышеописанного масштабного коэффициента sf(k,s) (1≤k≤mH). Кроме того, информация о частотной огибающей может быть в виде следующего уравнения. Конкретно, разность в вышеописанном масштабном коэффициенте sf(k,s) определяется следующим уравнением,
[Уравнение 67]
и dsf(k,s) и sf(1,s) (0≤sE) может использоваться в качестве информации о частотной огибающей.
Кроме того, подобно блоку 1q наложения частотной огибающей декодера 101 речи согласно второму варианту осуществления, вышеописанный масштабный коэффициент sf(0,s) может вычисляться с использованием сигнала X(j,i)(0≤j≤kx) низкочастотной полосы в частотной области, и dsf(1,s), вычисленный посредством масштабного коэффициента sf(0,s), может содержаться в информации о частотной огибающей.
Кроме того, информация о частотной огибающей может представлять собой параметр экстраполяции из низкочастотной полосы, когда масштабный коэффициент высокочастотной полосы аппроксимируется посредством экстраполяции из масштабного коэффициента составляющей низкочастотной полосы. Кроме того, информация о частотной огибающей может представлять собой масштабный коэффициент субполосы и параметр интерполяции или экстраполяции в высокочастотной полосе при вычисления части, отличной от нескольких субполос, из масштабных коэффициентов этих нескольких субполос высокочастотной полосы посредством использования интерполяции или экстраполяции. Комбинация первой и последней может представлять собой информацию о частотной огибающей.
Отметьте, что в данном изобретении информация о частотной огибающей не ограничивается вышеописанными примерами.
В качестве способа квантования и кодирования информации о частотной огибающей, информация о частотной огибающей может квантоваться скалярно и затем кодироваться энтропийно, например, кодированием методом Хаффмана и арифметическим кодированием. Кроме того, информация о частотной огибающей может квантоваться векторно, используя заданную кодовую книгу, и затем ее индекс может устанавливаться в качестве кода.
Конкретно, вышеописанный масштабный коэффициент sf(k,s) может квантоваться скалярно и затем кодироваться энтропийно, например, кодированием по методу Хаффмана и арифметическим кодированием. Кроме того, вышеописанный dsf(k,s) может квантоваться скалярно и затем кодироваться энтропийно. Кроме того, вышеописанный масштабный коэффициент sf(k,s) может квантоваться векторно, используя заданную кодовую книгу и затем ее индекс может устанавливаться в качестве кода. Кроме того, вышеописанный dsf(k,s) может квантоваться векторно, используя заданную кодовую книгу, и затем ее индекс может устанавливаться в качестве кода. Кроме того, разность скалярно квантованного масштабного коэффициента sf(k,s) может кодироваться энтропийно.
Например, EDelta(k,s) может вычисляться по следующему уравнению
[Уравнение 68]
используя sf(k,s) в вышеописанном уравнении в соответствии со способом, описанным в «ISO/IEC 14496-3 4.B.18», и EDelta(k,s) может кодироваться по методу Хаффмана.
Отметьте, что, когда целое число 1 включено в набор Nc, может быть опущено вышеописанное квантование и кодирование sf(1,s) (0≤sE) и dsf(1,s) (0≤sE).
Кроме того, в настоящем изобретении квантование и кодирование информации о частотной огибающей не ограничивается вышеописанными примерами.
Первый-четвертый альтернативные примеры кодера 2 речи согласно первому варианту осуществления изобретения могут применяться в кодере 102 речи согласно второму варианту осуществления изобретения. Например, фиг. 27 представляет собой схему, изображающую конфигурацию, когда первый альтернативный пример кодера 2 речи согласно первому варианту осуществления изобретения применяется в кодере 102 речи согласно второму варианту осуществления изобретения, фиг.28 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 102 речи, показанным на фиг. 27. Кроме того, фиг. 29 представляет собой схему, изображающую конфигурацию, когда второй альтернативный пример кодера 2 речи согласно первому варианту осуществления изобретения применяется в кодере 102 речи согласно второму варианту осуществления изобретения, и фиг. 30 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 102 речи, показанным на фиг. 29.
[ТРЕТИЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ]
Ниже в данном документе описывается третий вариант осуществления настоящего изобретения.
Фиг. 31 представляет собой схему, изображающую конфигурацию декодера 201 речи согласно третьему варианту осуществления, и фиг.32 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи декодером 201 речи, показанным на фиг. 31. Декодер 201 речи по фиг. 31 отличается от декодера 1 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 1s управления вычислением временной огибающей, и тем, что он включает в себя блок 1r декодирования/деквантования кодированной последовательности и блок 1t коррекции огибающей вместо блока 1e декодирования/деквантования кодированной последовательности и блока 1i коррекции временной огибающей (1c-1d, 1h, 1j и 1r-1t иногда упоминаются также как блок расширения полосы частот (средство расширения полосы частот)).
Блок 1d анализа кодированной последовательности анализирует кодированную последовательность высокочастотной полосы, подаваемую от блока 1a демультиплексирования и, таким образом, получает кодированную дополнительную информацию для генерирования высокочастотной полосы и информацию управления вычислением временной огибающей и дополнительно получает кодированную информацию о временной огибающей или кодированную информацию о второй частотной огибающей.
Блок 1r декодирования/деквантования кодированной последовательности декодирует кодированную дополнительную информацию для генерирования высокочастотной полосы, подаваемую от блока 1d анализа кодированной последовательности и, таким образом, получает дополнительную информацию для генерирования высокочастотной полосы.
Блок 1h генерирования высокочастотной полосы дублирует, используя дополнительную информацию для генерирования высокочастотной полосы, подаваемую от блока 1r декодирования/деквантования кодированной последовательности, сигнал Xdec(j,i), 0≤j
Блок 1s управления вычислением временной огибающей проверяет, основываясь на информации управления вычислением временной огибающей, подаваемой от блока 1d анализа кодированной последовательности, должен ли блок 1t коррекции огибающей корректировать огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей. Когда блок 1t коррекции огибающей не корректирует огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей, блок 1r декодирования/деквантования кодированной последовательности декодирует и деквантует кодированную информацию о временной огибающей, подаваемую от блока 1d анализа кодированной последовательности и, таким образом, получает информацию о временной огибающей. С другой стороны, когда блок 1t коррекции огибающей корректирует огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей, блок 1s управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы и выводит сигнал управления вычислением временной огибающей на блок 1g вычисления временной огибающей, так что вычисление огибающей не выполняется в блоках 1f1-1fn вычисления временной огибающей низкочастотной полосы и блоке 1g вычисления временной огибающей.
Далее, блок 1r декодирования/деквантования кодированной последовательности декодирует и деквантует кодированную информацию о второй частотной огибающей, подаваемую от блока 1d анализа кодированной последовательности, и, таким образом, получает информацию о второй частотной огибающей. Кроме того, в данном случае, блок 1t коррекции огибающей корректирует, используя информацию о второй частотной огибающей, подаваемую от блока 1r декодирования/деквантования кодированной последовательности, частотную огибающую сигнала XH(j,i) (kx≤j
Конкретно, величина E3(k,s), 1≤k≤mH, 0≤sE, соответствующая EF,dec(k,s), вычисляется с использованием декодированной и деквантованной информации о второй частотной огибающей в соответствии со способом вычисления EF,dec(k,s) в блоке 1q наложения частотной огибающей декодера 101 речи, и, кроме того, вышеописанная E3(k,s) преобразуется по следующему уравнению.
[Уравнение 69]
После этого получается сигнал Y(i,j) {kx≤j≤kmax, t(s)≤i
Отметьте, что первый-седьмой альтернативные примеры декодера 1 речи согласно первому варианту осуществления изобретения могут применяться в декодере 201 речи согласно третьему варианту осуществления изобретения.
Фиг. 35 представляет собой схему, изображающую конфигурацию кодера 202 речи согласно третьему варианту осуществления, и фиг. 36 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 202 речи, показанным на фиг. 35. Кодер 202 речи на фиг. 35 отличается от кодера 2 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 2j генерирование информации управления вычислением временной огибающей и блок 2o вычисления информации о второй частотной огибающей.
Блок 2o вычисления информации о второй частотной огибающей принимает сигнал X(j,i) {kx≤j
Информация о второй частотной огибающей может вычисляться таким же образом, что и способ вычисления информации о частотной огибающей в кодере 102 речи согласно второму варианту осуществления. В данном варианте осуществления, однако, способ вычисления информации о второй частотной огибающей конкретно не ограничивается.
Блок 2g квантования/кодирования квантует и кодирует информацию о временной огибающей и информацию о второй частотной огибающей. Квантование и кодирование информации о временной огибающей может выполняться таким же образом, что и квантование и кодирование в блоке 2g квантования/кодирования кодера речи согласно первому и второму вариантам осуществления. Квантование и кодирование информации о второй частотной огибающей может выполняться таким же образом, что и квантование и кодирование информации о частотной огибающей в блоке 2g квантования/кодирования кодера речи согласно второму варианту осуществления. В данном варианте осуществления, однако, способ квантования и кодирования информации о временной огибающей и информации о второй частотной огибающей конкретно не ограничивается.
Блок 2j генерирование информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, используя по меньшей мере одно из сигнала X(j,i) в частотной области, принимаемого от блока 2c банка фильтров разделения полосы частот, информации о временной огибающей, принимаемой от блока 2f вычисления информации о временной огибающей, и информации о второй частотной огибающей, принимаемой от блока 2o вычисления информации о второй частотной огибающей (обработка на этапе S209). Сгенерированная информация управления вычислением временной огибающей может представлять собой информацию управления вычислением временной огибающей в декодере 201 речи согласно третьему варианту осуществления, описанному выше.
Блок 2j генерирование информации управления вычислением временной огибающей может быть таким же, например, что и в первом альтернативном примере кодера 2 речи согласно первому варианту осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей генерирует псевдо локально декодированные сигналы высокочастотной полосы, используя информацию о временной огибающей и информацию о второй частотной огибающей соответственно, и сравнивает их с исходным сигналом таким же образом, например, что и в первом альтернативном примере кодера 2 речи согласно первому варианту осуществления. Когда псевдо локально декодированный сигнал высокочастотной полосы, сгенерированный с использованием информации о второй частотной огибающей, находится ближе к исходному сигналу, информация, указывающая коррекцию сигнала высокочастотной полосы, используя информацию о второй частотной огибающей в декодере, генерируется в качестве информации управления вычислением временной огибающей. Сравнение между каждым из псевдо локально декодированных сигналов высокочастотной полосы с исходным сигналом может выполняться посредством вычисления разностного сигнала и определения, является ли, например, разностный сигнал меньше или нет. Кроме того, сравнение может выполняться посредством вычисления временных огибающих каждого из псевдо локально декодированных сигналов высокочастотной полосы и исходного сигнала, вычисления разности временных огибающих каждого из псевдо локально декодированных сигналов высокочастотной полосы и исходного сигнала и определения, является ли разность меньше или нет. Кроме того, сравнение может выполняться посредством определения, является ли максимальное значение разностного сигнала от исходного сигнала и/или разность в огибающей меньше или нет. В данном варианте осуществления способ сравнения не ограничивается вышеупомянутыми примерами.
Блок 2j генерирования информации управления вычислением временной огибающей может дополнительно использовать по меньшей мере одну из квантованной информации о временной огибающей и квантованной информации о второй частотной огибающей при генерировании информации управления вычислением временной огибающей.
Когда кодированная дополнительная информация для генерирования высокочастотной полосы, принимаемая от блока 2g квантования/кодирования, и информация управления вычислением временной огибающей предписывает, чтобы сигнал высокочастотной полосы корректировался с использованием информации о второй частотной огибающей в декодере, блок 2h составления кодированной последовательности составляет кодированную последовательность высокочастотной полосы, используя кодированную информацию о второй частотной огибающей, и, в противном случае, составляет ее, используя, в противном случае, кодированную информацию о временной огибающей (обработка на этапе S211).
Отметьте, что первый-четвертый альтернативные примеры кодера 2 речи согласно первому варианту осуществления изобретения могут применяться в кодере 202 речи согласно третьему варианту осуществления изобретения.
[ЧЕТВЕРТЫЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ]
Ниже в данном документе описывается четвертый вариант осуществления настоящего изобретения.
Фиг. 33 представляет собой схему, изображающую конфигурацию декодера 301 речи согласно четвертому варианту осуществления, и фиг. 34 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи декодером 301 речи, показанным на фиг. 33. Декодер 201 речи на фиг. 33 отличается от декодера 1 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 1s управления вычислением временной огибающей и блок 1u наложения частотной огибающей, и тем, что он включает в себя блок 1r декодирования/деквантования кодированной последовательности и блок 1v коррекции частотно-временной огибающей вместо блока 1e декодирования/деквантования кодированной последовательности и блока 1i коррекции временной огибающей соответственно (1c-1d, 1h, 1j, 1r-1s и 1u-1v иногда упоминаются также как блок расширения полосы частот (средство расширения полосы частот)).
Блок 1d анализа кодированной последовательности анализирует кодированную последовательность высокочастотной полосы, подаваемую от блока 1a демультиплексирования и, таким образом, получает кодированную дополнительную информацию для генерирования высокочастотной полосы и информацию управления вычислением временной огибающей и дополнительно получает кодированную информацию о временной огибающей и кодированную информацию о частотной огибающей или кодированную информацию о второй частотной огибающей.
Блок 1s управления вычислением временной огибающей проверяет, основываясь на информации управления вычислением временной огибающей, подаваемой от блока 1d анализа кодированной последовательности, должен ли блок 1v коррекции огибающей корректировать огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей, и, когда блок 1v коррекции огибающей не корректирует огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей, блок 1r декодирования/деквантования кодированной последовательности декодирует и деквантует кодированную информацию о временной огибающей, подаваемую от блока 1d анализа кодированной последовательности, и, таким образом, получает информацию о временной огибающей.
С другой стороны, когда блок 1v коррекции огибающей корректирует огибающую сигнала высокочастотной полосы, используя информацию о второй частотной огибающей, выполняется та же обработка, что на этапе S190 третьего варианта осуществления. Кроме того, обработка блока 1v коррекции частотно-временной огибающей также является такой же, что и на этапе S191 третьего варианта осуществления.
Необходимо отметить, что первый-седьмой альтернативные примеры декодера 1 речи согласно первому варианту осуществления изобретения могут применяться в декодере 301 речи согласно четвертому варианту осуществления изобретения.
Фиг. 37 представляет собой схему, изображающую конфигурацию кодера 302 речи согласно четвертому варианту осуществления, и фиг. 38 представляет собой блок-схему последовательности операций, изображающую процедуру кодирования речи кодером 302 речи, показанным на фиг. 37. Кодер 302 речи на фиг. 37 отличается от кодера 2 речи согласно первому варианту осуществления тем, что он дополнительно включает в себя блок 2j генерирования информации управления вычислением временной огибающей, блок 2p вычисления информации о частотной огибающей и блок 2o вычисления информации о второй частотной огибающей.
Блок 2g квантования/кодирования квантует и кодирует информацию о временной огибающей, информацию о частотной огибающей и информацию о второй частотной огибающей. Квантование и кодирование информации о временной огибающей может выполняться таким же образом, что и квантование и кодирование в блоке 2g квантования/кодирования кодера речи согласно первому и второму вариантам осуществления. Квантование и кодирование информации о частотной огибающей и информации о второй частотной огибающей может выполняться таким же образом, что и квантование и кодирование информации о частотной огибающей в блоке 2g квантования/кодирования кодера речи согласно второму варианту осуществления. В данном варианте осуществления, однако, способ квантования и кодирования информации о временной огибающей и информации о второй частотной огибающей конкретно не ограничивается.
Блок 2j генерирования информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, используя по меньшей мере одно из сигнала X(j,i) в частотной области, принимаемого от блока 2c банка фильтров разделения полосы частот, информации о временной огибающей, принимаемой от блока 2f вычисления информации о временной огибающей, информации о частотной огибающей, принимаемой от блока 2p вычисления информации о частотной огибающей и информации о второй частотной огибающей, принимаемой от блока 2o вычисления информации о второй частотной огибающей (обработка на этапе S250). Сгенерированная информация управления вычислением временной огибающей может представлять собой информацию управления вычислением временной огибающей в декодере 301 речи согласно четвертому варианту осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей может быть таким же, например, что и в первом альтернативном примере кодера 2 речи согласно первому варианту осуществления. Кроме того, блок 2j генерирования информации управления вычислением временной огибающей может быть таким же, например, что и в кодере 202 речи согласно третьему варианту осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей генерирует псевдо локально декодированные сигналы высокочастотной полосы, используя информацию о временной огибающей, информацию о частотной огибающей и информацию о второй частотной огибающей соответственно, и сравнивает их с исходным сигналом таким же образом, например, что и в первом альтернативном примере кодера 2 речи согласно первому варианту осуществления. Если псевдо локально декодированный сигнал высокочастотной полосы, сгенерированный с использованием информации о второй частотной огибающей, находится ближе к исходному сигналу, информация, указывающая коррекцию сигнала высокочастотной полосы, используя информацию о второй частотной огибающей в декодере, генерируется в качестве информации управления вычислением временной огибающей.
Сравнение между каждым из псевдо локально декодированных сигналов высокочастотной полосы с исходным сигналом может быть таким же, что в блоке 2j генерирования информации управления вычислением временной огибающей кодера 202 речи согласно третьему варианту осуществления, и способ сравнения конкретно не ограничивается в данном варианте осуществления.
Блок 2j генерирования информации управления вычислением временной огибающей может дополнительно использовать по меньшей мере одно из квантованной информации о временной огибающей, квантованной информации о частотной информации и квантованной информации о второй частотной огибающей при генерировании информации управления вычислением временной огибающей.
Когда кодированная дополнительная информация для генерирования высокочастотной полосы, принимаемая от блока 1g квантования/кодирования, и информация управления вычислением временной огибающей предписывают, чтобы сигнал высокочастотной полосы корректировался при помощи информации о второй частотной огибающей в декодере, блок 2h составления кодированной последовательности составляет кодированную последовательность высокочастотной полосы, используя кодированную информацию о второй частотной огибающей, и, в противном случае, составляет ее при помощи кодированной информации о временной огибающей и кодированной информации о частотной огибающей (обработка на этапе S252).
Отметьте, что первый-четвертый альтернативные примеры кодера 2 речи согласно первому варианту осуществления изобретения могут применяться в кодере 302 речи согласно четвертому варианту осуществления изобретения.
[ВОСЬМОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
В данном альтернативном примере в блоке 1g вычисления временной огибающей декодера 1 речи согласно первому варианту осуществления, обработка, основанная на заданной функции, выполняется над вычисленной временной огибающей. Например, блок 1g вычисления временной огибающей нормализует временную огибающую в отношении времени и вычисляет временную огибающую ET’(l,i) по следующему уравнению.
[Уравнение 70]
В данном альтернативном примере после вычисления временной огибающей ET’(l,i) с этого момента может выполняться обработка замены значения ET(l,i) на значение ET’(l,i).
Согласно данному альтернативному примеру только временная форма сигнала XH(j,i) (FH(l)≤j
Отметьте, что восьмой альтернативный пример декодера 1 речи согласно первому варианту осуществления может также применяться в первом-седьмом альтернативных примерах декодера 1 речи согласно первому варианту осуществления и в декодерах речи согласно второму-четвертому вариантам осуществления, и, в данном случае, ET(l,i) может заменяться на ET’(l,i).
[ДЕВЯТЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
В данном альтернативном примере, когда первый-n-ый блоки 1f1-1fn вычисления временной огибающей низкочастотной полосы декодера 1 речи согласно первому варианту осуществления получают временную огибающую L1(k,i) посредством сглаживания величины L0(k,i) по направлению времени, L0(k,i) (t(s)-d≤i Девятый альтернативный пример декодера 1 речи согласно первому варианту осуществления также применим к первому-восьмому альтернативным примерам декодера 1 речи согласно первому варианту осуществления и декодерам речи согласно второму-четвертому вариантам осуществления. [ПЯТЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ] В данном альтернативном примере вычисление информации о временной огибающей в блоке 2f вычисления информации о временной огибающей кодера 2 речи согласно первому варианту осуществления выполняется на основе корреляции между опорной временной огибающей H(l,i) и вышеописанной g(l,i). Например, блок 2f вычисления информации о временной огибающей вычисляет информацию о временной огибающей следующим образом. Конкретно, коэффициент corr(l) корреляции между H(l,i) и g(l,i) вычисляется по следующему уравнению. [Уравнение 71]
Коэффициент corr(l) корреляции сравнивается с заданным порогом, и информация о временной огибающей вычисляется на основе результата сравнении. Альтернативно, значение, соответствующее corr2(l), может вычисляться и сравниваться с заданным порогом, и информация о временной огибающей может вычисляться на основе результата сравнения.
Например, информация о временной огибающей вычисляется следующим образом: Предполагая, что заданный порог, подлежащий сравнению с коэффициентом корреляции, равен corrth(l) и gdec(l,i) определяется уравнением 21, информация о временной огибающей вычисляется по следующему уравнению.
[Уравнение 72]
Когда информация о временной огибающей, вычисляемая в вышеупомянутом примере, вводится во второй альтернативный пример декодера 1 согласно первому варианту осуществления, в случае Al,k(s)=0, Al,0(s)=const(0), (т.е. в случае, когда коэффициент корреляции меньше заданного порога в кодере) в субполосе B(T)l, блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на k-ые (k>0) блоки 1fk вычисления временной огибающей низкочастотной полосы, так что не выполняется вычисление временной огибающей низкочастотной полосы в блоках 1fk вычисления временной огибающей низкочастотной полосы. С другой стороны, в случае Al,k(s)=const(k), Al,0(s)=0, (т.е. в случае, когда коэффициент корреляции больше заданного порога в кодере), блок 1m управления вычислением временной огибающей выводит сигнал управления вычислением временной огибающей низкочастотной полосы на k-ые (k>0) блоки 1fk вычисления временной огибающей низкочастотной полосы, так что выполняется вычисление временной огибающей низкочастотной полосы в блоках 1fk вычисления временной огибающей низкочастотной полосы.
Отметьте, что в данном альтернативном примере способ вычисления не ограничивается вышеописанным примером, пока информация о временной огибающей вычисляется на основе корреляции между опорной временной огибающей H(l,i) и вышеописанной g(l,i).
В случае вычисления информации о временной огибающей, основанной на ошибке (или взвешенной ошибке) между опорной временной огибающей H(l,i) и g(l,i), как описано в кодере 2 речи согласно первому варианту осуществления, информация о временной огибающей вычисляется на основе степени совпадения между опорной временной огибающей H(l,i) и g(l,i). С другой стороны, в данном альтернативном примере информация о временной огибающей вычисляется на основе степени подобия между формами опорной временной огибающей H(l,i) и g(l,i).
Пятый альтернативный пример кодера 2 речи согласно первому варианту осуществления также применим к первому-пятому альтернативным примерам кодера 2 речи согласно первому варианту осуществления и кодерам речи согласно второму-четвертому вариантам осуществления.
[ПЕРВЫЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ВТОРОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
В данном альтернативном примере в блоке 1q наложения частотной огибающей декодера 101 речи согласно второму варианту осуществления, обработка, основанная на заданной функции, выполняется над частотной огибающей EF,dec(k,s). Например, блок 1q наложения частотной огибающей выполняет обработку на основе функции сглаживания частотной огибающей EF,dec(k,s), определяемой следующим уравнением.
[Уравнение 73]
где
[Уравнение 74]
и sch(j) и dh представляют собой заданный коэффициент сглаживания и заданный порядок сглаживания соответственно. В данном случае, EF,dec,Filt(k,i) заменяется на EF,dec(k,s) в последующей обработке.
Кроме того, функция определения, сглаживать ли или нет частотную огибающую EF,dec(k,s), основываясь на характеристиках сигнала кадра, соответствующего частотной огибающей EF,dec(k,s), может быть включена в вышеупомянутое уравнение 73. Кроме того, информация, указывающая, выполнять ли или нет сглаживание, может быть включена в кодированную последовательность, и может быть включена функция определения, сглаживать ли или нет частотную огибающую EF,dec(k,s), основанную на информации.
Отметьте, что первый альтернативный пример декодера 101 речи согласно второму варианту осуществления также применим к декодеру речи согласно четвертому варианту осуществления.
[ВТОРОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ВТОРОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
В блоке 1q наложения частотной огибающей декодера 101 речи согласно второму варианту осуществления величина E(m,i) представляет собой значение, полученное посредством коррекции E2(m,i) при помощи C(s) (уравнение 60). Кроме того, согласно уравнению 61, энергия сигнала высокочастотной полосы после коррекции частотно-временной огибающей в полосе kx≤m≤kmax кадра s корректируется так, чтобы она равнялась суммарной энергии временной огибающей E0(m,i) в полосе kx≤m≤kmax кадра s. С другой стороны, согласно уравнению 62, энергия сигнала высокочастотной полосы после коррекции частотно-временной огибающей в полосе kx≤m≤kmax кадра s, корректируется так, что она равняется суммарной энергии частотной огибающей E1(m,i) в полосе kx≤m≤kmax кадра s. В этом альтернативном примере C(s) определяется следующим уравнением, так что энергия сигнала высокочастотной полосы после коррекции частотно-временной огибающей в полосе kx≤m≤kmax кадра s сохраняется после коррекции частотно-временной огибающей.
[Уравнение 75]
Кроме того, C(s) может определяться следующим уравнением, так что энергия сигнала высокочастотной полосы после коррекции частотно-временной огибающей в полосе kx≤m≤kmax кадра s представляет собой суммарную энергию временной огибающей E2(m,i) в полосе kx≤m≤kmax кадра s.
[Уравнение 76]
Отметьте, что второй альтернативный пример декодера 101 речи согласно второму варианту осуществления также применим к первому альтернативному примеру декодера 101 речи согласно второму варианту осуществления и декодеру речи согласно четвертому варианту осуществления.
[ТРЕТИЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР ДЕКОДЕРА РЕЧИ СОГЛАСНО ВТОРОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ]
Фиг. 39 представляет собой схему, изображающую конфигурацию третьего альтернативного примера декодера 101 речи согласно второму варианту осуществления, и фиг. 40 представляет собой блок-схему последовательности операций, изображающую процедуру декодирования речи декодером 101 речи, показанным на фиг. 39. Данный альтернативный пример отличается от декодера 101 речи согласно второму варианту осуществления тем, что он включает в себя блок 1w вычисления частотной огибающей вместо блока 1q наложения частотной огибающей.
Блок 1w вычисления частотной огибающей в данном альтернативном примере вычисляет частотную огибающую E1(m,s) таким же образом, что и блок 1q наложения частотной огибающей согласно второму варианту осуществления (этап S119a).
Затем блок 1p коррекции частотно-временной огибающей корректирует частотно-временную огибающую следующим образом, например, используя временную огибающую ET(l,i) и частотную огибающую E1(m,s) (этап S120).
Конкретно, блок 1p коррекции частотно-временной огибающей преобразует временную огибающую ET(l,i) в E0(m,i) таким же образом, что и блок 1q наложения частотной огибающей.
Кроме того, таким образом, что и HF в SBR «MPEG4 AAC», масштабный коэффициент Q(m,s) минимального уровня шума в кадре s, подаваемый от блока 1e декодирования/деквантования кодированной последовательности, преобразуется по следующему уравнению.
[Уравнение 77]
Кроме того, уровень синусоиды в кадре s определяется следующим уравнением, используя величину S(m,s), вычисленную посредством параметра, который определяет, добавлять ли или нет синусоиду, и который подается от блока 1e декодирования/деквантования кодированной последовательности.
[Уравнение 78]
Кроме того, коэффициент усиления определяется следующим уравнением, используя частотную огибающую E1(m,s), масштабный коэффициент Q(m,s) минимального уровня шума в кадре s, подаваемый от блока 1e декодирования/деквантования кодированной последовательности, и функцию δ(s), которая зависит от параметра кадра s, подаваемого от блока 1e декодирования/деквантования кодированной последовательности.
[Уравнение 79]
Величина Ecurr(m,s) определяется по следующему уравнению.
[Уравнение 80]
Она также может определяться по следующему уравнению.
[Уравнение 81]
Кроме того, S’(m,s) представляет собой функцию, которая представляет, имеется ли синусоида для добавления в субполосе B(F)k (GH(k)≤m
Далее, следующая величина X’H(m+kx,i) может вычисляться с использованием вышеописанной величины Ecurr(m,s).
[Уравнение 82]
Альтернативно, величина X’H(m+kx,i) может вычисляться также по следующему уравнению.
[Уравнение 83]
Величина X’H(m+kx,i) может вычисляться также из следующего уравнения.
[Уравнение 84]
В данной обработке сигнал XH(m+kx,i) высокочастотной полосы может сглаживаться по направлению времени в индексе m частоты или субполосе B(F)k. Таким образом, посредством выполнения последующей обработки, сигнал высокочастотной полосы на основе временной огибающей, вычисленной в блоке 1g вычисления временной огибающей, может выводиться без зависимости от временной огибающей сигнала XH(m+kx,i) высокочастотной полосы.
Отметьте, что коэффициент G2(m,s) усиления, масштабный коэффициент Q3(m,s) минимального уровня шума и уровень S3(m,s) синусоиды могут вычисляться посредством выполнения обработки, основанной на конкретной функции, вышеописанного коэффициента усиления, масштабного коэффициента минимального уровня шума и уровня синусоиды. Например, таким же образом, что и корректировка HF в SBR «MPEG4 AAC», обработка, основанная на функции ограничения коэффициента усиления для исключения необязательного добавления шума (ограничитель коэффициента усиления) и компенсации потери энергии посредством ограничения коэффициента усиления (увеличитель коэффициента усиления), выполняется над вышеописанным коэффициентом усиления, масштабным коэффициентом минимального уровня шума и уровнем синусоиды, чтобы, таким образом, вычислить коэффициент G2(m,s) усиления, масштабный коэффициент Q3(m,s) минимального уровня шума и уровень S3(m,s) синусоиды (в отношении конкретного примера см. ISO/IEC 1449-3 4.6.18.7.5). В случае выполнения вышеупомянутой заданной обработки G2(m,s), Q3(m,s) и S3(m,s) используются вместо G(m,s), Q2(m,s) и S2(m,s) в последующей обработке.
Величины G3(m,i) и Q4(m,i), определяемые по следующему уравнению, вычисляются с использованием коэффициента G(m,s) усиления, масштабного коэффициента Q2(m,s) минимального уровня шума и временной огибающей E0(m,i), полученным выше. В нижеследующем уравнении коэффициент усиления и масштабный коэффициент минимального уровня шума вычисляются на основе временной огибающей, и после последующей обработки может, наконец, выводиться сигнал с частотно-временной огибающей, скорректированный блоком 1p коррекции частотно-временной огибающей.
[Уравнение 85]
[Уравнение 86]
Отметьте, что, хотя коэффициент усиления и масштабный коэффициент минимального уровня шума вычисляются на основе временной огибающей в вышеупомянутом уравнении, уровень синусоиды может вычисляться также на основе временной огибающей таким же образом, что и коэффициент усиления и масштабный коэффициент минимального уровня шума.
Кроме того, обработка, основанная на заданной функции, может выполняться над вышеописанными G3(m,i) и Q4(m,i). Например, может выполняться обработка, основанная на функции сглаживания. Вычисляются GFilt(m,i) и QFilt(m,i), определяемые следующими уравнениями.
[Уравнение 87]
[Уравнение 88]
где sch(j) и dh представляют собой заданный коэффициент сглаживания и заданный порядок сглаживания соответственно. Кроме того, GTemp(m,i) и QTemp(m,i) определяются по следующим уравнениям.
[Уравнение 89]
[Уравнение 90]
Кроме того, эффект сглаживания может быть получен в равной степени посредством обработки, основанной на следующих функциях.
[Уравнение 91]
[Уравнение 92]
где wold(m,i) и wcurr(m,i) представляют собой заданные весовые коэффициенты. Кроме того, GTemp(m,i) и QTemp(m,i) определяются следующими уравнениями.
[Уравнение 93]
[Уравнение 94]
Кроме того, Gold(m) представляет собой коэффициент усиления временного индекса (конкретно, t(s)-1) в предыдущем кадре (конкретно, кадре s-1) на границе с кадром s и определяется по любому из следующих уравнений.
[Уравнение 95]
[Уравнение 96]
В случае, когда выполняется вышеописанная обработка, основанная на заданной функции, GFilt(m,s) и QFilt(m,s) используются вместо G3(m,s) и Q4(m,s) в обработке подпоследовательности.
Вышеописанная функция сглаживания может включать в себя функцию определения, выполнять ли или нет сглаживание, основываясь на параметре кадра s, подаваемым от блока 1e декодирования/деквантования кодированной последовательности. Кроме того, информация, указывающая, выполнять ли или нет сглаживание, может включаться в кодированную последовательность, и вышеописанная функция сглаживания может включать в себя функцию определения, выполнять ли или нет сглаживание, основываясь на информации. Кроме того, она может включать в себя функцию определения, выполнять ли или нет сглаживание, основываясь на по меньшей мере одном из вышеупомянутого.
Наконец, блок 1p коррекции частотно-временной огибающей получает сигнал с откорректированной частотно-временной огибающей по следующим уравнениям.
[Уравнение 97]
[Уравнение 98]
где V0 и V1 представляют собой массивы, которые задают шумовую составляющую, f представляет собой функцию, которая отображает индекс i на индекс в массивах, ϕRe,sin и ϕIm,sin представляют собой массивы, которые задают фазу синусоидальной составляющей, и fsin представляет собой функцию, которая отображает индекс i на индекс в массивах (в отношении конкретного примера см. «ISO/IEC 14496-3 4.6.18»).
Альтернативно, в вышеописанном уравнении 97 может использоваться X’H(m+kx,i) вместо XH(m+kx,i).
Отметьте, что, когда увеличитель коэффициента усиления коррекции HF в SBR в «MPEG4 ACC», описанный выше, применяется в блоке 1q наложения частотной огибающей декодера 101 речи согласно второму варианту осуществления, потеря энергии из-за ограничения коэффициента усиления компенсируется в единицах кадра s для каждой субполосы B(F)k (GH(k)≤j
[Уравнение 99]
В вышеописанном уравнении ограничитель коэффициента усиления коррекции HF в SBR в «MPEG4 ACC», описанном выше, может применяться к коэффициенту G(m,s) усиления и масштабному коэффициенту Q2(m,s) шума.
Используя коэффициенту G2(m,i) усиления и масштабный коэффициент Q3(m,i) шума, GTemp(m,i) и QTemp(m,i) определяются по следующему уравнению вместо вышеописанных уравнений 89 и 90.
[Уравнение 100]
[Уравнение 101]
Кроме того, когда уравнение 99 заменяется следующим уравнением, потеря энергии из-за ограничения коэффициента усиления компенсируется в единицах временного индекса i для сигнала XH(j,i) высокочастотной полосы для каждой субполосы B(T)k (FH(k)≤j
[Уравнение 102]
Кроме того, когда уравнение 99 заменяется следующим уравнением, потеря энергии из-за ограничения коэффициента усиления компенсируется в единицах временного индекса i для сигнала XH(j,i) высокочастотной полосы для каждого частотного индекса m.
[Уравнение 103]
Альтернативно, при вычислении вышеупомянутой величины GBoostTemp(m.i), может использоваться X’H(m+kx,i) вместо XH(m+kx,i).
В блоке 1p коррекции частотно-временной огибающей декодера 101 речи согласно второму варианту осуществления, коррекция частотно-временной огибающей выполняется аналогично коррекции HF в SBR в «MPEG4 ACC», используя величину E(m,i), принимаемую от блока 1q наложения частотной огибающей, таким же образом, что выполняемый блоком 1i коррекции временной огибающей декодера 1 речи согласно первому варианту осуществления. Поэтому, аналогично способу, выполняемому коррекцией HF в SBR в «MPEG4 ACC», когда работа ограничителя коэффициента усиления для исключения добавления необязательного шума выполняется над коэффициентом усиления, масштабным коэффициентом минимального уровня шума и уровнем синусоиды, и работа увеличителя коэффициента усиления выполняется для компенсирования потери энергии, вызванной работой увеличителя коэффициента усиления, эти операции выполняются над временным индексом i(t(s)≤i Отметьте, что третий альтернативный пример декодера 101 речи согласно второму варианту осуществления также применим к первому и второму альтернативным примерам декодера 101 речи согласно второму варианту осуществления и декодеру речи согласно четвертому варианту осуществления. [ДРУГОЙ ВАРИАНТ ОСУЩЕСТВЛЕНИЯ ТРЕТЬЕГО АЛЬТЕРНАТИВНОГО ПРИМЕРА ДЕКОДЕРА 101 РЕЧИ СОГЛАСНО ВТОРОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ] В случае, когда первый, второй и третий альтернативные примеры декодера 1 речи, используемые в первом варианте осуществления, и пятый альтернативный пример декодера 1 речи, используемый в первом варианте осуществления, который реализует по меньшей мере один из вышеупомянутых альтернативных примеров, применяются к вышеописанному альтернативному примеру, существует случай, когда блок 1g вычисления временной огибающей не вычисляет временную огибающую ET(l,i). В данном случае, обработка операции, которая требует E0(m,i), выполняется посредством замены E0(m,i) на 1. Таким образом, может не выполняться обработка умножения E0(m,i), возведения в степень E0(m,i) и извлечения квадратного корня из E0(m,i), таким образом уменьшая количество вычислений. Отметьте, что в обработке, использующей вышеупомянутый способ, блоку 1p коррекции частотно-временной огибающей нет необходимости вычислять E0(m,i). [ШЕСТОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА 2 РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ] Блок 2f вычисления информации о временной огибающей вычисляет информацию о временной огибающей, основываясь на характеристиках по меньшей мере одного сигнала из сигнала X(j,i) в частотной области, получаемого от блока 2c банка фильтров разделения полосы частот, внешнего входного сигнала, принимаемого при помощи устройства связи кодера 2 речи, и сигнала низкочастотной полосы с пониженной дискретизацией во временной области, получаемого в качестве выходного сигнала от блока 2a понижающей дискретизации. Характеристики сигнала могут представлять собой переходные характеристики, тональность, шумовые характеристики и т.п. сигнала, например, вследствие того, что характеристики сигнала не ограничиваются этими конкретными примерами в данном альтернативном примере. Отметьте, что данный альтернативный пример также применим к первому-пятому альтернативным примерам кодера 2 речи согласно первому варианту осуществления и кодерам речи согласно второму-четвертому вариантам осуществления. [СЕДЬМОЙ АЛЬТЕРНАТИВНЫЙ ПРИМЕР КОДЕРА 2 РЕЧИ СОГЛАСНО ПЕРВОМУ ВАРИАНТУ ОСУЩЕСТВЛЕНИЯ] Блок 2j генерирования информации управления вычислением временной огибающей генерирует информацию управления вычислением временной огибающей, относящуюся к способу вычисления временной огибающей низкочастотной полосы в декодере 1 речи согласно характеристикам сигнала по меньшей мере одного сигнала из сигнала X(j,i) в частотной области, получаемого от блока 2c банка фильтров разделения полосы частот, внешнего входного сигнала, принимаемого при помощи устройства связи кодера 2 речи, и сигнала низкочастотной полосы с пониженной дискретизации во временной области, получаемого в качестве выходного сигнала от блока 2a понижающей дискретизации. Характеристики сигнала могут представлять собой переходные характеристики, тональность, шумовые характеристики и т.п. сигнала, например, вследствие того, что характеристики сигнала не ограничиваются этими конкретными примерами в данном альтернативном примере. Отметьте, что данный альтернативный пример также применим к первому-шестому альтернативным примерам кодера 2 речи согласно первому варианту осуществления и кодерам речи согласно второму-четвертому вариантам осуществления. [БЛОК КВАНТОВАНИЯ/КОДИРОВАНИЯ КОДЕРА РЕЧИ СОГЛАСНО ПЕРВОМУ-ЧЕТВЕРТОМУ ВАРИАНТАМ ОСУЩЕСТВЛЕНИЯ] В блоке 2g квантования/кодирования кодера речи согласно первому-четвертому вариантам осуществления масштабный коэффициент минимального уровня шума и параметр, который определяет, добавлять ли или нет синусоиду, могут квантоваться и кодироваться как и следовало ожидать. ПРОМЫШЛЕННАЯ ПРИМЕНИМОСТЬ Настоящее изобретение используется для декодера речи, кодера речи, способа декодирования речи, способа кодирования речи, программы декодирования речи и программы кодирования речи, и является возможным корректировать временную огибающую декодированного сигнала в менее искаженную форму и, таким образом, получать воспроизводимый сигнал, в котором существенно уменьшаются опережающее эхо и запаздывающее эхо. СПИСОК ССЫЛОЧНЫХ ПОЗИЦИЙ 1f1~1fn - блок вычисления временной огибающей низкочастотной полосы; 2e1~2en - блок вычисления временной огибающей низкочастотной полосы; 1, 102, 201, 301 - декодер речи; 1a - блок демультиплексирования; 1b - блок декодирования низкочастотной полосы; 1c - блок банка фильтров разделения полосы частот; 1d - блок анализа кодированной последовательности; 1e - блок деквантования; 1g - блок вычисления временной огибающей; 1h - блок генерирования высокочастотной полосы; 1i - блок коррекции временной огибающей; 1j - блок банка фильтров синтеза полосы частот; 1k, 1m, 1n, 1o -блок управления вычислением временной огибающей; 1p, 1v - блок коррекции частотно-временной огибающей; 1q - блок наложения частотной огибающей; 1r - блок декодирования/деквантования кодированной последовательности; 1s - блок управления вычислением временной огибающей; 1t - блок коррекции огибающей; 1u - блок наложения частотной огибающей; 1w - блок вычисления частотной огибающей; 2, 102, 202, 302 - кодер речи; 2a - блок понижающей дискретизации; 2b - блок кодирования низкочастотной полосы; 2c - блок банка фильтров разделения полосы частот; 2d - блок вычисления дополнительной информации для генерирования высокочастотной полосы; 2e1~2ek - блок вычисления временной огибающей низкочастотной полосы; 2f - блок вычисления информации о временной огибающей; 2g - блок квантования/кодирования; 2h - блок составления кодированной последовательности высокочастотной полосы; 2i - блок мультиплексирования; 2j - блок генерирования информации управления вычислением временной огибающей; 2k - блок декодирования низкочастотной полосы; 2m - блок банка фильтров синтеза полосы частот; 2n, 2o, 2p - блок вычисления информации о частотной огибающей.
Изобретение относится к средствам для кодирования и декодирования речи. Технический результат заключается в уменьшении опережающего и запаздывающего эха. Декодер речи включает в себя блок демультиплексирования, блок декодирования низкочастотной полосы, блок банка фильтров разделения полосы частот, блок анализа кодированной последовательности, блок декодирования/деквантования кодированной последовательности, блок генерирования высокочастотной полосы, блоки вычисления временной огибающей низкочастотной полосы, которые получают множество временных огибающих низкочастотной полосы, блок вычисления временной огибающей, который вычисляет временные огибающие высокочастотной полосы, используя информацию о временной огибающей и множество временных огибающих низкочастотной полосы, блок коррекции временной огибающей, который корректирует временную огибающую составляющих высокочастотной полосы, используя временные огибающие, полученные блоком вычисления временной огибающей, и блок банка фильтров синтеза полосы частот. 40 ил.