RU2405217C2 - Способ взвешенного сложения с перекрытием - Google Patents

Способ взвешенного сложения с перекрытием Download PDF

Info

Publication number
RU2405217C2
RU2405217C2 RU2007132729/09A RU2007132729A RU2405217C2 RU 2405217 C2 RU2405217 C2 RU 2405217C2 RU 2007132729/09 A RU2007132729/09 A RU 2007132729/09A RU 2007132729 A RU2007132729 A RU 2007132729A RU 2405217 C2 RU2405217 C2 RU 2405217C2
Authority
RU
Russia
Prior art keywords
samples
signal
frames
masking
subsequences
Prior art date
Application number
RU2007132729/09A
Other languages
English (en)
Other versions
RU2007132729A (ru
Inventor
Сёрен Ванг АНДЕРСЕН (DK)
Сёрен Ванг АНДЕРСЕН
Original Assignee
Скайп Лимитед
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=59285473&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=RU2405217(C2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Скайп Лимитед filed Critical Скайп Лимитед
Publication of RU2007132729A publication Critical patent/RU2007132729A/ru
Application granted granted Critical
Publication of RU2405217C2 publication Critical patent/RU2405217C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/18Automatic or semi-automatic exchanges with means for reducing interference or noise; with means for reducing effects due to line faults with means for protecting lines
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/18Vocoders using multiple modes
    • G10L19/24Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/26Pre-filtering or post-filtering

Abstract

Изобретение относится к обработке сигналов, в частности к способу взвешенного сложения с перекрытием. Заявленный способ генерации выходной последовательности выборок в соответствии с первой и второй подпоследовательностями выборок содержит этапы, на которых применяют процедуру взвешенного сложения с перекрытием к первой и второй подпоследовательностям для генерации выходной последовательности выборок, оптимизируют весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, в соответствии с мерой совпадения между выходной последовательностью выборок и одной или несколькими целевыми последовательностями выборок. Технический результат - обеспечение ослабления артефактов сигнала, возникающих при взвешенном сложении с перекрытием подпоследовательностей сигналов. 3 н. и 17 з.п. ф-лы, 13 ил.

Description

Область техники, к которой относится изобретение
Настоящее изобретение относится к обработке сигналов. В частности, настоящее изобретение относится к способу, устройству и конфигурации, которые позволяют ослаблять артефакты сигнала, возникающие при взвешенном сложении с перекрытием подпоследовательностей сигналов. Применения включают в себя такие манипуляции с сигналами, как шумоподавление, усиление, кодирование, маскирование и синтез. В порядке примера, настоящее изобретение позволяет усовершенствовать шумоподавление, усиление, кодирование, маскирование и синтез речевых сигналов и аудиосигналов. Настоящее изобретение преимущественно применяется в связи с системами для ослабления эффектов потерь и/или флуктуаций времени задержки и/или расфазировки тактовых сигналов сигнальных пакетов в телекоммуникационных и беспроводных телекоммуникационных системах.
Описание уровня техники
Изобретение предусматривает применение в телекоммуникационных системах, в частности применение в ослаблении эффектов потерь и/или флуктуаций времени задержки и/или расфазировки тактовых сигналов сигнальных пакетов. Специалисту в данной области техники на основе описания сущности изобретения, предпочтительных вариантов осуществления, чертежей и формулы изобретения должно быть очевидно, что настоящее изобретение преимущественно применяется, в принципе, там, где процедура взвешенного сложения с перекрытием применяется в цифровой обработке сигналов.
Современные телекоммуникации базируются на цифровой передаче сигналов. Например, согласно фиг.1, передатчик 200 собирает звуковой сигнал от источника 100. Этот источник может быть создан одним или несколькими говорящими людьми и другими источниками акустических волн, собранных микрофоном, или может являться системой хранения или генерации звукового сигнала, например системой текстуально-речевого синтеза или диалога. Если сигнал источника является аналоговым, он преобразуется в цифровое представление посредством аналого-цифрового преобразователя. Затем цифровое представление кодируется и помещается в пакеты, формат которых пригоден для цифрового канала 300. Пакеты передаются по цифровому каналу. Цифровой канал обычно содержит множество уровней абстракции.
В уровне абстракции, показанном на фиг.1, цифровой канал принимает последовательность пакетов на входе и доставляет последовательность пакетов на выходе. Вследствие ухудшения канала, обычно вызванного шумом, неоднородностями и перегрузкой в канале, выходная последовательность пакетов обычно ухудшается за счет потери некоторых пакетов и задержки по времени прихода и флуктуаций времени задержки других пакетов. Кроме того, различие тактовых сигналов передатчика и приемника может приводить к расфазировке тактовых сигналов. Задача приемника 400 состоит в декодировании принятых пакетов данных и в преобразовании декодированных цифровых представлений из потока пакетов и декодировании их в цифровые представления сигнала и дальнейшем преобразовании этих представлений в декодированный звуковой сигнал в формате, пригодном для вывода получателю сигнала 500. Этот получатель сигнала может являться одним человеком или несколькими людьми, которые воспринимают декодированный звуковой сигнал посредством, например, одного или нескольких громкоговорителей. Альтернативно, получатель сигнала может представлять собой систему хранения речевых сигналов или аудиосигналов или диалоговую систему или распознаватель речевых сигналов или аудиосигналов.
Задача приемника состоит в точном воспроизведении сигнала, который можно представлять получателю. Когда получатель прямо или косвенно содержит слушателя-человека, задачей приемника является получение представления звукового сигнала, которое, будучи представлено слушателю-человеку, точно воспроизводит воспринимаемое человеком впечатление и информацию акустического сигнала от источника или источников. Для решения этой задачи в общем случае, когда канал ухудшает принятую последовательность пакетов за счет потерь, задержки, флуктуаций времени задержки и расфазировки тактовых сигналов, которые могут дополнительно присутствовать, эффективное маскирование необходимо как часть приемной подсистемы.
В порядке примера, одна возможная реализация приемной подсистемы для осуществления этой задачи показана на фиг.2. Согласно этому чертежу, входящие пакеты сохраняются в буфере 410 флуктуаций, откуда блок 420 декодирования и маскирования получает представления принятого кодированного сигнала и декодирует и маскирует эти представления кодированного сигнала для получения представлений сигнала, пригодных для хранения в буфере 430 воспроизведения и последующего воспроизведения. Управление временем начала маскирования и выбором конкретных параметров этого маскирования, например, длины маскированного сигнала, может, в порядке примера, осуществлять блок 440 управления, который отслеживает содержимое буфера флуктуаций и буфера воспроизведения и управляет работой блока 420 декодирования и маскирования.
Маскирование также может осуществляться как часть канальной подсистемы. На фиг.3 показан один пример канальной подсистемы, в которой пакеты переправляются из канала 310 в канал 330 через подсистему 320, которая в дальнейшем упоминается как ретранслятор. В реальных системах функция ретрансляции может осуществляться блоками, которые могут называться по-разному в зависимости от контекста, например маршрутизаторами различных типов, прокси-серверами, краевыми серверами, контроллерами сетевого доступа, контроллерами беспроводной локальной сети, шлюзами Voice-over-IP (речь по IP-протоколу), медиа-шлюзами, контроллерами нелицензионной сети и пр. В данном контексте все они являются примерами ретрансляционных систем.
Один пример ретрансляционной системы, которая способна осуществлять маскирование аудиосигнала, показана на фиг.4. Как показано на чертеже, пакеты переправляются из входного буфера 310 в выходной буфер 360 через подсистемы 320 и 350 коммутации пакетов. Блок 370 управления отслеживает входной и выходной буферы и в результате этого отслеживания принимает решения относительно необходимости перекодирования и маскирования. Если это необходимо, коммутаторы направляют пакеты через блок 330 перекодирования и маскирования. Если это не нужно, коммутаторы направляют пакеты через подсистему 340 минимального действия протокола, которая выполняет минимум операций над заголовками пакетов для их согласования с применяемыми протоколами. Эти операции могут включать в себя изменение порядковых номеров и меток времени пакетов.
При передаче аудиосигналов с использованием систем, в частности, проиллюстрированных в вышеприведенном описании, требуется маскирование потерь, задержки, флуктуации времени задержки и/или расфазировки тактовых сигналов в сигналах, представляющих или частично представляющих звуковой сигнал.
Методы повторения основного тона, иногда реализуемые в модели осциллятора, базируются на оценке периода основного тона в вокализованной речи или, альтернативно, на оценке соответствующей основной частоты вокализованного речевого сигнала. Если известен период основного тона, кадр маскирования получается путем повторного считывания последнего периода основного тона. Нарушения непрерывности в начале и конце кадра маскирования и между каждыми двумя повторениями периода основного тона можно сглаживать с использованием процедуры сложения с перекрытием с вырезанием. Примеры метода повторения основного тона можно найти в публикации № WO 0148736 и рекомендации Международного союза электросвязи ITU-T G.711 Приложение 1. Системы, отвечающие уровню техники, предусматривают маскирование на основе повторения основного тона посредством декодеров, основанных на принципе кодирования с линейным предсказанием. В этих системах повторение основного тона обычно осуществляется в области возбуждения линейного предсказания путем считывания из цепи долгосрочного предсказателя или адаптивной кодовой книги. Примеры маскирования на основе повторения основного тона в области возбуждения линейного предсказания можно найти в патенте № US5699481, рекомендации Международного союза электросвязи ITU-T G.729, и Internet Engineering Task Force Request For Comments 3951. Вышеописанные методы применяются для маскирования потерь или возрастающей задержки, т.е. положительных флуктуаций времени задержки, и ситуаций недогрузки или близких к недогрузке входного буфера или буфера флуктуаций, например, вследствие расфазировки тактовых сигналов. Для маскирования убывающей задержки, отрицательных флуктуаций времени задержки или ситуаций перегрузки или близких к перегрузке входного буфера или буфера флуктуаций, необходимо генерировать укороченные сигналы маскирования. Методы, основанные на основном тоне, позволяют делать это посредством процедуры сложения с перекрытием между периодом основного тона и более ранним периодом основного тона. Пример этого метода можно найти в патенте № WO 0148736. Опять же, это можно делать, используя возможности, имеющиеся в декодерах с линейным предсказанием. В порядке примера, в патенте № US5699481 раскрыт способ, согласно которому векторы вклада фиксированной кодовой книги просто отбрасываются из сигнала воспроизведения, на основании состояния адаптивной кодовой книги для стабилизации периодичности основного тона в воспроизводимом сигнале. В связи с методами повторения основного тона одна задача состоит в плавном продолжении сигнала от кадра маскирования к следующему кадру. В публикации № WO 0148736 раскрыт способ решения этой задачи. Согласно изобретению, раскрытому в WO 0148736, эта задача решается посредством кадров маскирования, изменяющихся со временем и, возможно, имеющих длину, зависящую от сигнала. Хотя это позволяет эффективно осуществлять плавное продолжение сигнала в связи с маскированием флуктуаций времени задержки и расфазировки тактовых сигналов, это решение малопригодно для систем, подобных показанным на фиг.4: маскирование такого типа не позволяет гарантировать кодирование маскирования в кадры фиксированной заранее заданной длины, которые плавно соединяются с уже закодированными кадрами, которые предпочтительно ретранслируются через блок 340 минимального действия протокола.
Таким образом, важной задачей является получение кадров маскирования заранее заданной длины, равной длине регулярных кадров сигнала. Один способ маскирования с заранее заданной длиной состоит в осуществлении гладкого сложения с перекрытием между выборками, которые превышают заранее заданную длину кадра в число раз, равное количеству кадров маскирования, с хвостовым подмножеством выборок из кадра, следующего за кадрами маскирования. Этот способ хорошо известен из уровня техники и используется, например, в рекомендации Международного союза электросвязи ITU-T G.711 Приложение 1. В принципе, этот способ также можно применять при сочленении кадра с другим кадром, когда два кадра связаны с непоследовательными кадрами в исходном аудиосигнале. Таким образом, специалист в данной области техники может сделать это, получив кадр маскирования как продолжение первого кадра, и ввести кадр маскирования в процедуру сложения с перекрытием со вторым кадром, тем самым частично уменьшив нарушения непрерывности, возникающие между границей последней выборки первого кадра и первой выборки второго кадра.
Вышеописанные решения этих сценариев проблематичны. Дело в том, что, в зависимости от фактической формы двух или более сигналов, поступающих в эту процедуру сложения с перекрытием, в результирующем аудиосигнале остается заметное нарушение непрерывности. Это нарушение непрерывности воспринимается слушателем-человеком как "всплеск" или "провал" в сигнале.
В первом сценарии, где предусмотрен один или несколько кадров маскирования, в качестве одного такого способа в литературе предложена повторная дискретизация этих кадров маскирования, см., например, Valenzuela and Animalu, "A new voice-packet reconstruction technique", IEEE, 1989. Этот способ не обеспечивает решение, когда задача состоит в сочленении двух существующих кадров, а не сочленении с кадром маскирования, кроме того, для сочленения кадра маскирования и следующего кадра этот способ по-прежнему сопряжен с проблемами. Причина в том, что необходимая повторная дискретизация для ослабления нарушения непрерывности, воспринимаемого слушателем-человеком, может вносить значительное частотное искажение, т.е. частотный сдвиг, который также воспринимается слушателем-человеком как раздражающий артефакт.
Сущность изобретения
Раскрытое изобретение, в частности варианты его осуществления, позволит эффективно преодолевать вышеупомянутые ограничения известных решений, а также другие, не упомянутые трудности известных решений, и решать родственные проблемы в других системах цифровой обработки сигналов. Согласно настоящему изобретению, эти задачи решаются посредством способа, устройства хранения программ и конфигурации, которые отвечают разным аспектам настоящего изобретения, признаки которого определены в прилагаемой формуле изобретения.
Раскрытое изобретение предусматривает подходы к осуществлению плавного сочленения подпоследовательностей сигналов с использованием взвешенного сложения с перекрытием между подпоследовательностями. Обычно, но не всегда, эти подпоследовательности подобны, но не идентичны, что выражается соответствующей мерой подобия или мерой искажения. В частности, по сравнению с известными методами сложения с перекрытием, в которых используется взвешивающая вырезающая функция, не зависящая от данного сигнала, раскрытое изобретение предусматривает подходы к сочленению кадров сигнала с внутренним отсутствием подобия, со значительно менее воспринимаемым артефактом, чем тот, который известен из уровня техники. Таким образом, раскрытое изобретение ослабляет ограничение, характерное для систем, отвечающих уровню техники, что позволяет непосредственно повышать воспринимаемое качество.
В данном раскрытии будут использоваться следующие определения. Термин "выборка" означает выборку, получаемую из оцифрованного сигнала или из сигнала, выведенного из него, или коэффициентов или параметров, представляющих такие сигналы, причем эти коэффициенты или параметры имеют скалярные или векторные значения. Термин "кадр" означает множество последовательных выборок, с использованием вышеприведенного определения выборки. Термин "подпоследовательность" означает множество из одного или более последовательных выборок, с использованием вышеприведенного определения выборки. В случае использования, например, сложения с перекрытием, две последовательных подпоследовательности могут включать в себя перекрывающиеся выборки. В зависимости от выбора кадров, подпоследовательность может продолжаться между двумя последовательными кадрами.
Согласно первому аспекту, изобретение предусматривает способ генерации выходной последовательности выборок в соответствии с первой и второй подпоследовательностями выборок, при этом способ содержит этапы, на которых:
- применяют процедуру взвешенного сложения с перекрытием к первой и второй подпоследовательностям для генерации выходной последовательности выборок,
- оптимизируют весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, в соответствии с мерой совпадения между выходной последовательностью выборок и одной или несколькими целевыми последовательностями выборок.
Весовую функцию можно оптимизировать в соответствии с двумя или тремя целевыми последовательностями выборок.
Предпочтительно на этапе оптимизации регулируют, по меньшей мере, одну весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, например, регулируют две или три весовые функции, используемые в процедуре взвешенного сложения с перекрытием.
По меньшей мере, одну весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, можно представить множеством параметров. Множество параметров можно получить путем разложения временной формы, по меньшей мере, одной весовой функции в линейную комбинацию базовых форм окна. Множество параметров можно получить путем разложения временной формы, по меньшей мере, одной весовой функции в линейную комбинацию двух или трех базовых форм окна. Генерация множества параметров может включать в себя применение, по меньшей мере, одной линии задержки с отводами к, по меньшей мере, одной из первой и второй подпоследовательностей выборок. Генерация множества параметров может включать в себя применение двух линий задержки с отводами к первой и второй подпоследовательностям выборок. Генерация множества параметров может включать в себя применение трех линий задержки с отводами.
Весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, можно модифицировать в соответствии с мерой расстояния между выходной последовательностью выборок и, по меньшей мере, одной целевой последовательностью выборок. Такую меру расстояния можно получать на основании суммарной квадратичной ошибки, например взвешенной суммарной квадратичной ошибки. Меру расстояния можно минимизировать согласно процедуре наименьших квадратов, например процедуре взвешенных наименьших квадратов.
Выборки первой и второй подпоследовательностей представляют собой выборки оцифрованного аудиосигнала, например аудиосигнала, включающего в себя речевой сигнал.
Одной из первой и второй подпоследовательностей выборок может быть последовательность выборок маскирования.
Таким образом, настоящее изобретение предусматривает способ применения процедуры взвешенного сложения с перекрытием для конкатенации двух или более подпоследовательностей сигналов. Весовые функции, используемые при сложении с перекрытием, оптимизируются в соответствии с мерой искажения между выходным сигналом процедуры сложения с перекрытием и одной или несколькими целевыми подпоследовательностями. Целевые подпоследовательности образуют аппроксимации желаемого или частично желаемого выходного сигнала процедуры сложения с перекрытием. Преимущественно мера искажения взвешивает эти цели. Весовые функции в настоящем изобретении являются функциями общего вида с плоскими или неплоскими временными и/или частотными характеристиками. Простой вариант осуществления настоящего изобретения предусматривает оптимизированное скалярное взвешивание заранее заданной формы окна, например, для оптимизации подобия между выходным сигналом процедуры сложения с перекрытием и целевым сигналом. Дополнительно усовершенствованные варианты осуществления преимущественно предусматривают большее количество целевых сигналов и дающую дополнительные преимущества параметризацию весовых функций. Такая преимущественная параметризация включает в себя применение скалярных весовых коэффициентов к более чем одной весовой функции; включает в себя разложение одной или нескольких весовых функций в линейную комбинацию базовых форм окна; и/или включает в себя линию задержки с отводами в одной или нескольких весовых функциях. Преимущественно, при оптимизации, мера суммарной квадратичной ошибки или взвешенной суммарной квадратичной ошибки минимизируется, и преимущественно для этой минимизации применяется метод наименьших квадратов или взвешенных наименьших квадратов.
Согласно второму аспекту, изобретение предусматривает программный код, выполняемый на компьютере, предназначенный для осуществления способа согласно первому аспекту. Такой программный код может быть записан в машинно-зависимой или машинно-независимой форме и на любом языке программирования, например, в машинном коде или на языке программирования более высокого уровня.
Согласно третьему аспекту, изобретение предусматривает устройство хранения программ, содержащее последовательность команд для микропроцессора, например микропроцессора общего назначения, для осуществления способа согласно первому аспекту. Устройство хранения может представлять собой средство хранения данных любого типа, например диски, карты памяти или линейки памяти, жесткие диски и т.д.
Согласно четвертому аспекту, изобретение предусматривает конфигурацию, например устройство или аппарат, для приема оцифрованного аудиосигнала, конфигурация включает в себя:
- средство памяти для хранения выборок, представляющих принятый оцифрованный аудиосигнал, и
- средство процессора для осуществления способа согласно первому аспекту.
Реализация этого изобретения адекватными средствами, например описанными ниже для предпочтительных вариантов осуществления, позволяет системе обработки сигнала эффективно конкатенировать подобные, но не идентичные подпоследовательности, тем самым ослабляя артефакты, известные для взвешенного сложения с перекрытием, отвечающего уровню техники. Таким образом, наше изобретение обеспечивает, помимо прочего, двустороннюю передачу аудиосигнала высокого качества в условиях сильной расфазировки тактовых сигналов, канальных потерь и/или флуктуаций времени задержки.
Краткое описание чертежей
Ниже приведено более подробное описание изобретения со ссылкой на прилагаемые чертежи, на которых представлено следующее:
фиг.1 - блок-схема известной системы сквозной передачи звука с коммутацией пакетов, для которой характерны эффекты потерь, задержки, флуктуаций времени задержки и/или расфазировки тактового сигнала;
фиг.2 - иллюстративная приемная подсистема, осуществляющая буферизацию флуктуаций, декодирование и буферизацию маскирования и воспроизведения под управлением блока управления;
фиг.3 - блок-схема ретрансляционной подсистемы канала с коммутацией пакетов, для которой характерны эффекты расфазировки тактовых сигналов, потерь, задержки и флуктуаций времени задержки;
фиг.4 - иллюстративная ретрансляционная подсистема, осуществляющая входную буферизацию, выходную буферизацию и, при необходимости, перекодирование и маскирование под управлением блока управления;
фиг.5 - блок-схема ряда предпочтительных вариантов осуществления настоящего изобретения;
фиг.5A - иллюстративная схема подпоследовательностей в кадрах маскирования, начиная с подпоследовательности, базирующейся на последних буферизованных подпоследовательностях в обратном временном порядке;
фиг.5B - другой пример более крупной последовательности подпоследовательностей в кадрах маскирования, начиная с последних двух буферизованных подпоследовательностей в обратном временном порядке, и где последовательные подпоследовательности базируются на буферизованных подпоследовательностях с дополнительным сдвигом назад во времени;
фиг.5C - индексы счетчика выборок в шаблоне индексирования, форматированном шагами назад и длинами чтения;
фиг.6 - иллюстративная схема сигналов, используемых в функции индексирования и интерполяции;
фиг.7 - логическая блок-схема одного возможного варианта реализации логики принятия решений для критериев остановки;
фиг.8 - логическая блок-схема одного возможного способа осуществления итерационной совместной оптимизации сглаживания и коррекции, критериев остановки и количества допустимых повторений;
фиг.9 - схема использования циклического сдвига и сложения с перекрытием в связи с инициализацией и возбуждением фильтра регулировки фазы; и
фиг.10 - один вариант осуществления раскрытой процедуры взвешенного сложения с перекрытием.
Хотя изобретение допускает различные модификации и альтернативные формы, конкретные варианты осуществления показаны в порядке примера на чертежах и подробно описаны ниже. Однако следует понимать, что изобретение не ограничивается конкретными раскрытыми формами. Напротив, изобретение охватывает все модификации, эквиваленты и альтернативы, отвечающие сущности и объему изобретения, заданным в прилагаемой формуле изобретения.
Описание предпочтительных вариантов осуществления
Ниже приведено описание изобретения в связи с генерацией кадров маскирования. Однако, как следует из объема формулы изобретения, способ конкатенации, отвечающий изобретению, имеет значительно более широкую сферу применения.
Способ, отвечающий изобретению, осуществляется на блоке 420 декодирования и маскирования приемника, например, показанном на фиг.2, или осуществляется в блоке 330 перекодирования и маскирования ретранслятора, например, показанном на фиг.4, или в любом другом месте системы связи, где его выполнение целесообразно. В этих местах имеется некоторое количество буферизованных кадров сигнала и требуется некоторое количество кадров маскирования. Доступные кадры сигнала и нужные кадры маскирования могут состоять из выборок во временной области аудиосигнала, например речевого сигнала, или могут состоять из выборок, выведенных из них, например выборок возбуждения линейного предсказания, или могут состоять из других коэффициентов, выведенных из аудиосигнала и полностью или частично представляющих кадры звукового сигнала. Примерами таких коэффициентов являются коэффициенты частотной области, коэффициенты синусоидальной модели, коэффициенты кодирования с линейным предсказанием, коэффициенты интерполяции формы сигнала и другие множества коэффициентов, которые полностью или частично представляют выборки аудиосигнала.
На фиг.5 показан предпочтительный вариант осуществления изобретения. Согласно фиг.5, доступные кадры сигнала 595, которые могут представлять собой принятые и декодированные или перекодированные кадры сигнала или кадр маскирования из более ранней операции этого или других способов генерации кадров маскирования, или комбинации вышеупомянутых типов кадров сигнала, сохраняются в буфере 600 кадров. Сигнал в буфере кадров анализируется генератором 660 шаблона индекса. Генератор шаблона индекса может преимущественно использовать оценки основного тона 596 и вокализации 597 сигнала. В зависимости от общей конфигурации системы, эти оценки могут быть доступны для ввода из других процессов, например процесса кодирования, декодирования или перекодирования, или вычисляться другими средствами, предпочтительно с использованием методов анализа сигнала, отвечающих уровню техники. Кроме того, генератор шаблона индекса принимает количество 598 кадров сигнала маскирования для генерации и указатели 599 начала и конца конкретных кадров сигнала в буфере кадров, которые заменяются кадром или кадрами маскирования. В порядке примера, если эти буферы указывают на конец буфера кадров, это означает, что кадр или кадры маскирования должны быть сделаны адекватными для следования за сигналом, хранящимся в буфере кадров. В порядке другого примера, если эти указатели указывают непустое подмножество последовательных кадров в буфере кадров, это означает, что кадр или кадры маскирования должны заменить эти кадры в последовательность кадров, представляющей или частично представляющей звуковой сигнал.
Для дальнейшей иллюстрации допустим, что буфер 600 кадров содержит кадры сигнала A, B, C, D, E, и что количество кадров 598 маскирования равно двум. Тогда, если указатели кадров, подлежащих замене 599, указывают на конец буфера кадров, это означает, что два кадра сигнала маскирования должны следовать последовательно после кадра сигнала E. Напротив, если указатели 599 указывают на кадры сигнала B, C, D, два кадра маскирования должны заменять кадры сигнала B, C, D и следовать последовательно после кадра сигнала A, и за ними должен следовать последовательно кадр сигнала E.
Что касается способов определения количества кадров 598 маскирования и подмножества кадров, которые, в конечном итоге, должны заменять кадры маскирования, т.е. указателей 599, предпочтительно использовать способы, отвечающие уровню техники. Таким образом, данные 596, 597, 598 и 599 совместно с кадрами 595 сигнала составляют входные данные для способа, устройства и конфигурации, отвечающих настоящему изобретению.
В некоторых общих конфигурациях системы, длина или размер кадра сигнала преимущественно поддерживается постоянной в ходе работы блока маскирования. Помимо прочих сценариев, это обычно имеет место, когда блок маскирования интегрирован в ретрансляционную систему, где результат маскирования подлежит помещению в пакеты, представляющие звуковой сигнал в интервале времени заранее заданной длины, причем эта заранее заданная длина определяется в другом месте. В порядке примера, эта заранее заданная длина может определяться в ходе согласования протоколов при установлении вызова в системе Voice over IP, и может изменяться в ходе преобразования в соответствии, например, с механизмами управления сетевой перегрузки. Некоторые варианты осуществления настоящего изобретения, что будет прояснено ниже, преимущественно отвечают этому требованию работы с заранее заданной длиной кадра сигнала. Однако инновация, как таковая, не ограничивается этими системными требованиями; другие варианты осуществления данной инновации предусматривают работу с маскированиями, которые составляют нецелое число кадров, и маскированиями кадров, которые имеют длины, зависящие от времени, и где эти длины могут зависеть от конкретного содержимого буфера кадров, возможно в комбинации с другими факторами.
Варианты осуществления настоящего изобретения могут преимущественно использовать операцию 610 сглаживания и коррекции, выполняемую над сигналом 605 из буфера кадров. В этой операции сглаживания и коррекции генерируется сигнал 615, в котором кадры, более ранние по времени, чем кадр или кадры маскирования, имеют повышенное подобие с кадром или кадрами сигнала, которые подлежат замещению кадром или кадрами маскирования, или кадром непосредственно перед ним. Альтернативно, если кадр или кадры маскирования вставлены последовательно с существующими кадрами без замещения, имеет место подобие с кадром или кадрами непосредственно перед назначенной позицией кадра или кадров маскирования. В дальнейшем термин «подобие» будет употребляться в обоих случаях. Подобие интерпретируется слушателем-человеком. Сглаживание и коррекция позволяют получить сигнал с повышенным подобием, в то же время сохраняя естественно звучащую эволюцию сигнала 615. Примеры операций повышения подобия, преимущественно выполняемых сглаживанием и коррекцией 610, включают в себя повышение плавности и подобия в таких параметрах, как энергетическая огибающая, контур основного тона, степень вокализации, частота среза вокализации и спектральная огибающая, а также других параметрах, важных для восприятия.
В отношении каждого из этих параметров резкие переходы в эволюции параметра в кадрах, подлежащие сглаживанию и коррекции, отфильтровываются, и средний уровень параметра в этих кадрах плавно изменяется для приобретения большего подобия в вышеупомянутом смысле. Преимущественно подобие вводится только в той степени, которая позволяет сохранять естественно звучащую эволюцию сигнала. Под управлением генератора 660 шаблона индекса, сглаживание и коррекция могут преимущественно сглаживать переходы и нарушения непрерывности, которые, в противном случае, могли бы появляться в последующей операции 620 индексирования и интерполяции. Кроме того, сглаживание и коррекция контура основного тона может преимущественно контролироваться генератором 660 шаблона индекса таким образом, чтобы минимизировать искажение, которое, так или иначе, привносится в кадры маскирования позже фазовым фильтром 650. Операция сглаживания и коррекции может преимущественно использовать замену, смешивание, интерполяцию и/или слияние сигнала или параметра с кадрами сигнала (или параметрами, выведенными из них), найденными с дополнительным сдвигом назад во времени в буфере кадров 600. Операция сглаживания и коррекции 610 может осуществляться вне системы без отхода от общего объема настоящего изобретения. В этом случае сигнал 615 равен сигналу 605, и вход 656 сигнала и выход 665 управления генератора 660 шаблона индекса можно в этом случае исключить из конфигурации системы.
Операция 620 индексирования и интерполяции принимает, возможно, сглаженный и скорректированный сигнал 615 и шаблон 666 индекса. Кроме того, в некоторых преимущественных вариантах осуществления настоящего изобретения, операция индексирования и интерполяции принимает индикатор 667 качества совпадения. Индикатор качества совпадения может иметь скалярное значение в каждый момент времени или может быть функцией времени и частоты. Предназначение индикатора качества совпадения поясняется ниже в этом описании. Шаблон 666 индекса параметризует операцию функции индексирования и интерполяции.
На фиг.5A показан пример того, как шаблон индекса может индексировать подпоследовательности в буферизованных выборках, BS1, BS2, BS3, BS4, с постепенным сдвигом назад во времени при синтезе одного или нескольких кадров маскирования. В показанном примере, последовательные подпоследовательности CS1, CS2, CS3, CS, CS5, CS6, CS7 в кадрах маскирования CF1, CF2, CF3 базируются на буферизованных подпоследовательностях BS1, BS2, BS3 и BS4 выборок в кадрах BF1, BF2. Можно видеть, что подпоследовательности маскирования CS1-CS7 индексируются от буферизованных подпоследовательностей BS1-BS4, при этом указатель положения постепенно перемещается назад и затем постепенно перемещается вперед во времени, что выражается функциональным обозначением CS1(BS4), CS2(BS3), CS3(BS2), означающим, что CS1 базируется на BS4, и т.д. Таким образом, на фиг.5A показан один пример, иллюстрирующий, как последовательные подпоследовательности в кадрах маскирования могут следовать друг за другом, на основании последовательных буферизованных подпоследовательностей, но переупорядоченные во времени. Можно видеть, что первые четыре подпоследовательности маскирования CS1(BS4), CS2(BS3), CS3(BS2) и CS4(BS1) выбраны базирующимися на последних четырех подпоследовательностях буферизованных выборок BS1, BS2, BS3, BS4, в последовательном порядке, но в обратном временном порядке, таким образом, начиная с последней буферизованной подпоследовательности BS1. После первых четырех подпоследовательностей в обратном временном порядке следуют три подпоследовательности CS5, CS6, CS7, которые все базируются на последовательных буферизованных подпоследовательностях во временном порядке, а именно BS2, BS3 и BS4, соответственно. Предпочтительный шаблон индекса формируется генератором шаблона 660 индекса и может варьироваться в широких пределах в зависимости от входов 656, 596, 597, 598 и 599 этого блока. На фиг.5B приведен, с сохранением обозначений фиг.5A, другой иллюстративный пример того, как подпоследовательности маскирования CS1-CS11 могут базироваться на буферизованных подпоследовательностях BS1-BS4 при переупорядочении во времени. Можно видеть, что более поздние подпоследовательности маскирования постепенно базируются на буферизованных подпоследовательностях с дополнительным смещением назад во времени. Например, первые две последовательные подпоследовательности маскирования CS1 и CS2 базируются на последних двух буферизованных подпоследовательностях BS3, BS4, в обратном временном порядке, тогда как более поздняя подпоследовательность маскирования, например CS10, базируется на BS1, т.е. буферизованной подпоследовательности с дополнительным смещением назад во времени, по отношению к используемым для вычисления CS1 и CS2. Таким образом, фиг.5B демонстрирует, что последовательные подпоследовательности маскирования базируются на буферизованных подпоследовательностях, индексированных вперед и назад во времени, таким образом, что индексирование постепенно эволюционирует назад во времени.
В преимущественных вариантах осуществления настоящего изобретения, эта постепенная эволюция назад во времени формализуется как последовательность того, что в целях этого описания названо шагами назад, и последовательность того, что в целях этого описания названо длинами чтения. В простых вариантах осуществления этого формата шаблона индекса, указатель на выборки сигнала, или представляющие их параметры или коэффициенты, смещается назад на величину, равную первому шагу назад, после чего некоторое количество выборок, или представляющих их параметров или коэффициентов, вставляется в кадр маскирования, причем эта величина равна первой длине чтения. После этого указатель смещается назад на величину, равную второму шагу назад, и некоторое количество выборок, или представляющих их параметров или коэффициентов, равное второй длине чтения считывается, и т.д.
На фиг.5C показан пример этого процесса посредством переупорядочения первого перечисления индексированных выборок. Это первое перечисление отображается на временной оси сигнала, тогда как перечисление, отображаемое на временной оси маскирования на фиг.5C, соответствует переупорядочению исходных выборок, при их размещении в кадре маскирования. В этом иллюстративном примере первый, второй и третий шаги назад произвольно выбраны равными 5, 6, 5, соответственно, и первая, вторая и третья длины чтения также произвольно выбраны равными 3, 4, 3, соответственно. В этом примере, подпоследовательности с множествами временных индексов {6,7,8}, {3,4,5,6}, и {2,3,4}, соответственно, являются подпоследовательностями, эволюционирующими постепенно назад во времени. Последовательности шагов назад и длина чтения выбраны здесь исключительно в целях иллюстрации. При использовании остаточных речевых выборок, с частотой дискретизации 16 кГц в порядке примера, типичные значения шагов назад находятся в диапазоне от 40 до 240, но не ограничиваются этим диапазоном, и типичные значения длин чтения находятся в диапазоне от 5 до 1000 выборок, но не ограничивается этим диапазоном. В более усовершенствованных вариантах осуществления этого формата, переход от последовательности прямого направления (например, исходного времени или подпоследовательности, индексированной назад во времени) к другой последовательности прямого направления, один шаг дополнительно назад во времени, производится постепенно путем интерполяции с постепенным сдвигом.
На фиг.6 показано действие простого варианта осуществления функции индексирования и интерполяции в соответствии с одним шагом назад и соответствующей длиной чтения и индикатором качества совпадения. Исключительно в целях иллюстрации, кадры сигнала состоят здесь из выборок аудиосигнала во временной области. Интерполяция с постепенным сдвигом применяется к общему определению "выборки", используемому в этом описании, т.е. включающей в себя скалярные или векторные коэффициенты или параметры, представляющие выборки аудиосигнала во временной области, подобным и, таким образом, непосредственным образом. На этой фигуре 700 обозначает сегмент сигнала 615. Указатель 705 - это момент времени выборки, следующий за моментом времени выборки для последней сгенерированной выборки в выходном сигнале 625 индексирования и интерполяции. Интервал времени 750 имеет длину, равную длине чтения. Интервал времени 770 также имеет длину, равную длине чтения. Интервал времени 760 имеет длину, равную шагу назад. Выборки сигнала в 700, начиная с момента 705, и на длину чтения вперед во времени по очереди перемножаются с вырезающей функцией 720. Кроме того, выборки сигнала в 700, начинающиеся в положении одной выборки после шага назад до положения 706 и на длину чтения выборки вперед оттуда по очереди перемножаются с функцией окна 710. Выборки, полученные перемножением с окном 710 и с окном 720, суммируются по очереди 730 для получения выборок 740, которые составляют новую совокупность выборок для вывода 625 из операции индексирования и интерполяции. По завершении этой операции указатель 705 переходит в положение 706.
В простых вариантах осуществления настоящего изобретения, функции окна 710 и 720 являются простыми функциями длины чтения 750. Одна такая простая функция состоит в выборе окна 710 и окна 720 в качестве первой и второй половины, соответственно, окно Ханнинга, длина которого вдвое больше длины чтения. Хотя здесь можно выбирать функции в широком диапазоне, с учетом того, что такие функции должны иметь смысл в контексте настоящего изобретения, они должны осуществлять взвешенную интерполяцию между выборками в сегменте, обозначенном 750, и выборками, обозначенными 770, таким образом, чтобы постепенно, но не обязательно монотонно, двигаться от большого весового коэффициента на сегменте, обозначенном 750, к большому весовому коэффициенту на сегменте, обозначенном 770.
В других вариантах осуществления настоящего изобретения, функции окна 710 и 720 являются функциями индикатора качества совпадения. Простой пример такой функции состоит в том, что, в зависимости от порога нормированной корреляции на сегментах сигнала 700, указанного интервалами времени 750 и 770, операция интерполяции выбрана так, чтобы суммировать до единицы либо по амплитуде, либо по мощности. Другой пример такой функции избегает ограничения суммированием по амплитуде либо по мощности до единицы, но зато оптимизирует весовые коэффициенты окна как функцию только меры совпадения. Дополнительное уточнение этого способа принимает фактическое значение нормированной корреляции и оптимизирует операцию интерполяции в соответствии с ним, например, с использованием классических методов линейной оценки. Однако примеры предпочтительных методов описаны ниже. В этих примерах порог, соответственно, фактическое значение нормированной корреляции, дает примеры преимущественной информации, переносимой индикатором 667 качества совпадения. Согласно предпочтительным вариантам осуществления, описанным ниже, операция интерполяции может реализовывать различные взвешивания на разных частотах. В этом случае индикатор 667 качества совпадения может преимущественно переносить меры совпадения как функции частоты. В преимущественных вариантах осуществления, это взвешивание как функция частоты реализуется в виде линии задержки с отводами или другого параметрического фильтра, который можно оптимизировать для максимизации критерия совпадения.
Фиг.6 иллюстрирует действие индексирования и интерполяции, когда сигнал 615 (а, следовательно, и сегмент 700 сигнала) содержит выборки, представляющие выборки во временной области звукового сигнала или выведенного из него сигнала временной области. Как отмечено выше, выборки в кадрах 595, а следовательно, в сигналах 605 и 615 могут, преимущественно, быть такими, что каждая выборка является вектором (выборками с векторными значениями), где такой вектор содержит коэффициенты или параметры, представляющие или частично представляющие звуковой сигнал. Примерами таких коэффициентов являются частоты линейчатого спектра, коэффициенты частотной области или коэффициенты, задающие модель синусоидального сигнала, например множества амплитуд, частот и фаз. На основании этого подробного описания предпочтительных вариантов осуществления настоящего изобретения специалист в данной области техники может реализовать операции интерполяции, которые преимущественно применяются к выборкам с векторными значениями, тогда как описание остальных подробностей каждого конкретного случая таких выборок с векторными значениями можно найти в общей литературе.
Для понимания настоящего изобретения предпочтительным является указание на то, что при неоднократном применении операции индексирования и интерполяции с длиной чтения, которая меньше шага назад, получается, что выборки в сигнале 625 представляют выборки сигнала, имеющие все большее и большее смещение назад в сигнале 615. Если шаг назад и/или длину чтения выбрать так, чтобы длина чтения была больше шага назад, то этот процесс повернется вспять, и выборки в сигнале 625 будут представлять выборки сигнала, которые постепенно смещаются все больше вперед в сигнале 615. Благодаря преимущественному выбору последовательности шагов назад и последовательности длин чтения, можно получить продолжительный сигнал маскирования с богатой и естественной вариацией, не вызывая выборки вперед во времени из самого позднего принятого кадра сигнала в буфере 600 кадров или даже не вызывая выборки впереди другого заранее заданного момента времени, который может располагаться раньше, чем самая поздняя выборка в самом позднем принятом кадре в буфере 600 кадров. Таким образом, настоящее изобретение делает возможным маскирование пиков задержки в системе с низкой задержкой воспроизведения или планированием выходного буфера. В формулировке данного описания, простая строгая обратная эволюция во времени сигнала, которую может быть полезно рассматривать как простой элемент варианта осуществления настоящего изобретения, реализуется путем повторного использования длины чтения в одну выборку, шага назад в две выборки и окна 720, содержащего единичную выборку со значением 0 и окна 710, содержащего единичную выборку со значением 1.0.
Основной задачей генератора 660 шаблона индекса является управление действием операции 620 индексирования и интерполяции. В ряде предпочтительных вариантов осуществления, это управление формализовано в шаблоне 666 индексирования, который может состоять из последовательности шагов назад и последовательности длин чтения. Это управление может быть дополнено последовательностью индикаций качества совпадения, каждая из которых, в свою очередь, может быть функцией, например, частоты. Дополнительной особенностью, которая может выводиться из генератора шаблона индекса, и использование которой прояснится далее в этом описании, является счетчик 668 повторения. Счетчик повторения показывает, сколько раз начиналась эволюция назад во времени при построении кадра или кадров маскирования. Генератор шаблона индекса получает эти последовательности на основании информации, которая может содержать сглаженный и скорректированный сигнал 656, выводимый из операции 610 сглаживания и коррекции; оценку 596 основного тона, оценку 597 вокализации, количество 598 генерируемых кадров маскирования и указатели 599 на кадры, подлежащие замене. В одном варианте осуществления генератора шаблона индекса, он работает в разных режимах в зависимости от индикатора вокализации. Такие режимы проиллюстрированы ниже.
В порядке примера, преимущественно используемого в области возбуждения линейного предсказания, если индикатор вокализации устойчиво указывает, что сигнал является невокализованной речью, или что в сигнале отсутствует активная речь, т.е. сигнал состоит из фонового шума, генератор шаблона индекса может войти в режим, в котором инициируется простое обращение эволюции во времени выборок сигнала. Как описано выше, это может осуществляться, например, путем формирования последовательности значений шага назад, равных двум и последовательности значений длины чтения, равных единице (это описание опирается на выбор конструкции, в которой операция индексирования и интерполяции будет сама идентифицировать эти значения и применять соответствующую вырезающую функцию, как описано выше). В некоторых случаях эта последовательность может продолжаться до тех пор, пока обратная эволюция во времени сигнала не будет реализована для половины количества новых выборок, необходимых в кадре или кадрах маскирования, после чего значение в последовательности шагов назад может смениться на 0, иными словами, начнется прямая эволюция во времени сигнала, которая будет продолжаться до тех пор, пока указатель 706 эффективно не вернется в отправную точку указателя 705 в первом применении шага назад. Однако этой простой процедуры не всегда достаточно для кадров маскирования высокого качества. Важной задачей генератора шаблона индекса является мониторинг адекватных критериев остановки. В вышеприведенном примере, обратная эволюция во времени может переводить указатель 706 обратно в позицию в сигнале, в которой звук, при интерпретации слушателем-человеком, значительно отличается от начальной точки. Прежде, чем это произойдет, эволюция во времени должна претерпеть обращение.
Предпочтительные варианты осуществления настоящего изобретения предусматривают применение множества критериев остановки, базирующихся на множестве мер. Ниже приведены примеры некоторых из этих мер и критериев остановки. Если вокализация указывает, что сигнал по указателю 706 вокализован, то в вышеприведенном примере, начиная с невокализованного, направление эволюции во времени может преимущественно поменяться на обратное, также, если энергия сигнала в области вокруг указателя 706 отличается (определяемая по абсолютному или относительному порогу) от энергии сигнала в отправной точке для указателя 705, направление эволюции во времени может преимущественно поменяться на обратное. В порядке третьего примера, спектральное расстояние между областью вокруг отправной точки для указателя 705 и текущей позицией указателя 706 может превышать порог, и направление эволюции во времени должно смениться на обратное.
Второй пример режима может потребоваться, когда сигнал нельзя уверенно определить как невокализованный или не содержащий активной речи. В этом режиме оценка основного тона 596 составляет основу для определения шаблона индекса. Одна процедура для этого состоит в поиске каждого шага назад, дающего максимальную нормированную корреляцию между сигналом на один период основного тона вперед во времени от указателя 705 и сигналом на один период основного тона вперед от точки, находящейся в шаге назад от указателя 705. Поиск потенциальных значений шага назад может преимущественно ограничиваться областью. Эта область может преимущественно задаваться в пределах плюс-минус 10 процентов от ранее найденного шага назад или отставания на период основного тона, если не было найдено предыдущих шагов назад. После определения шага назад значение длины чтения определяет, должна ли эволюция сигнала во времени проходить назад или вперед во времени, и насколько быстрой должна быть эта эволюция. Медленная эволюция получается за счет выбора длины чтения, близкой к найденному значению шага назад. Быстрая эволюция получается за счет выбора длины чтения, много меньшей или много большей шага назад в случае обратной и прямой эволюции, соответственно. Задача генератора шаблона индекса состоит в выборе длины чтения для оптимизации качества звука при интерпретации слушателем-человеком. Выбор длины чтения слишком близкой к шагу назад может, в некоторых сигналах, например сигналах, которые не являются достаточно периодическими, приводить к артефактам, мешающим восприятию, например струнным звукам. Выбор длины чтения слишком далекой от шага назад, приводит к тому, что, в ходе эволюции во времени кадра или кадров маскирования, в конечном итоге, просматривается более длительный интервал времени в буфере кадров, альтернативно, что направление эволюции во времени приходится менять больше раз прежде, чем будет сгенерировано достаточное количество выборок для кадра или кадров маскирования.
В первом случае, в некоторых сигналах, например сигналах, которые не являются достаточно стационарными (альтернативно, не являются достаточно гладкими и скорректированными), в звуке кадра или кадров маскирования возникают некоторые артефакты, мешающие восприятию, которые несколько напоминают заикание. Во втором случае могут возникать артефакты, напоминающие струнные звуки. Особенность преимущественных вариантов осуществления настоящего изобретения состоит в том, что длину чтения можно определить как функцию шага назад и нормированной корреляции, которая оптимизируется в поиске оптимального шага назад. Один простой, но предпочтительный, выбор этой функции согласно вариантам осуществления настоящего изобретения, связанным с обработкой речевых сигналов, когда кадры сигнала содержат сигнал возбуждения линейного предсказания длительностью в 20 мс с частотой дискретизации 16 кГц, в порядке примера задается следующей функцией:
Figure 00000001
где квадратные скобки [] используются для указания округления до ближайшего целого числа, и где символы ReadLength, NormalizedCorrelation и StepBack используются для обозначения длины чтения, нормированной корреляции, полученной для оптимального шага назад, и соответствующего шага назад, соответственно. Вышеприведенная функция служит лишь примером одного предпочтительного выбора в некоторых вариантах осуществления настоящего изобретения. Любой выбор длины чтения, включающий в себя любую функциональную зависимость для получения этой длины чтения, возможен без отхода от сущности настоящего изобретения. В частности, предпочтительные методы выбора длины чтения включают в себя использование управления 665 для параметризации операции 610 сглаживания и коррекции, например для достижения совместной минимизации артефактов наподобие заикания и наподобие струнных звуков в промежуточном кадре 625 маскирования. Это объясняет, почему генератор шаблона индекса 660 принимает промежуточный сигнал 656, а не выходной сигнал 615 операции сглаживания и коррекции: сигнал 656 представляет возможные версии окончательного сигнала 615 под управлением 665, и позволяет генератору шаблона индекса решать задачу оптимизации методом итераций. Как и в вышеописанном случае режима невокализованной и неактивной речи, критерии остановки в этом режиме также важны. Все примеры критериев остановки, предложенные в вышеописанном режиме, применимы и в этом режиме. Дополнительно, в этом режиме критерии остановки из измерения на основном тоне и нормированной корреляции могут, предпочтительно, составлять часть вариантов осуществления настоящего изобретения.
На фиг.7 показана, в порядке примера, дополнительная логика принятия решений для комбинации критериев остановки. На фиг.7 используются следующие условные обозначения:
800: Установить, относится ли сигнал к типу высокой корреляции, типу низкой корреляции или не относится ни к одному из них. Определить начальный уровень энергии;
801: Определить следующий шаг назад и нормированную корреляцию и длину чтения;
802: Определить, вошел ли сигнал в тип низкой корреляции;
803: Определить, вошел ли сигнал в тип высокой корреляции;
804: Сигнал типа высокой корреляции?
805: Сигнал типа низкой корреляции?
806: Энергия ниже относительного минимального порога или выше относительного максимального порога?
807: Нормированная корреляция ниже порога для типа высокой корреляции?
808: Нормированная корреляция выше порога для типа низкой корреляции?
809: Достаточно ли выборок сгенерировано?
В случае работы в области возбуждения линейного предсказания для речи с частотой дискретизации 16 кГц, пороги, упомянутые на фиг.7, можно предпочтительно выбирать следующим образом: в тип высокой корреляции можно входить, когда нормированная корреляция оказывается выше 0,8; порог для сохранения в типе высокой корреляции можно задать равным значению нормированной корреляции 0,5; в тип низкой корреляции можно входить, когда нормированная корреляция оказывается ниже 0,5; порог для сохранения в типе низкой корреляции можно задать равным значению нормированной корреляции 0,8; минимальную относительную энергию можно задать равной 0,3; и максимальную относительную энергию можно задать равной 3,0. Кроме того, можно использовать другие логики и другие критерии остановки в контексте настоящего изобретения, не выходя за рамки сущности и объема настоящего изобретения.
Применение критериев остановки означает, что единичная эволюция, назад во времени, до тех пор, пока либо не будет сгенерировано достаточно выборок, либо не будет удовлетворен критерий остановки, после чего вновь начнется эволюция вперед во времени, не гарантирует необходимое количество выборок для кадров маскирования. Поэтому генератор шаблона индекса может применять больше эволюций, назад и вперед во времени. Однако слишком много прямых и обратных эволюций может привести к возникновению артефактов струнного звука в некоторых сигналах. Поэтому предпочтительные варианты осуществления настоящего изобретения предусматривают совместную оптимизацию критериев остановки, функции, применяемой для вычисления длин чтения, управления 665 сглаживанием и коррекцией и количества обратных и прямых эволюций, т.е. счетчика 668 повторения и, если разрешают указатели кадров, подлежащих замене 599, также количества выборок, которые мы развиваем вперед во времени до начала каждой новой эволюции назад во времени. Для этого операцией сглаживания и коррекции также можно преимущественно управлять таким образом, чтобы немного изменять контур основного тона сигнала. Кроме того, совместная оптимизация может осуществляться с учетом действия фазового фильтра 650, и создавать небольшие изменения в контуре основного тона, например, для того, чтобы шаблон индекса минимизировал искажение, вносимое в фазовый фильтр совместно с другими вышеупомянутыми параметрами. На основании описания предпочтительных вариантов осуществления настоящего изобретения специалист в данной области техники может понять, что для решения этой задачи можно применять различные общие инструменты оптимизации, в том числе итерационную оптимизацию, марковские процессы принятия решения, методы Витерби и пр. любой из которых применим к этой задаче без отхода от объема настоящего изобретения.
Фиг.8 иллюстрирует посредством логической блок-схемы один пример итерационной процедуры для осуществления простой, но эффективной оптимизации этих параметров.
На фиг.8 используются следующие условные обозначения:
820: Инициировать управление сглаживанием и коррекцией 665;
821: Получить новый сглаженный сигнал 656;
822: Инициировать критерии остановки;
823: Инициировать допустимое количество повторений;
824: Определить шаблон индекса для последовательности обратных и прямых эволюций, равномерно распределенных по доступным кадрам, указанным указателями 599, или, при указании на конец доступных кадров, обратных эволюций, следующих непосредственно за прямыми эволюциями;
825: Сгенерировано достаточное количество выборок для количества кадров маскирования 598?
826: Максимальное количество повторений достигнуто?
827: Увеличить допустимое количество повторений;
828: Самый свободный порог для критериев остановки достигнут?
829: Ослабить пороги для критериев остановки;
830: Изменить управление в сторону повышения влияния сглаживания и коррекции.
Заметим, что одна эволюция назад и вперед во времени и следующая эволюция назад и вперед во времени, в случае, когда в ходе предыдущей/их эволюции или эволюций назад и вперед во времени не было синтезировано достаточно сигнала, могут преимущественно отличаться. Например, следует предусмотреть последовательности шагов назад, длины чтения и функции интерполяции, а также указатель конечного положения после эволюции назад и вперед во времени, например, для минимизации артефактов периодичности, которые в противном случае возникают вследствие повторения аналогичных шаблонов индекса. Например, для области вокализованного речевого остатка с частотой дискретизации 16 кГц одна эволюция назад и вперед во времени, генерирующая примерно, скажем, 320 выборок, может предпочтительно заканчиваться с дополнительным смещением назад примерно в 100 выборок в сигнале по отношению к более ранней эволюции назад и вперед во времени.
Раскрытые выше варианты осуществления эффективно решают проблемы искусственно звучащих струнных звуков, известных согласно способам, отвечающим уровню техники, и в то же время допускают эффективное маскирование резких, пиковых флуктуаций времени задержки и внезапно происходящих потерь повторных пакетов. Однако в неблагоприятных сетевых условиях, встречающихся, например, в некоторых беспроводных системах и специализированных беспроводных сетях и негарантированных сетях и в других сценариях передачи, даже раскрытый способ может в ряде случаев вносить небольшие составляющие тональности в кадры маскирования. Поэтому в некоторых вариантах осуществления настоящего изобретения предпочтительно применять операцию 630 слабого примешивания шума и фильтр 640 мягкого ослабления. Общие подходы к примешиванию шума и ослаблению хорошо известны специалистам в данной области техники. Они включают в себя предпочтительное использование частотно-зависимой эволюции во времени мощности шумовой составляющей и частотно-зависимую эволюцию во времени функции ослабления. Характерной особенностью использования примешивания шума и ослабления в контексте настоящего изобретения является непосредственное использование шаблона 666 индекса, меры 667 качества совпадения и/или счетчика 668 повторения для адаптивной параметризации операций примешивания шума и ослабления. В частности, индексы шаблона индексирования, когда неизменные выборки сигнала размещаются в кадр маскирования, и когда выборки кадра маскирования являются результатом операции интерполяции. Кроме того, отношение шага назад относительно длины чтения в сочетании с мерой качества совпадения указывают воспринимаемое качество, получающееся в результате операции интерполяции. Этот малый или отсутствующий шум можно предпочтительно примешивать к исходным выборкам, причем более сильный шум предпочтительно примешивать к выборкам, являющимся результатом процесса интерполяции, и величины шума, примешиваемым к этим выборкам, может предпочтительно быть функцией меры качества совпадения, предпочтительно в частотно-дифференцированном режиме. Кроме того, значение длины чтения относительно шага назад также указывает степень периодичности, которая может иметь место, примешивание шума может предпочтительно включать в себя эту меру при определении величины шума, примешиваемого к сигналу маскирования. Тот же принцип применяется к ослаблению; предпочтительно использовать мягкое ослабление, но меньшее ослабление можно применять к выборкам, представляющим исходные выборки сигнала, и большее ослабление можно применять к выборкам, полученным в результате операции интерполяции. Кроме того, величина ослабления в этих выборках может предпочтительно быть функцией индикации качества совпадения и предпочтительно в частотно-дифференцированном режиме. Опять же, значение длины чтения относительно шага назад указывает степень периодичности, которая может иметь место; операция ослабления может предпочтительно включать в себя эту меру при проектировании ослабления.
Как отмечено в предпосылках настоящего изобретения, важной задачей подмножества вариантов осуществления настоящего изобретения является получение кадров маскирования заранее заданной длины, равной длине регулярных кадров сигнала. Когда это необходимо с точки зрения системы, средством для этого дополнительно может быть фазовый фильтр 650. Простая в вычислительном отношении, приблизительная, но зачастую важная работа этого блока состоит в осуществлении гладкого сложения с перекрытием между выборками, которые превышают заранее заданную длину кадра в число раз, равное количеству кадров маскирования, с хвостовым подмножеством выборок из кадра, следующего за кадрами маскирования. Сам по себе, этот способ хорошо известен из уровня техники и используется, например, в рекомендации Международного союза электросвязи ITU-T G.711 Приложение 1. Если это практично с точки зрения системы, простую процедуру сложения с перекрытием можно усовершенствовать путем умножения последующих кадров на -1 всякий раз, когда это приводит к повышению корреляции в области сложения с перекрытием. Однако можно предпочтительно использовать другие методы, например, при переходе между кадрами вокализованного сигнала, для дополнительного ослабления эффекта нарушений непрерывности на границах кадров. Один такой метод предусматривает повторную дискретизацию кадров маскирования. Этот метод сам по себе также хорошо известен из уровня техники. См., например, Valenzuela and Animalu, "A new voice-packet reconstruction technique", IEEE, 1989. Таким образом, специалист в данной области техники может осуществлять ослабление нарушений непрерывности на границах кадров. Однако, в предпочтительных вариантах осуществления раскрытого здесь изобретения, повторная дискретизация может преимущественно продолжаться в кадрах, следующих за последним кадром маскирования. Это позволяет сделать наклон изменения во времени и, таким образом, частотный сдвиг, который возникает вследствие повторной дискретизации, незаметным при интерпретации слушателем-человеком. Кроме того, вместо повторной дискретизации в настоящем изобретении раскрыто использование всечастотных фильтров, изменяющихся со временем, для ослабления нарушений непрерывности на границах кадров. Один вариант осуществления этого подхода задается уравнением фильтра
Figure 00000002
функция которого поясняется ниже. Предположим, что просмотр от задержки в L выборок до задержки в 0 выборок требуется по интервалу просмотра, который может включать в себя все выборки или их часть для всех или части кадров маскирования; в кадрах до кадров маскирования; и в кадрах после кадров маскирования. Тогда в начале интервала просмотра alpha_1(t) задается равным нулю, и alpha_2(t) задается равным 1,0 для реализации задержки в L выборок. После начала просмотра по t alpha_1(t) должна постепенно возрастать до 0,5, и alpha_2(t) должна постепенно убывать до 0,5. Когда, в конце интервала просмотра alpha_1(t) равняется alpha_2(t), фильтр H_L(z,t) вносит нулевую задержку. Если же требуется просмотр от задержки в ноль выборок до задержки в L выборок по интервалу просмотра, который может включать в себя все выборки или их часть для всех или части кадров маскирования; в кадрах до кадров маскирования; и в кадрах после кадров маскирования. Тогда в начале интервала просмотра alpha_1(t) задается равным 0,5, и alpha_2(t) задается равным 0,5 для реализации задержки в 0 выборок. После начала просмотра по t alpha_1(t) должна постепенно убывать до 0, и alpha_2(t) должна постепенно возрастать до 1,0. Когда, в конце интервала просмотра alpha_1(t) равняется 0, и alpha_2(t) равняется 1,0, фильтр H_L(z,t) вносит задержку в L выборок.
Вышеописанная фильтрация проста с точки зрения вычислений, однако имеет нелинейную фазовую характеристику. Исходя из особенностей восприятия, использование этой нелинейной фазы ограничивается сравнительно малыми L. Предпочтительно L<10 для речи на частоте дискретизации 16 кГц. Один способ осуществления фильтрации более значительных начальных значений L состоит в инициировании нескольких фильтров для меньших значений L, которые суммируются до нужного полного значения L, эти несколько фильтров можно предпочтительно инициировать в разные моменты времени и просматривать их диапазон alpha по разным интервалам времени. Другой способ увеличения диапазона L, в котором можно применять этот фильтр, раскрыт ниже. Структура, которая реализует фильтрацию функционально идентичную вышеописанной, делит сигнал на L полифаз и производит следующую фильтрацию в каждой из этих полифаз:
Figure 00000003
Согласно настоящему изобретению полифазовая фильтрация предпочтительно реализуется с использованием повышающей дискретизации. Возможный способ выполнения предусматривает повышающую дискретизацию каждой полифазы с коэффициентом K и осуществление фильтрации H_1(z,t) K раз в каждой дискретизированной с повышением полифазы с последующей понижающей дискретизацией с коэффициентом K и реконструкцией сигнала с измененной фазой из полифаз. Коэффициент K может предпочтительно выбираться как K=2. Благодаря процедуре повышающей дискретизации, получается фазовая характеристика, более близкая к линейной. Таким образом, воспринимаемое качество при интерпретации слушателем-человеком повышается.
Вышеописанная фазовая регулировка по множеству кадров применима, когда кадры маскирования вставляются в последовательность принятых кадров без потерь. Она также применима, когда кадры отбираются из последовательности сигналов для снижения задержки воспроизведения последующих кадров. Она также применима в случае потери кадров, и когда ноль или более кадров маскирования вставляется между принятыми кадрами до и принятыми кадрами после потерянных кадров. В этих случаях, предпочтительный способ получения входного сигнала для этого фильтра и нахождения задержки L состоит в следующем:
1) Для кадров, более ранних по времени, чем момент нарушения непрерывности, продолжает или начинает применяться раскрытый выше или какой-либо иной способ маскирования.
2) Для кадров, более поздних по времени, чем нарушение непрерывности, некоторое количество выборок L_test вставляется в начало кадра посредством раскрытого выше или какого-либо иного способа маскирования, но с обращенным индексированием временных выборок.
3) Мера совпадения, например нормированная корреляция, применяется между кадром или кадрами маскирования из 1) и кадром или кадрами из 2), включая начальные выборки L_test.
4) L_test, которая максимизирует меру совпадения, выбирается в качестве L.
5) Кадр или кадры маскирования из 2) и кадр или кадры из 3) теперь добавляются совместно, с использованием процедуры взвешенного сложения с перекрытием. Хотя это взвешенное сложение с перекрытием можно осуществлять способом, известным специалисту в данной области техники, его можно предпочтительно оптимизировать согласно раскрытию, приведенному ниже в этом описании.
6) Результирующий/е кадр или кадры подвергаются вышеописанной фазовой фильтрации, инициируемой при определенном значении L. Если L больше порога, то инициируется несколько фильтров и коэффициент применяется в разные моменты времени и интервалы времени, причем их значения L суммируются до определенного значения L.
Предпочтительно в речи или речевом остатке с частотой дискретизации 8 или 16 кГц, можно выбирать значение вышеупомянутого порога в диапазоне от 5 до 50. Также предпочтительно в вокализованной речи или вокализованном речевом остатке, выборки маскирования L_test их продолжение на следующий кадр, получают путем циклического сдвига выборок первого периода основного тона кадра. Таким образом, меру корреляции без нормирования, коррелирующую с полным периодом основного тона, можно предпочтительно использовать как меру совпадения для отыскания предпочтительного циклического сдвига L.
На фиг.9 показан один вариант осуществления такого способа. Согласно фиг.9, фазовая регулировка обеспечивает плавный переход между кадром 900 сигнала и последующими кадрами. Это осуществляется следующим образом: из кадра 900 сигнала и более ранних кадров генерируется сигнал 910 маскирования. Этот сигнал маскирования можно генерировать с использованием раскрытых здесь методов или с использованием других методов, которые хорошо известны из уровня техники. Сигнал маскирования перемножается с окном 920 и суммируется 925 с другим окном 930, которое перемножается с сигналом, генерируемым следующим образом: сигнал 940 маскирования генерируется, из последующих выборок 950 и, возможно, 960, путем эффективного применения метода маскирования, например, раскрытого выше, или с использованием других методов, которые хорошо известны из уровня техники, и сочленяется с последующими выборками 950. Количество выборок в маскировании 940 оптимизируется, например, для максимизации совпадения между маскированием 910 и сочленением 940 и последующими выборками 950.
Предпочтительным образом, нормированную корреляцию можно использовать как меру этого совпадения. Кроме того, для снижения сложности вычислений совпадение для вокализованной речи или вокализованного речевого остатка может содержать лишь один период основного тона. В этом случае выборки 940 маскирования можно получить как первую часть циклического сдвига одного периода основного тона, и меру корреляции по одному периоду основного тона теперь не нужно нормировать. Это позволяет исключить вычисления нормирующих множителей. Что касается операции индексирования и интерполяции, описанной выше в этом подробном описании предпочтительных вариантов осуществления, окна предпочтительно могут быть функцией индикатора качества совпадения и/или функцией частоты и предпочтительно могут быть реализованы в виде линии задержки с отводами. Фильтр 970 действует следующим образом. Первые L выборок, полученных посредством процедуры сложения с перекрытием, передаются непосредственно на его выход и используются для задания начального состояния фильтра. После этого коэффициенты фильтра инициируются, как описано выше, и по мере того, как фильтр осуществляет фильтрацию от выборки L+1 и вперед, эти коэффициенты постепенно регулируются, например, для постепенного удаления задержки в L выборок, как описано выше.
В вышеописанной процедуре применяется вышеописанный способ оптимизации весовых коэффициентов окон в соответствии с максимизацией критерия совпадения, а также обобщение функций окна к частотно-зависимым весовым коэффициентам и к согласованным фильтрам в форме линий задержки с отводами или другим формам параметрического фильтра. В предпочтительных вариантах осуществления, эволюция во времени частотно-зависимых весовых коэффициентов фильтра обеспечивается посредством последовательности из трех последовательностей сложения с перекрытием, первая из которых ослабляет кадр или кадры маскирования из более ранних кадров, вторая усиливает их фильтрованную версию с помощью фильтра, например, для согласования кадров маскирования из более поздних кадров, полученных во времени, индексированном в обратном направлении, а затем снова ослабляет их, третья усиливает кадр или кадры, более поздние по времени. Согласно другой совокупности предпочтительных вариантов осуществления, эволюция во времени частотно-зависимых весовых коэффициентов фильтра обеспечивается посредством последовательности из четырех последовательностей сложения с перекрытием, первая из которых ослабляет кадр или кадры маскирования из более ранних кадров, вторая усиливает их фильтрованную версию с помощью фильтра, например, для согласования кадров маскирования из более поздних кадров, полученных во времени, индексированном в обратном направлении, а затем снова ослабляет их, третья усиливает фильтрованную версию кадров, более поздних по времени, например, для дальнейшего улучшения этого согласования, а затем снова ослабляет их, и, наконец, четвертое окно усиливает кадр или кадры, более поздние по времени. Дополнительные предпочтительные варианты осуществления методов взвешенного сложения с перекрытием раскрыты ниже в этом описании.
Что касается операции 610 сглаживания и коррекции в вариантах осуществления, где выборки остаточной области используются как часть информации, представляющей речевой сигнал, сглаживание и коррекцию можно предпочтительно применять к этому остаточному сигналу с использованием фильтрации, адаптированной к основному тону, например гребенчатого фильтра или периодического узкополосного режекторного фильтра. Кроме того, можно предпочтительно применять фильтрацию Винера или Калмана, используя фильтр с долгосрочной корреляцией плюс шум в качестве модели нефильтрованного остатка. Таким образом, благодаря применению фильтра Винера или Калмана, дисперсия шума в модели применяется для регулировки степени сглаживания и коррекции. Это использование несколько противоречит интуитивному представлению, поскольку эта составляющая, согласно теории фильтрации Винера или Калмана, традиционно применяется для моделирования наличия нежелательной шумовой составляющей. Применительно к данной инновации, задача состоит в установлении уровня сглаживания и коррекции. В порядке альтернативы гребенчатой или узкополосной режекторной фильтрации, адаптированной к основному тону, и фильтрации Винера или Калмана, третий способ предпочтительно применяется для сглаживания и коррекции остаточных сигналов в контексте данной инновации. Согласно этому третьему способу, либо выборка амплитуды, которая предпочтительно применяется, например, к невокализованной речи, либо последовательные векторы выборок, которые преимущественно применяются, например, к вокализованной речи, делаются все более подобными. Возможные процедуры для осуществления этого описаны ниже для векторов вокализованной речи и выборок невокализованной речи, соответственно.
Для вокализованной речи последовательные выборки речи или остатка группируются в векторы, причем количество выборок в каждом векторе равно одному периоду основного тона. Для удобства описания будем обозначать этот вектор как v(k). Согласно способу, получаем вектор остатка r(k) как составляющую вектора v(k), которую никоим образом нельзя найти в окружающих векторах v(k-L1), v(k-L1+1),..., v(k-1) и v(k+1), v(k+2),...., v(k+L2). Для удобства описания составляющую, найденную в окружающих векторах, обозначим как a(k). Затем производим над вектором остатка r(k) те или иные линейные или нелинейные преобразования для снижения его слышимости, в то же время, сохраняя естественное звучание результирующего реконструированного вектора, который получается путем повторной вставки составляющей a(k) в преобразованную версию r(k).
Таким образом, получаем сглаженную и скорректированную версию вокализованной речи или вокализованной остаточной речи. Ниже приведен один простой вариант осуществления вышеописанного принципа с использованием, для удобства, матрично-векторной системы обозначений и, для простоты примера, понятия линейной комбинации и наименьших квадратов для определения a(k). Это всего лишь пример простого варианта осуществления вышеописанного общего принципа сглаживания и коррекции.
В целях этого примера зададим матрицу M(k) следующим образом:
Figure 00000004
откуда a(k) можно вычислить, например, как оценку наименьших квадратов для v(k) при данной M(k)
Figure 00000005
где inv() обозначает обращение или псевдообращение матрицы и trans() обозначает транспонирование матрицы. Теперь остаток r(k) можно вычислить, например, вычитанием
Figure 00000006
Один пример преобразования r(k) состоит в срезании пиков в этом векторе, например, для ограничения максимального абсолютного значения выборки уровнем, равным максимальной амплитуде вектора r(k), ближайшего к начальной точке процедуры маскирования назад-вперед, или до некоторого кратного амплитуды выборки в той же позиции в векторе, но в векторе, ближайшем к начальной точке процедуры маскирования назад-вперед. Преобразованный остаток rm(k) затем объединяется с вектором a(k) для реконструкции скорректированной версии v(k), для удобства обозначенной как ve(k). Это объединение можно осуществлять, например, посредством простого сложения
Figure 00000007
Параметр alpha в этом примере можно задать равным 1.0 или можно предпочтительно выбрать меньшим 1.0, один предпочтительный выбор для alpha это 0.8.
Для невокализованной речи можно использовать другой способ сглаживания и коррекции. Согласно одному примеру, сглаживание и коррекция невокализованной речи предусматривает вычисление полиномиальной аппроксимации амплитуд остаточного сигнала в логарифмической области. В порядке примера, можно использовать многочлен второго порядка и в области log10. После преобразования аппроксимирующего многочлена из логарифмической области обратно в линейную область аппроксимирующая кривая предпочтительно нормируется к 1.0 в точке, соответствующей начальной точке процедуры назад-вперед. Затем аппроксимирующая кривая подвергается ограничению снизу, например, до 0.5, после чего амплитуды остаточного сигнала можно делить с помощью аппроксимирующей кривой, например, для сглаживания изменений амплитуды невокализованного остаточного сигнала.
Что касается процедур взвешенного сложения с перекрытием, некоторые из применений которые раскрыты выше, т.е. операция 620 индексирования и интерполяции и способ инициирования входного сигнала для фильтрации 970 с регулировкой фазы, можно осуществлять процедуры, известные специалисту в данной области техники. Однако в предпочтительных вариантах осуществления процедур взвешенного сложения с перекрытием, можно использовать способы, раскрытые ниже.
В простом варианте осуществления процедуры взвешенного сложения с перекрытием, видоизмененной в соответствии с индикатором качества совпадения, предполагается, что первое окно перемножается с первой подпоследовательностью, и второе окно перемножается со второй подпоследовательностью, и эти два произведения подвергаются операции сложения с перекрытием. Для примера предполагается, что первое окно является убывающим окном, например монотонно убывающей функцией, и предположим, что второе окно является возрастающим окном, например монотонно возрастающей функцией. Во-вторых, для примера предполагается, что второе окно параметризуется базовой формой окна со скалярным множителем. Теперь по определению: target - первая подпоследовательность; w_target - первая подпоследовательность, каждая выборка которой умножена на убывающее окно; w_regressor - вторая подпоследовательность, каждая выборка которой умножена на базовую форму окна для возрастающего окна; и coef - скалярный множитель.
Теперь составляющую скалярного множителя второго окна можно оптимизировать, например, для минимизации суммарной квадратичной ошибки между target и результатом операции сложения с перекрытием. Используя для удобства матрично-векторную систему обозначений, проблему можно сформулировать как минимизацию суммы квадратов разностей между target и величиной
Figure 00000008
определяя отсюда векторы T и H как
Figure 00000009
Решение этой оптимизации задано в виде
Figure 00000010
где inv() обозначает скалярное или матричное обращение, trans() обозначает транспонирование матрицы или вектора, и * обозначает матричное или векторное умножение. Теперь, в качестве основных компонентов раскрытого изобретения, этот способ можно распространить для оптимизации фактической формы окна. Один способ осуществления этого состоит в следующем. Задается множество форм, для которых искомое окно получается как линейная комбинация элементов этого множества. Далее задается H так, чтобы каждый столбец H представлял собой форму из этого множества, каждая выборка которой умножена на вторую подпоследовательность, и задается coef как вектор-столбец, содержащий неизвестные весовые коэффициенты этих форм в оптимизирующей вырезающей функции. Согласно этим определениям, вышеприведенные уравнения, формулирующие проблему и ее решение, теперь применяются для решения более общей формы окна. Естественно, первое и второе окна могут поменяться ролями в вышеприведенном описании, в результате чего оптимизация будет осуществляться в отношении первого окна.
Более усовершенствованный вариант осуществления настоящего изобретения предусматривает совместную оптимизацию обеих форм окна. Для этого задают второе множество базовых форм окна, возможно, эквивалентное первому множеству форм окна, и предпочтительно, выбранное как обращенное по времени индексирование выборок в каждой из форм окна в первом множестве форм окна. Теперь определяется w_target как матрица, каждый столбец которой является базовой формой окна из второго множества форм окна, каждая выборка которой умножена на первую подпоследовательность, и определяется coef как вектор-столбец, содержащий, во-первых, весовые коэффициенты для первого окна и, во-вторых, весовые коэффициенты для второго окна. Тогда более общую проблему можно сформулировать как минимизацию суммы квадратов разностей между target и величиной
Figure 00000011
где квадратные скобки [] используются для формирования матрицы из подматриц или векторов. Отсюда векторы T и H определяются как
Figure 00000012
Решение этой оптимизации задано в виде
Figure 00000013
Еще один более усовершенствованный вариант осуществления настоящего изобретения предусматривает оптимизацию не только мгновенных форм окна, но и окон с оптимизированным частотно-зависимым взвешиванием. Один вариант осуществления этого изобретения предусматривает применение разновидности линии задержки с отводами, хотя изобретение никоим образом не ограничивается этой разновидностью. Один способ для осуществления этого обобщения состоит в замене, в вышеприведенном определении w_target и w_regressor, каждого столбца некоторым количеством столбцов, в каждом из которых каждая выборка перемножена с базовой формой окна, соответствующей столбцу, которые его заменяют, но где в этой базовой форме окна теперь каждая выборка умножена на соответствующую подпоследовательность, задержка которой соответствует конкретной позиции в линии задержки с отводами.
Предпочтительно при оптимизации коэффициентов, согласно этим способам, учитываются взвешивание, ограничение или последовательное вычисление коэффициентов, без отхода от раскрытого изобретения. Такие взвешивания могут включать в себя взвешивание путем придания большего веса коэффициентам, соответствующим низким абсолютным значениям задержки. Такое последовательное вычисление может предусматривать расчет коэффициентов для низких абсолютных значений задержки в первую очередь, например для минимизации суммарной квадратичной ошибки с использованием только этих коэффициентов, с последующим повторением этого процесса для все больших значений задержки, но только над оставшимися ошибками более ранних этапов этого процесса.
В целом, варианты осуществления изобретения предусматривают использование нескольких подпоследовательностей в качестве целей оптимизации. Оптимизация, в общем случае, минимизирует функцию искажения, которая является функцией этих целевых подпоследовательностей, и выходным сигналом системы взвешенного сложения с перекрытием. В этой оптимизации можно, без отхода от настоящего изобретения, применять различные ограничения при выборе базовых форм и задержек и их взвешивания для сложения с перекрытием в целом. В зависимости от точного выбора форм, эффект сложения с перекрытием постепенно ослабевает от подпоследовательностей, следующих за областью сложения с перекрытием во времени.
На фиг.10 показан один вариант осуществления раскрытого способа сложения с перекрытием, не ограничивающий изобретение именно этой структурой. Согласно фиг.10, одна подпоследовательность 1000 подвергается сложению с перекрытием, оптимизированному по времени и частоте, с другой подпоследовательностью 1010. Каждая из этих подпоследовательностей поступает в отдельную линию задержки, где z обозначает опережение по времени одной выборки и z-1 обозначает задержку по времени одной выборки, и где задержки, равные 1, -1 и 0, выбраны исключительно в целях иллюстрации: в связи с настоящим изобретением можно преимущественно использовать другие, большие или меньшие, задержки. Каждая задержанная версия каждой подпоследовательности умножается на некоторое количество базовых форм окна, и результат каждого умножения умножается на коэффициент, подлежащий отысканию совместно с другими коэффициентами в ходе оптимизации. После перемножения с этими коэффициентами результирующие подпоследовательности суммируются, формируя выходной сигнал 1020 сложения с перекрытием, оптимизированного по времени и частоте. При оптимизации 1030 коэффициентов в примере, показанном на фиг.10, берутся подпоследовательности 1040 и 1050, и минимизируется функция искажения, которая является функцией от 1040 и 1050 и выхода 1020.
В формуле изобретения, условные обозначения, применяемые на чертежах, включены только по соображениям ясности. Эти ссылки на предпочтительные варианты осуществления на чертежах никоим образом не следует рассматривать в порядке ограничения объема формулы изобретения.

