Область техники, к которой относится изобретение
Предлагаемая технология в целом относится к генерации комфортного шума (comfort noise, CN) и, в частности, к параметрам управления генерацией комфортного шума.
Уровень техники
В системах кодирования, используемых для разговорной речи, является общим использование прерывистой передачи (discontinuous transmission, DTX) для увеличения эффективности кодирования. Это мотивируется большими количествами пауз, встраиваемых в разговорную речь, например, пока один человек говорит, другой человек слушает. Посредством использования прерывистой передачи (DTX) речевой кодер может быть активным только около 50 процентов времени в среднем. Примерами кодеков, которые имеют это свойство, являются адаптивный многоскоростной узкополосный кодек 3GPP (3GPP Adaptive Multi-Rate Narrowband, AMR NB) и ITU-T G.718 кодек.
При работе прерывистой передачи (DTX) активные кадры кодируются в нормальных режимах кодека, в то время как неактивные сигнальные периоды между активными областями представляются с помощью комфортного шума. Сигналы, описывающие параметры, извлекаются и кодируются в кодере и передаются к декодеру в кадрах описания добавления тишины (silence insertion description, SID). SID-кадры передаются на сниженной скорости передачи кадров и более низкой битовой скорости, чем используется для активного режима (режимов) речевого кодирования. Между SID-кадрами не передается информация о характеристиках сигнала. Из-за более низкой скорости SID комфортный шум может только представляться относительно стационарными свойствами по сравнению с кодированием кадра активного сигнала. В декодере принимаемые параметры декодируются и используются для описания комфортного шума.
Для высококачественной работы прерывистой передачи (DTX), то есть без ухудшения качества речи, важно определить периоды речи во входном сигнале. Это осуществляется посредством использования детектора речевой активности (voice activity detector, VAD) или детектора активности звука (sound activity detector, SAD). Фиг. 1 изображает блок-схему обобщенного детектора VAD, который анализирует входной сигнал в кадрах данных (из 5-30 мс в зависимости от осуществления) и вырабатывает решение об активности для каждого кадра.
Предварительное решение об активности (первичное решение VAD) осуществляется в первичном речевом детекторе 12 посредством сравнения свойств для текущего кадра, оцениваемого посредством устройства 10 извлечения свойств, и фоновых свойств, оцениваемых из предыдущих входных кадров посредством блока 14 оценивания фона. Различие, большее, чем определенный порог, вызывает активное первичное решение. В блоке 16 добавления затягивания первичное решение растягивается на основе прошлых первичных решений для формирования итогового решения об активности (Итоговое решение VAD). Главной причиной использования затягивания является уменьшение риска среднего и заднего ограничения в речевых сегментах.
Для речевых кодеков на основе линейного предсказания (linear prediction, LP), например G.718, является существенным моделировать огибающую и энергию кадра с использованием подобного представления, как для активных кадров. Это является полезным, поскольку требования к памяти и сложность для кодека могут быть уменьшены посредством общих выполняемых функций между различными режимами при работе прерывистой передачи (DTX).
Для таких кодеков комфортный шум может быть представлен посредством его LP-коэффициентов (также известных, как авторегрессионные коэффициенты (auto regressive, AR)) и энергии LP-остатка, то есть сигнала, который как входной сигнал для LP-модели дает опорный аудиосегмент. В декодере остаточный сигнал генерируется в генераторе возбуждения как случайный шум, который получается сформированный посредством CN-параметров для формирования комфортного шума.
LP-коэффициенты обычно получаются посредством вычисления коэффициентов r[k] автокорреляции, реализуемых посредством организации окна аудиосегментов x[n], n=0, …, N-1 в соответствии с:
где P является заранее определенным порядком модели. LP-коэффициенты ak получаются из автокорреляционной последовательности с использованием, например, алгоритма Levinson-Durbin.
В системе связи, где такой кодек используется, упомянутые LP-коэффициенты должны эффективно передаваться от кодера к декодеру. По этой причине более компактные представления, которые могут быть менее чувствительными к шуму квантования, обычно используются. Например, LP-коэффициенты могут трансформироваться в линейные спектральные пары (linear spectral pairs, LSP). В альтернативных осуществлениях LP-коэффициенты могут вместо этого конвертироваться в области спектральных пар полной проводимости (immitance spectrum pairs, ISP), области линейных спектральных частот (line spectrum frequencies, LSF) или области спектральных частот полной проводимости (immitance spectrum frequencies, ISF).
LP-остаток получается посредством фильтрации опорного сигнала через фильтр A[z] обратного LP-синтеза, определяемый посредством:
Отфильтрованный остаточный сигнал s[n] в результате дается
для которого энергия определяется как:
Из-за низкой скорости передачи SID-кадров CN-параметры должны изменяться медленно, для того, чтобы быстро не менять характеристики шума. Например, кодек G.718 ограничивает изменение энергии между SID-кадрами и интерполирует LSP коэффициенты, чтобы управлять этим.
Для нахождения репрезентативных CN-параметров в SID-кадрах LSP коэффициенты и остаточная энергия вычисляются для каждого кадра, включая кадры без данных (таким образом, для кадров без данных упомянутые параметры определяются, но не передаются). На SID-кадре медианные LSP коэффициенты и средняя остаточная энергия вычисляются, кодируются и передаются к декодеру. Для того, чтобы комфортный шум не был неестественно статическим, случайные изменения могут добавляться к параметрам комфортного шума, например, изменение остаточной энергии. Эта технология, например, используется в G.718 кодеке.
В дополнение, характеристики комфортного шума не всегда хорошо согласуются с опорным фоновым шумом, и небольшое ослабление комфортного шума может уменьшить внимание слушателя к этому. Воспринимаемое качество звука может в результате стать выше. В дополнение, кодированный шум в активных кадрах сигнала может иметь более низкую энергию, чем некодированный опорный шум. По этой причине ослабление может также быть желательно для лучшего согласования энергии представления шума в активных и неактивных кадрах. Упомянутое ослабление обычно находится в диапазоне 0-5 дБ и может быть фиксированным или может зависеть от битовых скоростей активного режима (режимов) кодирования.
В высокоэффективных системах прерывистой передачи (DTX) может использоваться более решительное VAD, и части сигнала с высокой энергией (относительно уровня фонового шума) могут соответствующим образом представляться посредством комфортного шума. В этом случае ограничение изменения энергии между SID-кадрами вызовет ухудшение восприятия. Для лучшего управления сегментами с высокой энергией система может позволять большие мгновенные изменения CN-параметров для этих обстоятельств. Низкочастотная фильтрация или интерполяция CN-параметров выполняется на неактивных кадрах для того, чтобы получить натуральную гладкую динамику комфортного шума. Для первого SID-кадра, следующего за одним или несколькими активными кадрами (в дальнейшем как раз обозначаемого "первый SID"), наилучшим базисом для LSP-интерполяции и сглаживания энергии будут CN-параметры от предыдущих неактивных кадров, то есть предшествующих сегменту активного сигнала.
Для каждого неактивного кадра, SID или отсутствия данных, LSP-вектор qi может интерполироваться из предыдущих LSP-коэффициентов в соответствии с:
где i является номером кадра неактивных кадров, α∈[0, 1] является коэффициентом сглаживания, и являются медианными LSP-коэффициентами, вычисляемыми с параметрами из текущего SID-кадра и всех кадров с отсутствием данных, начиная с предыдущего SID-кадра. Для G.718 кодека используется коэффициент α=0.1 сглаживания.
Остаточная энергия Ei подобным образом интерполируется на SID-кадре или кадрах с отсутствием данных в соответствии с:
где β∈[0, 1] является коэффициентом сглаживания, и является усредненной энергией для текщего SID-кадра и кадров с отсутствием данных, начиная с предыдущего SID-кадра. Для G.718 кодека используется коэффициент сглаживания β=0.3.
Результат с описанной интерполяцией заключается в том, что для первого SID память (Ei-1 и qi-1) интерполяции может относиться к предыдущим кадрам с высокой энергией, например к непроизнесенным речевым кадрам, которые классифицируются как неактивные посредством VAD. В этом случае интерполяция первого SID начнется с характеристик шума, которые не являются репрезентативными для кодированного шума в близких кадрах затягивания активного режима. Тот же результат происходит, если характеристики фонового шума изменяются в течение сегментов активного сигнала, например, сегментов речевого сигнала. Пример проблем, относящихся к технологиям предыдущего уровня техники, показан на Фиг. 2. Спектрограмма речевого сигнала с шумами, который кодируется при работе прерывистой передачи (DTX), показывает два сегмента комфортного шума перед и после сегмента активного кодированного аудио (такого как речь). Можно увидеть, что когда характеристики шума из первого CN сегмента используются для интерполяции в первом SID, имеет место внезапное изменение характеристик шума. После некоторого времени комфортный шум согласуется с краем активного кодированного аудио лучше, но плохой переход вызывает ясное снижение воспринимаемого качества звука.
Использование более высоких коэффициентов сглаживания α и β сфокусирует CN-параметры на характеристиках текущего SID, но это еще может вызывать проблемы. Поскольку параметры в первом SID не могут усредняться в течение периода шума, как могут следующие SID-кадры, CN-параметры основываются только на свойствах сигнала в текущем кадре. Эти параметры могут представлять фоновый шум на текущем кадре лучше, чем долговременная характеристика в памяти интерполяции. Однако возможно, что эти SID-параметры выделяются и не представляют долговременных характеристик шума. Это, например, приведет к быстрым неестественным изменениям характеристик шума и к более низкому воспринимаемому качеству звука.
Сущность изобретения
Целью предлагаемой технологии является преодоление по меньшей мере одной из определенных выше проблем.
Первый аспект предлагаемой технологии включает способ генерации параметров управления CN. Способ включает в себя следующие этапы:
- Сохранение CN-параметров для SID-кадров и активных кадров затягивания в буфере заранее определенного размера.
- Определение подмножества CN-параметров, релевантного для SID-кадров на основе возраста сохраненных CN-параметров и на основе остаточных энергий.
- Использование определенного подмножества CN-параметров для определения параметров управления CN для первого SID-кадра, следующего за активным кадром сигнала.
Второй аспект предлагаемой технологии включает компьютерную программу для генерирования параметров управления CN. Компьютерная программа содержит читаемые компьютером кодовые единицы, которые при запуске на компьютере побуждают компьютер:
- сохранять CN-параметры для SID-кадров и активных кадров затягивания в буфере заранее определенного размера.
- Определять подмножество CN-параметров, релевантных для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий.
- Использовать определенное подмножество CN-параметров для определения параметров управления CN для первого SID-кадра ("Первого SID"), следующего за активным кадром сигнала.
Третий аспект предлагаемой технологии включает компьютерный программный продукт, содержащий читаемый компьютером носитель и компьютерную программу в соответствии со вторым аспектом, хранящуюся на читаемом компьютером носителе.
Четвертый аспект предлагаемой технологии включает контроллер комфортного шума для генерирования параметров управления CN. Устройство включает в себя:
- Буфер заранее определенного размера, сконфигурированный для хранения CN-параметров для SID-кадров и активных кадров затягивания.
- Устройство выбора подмножества, сконфигурированное для определения подмножества CN-параметров, релевантных для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий.
- Устройство извлечения параметров управления комфортного шума, сконфигурированное для использования определенного подмножества CN-параметров для определения параметров управления CN для первого SID-кадра, следующего за активным кадром сигнала.
Пятый аспект предлагаемой технологии включает декодер, включающий в себя контроллер комфортного шума в соответствии с четвертым аспектом.
Шестой аспект предлагаемой технологии включает сетевой узел, включающий в себя декодер в соответствии с пятым аспектом.
Седьмой аспект предлагаемой технологии включает сетевой узел, включающий в себя контроллер комфортного шума в соответствии с четвертым аспектом.
Преимущество предлагаемой технологии заключается в том, что она улучшает качество звука для переключения между активным и неактивным режимами кодирования для кодеков, работающих в режиме прерывистой передачи (DTX). Огибающая и энергия сигнала комфортного шума согласуются с предыдущими характеристиками сигнала подобных энергий в предыдущих кадрах SID и VAD затягивания.
Краткое описание чертежей
Предлагаемая технология, вместе с дальнейшими ее целями и преимуществами, может быть понята наилучшим образом посредством осуществления ссылки на следующее описание, взятое вместе с прилагаемыми чертежами, на которых:
Фиг. 1 является блок-схемой обобщенного VAD;
Фиг. 2 является примером спектрограммы речевого сигнала с шумами, который был декодирован в соответствии с решениями прерывистой передачи (DTX) предыдущего уровня техники;
Фиг. 3 является блок-схемой системы кодировщика в кодеке;
Фиг. 4 является блок-схемой примерного варианта осуществления декодера, осуществляющего способ генерирования комфортного шума согласно предлагаемой технологии;
Фиг. 5 является примером спектрограммы речевого сигнала с шумами, который был декодирован в соответствии с предлагаемой технологией;
Фиг. 6 является блок-схемой, иллюстрирующей пример варианта осуществления способа в соответствии с предлагаемой технологией;
Фиг. 7 является блок-схемой, иллюстрирующей другой пример варианта осуществления способа в соответствии с предлагаемой технологией;
Фиг. 8 является блок-схемой, иллюстрирующей пример варианта осуществления контроллера комфортного шума в соответствии с предлагаемой технологией;
Фиг. 9 является блок-схемой, иллюстрирующей другой пример варианта осуществления контроллера комфортного шума в соответствии с предлагаемой технологией;
Фиг. 10 является блок-схемой, иллюстрирующей другой пример варианта осуществления контроллера комфортного шума в соответствии с предлагаемой технологией;
Фиг. 11 является принципиальной схемой, изображающей некоторые компоненты примерного варианта осуществления декодера, при этом выполняемые функции декодера осуществляются посредством компьютера; и
Фиг. 12 является блок-схемой, иллюстрирующей сетевой узел, который включает в себя контроллер комфортного шума в соответствии с предлагаемой технологией.
Подробное описание
Варианты осуществления, описанные ниже, относятся к системе аудиокодера и декодера, главным образом, предназначенной для приложений речевой связи с использованием прерывистой передачи (DTX) с помощью комфортного шума для представления неактивного сигнала. Рассматриваемая система использует LP для кодирования сигналов как активных, так и неактивных кадров, где VAD используется для принятия решения об активности.
В кодере, иллюстрируемом на Фиг. 3, VAD 18 подает на выход решение об активности, которое используется для кодирования посредством кодера 20. В дополнение, решение затягивания VAD помещается в битовый поток посредством мультиплексора (multiplexer, MUX) 22 битового потока и передается к декодеру вместе с кодированными параметрами активных кадров (кадры затягивания и кадры без затягивания) и SID-кадров.
Раскрываемые варианты осуществления являются частью аудиодекодера. Такой декодер 100 схематично иллюстрируется на Фигуре 4. Демультиплексор (demultiplexer, DEMUX) 24 битового потока демультиплексирует принимаемый битовый поток в кодированные параметры и решения затягивания VAD. Демультиплексированные сигналы направляются в устройство 26 выбора режима. Принимаемые кодированные параметры декодируются в декодере 28 параметров. Декодированные параметры используются в декодере 30 активных кадров для декодирования активных кадров от устройства 26 выбора режима.
Декодер 100 также включает в себя буфер 200 заранее определенного размера M и сконфигурировнный для приема и хранения CN-параметров для SID-кадров и кадров затягивания активного режима, блок 300, сконфигурированный для определения того, какие из сохраненных CN-параметров являются релевантными для SID на основе возраста сохраненных CN-параметров, блок 400, сконфигурированный для определения, какие из определенных CN-параметров являются релевантными для SID на основе измерений остаточной энергии, и блок 500, сконфигурированный для использования определенных CN-параметров, которые являются релевантными для SID, для первого SID-кадра, следующего за активным кадром сигнала (сигналов).
Упомянутые параметры в буферах ограничиваются, чтобы быть свежими, для того, чтобы быть релевантными. Таким образом, размеры буферов, используемых для выбора релевантных подмножеств буферов, уменьшаются в течение более длительных периодов активного кодирования. Дополнительно сохраненные параметры замещаются посредством новых значений в течение SID и активно кодируемых кадров затягивания.
Посредством использования круговых буферов требования к сложности и памяти для управления буферами могут быть снижены. В таком осуществлении уже сохраненные элементы не должны перемещаться при добавлении нового элемента. Позиция последнего добавленного параметра или набора параметров используется вместе с размером буфера для размещения новых элементов. При добавлении новых элементов старые элементы должны переписываться.
Поскольку буферы держат параметры из ранних SID и кадров затягивания, они описывают характеристики сигнала предыдущих аудиокадров, которые, вероятно, но не обязательно, содержат фоновый шум. Число параметров, которые рассматриваются как релевантные, определяется посредством размера буфера и времени, или соответствующего числа кадров, пройденными с тех пор, как была сохранена информация. Раскрываемая здесь технология может описываться за несколько алгоритмических этапов, например, выполняемых на стороне декодера, иллюстрируемой на Фиг. 4. Эти этапы следующие:
1a. Этап 1a (выполняемый посредством блока, обозначаемого этапом 1a на Фиг. 4) – Обновление буфера или SID и кадров затягивания:
Для каждого SID и активного кадра затягивания квантованный вектор коэффициентов LSP и соответствующие квантованные значения остаточной энергии хранятся (в буфере 200) в буферах то есть
Индекс j∈[0, M-1] позиции буфера увеличивается на один перед каждым обновлением буфера и возвращается в исходное положение, если упомянутый индекс превышает размер M буфера, то есть
Как будет описано ниже, подмножества QK и EK из K0 самых последних сохраненных элементов в QM и EM, соответственно, определяют наборы сохраненных параметров.
1b. Этап 1b (выполняемый посредством блока, обозначаемого этап 1b на Фиг. 4) - Обновление буфера для активных кадров без затягивания:
В течение декодирования активных кадров размер подмножеств QK и EK уменьшается со скоростью γ-1 элементов на кадр в соответствии с:
где K0 является числом сохраненных элементов в предыдущем SID-кадре и кадрах затягивания, η∈Z+, и pA является числом последовательных активных кадров без затягивания. Скорость уменьшения относится ко времени, где γ=25 является осуществимой для 20 мс кадров. Это соответствует уменьшению на один элемент каждые полсекунды, в то время как декодируются активные кадры. Константа γ скорости уменьшения может потенциально определяться как любое значение γ∈Z+, но оно должно выбираться так, что старые характеристики шума, которые, вероятно, не представляют текущий фоновый шум, исключаются из подмножеств QK и EK. Упомянутое значение может, например, выбираться на основе ожидаемой динамики фонового шума. В дополнение, естественная длина речевых пакетов и поведение VAD могут рассматриваться, поскольку длинные последовательности последовательных активных кадров маловероятны. Обычно упомянутая константа будет в диапазоне γ≤500 для 20 мс кадров, что соответствует меньше, чем 10 секундам. Как альтернатива уравнение (9) может записываться в более компактной форме:
где
K0 является числом CN-параметров для SID-кадров и активных кадров затягивания, сохраненных в буфере 200,
γ является заранее определенной константой,
η является неотрицательным целым числом.
2. Этап 2 (выполняемый посредством блока, обозначенного этап 2 на Фиг. 4) - Выбор релевантных элементов буфера
На первом SID, следующем за активными кадрами, подмножество буфера EK выбирается на основе остаточных энергий. Подмножество размера L определяется как:
где
является самой последней сохраненной остаточной энергией,
γ1 и γ2 являются заранее определенными нижней и верхней границами, соответственно, для остаточных энергий, рассматриваемых являющимися репрезентативными для шума на переходе от активных к неактивным кадрам (например γ1=200 и γ2=20),
k0, … kK-1 распределяются так, что k0 соответствует самому последнему и kK-1 самому старому сохраненному CN-параметру.
Обычно γ2 выбирается из диапазона γ2∈[0, 100], как большие значения будут включать высокую остаточную энергию по сравнению с последней сохраненной остаточной энергией . Это может вызывать существенное увеличение энергии комфортного шума, что вызовет ухудшение различимости. Также желательно исключить характеристики сигнала из речевых кадров, которые в целом имеют большую энергию, как эти характеристики в целом не представляют фоновый шум хорошо. γ1 может выбираться незначительно больше, чем γ2, например, из диапазона γ1∈[50, 100], так как уменьшение в энергии обычно меньше раздражает. Дополнительно, вероятность включения характеристик речевого сигнала в целом меньше для кадров с остаточной энергией, меньшей чем , чем для кадров с остаточной энергией, большей чем .
Следует отметить, что энергии EkK могут так же, как в линейной области, быть представлены в логарифмической области, например в дБ. С энергиями в логарифмической области выбор релевантных элементов буфера, как определено в выражении (11), описывается эквивалентно с помощью энергий EkK в линейной области как:
где . Подходящие границы, определяющие подмножество буфера EK, даются, например, посредством или
Соответствующие векторы в LSP буфере QK определяют подмножество .
3. Этап 3 (выполняемый посредством блока, обозначенного этап 3 на Фиг. 4) – Определение репрезентативных параметров комфортного шума
Для нахождения репрезентативной остаточной энергии взвешенного среднего подмножества ES вычисляется:
где являются элементами в подмножестве весов:
Для максимального размера M=8 буфера подходящее множество весов равно:
wM={0,2, 0,16, 0,128, 0,1024, 0,08192, 0,065536, 0,0524288, 0,01048576}. Это означает, что недавние энергии получают больший вес в среднем остаточной энергии, что делает переход энергии между активными и неактивными кадрами ровнее.
Среди LSP-векторов в подмножестве QS медианный LSP-вектор выбирается посредством вычисления расстояний между всеми LSP-векторами в подмножестве буфера ES в соответствии с:
где являются элементами в векторе .
Для каждого LSP-вектора расстояния до других векторов предполагаются, то есть
Медианный LSP-вектор дается посредством вектора с наименьшим расстоянием до других векторов в подмножестве буфера, то есть
Если несколько векторов имеют одинаковое общее расстояние, медиана может произвольно выбираться среди этих векторов.
Альтернативный репрезентативный LSP-вектор может определяться как средний вектор подмножества QS.
4. Этап 4 (выполняемый посредством блока, обозначенного этап 4 на Фиг. 4) - Интерполяция параметров комфортного шума для первого SID-кадра
LSP медианный или средний вектор и усредненная остаточная энергия используются в интерполяции CN-параметров в первом SID-кадре, как описано в уравнении (5) и (6) с:
Значения и получаются из декодера 28 параметров. Коэффициенты α∈[0, 1] и β∈[0, 1] сглаживания для первого SID-кадра могут отличаться от коэффициентов, используемых в следующем SID и интерполяции CN-параметров кадров с отсутствием данных. Дополнительно, упомянутые коэффициенты могут, например, зависеть от меры, которая дальше описывает надежность определенных параметров и , например, размера подмножеств QS и ES. Подходящие значения, например, составляют α=0,2 и β=0,2 или β=0,05. Параметры комфортного шума для первого SID-кадра затем используются посредством генератора 32 комфортного шума для управления наполнения кадров с отсутствием данных от устройства 26 выбора режима с шумом на основе возбуждений от генератора 34 возбуждения.
Если подмножества QS и ES являются пустыми, самые последние извлеченные SID-параметры могут использоваться прямо без интерполяции из более старых параметров шума.
Передаваемый LSP-вектор , используемый в интерполяции, в кодере обычно получается прямо из LP-анализа текущего кадра, то есть предыдущие кадры не рассматриваются. Передаваемая остаточная энергия предпочтительно получается с использованием LP-параметров, соответствующих LSP-параметрам, используемым для синтеза сигнала в декодере. Эти LSP-параметры могут получаться в кодере посредством выполнения этапов 1-4 с помощью соответствующего буфера стороны кодера. Функционирование кодера таким путем предполагает, что энергия выходного сигнала декодера может согласовываться с энергией входного сигнала посредством управления кодированной и передаваемой остаточной энергией, поскольку LP-параметры синтеза декодера известны в кодере.
Фиг. 5 является примером спектрограммы речевого сигнала с шумами, который был декодирован в соответствии с предлагаемой технологией. Спектрограмма соответствует спектрограмме на Фиг. 2, то есть она построена на основе того же входного сигнала стороны кодера. Посредством сравнения спектрограмм предыдущего уровня техники (Фиг. 2) и предлагаемого решения (Фиг. 5), ясно видно, что переход между активно кодированным аудио и второй областью комфортного шума является более ровным для последнего. В этом примере подмножество характеристик сигнала в VAD кадрах затягивания используются для получения ровного перехода. Для других сигналов с более короткими сегментами активных кадров буферы параметров могут также содержать параметры из ближайших во времени SID-кадров.
Хотя является верным то, что будет только один первый SID-кадр, следующий за активным кадром сигнала, он будет косвенно действовать на CN-параметры в следующих SID-кадрах из-за сглаживания/интерполяции.
Фиг. 6 является блок-схемой, иллюстрирующей пример варианта осуществления способа в соответствии с предлагаемой технологией. Этап S1 хранит CN-параметры для SID-кадров и активных кадров затягивания в буфере заранее определенного размера. Этап S2 определяет подмножество CN-параметров, релевантное для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий. Этап S3 использует определенные подмножества CN-параметров для определения параметров управления CN для первого SID-кадра, следующего за активным кадром сигнала (другими словами, он определяет параметры управления CN для первого SID-кадра, следующего за активным кадром сигнала, на основе определенного подмножества CN-параметров).
Фиг. 7 является блок-схемой, иллюстрирующей другой пример варианта осуществления способа в соответствии с предлагаемой технологией. Упомянутая фигура иллюстрирует этапы способа, выполняемые для каждого кадра. Различные части буфера (такие как 200 на Фиг. 4) обновляются в зависимости от того, является ли кадр активным кадром без затягивания или SID-кадром/кадром с затягиванием (определяется на этапе A, который соответствует устройству 26 выбора режима на Фиг. 4). Если кадр является SID-кадром или кадром с затягиванием, то этап 1a (соответствует блоку, который обозначен этап 1a на Фиг. 4) обновляет буфер с помощью новых CN-параметров, например, как описано под подразделом 1a выше. Если кадр является активным кадром без затягивания, этап 1b (соответствует блоку, который обозначен этап 1b на Фиг. 4) обновляет размер подмножества с ограничением по возрасту сохраненных CN-параметров на основе числа последовательных активных кадров без затягивания, например, как описано под подразделом 1b выше. Этап 2 (соответствует блоку, который обозначен этап 2 на Фиг. 4) выбирает подмножество CN-параметров из подмножества с ограничением по возрасту на основе остаточных энергий, например, как описано под подразделом 2 выше. Этап 3 (соответствует блоку, который обозначен этап 3 на Фиг. 4) определяет репрезентативные CN-параметры из подмножества CN-параметров, например, как описано под подразделом 3 выше. Этап 4 (соответствует блоку, который обозначен этап 4 на Фиг. 4) интерполирует репрезентативные CN-параметры с помощью декодированных CN-параметров, например, как описано под подразделом 4 выше. Этап B заменяет текущий кадр следующим кадром, и затем упомянутая процедура повторяется с этим кадром.
Фиг. 8 является блок-схемой, иллюстрирующей пример варианта осуществления контроллера 50 комфортного шума в соответствии с предлагаемой технологией. Буфер 200 заранее определенного размера сконфигурирован для хранения CN-параметров для SID-кадров и активных кадров затягивания. Устройство 50A выбора подмножества сконфигурировано для определения подмножества CN-параметров, релевантных для SID-кадров на основе возраста сохраненных CN-параметров и на основе остаточных энергий. Устройство 50B извлечения параметров управления комфортного шума сконфигурировано для использования определенного подмножества CN-параметров для определения параметров управления CN для первого SID-кадра ("Первого SID"), следующего за активным кадром сигнала.
Фиг. 9 является блок-схемой, иллюстрирующей другой пример варианта осуществления контроллера 50 комфортного шума в соответствии с предлагаемой технологией. Устройство 52 обновления буфера SID-кадров и кадров с затягиванием сконфигурировано для обновления, для SID-кадров и активных кадров затягивания, буфера 200 новыми CN-параметрами например, как описано под подразделом 1a выше. Устройство 54 обновления буфера кадров без затягивания сконфигурировано для обновления, для активных кадров без затягивания, размера K подмножества QK, EK с ограничением по возрасту сохраненных CN-параметров на основе числа pA последовательных активных кадров без затягивания, например, как описано под подразделом 1b выше. Устройство 300 выбора элементов буфера сконфигурировано для выбора подмножества CN-параметров QS, ES из подмножества QK, EK с ограничением по возрасту на основе остаточных энергий, например, как описано под подразделом 2 выше. Устройство 400 оценивания параметров комфортного шума сконфигурировано для определения репрезентативных CN-параметров из подмножества CN-параметров QS, ES, например, как описано под подразделом 3 выше. Устройство 500 интерполяции комфортного шума сконфигурировано для интерполяции репрезентативных CN-параметров с помощью декодированных CN-параметров , например, как описано под подразделом 4 выше. Получаемые параметры qi, Ei управления комфортного шума для первого SID-кадра затем используются посредством генератора 32 комфортного шума для управления заполнением шумом кадров с отсутствием данных на основе возбуждений от генератора 34 возбуждения.
Этапы, функции, процедуры и/или блоки, описанные здесь, могут осуществляться в аппаратном обеспечении с использованием любой традиционной технологии, такой как технология дискретных схем или технология интегральных схем, включающей в себя как электронные схемы общего назначения, так и специализированные схемы.
Альтернативно, по меньшей мере, некоторые из этапов, функций, процедур и/или блоков, описываемых здесь, могут осуществляться в программном обеспечении для выполнения посредством подходящего оборудования обработки. Это оборудование может включать в себя, например, один или несколько микропроцессоров, один или несколько цифровых сигнальных процессоров (Digital Signal Processors, DSP), одну или несколько специализированных интегральных схем (Application Specific Integrated Circuits, ASIC), аппаратное обеспечение с ускоренным видео или одно, или несколько подходящих программируемых логических устройств, таких как программируемые вентильные матрицы (Field Programmable Gate Arrays, FPGA). Сочетания таких элементов обработки также осуществимы.
Следует также понимать, что может быть возможно повторно использовать способности общей обработки, уже присутствующие в сетевом узле, таком как мобильный терминал или персональный компьютер (pc). Это может, например, быть сделано посредством перепрограммирования существующего программного обеспечения или посредством добавления компонентов нового программного обеспечения.
Фиг. 10 является блок-схемой, иллюстрирующей другой пример варианта осуществления контроллера 50 комфортного шума в соответствии с предлагаемой технологией. Этот вариант осуществления осуществляется на основе процессора 62, например микропроцессора, который выполняет компьютерную программу для генерирования параметров управления CN. Упомянутая программа хранится в памяти 64. Упомянутая программа включает в себя блок 66 кода для хранения CN-параметров для SID-кадров и активных кадров затягивания в буфере заранее определенного размера, блок 68 кода для определения подмножества CN-параметров, релевантных для SID-кадров, на основе возраста сохраненных CN-параметров и остаточных энергий, и блок 70 кода для использования определенного подмножества CN-параметров для определения параметров управления CN для первого SID-кадра, следующего за активным кадром сигнала. Процессор 62 обменивается информацией с памятью 64 через системную шину. Входная информация pA, , , принимается посредством контроллера 72 ввода/вывода (input/output, I/O), контролирующего шину I/O, к которому присоединяются процессор 62 и память 64. Параметры управления CN qi, Ei, получаемые из программы, выводятся из памяти 64 посредством I/O контроллера 72 через I/O шину.
В соответствии с аспектом вариантов осуществлений, декодер для генерирования комфортного шума, представляющий неактивный сигнал, предоставляется. Упомянутый декодер может работать в режиме прерывистой передачи (DTX) и может осуществляться в мобильном терминале и посредством компьютерного программного продукта, который может осуществляться в мобильном терминале или персональном компьютере (pc). Упомянутый компьютерный программный продукт может загружаться от сервера на мобильный терминал.
Фигура 11 является принципиальной схемой, изображающей некоторые компоненты примерного варианта осуществления декодера 100, при этом выполняемые функции упомянутого декодера осуществляются посредством компьютера. Упомянутый компьютер содержит процессор 62, который является способным выполнять инструкции программного обеспечения, содержащиеся в компьютерной программе, хранящейся на компьютерном программном продукте. Кроме того, упомянутый компьютер содержит по меньшей мере один компьютерный программный продукт в форме энергонезависимой памяти 64 или энергозависимой памяти, например, EEPROM (Electrically Erasable Programmable Read-only Memory – Электрически стираемая память), флэш-памяти, дисковода или RAM (Random-access memory – Оперативная память). Упомянутая компьютерная программа позволяет хранение CN-параметров для SID-кадров и кадров затягивания активного режима в буфере заранее определенного размера, определение того, какие сохраненные CN-параметры являются релевантными для SID на основе возраста сохраненных CN-параметров и измерений остаточной энергии, и использование определенных CN-параметров, которые являются релевантными для SID, для оценивания CN-параметров в первом SID-кадре, следующем за активным кадром (кадрами) сигнала.
Фиг. 12 является блок-схемой, иллюстрирующей сетевой узел 80, который включает в себя контроллер 50 комфортного шума в соответствии с предлагаемой технологией. Упомянутый сетевой узел 80 является обычно пользовательским оборудованием (User Equipment, UE), таким как мобильный терминал или персональный компьютер (PC). Контроллер 50 комфортного шума может предоставляться в декодере 100, как указывается посредством пунктирных линий. В качестве альтернативы он может предоставляться в кодере, как очерчено выше.
В вариантах осуществления предлагаемой технологии, описанных выше, LP-коэффициенты ak трансформируются в LSP область. Однако те же принципы могут также применяться к LP-коэффициентам, которые трансформируются в LSF, ISP или ISF область.
Для кодеков с ослаблением комфортного шума может быть выгодным постепенное ослабление активно кодированного сигнала в течение VAD кадров затягивания. Энергия для комфортного шума будет тогда лучше согласовываться с самым последним, активно кодированным кадром, что далее улучшает воспринимаемое качество звука. Коэффициент λ ослабления может вычисляться и применяться к LP-невязке для каждого кадра с затягиванием посредством:
где pHO является числом последовательных VAD кадров затягивания. В качестве альтернативы λ может вычисляться как:
где L=0,6 и L0=6 управляют максимальным ослаблением и уровнем ослабления. Максимальное ослабление может обычно выбираться в диапазоне L=[0,5, l) и параметр L0 управления уровнем может, например, выбираться так, что , где является числом кадров, необходимых для максимального ослабления. может, например, устанавливаться на среднее или максимальное число последовательных VAD кадров затягивания, которое возможно (из-за добавления затягивания в VAD). Обычно это будет в диапазоне ={l,...,15} кадров.
Следует понимать, что технология, описанная здесь, может взаимодействовать с другими решениями, обрабатывающими первые CN кадры, следующие за активными сегментами сигнала. Например, она может дополнять алгоритм, где большое изменение CN-параметров разрешено для кадров с высокой энергией (относительно уровня фонового шума). Для этих кадров предыдущие характеристики шума могут не сильно воздействовать на обновление в текущем SID-кадре. Описанная технология может тогда использоваться для кадров, которые не определяются как кадры с высокой энергией.
Будет понятно специалистам в данном уровне техники, что различные модификации и изменения могут быть сделаны для предлагаемой технологии без отклонения от его области действия, которая определяется посредством прилагаемых пунктов формулы изобретения.
СОКРАЩЕНИЯ
ACELP Algebraic Code-Excited Linear Prediction- Алгебраическое линейное предсказание с кодовым возбуждением
AMR Adaptive Multi-Rate - Адаптивная мультискорость
AMR NB AMR Narrowband - Узкая полоса AMR
AR Auto Regressive - Авторегрессионный
ASIC Application Specific Integrated Circuits- Специализированные интегральные схемы
CN Comfort Noise Комфортный шум
DFT Discrete Fourier Transform - Дискретное преобразование Фурье
DSP Digital Signal Processors - Цифровые сигнальные процессоры
DTX Discontinuous Transmission - Прерывистая передача
EEPROM Electrically Erasable - Programmable Read-only Memory- Электрически стираемая программируемая постоянная память
FPGA Field Programmable Gate Arrays - Программируемые вентильные матрицы
ISF Immitance Spectrum Frequencies - Частоты спектра с полной проводимостью
ISP Immitance Spectrum Pairs - Спектральные пары с полной проводимостью
LP Linear Prediction - Линейное предсказание
LSF Line Spectral Frequencies - Линейные спектральные частоты
LSP Line Spectral Pairs - Линейные спектральные пары
MDCT Modified Discrete Cosine Transform - Модифицированное дискретное косинусное преобразование
RAM Random-access Memory - Оперативная память
SAD Sound Activity Detector - Детектор звуковой
SID Silence Insertion Descriptor - Дескриптор добавления тишины
UE User Equipment - Пользовательское оборудование
VAD Voice Activity Detector - Детектор речевой активности
название | год | авторы | номер документа |
---|---|---|---|
ГЕНЕРАЦИЯ КОМФОРТНОГО ШУМА | 2013 |
|
RU2658544C1 |
УСТРОЙСТВО И СПОСОБ КОДИРОВАНИЯ СИГНАЛОВ | 2013 |
|
RU2638752C2 |
УСТРОЙСТВО И СПОСОБ КОДИРОВАНИЯ СИГНАЛОВ | 2017 |
|
RU2665236C1 |
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ | 2009 |
|
RU2461898C2 |
СПОСОБ, УСТРОЙСТВО И СИСТЕМА ДЛЯ ОБРАБОТКИ АУДИОДАННЫХ | 2012 |
|
RU2579926C1 |
СПОСОБ, УСТРОЙСТВО И СИСТЕМА ДЛЯ ОБРАБОТКИ АУДИОДАННЫХ | 2012 |
|
RU2617926C1 |
СПОСОБ, УСТРОЙСТВО И СИСТЕМА ДЛЯ ОБРАБОТКИ АУДИОДАННЫХ | 2017 |
|
RU2641464C1 |
СПОСОБ И УСТРОЙСТВО ДЛЯ ФОРМИРОВАНИЯ ШУМОВ | 2009 |
|
RU2469420C2 |
СПОСОБ И СРЕДСТВО ДЛЯ КОДИРОВАНИЯ ИНФОРМАЦИИ ФОНОВОГО ШУМА | 2009 |
|
RU2440674C1 |
СПОСОБ И СРЕДСТВО ДЛЯ КОДИРОВАНИЯ ИНФОРМАЦИИ ФОНОВОГО ШУМА | 2009 |
|
RU2461080C2 |
Изобретение относится к средствам для генерации комфортного шума. Технический результат заключается в повышении воспринимаемого качества звука. Буфер заранее определенного размера сконфигурирован, чтобы хранить CN-параметры для кадров SID (Silence Insertion Descriptor – Дескриптор добавления тишины) и активных кадров затягивания. Устройство выбора подмножества сконфигурировано для определения подмножества CN-параметров, релевантного для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий. Устройство извлечения параметров управления комфортного шума сконфигурировано, чтобы использовать определенное подмножество CN-параметров для определения параметров управления CN для первого SID-кадра, следующего за активным кадром сигнала. 6 н. и 10 з.п. ф-лы, 12 ил.
1. Способ генерирования параметров управления комфортным шумом, CN, отличающийся тем, что:
сохраняют (S1; 1а) CN-параметры для кадров дескриптора добавления тишины, SID, и активных кадров затягивания в буфере (200) заранее определенного размера (М);
определяют (S2, 1b, 2) подмножество CN-параметров (QS, ES), релевантное для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий; и
используют (S3, 3, 4) определенное подмножество CN-параметров (QS, ES) для определения параметров управления CN (qi/Ei) для первого SID-кадра ("Первого SID"), следующего за активным кадром сигнала,
причем способ дополнительно содержит этапы, на которых:
обновляют (1а) для SID-кадров и активных кадров затягивания буфер (200) посредством новых CN-параметров
обновляют (1b) для активных кадров без затягивания размер K подмножества (QK, EK) с ограничением по возрасту сохраненных CN-параметров на основе числа рА последовательных активных кадров без затягивания;
выбирают (2) подмножество (QS, ES) CN-параметров из подмножества (QK, EK) с ограничением по возрасту на основе остаточных энергий;
определяют (3) репрезентативные CN-параметры из подмножества (QS, ES) CN-параметров;
интерполируют репрезентативные CN-параметры с помощью декодированных CN-параметров .
2. Способ по п. 1, отличающийся тем, что обновляют (1b) для активных кадров без затягивания размер K подмножества (QK, EK) с ограничением по возрасту в соответствии с:
K=K0-η для η⋅γ≤рА<(η+1)⋅γ,
где K0 является числом CN-параметров для SID-кадров и активных кадров затягивания, сохраненных в буфере (200),
γ является заранее определенной константой,
η является неотрицательным целым числом.
3. Способ по п. 1 или 2, отличающийся тем, что выбирают (2) подмножество (QS, ES) CN-параметров из подмножества (QK, EK) с ограничением по возрасту посредством включения только CN-параметров, для которых:
для k=k0, …, kK-1,
где является последней сохраненной остаточной энергией,
γ1 и γ2 являются заранее определенными нижней и верхней границами, соответственно, для остаточных энергий, рассматриваемых являющимися репрезентативными для шума на переходе от активных к неактивным кадрам,
k0, …, kK-1 распределены так, что k0 соответствует самому последнему и kK-1 соответствует самому старому сохраненному CN-параметру.
4. Способ по п. 1 или 2, отличающийся тем, что определяют (3) репрезентативные CN-параметры из подмножества (QS, ES) CN-параметров, где
является медианным вектором множества QS векторов в подмножестве (QS, ES) CN-параметров, представляющем авторегрессионные, AR, коэффициенты, и
является взвешенной средней остаточной энергией множества ES остаточных энергий в выбранном подмножестве (QS, ES) CN-параметров.
5. Способ по п. 3, отличающийся тем, что определяют (3) репрезентативные CN-параметры из подмножества (QS, ES) CN-параметров, где
является медианным вектором множества QS векторов в подмножестве (QS, ES) CN-параметров, представляющем авторегрессионные, AR, коэффициенты, и
является взвешенной средней остаточной энергией множества ES остаточных энергий в выбранном подмножестве (QS, ES) CN-параметров.
6. Способ по п. 4, отличающийся тем, что медианный вектор представляет AR-коэффициенты как линейные спектральные пары.
7. Читаемый компьютером носитель, содержащий компьютерную программу для генерирования параметров управления комфортным шумом, CN, содержащую читаемые компьютером кодовые единицы, которые, когда запускаются на компьютере (60), побуждают упомянутый компьютер:
сохранять (66; S1; 1а) CN-параметры для кадров дескриптора добавления тишины, SID, и активных кадров затягивания в буфере (200) заранее определенного размера (М);
определять (68; S2; 1b, 2) подмножество (QS, ES) CN-параметров, релевантное для SID-кадров, на основе возраста сохраненных CN-параметров и на основе остаточных энергий;
использовать (68; S3; 3, 4) определенное подмножество (QS, ES) CN-параметров для определения параметров (qi,Ei) управления CN для первого SID-кадра ("Первого SID"), следующего за активным кадром сигнала,
при этом компьютерная программа дополнительно содержит читаемые компьютером кодовые единицы, которые, когда запускаются на компьютере, побуждают упомянутый компьютер:
обновлять (1а) для SID-кадров и активных кадров затягивания буфер (200) посредством новых CN-параметров ;
обновлять (1b) для активных кадров без затягивания размер K подмножества (QK, EK) с ограничением по возрасту сохраненных CN-параметров на основе числа рА последовательных активных кадров без затягивания;
выбирать (2) подмножество (QS, ES) CN-параметров из подмножества (QK, EK) с ограничением по возрасту на основе остаточных энергий;
определять (3) репрезентативные CN-параметры из подмножества (QS, ES) CN-параметров;
интерполировать репрезентативные CN-параметры с помощью декодированных CN-параметров .
8. Контроллер (50) комфортного шума для генерирования параметров управления комфортным шумом, CN, отличающийся тем, что включает в себя:
буфер (200) заранее определенного размера (М), сконфигурированный для хранения CN-параметров , для SID-кадров и активных кадров затягивания;
устройство (50А; 54, 300) выбора подмножества, сконфигурированное для определения подмножества CN-параметров (QS, ES), релевантного для кадров дескриптора добавления тишины, SID, на основе возраста сохраненных CN-параметров и на основе остаточных энергий;
устройство (50В; 400, 500) извлечения параметров управления комфортным шумом, сконфигурированное для использования определенного подмножества (QS, ES) CN-параметров для определения параметров (qi,Ei) управления CN для первого SID-кадра ("Первого SID"), следующего за активным кадром сигнала.
устройство (52) обновления буфера кадров SID и кадров с затягиванием, сконфигурированное для обновления, для SID-кадров и активных кадров затягивания, буфера (200) посредством новых CN-параметров ;
устройство (54) обновления буфера кадров без затягивания, сконфигурированное для обновления, для активных кадров без затягивания, размера K подмножества (QK, EK) с ограничением по возрасту сохраненных CN-параметров на основе числа рА последовательных активных кадров без затягивания;
устройство (300) выбора элементов буфера, сконфигурированное для выбора подмножества CN-параметров (QS, ES) из подмножества (QK, EK) с ограничением по возрасту на основе остаточных энергий;
устройство (400) оценивания параметров комфортного шума, сконфигурированное для определения (3) репрезентативных CN-параметров из подмножества CN-параметров (QS, ES); и
устройство (500) интерполяции параметров комфортного шума, сконфигурированное для интерполяции репрезентативных CN-параметров с помощью декодированных CN-параметров .
9. Контроллер (50) по п. 8, отличающийся тем, что устройство (300) выбора элементов буфера сконфигурировано для обновления, для активных кадров без затягивания, размера K подмножества (QK, EK) с ограничением по возрасту в соответствии с:
K=K0-η для η⋅γ≤рА<{η+1)⋅γ,
где K0 является числом CN-параметров для SID-кадров и активных кадров затягивания, сохраненных в буфере (200),
γ является заранее определенной константой,
η является неотрицательным целым числом.
10. Контроллер (50) по п. 8 или 9, отличающийся тем, что устройство (300) выбора элементов буфера сконфигурировано для выбора подмножества (QS, ES) CN-параметров из подмножества (QK, EK) с ограничением по возрасту посредством включения только CN-параметров, для которых:
для k=k0, …, kK-1,
где является последней сохраненной остаточной энергией,
γ1 и γ2 являются заранее определенными нижней и верхней границами, соответственно, для остаточных энергий, рассматриваемых являющимися репрезентативными для шума на переходе от активных к неактивным кадрам,
k0, …, kK-1 распределены так, что k0 соответствует самому последнему и kK-1 соответствует самому старому сохраненному CN-параметру.
11. Контроллер (50) по п. 8 или 9, отличающийся тем, что устройство (400) оценивания параметров комфортного шума сконфигурировано для определения репрезентативных CN-параметров из подмножества (QS, ES) CN-параметров, где
является медианным вектором множества QS векторов в подмножестве (QS, ES) CN-параметров, представляющем авторегрессионные, AR, коэффициенты, и
является взвешенной средней остаточной энергией множества ES остаточных энергий в выбранном подмножестве (QS, ES) CN-параметров.
12. Контроллер (50) по п. 10, отличающийся тем, что устройство (400) оценивания параметров комфортного шума сконфигурировано для определения репрезентативных CN-параметров из подмножества (QS, ES) CN-параметров, где
является медианным вектором множества QS векторов в подмножестве (QS, ES) CN-параметров, представляющем авторегрессионные, AR, коэффициенты, и
является взвешенной средней остаточной энергией множества ES остаточных энергий в выбранном подмножестве (QS, ES) CN-параметров.
13. Декодер (100), включающий в себя контроллер (50) комфортного шума в соответствии с любым из предыдущих пунктов 8-12.
14. Сетевой узел (80), включающий в себя декодер (100) в соответствии с п. 13.
15. Сетевой узел (80), включающий в себя контроллер (50) комфортного шума в соответствии с любым из предыдущих пунктов 8-12.
16. Сетевой узел (80) по любому из пп. 14, 15, при этом упомянутый сетевой узел является мобильным терминалом.
US 6606593 B1, 12.08.2003 | |||
US 5630016 A, 13.05.1997 | |||
US 5978760 A, 02.11.1999 | |||
US 6269331 B1, 31.07.2001 | |||
СПОСОБ И УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ | 2009 |
|
RU2461898C2 |
Авторы
Даты
2017-01-30—Публикация
2013-05-07—Подача