УСТРОЙСТВО ДЛЯ МИКШИРОВАНИЯ МНОЖЕСТВА ВХОДНЫХ ДАННЫХ
DEVICE TO MIX MULTIPLE INPUT DATA

Настоящее изобретение относится к устройствам для микширования множества входных потоков данных для получения потока данных, которые могут применяться, например, в области систем конференц-связи, включая системы видео- и телеконференций.
Во многих приложениях в результате обработки нескольких аудиосигналов формируется один или как минимум меньшее количество аудиосигналов; такая обработка называется «микшированием». Поэтому процесс микширования аудиосигналов можно определить как объединение нескольких индивидуальных аудиосигналов в результирующий сигнал. Этот процесс используется, например, для создания музыкальных произведений для компакт-диска («dubbing»). В этом случае аудиосигналы различных инструментов вместе с одним или несколькими аудиосигналами, содержащими вокальные партии, обычно микшируются в песню.
Следующими областями применения, в которых микширование играет важную роль, являются системы видео- и телеконференций. Такая система обычно способна объединить несколько удаленных участников в конференцию, используя центральный сервер, который соответствующим образом микширует входящие аудио- и видеоданные от каждого зарегистрированного участника и отправляет каждому из них в ответ результирующий сигнал. Этот результирующий или выходной сигнал содержит аудиосигналы всех остальных участников конференции.
В современных цифровых системах конференц-связи необходимо учитывать ряд противоречивых целей и различных аспектов. Необходимо принимать во внимание качество воспроизводимого аудиосигнала и также возможность применения и эффективность разнообразных методов кодирования и декодирования для различных видов аудиосигналов (например, речевых, музыкальных и обычных сигналов). Следующий аспект, который требует внимания при разработке и внедрении систем конференц-связи, - это доступный частотный диапазон и проблема задержки в процессе передачи аудиосигнала.
Например, при решении проблемы соотношения качества, с одной стороны, и частотного диапазона, с другой стороны, приходится искать компромисс. Улучшение качества звука возможно при применении современных методик кодирования и декодирования, таких как ААС и ELD (AAC - улучшенный аудиокодек, с меньшей потерей качества при кодировании, чем МР3 при одинаковых размерах; ELD - усовершенствованная низкая задержка аудиосигнала).
При применении подобных систем качество аудиосигнала может снизиться в связи с более фундаментальными проблемами.
Одной из таких проблем является тот факт, что все передачи цифровых сигналов сталкиваются с проблемой необходимости квантования, которой можно избежать (по меньшей мере, в теории) при идеальных условиях бесшумной аналоговой системы. В связи с процессом квантования в сигнал, который должен быть подвергнут обработке, неизбежно привносятся шумы. Чтобы предотвратить возможные улавливаемые на слух отклонения, следует увеличить количество уровней квантования и таким образом увеличить разрешающую способность квантования. Это, в свою очередь, ведет к увеличению объема передаваемого сигнала. Иными словами, при использовании метода квантования уменьшается уровень возможных помех, а значит, улучшается качество сигнала. При определенных условиях это приводит к увеличению объема передаваемых данных, что может привести к несоответствию с шириной полосы, которая применяется в данной системе передачи аудиосигналов.
При работе с системами конференц-связи проблема соответствия качества, доступной ширины полосы и других параметров оказывается более сложной в связи с тем, что обычно обрабатываются два и более входных аудиосигналов. Поэтому при формировании выходного или итогового аудиосигнала должны учитываться пограничные параметры, имеющиеся у двух или более входных аудиосигналов.
Функционирование систем конференц-связи осложняется тем, что для ее эффективной работы необходима минимальная задержка передачи данных, которая позволяет участникам общаться напрямую.
В конфигурациях систем конференц-связи с низкой задержкой обычно ограничено число источников задержки, что может привести к проблеме обработки данных за пределами временной области, в которой микширование аудиосигналов производится путем накладывания или добавления соответствующих сигналов.
В случае работы с обычным аудиосигналом существует целый ряд методов для достижения компромисса между качеством сигнала и битрейтом. Эти методы позволяют найти оптимальное соответствие между такими противоречивыми параметрами, как качество восстановленного сигнала, битрейт, задержка, сложность вычисления и т.д.
Удобным методом нахождения соответствия, о котором идет речь, является так называемый метод репликации спектральной полосы (SBR). SBR-модуль обычно не используется в качестве составляющей части центрального кодера (такого, как кодер MPEG-4 AAC), но он является дополнительным кодером или декодером. Метод SBR применяет корреляцию между высокими и низкими частотами в составе аудиосигнала. Функционирование SBR-модуля основано на предположении, что более высокие частоты сигнала могут быть восстановлены на основе частот нижнего спектра. В связи с тем, что человеческое ухо воспринимает высокие частоты не линейно, незначительные отклонения в частоте могут услышать только люди с идеальным слухом. Поэтому неточности, появляющиеся в результате применения SBR-кодера, останутся незамеченными для большинства слушателей.
Кодер SBR предварительно обрабатывает аудиосигнал, который направляется в кодек MPEG-4, и разделяет входной сигнал по частотным диапазонам. Полоса низких частот или низкочастотный диапазон отделяется от полосы или диапазона высоких частот так называемой частотой перехода, которая устанавливается в зависимости от доступного битрейта и других параметров. Кодер SBR применяет блок фильтров для анализа частоты, который обычно представляет собой квадратурный зеркальный фильтр (QMF).
Кодер SBR выделяет значения энергии в диапазоне высоких частот, которые позже будут использоваться для их восстановления на основе диапазона низких частот.
Таким образом, SBR-кодер направляет SBR-данные или SBR-параметры вместе с фильтрованным аудиосигналом или фильтрованными аудиоданными в центральный кодер, который обрабатывает низкочастотный диапазон, то есть половину частот исходного аудиосигнала. В связи с этим обрабатывается меньший по объему образец, поэтому есть возможность установить более точно уровни квантования. Дополнительная информация, предоставляемая SBR-кодером, а именно SBR-параметры, присоединяется к битовому потоку с помощью кодера MPEG-4 или любого другого кодера в качестве вспомогательной информации. Для этого используется подходящий мультиплексор битового потока.
На стороне декодера входные битовые потоки демультиплексируются при помощи демультиплексора битового потока, который, по меньшей мере, отделяет SBR-данные и передает их в SBR-декодер. Однако до обработки SBR-данных SBR-декодером центральный декодер декодирует низкочастотный поддиапазон для того, чтобы восстановить аудиосигнал низкочастотного поддиапазона. Основываясь на SBR-значениях энергии (SBR-параметрах) и спектральной информации низкочастотного поддиапазона, SBR-декодер самостоятельно вычисляет высокочастотный поддиапазон аудиосигнала. Иными словами, SBR-декодер восстанавливает высокочастотный спектр диапазона, основываясь на данных низкочастотного поддиапазона, а также на SBR-параметрах, которые были переданы в битовом потоке, как объяснялось выше.
Кроме указанных выше возможностей SBR-модуля по улучшению качества восстановленного аудиосигнала SBR-модуль имеет возможность кодирования дополнительных источников шума как отдельных синусоидальных сигналов.
Таким образом, SBR-модуль представляет собой устройство, позволяющее найти компромисс между качеством аудиосигнала и подходящим битрейтом, что делает его эффективным при применении в области систем конференц-связи.
Однако из-за сложности и большого количества возможностей и опций кодированные при помощи SBR-кодера аудиосигналы микшируются во временной области после полного декодирования соответствующего аудиосигнала. После этого проводится следующий этап кодирования микшированного сигнала в SBR-сигнал. Кроме дополнительной задержки, связанной с кодированием сигналов во временную область, восстановление спектральной информации кодированного аудиосигнала может повлечь за собой значительную вычислительную сложность, которая будет нежелательна для портативных энергосберегающих устройств или приложений, применяющих сложные вычисления.
Целью настоящего изобретения является уменьшение сложности вычислений при микшировании кодированных с помощью SBR-кодера аудиосигналов.
Поставленная задача решается с помощью устройства в соответствии с п.1 или 3 формулы, метода согласно п.15 и программы согласно п.16.
Реализации настоящего изобретения основываются на предположении, что сложность вычисления можно уменьшить при следующих условиях: для частот, находящихся ниже частоты перехода, проводится микширование спектральных значений в спектральной области; для частот выше частоты перехода микширование проводится в SBR-области; для частот в промежутке между минимальным и максимальным значениями вычисляется, по меньшей мере, одно SBR-значение, на основе которого вычисляется SBR-значение на следующем этапе обработки аудиосигнала, или вычисляется спектральное значение или спектральная информация на основе соответствующих SBR-параметров.
Иными словами, реализация настоящего изобретения основывается на идее о том, что для частот, находящихся за пределом максимальной границы частоты перехода, микширование можно производить в SBR-области. Для частот, находящихся ниже минимальной границы частоты перехода, микширование можно производить в той же спектральной области путем прямой обработки соответствующих спектральных значений. Кроме этого, настоящее изобретение может производить микширование частот между максимальными и минимальными значениями в SBR-области или в спектральной области, определяя по соответствующим SBR-параметрам спектральные значения или определяя из спектральных значений SBR-параметры, а затем производя собственно микширование на основе полученных значений в SBR-области или в спектральной области. В этом контексте необходимо отметить, что частота перехода на выходе может быть определена на основе любой частоты перехода на входе.
Вследствие этого количество стадий обработки звукового сигнала при использовании настоящего устройства уменьшается и вычислительная сложность снижается, так как микширование частот за пределами верхней и нижней границ частоты перехода производится на основе прямого микширования в соответствующих областях. Определение параметров производится только для средней полосы между минимальным и максимальным значениями всех переходных частот. Основываясь на этих параметрах, вычисляется SBR-параметр и действительное спектральное значение. Во многих случаях, даже в зоне средних частот вычислительная сложность снижается, так как обработка данных и определение параметров производится не для всех потоков входных аудиосигналов.
В соответствии с настоящим изобретением, частота перехода на выходе может равняться одной их частот перехода на входе или может быть выбрана произвольно, принимая во внимание, например, психоакустическую оценку.
В вариантах настоящего изобретения полученные SBR-параметры или спектральные значения могут применяться в различных целях для выравнивания или для изменения SBR-параметров или спектральных значений в средней полосе диапазона.
Варианты настоящего изобретения будут продемонстрированы далее с помощью следующих фигур:
Фиг.1 показывает блок-схему системы конференц-связи.
Фиг.2 показывает блок-схему системы конференц-связи на основе общего аудиопотока.
Фиг.3 показывает блок-схему системы конференц-связи, функционирующую в частотной области с использованием метода микширования битового потока.
Фиг.4 показывает схему потока данных, состоящего из множества фреймов.
Фиг.5 иллюстрирует различные формы спектральных компонентов и спектральных данных.
Фиг.6а показывает упрощенную блок-схему устройства микширования первого фрейма первого входного потока данных и второй фрейм второго потока входных данных в соответствии с реализацией настоящего изобретения.
Фиг.6b показывает блок-схему разрешения частотно-временной сетки фрейма потока данных.
Фиг.7 показывает более детальную блок-схему одного из вариантов настоящего изобретения.
Фиг.8 показывает блок-схему устройства для микширования множественных входных потоков данных в соответствии с вариантом настоящего изобретения в контексте системы конференц-связи.
Фиг.9а и 9b показывают соответственно первый и второй фреймы первого и второго входных потоков данных так, как они поступают в устройство.
Фиг.9с показывает ситуацию наложения входящих фреймов, показанных на фиг.9а и 9b.
Фиг.9d показывает фрейм на выходе, полученный устройством в соответствии с настоящим изобретением, вместе с выходной частотой перехода, которая была уменьшена вдвое по сравнению с частотой перехода входных фреймов.
Фиг.9е показывает фрейм на выходе, полученный устройством в соответствии с настоящим изобретением. Частота перехода на выходе была увеличена по сравнению с частотами перехода входных фреймов.
Фиг.10 показывает соответствие высокочастотных и низкочастотных разрешений.
В соответствии с фиг.4-10 различные варианты настоящего изобретения будут описаны подробно.
Однако сначала, в соответствии с фиг.1-3, остановимся на основных проблемах, связанных с работой систем конференц-связи.
На фиг.1 показана блок-схема системы конференц-связи 100, так называемый сервер многоточечной конференции (MCU). При описании функционирования этой системы становится очевидно, что система конференц-связи 100, как это показано на фиг.1, работает во временной области.
Система конференц-связи 100, как это показано на фиг.1, принимает множественные потоки данных через необходимое количество входных каналов 110-1, 110-2, 110-3, на фиг.1 показано только три канала. Каждый из входных каналов 110 соединен с соответствующим декодером 120, а именно входной канал 110-1 первого входного потока данных соединяется с первым декодером 120-1, второй входной канал 110-2 соединяется со вторым декодером 120-2, третий входной канал 110-3 соединяется с третьим декодером 120-3.
Система конференц-связи 100 далее содержит необходимое количество сумматоров 130-1, 130-2, 130-3, три сумматора показаны на фиг.1. Каждый сумматор соответствует одному из входных каналов 110. Например, первый сумматор 130-1 соответствует первому входному каналу 110-1 и соответствующему декодеру 120-1.
Каждый из сумматоров 130 соединяется с выходным каналом декодера 120, который соответствует входному каналу 110. Иными словами, первый сумматор 130-1 соединяется со всеми декодерами 120, кроме первого декодера 120-1. Соответственно, второй сумматор 130-2 соединен со всеми декодерами 120, кроме второго декодера 120-2.
Каждый из сумматоров 130 имеет выходной канал, каждый из которых соединен с кодером 140. Так, первый сумматор 130-1 соединяется при помощи выходного канала с первым кодером 140-1. Соответственно, второй и третий сумматоры 130-2 и 130-3 соединяются со вторым и третьим кодерами 140-2 и 140-3.
В свою очередь, каждый из кодеров 140 соединен с соответствующим выходным каналом 150. Иными словами, первый кодер соответствует первому выходному каналу 150-1. Второй и третий кодеры 140-2 и 140-3 соответствуют выходным каналам 150-2 и 150-3.
Для более детальной иллюстрации системы конференц-связи 100 на фиг.1 показан терминал 160 первого участника конференции. Терминал 160 может представлять собой, например, цифровой телефон (например, телефон ISDN), систему передачи аудиосигнала через Интернет и т.д.
Терминал 160 содержит кодер 170, который соответствует первому входному каналу 110-1 системы конференц-связи 100. Терминал 160 также имеет декодер 180, который соединяется с первым выходным каналом 150-1 системы конференц-связи 100.
Подобные терминалы могут присутствовать на стороне остальных участников конференции. Эти терминалы не показаны на фиг.1 в целях упрощения. Необходимо отметить, что система конференц-связи 100 и терминалы 160 могут не располагаться в непосредственной близости друг от друга. Терминалы 160 и система конференц-связи 100 могут располагаться на расстоянии и связываться между собой с помощью WAN-технологии (WAN - глобальная сеть).
К терминалам 160 возможно подключение дополнительных устройств таких, как микрофоны, усилители, колонки, наушники, которые используются для более качественной передачи аудиосигнала к слушателю. В целях упрощения они не представлены на фиг.1.
Как было указано выше, система конференц-связи 100, представленная на фиг.1, - это система, функционирующая во временной области. Когда, например, первый участник говорит в микрофон (не показанный на фиг.1), кодер 170 терминала 160 кодирует аудиосигнал в соответствующий битовый поток и передает его в первый входной канал 110-1 системы конференц-связи 100.
Внутри системы конференц-связи 100 битовый поток декодируется первым декодером 120-1 и преобразуется обратно во временную область. Так как первый декодер 120-1 соединяется со вторым и третьим модулями микширования 130-1, 130-3, аудиосигнал, созданный первым участником, микшируется во временной области путем добавления восстановленного аудиосигнала к восстановленным далее аудиосигналам второго и третьего участников соответственно.
Подобным образом обрабатываются сигналы, полученные от второго и третьего участников на второй и третий входные каналы 110-2, 110-3, которые декодируются вторым и третьим декодерами 120-2 120-3 соответственно. Обработанные аудиосигналы второго и третьего участников передаются на первый модуль микширования 130-1, который, в свою очередь, передает микшированный во временной области аудиосигнал в первый кодер 140-1. Кодер 140-1 повторно кодирует аудиосигнал, формирует битовый поток и передает его на первый выходной канал 150-1 первому участнику конференции на терминал 160.
Подобным образом второй и третий кодеры 140-2, 140-3 кодируют добавленные аудиосигналы во временной области, которые были получены от второго и третьего сумматоров 130-2, 130-3 соответственно, и передают кодированные данные обратно соответствующим участникам через второй и третий выходные каналы 150-2, 150-3.
Для выполнения собственно микширования аудиосигналы полностью декодируются и добавляются в полном, несжатом виде. Далее, если это необходимо, проводится уровневая корректировка путем сжатия соответствующих выходных сигналов для того, чтобы избежать эффекта отсечения (в случае превышения допустимого диапазона значений). Отсечение происходит в том случае, если параметры одного из сигналов превышают или находятся ниже минимальной границы допустимого диапазона значений. В случае 16-битового квантования, которое применяется в работе с CD-дисками, допускается диапазон целых значений между -32768 и 32767 для отдельного дискретного значения.
В целях предотвращения возможных отклонений от допустимого диапазона применяются алгоритмы компрессии. Эти алгоритмы не допускают появление значений за пределами пороговых значений и таким образом поддерживают оцифрованный звуковой фрагмент в необходимом диапазоне значений.
При кодировании аудиоданных в системах конференц-связи, таких как система конференц-связи 100, показанная на фиг.1, иногда приходится производить микширование некодированных данных, что приводит к некоторым негативным последствиям. Кроме этого, скорость передачи данных при работе с кодированными аудиосигналами ограничена малым диапазоном частоты передачи, т.к. низкий диапазон означает низкую частоту дискретизации, а значит, меньший объем передаваемых данных согласно теореме Найквиста-Шэннона-Сэмплинга. Теорема Найквиста-Шэннона-Сэмплинга утверждает, что частота дискретизации зависит от диапазона дискретизируемого сигнала и она должна быть, по меньшей мере, в два раза больше диапазона.
Международный союз по телекоммуникациям (ITU) и отдел стандартизации в области телекоммуникаций (ITU-T) разработали несколько стандартов в области мультимедийных систем конференц-связи. Н.320 - это стандарт конференц-протоколов для ISDN. H.323 - это стандарт для систем конференц-связи, применяющих пакетную передачу данных (TCP/IP). H.323 представляет собой стандарт для аналоговых телефонных сетей и радиотелекоммуникационных систем.
Эти стандарты определяют не только процесс передачи сигналов, но и процессы кодирования и обработки аудиосигналов. Согласно стандарту Н.231 конференцией управляет один или несколько серверов, так называемые серверы многоточечной конференции (MCU). Сервер многоточечной конференции отвечает за обработку и распределение видео- и аудиоданных нескольким участникам конференции.
Для этого сервер многоточечной конференции отправляет каждому участнику микшированный выходной или результирующий сигнал, который содержит аудиоданные всех остальных участников конференции и обеспечивает данными соответствующих участников. На фиг.1 представлена не только блок-схема системы конференц-связи 100, но и показан поток сигналов в условиях конференции.
В рамках стандартов H.323 и Н.320 аудиокодеки класса G. 7хх применяются для работы в системах конференц-связи. Стандарт G. 711 применяется для ISDN-передачи в кабельных телефонных системах. При частоте дискретизации 8 кГц стандарт G. 711 покрывает аудиочастоту 300-3400 кГц, при этом необходимая скорость передачи составляет 64 Кбит/с при 8-битном квантовании. При кодировании применяется простое логарифмическое кодирование M-Law и A-Law, которое создает очень низкую задержку в 0.125 мс.
Согласно стандарту G.722 кодирование производится для большего диапазона частот от 50 до 7000 Гц при частоте дискретизации 16 кГц. Вследствие этого кодек достигает более высокого качества по сравнению с G. 7хх, который применяет более узкий диапазон. Скорость передачи составляет 48, 56 или 64 Кбит/с, задержка составляет 1,5 мс. Кроме этого существуют стандарты G.722.2 и G. 722.3, которые обеспечивают различимое качество речи при более низких битрейтах. Стандарт G.722.2 позволяет выбирать скорость передачи между 6.6 Кбит/с и 23.85 Кбит/с при задержке в 25 мс.
Стандарт G. 729 обычно применяется в IP-телефонии, которая определяется как voice-over-IP (голос через Интернет) коммуникация (VoIP). Данный кодек оптимизирован специально для передачи речи, он передает набор обработанных речевых параметров для последующего синтеза совместно с сигналом ошибки. В результате G. 729 достигает значительно лучшего уровня кодирования при приблизительной скорости 8 Кбит/с при аналогичной частоте дискретизации и диапазоне, как и стандарт G. 711. Однако более сложный алгоритм создает задержку около 15 мс.
Недостатком кодеков стандарта G.7.xx является то, что, специализируясь на кодировании речи, они обладают узкой частотой диапазона и вызывают трудности, если при кодировании речи необходимо добавить кодирование музыки, или при кодировании одной только музыки.
Несмотря на то, что система конференц-связи 100, как показано на фиг.1, может применяться для передачи и обработки речевых сигналов приемлемого качества, обычные аудиосигналы после обработки кодеками с низким уровнем задержки, которые применяются для речи, оказываются невысокого качества.
Иначе говоря, применение кодеков, предназначенных для кодирования и декодирования речевых сигналов, для обработки общих аудиосигналов, включая музыку, не приводит к положительным результатам с точки зрения качества. В процессе применения аудиокодеков для кодирования и декодирования общих аудиосигналов в рамках системы конференц-связи 100, как показано на фиг.1, возможно улучшение качества. Однако, как это будет детально показано на фиг.2, применение общих аудиокодеков в подобной системе конференц-связи может привести к другим нежелательным эффектам, одним из которых является увеличение периода задержки.
Прежде чем перейти к подробному описанию фиг.2, необходимо отметить, что в настоящем описании объекты обозначаются одним и тем же знаком, когда аналогичные объекты появляются в нескольких вариантах изобретения и показаны на нескольких схемах. Если нет необходимости дополнительного уточнения, объекты, обозначенные одинаково, могут функционировать аналогичным образом или быть полными эквивалентами, например, в программе, в отдельных характеристиках и т.д. В связи с этим объекты, которые указаны аналогичным образом на разных схемах для разных вариантов изобретения, могут применяться с одинаковыми спецификациями, параметрами и характеристиками. Конечно, могут появляться отклонения и различия в том случае, если, например, пограничные условия меняются от фиг. к фиг., от одного варианта изобретения к другому варианту.
Кроме того, обобщающие знаки будут использованы для обозначения групп или классов объектов, а не для отдельных объектов. На фиг.1 это уже было показано. Например, при обозначении первого входного канала на входе как входной канал 110-1, второго входного канала как входной канал 110-2, третьего входного канала как 110-3 входные каналы в целом обозначаются знаком 110. Иначе говоря, если нет особых указаний, в различных пунктах описания обобщающим знаком могут обозначаться любые объекты, относящиеся к этому классу.
Такой подход, когда классу объектов приписывается один знак, помогает сократить описание или описать варианты изобретения более кратко и понятно.
Фиг.2 показывает блок-схему системы конференц-связи 100 совместно с конференц-терминалом 160, которая является аналогичной системе конференц-связи на фиг.1. Система конференц-связи 100, показанная на фиг.2, также включает входные каналы 110, декодеры 120, сумматоры 130, кодеры 140 и выходные каналы 150, которые взаимосвязаны таким же образом, как и система конференц-связи 100, показанная на фиг.1. Конференц-терминал 160 на фиг.2 включает кодер 170 и декодер 180. Поэтому дается ссылка на систему конференц-связи 100, показанную на фиг.1.
Однако система конференц-связи 100, показанная на фиг.2, вместе с конференц-терминалом 160 на фиг.2 адаптированы для использования общего аудиокодека (кодер-декодер). Вследствие этого каждый из кодеров 140, 170 включает частотно-временной преобразователь 190, связанный с квантизатором/кодером 200. Частотно-временной преобразователь 190 обозначен на фиг.2 как «T/F», а квантизатор/кодер 200 - как «Q/С».
-1
-1
Каждый декодер 120, 180 включает декодер/деквантизатор 210, показанный на фиг.2 как «О/С», связанный с частотно-временным преобразователем 220, обозначенным на фиг.2 как «T/F». С целью упрощения временно-частотный преобразователь 190, квантизатор/кодер 200 и декодер/деквантизатор 210, так же как и частотно-временной преобразователь 220, показаны только для кодера 140-3 и декодера 120-3. Однако это описание относится и к другим аналогичным элементам.
Начиная с кодера 140 или кодера 170, аудиосигнал, поступающий во временно-частотный преобразователь 190, конвертируется в нем из временной области в частотную область или частотно-зависимую область. Далее аудиоданные, преобразованные в спектральные данные после обработки временно-частотным преобразователем 190, квантуются и кодируются в битовый поток, который затем поступает на выходные каналы 150 системы конференц-связи 100.
В случае декодеров 120 или 180 битовый поток, поступающий в декодеры, сначала декодируется и повторно квантуется, чтобы сформировать, по крайней мере, часть спектральной репрезентации аудиосигнала, который затем обратно конвертируется во временную область частотно-временным преобразователем 220.
Временно-частотные преобразователи 190, так же как и обратные элементы - частотно-временные преобразователи 220, применяются для формирования спектральной репрезентации, по крайней мере, части поступающего в них аудиосигнала и обратного преобразования спектральной части в соответствующую часть аудиосигнала во временной области.
В процессе преобразования аудиосигнала из временной области в частотную и обратно из частотной во временную область могут появляться отклонения, в связи с чем восстановленный или декодированный аудиосигнал может отличаться от исходного аудиосигнала. Дополнительно дефекты могут быть добавлены на последующих этапах квантования и деквантования, осуществляемых квантизатором/кодером 200 и декодером/деквантизатором 210. Другими словами, исходный аудиосигнал и восстановленный аудиосигнал могут отличаться друг от друга.
Временно-частотные преобразователи 190, так же как и частотно-временные преобразователи 220, могут применяться, например, на основе MDCT (модифицированное дискретное косинусное преобразование), MDST (модифицированное дискретное синусное преобразования), FFT-конвертера (быстрое преобразование Фурье), или другого Фурье-конвертера. Квантование и деквантование в рамках кодера/квантизатора 200 и декодера/деквантизатора 210 могут производиться, например, на основе линейного квантования, логарифмического квантования или более сложного алгоритма квантования, учитывающего особенности человеческого восприятия звука. Кодирующая и декодирующая части кодера/квантизатора 200 и декодера/деквантизатора 210 могут, например, использовать схему кодирования/декодирования Хаффмана.
Однако более сложные временно-частотные и частотно-временные преобразователи 190, 220, так же как и более сложные квантизаторы/кодеры и декодеры/деквантизаторы 200, 210, могут применяться в различных вариантах изобретения и системах, будучи частью, например, AAC-ELD кодера, как кодеров 140, 170, и ААС-ELD декодера, как декодеров 120, 180
Очевидно, что рекомендуется применять идентичные или соотносимые кодеры 170, 140 и декодеры 180, 120 в рамках системы конференц-связи 100 и конференц-терминалов 160.
Система конференц-связи 100, как показано на фиг.2, применяющая общую схему кодирования и декодирования аудиосигналов, также выполняет микширование аудиосигналов во временной области. Сумматоры 130 принимают восстановленный аудиосигнал во временную область, выполняют точное позиционирование и передают микшированные во временной области сигналы во временно-частотные преобразователи 190 последующего кодера 140. Так, система конференц-связи снова включает последовательную связь декодеров 120 и кодеров 140. По этой причине система конференц-связи 100, как показано на фиг.1 и 2, обычно определяется как «система тандемного кодирования».
Недостатком системы тандемного кодирования является ее сложность. Сложность микширования зависит от сложности применяемых декодеров и кодеров, она может увеличиться в несколько раз, если в системе задействованы несколько входных и выходных каналов. Принимая во внимание тот факт, что схемы кодирования и декодирования не бывают без потерь, система тандемного кодирования, применяемая в системах конференц-связи 100, показанных на фиг.1 и 2, обычно негативно влияет на качество звука.
Еще одним недостатком является то, что повторяющиеся этапы декодирования и кодирования увеличивают общую задержку между входными каналами 110 и выходными каналами 150 в рамках системы конференц-связи 100, которая определяется как абсолютная задержка. В зависимости от первоначальной задержки используемых декодеров и кодеров сама система конференц-связи 100 может увеличивать время задержки до такого уровня, при котором работа в рамках системы конференц-связи становится непривлекательной и даже невозможной. Обычно задержка в 50 мс считается максимальной задержкой, которая приемлема в диалоге.
Основным источником задержки являются временно-частотные преобразователи 190, а также частотно-временные преобразователи 220, которые отвечают за итоговую задержку в работе системы конференц-связи 100. Дополнительная задержка появляется в связи с работой конференц-терминалов 160. Задержка, связанная с работой остальных элементов системы, а именно квантизаторов/кодеров 200 и декодеров/деквантизаторов 210, менее значима, т.к. эти элементы могут функционировать при более высоких частотах по сравнению с временно-частотными преобразователями и частотно-временными преобразователями 190, 220. Большинство временно-частотных преобразователей и частотно-временных преобразователей 190, 220 функционируют в блоке или фрейме, что означает, что во многих случаях должна приниматься во внимание задержка в виде периода времени, который равен периоду, необходимому для заполнения буфера или памяти, имеющего длину фрейма блока. На этот период времени значительно влияет частота дискретизации, которая обычно составляет от нескольких кГц до нескольких десятков кГц, в то время как быстродействие квантизатора/кодера 200 и декодера/деквантизатора 210 определяются тактовой частотой базовой системы. Обычно она имеет значение частоты выше на 2, 3, 4 порядка или более.
Так, выше было продемонстрировано как функционируют системы конференц-связи на основе общих аудиокодеков, применяющих технологию микширования битового потока. Метод микширования битового потока может, например, быть применен на основе MPEG-4 AAC-ELD кодека, который позволяет избежать некоторых недостатков тандемного кодирования, о котором шла речь выше.
Однако необходимо отметить, что в принципе система конференц-связи 100, как показано на фиг.2, может работать на основе кодека MPEG-4 AAC-ELD с подобным битрейтом и значительно большим частотным диапазоном по сравнению с указанными ранее речевыми кодеками, относящимися к семейству кодеков G.7xx. Это подразумевает, что можно получить значительно лучшее качество для аудиосигналов всех типов при значительном увеличении битрейта. Несмотря на то, что для MPEG-4 AAC-ELD характерна задержка в пределах кодеков семейства G.7xx, что означает потенциальную возможность работы в рамках системы конференц-связи, как позано на фиг.2, на практике это оказывается невозможным. Далее на фиг.3 показана более практичная система на основе ранее представленного микширования битового потока.
Необходимо отметить, что в целях упрощения акцент, в основном, делается на работе кодека MPEG-4 AAC-ELD и его потоках данных и битовых потоках. Однако другие кодеры и декодеры могут применяться в рамках системы конференц-связи 100, как показано на фиг.3.
Фиг.3 показывает блок-схему системы конференц-связи 100, работающую согласно принципу микширования битового потока вместе с конференц-терминалом 160, как он показан на фиг.2. Сама система конференц-связи 100 - это упрощенная версия системы конференц-связи 100, показанной на фиг.2. Если быть более точным, декодеры 120 системы конференц-связи 100 на фиг.2 были заменены декодерами/деквантизаторами 220-1, 220-2, 210-3 на фиг.3. Иначе говоря, системы конференц-связи на фиг.2 и 3 различаются отсутствием частотно-временных преобразователей 120 декодеров 120.
Подобным образом кодеры 140 системы конференц-связи 100 на фиг.2 заменены квантизаторами/кодерами 200-1, 200-2, 200-3. Таким образом, временно-частотные преобразователи 190 кодера 140 отсутствуют, если сравнивать системы конференц-связи 100 на фиг.2 и 3.
В результате сумматоры 130 больше не функционируют во временной области, а из-за отсутствия частотно-временных преобразователей 220 и временно-частотных преобразователей 190 они функционируют в частотной или частотно-зависимой области.
Например, в случае кодеков MPEG-4 AAC-ELD временно-частотный преобразователь 190 и частотно-временной преобразователь 220, которые присутствуют только в конференц-терминале 160, основаны на MDCT-преобразовании. Таким образом, внутри системы конференц-связи 100 блоки микширования 130 производят микширование аудиосигналов в MDCT-частотном представлении.
Поскольку преобразователи 190, 220 являются основным источником задержки в случае системы конференц-связи 100, показанной на фиг.2, их исключение приводит к значительному уменьшению задержки. Кроме того, сложность, связанная с применением этих двух преобразователей 190, 220 внутри системы конференц-связи 100, также значительно снижается. Например, в случае MPEG-2 ААС декодера обратная MDCT-трансформация, реализуемая частотно-временным преобразователем 220, составляет приблизительно 20% общей сложности. Поскольку преобразователь MPEG-4 основан на подобной трансформации, соответствующая составляющая в общей сложности может быть исключена при удалении только одного частотно-временного преобразователя 220 из системы конференц-связи 100.
Возможно микширование аудиосигналов в MDCT-области или другой частотной области, так как в случае MDCT-преобразования или подобного преобразования Фурье эти преобразования являются линейными. Преобразования таким образом обладают свойством математической аддитивности, а именно:
и математической гомогенности, а именно
где f(x) - это функция преобразования, х и у - ее аргументы, а а - вещественная или комплексная константа.
Оба свойства MDCT-преобразования или другого Фурье-преобразования позволяют провести микширование в соответствующей частотной области подобно микшированию во временной области. Так, все вычисления могут с таким же успехом быть перенесены на спектральные значения. Преобразование данных во временной области не требуется.
При определенных обстоятельствах могут встретиться другие условия. Все релевантные спектральные данные должны соответствовать их временным индексам в процессе микширования для всех релевантных спектральных компонентов. Это не подходит для того случая, когда в процессе преобразования используется метод так называемого блокового переключения, при котором кодер конференц-терминала 160 может свободно переключаться между различными длинами блоков при определенных условиях. Блоковое переключение может представлять угрозу возможности однозначно присвоить отдельные спектральные значения сэмплам во временной области вследствие переключения между различными длинами блоков и соответствующими длинами MDCT-окна до тех пор, пока микшируемые данные не будут обработаны в пределах этих окон. Так как в общем случае системы с распределенными конференц-терминалами 160 в конечном итоге это не может быть гарантировано, может возникнуть необходимость комплексной интерполяции, которая, в свою очередь, может создать дополнительную задержку и сложность. Следовательно, в конечном итоге может быть рекомендовано не использовать процесс микширования битового потока, основанный на методе блокового переключения.
Напротив, AAC-ELD кодек использует единый размер блока, поэтому гарантируется более простая синхронизация частотных данных, что обеспечивает более простую реализацию процесса микширования. Иными словами, система конференц-связи 100, показанная на фиг.3, - это система, способная осуществлять микширование в области преобразований или частотной области.
Как раннее подчеркивалось, в целях исключения дополнительной задержки, вносимой преобразователями 190, 200 системы конференц-связи 100, показанной на фиг.2, кодеки, применяемые в конференц-терминалах 160, используют окно фиксированной длины и формы. Это позволяет применить описанный выше процесс микширования без преобразования аудиопотока обратно во временную область. Этот подход обеспечивает ограничение количества дополнительно вносимых алгоритмических задержек. Кроме того, сложность снижается благодаря отсутствию этапов обратных преобразований в декодере и этапов прямых преобразований в кодере.
Однако в рамках системы конференц-связи 100, показанной на фиг.3, может возникнуть необходимость в повторной дискретизации аудиоданных после микширования сумматором 130, что может привести к появлению дополнительного шума квантования.
Дополнительный шум квантования может возникнуть, например, из-за разных шагов квантования различных аудиосигналов, которые поступают в систему конференц-связи 100. В результате в случае, например, очень низкого битрейта передачи, при котором количество шагов квантования ограничено, процесс микширования двух аудиосигналов в частотной области или области преобразований может привести к появлению нежелательного дополнительного шума или другим искажениям основного сигнала.
Прежде чем начать описание первого варианта настоящего изобретения, которое представляет собой устройство для микширования множества потоков входных данных в соответствии с фиг.4, необходимо кратко описать поток данных или битовый поток, а также содержащиеся в них данные.
Фиг.4. схематично показывает битовый поток или поток данных 250, который содержит как минимум один или в большинстве случаев более одного фрейма 260 аудиоданных в спектральной области. Если быть более точным, фиг.4 показывает три фрейма 260-1, 260-2, 260-3 аудиоданных в спектральной области. Кроме того, поток данных 250 может содержать дополнительную информацию или блоки дополнительной информации 270, такие как управляющие параметры, определяющие, например, метод кодирования аудиоданных, другие управляющие параметры, информацию, касающуюся временных индексов, или другую релевантную информацию. Естественно, поток данных 250, показанный на фиг.4, может содержать дополнительные фреймы или фрейм 260 может содержать аудиоданные более чем одного канала. Например, в случае стереоаудиосигнала каждый из фреймов 260 может, например, содержать аудиоданные левого канала, правого канала, аудиоданные, производные от левого и правого каналов, или любую комбинацию этих данных.
Так, фиг.4 показывает, что поток данных 250 может не только содержать фрейм аудиоданных в спектральной области, но также и дополнительную управляющую информацию, управляющие параметры, статусные параметры, статусную информацию, протоколозависимые параметры (например, контрольные суммы) и т.д.
Фиг.5 схематично показывает информацию, касающуюся спектральных компонентов, например, как они включены во фрейм 260 потока данных 250. Если быть более точным, фиг.5 показывает упрощенную блок-схему информации в спектральной области отдельного канала фрейма 260. В спектральной области фрейм аудиоданных может быть описан, например, посредством его параметров интенсивности I как функции частоты f. В дискретных системах, таких как, например, цифровые системы, частотное разрешение является дискретным, так что спектральная информация обычно представлена для определенных спектральных компонентов, таких как отдельные частоты или узкие диапазоны и поддиапазоны. Отдельные частоты или узкие диапазоны, так же как и поддиапазоны, являются спектральными компонентами.
Фиг.5 схематично показывает распределение интенсивности для шести отдельных частот 300-1, …, 300-6, а также частотный диапазон или поддиапазон 310, содержащий, как в случае, показанном на фиг.5, четыре отдельные частоты. Как отдельные частоты или соответствующие узкие частоты 300, так и поддиапазоны или частотный диапазон 310 формируют спектральные компоненты, по отношению к которым фрейм содержит информацию относительно аудиоданных в спектральной области.
Информацией, относящейся к поддиапазону 310 может, например, быть общая интенсивность или среднее значение интенсивности. Кроме интенсивности или других энергетических параметров, таких как амплитуда, энергия самого спектрального компонента или других параметров, производных от энергии или амплитуды, во фрейм могут быть включены фазовая информация или другая информация. Таким образом, они могут рассматриваться как информация, относящаяся к спектральному компоненту.
В настоящем изобретении не применяется общепринятый метод микширования, предполагающий такую последовательность действий, когда все входящие потоки декодируются, затем проводится обратное преобразование во временную область, затем микширование и повторное кодирование сигналов.
Варианты устройства согласно настоящему изобретению основаны на микшировании, выполненном в частотной области соответствующего кодека. Возможно применение AAC-ELD-кодека или любого другого кодека с общим окном преобразований. В таком случае для микширования соответствующих данных не требуется временно-частотное преобразование. Варианты устройства согласно настоящему изобретению используют доступ ко всем параметрам битового потока, таким как величина шага квантования и другим параметрам; эти параметры могут использоваться для формирования выходного микшированного битового потока.
Варианты устройства согласно настоящему изобретению функционируют на том основании, что микширование спектральных линий или спектральной информации, касающейся спектральных компонентов, выполняется при помощи взвешенного суммирования источника спектральных линий или спектральной информации. Весовые коэффициенты могут принимать значения от нуля до единицы. Нулевое значение обозначает, что источники считаются нерелевантными и не учитываются. Группа спектральных линий, таких как диапазоны или масштабный коэффициент диапазонов, могут использовать один и тот же весовой коэффициент в случае реализации настоящего изобретения. Однако, как было показано выше, весовые коэффициенты (например, распределение нулей или единиц) могут варьироваться для спектральных компонентов отдельного фрейма одного входного потока данных. Варианты устройства согласно настоящему изобретению не требуют исключительного использования весовых коэффициентов нуля или единицы для микширования спектральной информации. При определенных обстоятельствах, когда во фрейме входного потока данных имеется не единичная спектральная информация, а множество спектральных линий, весовой коэффициент может принимать значения, отличные от нуля или единицы.
Особенным случаем является ситуация когда все диапазоны спектрального компонента одного источника (входного потока данных 510) установлены с коэффициентом 1, а все коэффициенты других источников установлены в 0. В этом случае входной битовый поток одного источника полностью копируется как конечный микшированный битовый поток. Весовые коэффициенты могут быть вычислены на межфреймовой основе, но также могут вычисляться или определяться на основе длинных групп или последовательностей фреймов. Естественно, даже внутри такой последовательности фреймов, как и внутри одного фрейма, весовые коэффициенты могут отличаться для различных спектральных компонентов, как сказано выше. В некоторых вариантах устройства согласно настоящему изобретению весовые коэффициенты могут быть вычислены или определены в соответствии с результатами психоакустической модели.
f
c
f
c
Психоакустическая модель или соответствующий модуль может вычислить энергетический коэффициент r(n) между микшированным сигналом, имеющим значение энергии E, в котором содержатся только некоторые входные потоки, и полным микшированным сигналом, имеющим значение энергии E. Отношение энергий в этом случае определяется как 20 десятичных логарифмов отношения E к E.
Если отношение достаточно велико, каналы, имеющие незначительное значение, могут рассматриваться как скрытые каналы. Таким образом, осуществляется уменьшение относительной энтропии, означающее, что используются только те потоки, которые не совсем заметны, к которым применен весовой коэффициент 1, в то время как остальные потоки - как минимум один поток спектральной информации одного спектрального компонента - не учитываются. Другими словами, к ним применяется весовой коэффициент 0.
Если быть более точным, в данном случае применяется следующая формула:
и
а вычисление значения r(n) производится согласно формуле:
где n - индекс входного потока данных, а N - количество всех или релевантных входных потоков данных. Если отношение r(n) достаточно велико, каналы или фреймы входного потока данных 510, имеющие незначительное значение, могут быть показаны как скрытые доминирующими каналами или фреймами. Таким образом может осуществляться уменьшение относительной энтропии, означающее, что используются только те спектральные компоненты потока, которые не совсем заметны, в то время как остальные не учитываются.
Значения энергий, которые должны быть рассмотрены в выражениях (3)-(5), могут, например, быть определены на основе значений интенсивности путем вычисления квадрата относительных показателей интенсивности. Если информация о спектральных компонентах содержит другие значения, производятся подобные вычисления в зависимости от формы информации, содержащейся во фрейме. В случае если информация представлена комплексными значениями, необходимо выполнить вычисление модулей вещественных и мнимых компонентов отдельных значений, формирующих информацию о спектральных компонентах.
n
Не считая отдельных частот, для применения психоакустического модуля в соответствии с выражениями (3)-(5) суммы в выражениях (3) и (4) могут содержать более чем одну частоту. Иными словами, в выражениях (3) и (4) соответствующие значения энергии E могут быть заменены обобщенным значением энергии, соответствующим множеству отдельных частот, энергии частотного диапазона или, в более общем смысле, одной частью спектральной информации или или множеством спектральных данных, касающихся одного или более спектрального компонента.
В связи с тем, что кодек AAC-ELD применяет спектральные линии отдельных диапазонов таким образом, что человеческая система восприятия аудиосигналов, определение нерелевантности отдельных компонентов производится так же, как и в психоакустической модели. Применяя психоакустическую модель таким образом, при необходимости возможно удаление или замена отдельных участков сигнала одного частотного диапазона.
Как показали психоакустические исследования, маскировка сигнала другим сигналом зависит от типа сигнала. В качестве минимального порога для определения нерелевантности применяется самый неблагоприятный сценарий. Например, для маскировки шума четким, качественным звуком обычно требуется разница 21-28 дБ. Тесты показали, что пороговое значение 28.5 дБ дает хороший результат замены. В итоге это значение может быть улучшено, если принять во внимание действительный частотный диапазон.
Значения r(n) больше, чем -28.5 дБ, в соответствии с выражением (5) могут быть рассмотрены как нерелевантные в плане психоакустической оценки или оценки нерелевантности на основе одного или более рассматриваемых спектральных компонентов. Для разных спектральных компонентов могут применяться различные значения. Таким образом, оказывается важным применение порогов в качестве индикаторов психоакустической нерелевантности входного потока данных для рассматриваемых фреймов 10-40 дБ, 20-30 дБ, 25-30 дБ.
Преимуществом является то, что побочные эффекты тандемного кодирования проявляются в меньшем количестве или вообще не проявляются благодаря меньшему количеству шагов повторного квантования. В связи с тем, что каждый шаг квантования связан с угрозой уменьшения дополнительного шума квантования, общее качество аудиосигнала может быть улучшено благодаря применению варианта настоящего изобретения в форме устройства для микширования множества входных потоков данных. Это касается тех случаев, когда поток выходных данных формируется таким образом, что распределение уровней квантования фрейма происходит при сравнении распределения уровней квантования фрейма или частей входного потока.
Фиг.6а показывает упрощенную блок-схему устройства 500 для микширования фреймов первого входного потока данных 510-1 и второго входного потока данных 510-2. Устройство 500 включает процессорный блок 520, который формирует выходной поток данных 530. Если быть более точным, устройство 500 и процессорный модуль 520 формируют на основе первого фрейма 540-1 и второго фрейма 540-2 первого и второго входных потоков 510-1 и 510-2 соответственно выходной фрейм 550, содержащийся в выходном потоке данных 530.
Как первый фрейм 540-1, так и второй фрейм 540-2 содержат спектральную информацию относительно первого и второго аудиосигналов соответственно. Спектральная информация разделяется на нижнюю часть спектра и верхнюю часть соответствующего спектра, где верхняя часть спектра описывается SBR-данными посредством энергии или энергозависимыми значениями в разрешении частотно-временной сетки. Нижняя и верхняя части спектра разделены между собой так называемой частотой перехода, которая является одним из SBR-параметров. Нижние части спектра описываются с помощью спектральных значений внутри соответствующих фреймов 540. Это схематично представлено на фиг.6а на примере спектральной информации 560. Спектральная информация более подробно будет описана ниже в соответствии с фиг.6б.
Применение варианта настоящего изобретения в форме устройства 500 рекомендовано в случае, если последовательность фреймов 540 во входном потоке данных 510 имеет близкие или одинаковые временные индексы.
Выходной фрейм 550 также содержит похожее представление спектральной информации 560, которая схематично представлена на фиг.6а. Соответственно, спектральная информация 560 выходного фрейма 550 также содержит верхнюю и нижнюю части выходного спектра, которые соприкасаются на частоте перехода. Подобно фреймам 540 входного потока данных 510 нижняя часть выходного спектра выходного фрейма 550 также описывается посредством спектральных значений, в то время как верхняя часть спектра описывается посредством SBR-данных, содержащих значения энергий в выходном разрешении частотно-временной сетки.
Как было указано выше, процессорный блок 520 предназначен для формирования и передачи выходного фрейма. Необходимо отметить, что в общем случае частота перехода первого фрейма 540-1 и частота перехода второго фрейма 540-2 различны. Вследствие этого процессорный блок функционирует таким образом, что выходные спектральные данные, соответствующие частотам ниже минимального значения первой частоты перехода, второй частоты перехода и выходной частоты перехода формируются непосредственно в спектральной области на основе первых и вторых спектральных данных. Это может достигаться, например, добавлением или линейной комбинацией соответствующей спектральной информации, относящейся к одним и тем же спектральным компонентам.
Кроме того, процессорный блок 520 далее формирует выходные SBR-данные, описывающие верхнюю часть выходного спектра выходного фрейма 550, обрабатывая соответствующие первые и вторые SBR-данные первого и второго фреймов 540-1, 540-2 непосредственно в SBR-области. Более подробно это показано на фиг.9а-9е.
Как будет показано ниже, процессорный блок 520 может функционировать таким образом, что для частотного диапазона между минимальным и максимальным значениями, как они были определены выше, определяется, по крайней мере, одно SBR-значение из как минимум первых или вторых спектральных данных. На его основе определяется SBR-значение выходных SBR-данных.
Например, это может быть в том случае, когда частота рассматриваемого спектрального компонента ниже, чем максимальная частота перехода, но выше ее минимального значения.
В таком случае возможна ситуация, когда как минимум один из входных фреймов 540 содержит спектральные значения нижней части спектра в то время как выходной фрейм ожидает SBR-данные, так как соответствующий спектральный компонент лежит выше выходной частоты перехода. Иными словами, в этом промежуточном частотном диапазоне между минимальным и максимальным значениями рассматриваемой частоты перехода необходимо определить соответствующие SBR-данные на основе спектральных данных нижней части одного из спектров. Выходные SBR-данные рассматриваемого спектрального компонента затем определяются на основе полученных ранее SBR-данных. Более подробное описание этого процесса в соответствии с настоящим изобретением представлено ниже на фиг.9а-9е.
С другой стороны, для отдельного спектрального компонента или частоты, которая находится в переходной зоне, выходной фрейм 550 ожидает спектральные значения, так как соответствующий спектральный компонент принадлежит нижней части выходного спектра. Однако один из входных фреймов 540 может включать только SBR-данные для соответствующего спектрального компонента. В этом случае желательно определить соответствующую спектральную информацию либо на основе SBR-данных либо на основе спектральной информации или ее компонентов, соответствующих нижней части спектра рассматриваемого входного фрейма. Другими словами, в некоторых случаях необходимо определить спектральные данные на основе SBR-данных. На основе полученного спектрального значения определяется соответствующее спектральное значение спектрального компонента непосредственно при его обработке в спектральной области.
Чтобы облегчить понимание процесса функционирования устройства 500 в соответствии с вариантом настоящего изобретения и процесса SBR в целом на фиг.6b, подробно представлена спектральная информация 560, включающая SBR-данные.
Как указывалось в водной части описания, устройство SBR или SBR-модуль функционирует обычно как отдельный кодер или декодер рядом с основным MPEG-4 кодером или декодером. Устройство SBR основано на применении квадратурного зеркального банка фильтров (QMF), который представляет линейное преобразование.
Внутри потока данных или битового потока MPEG-кодера устройство SBR содержит порции информации для того, чтобы облегчить корректное декодирование частотных данных. Порции информации для устройства SBR будут описаны в терминах сетки фреймов или разрешения временно-частотной сетки. Временно-частотная сетка содержит информацию относительно фреймов 540, 550.
Фиг.6b схематично показывает такую временно-частотную сетку для отдельного фрейма 540, 550. Абсцисса является временной осью, ордината является осью частоты.
x
x
Частота f спектра показана разделенной посредством частоты перехода (f) 570 на нижнюю часть 580 и верхнюю часть 590. Если нижняя часть спектра 580 находится в диапазоне от минимально допустимой частоты (например, 0 Гц) до частоты перехода 570, верхняя часть спектра начинается от частоты перехода 570 и обычно заканчивается при значении, равном ее удвоенному значению (2 f), как это показано на фиг.6b на линии 600.
Нижняя часть спектра 580 обычно описывается спектральными данными или спектральными значениями 610 как особая область, так как во многих кодеках, работающих на основе фреймов и временно-частотных преобразователей, соответствующий фрейм аудиоданных полностью преобразуется в частотную область так, что спектральные данные 610 обычно эксплицитно не содержат внутренней фреймовой временной зависимости. Вследствие этого для нижней части спектра 580 спектральные данные 610 не могут быть полностью корректно отображены в такой частотно-временной системе координат, как это показано на фиг.6b.
Как было сказано ранее, SBR-устройство функционирует на основе временно-частотного QMF-преобразования, разделяя, по меньшей мере, верхнюю часть спектра 590 на множество поддиапазонов, где каждый из поддиапазонных сигналов имеет временную зависимость или временное разрешение. Иными словами, преобразование в поддиапазонную область, произведенное SBR-устройством, создает «микшированную частотно-временную репрезентацию».
Как указывалось во вступительной части описания, основываясь на предположении, что верхняя часть спектра 590 во многом подобна нижней части спектра 580, то есть между ними наблюдается значительная корреляция, SBR-устройство способно получать энергозависимые значения или значения энергии амплитуды спектральных данных нижней части спектра 580, скопированные для спектральных компонентов верхней части спектра 590. Таким образом, верхняя часть спектральных данных дублируется путем копирования спектральной информации нижней части спектра 580 в частоты верхней части спектра 590 и модификацией их соответствующих амплитуд, как это указано в названии самого устройства.
Поскольку временное разрешение нижней части спектра 580, по своей сути, уже содержится, например, в фазовой информации или других параметрах, описание поддиапазона верхней части спектра 590 обеспечивает непосредственный доступ к временному разрешению.
SBR-устройство формирует SBR-параметры, содержащие ряд временных слотов для каждого SBR-фрейма, который идентичен фреймам 540, 550, в случае если длины SBR-фреймов и длины лежащих в основе кодируемых фреймов совместимы, и при этом ни SBR-устройство, ни лежащий в основе кодер или декодер не используют метод блочного переключения. Это пограничное условие выполняется, например, кодеком MPEG-4 AAC-ELD.
Временные слоты разделяют время доступа фреймов 540, 550 SBR-модуля на небольшие одинаковые временные отрезки. Количество этих временных отрезков в каждом SBR-фрейме определяется до проведения кодирования соответствующего фрейма. SBR-устройство, применяемое кодеком MPEG-4 AAC-ELD, имеет 16 временных слотов.
Эти временные слоты затем комбинируются в один или более пакеты. Пакет содержит два или более временных слота, соединенных в группу. Каждый пакет имеет определенное количество данных о SBR-частотах, с которыми он ассоциируется. В сетке фреймов количество и длины временных слотов хранятся в пакетах.
На упрощенной схеме спектральной информации 560, представленной на фиг.6, показаны первый и второй пакеты 620-1, 620-2. Пакет 620 можно определить, зная длину одного временного слота; кодек MPEG-4 AAC-ELD применяет SBR-фреймы, принадлежащие одному из классов: FIXFIX или LD_TRAN. Несмотря на то, что в принципе возможно различное распределение временных слотов на пакеты, в настоящем описании делается ссылка на те способы распределения, которые применяются кодеком MPEG-4 AAC-ELD.
FIXFIX класс разделяет 16 доступных временных слотов на несколько равнозначных пакетов (например, на 1, 2, 4 пакета, каждый из которых содержит 16, 6, 4 временных слота соответственно). LD_TRAN класс содержит два или три пакета, каждый из которых содержит два слота. Пакет, содержащий два временных слота, содержит переход в аудиосигнале или, другими словами, резкое изменение аудиосигнала, например повышение звука или резкий звук. Временные слоты до и после перехода группируются в два пакета, если они обладают достаточной длиной.
Иными словами, в связи с тем, что SBR-модуль позволяет динамически разделять фреймы на пакеты, поэтому на переход в аудиосигнале возможна реакция с более точным частотным разрешением. В случае если переход присутствует в поступившем фрейме, SBR-кодер делит фрейм на подходящие структуры пакетов. Как указывалось ранее, разделение фрейма стандартизовано в случае AAC-ELD кодека, применяющего SBR; оно зависит от позиции перехода внутри временного слота и определяется переменной TRANPOS.
В случае присутствия перехода SBR-кодер применяет класс SBR-фреймов LD_TRAN, который обычно содержит три пакета. Стартовый пакет содержит начало фрейма до позиции перехода с индексами временных слотов от нуля до TRANPOS-1. Переход включается в пакет, содержащий два временных слота с индексами временных слотов от TRANPOS до TRANPOS+2. Третий пакет включает все последующие временные слоты с индексами TRANPOS+3 - TRANPOS+16. Минимальная длина пакета для кодека AAC-ELD с применением SBR ограничена двумя слотами, поэтому если переход находится близко к границе фрейма, то фрейм разделяется только на два пакета.
На фиг.6b показана ситуация, когда два пакета 620-1 и 620-2 равнозначны по длине и принадлежат к классу SBR-фреймов FIXFIX. Каждый из пакетов содержит 8 временных слотов.
Частотное разрешение, предписанное каждому пакету, определяет количество значений энергии или SBR-значений, которые рассчитываются и хранятся для каждого пакета. SBR-устройство в контексте AAC-ELD кодека может переключаться с высокого на низкое разрешение. Если имеется пакет с высоким разрешением, то он сравнивается с пакетом с низким разрешением. Для пакета с высоким разрешением будет применяться в два раза больше значений энергии для более точного частотного разрешения по сравнению с пакетом низкого частотного разрешения. Количество частотных значений для пакетов с высокой и низкой частотой зависит от параметров кодера, таких как битрейт, частоты дискретизации и других параметров. В случае кодека MPEG-4 AAC-ELD SBR-устройство часто использует 14-16 значений для пакетов с высоким разрешением. Соответственно для пакетов с низким разрешением количество значений энергии составляет от 7-8 для каждого пакета.
Фиг.6b показывает для каждых двух пакетов 620-1, 620-2 временно-частотные области 630-1a, …, 630-1f, 630-2a, …, 630-2f, каждая из временно-частотных областей представляет одно значение энергии или энергозависимую величину SBR. В целях упрощения показаны три временно-частотные области 630 для каждого из двух пакетов 620-1, 620-2.
Кроме того, в этих же целях, для пакетов 620-1, 620-2 распределение частот временно-частотной области 630 производилось одинаково. На схеме представлен только один из множества возможных вариантов. Если быть более точным, временно-частотная область 630 может быть распределена индивидуально для каждого из пакетов 620. Нет необходимости разделять спектр или его верхнюю часть 590 таким же образом при переходе между пакетами 620. Необходимо отметить, что число временно-частотных областей 630 также может зависеть от рассматриваемого пакета 620.
Кроме того, каждый пакет может содержать дополнительные SBR-данные, значения энергии шумовых и синусоидальных сигналов. Эти дополнительные значения с целью упрощения не показаны. Значения энергии шумовых сигналов являются значением энергии соответствующей временно-частотной области 630 предопределенного источника шума. Значения энергии синусоидальных сигналов соотносятся с синусоидальными колебаниями предопределенных частот, значение энергии равно значению энергии соответствующей временно-частотной области. Как правило, два или три значения шумовых или синусоидальных значений могут содержаться в пакете 620. Однако возможно большее или меньшее количество этих значений.
Фиг.7 показывает более подробную блок-схему устройства 500, соответствующего варианту настоящего изобретения, представленного на фиг.6а. Поэтому ссылки касаются описания на фиг.6а.
В связи с распределением спектральной информации и репрезентации на фиг.6b для вариантов настоящего изобретения рекомендуется первоначально провести анализ фреймовых сеток с целью формирования фреймовой сетки выходного фрейма 550. Следовательно, процессорный блок 520 включает анализатор 640, в который поступают два входных потока данных 510-1, 510-2. Процессорный блок 520 далее содержит блок спектрального микширования 650, в котором входные потоки 510 или выходные данные анализатора 640 объединяются. Кроме этого, процессорный блок 520 также содержит блок SBR-микширования 660, который объединяется с входным потоком данных 510 или выходными данными анализатора 640. Процессорный блок 520 далее содержит блок оценки 670, который объединяется с двумя входными потоками данных 510 и/или анализатором 640 для получения обработанных данных и/или входных потоков, содержащих фреймы 540. В зависимости от конкретной реализации изобретения блок оценки 670 может объединяться как минимум с одним из блоков спектрального микширования 650 или блоком SBR-микширования 660 для того, чтобы обеспечить, по крайней мере, один из них расчетным SBR-значением или расчетным спектральным значением для частот в ранее определенной промежуточной области между максимальным и минимальным значениями частот перехода.
Блок SBR-микширования 660, так же как и блок спектрального микширования 650 объединен с микшером 680, который формирует и передает выходной поток данных 530, содержащий выходной фрейм 550.
В зависимости от режима работы анализатор 640 используется для анализа фреймов 540 с целью определения фреймовых сеток, содержащихся внутри, и формирования новой фреймовой сетки, включающей, например, частоту перехода. В то время как блок спектрального микширования 650 используется для микширования в спектральной области спектральных значений или спектральной информации фреймов 540 для частот или спектральных компонентов, находящихся ниже минимального значения частот перехода; блок SBR-микширования 660 аналогичным образом используется для микширования SBR-данных в SBR-области.
Блок оценки 670 обеспечивает максимальные и минимальные значения для промежуточной частотной области, а также любой из двух микшеров 650, 660 необходимыми данными в спектральной области или SBR-области для того, чтобы эти микшеры могли работать в этой промежуточной частотной области. Микшер 680 компилирует спектральные и SBR-данные, полученные от двух микшеров 650, 660, и формирует выходной фрейм 550.
Варианты настоящего изобретения могут, например, применяться в режиме теле/видеосистем конференц-связи с участием двух и более участников. Преимуществом таких систем конференц-связи является их меньшая сложность по сравнению с системами, применяющими временно-частотное микширование, так как этапы временно-частотных преобразований и этапы повторного кодирования могут быть опущены. По сравнению с микшированием во временной области отсутствует задержка, вызванная этими компонентами, благодаря отсутствию задержки, связанной с банком фильтров.
Варианты настоящего изобретения могут применяться в более сложных приложениях, где имеются блоки замены воспринимаемых шумов (PNS), модуль ограничения шума (TNS) и различные режимы стереокодирования. Такой вариант изобретения будет описан более подробно на фиг.8.
Фиг.8 показывает блок-схему устройства 500 для микширования множества входных потоков данных, содержащего процессорный блок 520. Если быть более точным, устройство 500 способно обрабатывать множество различных аудиосигналов, закодированных во входных потоках данных. Некоторые из элементов, которые будут описаны ниже, являются факультативными, их применение обусловлено определенными обстоятельствами и постоянное присутствие во всех моделях изобретения необязательно.
Процессорный блок 520 содержит декодер битового потока 700 для каждого потока данных на входе или для каждого кодированного битового потока, который подлежит обработке процессорным блоком 520. В целях упрощения фиг.8 показывает только два декодера битового потока 700-1, 700-2. В зависимости от количества входных потоков данных, подлежащих обработке, может применяться большее или меньшее количество декодеров 700, так как декодер 700 способен последовательно обрабатывать более одного входного потока данных.
Декодер битового потока 700-1, как и другие декодеры 700-2, … включает считывающий модуль 710, который используется для получения и обработки полученных сигналов, а также для выделения данных, содержащихся в битовом потоке. Например, считывающий модуль 710 может использоваться для синхронизации входящих данных с внутренними часами и далее может использоваться для разделения входного битового потока на фреймы.
Декодер битового потока 700 далее содержит декодер Хаффмана 720, соединенный с выходом считывающего модуля 710 для получения изолированных данных от считывающего модуля 710. Выход декодера Хаффмана 720 соединен с обратным квантизатором 730. Обратный квантизатор 730 следует за декодером Хаффмана 720, а за обратным квантизатором 730 следует счетчик 740. Декодер Хаффмана 720, повторный квантизатор 730 и счетчик 740 формируют первый модуль 750, на выходе которого, по меньшей мере, часть аудиосигнала соответствующего входного потока данных доступна в той частотной или частотно-зависимой области, в которой работает кодер участника (не показан на фиг.8).
Декодер битового потока 700 далее включает второй модуль 760, который соединен в соответствии с параметрами с первым модулем 750. Второй модуль 760 содержит стереодекодер 770 (M/S модуль), за которым присоединяется PNS-декодер. PNS-декодер 780 передает данные TNS- декодеру 790, который вместе с PNS-декодером 780 стереодекодера 770 формирует модуль 760.
Далее декодер 700 содержит множество соединений между модулями, обрабатывающими рассматриваемый поток данных. А именно считывающий модуль 710 соединен с декодером Хаффмана 720 для получения управляющих данных. Декодер Хаффмана 720 напрямую соединен со счетчиком 740 для передачи информации о масштабировании счетчику 740. Стереодекодер 770, PNS-декодер 780 и TNS-декодер 790 соединяются со считывающим модулем 710 для получения управляющих данных.
Процессорный блок 520 содержит блок микширования 800, который, в свою очередь, содержит блок спектрального микширования 810, соединенный посредством входного канала с декодером битового потока 700. Блок спектрального микширования 810 может, например, содержать один или несколько сумматоров для выполнения микширования в частотной области. Кроме этого, блок спектрального микширования 810 может содержать множительные элементы для выполнения произвольной линейной комбинации спектральной информации, полученной от декодеров битового потока 700.
Блок микширования 800 далее содержит модуль оптимизации 820, который соединен с выходом блока спектрального микширования 810. Модуль оптимизации 820 соединен с блоком спектрального микширования для того, чтобы обеспечить его управляющими данными. Модуль оптимизации 820 представляет данные на выходе блока микширования 800.
Блок микширования 800 содержит модуль SBR-микширования 830, который напрямую соединяется с выходом считывающего модуля 710, который обрабатывает данные различных декодеров битового потока 700. Данные на выходе модуля SBR-микширования 830 формируют следующие данные на выходе блока микширования 800.
Процессорный блок 520 далее содержит кодер битового потока 850, который соединяется с блоком микширования 800. Кодер битового потока 850 содержит третий модуль 860, который включает TNS-кодер 870, PNS-кодер 880 и стереокодер 890, которые соединены в последовательность указанным выше образом. Таким образом, третий модуль 860 образует обратный модуль первого модуля 750 декодера битового потока 700.
Кодер битового потока 850 далее содержит четвертый модуль 900, который включает счетчик 910, квантизатор 920 и кодер Хаффмана 930, которые образуют серию соединений между входом и выходом. Четвертый модуль 900 таким образом является обратным модулем первому модулю 750. Соответственно счетчик 910 напрямую соединен с кодером Хаффмана 930 для того, чтобы обеспечить его управляющими данными.
Кодер битового потока 850 содержит записывающий модуль 940, который соединен с выходом кодера Хаффмана 930. Далее записывающий модуль 940 соединяется с TNS-кодером 870, PNS-кодером 880, стереокодером 890 и кодером Хаффмана 930 для получения управляющих и других типов данных. Данные на выходе записывающего модуля 940 формируют выходные данные процессорного блока 520 и устройства 500.
Кодер битового потока 850 также содержит психоакустический модуль 950, который соединен с выходом блока микширования 800. Кодер битового потока 850 передает модулям третьего блока 860 необходимые управляющие данные, которые указывают, например, какие модули блока микширования 800 необходимо задействовать в процессе кодирования выходных данных в контексте фреймов третьего блока 860.
В принципе на отрезке, который начинается выходом второго блока 760 и заканчивается входом третьего блока 860, возможна обработка аудиосигнала в спектральной области так, как она была определена кодером со стороны отправителя. Однако, как было указано ранее, полное декодирование, обратное квантование, обратное масштабирование и дальнейшие этапы обработки могут не понадобиться, если, например, спектральная информация одного из входящих потоков данных оказывается преобладающей. Согласно настоящему изобретению, по меньшей мере, часть спектральной информации соответствующих спектральных компонентов копируется как спектральные компоненты соответствующего фрейма потока данных на выходе.
Для выполнения обработки данных устройство 500 и процессорный блок 520 имеют сигнальные каналы, которые позволяют оптимизировать процесс передачи данных. Как показано на фиг.8, выходные данные декодера Хаффмана 720, счетчика 740, стереодекодера 770, PNS-декодера 780, а также соответствующие данные считывающего модуля 710 направляются в модуль оптимизации 820 блока микширования 800 для соответствующей обработки.
В целях упрощения процесса передачи данных после соответствующей обработки к потоку данных внутри кодера 850 применяются полученные данные по оптимизации. А именно выходной канал модуля оптимизации 820 соединяется с входными каналами PNS-кодера 780, стереокодера 890, четвертого блока 900, счетчика 910 и кодером Хаффмана 930. Кроме этого, выходной канал модуля оптимизации 820 напрямую соединяется с записывающим модулем 940.
Как было указано выше, все описанные ранее модули являются дополнительными, их использование в настоящем изобретении не является обязательным. Например, если поток аудиосигналов содержит только один канал, применение модулей стереокодирования и декодирования 770 и 890 можно исключить. В том случае, если сигналы PNS не обрабатываются, соответствующие PNS-кодер 780 и PNS-декодер 880 не применяются. TNS-модули 790, 870 также могут быть исключены, если обрабатываемый сигнал и сигнал, который должен быть получен на выходе, не основываются на TNS-данных. В составе первого и четвертого блоков 750, 900 обратный квантизатор 730, счетчик 740, квантизатор 920, а также счетчик 910 могут не испольсоваться. Эти модули рассматриваются как дополнительные элементы устройства.
Декодер Хаффмана 720 и кодер Хаффмана 930 могут применяться по-разному на основе различных алгоритмов или вообще не применяться.
В соответствии с режимом функционирования устройства 500 и процессорного блока 520, входящего в его состав, поток данных на входе первоначально считывается и разделяется на необходимые порции информации с помощью считывающего модуля 710. После декодирования Хаффмана полученная спектральная информация может пройти этап обратного квантования с помощью обратного квантизатора 730 и этап масштабирования с помощью модуля обратного масштабирования 740.
После этого в зависимости от управляющей информации, содержащейся в потоке данных на входе, кодированный сигнал на входе можно разложить на аудиосигналы для двух или более каналов для стереодекодера 770. Если, например, аудиосигнал содержит средний канал (М) и боковой канал (S), соответствующие данные левого и правого каналов могут быть получены путем прибавления или вычитания данных среднего и бокового каналов. Во многих реализациях средний канал пропорционален сумме аудиоданных левого и правого каналов, а боковой канал пропорционален разнице между левым (L) и правым (R) каналами. В зависимости от реализации изобретения указанные выше каналы складываются или вычитаются с учетом коэффициента 1/2 для того, чтобы избежать эффекта отсечения. В общем, различные каналы могут обрабатываться различными линейными комбинациями для получения соответствующих каналов.
Иными словами, после обработки стереодекодера 770 аудиоданные при необходимости могут быть разделены на два отдельных канала. Конечно, стереодекодер 770 может также проводить обратное декодирование. Если, например, аудиосигнал, как он был получен считывающим модулем 710, содержит левый и правый каналы, стереодекодер 770 может рассчитать и определить соответствующие данные среднего и бокового каналов.
В зависимости от варианта устройства 500, а также от кодека, который используется участником, отправляющим соответствующий поток данных, этот поток данных может содержать PNS-параметры (PNS - перцептуальная замена шума). Метод PNS основывается на том, что человеческое ухо в большинстве случаев не способно различать шумоподобные звуки определенного диапазона частот или отдельные спектральные компоненты, например отдельный диапазон или отдельную частоту от искусственно смоделированных шумов. С помощью метода PNS реальные шумоподобные включения в аудиосигнале заменяются на значения энергии, указывающие уровень шума, который должен быть искусственно дополнен в соответствующий спектральный компонент, не затрагивая при этом сам аудиосигнал. Другими словами, PNS-декодер 780 может повторно создать в одном или нескольких спектральных компонентах реальное шумоподобное включение в аудиосигнале на основе PNS-параметров, содержащихся в потоке данных на входе.
Что касается TNS-декодера 790 и TMS-кодера 870, соответствующие аудиосигналы могут быть заново преобразованы в первоначальный вид благодаря использованию TNS-модуля на стороне отправителя. Временное ограничение шума (TNS) является средством уменьшения помех опережающего эха, вызванного шумом квантования, который появляется, если во фрейме аудиосигнала присутствует переходный сигнал. Чтобы нейтрализовать этот переходный сигнал, применяется, по меньшей мере, один адаптивный прогнозирующий фильтр для спектральной информации низкого диапазона спектра, высокого диапазона спектра, или для обоих диапазонов спектра. Длина прогнозирующих фильтров может варьироваться так же как и диапазон частот, для которых применяются эти фильтры.
Функционирование TNS-модуля основывается на вычислении одного или более адаптивных IIR-фильтров (IIR - фильтр с бесконечной импульсной характеристикой), кодировании и передаче сигнала ошибки, который указывает разницу между предполагаемым и реальным аудиосигналом, а также коэффициенты фильтров предсказания. Вследствие этого возможно увеличение качества аудиосигнала, если поддерживать битрейт потока данных передатчика, устраняя транзитные сигналы посредством применения фильтров прогнозирования в частотной области для уменьшения амплитуды остаточного сигнала ошибки. Сигнал ошибки можно кодировать с применением меньшего количества этапов квантования по сравнению с прямым кодированием транзитного сигнала с подобным шумом квантования.
В случае TNS-приложения при определенных обстоятельствах желательно применить функцию TNS-декодера 760, чтобы провести декодирование части TNS входного потока данных для получения «чистой» репрезентации спектральной области, определенной кодеком. Такое функциональное применение TNS-декодеров 790 может быть полезно в том случае, если параметры психоакустической модели (применяемой, например, в психоакустическом модуле 950) не могут быть определены на основе коэффициентов фильтров прогнозирования, которые включаются в состав TNS-параметров. Это особенно важно, если один поток входных данных использует TNS, a другой не использует.
В том случае если на основе сравнения фреймов входных потоков данных процессорный блок определяет, что применяется спектральная информация входящего потока данных на основе TNS, то TNS-параметры могут использоваться для фрейма данных на выходе. Если, например, по причине несовместимости получатель потока данных на выходе не может декодировать TNS данные, рекомендуется не копировать соответствующие спектральные данные сигнала ошибки и TNS параметры, а обработать восстановленные TNS данные для того, чтобы получить сигнал в спектральной области и не использовать TNS кодер 870. Это еще раз подтверждает то, что не все элементы и модули, представленные на фиг.8, могут присутствовать в различных вариантах настоящего изобретения.
В том случае если, по меньшей мере, один входной аудиопоток сравнивает PNS данные, применяется аналогичная методика. Если при сравнении фреймов спектрального компонента входных потоков данных оказывается, что один входной поток в виде своих фреймов или соответствующего спектрального компонента является доминирующим, соответствующие PNS-параметры (т.е. соответствующие значения энергии) могут быть скопированы напрямую как соответствующий спектральный компонент выходного фрейма. Однако если получатель не способен принимать PNS-параметры, спектральная информация может быть восстановлена из PNS-параметров для соответствующих спектральных компонентов посредством генерации шума с соответствующим уровнем, как он был указан в значении энергии. Затем шумовой сигнал может обрабатываться в спектральной области.
Как было сказано выше, переданная информация содержит SBR-данные, которые затем обрабатываются модулем SBR-микширования 830, который выполняет указанные ранее функции. В случае кодирования двух стереосигналов метод SBR, согласно настоящему изобретению, позволяет кодировать левый и правый каналы отдельно, а также позволяет кодировать их как общий сдвоенный канал (С). Обработка соответствующих SBR-параметров или их частей может включать копирование С-элементов SBR-параметров для правого и левого каналов, передачу и определение левого и правого элементов SBR-параметра или наоборот.
Кроме того, потоки входных данных различных вариантов настоящего изобретения могут включать как моно-, так и стереоаудиосигналы, которые содержат, соответственно, один или два отдельных канала. Поэтому в процессе обработки фреймов входных потоков и получения фреймов потоков на выходе может дополнительно проводиться повышающее микширование моносигнала в стереосигнал и понижающее микширование стереосигнала в моносигнал.
Как было показано выше, при применении TNS-параметров во избежание повторного квантования желательно обрабатывать соответствующие TNS-параметры вместе со спектральной информацией всего фрейма доминирующего входного потока для получения потока данных на выходе.
В случае применения спектральной информации на основе PNS может оказаться эффективной обработка отдельных значений энергии без декодирования базовых спектральных компонентов. В дополнение к этому обработка только соответствующих PNS-параметров доминирующего спектрального компонента множества фреймов входных потоков для получения соответствующего спектрального компонента выходного фрейма потока данных на выходе происходит без дополнительного шума квантования.
Согласно одному из вариантов настоящего изобретения может проводиться простое копирование спектральной информации отдельного компонента после сравнения фреймов множества входных потоков и после основанного на этом сравнении выделения одного потока данных в качестве источника для того, чтобы определить спектральный компонент для выходного фрейма.
С помощью алгоритма замещения, применяемого в психоакустическом модуле 950, обрабатывается спектральная информация, которая относится к базовому спектральному компоненту (т.е. частотным диапазонам) итогового сигнала для того, чтобы определить спектральные компоненты только по одному активному компоненту. Для этих частот значения квантования соответствующего входного потока могут копироваться из кодера без повторного кодирования и повторного квантования спектральных данных отдельного спектрального компонента.
При определенных условиях все данные, прошедшие процесс квантования, могут быть получены из одного активного входного сигнала, который используется для получения битового потока на выходе или выходного потока данных таким образом, что при применении устройства 500 оказывается доступным кодирование входного потока данных без потерь.
Далее возможно пропустить такие процессы обработки, как психоакустический анализ внутри кодера. При определенных обстоятельствах это позволяет сократить процесс кодирования и таким образом снизить вычислительную сложность, так как проводится только копирование данных одного битового потока в другой битовый поток.
Например, в случае применения метода PNS оказывается возможным произвести замену, так как параметры шума аудиосигнала, кодированного с применением PNS, могут быть скопированы из одного выходного потока данных в другой выходной поток данных. Возможна замена отдельных спектральных компонентов соответствующими PNS-параметрами, так как PNS-параметры - это особые спектральные компоненты, независимые друг от друга при ближайшем рассмотрении.
Однако слишком формальное применение описанного выше алгоритма может привести к ухудшению аудиовосприятия и нежелательному снижению качества. Поэтому рекомендуется ограничить замену отдельными фреймами, а не спектральной информацией в отношении отдельных спектральных компонентов. В таком режиме функционирования оценка нерелевантности или определение нерелевантности, как и анализ замены, проводится в неизменном виде. При подобном режиме функционирования замена может проводиться когда все или незначительная часть спектральных компонентов в составе активного фрейма являются заменяемыми.
При уменьшении количества замен внутренняя структура спектральной информации в некоторых случаях может быть улучшена, что приводит к незначительному улучшению качества звука.
В соответствии с реализациями настоящего изобретения, далее будут подробно описаны принципы функционирования метода SBR и микширования SBR-данных без учета работы дополнительных и необязательных компонентов устройства 500, представленного на фиг.8.
Метод SBR использует QMF (квадратурно-зеркальный фильтр), который представляет линейное преобразование. Вследствие этого возможна не только обработка спектральных данных напрямую в спектральной области, но и обработка значений энергии, связанных с каждой частотно-временной областью 630 верхней части спектра 590 (ср. фиг.6b). Однако, как было указано ранее, желательно, а в некоторых случаях обязательно выравнивание частотно-временной сетки до того как будет произведено микширование.
В принципе возможно получение абсолютно новой частотно-временной сетки, однако далее будет описана ситуация, когда частотно-временная сетка используется в качестве источника частотно-временной сетки выходного фрейма 550. Решение о том, какая из частотно-временных сеток будет применяться, может быть основано, например, на психоакустических данных. Когда одна из сеток содержит переходный сигнал, желательно использовать ту частотно-временную сетку, которая содержит этот сигнал или является совместимой с ним, так как из-за эффекта маскировки, характерного для человеческой системы аудиовосприятия, помехи становятся слышимыми, когда они выделяются на фоне определенной сетки.
В случае если два или более фреймов, содержащих переходные сигналы, должны быть обработаны устройством 500 в соответствии с реализацией настоящего изобретения, предпочтительнее выбрать частотно-временную сетку, совместимую с первым из имеющихся переходных сигналов. Как указывалось выше, желательно выбирать сетку, содержащую первый имеющийся шумовой сигнал. Выбор производится на основе психоакустических данных и связан с эффектом маскировки.
Однако необходимо отметить, что даже при этих условиях можно выбрать или рассчитать другие частотно-временные сетки.
При микшировании фреймовых SBR сеток в некоторых случаях рекомендуется определять наличие и местоположение одного или более переходных сигналов, которые содержатся во фреймах 540. Этот процесс проводится посредством оценки фреймовых сеток SBR-данных соответствующего фрейма 540 и уточнения, совместимы ли сетки или они указывают наличие соответствующего переходного сигнала. Например, применение класса фреймов LD-_TRAN в кодеке AAC ELD может указывать на присутствие переходного сигнала. Поскольку этот класс также содержит переменную TRANSPOSE, расположение переходного сигнала в ряду временных слотов известно анализатору 640, как это показано на фиг.7.
При использовании другого класса SBR-фреймов FIXFIX могут применяться другие комбинации при формировании частотно-временной сетки выходного фрейма 550.
Например, могут обрабатываться фреймы без переходных сигналов или фреймы с симметричным расположением переходных сигналов. Если фреймы не содержат переходных сигналов, возможно такое применение структуры пакета, при которой будет использоваться только один пакет, увеличивающий весь фрейм.
В том случае если количество пакетов одинаково, структура базового фрейма копируется. Если количество пакетов, содержащихся в одном фрейме, представляет собой целое число пакетов другого фрейма, то применяется более дробное распределение на пакеты.
Подобным образом, когда все фреймы 540 содержат переходные сигналы, располагающиеся одинаково, может быть скопирована любая частотно-временная сетка.
При микшировании одного пакета фреймов без переходных сигналов и фрейма с переходным сигналом копируется структура фрейма, содержащего переходный сигнал. При этом можно с уверенностью предположить, что в процессе микширования данных не появится новый переходный сигнал. Только присутствующий сигнал может быть усилен или подавлен.
Если расположение переходных сигналов во фреймах варьируется, то расположение соотносится с лежащими в основе временными слотами. Во многих случаях расположение первого переходного сигнала предсказуемо, так как эффекты предваряющего эха и другие проблемы с большой вероятностью будут маскироваться последствиями переходного сигнала. В этой ситуации предпочтительно принять фреймовую сетку в соответствии с расположением первого переходного сигнала.
После того как станет ясным распределение пакетов в соответствии с фреймовой структурой, определяется частотное разрешение отдельных пакетов. В качестве частотного разрешения для нового пакета принимается наивысшее из всех возможных разрешений на входе. Если пакет имеет высокое разрешение, то фрейм на выходе также будет содержать пакет с высоким частотным разрешением.
Для более подробной иллюстрации этой ситуации, а именно когда входные фреймы 540-1, 540-2 двух потоков данных 510-1, 510-2 имеют различную частоту перехода, фиг.9а и 9b показывают соответствующие схемы двух входных фреймов 510-1, 540-2, как они были показаны на фиг.6а. В связи с подробным описанием фиг.6b описание фиг.9а и 9b опускается. Фрейм 540-1, показанный на фиг.9а, идентичен фрейму, показанному на фиг.6b. Он содержит два равных по длине пакета 620-1, 620-2 со множеством частотно-временных областей 630 над частотой перехода 570.
Второй фрейм 540-2 схематично показан на фиг.9b, по некоторым аспектам он отличается от фрейма, показанного на фиг.9а. Кроме того, что фреймовая сетка содержит три неравных по длине пакета 620-1, 620-2, 620-3, частотное разрешение соответствующей частотно-временной области 630 и частоты перехода 570 отличается от того, что показано на фиг.9а. В примере, показанном на фиг.9b, частота перехода 570 больше, чем частота перехода у фрейма 540-1 на фиг.9а. Вследствие этого верхняя часть спектра 590 больше, чем верхняя часть спектра фрейма 540-1, показанного на фиг.9а.
Если предположить, что кодек AAC ELD распределил фреймы 540, как это показано на фиг.9а и 9b, сетка фрейма 540-2 содержит три неравных по длине пакета 620, поэтому можно прийти к выводу, что второй из трех пакетов 620 содержит переходный сигнал. Соответственно, сетка второго фрейма 540-2, если принять во внимание ее распределение во времени, может быть выбрана для определения частотного разрешения выходного фрейма 550.
X1
Х2
Как показывает фиг.9 с, дополнительная сложность возникает в связи с тем, что применяется разная частота перехода 570. Фиг 9 с показывает ситуацию наложения, где пересекается спектральная информация 560 фреймов 540-1 и 540-2. При рассмотрении частоты перехода 570-1 первого фрейма 540, как он показан на фиг.9а (частота перехода F), и более высокой частоты перехода 570-2 второго фрейма 540-2, как показано на фиг.9b (частота перехода F), определяется промежуточный частотный диапазон 100, для которого доступны только SBR-данные первого фрейма 540-1 и спектральная информация 610 второго фрейма 540-1. Иначе говоря, для спектральных компонентов частот внутри промежуточного частотного диапазона 1000 процедура микширования основывается на полученных SBR-параметрах или полученных спектральных данных, которые определяются блоком оценки 670, показанным на фиг.7.
В ситуации, продемонстрированной на фиг.9 с, промежуточный частотный диапазон 1000, определяемый в рамках частот перехода 570-1 и 570-2, представляет собой частотный диапазон, где функционируют блок оценки 670 и процессорный блок 520. В частотном диапазоне 1000 SBR-данные доступны только от фрейма 540-1, в то время как второй фрейм 540-2 предоставляет данные о спектральной информации и спектральные значения. Следовательно, в зависимости от того, выше или ниже пограничных значений выходной частоты перехода находится промежуточная частота или ее спектральный компонент, SBR-параметр или спектральное значение определяются в спектральной области до этапа микширования полученных значений с исходными значениями одного из фреймов 540-1, 540-2 в SBR-области.
X0
X1
На фиг.9d представлена ситуация, когда частота перехода выходного фрейма равна более низкой из двух частот перехода 570-1, 570-2. Следовательно, выходная частота перехода 570-3 (f) равна первой частоте перехода 570-1 (f), которая также ограничивает верхнюю часть кодируемого спектра на уровне удвоенных частот перехода, о чем упоминалось выше.
При копировании или повторном определении частотного разрешения временно-частотной сетки, основанной на ранее определенном временном разрешении или распределении пакетов, выходные SBR-данные определяются в промежуточном частотном диапазоне 1000 (ср. фиг.9с) путем их вычисления из спектральных данных 610 второго фрейма 540-2 для этих частот, соответствующих SBR-параметрам.
Для частот, находящихся выше второй частоты перехода 570-2, вычисление может осуществляться на основе спектральных данных 610 второго фрейма 540-2 с учетом SBR-параметров. Вычисление основывается на предположении, что в плане временного разрешения или распределения пакетов частоты, находящиеся вблизи второй частоты перехода 570-2, с высокой вероятностью являются эквивалентно зависимыми. Таким образом, расчет SBR-данных в промежуточном частотном диапазоне 1000 может выполняться, например, путем вычисления в высоком временном и частотном разрешении, описанном SBR-данными соответствующих значений энергий. Вычисление производится на основе спектральной информации для каждого спектрального компонента путем ослабления или усиления каждых SBR-данных второго фрейма 540-2, основанного на временной обработке амплитуды, указанной в пакетах SBR-данных второго фрейма 540-2.
Далее, после применения сглаживающего фильтра или других этапов фильтрации полученные значения энергии распределяются на временно-частотные области 630 временно-частотной сетки 550, определенной для выходного фрейма. Решение, представленное на фиг.9d, может подходить для низких битрейтов. Самая нижняя частота перехода SBR всех входных потоков будет использоваться как частота перехода SBR выходного фрейма. Значения энергии SBR определяются для частотного диапазона 1000 в промежутке между центральным кодером (работающим до частоты перехода) и SBR-кодером (работающим выше частоты перехода) из спектральной информации или спектральных коэффициентов. Вычисление может выполняться на основе большого количества спектральной информации, например, получаемой из MDCT-(модифицированное дискретное косинусное преобразование) или LDFB (блок фильтров с малой задержкой) спектральных коэффициентов. Дополнительно могут применяться сглаживающие фильтры для сближения центрального кодера и SBR-кодера.
Необходимо отметить, что данное решение может быть использовано для преобразования высокоскоростного потока в низкоскоростной поток, например потока с битрейтом 64 кбит/с в поток с битрейтом 32 кбит/с.Примером ситуации, когда может быть рекомендовано применение данного подхода, является ситуация, когда необходимо обеспечить битовый поток для участников с низкоскоростным подключением к модулю микширования, которое может быть установлено, например, в случае модема для коммутируемых линий, или подобных случаев.
Другой пример различных частот перехода представлен на фиг.9е.
Фиг.9е иллюстрирует ситуацию, когда более высокая из двух частот перехода 570-1, 570-2 используется как выходная частота перехода 570-3. Таким образом, выходной фрейм 550 содержит спектральную информацию 610 ниже выходной частоты перехода и соответствующие SBR-данные выше выходной частоты перехода до частоты, равной удвоенному значению частоты перехода 570-3.
При такой ситуации возникает вопрос, как восстановить спектральные данные в промежуточной частотной области 1000 (ср. фиг.9с). После определения временного разрешения или распределения по пакетам в частотно-временной сетке и после копирования и определения, по меньшей мере, части частотного разрешения частотно-временной сетки для частот выше выходной частоты перехода 570-3, основанной на SBR-данных первого фрейма 540-1 в промежуточной спектральной области 1000, спектральные данные вычисляются процессорным блоком 520 и блоком оценки 670. Этого можно достичь путем частичного восстановления спектральной информации, основанной на SBR-данных для частотной области 1000 первого фрейма 540-1, при необходимости учитывая спектральную информацию 610 ниже первой частоты перехода 570-1 (ср. фиг.9а). Иными словами, определение отсутствующей спектральной информации производится посредством репликации спектральной информации из SBR данных и соответствующей спектральной информации нижней части спектра 580 с применением алгоритма реконструкции SBR-декодера к частотам промежуточного диапазона 1000.
После определения спектральной информации промежуточного частотного диапазона, например, с помощью частичного SBR-декодирования или восстановления в частотной области полученная в результате спектральная информация может напрямую пройти этап микширования со спектральной информацией второго фрейма 540-2 в спектральной области, например, с применением линейной комбинации.
Реконструкция или репликация спектральной информации для частот или специальных компонентов, находящихся выше частоты перехода, определяется как обратное фильтрование. Необходимо отметить, что в этом случае необходимо учитывать дополнительные гармоники и дополнительные значения энергии, относящиеся к шумовым сигналам, когда вычисляется соответствующая спектральная информация для частот или компонентов в промежуточной частотной области 1000.
Такой подход может применяться в том случае, если участники, которые соединены с устройством 500 или блоком микширования, имеют доступ к высокоскоростному каналу передачи данных. В этом случае может применяться алгоритм вставки или копирования спектральной информации в спектральной области, например MDCT или LDFB коэффициентов. Эти данные копируются из нижней части диапазона в верхнюю часть диапазона для того, чтобы уменьшить расстояние между центральным кодером и SBR-кодером, которые разделяются соответствующей частотой перехода. Коэффициенты копирования уменьшаются в соответствии с изменениями параметров энергии, которые содержатся в полезной нагрузке SBR.
В обоих сценариях, описанных на фиг.9d и 9е, спектральная информация, находящаяся ниже частоты перехода, может обрабатываться напрямую в спектральной области, а SBR-параметры выше частоты перехода обрабатываются напрямую в SBR-области. В том случае, если высокие частоты находятся выше минимальной границы самых высоких частот, как это показывают SBR-параметры (обычно это происходит в том случае, если минимальное значение частоты перехода превышено вдвое), возможно применение двух подходов в зависимости от частоты перехода выходного фрейма 550. При использовании максимальных частот в качестве выходной частоты перехода 570-3, как это показано на фиг.9е, SBR-параметры основываются только на SBR-параметрах второго фрейма 540-2. В качестве альтернативы эти значения могут быть уменьшены с помощью коэффициента нормализации или коэффициента затухания, которые применяются в ходе линейного сложения значений энергии SBR для частот, которые находятся ниже частоты перехода.
В ситуации, показанной на фиг.9d, когда минимальная из всех доступных частот перехода применяется в качестве выходной частоты перехода, соответствующие SBR-параметры второго фрейма 540-2 не учитываются.
Необходимо отметить, что реализации настоящего изобретения не ограничиваются только двумя входящими потоками данных; устройство аналогичным образом может работать с множеством входящих потоков. В таком случае описанные выше методы могут применяться к различным входным потокам данных в зависимости от каждой конкретной частоты перехода. В том случае если частота перехода фрейма входного потока данных выше, чем частота перехода выходного фрейма 550, необходимо применение алгоритмов, проиллюстрированных на фиг.9d. Наоборот, когда соответствующая частота перехода ниже, применяются алгоритмы и процедуры, показанные на фиг.9е. В процессе микширования SBR-параметров и спектральной информации суммируются соответствующие данные двух и более блоков информации.
Выходная частота перехода 570-3 может быть выбрана произвольно. Она может не соответствовать частотам перехода входных потоков данных. Например, в ситуациях, показанных на фиг.9d и 9е, частота перехода может быть промежуточной, быть ниже или выше частот перехода 570-1, 570-2 входных потоков данных 510. Когда частота перехода выходного фрейма выбирается произвольно, желательно применять указанные выше алгоритмы для определения спектральных данных и SBR-параметров.
Однако некоторые варианты настоящего изобретения функционируют таким образом, что применяется только минимальная или только максимальная частота перехода. В таком случае необязательно применение всех процедур, описанных выше. Например, если применяется только минимальная частота перехода, блок оценки 670 может не производить обработку спектральной информации, он определяет только SBR-параметры. Таким образом, процедура обработки спектральных данных в этом случае не проводится. В противном случае, если согласно одному из вариантов настоящего изобретения применяется только максимальная выходная частота перехода, процедура вычисления SBR-параметров, производимая блоком оценки 670, может не проводиться.
Варианты настоящего изобретения могут содержать модули многоканального микширования с понижением и многоканального микширования с повышением. Например, если участники отправляют стереосигналы или многоканальные потоки и несколько моносигналов, применяются модули, выполняющие понижающее микширование стереосигнала, или модули, выполняющие повышающее микширование стереосигнала. В этом случае желательно провести повышающее или понижающее микширование в соответствии с количеством каналов, содержащихся во входных потоках данных. Рекомендуется провести повышающее или понижающее микширование для того, чтобы получить микшированные битовые потоки, которые соответствуют параметрам входных потоков. Это означает, что участнику, отправившему поток моносигналов, необходимо получить поток моносигналов обратно. Вследствие этого, стереоданные или мультиканальные аудиосигналы должны быть преобразованы в поток моносигналов или наоборот.
В зависимости от ограничений реализации или других условий это, например, может быть достигнуто путем применения множества устройств в соответствии с вариантом настоящего изобретения или обработкой всех входных потоков данных в одном устройстве, в котором входные потоки данных подвергаются понижающему или повышающему микшированию для того, чтобы соответствовать требованиям терминала участника.
Модуль SBR допускает два режима кодирования стереоканалов. Один режим работы обрабатывает левый и правый каналы (LR) отдельно, в то время как второй режим работы предполагает обработку связанного канала (С). Для микширования LR-кодированного и С-кодированного элементов, либо LR-кодированный элемент должен соответствовать С-элементу, либо наоборот. Фактическое решение об используемом методе кодирования может быть заданным или может быть принято с учетом таких факторов, как потребление энергии, вычисление, сложность и т.п., или может быть принято на основе психоакустической оценки исходя из значимости раздельной обработки.
Как показано выше, микширование действительных энергозависимых SBR-данных может быть выполнено в SBR-области путем линейной комбинации соответствующих значений энергий. Это может быть получено в соответствии со следующим выражением:
k
k
где a - это весовой коэффициент, E(n) - значение энергии входного потока данных k, соответствующее позиции во временно-частотной сетке, обозначенной n; E(n) - соответствующее SBR-значение энергии, соответствующее индексу n; N - количество входных потоков данных, и для примеров, приведенных на фиг.9а и 9е, соответствует 2.
k
Коэффициенты a могут использоваться для выполнения нормализации, а также взвешивания пересечения каждой временно-частотной области 630 выходного фрейма 550 и соответствующей временно-частотной области 630 входного фрейма 450. Например, когда две временно-частотные области выходного фрейма 550 и соответствующего входного фрейма 540 имеют взаимное пересечение до 50% в том смысле, что 50% рассматриваемой временно-частотной области 630 выходного фрейма 550 частично образовано соответствующей временно-частотной областью 630 входного фрейма 540, итоговый коэффициент усиления может быть умножен на значение 0.5, показывая тем самым отношение соответствующих входного аудиопотока и входного фрейма 540.
k
В целом, каждый из коэффициентов a может быть определен в соответствии со следующим выражением:
ik
ik
где r - значение, показывающее область пересечения двух временно-частотных областей 630 i и k входного фрейма 540 и выходного фрейма 550 соответственно. М - количество всех временно-частотных областей 630 входного фрейма 540, a g - общий коэффициент нормализации, который может, например, быть равен 1/N для исключения ситуации, когда результаты процесса микширования выходят за границы допустимого диапазона значений. Коэффициенты r могут находиться в диапазоне от 0 до 1, при этом значение 0 показывает, что две временно-частотные области не пересекаются совсем, а значение 1 показывает, что временно-частотная область 630 входного фрейма 540 полностью совпадает с соответствующей временно-частотной областью 630 выходного фрейма 550.
Однако также возможна ситуация, когда сетки входных фреймов 540 одинаковые. В этом случае сетка одного из входных фреймов 540 может быть скопирована в выходной фрейм 550. Соответственно, микширование релевантных SBR-значений энергий может быть выполнено достаточно просто. В этом случае соответствующие частотные значения могут быть добавлены аналогично микшированию соответствующей спектральной информации (например, значений MDCT) путем добавления и нормализации выходных значений.
Однако в связи с тем, что временно-частотные области 630 могут различаться по частоте в зависимости от разрешения соответствующего пакета, рекомендуется применять преобразование пакетов с низким разрешением в пакеты с высоким разрешением и обратно.
Фиг.10 иллюстрирует данный метод для ситуации, где имеются 8 временно-частотных областей 630-1 и пакета с высоким разрешением, содержащего 16 соответствующих временно-частотных областей 630-h. Как указывалось выше, пакет низкого разрешения обычно содержит только половину количества частотных данных по сравнению с пакетом высокого разрешения, это устанавливается с помощью простого сопоставления, как показано на фиг.10. В процессе преобразования пакета низкого разрешения в пакет высокого разрешения каждая из временно-частотных областей 630-1 пакета низкого разрешения преобразовывается в две соответствующие временно-частотные области 630-h пакета высокого разрешения.
В зависимости от конкретной ситуации, например, с точки зрения нормализации рекомендуется применение дополнительного коэффициента 0.5, чтобы не допустить выхода за установленные пределы микшированных SBR-значений энергий. В случае обратного преобразования две соседние временно-частотные области 630-h выравниваются путем вычисления среднего арифметического значения для формирования одной временно-частотной области 630-1 пакета низкого разрешения.
ik
ik
Иными словами, в первом случае относительно выражения 7 коэффициенты r могут быть либо 0 либо 1, в то время как коэффициент g равен 0.5, во втором случае коэффициент g может быть установлен 1, в то время как коэффициент r может быть либо 0 либо 0.5.
В дальнейшем может потребоваться модификация коэффициента g путем включения дополнительного коэффициента нормализации, учитывающего количество входных потоков данных, подлежащих микшированию. Для микширования значений энергий всех входных сигналов они добавляются и выборочно умножаются на коэффициент нормализации, применяемый во время процедуры спектрального микширования. Этот дополнительный коэффициент нормализации может, в конечном счете, также учитываться при определении коэффициента g в выражении (7). Как следствие, это может в итоге гарантировать, что масштабные коэффициенты спектральных коэффициентов базового кодека соответствуют допустимому диапазону SBR-значений энергий.
Варианты настоящего изобретения могут, естественно, отличаться в части реализации. Несмотря на то, что в предшествующих вариантах кодирование и декодирование по методу Хаффмана были представлены как единственная схема статистического кодирования, на самом деле могут быть использованы и другие схемы. Кроме того, обязательного применения статистического кодера или статистического декодера не требуется. Таким образом, несмотря на то, что описание предыдущих вариантов и было основано на использовании кодека ACC-ELD, возможно также применение других кодеков для обеспечения входных потоков данных и декодирования выходных потоков данных на стороне участника, например любой кодек, применяющий одиночные окна и не использующий переключения длин блоков.
Как было продемонстрировано ранее на фиг.8, присутствие некоторых модулей не является обязательным. Например, устройство, соответствующее варианту настоящего изобретения, легко может быть реализовано на основе обработки спектральной информации фреймов.
Следует отметить, что варианты, соответствующие настоящему изобретению, могут быть реализованы различными путями. Например, устройство 500 для микширования множества входных потоков данных и его модуль обработки 520 могут быть реализованы на основе электрических и электронных дискретных элементов, таких как резисторы, транзисторы, индуктивности и т.п. Более того, варианты, соответствующие настоящему изобретению, могут также быть реализованы на основе интегральных схем, например, в виде систем на кристалле (SOC), центральных процессоров (CPU), графических процессоров (GPU) и других интегральных схем (IC), таких как проблемно-ориентированные интегральные микросхемы (ASIC).
Также следует отметить, что электрические устройства, будучи частью дискретной реализации или частью интегральных схем, могут использоваться для различных целей и реализации различных функций в устройствах, соответствующих вариантам настоящего изобретения. Естественно, возможно использование комбинации интегральных и дискретных схем при реализации вариантов настоящего изобретения.
Работая на базе процессора, варианты настоящего изобретения могут функционировать на основе компьютерной программы, программного продукта или программы, выполняемой на процессоре.
В зависимости от определенных требований реализации изобретенных методов, изобретенные методы могут работать на основе программного продукта или аппаратного продукта. Изобретение может быть осуществлено с помощью цифровых средств хранения информации, а именно: на диск, CD или DVD, записывается информация в электронном виде, которая затем при необходимости применения изобретенного метода считывается соответствующей программой на компьютере или процессором. Обычно настоящее изобретение реализуется как программный продукт с программным кодом, который хранится на читаемом носителе; программный код приводится в действие, когда программный продукт устанавливается на компьютере или процессоре. Другими словами, реализация изобретенного метода - это компьютерная программа, имеющая программный код для выполнения как минимум одного из изобретенных методов, когда компьютерная программа устанавливается на компьютере или процессоре. Процессор может состоять их компьютера, микропроцессорной карточки, смарт-карты, системы микропроцессоров (SOC) или интегральной микросхемы (IC).