Claims (20)

1. Способ генерации выходной последовательности выборок в соответствии с первой и второй подпоследовательностями выборок, причем способ содержит этапы, на которых
применяют процедуру взвешенного сложения с перекрытием к первой и второй подпоследовательностям для генерации выходной последовательности выборок,
оптимизируют весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, в соответствии с мерой совпадения между выходной последовательностью выборок и одной или несколькими целевыми последовательностями выборок.
2. Способ по п.1, в котором весовую функцию оптимизируют в соответствии с двумя или тремя целевыми последовательностями выборок.
3. Способ по п.1 или 2, в котором на этапе оптимизации регулируют, по меньшей мере, одну весовую функцию, используемую в процедуре взвешенного сложения с перекрытием.
4. Способ по п.3, в котором на этапе оптимизации регулируют две или три весовые функции, используемые в процедуре взвешенного сложения с перекрытием.
5. Способ по п.1, в котором, по меньшей мере, одну весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, представляют множеством параметров.
6. Способ по п.5, в котором множество параметров получают путем разложения временной формы, по меньшей мере, одной весовой функции в линейную комбинацию базовых форм окна.
7. Способ по п.6, в котором множество параметров получают путем разложения временной формы, по меньшей мере, одной весовой функции в линейную комбинацию двух или трех базовых форм окна.
8. Способ по любому из пп.5-7, в котором для получения множества параметров применяют, по меньшей мере, одну линию задержки с отводами для, по меньшей мере, одной из первой и второй подпоследовательностей выборок.
9. Способ по п.8, в котором для получения множества параметров применяют две линии задержки с отводами для первой и второй подпоследовательностей выборок.
10. Способ по п.8, в котором для получения множества параметров применяют три линии задержки с отводами.
11. Способ по п.1, в котором весовую функцию, используемую в процедуре взвешенного сложения с перекрытием, модифицируют в соответствии с мерой расстояния между выходной последовательностью выборок и, по меньшей мере, одной целевой последовательностью выборок.
12. Способ по п.11, в котором меру расстояния получают на основании суммарной квадратичной ошибки.
13. Способ по п.12, в котором меру расстояния получают на основании взвешенной суммарной квадратичной ошибки.
14. Способ по любому из пп.11-13, в котором меру расстояния минимизируют согласно процедуре наименьших квадратов.
15. Способ по п.14, в котором меру расстояния минимизируют согласно процедуре взвешенных наименьших квадратов.
16. Способ по п.1, в котором выборки первой и второй подпоследовательностей представляют собой выборки оцифрованного аудиосигнала.
17. Способ по п.1, в котором одной из первой и второй подпоследовательностей выборок является последовательность выборок маскирования.
18. Устройство хранения программ, содержащее последовательность команд для микропроцессора, причем команды при их выполнении побуждают микропроцессор осуществлять способ по любому из пп.1-17.
19. Устройство хранения программ по п.18, в котором микропроцессор является микропроцессором общего назначения.
20. Устройство для приема оцифрованного аудиосигнала, содержащее:
средство памяти для хранения кадров, представляющих принятый оцифрованный аудиосигнал, и
средство процессора для осуществления способа по любому из пп.1-17.
RU2007132729/09A 2005-01-31 2006-01-31 Способ взвешенного сложения с перекрытием RU2405217C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DKPA200500146 2005-01-31
DKPA200500146 2005-01-31

