КОМБИНИРОВАННОЕ АУДИОКОДИРОВАНИЕ, МИНИМИЗИРУЮЩЕЕ ВОСПРИНИМАЕМОЕ ИСКАЖЕНИЕ
COMBINED AUDIO CODING, WHICH MINIMISES PERCEIVED DISTORTION

Область техники, к которой относится изобретение
Это изобретение относится к области кодирования аудиосигнала низкой скорости передачи битов высокого качества. Это изобретение, в частности, относится к эффективному кодированию, оптимизированному по отношению к качеству воспринимаемого звука, при рассмотрении целевой скорости передачи битов. Более конкретно, это изобретение относится к кодированию аудиосигнала, использующему множество кодировщиков для производства объединенного представления кодированного сигнала. Это изобретение также относится к кодировщику, декодеру, способам кодирования и декодирования, кодированному аудиосигналу, хранилищу и носителям передачи с данными, представляющими такой кодированный сигнал, и аудиоустройствам с кодировщиком и/или декодером.
Предшествующий уровень техники
В аудиокодировании высокого качества хорошо известно, что необходимы разные способы кодирования для предоставления оптимального результата по отношению к качеству звука по отношению к скорости передачи битов для большого многообразия аудиосигналов. Один способ кодирования может предоставлять хорошие результаты для некоторых типов аудиосигналов, тогда как другие типы аудиосигналов дают результатом недостаточную производительность. Для очень низких скоростей передачи битов наиболее эффективным является синусоидальный кодировщик плюс шумовая модель, в то время как технологии кодирования формы волны, в общем, приводят к более хорошим результатам для более высоких скоростей передачи битов.
В текущих стандартах MPEG 2 и MPEG 4 признается проблема, что разные стратегии кодирования могут быть более эффективными для разных скоростей передачи битов. Таким образом, в этот стандарт включен большой диапазон различных аудиокодировщиков, большинство из которых нацелены давать наилучшие результаты для ограниченного диапазона скоростей передачи битов.
Однако нормальные аудиосигналы включают в себя смесь большого многообразия свойств сигнала даже внутри короткого периода времени. Поэтому является достаточно распространенным, что даже несколько секунд аудиосигнала содержат короткие отрывки, доминируемые, например, чистыми тональными сигналами, шумом или кратковременными звуками (звуковыми переходами). Эти разные характеристики требуют разных характеристик кодирования для оптимального кодирования, т.е. использование единичного типа кодировщика может давать результатом довольно недостаточные результаты в терминах скорости передачи битов или качества для некоторых отрывков сигнала.
Диссертация, выполненная Скотом Левиным (Scott Levine), [1] (см. список ссылок в конце раздела, озаглавленного "Описание вариантов осуществления"), описывает кодировщик, содержащий смесь между синусоидальным (или параметрическим) кодировщиком и кодировщиком формы волны. Наибольшая часть аудиосигнала кодируется с помощью параметрического кодировщика, в то время как кодировщик формы волны используется только для переходных частей аудиосигнала. В этой схеме применяется заданное разделение между параметрическим кодировщиком и кодировщиком формы волны.
Патент США 5808569 на имя Philips описывает схему кодирования, в которой разные части сигнала кодируются посредством использования двух разных стратегий кодирования. Однако никакая дополнительная спецификация не дана, чтобы определять, как битовая скорость распределяется по разным кодировщикам.
Никакой аудиокодировщик предыдущей области техники, таким образом, не обращается к проблеме управления двумя или более разными схемами кодирования в ответ на изменение параметров аудиосигнала.
Цель и сущность изобретения
Целью настоящего изобретения является предоставить гибкий аудиокодировщик, который способен предоставлять аудиокодирование высокого качества с высокой эффективностью для большого многообразия характеристик аудиосигнала и для разных целевых скоростей передачи битов.
Согласно первому аспекту этого изобретения эта цель достигается с помощью аудиокодировщика, сконфигурированного кодировать аудиосигнал, причем аудиокодировщик содержит:
- первый кодировщик, сконфигурированный генерировать первую кодированную часть сигнала,
- по меньшей мере, второй кодировщик, сконфигурированный генерировать вторую кодированную часть сигнала, и
- устройство управления, содержащее
- средство вычисления, сконфигурированное вычислять объединенное представление аудиосигнала, содержащее первую и вторую кодированные части сигнала, по отношению к мере искажения, и
- оптимизирующее средство, сконфигурированное регулировать параметры кодирования для, по меньшей мере, одного из: первого и второго кодировщиков, и отслеживать меру искажения объединенного представления аудиосигнала в ответ на это с тем, чтобы оптимизировать параметры кодирования в соответствии с заданным критерием.
Термин 'мера искажения' должен толковаться как любая мера различия между аудиосигналом и кодированным аудиосигналом, т.е. объединенным представлением аудиосигнала.
Термин 'параметры кодирования' должен толковаться широко как одна или более возможных переменных кодирования, которые могут регулироваться для конкретного кодировщика. Природа этих параметров кодирования зависит от типа кодировщика.
Аудиокодировщик согласно первому аспекту способен осуществлять оптимальное кодирование для каждого отрывка аудиосигнала так, чтобы наилучшим образом использовать два объединенных кодировщика для получения наименьшего возможного воспринимаемого искажения, т.е. наилучшего качества восприятия, при заданном некотором пределе максимальной скорости передачи битов. В особенности, выбор первого и второго кодировщиков, так что они используют совершенно разные принципы кодирования, будет предоставлять эффективное кодирование. Например, для одного отрывка с некоторыми характеристиками сигнала наиболее эффективное кодирование может быть получено почти единственно с полной скоростью передачи битов, используемой первым кодировщиком, в то время как следующий отрывок демонстрирует другие характеристики, требующие смесь обоих кодировщиков для оптимального кодирования. Кодировщик согласно первому аспекту способен конфигурироваться для разных характеристик аудиосигнала и также предоставлять оптимальную производительность при разных пределах максимальной скорости передачи битов. Известно, что некоторые кодировщики показывают наилучшую производительность при конкретных скоростях передачи битов. Это принимается в рассмотрение вследствие оптимизированной смеси двух кодировщиков, таким образом, обеспечивая, что оптимальная эффективность кодирования получается для большого диапазона целевых скоростей передачи битов. Параметры кодирования обоих первого и второго кодировщика предпочтительно оптимизируются.
В принципе, кодировщик согласно этому изобретению делает возможной оптимизацию параметров кодирования его отдельных кодировщиков в соответствии с большим многообразием критериев. В одном варианте осуществления оптимизирующее средство конфигурируется для регулировки параметров кодирования так, чтобы минимизировать меру искажения, т.е. в соответствии с этим критерием, качество звука оптимизируется без какого-либо рассмотрения доступной скорости передачи битов. Однако этот вариант осуществления может быть модифицирован с помощью ограничения заданной максимальной полной скорости передачи битов для первого и второго кодировщиков.
В другом варианте осуществления оптимизирующее средство конфигурируется для минимизации меры искажения посредством распределения, в пределах заданной максимальной полной скорости передачи битов, первой и второй скоростей передачи битов первому и второму кодировщикам соответственно. Этот вариант осуществления аудиокодировщика стремится распределять полную скорость передачи битов наиболее эффективно между двумя кодировщиками так, чтобы минимизировать искажение. В простом варианте осуществления двух кодировщиков с ограниченным набором фиксированных скоростей передачи битов и постоянной суммой скоростей передачи битов для двух кодировщиков оптимизирующее средство только должно регулировать распределение скоростей передачи битов между двумя кодировщиками.
В других вариантах осуществления оптимизирующее средство конфигурируется минимизировать полную скорость передачи битов для первой и второй частей сигнала с ограничением заданной максимальной меры искажения. В соответствии с этим вариантом осуществления критерий оптимизации должен минимизировать полную скорость передачи битов для фиксированной меры искажения.
В предпочтительных вариантах осуществления мера искажения содержит меру воспринимаемого искажения. Термин 'мера воспринимаемого искажения' должен толковаться широко как величина, выражающая, например, в соответствии с психоакустической моделью, до какой степени кодированный сигнал искажается по отношению к качеству воспринимаемого звука. Другими словами, мера воспринимаемого искажения для кодированного сигнала является величиной, выражающей степень деградации исходного входного аудиосигнала, которая может восприниматься слушателем. Очевидно, эта мера предпочтительно должна минимизироваться, чтобы достигнуть цели оптимального качества звука кодированного сигнала.
В предпочтительном варианте осуществления первый кодировщик конфигурируется для кодирования аудиосигнала в первую кодированную часть сигнала, и второй кодировщик конфигурируется для кодирования первого остаточного сигнала, определенного как разность между упомянутым аудиосигналом и первой кодированной частью сигнала, во вторую кодированную часть сигнала. Этот вариант осуществления описывает каскад двух кодировщиков, в котором второй кодировщик кодирует оставшуюся часть исходного сигнала, которая не кодируется первым кодировщиком. Мера искажения предпочтительно базируется на втором остаточном сигнале, определенном как разность между первым остаточным сигналом и второй кодированной частью сигнала. Это означает, что оставшаяся часть исходного аудиосигнала, которая не была кодирована двумя кодировщиками, используется вместе с исходным аудиосигналом для создания меры искажения. В более общих терминах, в каскаде более чем двух кодировщиков каждый из которых кодирует остаточные сигналы кодировщика, предшествующего ему в каскаде, остаточный сигнал, который не был декодирован последним кодировщиком в каскаде, используется как входной для устройства управления для процесса оптимизации.
В другом предпочтительном варианте осуществления аудиокодировщик дополнительно содержит разделитель сигнала, сконфигурированный разделять аудиосигнал на первую и вторую части, где первый кодировщик сконфигурирован кодировать первую часть аудиосигнала в первую кодированную часть сигнала, и где второй кодировщик сконфигурирован кодировать вторую часть аудиосигнала во вторую кодированную часть сигнала. В этом варианте осуществления первый и второй кодировщики, таким образом, работают параллельно. Например, разделитель сигнала может содержать модуль фильтра, разделяющий аудиосигнал на разные частотные диапазоны.
Аудиокодировщик может дополнительно содержать третий кодировщик, сконфигурированный генерировать третью кодированную часть сигнала, где устройство управления сконфигурировано обрабатывать объединенное представление аудиосигнала, содержащее первую, вторую и третью кодированные части сигнала. Три кодировщика могут работать в каскаде параллельно, как описано выше, или в комбинации этого. Аудиокодировщик может содержать более чем три кодировщика, т.е. четыре, пять, шесть или более кодировщиков. Они могут быть каскадными, соединенными параллельно или соединенными в комбинации каскада и параллельно. Это множество кодировщиков могут быть разных типов или могут, по меньшей мере, представлять два разных типа.
Оптимизирующее средство предпочтительно конфигурируется выбирать среди заданных наборов первых и вторых шаблонов кодирования для первого и второго кодировщиков, соответственно, пару первого и второго шаблонов кодирования, дающую результатом наилучшую производительность в соответствии с заданным критерием. Здесь, 'шаблон кодирования' должен толковаться, чтобы означать, для конкретного кодировщика, выбранный набор параметров кодирования, которые могут регулироваться. 'Набор заданных шаблонов' должен, таким образом, толковаться, чтобы означать, для конкретного кодировщика, наборы разных выбранных параметров кодирования.
Первый кодировщик предпочтительно содержит кодировщик, выбранный из группы, состоящей из параметрических кодировщиков (например, синусоидального кодировщика), кодировщиков преобразования, кодировщиков регулярного импульсного возбуждения и кодировщиков возбуждаемого линейного прогноза шифровальной книги. Второй кодировщик предпочтительно содержит кодировщик, выбранный из такой же группы. Первый кодировщик также может быть комбинированным кодировщиком. Наиболее предпочтительно, чтобы первый и второй кодировщики были разных типов, так что они дополняют друг друга наилучшим возможным способом. Однако первый и второй кодировщики могут быть одного и того же типа, но с разными шаблонами кодирования.
Аудиокодировщик предпочтительно конфигурируется, чтобы принимать аудиосигнал, разделенный на сегменты. Оптимизирующее средство предпочтительно конфигурируется, чтобы оптимизировать параметры кодирования по одному или более последовательным сегментам аудиосигнала. Эти сегменты могут быть перекрывающимися или неперекрывающимися. Более предпочтительно, три или более последовательных сегментов используются в процессе оптимизации.
Второй аспект этого изобретения предоставляет аудиодекодер, сконфигурированный для декодирования кодированного аудиосигнала, причем аудиодекодер содержит:
- первый декодер, сконфигурированный, чтобы генерировать первую декодированную часть сигнала из первой кодированной части сигнала,
- второй декодер, сконфигурированный, чтобы генерировать вторую декодированную часть сигнала из второй кодированной части сигнала, и
- средство суммирования, сконфигурированное, чтобы генерировать представление аудиосигнала как сумму первой и второй декодированных частей сигнала.
Первый и второй декодеры должны быть того же типа, что и те, которые используются в процессе кодирования. Иначе они будут неспособны декодировать первый и второй кодированные сигналы, которые могут содержать специфичные для кодировщика данные, такие как, например, синусоидальные параметры и т.д. Декодеры могут работать полностью параллельно на каждой части кодированного сигнала.
Предпочтительные первый и второй декодеры могут, таким образом, выбираться из соответствующих типов, как перечислено выше в связи с аудиокодировщиком.
Что касается аудиокодировщика, декодер может дополнительно содержать третий декодер, сконфигурированный, чтобы генерировать третью декодированную часть сигнала из третьей кодированной части сигнала, где средство суммирования сконфигурировано, чтобы генерировать представление аудиосигнала как сумму первой, второй и третьей декодированных частей сигнала. Аудиодекодер может дополнительно содержать четвертый, пятый, шестой или более отдельных декодеров, каждый сконфигурирован, чтобы декодировать отдельную часть кодированного аудиосигнала. Все декодированные части сигнала должны складываться, чтобы генерировать выходной аудиосигнал.
В третьем аспекте это изобретение предоставляет способ кодирования аудиосигнала, причем способ содержит этапы:
- генерирование первой кодированной части сигнала, используя первый кодировщик,
- генерирование, по меньшей мере, второй кодированной части сигнала, используя второй кодировщик,
- вычисление объединенного представления аудиосигнала, содержащего первую и вторую кодированные части сигнала, по отношению к мере искажения, и
- оптимизацию параметров кодирования для первого и второго кодировщиков в ответ на меру искажения в соответствии с заданным критерием.
Применяется то же объяснение, как для первого аспекта.
В четвертом аспекте это изобретение предоставляет способ декодирования кодированного аудиосигнала, причем способ содержит этапы:
- генерирование первой декодированной части сигнала из первой кодированной части сигнала, используя первый декодер,
- генерирование второй декодированной части сигнала из второй кодированной части сигнала, используя второй декодер,
- сложение первой и второй декодированных частей сигнала.
Применяется то же объяснение, как для второго аспекта.
В пятом аспекте это изобретение предоставляет кодированный аудиосигнал, содержащий первую и вторую кодированные части сигнала, закодированные разными кодировщиками.
Кодированный сигнал может быть цифровым электрическим сигналом с форматом в соответствии со стандартными цифровыми аудиоформатами. Сигнал может передаваться посредством использования электрического подсоединяемого кабеля между двумя аудиоустройствами. Однако кодированный сигнал может быть беспроводным сигналом, таким как переносимый по воздуху сигнал, использующий радиочастотный носитель, или он может быть оптическим сигналом, сконфигурированным для передачи через оптоволокно.
В шестом аспекте это изобретение предоставляет запоминающий носитель, содержащий данные, представляющие кодированный аудиосигнал, согласно пятому аспекту. Запоминающий носитель предпочтительно является стандартным запоминающим носителем аудиоданных, таким как DVD, DVD-ROM, DVD-R, DVD+RW, CD, CD-R, CD-RW, компактным устройством флэш, устройством memory stick и т.д. Однако он также может быть компьютерным запоминающим носителем данных, таким как компьютерный жесткий диск, компьютерная память, гибкий диск и т.д.
В седьмом аспекте это изобретение предоставляет устройство, содержащее аудиокодировщик согласно первому аспекту.
В восьмом аспекте это изобретение предоставляет аудиоустройство, содержащее аудиодекодер согласно второму аспекту.
Все из предпочтительных устройств согласно седьмому и восьмому аспектам являются разными типами аудиоустройств, такими как лента, диск или базирующиеся на памяти модули аудиозаписи и проигрыватели, например твердотельные проигрыватели, проигрыватели DVD, аудиопроцессоры для компьютеров и т.д. В дополнение, это может быть предпочтительным для мобильных телефонов. Девятый и десятый аспекты предоставляют машиночитаемые программные коды, т.е. программное обеспечение, содержащее алгоритмы, реализующие способы кодирования и декодирования согласно третьему и четвертому аспектам соответственно.
Краткое описание чертежей
Это изобретение будет описываться более детально ниже со ссылкой на сопровождающие чертежи, на которых
Фиг. 1 - это блок-схема первого варианта осуществления аудиокодировщика, содержащего каскад из двух кодировщиков, работающих под ограничением полной (суммарной) целевой скорости передачи битов для каждого аудиоотрывка,
Фиг. 2 показывает график, показывающий пример масочной кривой (кривой маски) и спектра ошибки, используемых для выведения меры воспринимаемого искажения,
Фиг. 3 показывает графики, показывающие, для двух разных звуковых примеров, влияние распределения скоростей передачи битов между первым и вторым кодировщиками на результирующее полное воспринимаемое искажение,
Фиг. 4 - это блок-схема аудиодекодера, содержащего два декодера,
Фиг. 5 показывает второй вариант осуществления кодировщика, содержащий каскад из двух кодировщиков, работающих, для каждого аудиоотрывка, с некоторым количеством возможных шаблонов кодирования,
Фиг. 6 показывает пример сегментирования и перекрытия между двумя кодировщиками второго варианта осуществления кодировщика, и
Фиг. 7 показывает третий вариант осуществления кодировщика, содержащий два кодировщика, работающих параллельно.
В то время как возможны различные модификации и альтернативные формы в рамках объема этого изобретения, конкретные варианты осуществления были показаны в качестве примера на чертежах и будут описываться в деталях ниже. Следует отметить, однако, что это изобретение не ограничено конкретными раскрытыми формами. Это изобретение скорее охватывает все модификации, эквиваленты и альтернативы в рамках сущности и объема этого изобретения, как определено в прилагаемых пунктах формулы изобретения.
Описание вариантов осуществления
Фиг. 1 - это блок-схема, показывающая принципы первого варианта осуществления простого кодировщика, содержащего каскад двух разных кодировщиков AE1, AE2, работающих с фиксированной полной целевой скоростью передачи битов на кадр. Кадр определяется как временной интервал, который равен или больше по продолжительности, чем единичный сегмент. Первый кодировщик AE1 предпочтительно содержит синусоидальный кодировщик, в то время как второй кодировщик AE2 содержит кодировщик преобразования. Способ синусоидального кодирования является эффективным на низких скоростях передачи битов и предоставляет более хорошее качество звука по сравнению с кодировщиками формы волны на сравнительно низких скоростях передачи битов. Известно, что кодировщики преобразования требуют больших скоростей передачи битов, но достигают более хорошего качества звука, чем синусоидальные кодировщики. Таким образом, всецело, комбинация предоставляет гибкий аудиокодировщик.
1
1
2
В схеме кодирования, показанной на фиг. 1, отрывок аудиосигнала ε0 кодируется первым кодировщиком AE1, используя некоторую часть R целевой скорости передачи битов. Часть скорости R передачи битов, которая может расходоваться первым кодировщиком AE1, управляется устройством CU управления. После синусоидального кодирования в первом кодировщике AE1 первая кодированная часть E1 сигнала, т.е. неквантованное синусоидальное описание, вычитается из исходного входного сигнала ε0, чтобы дать результатом остаточный сигнал ε1, т.е. ту часть сигнала, которая не моделируется синусоидальным кодировщиком AE1. Остаточный сигнал ε1 затем кодируется вторым кодировщиком AE2, т.е. кодировщиком формы волны, во вторую кодированную часть E2 сигнала, расходуя оставшуюся часть R полной скорости передачи битов, которая доступна для кодирования кадра.
1
2
В этом варианте осуществления устройство CU управления теперь оптимизирует качество воспринимаемого звука объединенного кодированного сигнала E1, E2 посредством тестирования некоторого количества альтернативных распределений скоростей R, R передачи битов между двумя кодировщиками AE1, AE2 и вычисления объединенного кодированного результата по отношению к мере воспринимаемого искажения. Модель восприятия предпочтительно используется для предоставления меры воспринимаемого искажения. Предпочтительная модель, которая явно предлагает способ предсказания воспринимаемых искажений является способом, представленным в [4]. Обычно эта оптимизация должна делаться на основе кадр за кадром, чтобы позволять кодировщику конфигурировать локальные свойства сигнала.
1
2
2
0
2
1
Устройство CU управления сохраняет меру воспринимаемого искажения для конкретного распределения скоростей R, R передачи битов между двумя кодировщиками AE1, AE2 и пробует другое распределение до тех пор, когда оно не находит наилучшее распределение. Для этой цели устройство CU управления сравнивает сигнал ε ошибки после второго кодировщика AE2 с исходным входным сигналом ε. Сигнал ошибки или остаточный сигнал ε определяется как разность между первым остаточным сигналом ε и второй кодированной частью E2 сигнала, другими словами, конечный остаточный сигнал, который не был закодирован двумя кодировщиками AE1, AE2.
1
2
1
2
1
2
После тестирования заданного набора распределений R, R скоростей передачи битов устройство CU управления выбирает из определенных мер воспринимаемого искажения распределение R, R скоростей передачи битов, дающее результатом наименьшее воспринимаемое искажение, которое должно использоваться. В соответствии с этим распределением R, R, результирующие первая и вторая части E1, E2 сигнала, т.е. параметры и данные, результирующие из кодировщиков AE1, AE2 соответственно, обрабатываются модулем форматирования битового потока BSF с тем, чтобы предоставлять кодированный выходной битовый поток OUT.
1
2
1
2
1
2
Заданный набор распределений R, R скоростей передачи битов, который должен тестироваться, может являться, например, всеми комбинациями с размером шага 5%, 10%, 20% или 25% полной целевой скорости передачи битов, т.е. R+R. В случае целевой скорости передачи битов 64 kbps (кбит в секунду), например, наборы (R, R) могут выбираться, чтобы быть (0.64), (16.48), (32.32), (48.64) и (64.0) kbps.
Точная граничная точка, где синусоидальный кодировщик AE1 является более эффективным, чем кодировщик AE2 формы волны, будет зависеть от конкретных аудиоданных, которые кодируются; например, один аудиоотрывок для скорости передачи битов, например 32 kbps, может кодироваться наиболее эффективно синусоидальным кодировщиком, в то время как при той же скорости передачи битов другой аудиоотрывок может кодироваться наиболее эффективно с помощью кодировщика формы волны.
1
2
1
2
1
2
Как описано выше, устройство CU управления тестирует весь заданный набор распределений R, R скоростей передачи битов. В альтернативном процессе оптимизации устройство CU управления останавливает тестирование дополнительных комбинаций R, R распределений скоростей передачи битов, когда комбинация R, R скоростей передачи битов дает результатом меру воспринимаемого искажения, которая ниже заданного значения.
Как результат, вариант осуществления, описанный со ссылкой на фиг. 1, дает результатом наилучшее использование возможностей вовлеченных двух аудиокодировщиков AE1, AE2, так как оно будет конфигурироваться для каждого конкретного аудиоотрывка. Это ведет к: 1) автоматическому выбору наилучшего аудиокодировщика для конкретного кадра аудио, которое должно кодироваться, 2) это позволяет комбинированное использование аудиокодировщиков для случая, в котором это ведет к более хорошему качеству.
2
Остаточный сигнал ε, который остается после второго кодировщика AE2, может использоваться как входной сигнал для кодировщика шума (не показан). Этим способом, по меньшей мере, некоторые из спектральных частей, которые не моделируются двумя кодировщиками AE1, AE2, могут заменяться шумом, что обычно ведет к хорошему улучшению качества.
В предпочтительном варианте осуществления первого синусоидального кодировщика, AE1, алгоритм поиска психоакустического соответствия [5] используется для оценки синусоид. Сегментирование и распределение синусоид предпочтительно осуществляется в соответствии со способом, описанным в [6].
Предпочтительный вариант осуществления второго кодировщика AE2 преобразования базируется на модуле фильтра, описанном в [7]. Сегментирование второго кодировщика AE2 может либо следовать сегментированию первого кодировщика AE1 или оно может принимать равномерное сегментирование.
2
2
Остаточный сигнал ε после второго кодировщика AE2 предпочтительно вычисляется с помощью модели восприятия [4] для измерения полного воспринимаемого искажения. Это предпочтительно делается посредством определения масочной функции, v(f) для каждого кадра исходного сигнала IN. Масочная функция понимается как спектральное представление порога человеческого слуха при заданном рассматриваемом аудиосигнале как ввод в человеческую слуховую систему в виде функции частоты f. Затем остаточный сигнал ε временной области используется, чтобы выводить спектр s(f) ошибки как функцию частоты f. Как показано в уравнении 9 из [4], внутреннее произведение сигнала спектра ошибки и обратной к масочной функции предоставляет хороший прогнозирующий параметр воспринятого искажения, т.е. воспринимаемое искажение D может быть вычислено как:
Фиг. 2 показывает график, показывающий пример масочной кривой v(f), показанной с помощью прерывистой линии, вычисленной с помощью упомянутой модели восприятия, вместе со спектром s(f) ошибки, показанным с помощью сплошной линии, которые используются для вывода меры D воспринимаемого искажения, как показано выше. График показывает линейный частотный масштаб f по отношению к уровню, Lp, в dB. Фиг. 2 показывает, что при более низких частотах, например около 100 Гц, сигнал s(f) ошибки имеет значительный уровень по сравнению с масочной кривой v(f), и этот частотный диапазон, таким образом, вносит вклад в полное воспринимаемое искажение D. Выше 10-12 кГц возрастание масочной кривой, главным образом, вызвано возрастанием порога человеческого слуха в тишине.
Фиг. 3 показывает два графика, показывающих, для разных аудиосигналов, зависимость полного воспринимаемого искажения TPD от части скорости передачи битов, назначенной синусоидальному кодировщику PBRS, в случае аудиокодировщика с синусоидальным кодировщиком и формой волны, как описано со ссылкой на фиг. 1. Разные аудиосигналы представляют звук, записанный от кастаньет, верхний график, и клавесина, нижний график. Символы показывают разные полные скорости передачи битов: 12 kbps (круги), 24 kbps (плюсы) и 48 kbps (звездочки). Жирные линии показывают выбор распределения скоростей передачи битов для различных полных скоростей передачи битов.
Как можно видеть для кастаньет, верхний график, воспринимаемые искажения являются довольно постоянными как функция распределения скоростей передачи битов, по меньшей мере, при 12 kbps (круги) и 24 kbps (плюсы). Однако для 48 kbps (звездочки), явно является предпочтительным распределять большую часть скорости передачи битов кодировщику формы волны по сравнению с отправкой большей части скорости передачи битов синусоидальному кодировщику. Для клавесина, нижний график, появляется другая картина. Здесь ясно, что даже при высоких скоростях передачи битов, синусоидальный кодировщик должен использовать около половины скорости передачи битов, в то время как при низких скоростях передачи битов, явно лучше использовать полную скорость передачи битов для синусоидального кодировщика.
1
2
Отметим, что хотя примеры, показанные на фиг. 3, были получены с помощью вычисления и оптимизации полных аудиоотрывков, этот способ оптимизации предполагается для использования на более коротких сегментах аудио, так что распределение скоростей R, R передачи битов может конфигурироваться более локально к свойствам сигнала.
Фиг. 4 - это блок-схема аудиодекодера, сконфигурированного для декодирования кодированного аудиосигнала, например, аудиосигнала, закодированного аудиокодировщиком, описанным со ссылкой на фиг. 1. Аудиодекодер содержит первый и второй декодеры AD1, AD2, соответствующие типам первого и второго кодировщиков AE1, AE2, так что они сконфигурированы принимать первую и вторую кодированные части E1, E2 сигнала от кодировщиков AE1, AE2. Декодированный аудиосигнал принимается во входном битовом потоке IN, и первая и вторая декодированные части E1, E2 сигнала извлекаются декодером битового потока BSD. Затем первая декодированная часть E1 сигнала подается первому декодеру AD1, и вторая декодированная часть E2 сигнала подается второму декодеру AD2. Декодеры AD1, AD2 могут независимо декодировать их части, и результирующие первая и вторая декодированные части D1, D2 сигнала могут затем просто складываться так, чтобы генерировать представление OUT исходного аудиосигнала.
1
2
Фиг. 5 - это блок-схема другого варианта осуществления аудиокодировщика, содержащего каскад из первого и второго отдельных кодировщиков AE1, AE2. Там, где схема кодирования, описанная в связи с первым вариантом осуществления, показанным на фиг. 1, работает при ограничении постоянной полной скорости передачи битов (R+R) для каждого заданного временного интервала или сегмента, это ограничение ослабляется во втором варианте осуществления из фиг. 5. Этот второй вариант осуществления рассматривает, в принципе, все возможные параметры кодирования, по меньшей мере, первого кодировщика AE1, предпочтительно также второго кодировщика AE2, и это также дает результатом уменьшенное воспринимаемое искажение по сравнению с первым аудиокодировщиком из фиг. 1. Однако по сравнению с первым вариантом осуществления аудиокодировщика второй вариант осуществления аудиокодировщика является более сложным для реализации. В отличие от первого варианта осуществления второй вариант осуществления, таким образом, позволяет адаптировать скорость передачи битов для требований каждого отрывка аудиосигнала, что позволяет более лучшую оптимизацию двух кодировщиков AE1, AE2, и, следовательно, второй вариант осуществления аудиокодировщика способен достигать более низкого воспринимаемого искажения, т.е. более высокого качества звука, при той же скорости передачи битов, рассматриваемой как среднее большого количества аудиоотрывков.
0
1
2
В аудиокодировщике из фиг. 5 первый и второй разные кодировщики AE1, AE2, каждый конфигурируется, чтобы кодировать принятый входной сигнал ε многими разными способами. Эти варианты выбора кодирования называются шаблонами кодирования. Например, в случае синусоидального кодировщика один конкретный шаблон кодирования определяет один конкретный набор синусоид, который используется для представления входного аудиосегмента, в то время как другой шаблон может определять другой набор синусоид. Набор всех возможных шаблонов, поэтому, позволяет кодировщику выполнять каждую операцию кодирования, которая возможна, и, таким образом, способен конфигурировать его кодирование для каждого аудиоотрывка. Шаблоны для первого и второго кодировщиков AE1, AE2 обозначаются первый и второй шаблоны T, T соответственно.
1
2
0
1
2
0
1
2
1
2
1
2
Для каждых двух шаблонов T и T кодирования, которые выбраны, первый кодировщик AE1 кодирует аудио входной сигнал ε в первую кодированную часть E1 сигнала. Вследствие несовершенного кодирования кодирование дает результатом остаточный сигнал ε, который затем кодируется вторым кодировщиком AE2 во вторую кодированную часть E2 сигнала. Второй процесс кодирования снова дает результатом остаточный сигнал ε, который вычисляется устройством CU управления, использующим модель восприятия, дающую результатом вычисление меры воспринимаемого искажения. Чтобы выбрать конечное кодирование входного аудиосигнала ε, устройство CU управления выполняет процедуру оптимизации с целью нахождения шаблонов T, T кодирования из заданного набора позволенных шаблонов T, T кодирования, которые дают результатом наименьшую меру воспринимаемого искажения. Для этой цели, помимо меры воспринимаемого искажения в рассмотрение принимаются также скорости R, R передачи битов (или их оценки) каждого из двух кодировщиков AE1, AE2.
1
2
1
2
Как только конечные шаблоны T, T кодирования найдены, эти шаблоны T, T используются для генерирования первой и второй кодированных частей E1, E2 сигнала, результирующих из первого и второго кодировщиков AE1, AE2, соответственно. Эти первая и вторая кодированные части E1, E2 сигнала подаются к модулю форматирования битового потока BSF, который формирует выходной битовый поток OUT.
Первый кодировщик AE1 предпочтительно содержит синусоидальный кодировщик, в то время как второй кодировщик AE2 содержит кодировщик преобразования. Мера воспринимаемого искажения D предпочтительно вычисляется в соответствии с [4], как описано в связи с первым вариантом осуществления кодировщика.
Формальное определение проблемы оптимизации, которая должна быть решена устройством CU управления, дается как
2
2
0
где D вычисляется на основе ε и представляет воспринимаемое искажение как прогнозируемое моделью восприятия (например, [4]), и n - это номер сегмента, предполагая, что сигнал будет кодироваться некоторым количеством сегментов короткого времени, взятых из полного входного сигнала ε. Эта проблема минимизации должна быть минимизирована при ограничении
T
где R - это целевая скорость передачи битов.
1
2
При решении этой проблемы способом, как это сформулировано здесь, в принципе, должны тестироваться все комбинации шаблонов T, T кодирования, чтобы найти решение этой проблемы минимизации. Предполагая, что для каждого сегмента имеется M шаблонов кодирования для первого и второго кодировщиков AE1, AE2, соответственно, полное количество комбинаций, которое должно тестироваться, это
2N
#=M
1
2
Для любой практической ситуации эта проблема является эффективно неразрешимой и более эффективное решение будет поэтому представлено ниже. Однако базовая идея все же - это решить проблему, сформулированную здесь, или, по меньшей мере, некоторую ее производную. Из теории оптимизации с ограничениями известно, что эти типы проблем могут быть переформулированы таким способом, что они разделятся на некоторое количество независимых проблем оптимизации, которые должны быть решены для каждого сегмента. Это может быть сделано при ограничениях, что скорости R, R передачи битов двух кодировщиков AE1, AE2 являются независимыми и аддитивными по сегментам. Аналогично, меры воспринимаемого искажения по сегментам должны быть аддитивными и независимыми.
Отметим, что решение этой проблемы дает результатом минимизацию воспринимаемого искажения, такую как прогнозируется мерой воспринимаемого искажения в зависимости от полного ограничения скорости передачи битов. Как следствие, скорость передачи битов может изменяться от сегмента к сегменту. В дополнение, воспринимаемое искажение не будет постоянным по сегментам. Однако разрешение этих изменений по сегментам дает результатом более низкое полное воспринимаемое искажение, чем когда-либо, скорость передачи битов, либо воспринимаемое искажение удерживается постоянным для каждого сегмента.
При ограничениях, заданных выше, проблема может быть переформулирована посредством определения N независимых функций стоимости, которые должны быть минимизированы:
<img file="00000004.tif" he="5" wi="117" img-content="undefined" img-format="tif" />
(I)
Проблема, которая должна быть решена, - это теперь найти λ такое, что:
<img file="00000005.tif" he="13" wi="68" img-content="undefined" img-format="tif" />
(II)
1,2 min
с T(n), выбранным, чтобы быть таким, что:
<img file="00000006.tif" he="9" wi="62" img-content="undefined" img-format="tif" />
(III)
T
Преимущество этой переформулировки проблемы состоит в том, что теперь N независимых проблем связаны через лагранжевый множитель λ. На практике это означает, что выбирается начальное значение λ. С этим значением минимизации, заданные в уравнении (III), могут быть решены независимо для каждого сегмента n. После этих оптимизаций может быть проверено, удовлетворяется ли уравнение (II). λ может конфигурироваться, базируясь на различии между целевой скоростью R и используемой полной скоростью передачи битов. Этот процесс может повторяться до тех пор, когда наилучшее, или удовлетворительное, значение λ будет найдено (базируясь на уравнении II).
1
2
1
2
1
2
1
2
1
2
2
2
1
2
1
2
1
1
1
Решение проблемы оптимизации, сформулированной в уравнении (III), влечет тестирование всех комбинаций шаблонов T, T кодирования для конкретного рассматриваемого сегмента n. Для конкретных индивидуальных кодировщиков AE1, AE2 обычно является возможным выбрать подмножество шаблонов T, T кодирования из всех возможных шаблонов T, T кодирования, когда известно априори, что шаблоны, попадающие вне подмножества приведут к неоптимальным решениям. Для объединенной оптимизации, заданной в уравнении (III), зависимость между двумя кодировщиками AE1, AE2 делает более трудным отбросить некоторые шаблоны T, T кодирования априори из рассмотрения в процессе оптимизации. Однако когда предполагается, что шаблон T кодирования известен, является возможным сделать выбор шаблонов T, которые не должны рассматриваться в процессе оптимизации, так как шаблоны T применяют к последнему кодировщику AE2 в линии, более конкретно, конкретный шаблон T кодирования, который выбирается для второго кодировщика AE2, не будет влиять на кодирование первого кодировщика AE1. Для первого кодировщика AE1 это не возможно, так как выбор T будет влиять на поведение второго кодировщика AE2 (см. уравнение I, где R зависит от как T, так и T). Поэтому невозможно отбрасывать шаблоны T кодирования для кодировщика AE1 без рассмотрения эффекта, оказываемого на кодировщик AE2. Ограничение полного набора шаблонов T кодирования для кодировщика AE1 является по сути намного более трудным для достижения. Однако для уменьшения вычислительной сложности является возможным ограничить количество шаблонов T кандидатов для кодировщика AE1, например, предполагая, что первый кодировщик AE1 работает в изоляции.
1
1
1
На практике проблема оптимизации, сформулированная в уравнении (III), таким образом, решается сначала посредством выбора шаблона T кодирования, и затем вычисляют остаточное ε, которое представляется кодировщику AE2. Так как T известно, второй кодировщик AE2 оптимизирует в соответствии с упрощенной версией уравнения (III):
<img file="00000007.tif" he="8" wi="98" img-content="undefined" img-format="tif" />
(IV)
2
1
Как упоминалось выше, является возможным решать эту оптимизацию в большей части выборов второго кодировщика AE2 без рассмотрения всех возможных шаблонов T кодирования. После того как минимизация решена, новый шаблон T для первого кодировщика AE1 может выбираться до тех пор, когда наилучшее решение уравнения (I) не будет найдено для рассматриваемого сегмента.
1
2
Таким образом, решение, данное в этом разделе, может быть суммировано в следующем алгоритме (A1): Поиск оптимальных шаблонов T, T кодирования для каждого сегмента плюс лагранжевого множителя λ, таких, что удовлетворяется целевая скорость передачи битов.
(A1):
Поиск λ:
Цикл по n:
1
Цикл по T(n):
0
Закодировать ε с помощью кодировщика AE1
2
Цикл по T(n):
1
Закодировать ε с помощью кодировщика AE2
Вывести J'(n) (см. уравнение IV)
2
Запомнить наилучшие T(n) и J'(n)
2
Конец цикла по T(n)
Вывести J(n) (см. уравнение I)
1
2
Запомнить наилучшие T(n), T(n) и J(n)
1
Конец цикла по T(n)
Конец цикла по n
Обновить λ
Конец поиска λ
1
2
В (A1) цикл по T используется для поиска наилучшего решения для уравнения (III), например, чтобы минимизировать глобальную функцию стоимости. Как часть этой проблемы, имеется цикл по T, который минимизирует функцию стоимости для второго кодировщика AE2, заданного в уравнении (IV). Отметим, что, в способе, которым проблема здесь сформулирована, оптимизация выполняется над некоторым количеством сегментов в одно и то же время. Внутри этого набора сегментов скорости передачи битов позволяется изменяться по сегментам. Во многих практических ситуациях только ограниченный набор сегментов могут вычисляться в одно и то же время. Имеются два варианта выбора для работы с этим ограничением:
1) λ определяется для каждого набора сегментов, каждый раз, так что скорость передачи битов внутри набора сегментов удовлетворяет требуемой целевой скорости передачи битов.
2) λ выбирается после каждого набора сегментов, чтобы осуществить компенсацию несоответствия между скоростью передачи битов и целевой скоростью передачи битов в прошлых операциях кодирования.
1
1
1
Ниже будет предполагаться, что кодировщик AE1 из фиг. 5 является синусоидальным кодировщиком и второй кодировщик AE2 является кодировщиком преобразования. Для первого кодировщика AE1 не все шаблоны T кодирования будут рассматриваться. Рассматриваются только шаблоны T кодирования, которые минимизируют функцию стоимости для некоторого λ(n):
<img file="00000008.tif" he="5" wi="67" img-content="undefined" img-format="tif" />
(V)
1
где D - это воспринимаемое искажение, измеренное после кодирования первым кодировщиком AE1.
1
1
1
1
Два кодировщика AE1, AE2 имеют одно и то же сегментирование, и каждый кодировщик AE1, AE2 использует перекрывающиеся сегменты на этапе кодирования и декодирования. Это требует усовершенствования алгоритма (A1), так как остаточный сигнал ε(n), необходимый для кодирования сегмента n кодировщиком 2, будет зависеть от шаблонов T(n-1), T(n) и T(n+1) кодирования.
1
1
1
1
Чтобы прояснить эту проблему, фиг. 6 показывает пример сегментирования и перекрытия, обозначенного треугольными промежутками, между сегментами для двух кодировщиков AE1, AE2, включающих в себя шаблоны кодирования. Как можно видеть на фиг. 6, остаточный сигнал ε(n) после первого кодировщика AE1 зависит от шаблонов T кодирования, которые были выбраны для первого кодировщика AE1 в сегментах, n-1, n и n+1. Обычно шаблон T(n+1) кодирования не известен, когда оптимизируется сегмент n, так как сегменты оптимизируются один за раз в последовательном порядке (см. алгоритм (A1)). Однако шаблон T(n-1) кодирования является известным, когда оптимизируется сегмент n, хотя это может не быть наилучшим решением, так как он будет также зависеть от решений, найденных в сегменте n.
1
1
1
1
2
Практическое решение - это взять T(n-1), такой как найденный в оптимизации предыдущего сегмента (n-1). Для следующего сегмента информированное предположение будет делаться в отношении того, что будет конечным кодированием, которое будет осуществлено для кодировщика AE1 для сегмента n+1. Для этой цели среднее λ наиболее недавних сегментов будет использоваться для выбора наилучшего шаблона T(n+1) кодирования в соответствии с уравнением V. Базируясь на этом, может быть вычислен остаточный сигнал ε(n), и теперь наилучшее T(n) может быть найдено в зависимости от λ в соответствии с (A1).
1
1
2
Отметим, что конечное значение ε(n-1) известно, только когда T(n) получит окончательную форму, и только затем может быть найдено конечное T(n-1).
1
2
Ради ясности, ниже дается более детальная версия (A2) алгоритма (A1), включающая в себя практическое решение, очерченное выше. (A2) находит оптимальные шаблоны T, T кодирования для каждого сегмента плюс лагранжевый множитель λ, так что удовлетворяется целевая скорость передачи битов. В рассмотрение принимается перекрытие между сегментами.
(A2):
Поиск λ:
Цикл по n:
1
Цикл по T(n):
0
1
Закодировать ε(n) с помощью кодировщика AE1 и T(n)
0
Закодировать ε(n+1) с помощью кодировщика AE1 и
1
информированного предположения о T(n+1)
1
0
0
0
Извлечь ε(n), базируясь на ε(n-1), ε(n), ε(n+1) с
1
T(n-1),
1
T(n),
1
T(n+1)
2
Цикл по T(n):
1
Закодировать ε(n) с помощью кодировщика AE2
Вывести J'(n) (см. уравнение IV)
2
Запомнить наилучшие T(n) и J'(n)
2
Конец цикла по T(n)
Вывести J(n) (см. уравнение I)
1
2
Запомнить наилучшие T(n), T(n) и J(n)
1
Конец цикла по T(n)
1
# Теперь конечное решение для T(n) найдено
1
2
# конечное ε(n-1) известно и конечное T(n-1) может быть
найдено
2
Цикл по T(n-1):
1
Закодировать ε(n-1) с помощью кодировщика AE2
Вывести J'(n-1) (см. уравнение IV)
2
Запомнить наилучшие T(n-1) и J'(n-1)
2
Конец цикла по T(n-1)
Конец цикла по n
Обновить λ
Конец поиска λ
1
1
1
2
2
1
Теперь будет описываться проблема оптимизации, которая должна решаться в связи с вариантом осуществления кодировщика, показанным на фиг. 1. В этом варианте осуществления проблема перекрывающихся промежутков, как описано для варианта осуществления из фиг. 5, преодолевается посредством того, чтобы делать λ постоянным для N последовательных сегментов, и соответствующие шаблоны T(1)...T(N) кодирования применяются к кодировщику AE1, каждый из которых минимизирует уравнение (V). В этом случае все из N сегментов для первого кодировщика AE1 могут быть выведены первыми. Для второго кодировщика AE2, в зависимости от λ, могут быть найдены шаблоны T(1)...T(N-1) кодирования, которые минимизируют уравнение (IV). Этим способом, несколько значений λ могут тестироваться до тех пор, когда не будет найдено одно, которое минимизирует уравнение (I). Тестирование может осуществляться для нескольких значений λ до тех пор, когда целевая скорость передачи битов будет удовлетворена с наименьшим возможным воспринимаемым искажением.
1
2
1
После того как решения для сегмента 1...N-1 найдены, будут оптимизироваться следующие сегменты N...2N-1. Ниже, алгоритм (A3) суммирует принцип поиска оптимальных шаблонов T и T кодирования для каждого сегмента плюс лагранжевый множитель λ, такой, что удовлетворяется целевая скорость передачи битов, принимающий в рассмотрение перекрытие между сегментами посредством удерживания λ постоянным.
(A3):
Поиск λ:
1
Цикл по λ:
1
Цикл по n(1...N):
0
1
1
Закодировать ε(n) с помощью AE1 и использовать λ для
1
1
минимизации J(n), см. уравнение (V)
1
Конец цикла по n
2
Цикл по n(1...N-1):
1
2
Закодировать ε(n) с помощью AE2 и использовать λ для
2
минимизации J'(n), см. уравнение (IV)
2
Конец цикла по n
2
Добавить все функции J(n) стоимости
1
Запомнить наилучшие λ и соответствующие наилучшие
шаблоны для обоих кодировщиков AE1, AE2
1
Конец цикла по λ
Запомнить наилучшие λ и соответствующие наилучшие шаблоны
для обоих кодировщиков AE1, AE2
Конец поиска λ
1
Отметим, что может казаться, что количество вложенных циклов на единицу меньше в алгоритме (A3), чем в (A2). Это, однако, неверно, так как кодирования в зависимости от λ и λ требуют дополнительного цикла для получения соответствующих шаблонов кодирования.
Преимущество алгоритма (A3) состоит в том, что сегментирование двух кодировщиков AE1, AE2 не должно выравниваться. Единственное требование состоит в том, что временный интервал (составленный, например, номерами n=1...N сегментов), который кодируется кодировщиком AE1, является, по меньшей мере, таким же большим, как временный интервал, кодируемый кодировщиком AE2, каждый раз.
2
Алгоритм (A3) реализуется и тестируется с единственным различием, что цикл по n идет вплоть до N вместо N-1. Это приводит к незначительным уменьшениям в точности кодирования в конце N сегментов, но эти эффекты не затрагивают качество. В этом варианте осуществления первый кодировщик AE1 использовал разное и гибкое сегментирование; см. [6], в то время как второй кодировщик AE2 использовал фиксированное сегментирование.
В вариантах осуществления кодировщика, описанных до сих пор, использовались два каскадных кодировщика. Однако согласно этому изобретению количество каскадных кодировщиков может быть легко расширено до более чем двух кодировщиков. Могут различаться два сценария.
Рассматриваются все шаблоны кодирования (например, к шаблонам-кандидатам никакое ограничение не применяется). В этом случае первый кодировщик может быть заменен каскадом из двух (или более) кодировщиков. Шаблоны кодирования каждого из этих отдельных кодировщиков будут объединяться вместе для каждогосегмента в больший набор шаблонов кодирования, что даст все возможные комбинации шаблонов кодирования. Теперь проблема может решаться, как если бы в каскаде присутствовали только два кодировщика.
Рассматриваются не все шаблоны кодирования, только те, которые минимизируют функцию стоимости, такую как задана в уравнении (V). В этом случае второй кодировщик рассматривается как каскад из двух кодировщиков, которые оптимизируются в зависимости от λ. Это 'вложенное' расширение может быть продолжено до большего количества каскадных кодировщиков.
0
1
2
0
1
2
Фиг. 7 показывает третий вариант осуществления аудиокодировщика, содержащий два кодировщика AE1, AE2, работающие параллельно. Он отличается от второго варианта осуществления кодировщика из фиг. 5 в том, что входной аудиосигнал ε разделяется разделяющим устройством SPLIT на первую и вторую части ε, ε сигнала, которые, когда складываются вместе, составляют входной сигнал ε. Два сигнала ε и ε подаются первому и второму кодировщикам AE1, AE2 соответственно.
1
2
1
2
01
02
3
4
1
2
1
2
1
2
Устройство CU управления третьего варианта осуществления аудиокодировщика из фиг. 7 представляет шаблоны T, T кодирования первому и второму кодировщикам, соответственно, для выполнения их кодирования. Таким образом, для каждых двух шаблонов T и T кодирования, которые выбраны, кодировщик AE1 обрабатывает первую часть ε сигнала, и, независимо, кодировщик AE2 обрабатывает вторую часть ε сигнала. Кодировщики AE1, AE2 генерируют остаточные сигналы ε и ε, соответственно, которые подаются устройству управления, которое, в соответствии с моделью восприятия, вычисляет меру воспринимаемого искажения, которая затем используется для нахождения наилучших шаблонов T, T кодирования из набора разрешенных шаблонов T, T кодирования, чтобы выбрать конечное кодирование сигнала. Для этой цели в рассмотрение принимаются не только мера воспринимаемого искажения, но также скорости R, R передачи битов (или их оценки) каждого из двух кодировщиков AE1, AE2. Как упоминалось для первого и второго вариантов осуществления аудиокодировщика, модель в [4] может использоваться для вычисления меры воспринимаемого искажения D.
Формальное определение проблемы, которая должна решаться устройством управления в третьем варианте осуществления аудиокодировщика, дается как
1
2
3
4
где D и D вычисляются на основе ε и ε соответственно. Предполагается, что воспринимаемые искажения могут просто быть сложены. Параметр n - это номер сегмента, предполагая, что сигнал будет кодироваться с помощью некоторого количества коротких временных сегментов, взятых из полного входного сигнала. Эта проблема минимизации должна минимизироваться при ограничении
T
где R - это целевая скорость передачи битов.
При ограничениях, заданных в предыдущем разделе, проблема может быть переформулирована посредством определения 2N независимых функций стоимости, которые должны быть минимизированы:
<img file="00000011.tif" he="5" wi="68" img-content="undefined" img-format="tif" />
(VI)
<img file="00000012.tif" he="5" wi="70" img-content="undefined" img-format="tif" />
(VII)
Проблема, которая должна быть решена, - это теперь найти λ, такое, что:
<img file="00000013.tif" he="13" wi="96" img-content="undefined" img-format="tif" />
(VIII)
1min
2min
с T(n) и T(n), выбранными, чтобы быть такими, что:
<img file="00000014.tif" he="9" wi="49" img-content="undefined" img-format="tif" />
(IX)
<img file="00000015.tif" he="9" wi="51" img-content="undefined" img-format="tif" />
(X)
T
1
2
Преимущество этой переформулировки проблемы состоит в том, что теперь имеется 2N независимых проблем, связанных через лагранжевый множитель λ. На практике это означает, что выбрано начальное значение λ. С этим значением минимизации, заданные в уравнениях (IX) и (X), могут быть решены независимо для каждого сегмента n и каждого кодировщика. После оптимизаций может проверяться, удовлетворяется ли уравнение (VIII). λ может конфигурироваться, базируясь на различии между целевой скоростью R и используемой полной скоростью (R+R) передачи битов. Этот процесс может повторяться до тех пор, когда наилучшее (или удовлетворительное) значение λ будет найдено (базируясь на уравнении (VIII)).
1
2
1
2
1
2
Так как оптимизация в этом параллельном случае является отдельной и делается независимо для индивидуальных кодировщиков AE1, AE2, в принципе, возможно выбирать подмножество шаблонов T, T кодирования из всех возможных шаблонов T, T кодирования, так как известно априори благодаря свойствам конкретного кодировщика AE1, AE2, что шаблоны T, T, попадающие вне подмножества, приводят к неоптимальным решениям. Это является значительным преимуществом параллельного кодировщика по сравнению с каскадными кодировщиками.
Параллельная оптимизация, описанная выше, может легко расширяться до более чем двух кодировщиков, как должно быть понятно из природы уравнений (VI) по (X).
0
В предпочтительном варианте осуществления параллельного кодировщика из фиг. 4 разделитель SPLIT входного сигнала содержит модуль фильтра модифицированного дискретного косинусного преобразования (MDCT), сконфигурированный разделять входные сегменты аудио входного сигнала ε на коэффициенты преобразования. Коэффициенты преобразования разделяются на группы, каждая представляет диапазоны коэффициентов масштаба, которые кодируются отдельно. Для каждого диапазона коэффициентов масштаба в каждом сегменте, коэффициент масштаба и шифровальная книга должны быть выбраны, так что это минимизирует функции стоимости, как задано в уравнениях (VI) и (VII), в зависимости от одного и того же значения λ. Для различных диапазонов коэффициентов масштаба могут использоваться разные модели шифровальной книги, чтобы оптимально использовать разные статистики коэффициентов преобразования в разных диапазонах коэффициентов масштаба. После оптимизации всех индивидуальных диапазонов коэффициентов масштаба по сегментам вычисляется полная скорость передачи битов, и λ конфигурируется для достижения целевой скорости передачи битов.
Кодировщики и декодеры согласно этому изобретению могут реализовываться на единичном кристалле с цифровым сигнальным процессором. Кристалл может затем встраиваться в аудиоустройства, независимые от возможностей сигнального процессора таких устройств. Кодировщики и декодеры могут альтернативно реализовываться чисто посредством алгоритмов, исполняющихся на главном сигнальном процессоре устройства приложения.
В формуле изобретения ссылочные знаки включены туда только по причинам ясности. Эти ссылки на примеры вариантов осуществления на чертежах не должны толковаться как ограничивающие объем формулы изобретения.
Список ссылок:
[1] Scott N. Levine, "Audio Representations for Data Compression and Compressed Domain Processing" Ph.D. Dissertation, December 2, 1998.
[2] Wuppermann et al. "Transmission system implementing different coding principles", US 5808569.
[4] S. van de Par, A. Kohlrausch, G. Charestan, R.Heusdens (2002), "A new psychoacoustical masking model for audio coding applications" IEEE Int. Conf. Acoust., Speech and Signal Process., Orlando, USA, 2002, pp. II-1805-1808.
[5] R. Heusdens, R. Vafin, W.B. Kleijn (2002), "Sinusoidal modeling using psychoacoustical matching pursuits" IEEE Signal Processing Lett., 9(8), pp. 262-265.
[6] R. Heusdens and S. van de Par (2002) "Rate-distortion optimal sinusoidal modeling of audio and Speech using psychoacoustical matching pursuits", IEEE Int. Conf. Acoust., Speech and Signal Process., Orlando, USA, 2002, pp. II-1809-1812.
[7] J. Princen and A. Bradley (1986) "Analysis/synthesis filter bank design based on time domain aliasing cancellation" IEEE Trans. Acoust., Speech, Signal Processing, 34, pp. 1153-1161.