Осуществления согласно изобретению связаны со звуковым кодирующим устройством для предоставления кодированной звуковой информации на основе входной звуковой информации и со звуковым декодером для предоставления декодированной звуковой информации на основе кодированной звуковой информации. Дальнейшие осуществления согласно изобретению связаны с кодированной звуковой информацией. Другие дальнейшие осуществления согласно изобретению связаны со способом предоставления декодированной звуковой информации на основе кодированной звуковой информации и со способом предоставления кодированной звуковой информации на основе входной звуковой информации. Дальнейшие осуществления связаны с компьютерными программами для выполнения изобретательных способов.
Осуществление изобретения связано с предложенным обновлением синтаксиса битового потока на основе объединенного речевого и звукового кодирования (USAC).
Далее будут объяснены предпосылки изобретения, чтобы облегчить понимание изобретения и его преимуществ. В последнее десятилетие были предприняты большие усилия по созданию возможности сохранения и распределения звукового содержания в цифровой форме. Одно важное достижение в этом смысле - определение международного стандарта ISO/IEC 14496-3. Часть 3 этого стандарта связана с кодированием и декодированием звукового содержания, а подраздел 4 части 3 связан с общим звуковым кодированием. ISO/IEC 14496 часть 3, подраздел 4 определяет концепцию кодирования и декодирования общего звукового содержания. Кроме того, были предложены дальнейшие усовершенствования для улучшения качества и/или снижения необходимой скорости передачи битов.
Однако согласно концепции, описанной в указанном стандарте, звуковой сигнал временного интервала преобразуется в частотно-временное представление. Преобразование из временного интервала в частотно-временную область обычно выполняется посредством использования преобразующих блоков, которые также обозначаются как «фреймы» сэмплов временного интервала. Было обнаружено, что выгодно использовать перекрывающиеся фреймы, которые смещаются, например, наполовину фрейма, потому что перекрывание позволяет эффективно избежать (или, по крайней мере, уменьшить) артефакты. Кроме того, было обнаружено, что организация окон должна выполняться, чтобы избежать артефактов, возникающих при обработке ограниченных по времени фреймов. Кроме того, организация окон позволяет оптимизировать процесс наложения и добавления последующих смещенных во времени, но перекрывающихся фреймов.
Однако было выявлено, что достаточно проблематично эффективно представить края, то есть резкие переходы или так называемые кратковременные электрические помехи в пределах звукового содержания, используя окна постоянной длины, потому что энергия перехода будет распределена по всей длине окна, что приводит к слышимым артефактам. Соответственно, было предложено переключение между окнами различных длин, таким образом, чтобы приблизительно постоянные части звукового содержания кодировались посредством использования длинных окон и, таким образом, чтобы переходные части (например, части, включающие помеху) звукового содержания кодировались посредством использования более коротких окон.
Однако в системе, которая позволяет выбирать между различными окнами для преобразования звукового содержания из временного интервала в частотно-временную область, конечно, необходимо сообщать декодеру, какое окно должно использоваться для декодирования закодированного звукового содержания данного фрейма.
В обычных системах, например в звуковом декодере, согласно международному стандарту ISO/IEC 14496-3, часть 3, подраздел 4, элемент данных, называемый "window_sequence", который показывает последовательность окон, используемую в текущем фрейме, вписывается двумя битами в битовый поток в так называемом "ics_info" элементе битового потока. Принимая во внимание последовательность окон предыдущего фрейма, сообщается о восьми различных последовательностях окон.
Исходя из вышеизложенного обсуждения, можно заметить, что битовая нагрузка кодированного битового потока, представляющая звуковую информацию, создается необходимостью сообщать тип используемого окна.
Ввиду этой ситуации желательно создать концепцию, которая обеспечивает более эффективное, относительно скорости передачи битов, информирование о типе окна, используемого для преобразования между представлением временного интервала звукового содержания и представлением частотно-временной области звукового содержания.
Эта проблема решается посредством звукового кодирующего устройства по п.1, звукового декодера по п.9, кодированной звуковой информации по п.12, способа предоставления декодированной звуковой информации по п.14, способа предоставления кодированной звуковой информации по п.15 и компьютерной программы по п.16.
Осуществление согласно изобретению создает звуковой декодер для предоставления декодированной звуковой информации на основе кодированной звуковой информации. Звуковой декодер включает основанный на применении окон сигнальный преобразователь, формируемый, чтобы отображать частотно-временное представление, описываемое кодированной звуковой информацией, на представлении временного интервала звукового содержания. Основанный на применении окон сигнальный преобразователь формируется, чтобы выбрать окно из множества окон, включающего окна различных наклонов перехода, и окна различных длин преобразования, на основе информации об окне. Звуковой декодер включает селектор окон, формируемый, чтобы оценить информацию об окне кодового слова переменной длины, чтобы выбрать окно для обработки данной части (например, фрейма) частотно-временного представления, связанного с данным фреймом звуковой информации.
Это осуществление изобретения основывается на обнаружении того, что скорость передачи битов, необходимая для хранения или передачи информации, указывающей, какой тип окна должен использоваться для преобразования представления частотно-временной области звукового содержания в представление временного интервала, может быть уменьшена посредством использования информации об окне кодового слова переменной длины. Было обнаружено, что информация об окне кодового слова переменной длины является подходящей, потому что информация, необходимая для выбора соответствующего окна, является подходящей для такого представления кодового слова переменной длины.
Например, при использовании информации об окне кодового слова переменной длины можно использовать тот факт, что имеется зависимость между выбором наклона перехода и выбором длины преобразования, потому что короткая длина преобразования обычно не используется для окна, имеющего один или два длинных наклона перехода. Соответственно, можно избежать передачи избыточной информации при использовании информации об окне кодового слова переменной длины, таким образом, повышая эффективность скорости передачи битов кодированной звуковой информации.
В качестве следующего примера следует заметить, что обычно существует корреляция между формами окон смежных фреймов, что также может использоваться для селективного уменьшения длины кодового слова информации об окне для случаев, когда тип окна дополнительных смежных окон (смежных с окном, рассматриваемым в настоящее время) ограничивает выбор типов окон для текущего фрейма.
Чтобы суммировать вышесказанное, использование информации об окне кодового слова переменной длины обеспечивает экономию скорости передачи битов без значительного увеличения сложности звукового декодера и без изменения формы исходящей волны звукового декодера (по сравнению с информацией об окне кодового слова постоянной длины). Кроме того, синтаксис кодированной звуковой информации может даже быть упрощен в некоторых случаях, что будет подробно обсуждено далее.
В предпочтительном осуществлении звуковой декодер включает анализатор битового потока, формируемый, чтобы анализировать битовый поток, представляющий кодированную звуковую информацию, и чтобы извлекать из битового потока одноразрядную информацию о длине наклона окна, и выборочно извлекать из битового потока одноразрядную информацию о длине преобразования, в зависимости от значения одноразрядной информации о длине наклона окна. В этом случае, селектор окна предпочтительно формируется, чтобы, в зависимости от информации о длине наклона окна, выборочно использовать или пренебрегать информацией о длине преобразования, чтобы выбрать окно для обработки данной части частотно-временного представления.
При использовании этой концепции может быть получено разделение между информацией о длине наклона окна и информацией о длине преобразования, которое способствует упрощению отображения в некоторых случаях. Кроме того, разделение информации об окне на обязательный бит длины наклона окна и бит длины преобразования, присутствие которого зависит от состояния бита длины наклона окна, обеспечивает очень эффективное уменьшение скорости передачи битов, которое может быть получено при сохранении достаточно простого синтаксиса битового потока. Соответственно, сложность анализатора битового потока сохраняется достаточно низкой.
В предпочтительном осуществлении селектор окон формируется, чтобы выбрать тип окна для обработки текущей части частотно-временной информации (например, текущий звуковой фрейм) в зависимости от типа окна, выбранного для обработки предыдущей части (например, предыдущего звукового фрейма) частотно-временной информации, таким образом, что длина левостороннего наклона окна для обработки текущей части частотно-временной информации согласуется с длиной правостороннего наклона окна, выбранного для обработки предыдущей части частотно-временной информации. При использовании этой информации скорость передачи битов, необходимая для выбора типа окна для обработки текущей части частотно-временной информации, является чрезвычайно малой, поскольку информация для выбора типа окна кодируется с чрезвычайно низкой сложностью. В частности, не обязательно «тратить» бит для кодирования длины левостороннего наклона окна, связанного с текущей частью частотно-временной информации. Соответственно, при использовании информации о длине правостороннего наклона окна, использовавшейся для обработки предыдущей части частотно-временной информации, могут использоваться два бита (например, обязательный бит длины наклона окна и факультативный бит длины преобразования) для выбора соответствующего окна из множества, состоящего более чем из четырех окон, которые могут быть выбраны. Таким образом, можно избежать ненужной избыточности и повысить эффективность скорости передачи битов кодированного битового потока.
В предпочтительном осуществлении селектор окон формируется, чтобы выбирать между первым типом окна и вторым типом окна в зависимости от значения одноразрядной информации о длине наклона окна, если длина правостороннего наклона окна для обработки предыдущей части частотно-временной информации получает "длинное" значение (показывающее большую длину наклона окна по сравнению с "коротким" значением, показывающим более короткую длину наклона окна) и если предыдущая часть частотно-временной информации, текущая часть частотно-временной информации и последующая часть частотно-временной информации - все кодируются в базовом режиме (в основной моде) частотной области.
Селектор окон также предпочтительно формируется, чтобы выбрать третий тип окна в ответ на первое значение (например, значение, равное "единице") одноразрядной информации о длине наклона окна, если длина правостороннего наклона окна для обработки предыдущей части частотно-временной информации получает "короткое" значение (как обсуждалось выше) и если предыдущая часть частотно-временной информации, текущая часть частотно-временной информации и последующая часть частотно-временной информации - все кодируются в базовом режиме (в основной моде) частотной области.
Кроме того, селектор окон также предпочтительно формируется, чтобы выбирать между четвертым типом окна и последовательностью окон (которая может рассматриваться как пятый тип окна) в зависимости от одноразрядной информации о длине преобразования, если одноразрядная информация о длине наклона окна получает второе значение (например, значение, равное "нулю"), показывающее короткий правосторонний наклон окна, и если длина правостороннего наклона окна для обработки предыдущей части частотно-временной информации получает "короткое" значение (как обсуждалось выше), и если предыдущая часть частотно-временной информации, текущая часть частотно-временной информации и последующая часть частотно-временной информации - все кодируются в базовом режиме (в основной моде) частотной области.
Для этого случая первый тип окна включает (сравнительно) большую длину левостороннего наклона окна, (сравнительно) большую длину правостороннего наклона окна и (сравнительно) большую длину преобразования; второй тип окна включает (сравнительно) большую длину левостороннего наклона окна, (сравнительно) короткую длину правостороннего наклона окна и (сравнительно) большую длину преобразования; третий тип окна включает (сравнительно) короткую длину левостороннего наклона окна, (сравнительно) большую длину правостороннего наклона окна и (сравнительно) большую длину преобразования; и четвертый тип окна включает (сравнительно) короткую длину левостороннего наклона окна, (сравнительно) короткую длину правостороннего наклона окна и (сравнительно) большую длину преобразования. «Последовательность окон» (или пятый тип окна) определяет последовательность или наложение множества подокон, связанных с одиночной частью (например, фрейм) частотно-временной информации; каждое множество подокон имеет (сравнительно) короткую длину преобразования, (сравнительно) короткую длину левостороннего наклона окна и (сравнительно) короткую длину правостороннего наклона окна. При использовании такого подхода в общей сложности пять типов окна (включая тип «последовательность окон») могут быть выбраны с использованием только двух битов, где одноразрядная информация (а именно, одноразрядная информация о длине наклона окна) является достаточной для сообщения об обычной последовательности множества окон, имеющих сравнительно большие длины и левостороннего, и правостороннего наклона окна. Наоборот, двухбитовая информация об окне необходима только при компоновке последовательности коротких окон («последовательность окон» или «пятый тип окна») и в течение расширенных во времени (на множестве фреймов) серий фреймов «последовательности окон».
Чтобы суммировать, вышеописанная концепция выбора типа окна из множества, состоящего, например, из пяти различных типов окон, обеспечивает значительное уменьшение необходимой скорости передачи битов. В то время как, традиционно, три выделенных бита необходимы, чтобы выбрать тип окна, например, из пяти типов окон, согласно данному изобретению для выполнения такого выбора необходим только один или два бита. Таким образом, может быть достигнута существенная экономия битов, что уменьшает необходимую скорость передачи битов и/или обеспечивает шанс улучшить качество звука.
В предпочтительном осуществлении селектор окна формируется, чтобы выборочно оценить бит длины преобразования информации об окне кодового слова переменной длины, только если тип окна для обработки предыдущей части (например, фрейма) частотно-временной информации имеет длину правостороннего наклона окна, соответствующую длине левостороннего наклона окна короткой последовательности окон, и если одноразрядная информация о длине наклона окна, связанная с текущей частью (например, текущий фрейм) частотно-временной информации, определяет длину правостороннего наклона окна, соответствующую длине правостороннего наклона окна короткой последовательности окна.
В предпочтительном осуществлении селектор окна далее формируется, чтобы получать информацию о предыдущем базовом режиме (основной моде), связанную с предыдущей частью (например, фрейм) звуковой информации и описывающую базовый режим (основную моду), использовавшийся для кодирования предыдущей части (например, фрейм) звуковой информации. В этом случае, селектор окна формируется, чтобы выбрать окно для обработки текущей части (например, фрейм) частотно-временного представления в зависимости от информации о предыдущем базовом режиме (основной моде), а также в зависимости от информации об окне кодового слова переменной длины, связанной с текущей частью частотно-временного представления. Таким образом, базовый режим (основная мода) предыдущего фрейма может использоваться, чтобы выбрать соответствующее окно для перехода (например, в форме операции наложения и добавления) между предыдущим фреймом и текущим фреймом. Снова, использование информации об окне кодового слова переменной длины очень выгодно, потому что снова можно сэкономить значительное количество битов. Особенно хорошая экономия может быть получена, если число типов окна, которое доступно (или допустимо) для кодированного звукового фрейма, например, в области линейного предсказания, является небольшим. Таким образом, часто имеется возможность использовать короткое кодовое слово из более длинного кодового слова и более короткого кодового слова при переходе между двумя различными базовыми режимами (основными модами) (например, между базовым режимом (основной модой) области линейного предсказания и базовым режимом (основной модой) частотной области).
В предпочтительном осуществлении селектор окна далее формируется, чтобы получать информацию о последующем базовом режиме (основной моде), связанную с последующей частью (или фреймом) звуковой информации и описывающую базовый режим (основную моду), использующийся для кодирования последующего фрейма звуковой информации. В этом случае, звуковой селектор предпочтительно формируется, чтобы выбирать окно для обработки текущей части (например, фрейм) частотно-временного представления в зависимости от информации о последующем базовом режиме (основной моде), а также в зависимости от информации об окне кодового слова переменной длины, связанной с текущей частью частотно-временного представления. Снова, информация об окне кодового слова переменной длины может использоваться в комбинации с информацией о последующем базовом режиме (основной моде), чтобы определить тип окна с требованием счета битов низкого уровня.
В предпочтительном осуществлении селектор окна формируется, чтобы выбирать окна, имеющие укороченный правосторонний наклон, если информация о последующем базовом режиме (основной моде) показывает, что последующий фрейм звуковой информации кодируется посредством использования базового режима (основной моды) области линейного предсказания. Таким образом, адаптация окон к переходу между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) временного интервала может быть произведена без дополнительных усилий по передаче сигналов.
Другое осуществление согласно изобретению создает звуковое кодирующее устройство для предоставления кодированной звуковой информации на основе входной звуковой информации. Звуковое кодирующее устройство включает основанный на применении окон сигнальный преобразователь, формируемый, чтобы обеспечить последовательность параметров - звукового сигнала (например, представление частотно-временной области входной звуковой информации) на основе множества частей, реализуемых посредством организации окна (например, перекрывающиеся или неперекрывающиеся фреймы) входной звуковой информации. Основанный на применении окна сигнальный преобразователь предпочтительно формируется, чтобы адаптировать форму окна для получения реализуемых посредством организации окна частей входной звуковой информации в зависимости от характеристик входной звуковой информации. Основанный на применении окна сигнальный преобразователь формируется, чтобы переключаться между использованием окон, имеющих (сравнительно) более длинный наклон перехода, и окон, имеющих (сравнительно) более короткий наклон перехода, и также переключаться между использованием окон, имеющих две или более различные длины преобразования. Основанный на применении окна сигнальный преобразователь также формируется, чтобы определить тип окна, использовавшийся для преобразования текущей части (например, фрейма) входной звуковой информации в зависимости от типа окна, использовавшегося для преобразования предыдущей части (например, фрейма) входной звуковой информации и звукового содержания текущей части входной звуковой информации. Кроме того, звуковое кодирующее устройство формируется, чтобы кодировать информацию об окне, описывающую тип окна, использовавшегося для преобразования текущей части входной звуковой информации, посредством использования кодового слова переменной длины. Это звуковое кодирующее устройство обеспечивает преимущества, уже обсужденные в отношении изобретательного звукового декодера. В частности, имеется возможность уменьшить скорость передачи битов кодированной звуковой информации, избегая использования сравнительно длинного кодового слова в некоторых или всех ситуациях, когда это возможно.
Другое осуществление согласно изобретению создает кодированную звуковую информацию. Кодированная звуковая информация включает кодированное частотно-временное представление, описывающее звуковое содержание множества реализуемых посредством организации окна частей звукового сигнала. Окна различных наклонов перехода (например, длины наклона перехода) и различных длин преобразования связаны с различными реализуемыми посредством организации окна частями звукового сигнала. Кодированная звуковая информация также включает кодированную информацию об окне, кодирующую типы окон, использовавшихся для получения кодированных частотно-временных представлений множества реализуемых посредством организации окна частей звукового сигнала. Кодированная информация об окне является информацией о переменной длине окна, кодирующей один или более типов окон посредством использования первого, меньшего числа битов, и кодирующей один или более других типов окон посредством использования второго, большего числа битов. Эта кодированная звуковая информация предоставляет преимущества, уже обсужденные выше относительно изобретательного звукового декодера и изобретательного звукового кодирующего устройства.
Другое осуществление согласно изобретению создает способ предоставления декодированной звуковой информации на основе кодированной звуковой информации. Способ включает оценку информации об окне кодового слова переменной длины для выбора окна из множества окон, включающих окна различных наклонов перехода (например, различные длины наклона перехода) и окна различных длин преобразования, для обработки данной части частотно-временного представления, связанного с данным фреймом звуковой информации. Способ также включает отображение данной части частотно-временного представления, которое описывается кодированной звуковой информацией, на представлении временного интервала посредством использования выбранного окна.
Другое осуществление согласно изобретению создает способ предоставления кодированной звуковой информации на основе входной звуковой информации. Способ включает предоставление последовательности параметров звукового сигнала (например, представление частотно-временной области) на основе множества реализуемых посредством организации окна частей входной звуковой информации. Чтобы предоставить последовательность параметров звукового сигнала, выполняется переключение между использованием окон, имеющих более длинный наклон перехода, и окон, имеющих более короткий наклон перехода, а также между использованием окон, имеющих две или более различные длины преобразования, чтобы адаптировать формы окна для получения реализуемых посредством организации окна частей входной звуковой информации в зависимости от характеристик входной звуковой информации. Способ также включает кодирование информации об окне, описывающей тип окна, использовавшегося для преобразования текущей части входной звуковой информации, посредством использования кодового слова переменной длины.
Кроме того, осуществления согласно изобретению создают компьютерные программы для реализации указанных способов.
Краткое описание рисунков
Осуществления изобретения будут впоследствии описаны со ссылкой на приложенные рисунки, где:
Фиг.1 показывает блок-схему звукового кодирующего устройства согласно осуществлению изобретения;
Фиг.2 показывает блок-схему звукового декодера согласно осуществлению изобретения;
Фиг.3 показывает схематическое представление различных типов окна, которые могут использоваться в соответствии с изобретательной концепцией;
Фиг.4 показывает графическое представление допустимых переходов между окнами различных типов окна, которые могут быть применены в схеме осуществлений согласно изобретению;
Фиг.5 показывает графическое представление последовательности различных типов окна, которые могут быть произведены изобретательным кодирующим устройством или которые могут быть обработаны изобретательным звуковым декодером;
Фиг.6 показывает таблицу, представляющую предложенный синтаксис битового потока согласно осуществлению изобретения;
Фиг.6b показывает графическое представление отображения типа окна текущего фрейма на "windowjength" информации (о длине окна) и "transfbrm_length" информации (о длине преобразования);
Фиг.6с показывает графическое представление отображения для получения типа окна текущего фрейма на основе информации о предыдущем базовом режиме (основной моде), "window_length" информации (о длине окна) предыдущего фрейма, "window_length" информации (о длине окна) текущего фрейма и "transfbrm_length" информации (о длине преобразования) текущего фрейма;
Фиг.7а показывает таблицу, представляющую синтаксис "window_length" информации (о длине окна);
Фиг.7b показывает таблицу, представляющую синтаксис "transform_length" информации (о длине преобразования);
Фиг.7с показывает таблицу, представляющую новый синтаксис битового потока и переходы;
Фиг.8 показывает таблицу, дающую краткий обзор всех комбинаций "window_length" информации (о длине окна) и "transform_length" информации (о длине преобразования);
Фиг.9 показывает таблицу, представляющую экономию битов, которая может быть получена при использовании осуществления изобретения;
Фиг.10а показывает представление синтаксиса, так называемого блока исходных данных USAC;
Фиг.10b показывает представление синтаксиса, так называемого одноканального элемента;
Фиг.10 с показывает представление синтаксиса, так называемого двухканального элемента;
Фиг.10d показывает представление синтаксиса, так называемой информации ICS (системы информации и связи);
Фиг.10е показывает представление синтаксиса, так называемого потока канала частотной области;
Фиг.11 показывает блок-схему способа предоставления кодированной звуковой информации на основе входной звуковой информации; и
Фиг.12 показывает блок-схему способа предоставления декодированной звуковой информации на основе кодированной звуковой информации.
Детальное описание осуществлений
Краткий обзор звукового кодирующего устройства
Далее будет описано звуковое кодирующее устройство, в котором может быть применена изобретательная концепция. Однако следует заметить, что звуковое кодирующее устройство, описанное со ссылкой на фиг.1, должно рассматриваться только как пример звукового кодирующего устройства, в котором может быть применено изобретение. Однако даже при том, что сравнительно простое звуковое кодирующее устройство обсуждается со ссылкой на фиг.1, следует заметить, что изобретение может также применяться в намного более сложных звуковых кодирующих устройствах, например, в звуковых кодирующих устройствах, которые могут переключаться между различными базовыми режимами (основными модами) кодирования (например, между кодированием частотной области и кодированием области линейного предсказания). Однако, ради простоты, это кажется полезным для понимания основных идей простого звукового кодирующего устройства частотной области.
Звуковое кодирующее устройство, показанное на фиг.1, очень похоже на звуковое кодирующее устройство, описанное в международном стандарте ISO/IEC 14496-3:2005 (Е), часть 3, подраздел 4, а также в документах, на которые там имеется ссылка. Соответственно, ссылка должна быть сделана на указанный стандарт, документы, процитированные там и обширную литературу, имеющую отношение к звуковому кодированию MPEG.
Звуковое кодирующее устройство 100, показанное на фиг.1, формируется, чтобы получать входную звуковую информацию 110, например звуковой сигнал временного интервала. Звуковое кодирующее устройство 100 далее включает дополнительный препроцессор 120, формируемый, чтобы факультативно предварительно обрабатывать входную звуковую информацию 110, например, посредством субдискретизации входной звуковой информации 110 или посредством регулирования коэффициента усиления входной звуковой информации 110. Звуковое кодирующее устройство 100 также включает, в качестве ключевого компонента, основанный на применении окна сигнальный преобразователь 130, который формируется, чтобы получить входную звуковую информацию 110, или ее предварительно обработанную версию 122, и чтобы преобразовать входную звуковую информацию 110 или ее предварительно обработанную версию 122 в частотную область (или частотно-временную область), чтобы получить последовательность параметров звукового сигнала, которые могут быть спектральными значениями в частотно-временной области. С этой целью, основанный на применении окна сигнальный преобразователь 130 включает устройство управления окнами/преобразователь 136, который может формироваться, чтобы преобразовать блоки сэмплов (например, «фреймы») входной звуковой информации 110, 122 в совокупности спектральных значений 132. Например, устройство управления окнами/преобразователь 136 может формироваться, чтобы обеспечить одну совокупность спектральных значений для каждого блока сэмплов (то есть для каждого «фрейма») входной звуковой информации. Однако блоки сэмплов (то есть «фреймы») входной звуковой информации 110, 122 предпочтительно могут быть перекрывающимися, так чтобы смежные во времени блоки сэмплов (фреймы) входной звуковой информации 110, 122 совместно использовали множество сэмплов. Например, два последовательных во времени блока сэмплов (фреймы) могут перекрываться приблизительно 50% сэмплов. Соответственно, устройство управления окнами/преобразователь 136 может формироваться, чтобы выполнить так называемое перекрывающее преобразование, например модифицированное дискретное косинусное преобразование (MDCT). Однако, выполняя модифицированное дискретное косинусное преобразование, устройство управления окнами/преобразователь 136 может применять окно к каждому блоку сэмплов, посредством этого взвешивая центральные сэмплы (упорядоченные во времени поблизости от временного центра блока сэмплов) сильнее, чем периферийные сэмплы (упорядоченные во времени поблизости от ведущего и заднего конца блока сэмплов). Управление окнами может помочь избежать артефактов, которые возникают из сегментации входной звуковой информации 110, 122 на блоки. Таким образом, применение окон до или вовремя преобразования из временного интервала в частотно-временную область обеспечивает гладкий переход между последующими блоками сэмплов входной звуковой информации 110, 122. Детали относительно взвешивания снова могут быть найдены в международном стандарте ISO/IEC 14496, часть 3, подраздел 4 и в документах, на которые там делается ссылка. В очень простой версии звукового кодирующего устройства число 2N сэмплов звукового фрейма (определены как блок сэмплов) будут преобразованы в совокупность N спектральных коэффициентов, независимо от характеристик сигнала. Однако было обнаружено, что такая концепция, в которой используется постоянная длина преобразования 2N сэмплов звуковой информации 110, 122 независимо от характеристик входной звуковой информации 110, 122, приводит к серьезной деградации переходов, потому что в случае перехода, энергия перехода распространяется по всему фрейму при декодировании звуковой информации. Однако было обнаружено, что улучшение кодирования краев может быть получено, если выбирается более короткая длина преобразования (например, 2N/8=N/4 сэмплов на преобразование). Однако было также обнаружено, что выбор более короткой длины преобразования обычно увеличивает необходимую скорость передачи битов, даже если получается меньшее количество спектральных значений для более короткой длины преобразования, по сравнению с большей длиной преобразования. Соответственно, рекомендуется переключаться от большей длины преобразования (например, 2N сэмплов на преобразование) на короткую длину преобразования (например, 2N/8=N/4 сэмплов на преобразование) поблизости от перехода (также обозначаемого как край) звукового содержания и переключаться обратно на большую длину преобразования (например, 2N-сэмплов на преобразование) после перехода. Переключение длины преобразования связано с изменением окна, применяемого для управления окнами сэмплов входной звуковой информации 110, 122, до или вовремя преобразования.
Относительно этой проблемы следует заметить, что во многих случаях звуковое кодирующее устройство может использовать более двух различных окон. Например, так называемая "only_long_sequence" (только длинная последовательность) может использоваться для кодирования текущего звукового фрейма, если оба, и предыдущий фрейм (предшествующий рассматриваемому в настоящее время фрейму), и последующий фрейм (следующий за рассматриваемым в настоящее время фреймом) кодируются посредством использования большой длины преобразования (например, 2N сэмплов). Наоборот, так называемая "long_start_sequence" (длинная начальная последовательность) может использоваться в фрейме, который преобразуется посредством использования большой длины преобразования, которому предшествует фрейм, преобразованный посредством использования большой длины преобразования и за которым следует фрейм, преобразованный посредством использования короткой длины преобразования. В фрейме, который преобразуется посредством использования короткой длины преобразования, может быть применена так называемая "eight_short_sequence" (последовательность восьми коротких) последовательность окон, которая включает восемь коротких и перекрывающихся (под-) окон. Кроме того, так называемая "long_stop_sequence" (долгая конечная последовательность) последовательность окон может применяться для преобразования фрейма, который предшествует предыдущему фрейму, преобразованному посредством использования короткой длины преобразования, и за которым следует фрейм, преобразованный посредством использования большой длины преобразования. Детали относительно возможных последовательностей окон описаны в ISO/IEC 14496-3:2005 (Е), часть 3, подраздел 4. Кроме того, ссылка делается на фиг.3, 4, 5, 6, что далее будет объяснено более подробно.
Однако следует заметить, что в некоторых осуществлениях может использоваться один или более дополнительных типов окон. Например, может применяться так называемая "stop_start_sequence" (конечная начальная последовательность) последовательность окон, если текущему фрейму предшествует фрейм, в котором используется короткая длина преобразования, и если за текущим фреймом следует фрейм, в котором используется короткая длина преобразования.
Соответственно, основанный на применении окна сигнальный преобразователь 130 включает определитель последовательности окон 138, который формируется, чтобы предоставить информацию о типе окна 140 устройству управления окнами/преобразователю 136, так чтобы устройство управления окнами/преобразователь 136 могли использовать подходящий тип окна («последовательность окон»). Например, определитель последовательности окон 130 может формироваться, чтобы непосредственно оценить входную звуковую информацию 110 или предварительно обработанную входную звуковую информацию 122. Однако, альтернативно, звуковое кодирующее устройство 100 может включать психо-акустический процессор для опознавания по эталонной модели 150, который формируется для получения входной звуковой информации 110 или предварительно обработанной входной звуковой информации 122, и применять психо-акустическую модель, чтобы извлечь информацию, которая важна для кодирования входной звуковой информации 110, 122 из входной звуковой информации 110, 122. Например, психо-акустический процессор для опознавания по эталонной модели 150 может формироваться, чтобы идентифицировать переходы в пределах входной звуковой информации 110, 122 и чтобы предоставлять информацию о длине окна 152, которая может сообщать о фреймах, в которых желательна короткая длина преобразования, из-за присутствия перехода в соответствующей входной звуковой информации 110, 122.
Психо-акустический процессор для опознавания по эталонной модели 150 может также формироваться, чтобы определить, какие спектральные значения должны быть закодированы с высоким разрешением (то есть тонкая квантизация) и какие спектральные значения могут быть закодированы с более низким разрешением (то есть более грубая квантизация) без возникновения серьезной деградации звукового содержания. С этой целью, психо-акустический процессор для опознавания по эталонной модели 150 может формироваться, чтобы оценить психо-акустические эффекты маскировки, таким образом, идентифицируя спектральные значения (или группы спектральных значений), которые имеют более низкую психо-акустическую релевантность, и другие спектральные значения (или группы спектральных значений), которые имеют более высокую психо-акустическую релевантность. Соответственно, психо-акустический процессор для опознавания по эталонной модели 150 предоставляет информацию о психо-акустической релевантности 154.
Звуковое кодирующее устройство 100 далее включает факультативный спектральный процессор 160, который формируется, чтобы получить последовательность параметров звукового сигнала 132 (например, представление частотно-временной области входной звуковой информации 110, 122) и обеспечить, на ее основе, постобработанную последовательность параметров звукового сигнала 162. Например, спектральный постпроцессор 160 может формироваться, чтобы выполнить временное ограничение шума, долгосрочное предсказание, перцепционное замещение шума и/или обработку звукового канала.
Звуковое кодирующее устройство 100 также включает факультативный процессор масштабирования/квантизации/кодирования 170, который формируется, чтобы масштабировать параметры звукового сигнала (например, значения частотно-временной области или «спектральные значения») 132, 162, чтобы выполнить квантизацию и чтобы кодировать масштабированные и квантованные значения. С этой целью, процессор масштабирования/квантизации/кодирования 170 может формироваться, чтобы использовать информацию 154, предоставленную психо-акустическим процессором для опознавания по эталонной модели, например, чтобы решить, какое масштабирование и/или какая квантизация должна применяться к каким параметрам звукового сигнала (или спектральным значениям). Соответственно, масштабирование и квантизация могут быть приспособлены так, чтобы получить желательную скорость передачи битов масштабированных, квантованных и кодированных параметров звукового сигнала (или спектральные значения).
Кроме того, звуковое кодирующее устройство 100 включает кодирующее устройство кодового слова переменной длины 180, которое формируется, чтобы получить информацию о типе окна 140 от определителя последовательности окон 138 и обеспечить, на ее основе, кодовое слово переменной длины 182, которое описывает тип окна, использовавшегося для операции управления окнами/ преобразования, выполненной устройством управления окнами/преобразователем 136. Детали относительно кодирующего устройства кодового слова переменной длины 180 будут описаны впоследствии.
Кроме того, звуковое кодирующее устройство 100 факультативно включает форматер полезной нагрузки битового потока 190, который формируется, чтобы получить масштабированную, квантованную и кодированную спектральную информацию 172 (которая описывает последовательность параметров звукового сигнала или спектральных значений 132), и кодовое слово переменной длины 182, описывающее тип окна, используемого для операции управления окнами/преобразования. Соответственно, форматер полезной нагрузки битового потока 190 обеспечивает битовый поток 192, в который включена информация 172 и кодовое слово переменной длины 182. Битовый поток 192 служит в качестве кодированной звуковой информацией и может быть сохранен на носителе и/или передан от звукового кодирующего устройства 100 звуковому декодеру.
Чтобы суммировать вышесказанное, звуковое кодирующее устройство 100 формируется, чтобы предоставлять кодированную звуковую информацию 192 на основе входной звуковой информации 110. Звуковое кодирующее устройство 100 включает, в качестве важного компонента, основанный на применении окна сигнальный преобразователь 130, который формируется, чтобы обеспечить последовательность параметров звукового сигнала 132 (например, последовательность спектральных значений) на основе множества реализуемых посредством организации окна частей входной звуковой информации 110. Основанный на применении окна сигнальный преобразователь 130 формируется так, чтобы тип окна для получения реализуемых посредством организации окна частей входной звуковой информации выбирался в зависимости от характеристик звуковой информации. Основанный на применении окна сигнальный преобразователь 130 формируется, чтобы переключаться между использованием окон, имеющих более длинный наклон перехода, и окнами, имеющими более короткий наклон перехода, а также переключаться между использованием окон, имеющих две или более различные длины преобразования. Например, основанный на применении окна сигнальный преобразователь 130 формируется, чтобы определить тип окна, использовавшийся для преобразования текущей части (например, фрейма) входной звуковой информации в зависимости от типа окна, использовавшегося для преобразования предыдущей части (например, фрейма) входной звуковой информации, и в зависимости от звукового содержания текущей части входной звуковой информации. Однако звуковое кодирующее устройство формируется, чтобы кодировать, например, посредством использования кодирующего устройства кодового слова переменной длины 180, информацию о типе окна 140, описывающую тип окна, использовавшийся для преобразования текущей части (например, фрейма) входной звуковой информации посредством использования кодового слова переменной длины.
Типы окон преобразования
Далее будут детально описаны различные окна, которые могут применяться устройством управления окнами/преобразователем 136, и которые выбираются определителем последовательности окон 138. Однако окна, обсуждаемые здесь, должны рассматриваться только в качестве примера. Впоследствии, будут обсуждены изобретательные концепции для эффективного кодирования типа окна.
Теперь со ссылкой на фиг.3, которая показывает графическое представление различных типов окон преобразования, будет дан краткий обзор новых образцов окон. Однако дополнительная ссылка делается на ISO/IEC 14496-3, часть 3, подраздел 4, в котором концепции применения окон преобразования описаны даже более подробно.
Фиг.3 показывает графическое представление первого типа окна 310, который включает (сравнительно) длинный левосторонний наклон окна 310а (1024 сэмпла) и длинный правосторонний наклон окна ЗЮЬ (1024 сэмпла). В общей сложности 2048 сэмплов и 1024 спектральных коэффициента связаны с первым типом окна 310, так что первый тип окна 310 включает, так называемую, «большую длину преобразования».
Второй тип окна 312 определяется как "long_start_sequence" (длинная начальная последовательность) или "long_start_window" (длинное начальное окно). Второй тип окна включает (сравнительно) длинный левосторонний наклон окна 312а (1024 сэмпла) и (сравнительно) короткий правосторонний наклон окна 312b (128 сэмплов). В общей сложности 2048 сэмплов и 1024 спектральных коэффициента связаны со вторым типом окна, так что второй тип окна 312 включает большую длину преобразования.
Третий тип окна 314 определяется как "long_stop_sequence" (длинная конечная последовательность) или "long_stop_window" (длинное конечное окно). Третий тип окна 314 включает короткий левосторонний наклон окна 314а (128 сэмплов) и длинный правосторонний наклон окна 314b (1024 сэмпла). В общей сложности 2048 сэмплов и 1024 спектральных коэффициента связаны с третьим типом окна 314, так что третий тип окна включает большую длину преобразования.
Четвертый тип окна 316 определяется как "stop_start_sequence" (конечная начальная последовательность) или "stop_start_window"(конечное начальное окно). Четвертый тип окна 316 включает короткий левосторонний наклон окна 316а (128 сэмплов) и короткий правосторонний наклон окна 316b (128 сэмплов). В общей сложности 2048 сэмплов и 1024 спектральных коэффициента связаны с четвертым типом окна, так что четвертый тип окна включает «большую длину преобразования.
Пятый тип окна 318 значительно отличается от первого-четвертого типов окна. Пятый тип окна включает наложение восьми «коротких окон» или подокон 319а-319h, которые упорядочены так, чтобы перекрываться во времени. Каждое из коротких окон 319а-319h включает длину, равную 256 сэмплам. Соответственно, «короткое» MDCT преобразование, преобразовывающее 256 сэмплов в 128 спектральных значений, связано с каждым из коротких 319a-319h окон. Соответственно, восемь совокупностей из 128 спектральных значений каждый связаны с пятым типом окна 318, в то время как одиночная совокупность из 1024 спектральных значений связана с каждым из первого-четвертого типов окна 310, 312, 314, 316. Соответственно, можно сказать, что пятый тип окна включает «короткую» длину преобразования. Однако пятый тип окна включает короткий левосторонний наклон окна 318а и короткий правосторонний наклон окна 318b.
Таким образом, для фрейма, с которым связан первый тип окна 310, второй тип окна 312, третий тип окна 314 или четвертый тип окна 316, 2048 сэмплов входной звуковой информации совместно реализуются посредством организации окна и преобразуются посредством MDCT, как единая группа, в частотно-временную область. Наоборот, для фрейма, с которым связан пятый тип окна 318, восемь (по крайней мере, частично перекрывающиеся) подмножеств, состоящих из 256 сэмплов каждый, индивидуально (или отдельно) преобразуются посредством MDCT, так что получаются восемь совокупностей MDCT коэффициентов (частотно-временных значений).
Снова со ссылкой на фиг.3 следует заметить, что фиг.3 показывает множество дополнительных окон. Эти дополнительные окна, а именно, так называемая, "stop_1152_sequence" (конечная последовательность 1152) или "stop_window_1152" (конечное окно 1152) 330 и, так называемая, "stop_start_1152_sequence" (конечная начальная последовательность 1152) или "stop_start_window_1152" (конечное начальное окно 1152) 332 могут применяться, если текущему фрейму предшествует предыдущий фрейм, который кодируется в области линейного предсказания. В таких случаях длина преобразования приспосабливается, чтобы обеспечить уничтожение артефактов совмещения имен временного интервала.
Кроме того, дополнительные окна 362, 366, 368, 382 могут факультативно применяться, если за текущим фреймом следует последующий фрейм, который кодируется в области линейного предсказания. Однако типы окна 330, 332, 362, 366, 368, 382 должны рассматриваться как факультативные и не требуются для реализации изобретательной концепции.
Переходы между типами окон преобразования
Теперь со ссылкой на фиг.4, которая показывает схематическое представление допустимых переходов между последовательностями окон (или типами окон преобразования), будут объяснены некоторые дальнейшие детали. Обращая внимание на то, что два последующих окна преобразования, каждый из которых имеет один из типов окна 310, 312, 314, 316, 318, применяются к частично перекрывающимся блокам звуковых сэмплов, следует понимать, что правосторонний наклон окна первого окна должен подходить к левостороннему наклону окна второго, последующего окна, чтобы избежать артефактов, вызванных частичным перекрыванием. Соответственно, выбор типов окна для второго фрейма (из двух последующих фреймов) ограничен, если дан тип окна для первого фрейма (из двух последующих фреймов). Как видно по фиг.4, если первое окно является "only_long_sequence" (только длинная последовательность) окном, за первым окном может следовать только "only_long_sequence" (только длинная последовательность) окно или "long_start_sequence" (длинная начальная последовательность) окно. Наоборот, недопустимо использование "eight_short_sequence" (последовательность восьми коротких) окна, "long_stop_sequence" (длинная конечная последовательность) окна или "stop_start_sequence" (конечная начальная последовательность) окно для второго фрейма, следующего за первым фреймом, если используется "only_long_sequence" (только длинная последовательность) окна для преобразования первого фрейма. Точно так же, если "long_stop_sequence" (длинная конечная последовательность) окно используется в первом фрейме, второй фрейм может использовать "only_long_sequence" (только длинная последовательность) окно или "long_start_sequence" (длинная начальная последовательность) окно, а второй фрейм может не использовать "eight_short_sequence" (последовательность восьми коротких) окно, "long_stop_sequence" (длинная конечная последовательность) окно или "stop_start_sequence" (конечная начальная последовательность) окно.
Наоборот, если первый фрейм (из двух последующих фреймов) использует "long_start_sequence" (длинная начальная последовательность) окно, "eight_short_sequence" (последовательность восьми коротких) окно или "stop_start_sequence" (конечная начальная последовательность) окно, второй фрейм (из двух последующих фреймов) может не использовать "only_long_sequence" (только длинная последовательность) окно или "long_start_sequence" (длинная начальная последовательность) окно, но может использовать "eight_short_sequence" (последовательность восьми коротких) окно, "long_stop_sequence" (длинная конечная последовательность)"окно или "stop_start_sequence" (конечная начальная последовательность) окно.
Допустимые переходы между типами окна "only_long_sequence" (только длинная последовательность), "long_start_sequence" (длинная начальная последовательность), "eight_short_sequence" (последовательность восьми коротких), "long_stop_sequence" (длинная конечная последовательность), и "stop_start_sequence" (конечная начальная последовательность) показаны «галочкой» на фиг.4. Наоборот, переходы между типами окна, у которых нет «галочки», недопустимы в некоторых осуществлениях.
Кроме того, следует заметить, что дополнительное типы окна "LPD_sequence" (LPD последовательность), "stop_1152_sequence" (конечная последовательность 1152), и "stop_start_1152_sequence" (конечная начальная последовательность 1152) могут использоваться, если возможны переходы между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) области линейного предсказания. Однако такую возможность следует считать факультативной, и это будет обсуждено позже.
Примерная последовательность окон
Далее будет описана последовательность окон, которая использует типы окна 310, 312, 314, 316, 318. Фиг.5 показывает графическое представление такой последовательности окон. Как видно, абсцисса 510 показывает время. Фреймы, которые перекрываются приблизительно на 50%, отмечены на фиг.5 и обозначены "frame 1" - "frame 7" (фрейм 1-фрейм 7). Фиг.5 показывает первый фрейм 520, который может, например, включать 2048 сэмплов. Второй фрейм 522 сдвигается во времени относительно первого фрейма 520 приблизительно на 1024 сэмпла, так что второй фрейм перекрывает первый фрейм 520 приблизительно на 50%. Временное выравнивание третьего фрейма 524, четвертого фрейма 526, пятого фрейма 528, шестого фрейма 530 и седьмого фрейма 532 можно видеть на фиг.5. "Only_long_sequence" (только длинная последовательность) окно 540 (типа 310) связано с первым фреймом 520. Кроме того, "only_long_sequence" (только длинная последовательность) окно 542 (типа 310) связано со вторым фреймом 522. "long_start_sequence" (длинная начальная последовательность) окно 544 (типа 312) связано с третьим фреймом, "eight_short_sequence" (последовательность восьми коротких) окно 546 (типа 318) связано с четвертым фреймом 526, "stop_start_sequence" (конечная начальная последовательность) окно 548 (типа 316) связано с пятым фреймом, "eight_short_sequence" (последовательность восьми коротких) окно 550 (типа 318) связано с шестым фреймом 530, и "long_stop_sequence" (длинная конечная последовательность) окно 552 (типа 314) связано с седьмым фреймом 532. Соответственно, одиночная совокупность 1024 MDCT коэффициентов связана с первым фреймом 520, другая одиночная совокупность 1024 MDCT коэффициентов связана со вторым фреймом 522, и еще одна одиночная совокупность 1024 MDCT коэффициентов связана с третьим фреймом 524. Однако восемь совокупностей 128 MDCT коэффициентов связаны с четвертым фреймом 526. Одиночная совокупность 1024 MDCT коэффициентов связана с пятым фреймом 528.
Последовательность окон, показанная на фиг.5, может, например, приводить к особенно эффективному кодированию скорости передачи битов, если есть помеха в центральной части четвертого фрейма 526 и если есть другая помеха в центральной части шестого фрейма 530, в то время как сигнал приблизительно постоянен в течение остальной части времени (например, во время первого фрейма 520, второго фрейма 522, в начале третьего фрейма 524, в центре пятого фрейма 528 и в конце седьмого фрейма 532).
Однако, как будет подробно объяснено далее, данное изобретение создает особенно эффективную концепцию кодирования типов окон, связанных со звуковыми фреймами. Относительно этой проблемы следует заметить, что в общей сложности пять различных типов окон 310, 312, 314, 316, 318 используются в последовательности окон 500 на фиг.5. Соответственно, «обычно» бывает необходимо использовать три бита для кодирования типа фрейма. Наоборот, данное изобретение создает концепцию, которая обеспечивает кодирование типа окна с требованием меньшего числа битов.
Со ссылкой на фиг.6а, а также на фиг.7а, 7b и 7с, будет объяснена изобретательная концепция кодирования типа окна. Фиг.6а показывает таблицу, представляющую предложенный синтаксис информации о типе окна, которая включает правило кодирования типа окна. Для объяснения предполагается, что информация о типе окна 140, которая предоставляется кодирующему устройству кодового слова переменной длины 180 определителем последовательности окон 138, описывает тип окна текущего фрейма и может использовать одно из значений "only_long_sequence" (только длинная последовательность), "long_start_sequence" (длинная начальная последовательность), "eight_short_sequence" (последовательность восьми коротких), "long_stop_sequence" (длинная конечная последовательность), "stop_start_sequence" (конечная начальная последовательность) и факультативно даже одно из значений "stop_1152_sequence" (конечная последовательность 1152) и "stop_start_1152_sequence" (конечная начальная последовательность 1152). Однако, согласно изобретательной концепции кодирования, кодирующее устройство кодового слова переменной длины 180 предоставляет одноразрядную "window_length" информацию" (информацию о длине окна), которая описывает длину правого наклона окна, связанного с текущим фреймом. Как видно по фиг.7а, значение "0" одноразрядной "window_length" информации (о длине окна) может представлять длину правого наклона окна, равную 1024 сэмплам, а значение "1" может представлять длину правого наклона окна, равную 128 сэмплам. Соответственно, кодирующее устройство кодового слова переменной длины 180 может обеспечить значение "0" "window_length" информации (о длине окна), если тип окна - "only_long_sequence" (только длинная последовательность) (первый тип окна 310) или "long_stop_sequence" (длинная конечная последовательность) (третий тип окна 314). Факультативно, кодирующее устройство кодового слова переменной длины 180 может также предоставлять "window_length" информацию (о длине окна), равную "0", для окна типа "stop_1152_sequence" (конечная последовательность 1152) (тип окна 330). Наоборот, кодирующее устройство кодового слова переменной длины 180 может обеспечить значение "1" "window_length" информации (о длине окна) для "long_start_sequence" (длинной начальной последовательности) (второй тип окна 312), для "stop_start_sequence" (конечной начальной последовательности) (четвертый тип окна 316) и для "eight_short_sequence" (последовательности восьми коротких) (пятый тип окна 318). Факультативно, кодирующее устройство кодового слова переменной длины 180 может также предоставлять "window_length" информацию (о длине окна), равную "1", для "stop_start_1152_sequence" (конечная начальная последовательность) (тип окна 332). Кроме того, кодирующее устройство кодового слова переменной длины 180 может факультативно обеспечить значение "1" "window_length" информации (о длине окна) для одного или более типов окна 362, 366, 368, 382.
Однако кодирующее устройство кодового слова переменной длины 180 формируется, чтобы выборочно предоставлять другую одноразрядную информацию, а именно так называемую "transform_length" информацию (о длине преобразования) текущего фрейма, в зависимости от значения одноразрядной "window_length" информации (о длине окна) текущего фрейма. Если "window_length" информация (о длине окна) текущего фрейма принимает значение "0" (то есть для окна типа "only_long_sequence" (только длинная последовательность), "long_stop_sequence" (длинная конечная последовательность) и факультативно "stop_1152_sequence" (конечная последовательность 1152)), кодирующее устройство кодового слова переменной длины 180 не предоставляет "transform_length" информацию (о длине преобразования) для включения в битовый поток 192. Наоборот, если "window_length" информация (о длине окна) текущего фрейма принимает значение "1" (то есть для типов окна "long_start_sequence" (длинная начальная последовательность), "stop_start_sequence" (конечная начальная последовательность), "eight_short_sequence" (последовательность восьми коротких) и, факультативно, "LPD_start_sequence" (LPD начальная последовательность) и "stop_start_1152_sequence" (конечная начальная последовательность 1152)), кодирующее устройство кодового слова переменной длины 180 предоставляет одноразрядную "transform_length" информацию (о длине преобразования) для включения в битовый поток 192. "Transform_length" информация (о длине преобразования) предоставляется, если она предоставлена так, что "transform_length" информация (о длине преобразования) представляет длину преобразования, примененную к текущему фрейму. Таким образом, "transform_length" информация (о длине преобразования) предоставляется, чтобы принять первое значение (например, значение «О») для типов окна "long_start_sequence" (длинная начальная последовательность), "stop_start_sequence" (конечная начальная последовательность) и, факультативно, "stop_start_1152_sequence" (конечная начальная последовательность 1152) и "LPD_start_sequence" (LPD начальная последовательность), тем самым показывая, что размер ядра MDCT, примененного к текущему фрейму, равен 1024 сэмплам (или 1152 сэмплам). Наоборот, "transform_length" информация (о длине преобразования) предоставляется кодирующим устройством кодового слова переменной длины 180, чтобы принять второе значение (например, значение «1»), если "eight_short_sequence" (последовательность восьми коротких) тип окна связан с текущим фреймом, тем самым показывая, что размер ядра MDCT, связанный с текущим фреймом, равен 128 сэмплам (см. представление синтаксиса фиг.7b).
Чтобы суммировать, кодирующее устройство кодового слова переменной длины 180 обеспечивает одноразрядное кодовое слово, включающее только одноразрядную "window_length" информацию (о длине окна) текущего фрейма, для включения в битовый поток 192, если правосторонний наклон окна, связанного с текущим фреймом, сравнительно длинный (длинный наклон окна 310b, 314b, 330b), то есть для типов окна "only_long_sequence" (только длинная последовательность), "long_stop_sequence" (длинная конечная последовательность) и "stop_1152_sequence" (конечная последовательность 1152). Наоборот, кодирующее устройство кодового слова переменной длины 180 обеспечивает 2-битовое кодовое слово, включающее одноразрядную "window_length" информацию (о длине окна) и одноразрядную "transform_length" информацию (о длине преобразования), для включения в битовый поток 192, если правосторонний наклон окна, связанного с текущим фреймом, является коротким наклоном окна 312b, 316b, 318b, 332b, то есть для типов окна "long_start_sequence" (длинная начальная последовательность), "eight_short_sequence" (последовательность восьми коротких), "stop_start_sequence" (конечная начальная последовательность) и, факультативно, "stop_start_1152_sequence" (конечная начальная последовательность). Таким образом, 1 бит экономится для случая "only_long_sequence" (только длинная последовательность) типа окна и "long_stop_sequence" (длинная конечная последовательность) типа окна (и, факультативно, для "stop_1152_sequence" (конечной последовательности 1152) типа окна).
Таким образом, только один или два бита, зависящие от типа окна, связанного с текущим фреймом, требуются для кодирования выбора из пяти (или даже больше) возможных типов окна.
Здесь следует заметить, что фиг.6а показывает отображение типа окна, который определяется в колонке типа окна 630, на значении "window_length" информации (о длине окна), которая показана в колонке 620, а также на статусе обеспечения и значении (если требуется) "transform_length" информации (о длине преобразования), которая показана в колонке 624.
Фиг.6b показывает графическое представление отображения для получения "window_length" информации (о длине окна) текущего фрейма и "transform_length" информации (о длине преобразования) (или указание на то, что "transform_length" информация (о длине преобразования) не включена в битовый поток 192) из типа окна текущего фрейма. Это отображение может быть выполнено кодирующим устройством кодового слова переменной длины 180, которое получает информацию о типе окна 140, описывающую тип окна текущего фрейма и отображает его на "window_length" информации (о длине окна), как показано в колонке 660 таблицы на фиг.6b, и на "transform_length" информации (о длине преобразования), как показано в колонке 662 таблицы на фиг.6b. В частности, кодирующее устройство кодового слова переменной длины 180 может предоставлять "transform_length" информацию (о длине преобразования), только если "window_length" информация (о длине окна) принимает предварительно определенное значение (например, равное «I»), а иначе исключается обеспечение "transform_length" информации (о длине преобразования), или запрещается включение "transform_length" информации (о длине преобразования) в битовый поток 192. Соответственно, число битов типа окна, включенных в битовый поток 192 для данного фрейма, может изменяться, как показано в колонке 664 таблицы на фиг.6b, в зависимости от типа окна текущего фрейма.
Следует также заметить, что в некоторых осуществлениях тип окна текущего фрейма может приспосабливаться или изменяться, если за текущим фреймом следует фрейм, закодированный в области линейного предсказания. Однако обычно это не влияет на отображение типа окна на "window_length" информации (о длине окна) и выборочно предоставленной "transform_length" информации (о длине преобразования).
Соответственно, звуковое кодирующее устройство 100 формируется, чтобы обеспечить битовый поток 192, так чтобы битовый поток 192 подчинялся синтаксису, который будет обсужден ниже со ссылкой на фиг.10а-10е.
Краткий обзор звукового декодера
Далее звуковой декодер согласно осуществлению изобретения будет описан детально со ссылкой на фиг.2. Фиг.2 показывает схематическую диаграмму звукового декодера согласно осуществлению изобретения. Звуковой декодер 200 фиг.2 формируется, чтобы получить битовый поток 210, включающий кодированную звуковую информацию, и чтобы обеспечить, на ее основе, декодированную звуковую информацию 212 (например, в форме звукового сигнала временного интервала). Звуковой декодер 200 включает факультативный деформатер полезной нагрузки битового потока 220, который формируется, чтобы получить битовый поток 210 и извлекать из битового потока 210 кодированную информацию о спектральном значении 222 и информацию об окне кодового слова переменной длины 224. Деформатер полезной нагрузки битового потока 220 может формироваться, чтобы извлекать из битового потока 210 дополнительную информацию, такую как управляющая информация, информация об усилении, и дополнительную информацию о звуковых параметрах. Однако эта дополнительная информация хорошо известна специалистам, сведущим в этой области, и не относится к данному изобретению. Для получения дальнейших деталей делается ссылка, например, на Международный Стандарт ISO/IEC 14496-3:2005 (Е), часть 3, подраздел 4.
Звуковой декодер 200 включает факультативный декодер/инверсный квантизатор/устройство изменения масштаба 230, который формируется, чтобы декодировать кодированную информацию о спектральном значении 222, чтобы выполнять инверсную (обратную) квантизацию, а также выполнять повторное масштабирование обратно квантованной информации о спектральном значении, таким образом, получая декодированную информацию о спектральном значении 232. Звуковой декодер 200 далее включает факультативный спектральный препроцессор 240, который может формироваться, чтобы выполнять один или более шагов спектральной предварительной обработки. Некоторые из возможных шагов спектральной предварительной обработки, например, объяснены в Международном Стандарте ISO/IEC 14496-3: 2005 (Е), часть 3, подраздел 4. Соответственно, функциональные возможности декодера/инверсного квантизатора/устройства изменения масштаба и, факультативного спектрального препроцессора 240, обеспечивают в результате (декодированное и, факультативно, предварительно обработанное) частотно-временное представление 242 кодированной звуковой информации, представленной битовым потоком 210. Звуковой декодер 200 включает, в качестве ключевого компонента, основанный на применении окна сигнальный преобразователь 250. Основанный на применении окна сигнальный преобразователь 250 формируется, чтобы преобразовать (декодированное) частотно-временное представление 242 в звуковой сигнал временного интервала 252. С этой целью, основанный на применении окна сигнальный преобразователь 250 может формироваться, чтобы выполнять преобразование частотно-временной области во временную область. Например, преобразователь/устройство для управления окнами 254 основанного на применении окна сигнального преобразователя 250 могут формироваться, чтобы получать, в качестве частотно-временного представления 242, коэффициенты модифицированного дискретного косинусного преобразования (коэффициенты MDCT), связанные с пересекающимся во времени фреймом кодированной звуковой информации. Соответственно, преобразователь/устройство для управления окнами 254 может формироваться, чтобы выполнять перекрывающее преобразование, в форме обратного модифицированного дискретного косинусного преобразования (IMDCT), чтобы получить реализуемые посредством организации окна части временного интервала (фреймы) кодированной звуковой информации, и выполнить перекрывание-добавление последующих реализуемых посредством организации окна частей временного интервала (фреймов) посредством операции перекрывания и добавления. При восстановлении (реконструкции) звукового сигнала временного интервала 252 на основе частотно-временного представления 242, то есть при выполнении обратного модифицированного дискретного косинусного преобразования в комбинации с управлением окнами и операцией перекрывания и добавления преобразователь/устройство управления окнами 254 может выбирать окно из множества доступных типов окна, чтобы обеспечить соответствующее восстановление (реконструкцию), а также чтобы избежать любых артефактов блокирования.
Звуковой декодер также включает факультативный постпроцессор временного интервала 260, который формируется, чтобы получить декодированную звуковую информацию 212 на основе звукового сигнала временного интервала 252. Однако следует заметить, что декодированная звуковая информация 212 может быть идентичной звуковому сигналу временного интервала 252 в некоторых осуществлениях. Кроме того, звуковой декодер 200 включает селектор окон 270, который формируется, чтобы получать информацию об окне кодового слова переменной длины 224, например, из факультативного деформатера полезной нагрузки битового потока 220. Селектор окон 270 формируется, чтобы предоставлять информацию об окне 272 (например, информация о типе окна или информация о последовательности окон) преобразователю/устройству управления окнами 254. Следует заметить, что селектор окон 270 может быть или не быть частью основанного на применении окна сигнального преобразователя 250 в зависимости от фактического выполнения.
Чтобы суммировать вышесказанное, звуковой декодер 200 формируется для предоставления декодированной звуковой информации 212 на основе кодированной звуковой информации 210. Звуковой декодер 200 включает, в качестве ключевого компонента, основанный на применении окна сигнальный преобразователь 250, который формируется, чтобы отображать частотно-временное представление 242, которое описывается кодированной звуковой информацией 210, на представлении временного интервала 252. Основанный на применении окна сигнальный преобразователь 250 формируется, чтобы выбрать окно из множества окон, включающего окна различных наклонов перехода (например, различные длины наклона перехода), и окна различных длин преобразования на основе информации об окне 272. Звуковой декодер 200 включает, в качестве другого ключевого компонента, селектор окон 270, который формируется, чтобы оценивать информацию об окне кодового слова переменной длины 224, чтобы выбрать окно для обработки данной части частотно-временного представления 242, связанного с данным фреймом звуковой информации. Другие компоненты звукового декодера, а именно, деформатер полезной нагрузки битового потока 220, декодер/инверсный квантизатор/устройство изменения масштаба 230, спектральный препроцессор 240 и постпроцессор временного интервала 260 могут рассматриваться как факультативные, но могут присутствовать в некоторых выполнениях звукового декодера 200.
Далее будут описаны детали относительно выбора окна для преобразования/управления окнами, выполняемого преобразователем/устройством управления окнами 254. Однако, учитывая важность выбора различных окон, ссылка делается на вышеупомянутые объяснения.
Звуковой декодер 200, предпочтительно, имеет возможность использовать описанные выше типы окна "only_long_sequence" (только длинная последовательность), "long_start_sequence" (длинная начальная последовательность), "eight_short_sequence" (последовательность восьми коротких), "long_stop_sequence" (длинна конечная последовательность) и "stop_start_sequence" (конечная начальная последовательность). Однако звуковой декодер может факультативно приспосабливаться к использованию дополнительных типов окна, например, так называемый, "stop_1152_sequence" (конечная последовательность 1152) и, так называемый "stop_start_1152_sequence" (конечная начальная последовательность 1152) (оба из которых могут использоваться для перехода от кодированного фрейма области линейного предсказания к кодированному фрейму частотной области). Кроме того, звуковой декодер 200 может далее формироваться, чтобы использовать дополнительные типы окна, как например, типы окна 362, 366, 368, 382, которые все могут быть приспособлены к переходу от кодированного фрейма частотной области к кодированному фрейму области линейного предсказания. Однако использование типов окна 330, 332, 362, 366, 368, 382 может рассматриваться в качестве дополнительного.
Однако важной характеристикой изобретательного звукового декодера является обеспечение особенно эффективного решения, направленного на получение соответствующего типа окна из информации об окне кодового слова переменной длины 224. Как было сказано выше, это будет объяснено ниже со ссылкой на фиг.10а-10е.
Информация об окне кодового слова переменной длины 224 обычно включает 1 или 2 бита на фрейм. Предпочтительно, информация об окне кодового слова переменной длины включает первый бит, несущий "window_length" информацию (о длине окна) текущего фрейма, и второй бит, несущий "transform_length" информацию (о длине преобразования) текущего фрейма, где присутствие второго бита ("transform_length" бит (длины преобразования)) зависит от значения первого бита ("window_length" бит (длины окна)). Таким образом, селектор окон 270 формируется, чтобы выборочно оценивать один или два бита информации об окне ("window_length" (длина окна) и "transform_length" (длина преобразования)) для принятия решения о типе окна, связанного с текущим фреймом в зависимости от значения бита "window_length" (длина окна), связанного с текущим фреймом. Однако, в отсутствие бита "transform_length" (длина преобразования), селектор окон 270 может, естественно, предполагать, что бит "transform_length" (длина преобразования) приобретает значение по умолчанию.
В предпочтительном осуществлении селектор окон 270 может формироваться, чтобы оценивать синтаксис, как описано выше со ссылкой на фиг.6а, и чтобы предоставлять информацию об окне 272 в соответствии с указанным синтаксисом.
При условии, что звуковой декодер 200 всегда работает в базовом режиме (в основной моде) частотной области, то есть, что нет никакого переключения между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) области линейного предсказания, может быть достаточно выделять вышеупомянутые пять типов окна ("only_long_sequence" (только длинная последовательность), "long_start_sequence" (длинная начальная последовательность), "long_stop_sequence" (длинная конечная последовательность), "stop_start_sequence" (конечная начальная последовательность) и "eight_short_sequence" (последовательность восьми коротких)). В этом случае, "window_length" информация (о длине окна) предыдущего фрейма, "window_length" информация (о длине окна) текущего фрейма и "transform_length" информация (о длине преобразования) текущего фрейма (если доступна) могут быть достаточными для принятия решения о типе окна.
Например, при условии, что операция выполняется только в базовом режиме (в основной моде) частотной области (по крайней мере, в последовательности трех последующих фреймов), из того факта, что "window_length" информация (о длине окна) предыдущего фрейма показывает длинный наклон перехода (значение «0»), и что "window_length" информация (о длине окна) текущего фреймы показывает длинный наклон перехода (значение «0»), можно заключить, что тип окна "only_long_sequence" (только длинная поверхность) связан с текущим фреймом, без оценки "transform_length" информации (о длине преобразования), которая в этом случае не передается кодирующим устройством.
Снова, при условии, что операция выполняется только в базовом режиме (в основной моде) частотной области, из того факта, что "window_length" информация (о длине окна) предыдущего фрейма показывает длинный (правосторонний) наклон перехода, и из того факта, что "window_length" информация (о длине окна) текущего фрейма показывает короткий (правосторонний) наклон перехода (значение «1»), можно заключить, что тип окна "long_start_sequence" (длинная начальная последовательность) связан с текущим фреймом, даже без оценки "transform_length" информации (о длине преобразования) текущего фрейма (который в этом случае может быть или не быть генерирован и/или передан кодирующим устройством).
Снова, при условии, что операция выполняется только в базовом режиме (в основной моде) частотной области, из того факта, что "window_length" информация (о длине окна) предыдущего фрейма показывает присутствие короткого (правостороннего) наклона перехода (значение «1»), и что "window_length" информация (о длине окна) текущего фрейма показывает длинный (правосторонний) наклон перехода (значение «0»), можно заключить, что тип окна "long_stop_sequence" (длинная конечная последовательность) связан с текущим фреймом, даже без оценки "transform_length" информации (о длине преобразования) текущего фрейма (который обычно не предоставляется соответствующим звуковым кодирующим устройством, в любом случае).
Если, однако, "window_length" информация (о длине окна) предыдущего фрейма показывает присутствие короткого (правостороннего) наклона перехода, и "window_length" информация (о длине окна) текущего фрейма также показывает присутствие короткого наклона перехода (значение «1»), может возникнуть необходимость оценить "transform_length" информацию (о длине преобразования) текущего фрейма. В этом случае, если "transform_length" информация (о длине преобразования) текущего фрейма принимает первое значение (например, ноль), тип окна "stop_start_sequence" (конечная начальная последовательность) связан с текущим фреймом. В противном случае, то есть, если "transform_length" информация (о длине преобразования) текущего фрейма принимает второе значение (например, единица), можно прийти к заключению, что тип окна "eight_short_sequence" (последовательность восьми коротких) связан с текущим фреймом.
Чтобы суммировать вышесказанное, селектор окон 270 формируется, чтобы оценивать "window_length" информацию (о длине окна) предыдущего фрейма и "window_length" информацию (о длине окна) текущего фрейма, чтобы определить тип окна, связанный с текущим фреймом. Кроме того, селектор окон 270 формируется выборочно, в зависимости от значения "window_length" информации (о длине окна) текущего фрейма (и, возможно, также в зависимости от "window_length" информации (о длине окна) предыдущего фрейма, или информации о базовом режиме (основной моде)), учитывая "transform_length" информацию (о длине преобразования) текущего фрейма, чтобы определить тип окна, связанный с текущим фреймом. Таким образом, селектор окон 270 формируется, чтобы оценить информацию об окне кодового слова переменной длины, чтобы определить тип окна, связанный с текущим фреймом.
Фиг.6с показывает таблицу, представляющую отображение "window_length" информации (о длине окна) предыдущего фрейма, "window_length" информации (о длине окна) текущего фрейма и "transform_length" информации (о длине преобразования) текущего фрейма на тип окна текущего фрейма. "Window_length" информация (о длине окна) текущего фрейма и "transform_length" информация (о длине преобразования) текущего фрейма могут быть представлены информацией об окне кодового слова переменной длины 224. Тип окна текущего фрейма может быть представлен информацией об окне 272. Отображение, описанное таблицей на фиг.6с, может быть выполнено селектором окон 270.
Как можно заметить, отображение может зависеть от предыдущего базового режима (основной моды). Если предыдущий базовый режим (основная мода) является «базовым режимом (основной модой) частотной области» (сокращенно "FD"), отображение может принимать форму, как обсуждалось выше. Если, однако, предыдущий базовый режим (основная мода) является «базовым режимом (основной модой) области линейного предсказания» (сокращенно "LPD"), отображение может быть изменено, что можно наблюдать в последних двух рядах таблицы на фиг.6с.
Кроме того, отображение может быть изменено, если последующий базовый режим (основная мода) (то есть базовый режим (основная мода), связанный с последующим фреймом), является не базовым режимом (основной модой) частотной области, а базовым режимом (основной модой) области линейного предсказания.
Звуковой декодер 200 может, факультативно, включать анализатор битового потока, формируемый, чтобы анализировать битовый поток 210, представляющий кодированную звуковую информацию, и чтобы извлекать из битового потока одноразрядную информацию о длине наклона окна (также определяется здесь как "window_length" информация (о длине окна)), и чтобы выборочно извлекать, в зависимости от значения одноразрядной информации о длине наклона окна, одноразрядную информацию о длине преобразования (определяется здесь как "transform_length" информация (о длине преобразования)). В этом случае, селектор окон 270 формируется, чтобы выборочно, в зависимости от информации о длине наклона окна текущего фрейма, использовать или пренебречь информацией о длине преобразования, чтобы выбрать тип окна для обработки данной части (например, фрейма) частотно-временного представления 242. Анализатор битового потока может, например, быть частью деформатера полезной нагрузки битового потока 220, и может позволить звуковому декодеру 200 должным образом управлять информацией об окне кодового слова переменной длины, как обсуждалось выше, и как также описывается со ссылкой на фиг.10а-10е.
Переключение между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) временного интервала
В некоторых осуществлениях звуковое кодирующее устройство 100 и звуковой декодер 200 могут формироваться, чтобы переключаться между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) области линейного предсказания. Как было объяснено выше, предполагается, что базовый режим (основная мода) частотной области является базовым режимом (основной модой), для которого подходят вышеупомянутые объяснения. Однако, если звуковое кодирующее устройство может переключаться между базовым режимом (основной модой) частотной области и базовым режимом (основной модой) области линейного предсказания, может также иметь место перекрестное затухание и усиление (в смысле операции пересечения и добавления) между фреймами, закодированными в базовом режиме (в основной моде) частотной области, и фреймами, закодированными в базовом режиме (в основной моде) области линейного предсказания. Соответственно, подходящие окна должны выбираться, чтобы гарантировать надлежащее перекрестное затухание и усиление между фреймами, закодированными в различных базовых режимах (в основных модах). Например, в некоторых осуществлениях может быть два типа окна, а именно, типы окна 330 и 332, показанные на фиг.2В, которые приспособлены к переходу от базового режима (основной моды) области линейного предсказания к базовому режиму (основной моде) частотной области. Например, тип окна 330 может позволить переход между кодированным фреймом области линейного предсказания и кодированным фреймом частотой области, имеющим длинный левосторонний наклон перехода, например, от кодированного фрейма области линейного предсказания к кодированному фрейму частотой области посредством использования типа окна "only_long_sequence" (только "длинная последовательность), или типа окна "long_start_sequence" (длинная начальная последовательность). Точно так же, тип окна 332 может обеспечить переход от кодированного фрейма области линейного предсказания к кодированному фрейму частотой области, имеющему короткий левосторонний наклон перехода (например, от кодированного фрейма области линейного предсказания к фрейму, связанному с типом окна "eight_short_sequence" (последовательность восьми коротких) или "long_stop_sequence" (длинная конечная последовательность) или "stop_start_sequence (конечная начальная последовательность)). Соответственно, селектор окон 270 может формироваться, чтобы выбрать тип окна 330, если обнаружено, что предыдущий фрейм (предшествующий текущему фрейму) закодирован в области линейного предсказания, что текущий фрейм закодирован в частотной области и, что "window_length" информация (о длине окна) текущего фрейма показывает длинный правосторонний наклон перехода текущего фрейма (например, значение «0»). Наоборот, селектор окон 270 формируется, чтобы выбирать тип окна 332 для текущего фрейма, если обнаружено, что предыдущий фрейм закодирован в области линейного предсказания, что текущий фрейм закодирован в частотной области и, что "window_length" информация (о длине окна) текущего фрейма показывает, что длинный правосторонний наклон перехода связан с текущим фреймом (например, значение «1»).
Точно так же, селектор окон 270 может формироваться, чтобы реагировать на тот факт, что последующий фрейм (следующий за текущим фреймом) кодируется в области линейного предсказания, в то время как текущий фрейм кодируется в частотной области. В этом случае, селектор окон 270 может выбрать один из типов окна 362, 366, 368, 384, который приспосабливается так, чтобы за ним следовал кодированный фрейм области линейного предсказания, вместо одного из типов окна 312, 316, 118, 332, который приспосабливается так, чтобы за ним следовал кодированный фрейм частотой области. Однако, за исключением замены типа окна 312 типом окна 362, замены типа окна 318 типом окна 368, замены типа окна 360 типом окна 366, и замены типа окна 332 типом окна 382, выбор типа окна может быть неизменным, по сравнению с ситуацией, в которой имеются только кодированные фреймы частотой области.
Таким образом, изобретательный механизм использования информации об окне кодового слова переменной длины может быть применен даже в случае, когда переходы между кодированием частотной области и кодированием линейного предсказания происходят, не подвергая угрозе эффективность кодирования.
Детальное описание синтаксиса битового потока
Далее будут обсуждены детали относительно синтаксиса битового потока 192, 210, со ссылкой на фиг.10а-10е. Фиг.10а показывает представление синтаксиса, так называемого, блока исходных данных «объединенного речевого и звукового кодирования» («USAC») -"USAC raw_data_block". Можно заметить, что блок исходных данных USAC может включать, так называемый, одноканальный элемент ("single_channel_element ()") и/или двухканальный элемент ("channel_pair_element ()"). Однако блок исходных данных USAC может, естественно, включать больше одного одноканального элемента и/или больше одного двухканального элемента.
Теперь со ссылкой на фиг.10b, которая показывает представление синтаксиса одноканального элемента, будут объяснены еще некоторые детали. Как может видеть по фиг.10b, одноканальный элемент может включать информацию о базовом режиме (основной моде), например в форме бита "core_mode" (базовый режим (основная мода)). Информация о базовом режиме (основной моде) может показывать, закодирован ли текущий фрейм в базовом режиме (основной моде) области линейного предсказания или в базовом режиме (в основной моде) частотной области. В случае, когда текущий фрейм закодирован в базовом режиме (в основной моде) области линейного предсказания, одноканальный элемент может включать поток канала области линейного предсказания ("LPD_channel_stream ()") В случае, когда текущий фрейм закодирован в частотной области, одноканальный элемент может включать поток канала частотной области ("FD_channel_stream ()").
Теперь со ссылкой на фиг.10с, который показывает представление синтаксиса двухканального элемента, будут объяснены некоторые дополнительные ' детали. Двухканальный элемент может включать первую информацию о базовом режиме (основной моде), например, в форме бита "core_mode0", описывающую базовый режим (основную моду) первого канала. Кроме того, двухканальный элемент может включать вторую информацию о базовом режиме (основной моде) в форме бита "core_mode1", описывающую базовый режим (основную моду) второго канала. Таким образом, различные или идентичные базовые режимы (основные моды) могут быть выбраны для двух каналов, описанных двухканальным элементом. Факультативно, двухканальный элемент может включать общую ICS информацию ("ICS_info ()") для обоих каналов. Эта общая ICS информация выгодна, если конфигурация двух каналов, описанных двухканальным элементом, аналогична. Естественно, общая ICS информация, предпочтительно, используется только, если оба канала кодируются в том же самом базовом режиме (в основной моде).
Кроме того, двухканальный элемент включает поток канала области линейного предсказания ("LPD_channel_stream ()") или поток канала частотной области ("FD_channel_stream ()"), связанный с первым каналом в зависимости от базового режима (основной моды), определенного для первого канала (информацией о базовом режиме (основной моде) "core_mode0").
Кроме того, двухканальный элемент включает поток канала области линейного предсказания ("LPD_channel_stream ()") или поток канала частотной области ("FD_channel_stream ()"). Для второго канала в зависимости от базового режима (основной моды), используемого для кодирования второго канала (о чем может быть сообщено посредством информации о базовом режиме (основной моде) "core_mode1").
Теперь, со ссылкой на фиг.10d, который показывает синтаксис для представления ICS информации, будут описаны некоторые дополнительные детали. Следует заметить, что ICS информация может быть включена в двухканальный элемент, или в индивидуальные потоки канала частотной области (что будет обсуждено со ссылкой на фиг.10е).
ICS информация включает одноразрядную (или с одноразрядным кодом) "window_length" информацию (о длине окна), которая описывает длину правостороннего наклона перехода окна, связанного с текущим фреймом, например в соответствии с определением, данным на фиг.7а. Если, и только если, "window_length" информация (о длине окна) принимает предварительно определенное значение (например, «1»), ICS информация включает дополнительную одноразрядную (или с одноразрядным кодом) "transform_length" информацию (о длине преобразования). "Transform_length" информация (о длине преобразования) описывает размер ядра MDCT, например, в соответствии с определением, данным на фиг.7b. Если "window_length" информация (о длине окна) принимает значение, отличное от предварительно определенного значения (например, значение «0»), "transform_length" информация (о длине преобразования) не включается (или пропускается) в ICS информацию (или в соответствующий битовый поток). Однако в этом случае, анализатор битового потока звукового декодера может устанавливать восстановленное значение переменной "transform_length" (длина преобразования) декодера на значение по умолчанию (например, «0»).
Кроме того, ICS информация может включать, так называемую, "window_shape" информацию (о форме окна), которая может быть одноразрядной (или с одноразрядным кодом) информацией, описывающей форму перехода окна. Например, "window_shape" информация (о форме окна) может описывать, имеет ли переход окна форму синуса/косинуса или производную форму Кайзера-Бесселя (Kaiser-Bessel). Для получения деталей, относительно значения "window_shape" информации (о форме окна) можно обратиться, например, к международному стандарту ISO/IEC, 14496-3:2005 (Е), часть 3, подраздел 4. Однако следует заметить, что "window_shape" информация (о форме окна) оставляет основной тип окна неизмененным, и что общие характеристики (длинный наклон перехода или короткий наклон перехода; большая длина преобразования или короткая длина преобразования) остаются неизмененными посредством "window_shape" информации (о форме окна).
Таким образом, в осуществлениях согласно изобретению «форма окна», то есть форма переходов, определяется отдельно от типа окна, то есть от общей длины наклонов переходов (большая или короткая) и длины преобразования (большая или короткая).
Кроме того, ICS информация может включать информацию о типе окна, зависящую от масштабного коэффициента. Например, если "window_length" информация (о длине окна) и "transform_length" информация (о длине преобразования) показывает, что текущим типом окна является "eight_short__sequence" (последовательность восьми коротких), ICS информация может включать "max_sfb" информацию, описывающую максимальный диапазон масштабных коэффициентов, и "scale_factor_grouping" информацию, описывающую группирование масштабных коэффициентов. Детали, относительно этой информации, описываются, например, в международном стандарте ISO/IEC, 14496-3:2005 (Е), часть 3, подраздел 4. Альтернативно, то есть, если "window_length" информация (о длине окна) и "transform-length" информация (о длине преобразования) показывает, что текущий фрейм не является типом окна "eight_short_sequence" (последовательность восьми коротких), ICS информация может включать только "max_sfb" информацию (о максимальном диапазоне масштабных коэффициентов) (но не включает "scale_factor_grouping" информацию (о группировании масштабных коэффициентов)).
Далее будут описаны некоторые дальнейшие детали со ссылкой на фиг.10е, который показывает представление синтаксиса потока канала частотной области ("FD_channel_stream ()"). Поток канала частотной области включает "global_gain" информацию, описывающую глобальное усиление, связанную со спектральными значениями. Кроме того, поток канала частотной области включает ICS информацию ("ICS_info ()"), если такая информация еще не включена в двухканальный элемент, включающий данный поток канала частотной области. Относительно ICS информации детали были описаны со ссылкой на фиг.10d.
Кроме того, поток канала частотной области включает данные масштабного коэффициента ("scale_factor_data ()")» которые описывают масштабирование, которое должно быть применено к значениям (или диапазонам масштабного коэффициента) декодированной информации о спектральном значении или частотно-временного представления. Кроме того, поток канала частотной области включает кодированные спектральные данные, которые могут, например, быть арифметически закодированными спектральными данными (ac_spectral_data ()"). Однако может использоваться другой способ кодирования спектральных данных. Относительно данных масштабного коэффициента и кодированных спектральных данных, ссылка снова делается на международный стандарт ISO/IEC 14496-3:
2005 (Е), часть 3, подраздел 4. Однако различные способы кодирования данных масштабного коэффициента и спектральных данных, естественно, могут быть применены, если желательно.
Далее приводятся некоторые заключения и оценки реализации изобретательной концепции. Осуществления данного изобретения создают концепцию уменьшения необходимой скорости передачи битов, которая может применяться, например, в комбинации со схемами звукового кодирования, определенными в международном стандарте ISO/IEC, 14496-3:2005 (Е), часть 3, подраздел 4. Однако концепция, обсужденная здесь, может также использоваться в комбинации с так называемым подходом «объединенного речевого и звукового кодирования» (USAC). Основанное на существующих определениях битового потока и архитектурах декодера, данное изобретение создает модификацию синтаксиса битового потока, которая упрощает синтаксис передачи сигналов последовательностей окон, сберегает скорость передачи битов, не увеличивая сложность, и не изменяет форму кривой выходного сигнала декодера.
Далее, фон и идея, лежащие в основе данного изобретения, будут кратко обсуждены и суммированы. В текущем звуковом кодировании согласно ISO/IEC 14496-3:2005 (Е), часть 3, подраздел 4, а также в USAC рабочем проекте кодовое слово фиксированной длины, равной двум битам, посылается, чтобы сообщать о последовательности окон. Дополнительно, информация о последовательности окон предыдущего фрейма иногда бывает необходима, чтобы определить правильную последовательность.
Однако было обнаружено, что, принимая во внимание эту информацию и делая длину кодового слова переменной (один или два бита), можно уменьшить скорость передачи битов. Новое кодовое слово имеет максимальную длину, равную двум битам ("window_length" (длина окна) и в некоторых случаях "transform_length" (длина преобразования)). Таким образом, скорость передачи битов никогда не увеличивается (по сравнению с обычным подходом).
Новое кодовое слово ("window_length" (длина окна) и в некоторых случаях "transform_length" (длина преобразования)) состоит из одного бита ("window_length" (длина окна)), показывающего длину правого наклона окна, и одного бита ("transform_length" (длина преобразования)), показывающего длину преобразования. Во многих случаях длина преобразования может быть однозначно получена посредством информации предыдущего фрейма, а именно о последовательности окон и базовом режиме (основной моде). Таким образом, нет необходимости повторно передавать эту информацию. Соответственно, бит "transform_length" (длина преобразования) опускается в таких случаях, что приводит к уменьшению скорости передачи битов.
Далее будут обсуждены некоторые детали относительно предложения о новом синтаксисе битового потока согласно данному изобретению. Предложенный новый синтаксис битового потока обеспечивает более прямое выполнение и оповещение о последовательностях окон, потому что он передает только информацию, фактически необходимую для определения последовательности окон текущего фрейма, то есть правый наклон окна и длина преобразования. Левый наклон окна текущего фрейма получается из правого наклона окна предыдущего фрейма.
Предложение (или предложенный новый битовый поток) явно разделяет информацию о длине наклона окна ("window_length" информация (о длине окна)) и о длине преобразования ("transform_length" информация (о длине преобразования)). Кодовое слово переменной длины - комбинация обоих, где первый бит "window-length" (длина окна) определяет длину правого наклона окна (текущего фрейма), и второй бит "transform_length" (длина преобразования) определяет длину MDCT (для текущего фрейма) согласно фиг.7а и 7d. В случае, когда "window_length" (длина окна)=0, то есть выбирается длинный наклон окна, передача "transform_length" (длины преобразования) может быть опущена (или фактически опущена), так как размер ядра MDCT, равный 1024 сэмплам (или 1152 сэмплам в некоторых случаях) является обязательным.
Фиг.7с дает краткий обзор всех комбинаций "window_length" (длина окна) и "transform_length" (длина преобразования). Можно заметить, что есть только три значащих комбинации двух одноразрядных единиц информации "window_length" (длина окна) и transform_length" (длина преобразования), такие, что передача "transform_length" (длины преобразования) может быть опущена, если "window_length" информация (о длине окна) принимает значение «ноль» без негативного воздействия на передачу желательной информации.
Далее будут кратко подведены итоги отображения "window_length" информации (о длине окна) и "transform_length" информации (о длине преобразования) на "window_sequence" информации (о последовательности окон) (которая описывает тип окна, которое должно использоваться для текущего фрейма). Таблица фиг.6а показывает, как элемент "window_sequence" (последовательность окон) битового потока текущего состояния рабочих проектов предусмотренного USAC стандарта может быть получен из новых предложенных элементов битового потока. Это демонстрирует то, что предложенное изменение «прозрачно» в терминах информационного содержания.
Другими словами, изобретательный синтаксис, позволяющий уменьшить скорость передачи битов для сообщения о типе окна, который основывается на использовании информации об окне кодового слова переменной длины, может нести «полное» информационное содержание, которое обычно передается с использованием более высокой скорости передачи битов. Кроме того, изобретательная концепция может применяться в обычных звуковых кодирующих устройствах и декодерах, например, звуковое кодирующее устройство или звуковой декодер согласно ISO/IEC 14496-3:2005 (Е), часть 3, подраздел 4, или согласно текущему USAC рабочему проекту без каких-либо значительных модификаций.
Далее будет представлена оценка достижимой экономии битов. Однако, следует заметить, что в некоторых случаях экономия битов может быть несколько меньше, чем обозначено, а в других случаях экономия битов может быть даже значительно больше, чем обсуждавшаяся экономия битов. «Оценка экономии битов», показанная на фиг.9, иллюстрирует оценку экономии битов для транскодирования без потерь, сравнивающую битовые потоки, использующие новый синтаксис битового потока, с обычными битовыми потоками (эти обычные битовые потоки были представлены для получения предложений). Как можно ясно видеть, передача бита "transform_length" (длина преобразования) может быть опущена, в соответствии с изобретением, в 95.67% всех фреймов частотной области для моно 12 кбит/с и до 95.15% всех фреймов частотной области для 64 кбит/с.
Как можно видеть из фиг.9, в среднем от 2 до 24 битов в секунду может быть сэкономлено без угрозы качеству звукового содержания. Ввиду того, что скорость передачи битов является очень критическим ресурсом для сохранения и передачи звукового содержания, это улучшение может рассматриваться как очень ценное. Кроме того, следует заметить, что в некоторых случаях улучшение скорости передачи битов может быть значительно большим, например, если фреймы выбираются сравнительно короткие.
Чтобы суммировать вышесказанное, данное изобретение предлагает новый синтаксис битового потока для оповещения о последовательностях окон. Новый синтаксис битового потока экономит скорость передачи данных и является более логичным и более гибким по сравнению со старым синтаксисом. Он легко осуществим и не имеет никаких недостатков относительно сложности.
Сравнение с текущим USAC рабочим проектом
Далее, будут обсуждены предложенные текстовые изменения для технического описания текущего USAC рабочего проекта. Чтобы инкорпорировать предложенные изобретательные изменения согласно данному изобретению, следующие секции должны быть обновлены:
В находящемся на рассмотрении определении «полезных нагрузок для звукового объекта USAC типа», в котором описывается синтаксис, так называемой, ICS информации, обычный синтаксис должен быть заменен синтаксисом, показанным на фиг.10b.
Кроме того, «элемент данных» "windowjsequence" (последовательность окон) должен быть заменен следующим определением элементов данных "window_length" (длина окна) и "transform_Iength" (длина преобразования):
window_length: одноразрядное поле, которое определяет, какая длина наклона окна используется для правой части этой последовательности окон; и
transform_length: одноразрядное поле, которое определяет, какая длина преобразования используется для этой последовательности окон.
Кроме того, определение справочного элемента "window_sequence" (последовательность окон) должно быть добавлено следующим образом:
window_sequence: показывает ' последовательность окон как определено "window_length" (длиной окна) предыдущего фрейма, "transform_length" (длиной преобразования) и "window_length" (длиной окна) текущего фрейма и "core_mode" (базовым режимом (основной модой)) следующего фрейма согласно таблице, показанной на фиг.8.
Фиг.8 показывает определение справочного элемента "window_sequence" (последовательность окон), который факультативно может быть получен из "window_length" информации (о длине окна) предыдущего фрейма, "window_length" информации (о длине окна) текущего фрейма, "transform_length" информации (о длине преобразования) текущего фрейма и "core mode" информации (о базовом режиме (основной моде)) следующего фрейма.
Кроме того, обычное определение "window_sequence" (последовательности окон) и "window_shape" (формы окна) может быть заменено более подходящими определениями "window_length" (длины окна), "transform_length" (длины преобразования) и "window_shape" (формы окна) следующим образом:
window_length: одноразрядное поле, которое определяет, какая длина наклона окна используется для правой части этого окна;
transform_length: одноразрядное поле, которое определяет, какая длина преобразования, используется для этого окна; и
window_shape: одноразрядное указание на то, какая функция окна выбрана.
Способ согласно фиг.11
Фиг.11 показывает блок-схему способа предоставления кодированной звуковой информации на основе входной звуковой информации. Способ 1100 согласно фиг.11 включает стадию 1110 предоставления последовательности параметров звукового сигнала на основе множества реализуемых посредством организации окна частей входной звуковой информации. При предоставлении последовательности параметров звукового сигнала выполняется переключение между использованием окон, имеющих более длинный наклон перехода, и окон, имеющих более короткий наклон перехода, а также между использованием окон, связанных, к тому же, с двумя или более различными длинами преобразования, чтобы приспособить тип окна к получению реализуемых посредством организации окна частей входной звуковой информации в зависимости от характеристик входной звуковой информации. Способ 1100 также включает стадию 1120 кодирования информации об окне, описывающей тип окна, используемого для преобразования текущей части входной звуковой информации посредством использования кодового слова переменной длины.
Способ согласно фиг.12
Фиг.12 показывает блок-схему способа предоставления декодированной звуковой информации на основе кодированной звуковой информации. Способ 1200 согласно фиг.12 включает стадию 1210 оценки информации об окне кодового слова переменной длины, чтобы выбрать окно из множества окон, включающих окна различных наклонов перехода, и окна, связанные, к тому же, с различными длинами преобразования, для обработки данной части частотно-временного представления, связанного с данным фреймом звуковой информации.
Способ 1200 также включает стадию 1220 отображения данной части частотно-временного представления, которое описывается кодированной звуковой информацией, на представлении временного интервала посредством использования выбранного окна.
Следует заметить, что способы согласно фиг.11 и 12 могут быть добавлены любой характеристикой и любыми функциональными возможностями, описанными здесь относительно изобретательных устройств и изобретательных характеристик битового потока.
Альтернативы выполнения
Хотя было описано несколько аспектов в контексте устройства, ясно, что эти аспекты также представляют описание соответствующего способа, где блок или устройство соответствует стадии способа или характеристике стадии способа. Аналогично, аспекты, описанные в контексте стадии способа, также представляют описание соответствующего блока, или элемента, или характеристики соответствующего устройства.
Любая стадия изобретательного способа может быть выполнена посредством использования микропроцессора, программируемого компьютера, fpga (программируемой вентильной матрицы) или любых других аппаратных средств, например, аппаратных средств обработки данных.
Изобретательный кодированный звуковой сигнал может сохраняться на цифровом носителе данных или может передаваться по каналу передачи, такому как беспроводной канал передачи, или проводной канал передачи, такой как Интернет.
В зависимости от определенных требований выполнения осуществления изобретения могут выполняться в аппаратных средствах или в программном обеспечении. Выполнение может реализовываться посредством использования цифрового носителя данных, например дискета, DVD (цифровой видеодиск), Blue-Ray, компакт-диск, ROM (постоянное запоминающее устройство, ПЗУ), FROM (программируемое постоянное запоминающее устройство, ППЗУ), EPROM (стираемое программируемое постоянное запоминающее устройство, СППЗУ) EEPROM (электрически стираемое программируемое постоянное запоминающее устройство, ЭСППЗУ) или флэш-память с сохраненными на ней электронно-считываемыми управляющими сигналами, которые взаимодействуют (или могут взаимодействовать) с программируемой компьютерной системой так, чтобы обеспечить реализацию соответствующего способа. Поэтому цифровой носитель данных может быть удобочитаемым компьютером.
Некоторые осуществления согласно изобретению включают носитель информации, имеющий электронно-считываемые управляющие сигналы, которые могут взаимодействовать с программируемой компьютерной системой, таким образом, что выполняется один из описанных здесь способов.
Обычно осуществления данного изобретения могут реализовываться как компьютерный программный продукт с управляющей программой; управляющая программа работает, чтобы выполнять один из способов, когда компьютерный программный продукт запущен на компьютере. Управляющая программа может, например, сохраняться на машиночитаемом носителе.
Другие осуществления включают компьютерную программу для выполнения одного из описанных здесь способов, сохраненную на машиночитаемом носителе.
Другими словами, осуществлением изобретательного способа поэтому является компьютерная программа, имеющая управляющую программу для выполнения одного из описанных здесь способов, когда компьютерная программа запущена на компьютере.
Дальнейшим осуществлением изобретательных способов поэтому является носитель информации (или цифровой носитель данных, или удобочитаемая компьютером среда), включающий записанную на нем компьютерную программу выполнения одного из способов, описанных здесь.
Дальнейшим осуществлением изобретательного способа поэтому является поток данных или последовательность сигналов, представляющая компьютерную программу для выполнения одного из способов, описанных здесь. Поток данных или последовательность сигналов может, например, формироваться, чтобы быть переданной через канал передачи данных, например через Интернет.
Дальнейшее осуществление включает средство обработки, например компьютер или программируемое логическое устройство, формируемое для или приспособленное, чтобы выполнить один из способов, описанных здесь.
Дальнейшее осуществление включает компьютер с установленной на нем компьютерной программой для выполнения одного из способов, описанных здесь.
В некоторых осуществлениях программируемое логическое устройство (например, вентильная матрица с эксплуатационным программированием) может использоваться, чтобы выполнять некоторые или все функциональные возможности способов, описанных здесь. В некоторых осуществлениях вентильная матрица с эксплуатационным программированием может взаимодействовать с микропроцессором, чтобы выполнить один из способов, описанных здесь. Обычно способы предпочтительно выполняются любым устройством аппаратных средств.
Вышеописанные осуществления - просто иллюстрация принципов данного изобретения. Имеется в виду, что модификации и изменения компоновок и деталей, описанных здесь, будут очевидны для специалистов, квалифицированных в этой области. Поэтому предполагается ограничиваться только рамками находящейся на рассмотрении формулы изобретения, а не специфическими деталями, представленными здесь посредством описания и объяснения осуществлений.
Изобретение относится к технике связи. Технический результат - исключение артефактов, возникающих при обработке ограниченных во времени фреймов. Для этого звуковой декодер для предоставления декодированной звуковой информации на основе кодированной звуковой информации включает основанный на применении окна сигнальный преобразователь, формируемый, чтобы отображать частотно-временное представление, которое описывается кодированной звуковой информацией, на представлении временного интервала. Основанный на применении окна сигнальный преобразователь формируется, чтобы выбрать окно из множества окон, включающих окна различных наклонов перехода и окна различных длин преобразования, на основе информации об окне. Звуковой декодер включает селектор окон, формируемый, чтобы оценить информацию об окне кодового слова переменной длины для выбора окна для обработки данной части частотно-временного представления, связанного с данным фреймом звуковой информации. 6 н. и 9 з.п. ф-лы, 23 ил.
1. Звуковой декодер (200) для предоставления декодированной звуковой информации (212) на основе кодированной звуковой информации (210), включающий основанный на применении окна сигнальный преобразователь (250), сконфигурированный с возможностью отображать частотно-временное представление (242) звуковой информации, которое описывается кодированной звуковой информацией (210), на представлении временного интервала (252) звуковой информации, где основанный на применении окна сигнальный преобразователь сформирован так, чтобы выбрать окно из множества окон (310, 312, 314, 316, 318), включающего окна различных наклонов перехода (310а, 312а, 314а, 316а, 318а, 310b, 312b, 314b, 316b, 318b), и окон, связанных к тому же с различными длинами преобразования, посредством использования информации об окне (272); где звуковой декодер (200) включает селектор окон (270), позволяющий оценить информацию об окне кодового слова переменной длины (224), чтобы выбрать окно для обработки данной части частотно-временного представления, связанного с данным фреймом звуковой информации.
2. Звуковой декодер (200) по п.1, где звуковой декодер включает анализатор битового потока (220), позволяющий анализировать битовый поток (210), представляющий кодированную звуковую информацию, и извлекать из битового потока (210) одноразрядную информацию о длине наклона окна ("window_length"), и выборочно извлекать, в зависимости от значения одноразрядной информации о длине наклона окна, одноразрядную информацию о длине преобразования ("transform_length"); и где селектор окон (270) сформирован, чтобы выборочно, в зависимости от информации о длине наклона окна, использовать или не включать информацию о длине преобразования, чтобы выбрать тип окна (310, 312, 314, 316, 318) для обработки данной части частотно-временного представления (242).
3. Звуковой декодер (200) по одному из п.1, где селектор окон (270) сформирован, чтобы выбирать тип окна (310, 312, 314, 316, 318) для обработки текущей части частотно-временной информации (242), так чтобы левосторонняя длина наклона окна для обработки текущей части частотно-временного представления (242) соответствовала правосторонней длине наклона окна, использовавшегося для обработки предыдущей части частотно-временного представления (242).
4. Звуковой декодер (200) по п.3, где селектор окон (270) сформирован, чтобы выбирать между первым типом (310) окна и вторым типом (312) окна, в зависимости от значения одноразрядной информации о длине наклона окна, если правосторонняя длина наклона окна для обработки предыдущей части частотно-временного представления (242) принимает длинное значение, и если предыдущая часть звуковой информации, текущая часть звуковой информации и последующая часть звуковой информации - все кодируются посредством использования базового режима - основной моды частотной области; где селектор окон (270) позволяет выбирать третий тип (314) окна в ответ на первое значение одноразрядной информации о длине наклона окна, указывающей на длинный правосторонний наклон окна, если правосторонняя длина наклона окна для обработки предыдущей части звуковой информации принимает короткое значение, и если предыдущая часть звуковой информации, текущая часть звуковой информации и последующая часть звуковой информации - все кодируются посредством использования базового режима (основной моды) частотной области; и где селектор окон (270) сформирован, чтобы выбирать между четвертым типом (316) окна и пятым типом (318) окна, которое определяет короткую последовательность окон (319а-319h), в зависимости от одноразрядной информации о длине преобразования, если одноразрядная информация о длине наклона окна принимает второе значение, указывающее на короткий правосторонний наклон окна, если правосторонняя длина наклона окна для обработки предыдущей части звуковой информации (242) принимает короткое значение, и если предыдущая часть звуковой информации, текущая часть звуковой информации и последующая часть звуковой информации - все кодируются посредством использования базового режима (основной моды) частотной области; где первый тип (310) окна включает сравнительно большую левостороннюю длину наклона окна, сравнительно большую правостороннюю длину наклона окна и сравнительно большую длину преобразования; где второй тип окна (312) включает сравнительно большую левостороннюю длину наклона окна, сравнительно короткую правостороннюю длину наклона окна и сравнительно большую длину преобразования; где третий тип окна (314) включает сравнительно короткую левостороннюю длину наклона окна, сравнительно большую правостороннюю длину наклона окна и сравнительно большую длину преобразования; где четвертый тип окна (316) включает сравнительно короткую левостороннюю длину наклона окна, сравнительно короткую правостороннюю длину наклона окна и сравнительно большую длину преобразования; и где последовательность окон (319а-319h) пятого типа окна (318) определяет наложение множества окон (319а-319h), связанного с одиночной частью звуковой информации (242), и где каждое из окон (319а-319h) множества окон включает сравнительно короткую длину преобразования, сравнительно короткий левосторонний наклон окна и сравнительно короткий правосторонний наклон окна.
5. Звуковой декодер (200) по п.1, где селектор окон (270) сформирован, чтобы выборочно оценить бит длины преобразования информации об окне кодового слова переменной длины (224) текущей части звуковой информации, только если тип окна для обработки предыдущей части звуковой информации (242) включает правостороннюю длину наклона окна, соответствующую левосторонней длине наклона окна последовательности окна (318) коротких окон, и одноразрядная информация о длине наклона окна, связанная с текущей частью частотно-временного представления (242), определяет правостороннюю длину наклона окна, соответствующую правосторонней длине наклона окна последовательности окна (318) коротких окон.
6. Звуковой декодер (200) по п.1, где селектор окон (270) выполнен с возможностью получить информацию о предыдущем базовом режиме, связанном с предыдущим фреймом звуковой информации, и описывающую базовый режим кодирования предыдущего фрейма звуковой информации; и где селектор окон (270) позволяет выбрать тип окна для обработки текущей части частотно-временного представления (242) в зависимости от информации о предыдущем базовом режиме, а также в зависимости от информации об окне кодового слова переменной длины (224), связанной с текущей частью звуковой информации (242).
7. Звуковой декодер (200) по п.1, где селектор окон (270) позволяет получить информацию о последующем базовом режиме, связанном с последующей частью звуковой информации (242), и описывающую базовый режим кодирования последующей части звуковой информации; и где селектор окон (270) формируется, чтобы выбрать окно для обработки текущей части звуковой информации (242) в зависимости от информации о последующем базовом режиме, а также в зависимости от информации об окне кодового слова переменной длины (224), связанной с текущей частью частотно-временного представления (242).
8. Звуковой декодер (200) по п.7, где селектор окон (270) позволяет выбирать окна (362, 366, 368, 382), имеющие укороченный правосторонний наклон, если информация о последующем базовом режиме показывает, что последующая часть звуковой информации кодируется посредством использования базового режима области линейного предсказания.
9. Звуковое кодирующее устройство (100) для предоставления кодированной звуковой информации (192) на основе входной звуковой информации (110); звуковое кодирующее устройство (100) включает основанный на применении окна сигнальный преобразователь (130), формируемый, чтобы обеспечить последовательность параметров звукового сигнала (132) на основе множества реализуемых посредством организации окна частей входной звуковой информации (110), где основанный на применении окна сигнальный преобразователь (130) формируется, чтобы приспособить типы окна для получения реализуемых посредством организации окна частей входной звуковой информации в зависимости от характеристик входной звуковой информации (110); где основанный на применении окна сигнальный преобразователь (130) формируется, чтобы переключаться между использованием окон (310, 312, 314, 316, 318), имеющих более длинный наклон перехода, и окон, имеющих более короткий наклон перехода, а также, чтобы переключаться между использованием окон, имеющих две или более различные длины преобразования; и где основанный на применении окна сигнальный преобразователь (130) формируется, чтобы определять тип окна, использовавшийся для преобразования текущей части входной звуковой информации в зависимости от типа окна, использовавшегося для преобразования предыдущей части входной звуковой информации и звукового содержания текущей части входной звуковой информации; где звуковое кодирующее устройство формируется, чтобы кодировать информацию об окне (140), описывающую тип окна, использовавшийся для преобразования текущей части входной звуковой информации (110) посредством использования кодового слова переменной длины.
10. Звуковое кодирующее устройство (100) по п.9, где звуковое кодирующее устройство сформировано с возможностью обеспечить кодовое слово переменной длины таким образом, что кодовое слово переменной длины, связанное с данной частью частотно-временного представления, включает одноразрядную информацию, описывающую длину наклона окна, применяемого для получения данной части частотно-временного представления (132); и где звуковое кодирующее устройство (100) формируется, чтобы обеспечить кодовое слово переменной длины так, чтобы кодовое слово переменной длины выборочно включало информацию о длине преобразования с одноразрядным кодом, описывающую длину преобразования, применявшуюся для получения данной части частотно-временного представления (132), если, и только если информация с одноразрядным кодом, описывающая длину наклона окна, принимает предварительно определенное значение.
11. Звуковое кодирующее устройство (100) по п.9, где звуковое кодирующее устройство сформировано, чтобы кодировать информацию о длине наклона окна, описывающую правостороннюю длину наклона окна, применявшуюся для получения данной части частотно-временного представления, и информацию о длине преобразования, описывающую длину преобразования, применявшуюся для получения данной части частотно-временного представления (132) посредством использования отдельных битов битового потока (192), и чтобы принять решение о присутствии бита, несущего информацию о длине преобразования, в зависимости от значения информации о длине наклона окна.
12. Способ (1200) предоставления декодированной звуковой информации на основе кодированной звуковой информации, включающий оценку (1210) информации об окне кодового слова переменной длины для выбора окна из множества окон, включающих окна различных наклонов перехода и окна, связанные к тому же с различными длинами преобразования, для обработки данной части частотно-временного представления, связанной с данным фреймом звуковой информации; и отображение (1220) данной части частотно-временного представления, которое описывается кодированной звуковой информацией, на представлении временного интервала посредством использования выбранного окна.
13. Способ (1100) для предоставления кодированной звуковой информации на основе входной звуковой информации, включающий предоставление (1110) последовательности параметров звукового сигнала на основе множества реализуемых посредством организации окна частей входной звуковой информации, где переключение выполняется между использованием окон, имеющих более длинный наклон перехода, и окон, имеющих более короткий наклон перехода, а также между использованием окон, связанных к тому же с двумя или более различными длинами преобразования, чтобы приспособить типы окна для получения реализуемых посредством организации окна частей входной звуковой информации в зависимости от характеристик входной звуковой информации; и кодирование информации, описывающей типы окон, использовавшиеся для преобразования частей входной звуковой информации посредством использования кодовых слов переменной длины.
14. Машиночитаемый носитель информации с сохраненной на нем компьютерной программой, имеющей программный код, для выполнения способа по п.12, когда компьютерная программа запущена на компьютере.
15. Машиночитаемый носитель информации с сохраненной на нем компьютерной программой, имеющей программный код, для выполнения способа по п.13, когда компьютерная программа запущена на компьютере.
Способ отбелки бисульфитной целлюлозы | 1980 |
|
SU910900A1 |
УСТРОЙСТВО И СПОСОБ ОБРАБОТКИ СИГНАЛА, ИМЕЮЩЕГО ПОСЛЕДОВАТЕЛЬНОСТЬ ДИСКРЕТНЫХ ЗНАЧЕНИЙ | 2004 |
|
RU2325708C2 |
СПОСОБ И УСТРОЙСТВО МАСШТАБИРОВАННОГО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ ЗВУКА | 1998 |
|
RU2185024C2 |
СПОСОБ И УСТРОЙСТВО МАСШТАБИРУЕМОГО КОДИРОВАНИЯ-ДЕКОДИРОВАНИЯ СТЕРЕОФОНИЧЕСКОГО ЗВУКОВОГО СИГНАЛА (ВАРИАНТЫ) | 1998 |
|
RU2197776C2 |
Пресс для выдавливания из деревянных дисков заготовок для ниточных катушек | 1923 |
|
SU2007A1 |
US 6446037 B1, 03.09.2002 | |||
EP 1807824 B1, 31.01.2007 |
Авторы
Даты
2015-02-20—Публикация
2010-01-28—Подача