Publications (2)

Publication Number Publication Date
RU2007132729A RU2007132729A (ru) 2009-03-10
RU2405217C2 true RU2405217C2 (ru) 2010-11-27

Family

ID=59285473

Family Applications (3)

Application Number Title Priority Date Filing Date
RU2007132735/09A RU2417457C2 (ru) 2005-01-31 2006-01-31 Способ конкатенации кадров в системе связи
RU2007132729/09A RU2405217C2 (ru) 2005-01-31 2006-01-31 Способ взвешенного сложения с перекрытием
RU2007132728/09A RU2407071C2 (ru) 2005-01-31 2006-01-31 Способ генерации кадров маскирования в системе связи

Family Applications Before (1)

Application Number Title Priority Date Filing Date
RU2007132735/09A RU2417457C2 (ru) 2005-01-31 2006-01-31 Способ конкатенации кадров в системе связи

Family Applications After (1)

Application Number Title Priority Date Filing Date
RU2007132728/09A RU2407071C2 (ru) 2005-01-31 2006-01-31 Способ генерации кадров маскирования в системе связи

Country Status (15)

Country Link
US (5) US9047860B2 (ru)
EP (3) EP1846921B1 (ru)
JP (4) JP2008529073A (ru)
KR (3) KR101203348B1 (ru)
CN (3) CN101120398B (ru)
AU (3) AU2006208528C1 (ru)
BR (3) BRPI0607246B1 (ru)
CA (3) CA2596337C (ru)
ES (1) ES2625952T3 (ru)
HK (1) HK1108760A1 (ru)
IL (3) IL184864A (ru)
NO (3) NO338798B1 (ru)
RU (3) RU2417457C2 (ru)
WO (3) WO2006079348A1 (ru)
ZA (3) ZA200706261B (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9524724B2 (en) 2013-01-29 2016-12-20 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling in perceptual transform audio coding
US11749292B2 (en) 2012-11-15 2023-09-05 Ntt Docomo, Inc. Audio coding device, audio coding method, audio coding program, audio decoding device, audio decoding method, and audio decoding program

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9047860B2 (en) * 2005-01-31 2015-06-02 Skype Method for concatenating frames in communication system
TWI285568B (en) * 2005-02-02 2007-08-21 Dowa Mining Co Powder of silver particles and process
WO2007086380A1 (ja) * 2006-01-26 2007-08-02 Pioneer Corporation 高音質化装置及び方法、並びにコンピュータプログラム
JP2007316254A (ja) * 2006-05-24 2007-12-06 Sony Corp オーディオ信号補間方法及びオーディオ信号補間装置
EP2080194B1 (fr) * 2006-10-20 2011-12-07 France Telecom Attenuation du survoisement, notamment pour la generation d'une excitation aupres d'un decodeur, en absence d'information
JP4504389B2 (ja) * 2007-02-22 2010-07-14 富士通株式会社 隠蔽信号生成装置、隠蔽信号生成方法および隠蔽信号生成プログラム
US8280539B2 (en) * 2007-04-06 2012-10-02 The Echo Nest Corporation Method and apparatus for automatically segueing between audio tracks
CN100550712C (zh) * 2007-11-05 2009-10-14 华为技术有限公司 一种信号处理方法和处理装置
CN101207665B (zh) * 2007-11-05 2010-12-08 华为技术有限公司 一种衰减因子的获取方法
CN101437009B (zh) 2007-11-15 2011-02-02 华为技术有限公司 丢包隐藏的方法及其系统
JP5336522B2 (ja) * 2008-03-10 2013-11-06 フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ 瞬間的事象を有する音声信号の操作装置および操作方法
FR2929466A1 (fr) * 2008-03-28 2009-10-02 France Telecom Dissimulation d'erreur de transmission dans un signal numerique dans une structure de decodage hierarchique
RU2475868C2 (ru) * 2008-06-13 2013-02-20 Нокиа Корпорейшн Способ и устройство для маскирования ошибок кодированных аудиоданных
US8620660B2 (en) * 2010-10-29 2013-12-31 The United States Of America, As Represented By The Secretary Of The Navy Very low bit rate signal coder and decoder
JP5664291B2 (ja) * 2011-02-01 2015-02-04 沖電気工業株式会社 音声品質観測装置、方法及びプログラム
JP5849106B2 (ja) 2011-02-14 2016-01-27 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 低遅延の統合されたスピーチ及びオーディオ符号化におけるエラー隠しのための装置及び方法
BR112012029132B1 (pt) 2011-02-14 2021-10-05 Fraunhofer - Gesellschaft Zur Förderung Der Angewandten Forschung E.V Representação de sinal de informações utilizando transformada sobreposta
RU2585999C2 (ru) * 2011-02-14 2016-06-10 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Генерирование шума в аудиокодеках
CN103534754B (zh) 2011-02-14 2015-09-30 弗兰霍菲尔运输应用研究公司 在不活动阶段期间利用噪声合成的音频编解码器
JP5625126B2 (ja) 2011-02-14 2014-11-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム
TWI488176B (zh) 2011-02-14 2015-06-11 Fraunhofer Ges Forschung 音訊信號音軌脈衝位置之編碼與解碼技術
PL3239978T3 (pl) 2011-02-14 2019-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio
CN103503062B (zh) 2011-02-14 2016-08-10 弗劳恩霍夫应用研究促进协会 用于使用对齐的前瞻部分将音频信号编码及解码的装置与方法
KR101525185B1 (ko) 2011-02-14 2015-06-02 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법
CA2827249C (en) 2011-02-14 2016-08-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
US9008170B2 (en) 2011-05-10 2015-04-14 Qualcomm Incorporated Offset type and coefficients signaling method for sample adaptive offset
FR2977439A1 (fr) * 2011-06-28 2013-01-04 France Telecom Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard.
US8935308B2 (en) * 2012-01-20 2015-01-13 Mitsubishi Electric Research Laboratories, Inc. Method for recovering low-rank matrices and subspaces from data in high-dimensional matrices
US9129600B2 (en) * 2012-09-26 2015-09-08 Google Technology Holdings LLC Method and apparatus for encoding an audio signal
CN103888630A (zh) * 2012-12-20 2014-06-25 杜比实验室特许公司 用于控制声学回声消除的方法和音频处理装置
WO2014118139A1 (en) 2013-01-29 2014-08-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Concept for coding mode switching compensation
US9478221B2 (en) 2013-02-05 2016-10-25 Telefonaktiebolaget Lm Ericsson (Publ) Enhanced audio frame loss concealment
BR112015017222B1 (pt) 2013-02-05 2021-04-06 Telefonaktiebolaget Lm Ericsson (Publ) Método e decodificador configurado para ocultar um quadro de áudio perdido de um sinal de áudio recebido, receptor, e, meio legível por computador
KR102238376B1 (ko) * 2013-02-05 2021-04-08 텔레폰악티에볼라겟엘엠에릭슨(펍) 오디오 프레임 손실 은폐를 제어하기 위한 방법 및 장치
FR3004876A1 (fr) * 2013-04-18 2014-10-24 France Telecom Correction de perte de trame par injection de bruit pondere.
US9406308B1 (en) 2013-08-05 2016-08-02 Google Inc. Echo cancellation via frequency domain modulation
US10728298B2 (en) * 2013-09-12 2020-07-28 Qualcomm Incorporated Method for compressed sensing of streaming data and apparatus for performing the same
FR3015754A1 (fr) * 2013-12-20 2015-06-26 Orange Re-echantillonnage d'un signal audio cadence a une frequence d'echantillonnage variable selon la trame
CN104751851B (zh) * 2013-12-30 2018-04-27 联芯科技有限公司 一种基于前后向联合估计的丢帧差错隐藏方法及系统
KR101862356B1 (ko) * 2014-01-03 2018-06-29 삼성전자주식회사 개선된 앰비소닉 디코딩을 수행하는 방법 및 장치
EP3090574B1 (en) * 2014-01-03 2019-06-26 Samsung Electronics Co., Ltd. Method and apparatus for improved ambisonic decoding
US10157620B2 (en) 2014-03-04 2018-12-18 Interactive Intelligence Group, Inc. System and method to correct for packet loss in automatic speech recognition systems utilizing linear interpolation
EP2922055A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using individual replacement LPC representations for individual codebook information
EP2922056A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using power compensation
EP2922054A1 (en) 2014-03-19 2015-09-23 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and corresponding computer program for generating an error concealment signal using an adaptive noise estimation
NO2780522T3 (ru) 2014-05-15 2018-06-09
FR3023646A1 (fr) * 2014-07-11 2016-01-15 Orange Mise a jour des etats d'un post-traitement a une frequence d'echantillonnage variable selon la trame
GB2547877B (en) * 2015-12-21 2019-08-14 Graham Craven Peter Lossless bandsplitting and bandjoining using allpass filters
WO2017153300A1 (en) 2016-03-07 2017-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Error concealment unit, audio decoder, and related method and computer program using characteristics of a decoded representation of a properly decoded audio frame
WO2017153299A2 (en) * 2016-03-07 2017-09-14 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Error concealment unit, audio decoder, and related method and computer program fading out a concealed audio frame out according to different damping factors for different frequency bands
US9679578B1 (en) 2016-08-31 2017-06-13 Sorenson Ip Holdings, Llc Signal clipping compensation
JP6652469B2 (ja) * 2016-09-07 2020-02-26 日本電信電話株式会社 復号装置、復号方法及びプログラム
US9934785B1 (en) 2016-11-30 2018-04-03 Spotify Ab Identification of taste attributes from an audio signal
CN108922551B (zh) * 2017-05-16 2021-02-05 博通集成电路(上海)股份有限公司 用于补偿丢失帧的电路及方法
EP3984026A1 (en) * 2019-06-13 2022-04-20 Telefonaktiebolaget LM Ericsson (publ) Time reversed audio subframe error concealment
EP3901950A1 (en) * 2020-04-21 2021-10-27 Dolby International AB Methods, apparatus and systems for low latency audio discontinuity fade out

Family Cites Families (72)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2102254B (en) * 1981-05-11 1985-08-07 Kokusai Denshin Denwa Co Ltd A speech analysis-synthesis system
EP0123616B1 (en) * 1983-04-20 1987-03-04 Nippon Telegraph And Telephone Corporation Interframe coding method and apparatus therefor
FR2606239A1 (fr) 1986-10-30 1988-05-06 Bull Sa Procede et dispositif de transmission de donnees numeriques
US5007094A (en) * 1989-04-07 1991-04-09 Gte Products Corporation Multipulse excited pole-zero filtering approach for noise reduction
US5371853A (en) 1991-10-28 1994-12-06 University Of Maryland At College Park Method and system for CELP speech coding and codebook for use therewith
JP2779886B2 (ja) 1992-10-05 1998-07-23 日本電信電話株式会社 広帯域音声信号復元方法
US5434947A (en) * 1993-02-23 1995-07-18 Motorola Method for generating a spectral noise weighting filter for use in a speech coder
US5995539A (en) 1993-03-17 1999-11-30 Miller; William J. Method and apparatus for signal transmission and reception
SE503547C2 (sv) 1993-06-11 1996-07-01 Ericsson Telefon Ab L M Anordning och förfarande för döljande av förlorade ramar
JP3520555B2 (ja) * 1994-03-29 2004-04-19 ヤマハ株式会社 音声符号化方法及び音声音源装置
US5602959A (en) * 1994-12-05 1997-02-11 Motorola, Inc. Method and apparatus for characterization and reconstruction of speech excitation waveforms
TW294867B (ru) 1994-12-23 1997-01-01 Qualcomm Inc
US5699481A (en) 1995-05-18 1997-12-16 Rockwell International Corporation Timing recovery scheme for packet speech in multiplexing environment of voice with data applications
US5774837A (en) * 1995-09-13 1998-06-30 Voxware, Inc. Speech coding system and method using voicing probability determination
US5956674A (en) 1995-12-01 1999-09-21 Digital Theater Systems, Inc. Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels
CA2206652A1 (en) 1996-06-04 1997-12-04 Claude Laflamme Baud-rate-independent asvd transmission built around g.729 speech-coding standard
JP3623056B2 (ja) 1996-09-10 2005-02-23 ソニー株式会社 動画像圧縮装置
JPH1091194A (ja) 1996-09-18 1998-04-10 Sony Corp 音声復号化方法及び装置
US6766300B1 (en) 1996-11-07 2004-07-20 Creative Technology Ltd. Method and apparatus for transient detection and non-distortion time scaling
JP3596841B2 (ja) 1997-01-24 2004-12-02 株式会社ルネサステクノロジ 受信データ伸長装置
US6233550B1 (en) 1997-08-29 2001-05-15 The Regents Of The University Of California Method and apparatus for hybrid coding of speech at 4kbps
DE69836785T2 (de) 1997-10-03 2007-04-26 Matsushita Electric Industrial Co., Ltd., Kadoma Audiosignalkompression, Sprachsignalkompression und Spracherkennung
FI980132A (fi) * 1998-01-21 1999-07-22 Nokia Mobile Phones Ltd Adaptoituva jälkisuodatin
US6415253B1 (en) 1998-02-20 2002-07-02 Meta-C Corporation Method and apparatus for enhancing noise-corrupted speech
SE513520C2 (sv) * 1998-05-14 2000-09-25 Ericsson Telefon Ab L M Förfarande och anordning för maskering av fördröjda paket
US6292454B1 (en) 1998-10-08 2001-09-18 Sony Corporation Apparatus and method for implementing a variable-speed audio data playback system
US6456964B2 (en) 1998-12-21 2002-09-24 Qualcomm, Incorporated Encoding of periodic speech using prototype waveforms
US6418408B1 (en) 1999-04-05 2002-07-09 Hughes Electronics Corporation Frequency domain interpolative speech codec system
US6765931B1 (en) 1999-04-13 2004-07-20 Broadcom Corporation Gateway with voice
KR100633720B1 (ko) 1999-04-19 2006-10-16 에이티 앤드 티 코포레이션 패킷 손실 또는 프레임 삭제 은폐를 수행하는 방법 및 장치
US7117156B1 (en) * 1999-04-19 2006-10-03 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
US6324503B1 (en) * 1999-07-19 2001-11-27 Qualcomm Incorporated Method and apparatus for providing feedback from decoder to encoder to improve performance in a predictive speech coder under frame erasure conditions
US6691082B1 (en) * 1999-08-03 2004-02-10 Lucent Technologies Inc Method and system for sub-band hybrid coding
US6665317B1 (en) 1999-10-29 2003-12-16 Array Telecom Corporation Method, system, and computer program product for managing jitter
US6931370B1 (en) * 1999-11-02 2005-08-16 Digital Theater Systems, Inc. System and method for providing interactive audio in a multi-channel audio environment
JP2001142477A (ja) * 1999-11-12 2001-05-25 Matsushita Electric Ind Co Ltd 有声音形成装置とそれを用いた音声認識装置
FI116643B (fi) 1999-11-15 2006-01-13 Nokia Corp Kohinan vaimennus
SE517156C2 (sv) 1999-12-28 2002-04-23 Global Ip Sound Ab System för överföring av ljud över paketförmedlade nät
US6584438B1 (en) 2000-04-24 2003-06-24 Qualcomm Incorporated Frame erasure compensation method in a variable rate speech coder
AU2001290882A1 (en) * 2000-09-15 2002-03-26 Lernout And Hauspie Speech Products N.V. Fast waveform synchronization for concatenation and time-scale modification of speech
US6661842B1 (en) 2000-09-22 2003-12-09 General Dynamics Decision Systems, Inc. Methods and apparatus for error-resilient video coding
US7031926B2 (en) * 2000-10-23 2006-04-18 Nokia Corporation Spectral parameter substitution for the frame error concealment in a speech decoder
US6968309B1 (en) * 2000-10-31 2005-11-22 Nokia Mobile Phones Ltd. Method and system for speech frame error concealment in speech decoding
EP1217613A1 (fr) 2000-12-19 2002-06-26 Koninklijke Philips Electronics N.V. Reconstitution de trames manquantes ou mauvaises en téléphonie cellulaire
US7069208B2 (en) 2001-01-24 2006-06-27 Nokia, Corp. System and method for concealment of data loss in digital audio transmission
FR2820227B1 (fr) * 2001-01-30 2003-04-18 France Telecom Procede et dispositif de reduction de bruit
KR100591350B1 (ko) 2001-03-06 2006-06-19 가부시키가이샤 엔.티.티.도코모 오디오 데이터 보간장치 및 방법, 오디오 데이터관련 정보작성장치 및 방법, 오디오 데이터 보간 정보 송신장치 및방법, 및 그 프로그램 및 기록 매체
ATE323935T1 (de) 2001-04-09 2006-05-15 Koninkl Philips Electronics Nv Adpcm sprachkodiersystem mit phasenfaltungs und - entfaltungsfiltern
US7610205B2 (en) 2002-02-12 2009-10-27 Dolby Laboratories Licensing Corporation High quality time-scaling and pitch-scaling of audio signals
WO2002095731A1 (fr) 2001-05-22 2002-11-28 Fujitsu Limited Processeur de signaux vocaux
FI20011392A (fi) * 2001-06-28 2002-12-29 Nokia Corp Mekanismi multicast-jakelua varten tietoliikennejärjestelmässä
US7006511B2 (en) 2001-07-17 2006-02-28 Avaya Technology Corp. Dynamic jitter buffering for voice-over-IP and other packet-based communication systems
US7590525B2 (en) * 2001-08-17 2009-09-15 Broadcom Corporation Frame erasure concealment for predictive speech coding based on extrapolation of speech waveform
US7711563B2 (en) 2001-08-17 2010-05-04 Broadcom Corporation Method and system for frame erasure concealment for predictive speech coding based on extrapolation of speech waveform
US6895375B2 (en) 2001-10-04 2005-05-17 At&T Corp. System for bandwidth extension of Narrow-band speech
US6681842B2 (en) * 2001-12-03 2004-01-27 Agilent Technologies, Inc. Cooling apparatus
SE521600C2 (sv) * 2001-12-04 2003-11-18 Global Ip Sound Ab Lågbittaktskodek
US20040002856A1 (en) 2002-03-08 2004-01-01 Udaya Bhaskar Multi-rate frequency domain interpolative speech CODEC system
JP4022427B2 (ja) 2002-04-19 2007-12-19 独立行政法人科学技術振興機構 エラー隠蔽方法、エラー隠蔽プログラム、送信装置、受信装置及びエラー隠蔽装置
US7496086B2 (en) 2002-04-30 2009-02-24 Alcatel-Lucent Usa Inc. Techniques for jitter buffer delay management
CA2388439A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
JP4089347B2 (ja) 2002-08-21 2008-05-28 沖電気工業株式会社 音声復号装置
BR0316963A (pt) * 2002-12-04 2005-10-25 Thomson Licensing Sa Codificação de fusões de vìdeo usando predição ponderada
KR20060011854A (ko) 2003-05-14 2006-02-03 오끼 덴끼 고오교 가부시끼가이샤 소거된 주기 신호 데이터를 은닉하는 장치 및 방법
JP4233931B2 (ja) 2003-06-17 2009-03-04 日本電信電話株式会社 音声・音響信号再生調整方法、装置、および音声・音響信号再生調整プログラム、そのプログラムを記録した記録媒体
US7356748B2 (en) 2003-12-19 2008-04-08 Telefonaktiebolaget Lm Ericsson (Publ) Partial spectral loss concealment in transform codecs
JP2005315973A (ja) * 2004-04-27 2005-11-10 Seiko Epson Corp 半導体集積回路
TWI273562B (en) 2004-09-01 2007-02-11 Via Tech Inc Decoding method and apparatus for MP3 decoder
US7676362B2 (en) 2004-12-31 2010-03-09 Motorola, Inc. Method and apparatus for enhancing loudness of a speech signal
US9047860B2 (en) * 2005-01-31 2015-06-02 Skype Method for concatenating frames in communication system
US7359409B2 (en) * 2005-02-02 2008-04-15 Texas Instruments Incorporated Packet loss concealment for voice over packet networks
US9160382B2 (en) * 2013-10-08 2015-10-13 Blackberry Limited Phase noise mitigation for wireless communications

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11749292B2 (en) 2012-11-15 2023-09-05 Ntt Docomo, Inc. Audio coding device, audio coding method, audio coding program, audio decoding device, audio decoding method, and audio decoding program
US9524724B2 (en) 2013-01-29 2016-12-20 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling in perceptual transform audio coding
RU2631988C2 (ru) * 2013-01-29 2017-09-29 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Заполнение шумом при аудиокодировании с перцепционным преобразованием
US9792920B2 (en) 2013-01-29 2017-10-17 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling concept
US10410642B2 (en) 2013-01-29 2019-09-10 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling concept
US11031022B2 (en) 2013-01-29 2021-06-08 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Noise filling concept

Also Published As

Publication number Publication date
JP2014038347A (ja) 2014-02-27
KR20080002757A (ko) 2008-01-04
ZA200706261B (en) 2009-09-30
CN101120398B (zh) 2012-05-23
CA2596341A1 (en) 2006-08-03
KR20080001708A (ko) 2008-01-03
WO2006079350A1 (en) 2006-08-03
JP5420175B2 (ja) 2014-02-19
IL184864A0 (en) 2007-12-03
NO20074349L (no) 2007-10-18
NO340871B1 (no) 2017-07-03
CN101120400B (zh) 2013-03-27
CA2596337A1 (en) 2006-08-03
KR101203244B1 (ko) 2012-11-20
EP1846921A1 (en) 2007-10-24
EP1849156B1 (en) 2012-08-01
AU2006208528B2 (en) 2011-08-18
CN101120400A (zh) 2008-02-06
HK1108760A1 (en) 2008-05-16
RU2007132728A (ru) 2009-03-10
US9047860B2 (en) 2015-06-02
RU2417457C2 (ru) 2011-04-27
AU2006208529A1 (en) 2006-08-03
US9270722B2 (en) 2016-02-23
KR101237546B1 (ko) 2013-02-26
NO20074418L (no) 2007-08-29
CN101120399A (zh) 2008-02-06
NO338702B1 (no) 2016-10-03
AU2006208530B2 (en) 2010-10-28
CN101120399B (zh) 2011-07-06
CA2596341C (en) 2013-12-03
EP1849156A1 (en) 2007-10-31
RU2007132729A (ru) 2009-03-10
CA2596338A1 (en) 2006-08-03
RU2007132735A (ru) 2009-03-10
EP1846921B1 (en) 2017-10-04
US20150207842A1 (en) 2015-07-23
BRPI0607251A2 (pt) 2017-06-13
KR101203348B1 (ko) 2012-11-20
NO338798B1 (no) 2016-10-24
US20100161086A1 (en) 2010-06-24
US8918196B2 (en) 2014-12-23
ZA200706534B (en) 2008-07-30
EP1846920A1 (en) 2007-10-24
WO2006079348A1 (en) 2006-08-03
BRPI0607246A2 (pt) 2010-03-23
US20080275580A1 (en) 2008-11-06
IL184864A (en) 2011-01-31
AU2006208529B2 (en) 2010-10-28
ZA200706307B (en) 2008-06-25
US20120158163A1 (en) 2012-06-21
BRPI0607247A2 (pt) 2010-03-23
ES2625952T3 (es) 2017-07-21
AU2006208528A1 (en) 2006-08-03
EP1846920B1 (en) 2017-04-19
IL184948A0 (en) 2007-12-03
BRPI0607247B1 (pt) 2019-10-29
CA2596337C (en) 2014-08-19
US8068926B2 (en) 2011-11-29
NO20074348L (no) 2007-10-21
RU2407071C2 (ru) 2010-12-20
IL184948A (en) 2012-07-31
WO2006079349A1 (en) 2006-08-03
IL184927A0 (en) 2007-12-03
JP2008529073A (ja) 2008-07-31
AU2006208530A1 (en) 2006-08-03
BRPI0607246B1 (pt) 2019-12-03
CA2596338C (en) 2014-05-13
US20080154584A1 (en) 2008-06-26
IL184927A (en) 2016-06-30
AU2006208528C1 (en) 2012-03-01
JP2008529072A (ja) 2008-07-31
JP2008529074A (ja) 2008-07-31
KR20080002756A (ko) 2008-01-04
CN101120398A (zh) 2008-02-06
JP5925742B2 (ja) 2016-05-25
JP5202960B2 (ja) 2013-06-05

Similar Documents

Publication Publication Date Title
RU2405217C2 (ru) Способ взвешенного сложения с перекрытием

Legal Events

Date Code Title Description
PD4A Correction of name of patent owner
PC41 Official registration of the transfer of exclusive right

Effective date: 20200727