RU2414009C2 - Signal encoding and decoding device and method - Google Patents
Signal encoding and decoding device and method Download PDFInfo
- Publication number
- RU2414009C2 RU2414009C2 RU2008133599/09A RU2008133599A RU2414009C2 RU 2414009 C2 RU2414009 C2 RU 2414009C2 RU 2008133599/09 A RU2008133599/09 A RU 2008133599/09A RU 2008133599 A RU2008133599 A RU 2008133599A RU 2414009 C2 RU2414009 C2 RU 2414009C2
- Authority
- RU
- Russia
- Prior art keywords
- signal
- decoding
- encoding
- signals
- input signal
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000000926 separation method Methods 0.000 claims description 25
- 238000004458 analytical method Methods 0.000 claims description 23
- 230000005236 sound signal Effects 0.000 claims description 17
- 239000000284 extract Substances 0.000 claims description 13
- 230000006837 decompression Effects 0.000 claims description 7
- 238000012856 packing Methods 0.000 claims description 7
- 238000000605 extraction Methods 0.000 abstract description 7
- 239000000126 substance Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 27
- 230000000873 masking effect Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 16
- 230000015572 biosynthetic process Effects 0.000 description 15
- 238000003786 synthesis reaction Methods 0.000 description 14
- 238000013139 quantization Methods 0.000 description 11
- 238000007781 pre-processing Methods 0.000 description 10
- 230000005284 excitation Effects 0.000 description 8
- 230000003044 adaptive effect Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 6
- 238000012805 post-processing Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000007613 environmental effect Effects 0.000 description 4
- 238000001228 spectrum Methods 0.000 description 4
- 230000002194 synthesizing effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000013213 extrapolation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
Область техники, к которой относится изобретениеFIELD OF THE INVENTION
Настоящее изобретение относится к устройствам кодирования и декодирования и к способам кодирования и декодирования, и более конкретно к устройствам кодирования и декодирования и к способам кодирования и декодирования, которые могут кодировать или декодировать сигналы с оптимальной скоростью передачи битов (битрейтам) согласно характеристикам сигналов.The present invention relates to encoding and decoding devices and to encoding and decoding methods, and more particularly, to encoding and decoding devices and to encoding and decoding methods that can encode or decode signals with an optimal bit rate (bit rate) according to signal characteristics.
Предшествующий уровень техникиState of the art
Общепринятые кодеры звука могут обеспечивать высококачественные звуковые сигналы с высокой скоростью передачи битов 48 Кбит/с или больше, но неэффективны для обработки речевых сигналов. С другой стороны, обычные речевые кодеры могут эффективно кодировать речевые сигналы с низкой скоростью передачи битов 12 Кбит/с или меньше, но не подходят для кодирования различных звуковых сигналов.Conventional audio encoders can provide high-quality audio signals with a high bit rate of 48 Kbps or more, but are inefficient for processing speech signals. Conventional speech encoders, on the other hand, can efficiently encode speech signals with a low bit rate of 12 Kbit / s or less, but are not suitable for encoding various audio signals.
Раскрытие изобретенияDisclosure of invention
Техническая проблемаTechnical problem
Настоящее изобретение обеспечивает устройства кодирования и декодирования и способы кодирования и декодирования, которые могут кодировать или декодировать сигналы (например, речевые и звуковые сигналы), имеющие различные характеристики, с оптимальной скоростью передачи битов.The present invention provides encoding and decoding devices and encoding and decoding methods that can encode or decode signals (eg, speech and audio signals) having various characteristics with an optimal bit rate.
Техническое решениеTechnical solution
Согласно аспекту настоящего изобретения обеспечен способ декодирования, включающий в себя извлечение множества закодированных сигналов из входного битового потока, определение, какой из множества способов декодирования должен быть использован для декодирования каждого из закодированных сигналов, декодирование закодированных сигналов с использованием определенных способов декодирования и синтезирование декодированных сигналов.According to an aspect of the present invention, there is provided a decoding method including extracting a plurality of encoded signals from an input bitstream, determining which of a plurality of decoding methods should be used to decode each of the encoded signals, decoding the encoded signals using specific decoding methods, and synthesizing the decoded signals.
Согласно другому аспекту настоящего изобретения обеспечено устройство декодирования, включающее в себя модуль распаковки битов, который извлекает множество закодированных сигналов из входного битового потока, модуль определения декодера, который определяет, какой из множества блоков декодирования должен быть использован для декодирования каждого из закодированных сигналов, модуль декодирования, который включает в себя блоки декодирования и декодирует закодированные сигналы с использованием определенных блоков декодирования, и модуль синтезирования, который синтезирует декодированные сигналы.According to another aspect of the present invention, there is provided a decoding device including a bit decompression module that extracts a plurality of encoded signals from an input bit stream, a decoder determination module that determines which of the plurality of decoding blocks should be used to decode each of the encoded signals, a decoding module which includes decoding units and decodes encoded signals using specific decoding units, and a synthesizer bar that synthesizes decoded signals.
Согласно другому аспекту настоящего изобретения обеспечен способ кодирования, включающий в себя разделение входного сигнала на множество разделенных сигналов, определение на основе характеристик каждого из разделенных сигналов, какой из множества способов кодирования должен быть использован для кодирования каждого из разделенных сигналов, кодирование разделенных сигналов с использованием определенных способов кодирования и формирование битового потока на основе закодированных разделенных сигналов.According to another aspect of the present invention, there is provided a coding method including dividing an input signal into a plurality of divided signals, determining, based on the characteristics of each of the divided signals, which of the plurality of encoding methods should be used to encode each of the divided signals, encoding the divided signals using certain encoding methods and the formation of a bit stream based on encoded separated signals.
Согласно другому аспекту настоящего изобретения обеспечено устройство кодирования, включающее в себя модуль разделения сигнала, который разделяет входной сигнал на множество разделенных сигналов, модуль определения кодера, который определяет на основе характеристик каждого из разделенных сигналов, какой из множества блоков кодирования должен быть использован для кодирования каждого из разделенных сигналов, модуль кодирования, который включает в себя блоки кодирования и кодирует разделенные сигналы с использованием определенных блоков кодирования, и модуль упаковки битов, который формирует битовый поток на основе закодированных разделенных сигналов.According to another aspect of the present invention, there is provided an encoding apparatus including a signal splitter module that splits an input signal into a plurality of split signals, an encoder determination module that determines, based on the characteristics of each of the split signals, which of the plurality of coding units should be used to encode each of the divided signals, a coding module that includes coding blocks and encodes the divided signals using certain blocks coding shafts, and a bit packing module that generates a bitstream based on encoded separated signals.
ПреимуществаBenefits
Соответственно, можно кодировать сигналы, имеющие различные характеристики, с оптимальной скоростью передачи битов посредством причисления упомянутых сигналов к одному или нескольким классам согласно характеристикам этих сигналов и кодирования каждого из сигналов с использованием блока кодирования, который лучше всего подходит для класса, которому принадлежит соответствующий сигнал. Кроме того, можно эффективно кодировать различные сигналы, в том числе звуковые и речевые сигналы.Accordingly, it is possible to encode signals having different characteristics with an optimal bit rate by assigning said signals to one or more classes according to the characteristics of these signals and encoding each of the signals using the encoding unit that is best suited for the class to which the corresponding signal belongs. In addition, it is possible to efficiently encode various signals, including audio and speech signals.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF THE DRAWINGS
Фиг.1 - блок-схема устройства кодирования согласно варианту осуществления настоящего изобретения.1 is a block diagram of an encoding device according to an embodiment of the present invention.
Фиг.2 - блок-схема варианта осуществления модуля классификации, изображенного на фиг.1.FIG. 2 is a block diagram of an embodiment of a classification module shown in FIG.
Фиг.3 - блок-схема варианта осуществления блока предварительной обработки, изображенного на фиг.2.FIG. 3 is a block diagram of an embodiment of a pre-processing unit shown in FIG. 2.
Фиг.4 - блок-схема устройства для вычисления перцепционной энтропии входного сигнала согласно варианту осуществления настоящего изобретения.4 is a block diagram of a device for calculating the perceptual entropy of an input signal according to an embodiment of the present invention.
Фиг.5 - блок-схема другого варианта осуществления модуля классификации, изображенного на фиг.1.FIG. 5 is a block diagram of another embodiment of a classification module shown in FIG.
Фиг.6 - блок-схема варианта осуществления блока разделения сигнала, изображенного на фиг.5.6 is a block diagram of an embodiment of a signal splitter shown in FIG. 5.
Фиг.7 и фиг.8 - схемы для пояснения способов объединения множества разделенных сигналов согласно вариантам осуществления настоящего изобретения.FIG. 7 and FIG. 8 are diagrams for explaining methods for combining a plurality of separated signals according to embodiments of the present invention.
Фиг.9 - блок-схема другого варианта осуществления блока разделения сигнала, изображенного на фиг.5.FIG. 9 is a block diagram of another embodiment of a signal separation unit shown in FIG.
Фиг.10 - схема для пояснения способа разделения входного сигнала на множество разделенных сигналов согласно варианту осуществления настоящего изобретения.10 is a diagram for explaining a method of dividing an input signal into a plurality of divided signals according to an embodiment of the present invention.
Фиг.11 - блок-схема варианта осуществления блока определения, изображенного на фиг.5.11 is a block diagram of an embodiment of the determination unit shown in FIG.
Фиг.12 - блок-схема варианта осуществления блока кодирования, изображенного на фиг.1.Fig. 12 is a block diagram of an embodiment of the coding unit of Fig. 1.
Фиг.13 - блок-схема другого варианта осуществления блока кодирования, изображенного на фиг.1.FIG. 13 is a block diagram of another embodiment of a coding unit shown in FIG.
Фиг.14 - блок-схема устройства кодирования согласно другому варианту осуществления настоящего изобретения.14 is a block diagram of an encoding apparatus according to another embodiment of the present invention.
Фиг.15 - блок-схема устройства декодирования согласно варианту осуществления настоящего изобретения.15 is a block diagram of a decoding apparatus according to an embodiment of the present invention.
Фиг.16 - блок-схема варианта осуществления блока синтезирования, изображенного на фиг.15.FIG. 16 is a block diagram of an embodiment of a synthesis unit shown in FIG.
Предпочтительные варианты осуществления изобретенияPreferred Embodiments
Далее в этом документе будет более полно описано настоящее изобретение согласно прилагаемым чертежам, на которых представлены иллюстративные варианты осуществления изобретения.Hereinafter, the present invention will be more fully described according to the accompanying drawings, in which illustrative embodiments of the invention are presented.
Фиг.1 является блок-схемой устройства кодирования согласно варианту осуществления настоящего изобретения. Согласно фиг.1, устройство кодирования включает в себя модуль 100 классификации, модуль 200 кодирования и модуль 300 упаковки битов.1 is a block diagram of an encoding device according to an embodiment of the present invention. 1, an encoding device includes a
Модуль 200 кодирования включает в себя множество блоков 210 и 220 кодирования, с первого по m-ый, которые выполняют различные способы кодирования.
Модуль 100 классификации разделяет входной сигнал на множество разделенных сигналов и сопоставляет каждому из разделенных сигналов один из блоков 210 и 220 кодирования, с первого по m-ый. Некоторые из блоков 210 и 220 кодирования, с первого по m-ый, могут быть сопоставлены двум и более разделенным сигналам или вообще (не сопоставлены) ни одному разделенному сигналу.The
Модуль 100 классификации может выделять количество битов для кодирования каждого из разделенных сигналов или определять порядок, в котором должны быть закодированы разделенные сигналы.The
Модуль 200 кодирования кодирует каждый из разделенных сигналов с использованием того из блоков 210 и 220 кодирования, с первого по m-ый, который сопоставлен соответствующему разделенному сигналу. Модуль 100 классификации анализирует характеристики каждого из разделенных сигналов и выбирает один из блоков 210 и 220 кодирования, с первого по m-ый, который может согласно результатам анализа наиболее эффективно закодировать каждый из разделенных сигналов.An
Блок кодирования, который может наиболее эффективно закодировать разделенный сигнал, можно считать способным к достижению самой высокой эффективности сжатия.The encoding unit that can most effectively encode the split signal can be considered capable of achieving the highest compression efficiency.
Например, разделенный сигнал, который может быть легко смоделирован в виде коэффициента и остатка, может быть эффективно закодирован речевым кодером, и разделенный сигнал, который нельзя легко смоделировать в виде коэффициента и остатка, может быть эффективно закодирован кодером звука.For example, a split signal that can be easily modeled as a coefficient and a residual can be efficiently encoded by a speech encoder, and a split signal that cannot be easily modeled as a coefficient and a remainder can be effectively encoded by a sound encoder.
Если отношение мощности остатка, полученного посредством моделирования разделенного сигнала, к мощности разделенного сигнала меньше предопределенного порога, то разделенный сигнал можно считать сигналом, который может быть легко смоделирован.If the ratio of the residual power obtained by modeling the divided signal to the power of the divided signal is less than a predetermined threshold, then the divided signal can be considered a signal that can be easily modeled.
Так как разделенный сигнал, который обнаруживает высокую избыточность по оси времени, может быть хорошо смоделирован с использованием метода линейного предсказания, в котором текущий сигнал предсказывается на основе предыдущего сигнала, то он может быть наиболее эффективно закодирован речевым кодером, который использует способ кодирования на основе линейного предсказания.Since a split signal that detects high redundancy along the time axis can be well modeled using a linear prediction method in which the current signal is predicted based on a previous signal, it can be most efficiently encoded by a speech encoder that uses a linear coding method predictions.
Модуль 300 упаковки битов формирует передаваемый битовый поток на основе закодированных разделенных сигналов, обеспечиваемых модулем 200 кодирования, и дополнительной информации кодирования, относящейся к закодированным разделенным сигналам. Модуль 300 упаковки битов может формировать битовый поток, имеющий переменную скорость передачи битов, с использованием простого битового способа или способа арифметического кодирования с секционированием по битам.The
Разделенные сигналы или диапазоны частот, которые не закодированы из-за ограничений по скорости передачи битов, могут быть восстановлены из декодированных сигналов или диапазонов частот, обеспечиваемых декодером, с использованием способа интерполяции, экстраполяции или дублирования. Кроме того, в передаваемый битовый поток может быть включена информация компенсации, относящаяся к разделенным сигналам, которые не закодированы.Separated signals or frequency ranges that are not encoded due to bit rate limitations can be reconstructed from the decoded signals or frequency ranges provided by the decoder using an interpolation, extrapolation or duplication method. In addition, compensation information related to separated signals that are not encoded may be included in the transmitted bitstream.
Согласно фиг.1 модуль 110 классификации может включать в себя множество блоков 110 и 120 классификации, с первого по n-ый. Каждый из блоков 110 и 120 классификации, с первого по n-ый, может разделять входной сигнал на множество разделенных сигналов, преобразует область определения входного сигнала, извлекает характеристики входного сигнала, классифицирует входной сигнал согласно характеристикам входного сигнала или сопоставляет входной сигнал одному из блоков 210 и 220 кодирования, с первого по m-ый.1,
Один из блоков 110 и 120 классификации, с первого по n-ый, может быть блоком предварительной обработки, который выполняет операцию предварительной обработки входного сигнала, чтобы входной сигнал мог быть преобразован в сигнал, который можно эффективно закодировать. Блок предварительной обработки может разделять входной сигнал на множество компонентов, например компонент коэффициента и компонент сигнала, и может выполнять операцию предварительной обработки входного сигнала до выполнения другими блоками классификации своих операций.One of the
Входной сигнал можно предварительно обрабатывать по выбору согласно характеристикам входного сигнала, факторам внешней окружающей среды и целевой скорости передачи битов, и можно предварительно обрабатывать по выбору только некоторые из множества разделенных сигналов, полученных из входного сигнала.The input signal can be pre-processed optionally according to the characteristics of the input signal, environmental factors and the target bit rate, and only some of the plurality of separated signals obtained from the input signal can be pre-processed.
Модуль 100 классификации может классифицировать входной сигнал согласно информации перцепционной характеристики входного сигнала, обеспеченной модулем 400 психоакустического моделирования. Примеры информации перцепционной характеристики включают в себя порог маскировки, отношение сигнал-маска (SMR) и перцепционную энтропию.The
Другими словами, модуль 100 классификации может разделять входной сигнал на множество разделенных сигналов или может сопоставлять каждому из разделенных сигналов один или несколько из блоков с 210 по 220 кодирования, с первого по m-ый, согласно информации перцепционной характеристики входного сигнала, например порогу маскировки и SNR входного сигнала.In other words, the
Кроме того, модуль 100 классификации может принимать такую информацию, как тональность, частота переходов через нуль (ZCR) и коэффициент линейного предсказания входного сигнала, и информацию классификации предыдущих кадров и может классифицировать входной сигнал согласно принятой информации.In addition, the
Согласно фиг.1 закодированная информация результата, выведенная модулем 200 кодирования, может быть возвращена в модуль 100 классификации.1, the encoded result information output by the
После разделения модулем 100 классификации входного сигнала на множество разделенных сигналов и определения, каким из блоков 210 и 220 кодирования, с первого по m-ый, посредством какого количества битов и в каком порядке должны быть закодированы разделенные сигналы, разделенные сигналы кодируют согласно результатам определения. Количество битов, фактически используемое для кодирования каждого из разделенных сигналов, необязательно должно быть идентичным количеству битов, которое выделено модулем 100 классификации.After the input
Информация, определяющая разность между фактически использованным количеством битов и выделенным количеством битов, может быть возвращена в модуль 100 классификации, чтобы модуль 100 классификации мог увеличить количество битов, выделяемое для других разделенных сигналов. Если фактически используемое количество битов больше, чем выделенное количество битов, то модуль 100 классификации может сократить количество битов, выделяемое для других разделенных сигналов.Information determining the difference between the actually used number of bits and the allocated number of bits can be returned to the
Блок кодирования, который фактически кодирует разделенный сигнал, необязательно должен быть блоком кодирования, идентичным тому, который сопоставлен разделенному сигналу модулем 100 классификации. В этом случае информация может быть возвращена в модуль 100 классификации с указанием того, что блок кодирования, который фактически кодирует разделенный сигнал, отличается от блока кодирования, сопоставленного разделенному сигналу модулем 100 классификации. Далее, модуль 100 классификации может сопоставить разделенному сигналу блок кодирования, отличный от блока кодирования, ранее сопоставленного разделенному сигналу.An encoding unit that actually encodes the divided signal does not need to be an encoding unit identical to that associated with the divided signal by the
Модуль 100 классификации может повторно разделять входной сигнал на множество разделенных сигналов согласно закодированной информации результата, возвращенной в него. В этом случае модуль 100 классификации может получать множество разделенных сигналов, имеющих структуру, отличную от структуры ранее полученных разделенных сигналов.The
Если операция кодирования, выбранная модулем 100 классификации, отличается от фактически выполненной операции кодирования, то информация, относящаяся к разности между ними, может быть возвращена в модуль 100 классификации, чтобы модуль 100 классификации мог повторно определить информацию, связанную с операцией кодирования.If the encoding operation selected by the
Фиг.2 является блок-схемой варианта осуществления модуля 100 классификации, изображенного на фиг.1. Согласно фиг.2 первый блок классификации может быть блоком предварительной обработки, который выполняет операцию предварительной обработки входного сигнала, чтобы можно было эффективно закодировать входной сигнал.FIG. 2 is a block diagram of an embodiment of a
Согласно фиг.2 блок 110 классификации может включать в себя множество препроцессоров 111 и 112, с первого по n-ый, которые выполняют различные способы предварительной обработки. Первый блок 110 классификации может использовать один из препроцессоров 111 и 112, с первого по n-ый, для выполнения предварительной обработки входного сигнала согласно характеристикам этого входного сигнала, факторам внешней окружающей среды и целевой скорости передачи битов. Кроме того, первый блок 110 классификации может выполнять две и более операции предварительной обработки входного сигнала с использованием препроцессоров 111 и 112, с первого по n-ый.2,
Фиг.3 является блок-схемой варианта осуществления препроцессоров 111 и 112, с первого по n-ый, изображенных на фиг.2. Согласно фиг.3 препроцессор включает в себя экстрактор 113 коэффициента и экстрактор 114 остатка.FIG. 3 is a block diagram of an embodiment of
Экстрактор 113 коэффициента анализирует входной сигнал и извлекает из входного сигнала коэффициент, представляющий характеристики входного сигнала. Экстрактор 114 остатка извлекает из входного сигнала остаток с избыточными компонентами, удаляемыми из него с использованием извлеченного коэффициента.The
Препроцессор может выполнять операцию кодирования на основе линейного предсказания входного сигнала. В этом случае экстрактор 113 коэффициента извлекает коэффициент линейного предсказания из входного сигнала посредством выполнения анализа на основе линейного предсказания входного сигнала, и экстрактор 114 остатка извлекает остаток из входного сигнала с использованием коэффициента линейного предсказания, обеспеченного экстрактором 113 коэффициента. Остаток с избыточностью, удаляемой из него, может иметь формат, идентичный (формату) белому шуму.The preprocessor may perform a coding operation based on linear prediction of the input signal. In this case, the
Далее в этом документе будет подробно описан способ анализа на основе линейного предсказания согласно варианту осуществления настоящего изобретения.Hereinafter, a linear prediction analysis method according to an embodiment of the present invention will be described in detail.
Предсказанный сигнал, полученный посредством анализа на основе линейного предсказания, может состоять из линейной комбинации предыдущих входных сигналов, как показано в уравнении (1):The predicted signal obtained by linear prediction analysis may consist of a linear combination of previous input signals, as shown in equation (1):
МатФиг.1MatFig. 1
где p обозначает порядок линейного предсказания, с 1 по p обозначают коэффициенты линейного предсказания, которые получены посредством минимизации среднеквадратической ошибки (MSE) между входным сигналом и оцененным сигналом.where p denotes the linear prediction order, 1 to p denote the linear prediction coefficients that are obtained by minimizing the mean square error (MSE) between the input signal and the estimated signal.
Передаточная функция P(z) для анализа на основе линейного предсказания может быть представлена уравнением (2):The transfer function P (z) for analysis based on linear prediction can be represented by equation (2):
МатФиг.2MatFig. 2
Согласно фиг.3 препроцессор может извлекать коэффициент линейного предсказания и остаток из входного сигнала с использованием способа кодирования на основе деформированного линейного предсказания (WLPC), который является другим видом анализа на основе линейного предсказания. Способ WLPC можно осуществить посредством подстановки фазового фильтра, имеющего передаточную функцию A(z), вместо задержки блока Z-1. Передаточная функция A(z) может быть представлена уравнением (3):3, the preprocessor can extract a linear prediction coefficient and a remainder from an input signal using a warped linear prediction (WLPC) coding method, which is another type of linear prediction analysis. The WLPC method can be implemented by substituting a phase filter having a transfer function A (z), instead of delaying the block Z -1 . The transfer function A (z) can be represented by equation (3):
МатФиг.3MatFig. 3
где обозначает фазовый коэффициент. Посредством изменения фазового коэффициента можно изменять разрешение анализируемого сигнала. Например, если анализируемый сигнал является сигналом с высокой концентрацией на определенном частотном диапазоне, например если анализируемый сигнал является звуковым сигналом, который является сигналом с высокой концентрацией на низкочастотном диапазоне, то анализируемый сигнал можно эффективно закодировать с установкой такого фазового коэффициента, чтобы можно было увеличить разрешение сигналов низкочастотного диапазона.where denotes the phase coefficient. By changing the phase coefficient, you can change the resolution of the analyzed signal. For example, if the analyzed signal is a signal with a high concentration in a certain frequency range, for example, if the analyzed signal is an audio signal that is a signal with a high concentration in the low frequency range, then the analyzed signal can be effectively encoded by setting such a phase coefficient so that the resolution can be increased low-frequency signals.
В способе WLPC низкочастотные сигналы анализируются с большим разрешением, чем высокочастотные сигналы. Соответственно, способ WLPC может достигать высоких характеристик предсказания для низкочастотных сигналов и может лучше моделировать низкочастотные сигналы.In the WLPC method, low-frequency signals are analyzed with higher resolution than high-frequency signals. Accordingly, the WLPC method can achieve high prediction characteristics for low frequency signals and can better simulate low frequency signals.
Фазовый коэффициент может изменяться по оси времени согласно характеристикам входного сигнала, факторам внешней окружающей среды и целевой скорости передачи битов. Если фазовый коэффициент изменяется во времени, то звуковой сигнал, полученный декодированием, может быть значительно искажен. Соответственно, когда фазовый коэффициент изменяется, к фазовому коэффициенту можно применять способ сглаживания, чтобы фазовый коэффициент мог изменяться постепенно и чтобы можно было минимизировать искажение сигнала. Диапазон значений, который может быть определен как текущее значение фазового коэффициента, может быть определен посредством предыдущих значений фазового коэффициента.The phase coefficient can vary along the time axis according to the characteristics of the input signal, environmental factors and the target bit rate. If the phase coefficient changes over time, then the audio signal obtained by decoding can be significantly distorted. Accordingly, when the phase coefficient changes, a smoothing method can be applied to the phase coefficient so that the phase coefficient can change gradually and that signal distortion can be minimized. A range of values that can be defined as the current value of the phase coefficient can be determined by previous phase coefficient values.
На входе для оценки коэффициента линейного предсказания вместо исходного сигнала можно использовать порог маскировки. Более конкретно, порог маскировки можно преобразовывать в сигнал временной области, и можно выполнять WLPC с использованием сигнала временной области на входе. Также можно выполнять предсказание коэффициента линейного предсказания с использованием остатка на входе. Другими словами, анализ на основе линейного предсказания можно выполнять несколько раз, тем самым получая остаток, все более приближающийся к белому шуму.At the input, a masking threshold can be used instead of the original signal to estimate the linear prediction coefficient. More specifically, the masking threshold can be converted to a time-domain signal, and WLPC can be performed using a time-domain signal at the input. It is also possible to perform linear prediction coefficient prediction using an input remainder. In other words, linear prediction analysis can be performed several times, thereby obtaining a remainder that is increasingly approaching white noise.
Согласно фиг.2 первый блок 110 классификации может включать в себя первый препроцессор 111, который выполняет анализ на основе линейного предсказания, описанный выше согласно уравнениям (1) и (2), и второй препроцессор (не изображен), который выполняет WLPC. Первый блок 100 классификации может выбирать один из первого процессора 111 и второго препроцессора или может принимать решение о невыполнении анализа на основе линейного предсказания входного сигнала согласно характеристикам этого входного сигнала, факторам внешней окружающей среды и целевой скорости передачи битов.2, the
Если значение фазового коэффициента 0, то второй препроцессор может быть идентичен первому препроцессору 111. В этом случае первый блок 110 классификации может включать в себя только второй препроцессор и выбирать один из способа анализа на основе линейного предсказания и способа WLPC согласно значению фазового коэффициента. Кроме того, первый блок 110 классификации может выполнять анализ на основе линейного предсказания или тот из способа анализа на основе линейного предсказания и способа WLPC, который выбран в блоках кадров.If the phase coefficient value is 0, then the second preprocessor may be identical to the
Информацию, указывающую, выполнять ли анализ на основе линейного предсказания, и информацию, указывающую, какой из способа анализа на основе линейного предсказания и способов WLPC выбран, можно включать в передаваемый битовый поток.Information indicating whether to perform linear prediction analysis and information indicating which of the linear prediction analysis method and WLPC methods are selected can be included in the transmitted bitstream.
Модуль 300 упаковки битов принимает из первого блока 110 классификации коэффициент линейного предсказания, информацию, указывающую, выполнять ли кодирование на основе линейного предсказания, и информацию, идентифицирующую кодер линейного предсказания, который фактически использован. Далее, модуль 300 упаковки битов вставляет всю принятую информацию в передаваемый битовый поток.The
Количество битов, необходимое для кодирования входного сигнала в сигнал, имеющий качество звука, почти неотличимое от качества исходного входного сигнала, может быть определено посредством вычисления перцепционной энтропии входного сигнала.The number of bits required to encode an input signal into a signal having a sound quality almost indistinguishable from the quality of the original input signal can be determined by calculating the perceptual entropy of the input signal.
Фиг.4 является блок-схемой устройства для вычисления перцепционной энтропии согласно варианту осуществления настоящего изобретения. Согласно фиг. 4, это устройство включает в себя набор 115 фильтров, блок 116 линейного предсказания, блок 117 психоакустического моделирования, первый блок 118 вычисления битов и второй блок 119 вычисления битов.4 is a block diagram of an apparatus for calculating perceptual entropy according to an embodiment of the present invention. According to FIG. 4, this device includes a
Перцепционная энтропия PE входного сигнала может быть вычислена с использованием уравнения (4):The perceptual entropy PE of the input signal can be calculated using equation (4):
МатФиг.4MatFig. 4
где X(ejw) обозначает уровень мощности исходного входного сигнала и T(ejw) обозначает порог маскировки.where X (e jw ) denotes the power level of the original input signal and T (e jw ) denotes a masking threshold.
В способе WLPC, который подразумевает использование фазового фильтра, перцепционная энтропия входного сигнала может быть вычислена с использованием отношения мощности остатка входного сигнала и порога маскировки остатка. Более конкретно, устройство кодирования, которое использует способ WLPC, может вычислять перцепционную энтропию PE входного сигнала с использованием уравнения (5):In the WLPC method, which involves the use of a phase filter, the perceptual entropy of the input signal can be calculated using the ratio of the remainder power of the input signal and the remainder masking threshold. More specifically, an encoding device that uses the WLPC method can calculate the perceptual entropy PE of the input signal using equation (5):
МатФиг.5MatFig. 5
где R(ejw) обозначает мощность остатка входного сигнала, T(ejw) обозначает порог маскировки остатка.where R (e jw ) denotes the remainder power of the input signal, T (e jw ) denotes the residual masking threshold.
Порог маскировки T(ejw) может быть представлен уравнением (6):The masking threshold T (e jw ) can be represented by equation (6):
МатФиг.6MatFig. 6
где T(ejw) обозначает порог маскировки исходного сигнала и H(ejw) обозначает передаточную функцию для WLPC. Блок 320 психоакустического моделирования может вычислять порог маскировки T(ejw) с использованием порога маскировки T(ejw) в области диапазона масштабного множителя и с использованием передаточной функции H(ejw).where T (e jw ) denotes the masking threshold of the original signal and H (e jw ) denotes the transfer function for the WLPC. The psychoacoustic modeling unit 320 can calculate the masking threshold T (e jw ) using the masking threshold T (e jw ) in the range of the scale factor and using the transfer function H (e jw ).
Согласно фиг.4 первый блок 118 вычисления битов принимает остаток, полученный WLPC, которое выполнено блоком 116 линейного предсказания, и порог маскировки, выведенный блоком 117 психоакустического моделирования. Набор 116 фильтров может выполнять преобразование частоты исходного сигнала, и результат преобразования частоты может быть введен в блок 117 психоакустического моделирования и второй блок 119 вычисления битов. Набор 115 фильтров может выполнять преобразование Фурье исходного сигнала.4, the first
Первый блок 118 вычисления битов может вычислять перцепционную энтропию с использованием отношения порога маскировки исходного сигнала, разделенного на спектр передаточной функции фильтра синтеза WLPC, и мощности остатка.The first
Деформированная перцепционная энтропия WPE сигнала, который разделен на 60 и более диапазонов неравномерного разбиения с различной шириной диапазонов, может быть вычислена с использованием WLPC, как показано в уравнении (7):The deformed perceptual entropy of the WPE signal, which is divided into 60 or more unevenly divided ranges with different bandwidths, can be calculated using WLPC, as shown in equation (7):
МатФиг.7MatFig. 7
где b обозначает индекс диапазона разбиения, полученного с использованием психоакустической модели, eres(b) обозначает сумму мощностей остатков в диапазоне разбиения b, wlow(b) и whigh(b) соответственно обозначают самую нижнюю и самую верхнюю частоты в диапазоне разбиения b, nblinear(w) обозначает порог маскировки линейно отображенного диапазона разбиения, h(w)2 обозначает спектр мощности кодирования на основе линейного предсказания (LPC) кадра и nbres(w) обозначает порог линейной маскировки, соответствующий остатку.where b is the index of the partition range obtained using the psychoacoustic model, e res (b) is the sum of the powers of the residues in the partition range b, w low (b) and w high (b) respectively denote the lowest and highest frequencies in the partition range b , nb linear (w) denotes the mask threshold of the linearly displayed partitioning range, h (w) 2 denotes a linear prediction (LPC) frame coding spectrum, and nb res (w) denotes the linear mask threshold corresponding to the remainder.
С другой стороны, деформированная перцепционная энтропия WPEsub сигнала, который разделен на 60 и более диапазонов равномерного разбиения с идентичной шириной диапазона, может быть вычислена с использованием WLPC, как показано в уравнении (8):On the other hand, the deformed perceptual entropy of the WPE sub signal, which is divided into 60 or more uniformly divided ranges with the same bandwidth, can be calculated using WLPC, as shown in equation (8):
МатФиг.8MatFig. 8
где s обозначает индекс линейно разделенного поддиапазона, slow(w) и shigh(w) соответственно обозначают самую нижнюю и самую верхнюю частоты в линейно разделенном поддиапазоне s, nbsub(s) обозначает порог маскировки линейно разделенного поддиапазона s и esub(s) обозначает мощность линейно разделенного поддиапазона s, то есть сумму частот в линейно разделенном поддиапазоне s. Порог маскировки nbsub(s) является минимумом множества порогов маскировки в линейно разделенном поддиапазоне s.where s denotes the index of the linearly divided subband, s low (w) and s high (w) respectively denote the lowest and highest frequencies in the linearly divided subband s, nb sub (s) denotes the masking threshold of the linearly divided subband s and e sub (s ) denotes the power of the linearly divided subband s, that is, the sum of the frequencies in the linearly divided subband s. The masking threshold nb sub (s) is the minimum of the set of masking thresholds in the linearly divided subband s.
Перцепционная энтропия не может быть вычислена для диапазонов с идентичной шириной диапазона и с порогами выше, чем сумма входных спектров. Соответственно, деформированная перцепционная энтропия WPEsub уравнения (8) может быть ниже, чем деформированная перцепционная энтропия WPE уравнения (7), которая обеспечивает высокое разрешение для низкочастотных диапазонов.Perceptual entropy cannot be calculated for ranges with identical range widths and with thresholds higher than the sum of the input spectra. Accordingly, the deformed perceptual entropy of the WPE sub of equation (8) may be lower than the deformed perceptual entropy of the WPE sub of equation (7), which provides high resolution for low-frequency ranges.
Деформированная перцепционная энтропия WPEsf может быть вычислена для диапазонов масштабного множителя с различной шириной диапазонов с использованием WLPC, как показано в уравнении (9):The WPE sf deformed perceptual entropy can be calculated for scale factor bands with different bandwidths using WLPC, as shown in equation (9):
МатФиг.9MatFig. 9
где f обозначает индекс диапазона масштабного множителя, nbsf(f) обозначает минимальный порог маскировки диапазона f масштабного множителя, WPEsf обозначает отношение входного сигнала диапазона f масштабного множителя и порога маскировки диапазона f масштабного множителя и esf(s) обозначает сумму всех частот в диапазоне f масштабного множителя, то есть мощность диапазона f масштабного множителя.where f is the index of the scale factor range, nb sf (f) is the minimum mask threshold of the scale factor range f, WPE sf is the ratio of the input signal of the scale factor range f and the mask threshold of the scale factor range f, and e sf (s) is the sum of all frequencies in range f of the scale factor, that is, the power of range f of the scale factor.
Фиг.5 является блок-схемой другого варианта осуществления модуля 100 классификации, изображенного на фиг.1. Согласно фиг.5, модуль классификации включает в себя блок 121 разделения сигнала и блок 122 определения.FIG. 5 is a block diagram of another embodiment of a
Более конкретно, блок 121 разделения сигнала разделяет входной сигнал на множество разделенных сигналов. Например, блок 121 разделения сигнала может разделять входной сигнал на множество частотных диапазонов с использованием фильтра поддиапазона. У частотных диапазонов может быть идентичная ширина диапазона или различная ширина диапазонов. Как описано выше, разделенный сигнал может быть закодирован отдельно от других разделенных сигналов блоком кодирования, который лучше всего подходит по характеристикам разделенного сигнала.More specifically, the
Блок 121 разделения сигнала может разделять входной сигнал на множество разделенных сигналов, например множество сигналов диапазона, чтобы можно было минимизировать взаимные помехи между сигналами диапазона. Блок 121 разделения сигнала может иметь двойственную структуру набора фильтров. В этом случае блок 121 разделения сигнала может также разделять каждый из разделенных сигналов.The
Информация разделения, относящаяся к разделенным сигналам, полученная блоком 121 разделения сигнала, например общее количество разделенных сигналов, и информация диапазона каждого из разделенных сигналов может быть включена в передаваемый битовый поток. Устройство декодирования может декодировать разделенные сигналы отдельно и синтезировать декодированные сигналы согласно информации разделения, тем самым восстанавливая исходный входной сигнал.Separation information related to split signals obtained by the signal split
Информация разделения может быть сохранена в виде таблицы. Битовый поток может включать в себя информацию идентификации таблицы, использованной для разделения исходного входного сигнала.The partitioning information may be stored in a table. The bitstream may include identification information of a table used to split the original input signal.
Можно определять важность каждого из разделенных сигналов (например, множества сигналов частотного диапазона) для качества звука, и для каждого из разделенных сигналов можно устанавливать согласно результатам определения скорость передачи битов. Более конкретно, важность разделенного сигнала может быть определена как постоянное значение или как переменное значение, которое изменяется согласно характеристикам входного сигнала для каждого кадра.The importance of each of the separated signals (for example, a plurality of frequency range signals) for sound quality can be determined, and for each of the divided signals, the bit rate can be set according to the results of the determination. More specifically, the importance of a split signal can be defined as a constant value or as a variable value that varies according to the characteristics of the input signal for each frame.
Если речевые и звуковые сигналы смешаны во входном сигнале, то блок 121 разделения сигнала может разделять входной сигнал на речевой сигнал и звуковой сигнал согласно характеристикам речевых сигналов и характеристикам звуковых сигналов.If the speech and audio signals are mixed in the input signal, the
Блок 122 определения может определять, какой из блоков 210 и 220 кодирования, с первого по m-ый, в модуле 200 кодирования может наиболее эффективно закодировать каждый из разделенных сигналов.The determining
Блок 122 определения причисляет разделенные сигналы к нескольким группам. Например, блок 122 определения может причислять разделенные сигналы к N классам и определять, какой из блоков 210 и 220 кодирования, с первого по m-ый, должен быть использован для кодирования каждого из разделенных сигналов, с сопоставлением каждому из N классов одного из блоков 210 и 220 кодирования, с первого по m-ый.The
Более конкретно, с учетом того, что модуль 200 кодирования включает в себя блоки 210 и 220 кодирования, с первого по m-ый, блок 122 определения может причислять разделенные сигналы к классам, с первого по m-ый, которые могут быть наиболее эффективно закодированы блоками 210 и 220 кодирования, с первого по m-ый, соответственно.More specifically, given that the
Для этого можно заранее определять характеристики сигналов, которые могут быть наиболее эффективно закодированы каждым из блоков 210 и 220 кодирования, с первого по m-ый, и характеристики классов, с первого по m-ый, можно определять согласно результатам определения. После этого блок 122 определения может извлекать характеристики каждого из разделенных сигналов и причислять каждый из разделенных сигналов к одному из классов, с первого по m-ый, который совместно использует характеристики, идентичные соответствующему разделенному сигналу согласно результатам извлечения.For this, it is possible to pre-determine the characteristics of the signals that can be most effectively encoded by each of the first to mth coding units 210 and 220, and the characteristics of the classes from first to mth can be determined according to the determination results. After that, the determining
Примеры классов, с первого по m-ый, включают в себя класс вокализированной речи, класс невокализированной речи, класс фонового шума, класс паузы, класс тонального звука, класс нетонального звука и класс смеси вокализированных речи/звука.Examples of classes 1 through m include a voiced speech class, an unvoiced speech class, a background noise class, a pause class, a tonal sound class, a non-tonal sound class, and a vocalized speech / sound mixture class.
Блок 122 определения может определять, какой из блоков 210 и 220 кодирования, с первого по m-ый, должен быть использован для кодирования каждого из разделенных сигналов, согласно информации перцепционной характеристики, относящейся к разделенным сигналам, обеспеченным модулем 400 психоакустического моделирования, например пороги маскировки, отношения SMR или уровни перцепционной энтропии разделенных сигналов.The
Блок 122 определения может определять количество битов для кодирования каждого из разделенных сигналов или определять порядок, в котором должны быть закодированы разделенные сигналы, согласно информации перцепционной характеристики, относящейся к разделенным сигналам.The determining
Информация, полученная посредством определения, выполненного блоком 122 определения, например информация, указывающая, каким из блоков 210 и 220 кодирования, с первого по m-ый, и посредством какого количества битов должен быть закодирован каждый из разделенных сигналов, и информация, указывающая порядок, в котором должны быть закодированы разделенные сигналы, может быть включена в передаваемый битовый поток.Information obtained through determination made by
Фиг.6 является блок-схемой варианта осуществления блока 121 разделения сигнала, изображенного на фиг.5. Согласно фиг.6, блок разделения сигнала включает в себя и устройство разделения 123, и устройство объединения 124.6 is a block diagram of an embodiment of a
Устройство разделения 123 может разделять входной сигнал на множество разделенных сигналов. Устройство объединения 124 может объединять разделенные сигналы, имеющие сходные характеристики, в единый сигнал. Для этого устройство объединения 124 может включать в себя набор синтезирующих фильтров.
Например, устройство разделения 123 может разделять входной сигнал на 256 диапазонов. Из этих 256 диапазонов те, которые имеют сходные характеристики, могут быть объединены устройством объединения 124 в единый диапазон.For example, the
Согласно фиг.7 устройство объединения 124 может объединять множество разделенных сигналов, которые являются смежными, в единый объединенный сигнал. В этом случае устройство объединения 124 может объединять множество смежных разделенных сигналов в единый объединенный сигнал согласно предопределенному правилу без учета характеристик смежных разделенных сигналов.7, a
В качестве альтернативы согласно фиг.8 устройство объединения 124 может объединять множество разделенных сигналов, имеющих сходные характеристики, в единый объединенный сигнал, независимо от того, являются ли разделенные сигналы смежными. В этом случае устройство объединения 124 может объединять множество разделенных сигналов, которые могут быть эффективно закодированы идентичным блоком кодирования, в единый объединенный сигнал.Alternatively, as shown in FIG. 8, the
Фиг.9 является блок-схемой другого варианта осуществления блока 121 разделения сигнала, изображенного на фиг.5. Согласно фиг.9 блок разделения сигнала включает в себя первое устройство разделения 125, второе устройство разделения 126 и третье устройство разделения 127.FIG. 9 is a block diagram of another embodiment of a
Более конкретно, блок 121 разделения сигнала может иерархически разделять входной сигнал. Например, входной сигнал может быть разделен на два разделенных сигнала первым устройством разделения 125, один из этих двух разделенных сигналов может быть разделен на три разделенных сигнала вторым устройством разделения 126, и один из этих трех разделенных сигналов может быть разделен на три разделенных сигнала третьим устройством разделения 127. Следовательно, входной сигнал может быть разделен в общей сложности на шесть разделенных сигналов. Блок 121 разделения сигнала может иерархически разделять входной сигнал на множество диапазонов с различной шириной диапазона.More specifically, the
В варианте осуществления, изображенном на фиг.9, входной сигнал разделен согласно трехуровневой иерархии, но настоящее изобретение не ограничено этим. Другими словами, входной сигнал может быть разделен на множество разделенных сигналов согласно двухуровневой или четырехуровневой иерархии или иерархии с большим количеством уровней.In the embodiment shown in FIG. 9, the input signal is divided according to a three-level hierarchy, but the present invention is not limited to this. In other words, the input signal can be divided into many divided signals according to a two-level or four-level hierarchy or hierarchy with a large number of levels.
Одно из устройств разделения с 125 по 127, с первого по третье, в блоке 121 разделения сигнала может разделять входной сигнал на множество сигналов временной области.One of the separation devices 125 to 127, first to third, in the
На фиг.10 дано пояснение варианта осуществления разделения входного сигнала на множество разделенных сигналов блоком 121 разделения сигнала.10, an explanation is given of an embodiment for splitting an input signal into a plurality of split signals by a
Речевые или звуковые сигналы в общем стационарны в течение короткого периода длины кадра. Однако иногда речевые или звуковые сигналы могут иметь нестационарные характеристики, например в течение переходного периода.Speech or sound signals are generally stationary for a short period of frame length. However, sometimes speech or sound signals may have non-stationary characteristics, for example, during a transition period.
Для эффективного анализа нестационарных сигналов и увеличения эффективности кодирования таких нестационарных сигналов устройство кодирования согласно настоящему варианту осуществления может использовать способ разложения в эмпирическом виде (EMD) или вейвлет. Другими словами, устройство кодирования согласно настоящему варианту осуществления может проанализировать характеристики входного сигнала с использованием непостоянной функции преобразования. Например, блок 121 разделения сигнала может разделять входной сигнал на множество диапазонов с переменной шириной диапазона с использованием способа фильтрации переменного поддиапазона частотного диапазона.In order to efficiently analyze non-stationary signals and increase the coding efficiency of such non-stationary signals, the encoding device according to the present embodiment may use the empirical decomposition method (EMD) or wavelet. In other words, the encoding device according to the present embodiment can analyze the characteristics of the input signal using a variable conversion function. For example, the
Далее в этом документе будет подробно описан способ разделения входного сигнала на множество разделенных сигналов посредством EMD.Hereinafter, a method for dividing an input signal into a plurality of separated signals by EMD will be described in detail.
В способе EMD входной сигнал может быть разложен на одну или несколько функций свойственного вида (IMF). Функция IMF должна удовлетворять следующим условиям: количество экстремумов должно быть равно количеству переходов через нуль или отличаться от него самое большее на один; и среднее значение огибающей, определенной локальными максимумами, и огибающей, определенной локальными минимумами, равно нулю.In the EMD method, the input signal can be decomposed into one or more native view functions (IMF). The IMF function must satisfy the following conditions: the number of extrema should be equal to the number of transitions through zero or differ from it by at most one; and the average value of the envelope defined by local maxima and the envelope defined by local minima is zero.
IMF представляет простой осциллирующий вид, подобный компоненту в простой гармонической функции, тем самым обеспечивая возможность эффективного разложения входного сигнала с использованием способа EMD.The IMF presents a simple oscillating view, similar to a component in a simple harmonic function, thereby enabling the efficient decomposition of the input signal using the EMD method.
Более конкретно, для извлечения IMF из входного сигнала s(t), верхняя огибающая может быть сгенерирована посредством соединения всех локальных экстремумов, определенных локальными максимумами входного сигнала s(t), с использованием способа интерполяции на базе пространственных сплайнов, и нижняя огибающая может быть сгенерирована посредством соединения всех локальных экстремумов, определенных локальными минимумами входного сигнала s(t), с использованием способа интерполяции на базе пространственных сплайнов. Все значения, которые может иметь входной сигнал s(t), могут быть между верхней огибающей и нижней огибающей.More specifically, to extract IMF from the input signal s (t), the upper envelope can be generated by connecting all the local extrema defined by the local maxima of the input signal s (t) using the spatial splines interpolation method, and the lower envelope can be generated by connecting all the local extrema defined by the local minima of the input signal s (t), using the interpolation method based on spatial splines. All values that the input signal s (t) can have can be between the upper envelope and the lower envelope.
После этого может быть вычислено среднее значение m(t) верхней огибающей и нижней огибающей. После этого первый компонент h1(t) может быть вычислен посредством вычитания среднего значения m(t) из входного сигнала s(t), как показано в уравнении (10):After that, the average value m (t) of the upper envelope and the lower envelope can be calculated. After that, the first component h 1 (t) can be calculated by subtracting the average value of m (t) from the input signal s (t), as shown in equation (10):
МатФиг.10MatFig. 10
Если первый компонент h1(t) не удовлетворяет вышеупомянутым условиям IMF, то первый компонент h1(t) может быть определен как являющийся идентичным входному сигналу s(t), и можно повторно выполнять вышеупомянутую операцию, пока не будет получена первая IMF C1(t), удовлетворяющая вышеупомянутым условиям IMF.If the first component h 1 (t) does not satisfy the above IMF conditions, then the first component h 1 (t) can be determined to be identical to the input signal s (t), and the above operation can be repeated until the first IMF C 1 is received (t) satisfying the above IMF conditions.
После получения первой IMF C1(t) получают остаток r1(t) посредством вычитания первой IMF C1(t), как показано в уравнении (11):After receiving the first IMF C 1 (t) obtained residue r 1 (t) by subtracting the first IMF C 1 (t), as shown in equation (11):
МатФиг.11MatFig. 11
После этого можно повторно выполнять вышеупомянутую операцию извлечения IMF с использованием остатка r1(t) в качестве нового входного сигнала, тем самым получая вторые IMF C2(t) и остаток r2(t).Thereafter, the aforementioned IMF extraction operation can be repeated using the remainder r 1 (t) as a new input signal, thereby obtaining second IMF C 2 (t) and the remainder r 2 (t).
Если остаток rn(t), полученный во время вышеупомянутой операции извлечения IMF, имеет постоянное значение или является либо монотонно возрастающей функцией или функцией с единственным периодом только с одним экстремумом или вообще без экстремума, то можно закончить вышеупомянутую операцию извлечения IMF.If the remainder r n (t) obtained during the aforementioned IMF extraction operation has a constant value or is either a monotonically increasing function or a function with a single period with only one extremum or no extremum at all, then the aforementioned IMF extraction operation can be completed.
В результате вышеупомянутой операции извлечения IMF входной сигнал s(t) может быть представлен суммой множества функций IMF с C0(t) по CM(t) и конечного остатка rm(t), как показано в уравнении (12):As a result of the above IMF extraction operation, the input signal s (t) can be represented by the sum of the set of IMF functions from C 0 (t) to C M (t) and the final remainder r m (t), as shown in equation (12):
МатФиг.12MatFig. 12
где М обозначает общее количество извлеченных функций IMF. Конечный остаток rm(t) может отражать общие характеристики входного сигнала s(t).where M denotes the total number of extracted IMF functions. The final remainder r m (t) may reflect the general characteristics of the input signal s (t).
На фиг.10 изображено одиннадцать функций IMF и конечный остаток, полученные посредством разложения исходного входного сигнала с использованием способа EMD. Согласно фиг.10 частота IMF, полученная из исходного входного сигнала на раннем этапе извлечения IMF, выше, чем частота IMF, полученная из исходного входного сигнала на более позднем этапе извлечения IMF.10 depicts eleven IMF functions and the final remainder obtained by decomposing the original input signal using the EMD method. 10, the IMF obtained from the original input at an early stage of extracting IMF is higher than the frequency IMF obtained from the original input at a later stage of extracting IMF.
Извлечение IMF может быть упрощено с использованием среднеквадратичного отклонения SD между предыдущим остатком h1(k-1) и текущим остатком h1k, как показано в уравнении (13):Extraction of IMF can be simplified by using the standard deviation SD between the previous remainder h 1 (k-1) and the current remainder h 1k , as shown in equation (13):
МатФиг.13MatFig. 13
Если среднеквадратичное отклонение SD меньше, чем контрольное значение, например 0.3, то текущий остаток h1k, можно рассматривать как IMF.If the standard deviation SD is less than the reference value, for example 0.3, then the current remainder h 1k can be considered as IMF.
В то же время сигнал x(t) может быть преобразован в аналитический сигнал посредством преобразования Гилберта, как показано в уравнении (14):At the same time, the signal x (t) can be converted into an analytical signal by means of the Hilbert transform, as shown in equation (14):
МатФиг.14MatFig. 14
где (t) обозначает мгновенное значение, (t) обозначает мгновенную фазу и H{} обозначает преобразование Гилберта.where (t) is the instantaneous value, (t) is the instantaneous phase and H {} is the Hilbert transform.
В результате преобразования Гилберта входной сигнал может быть преобразован в аналитический сигнал, состоящий из вещественной части и мнимой части.As a result of the Hilbert transform, the input signal can be converted into an analytical signal consisting of the real part and the imaginary part.
С применением преобразования Гилберта к сигналу со средним 0 можно получить частотные составляющие, которые могут обеспечивать высокое разрешение и для временной и для частотной областей.Using the Hilbert transform to a signal with an average of 0, it is possible to obtain frequency components that can provide high resolution for both the time and frequency domains.
Далее в этом документе будет подробно описано, как блок 122 определения, изображенный на фиг.4, определяет, какой из множества блоков кодирования должен быть использован для кодирования каждого из множества разделенных сигналов, полученных посредством разложения входного сигнала.Hereinafter, it will be described in detail how the
Блок 122 определения может определять, какой из речевого кодера и кодера звука может более эффективно закодировать каждый из разделенных сигналов. Другими словами, блок 122 определения может принимать решение о кодировании разделенных сигналов, которые могут быть эффективно закодированы речевым кодером, с использованием того из блоков 210 и 220 кодирования, с первого по m-ый, который является речевым кодером, и принимать решение о кодировании разделенных сигналов, которые могут быть эффективно закодированы кодером звука, с использованием того из блоков 210 и 220 кодирования, с первого по m-ый, который является кодером звука.The determining
Далее в этом документе будет подробно описано, как блок 122 определения определяет, какой из речевого кодера и кодера звука может более эффективно закодировать разделенный сигнал.Hereinafter, it will be described in detail how the determining
Блок 122 определения может измерять вариацию в разделенном сигнале и определять, что разделенный сигнал может быть закодирован речевым кодером более эффективно, чем кодером звука, если результат измерения больше, чем предопределенное контрольное значение.The determining
В качестве альтернативы, блок 122 определения может измерять тональный компонент, включенный в определенную часть разделенного сигнала, и определять, что этот разделенный сигнал может быть закодирован кодером звука более эффективно, чем речевым кодером, если результат измерения больше, чем предопределенное контрольное значение.Alternatively, the determining
Фиг.11 является блок-схемой варианта осуществления блока 122 определения, изображенного на фиг.5. Согласно фиг.11 блок определения включает в себя блок 500 кодирования/декодирования речи, первый набор 510 фильтров, второй набор 520 фильтров, блок 530 определения и блок 540 психоакустического моделирования.11 is a block diagram of an embodiment of a
Блок определения, изображенный на фиг.11, может определять, какой из речевого кодера и кодера звука может более эффективно закодировать каждый разделенный сигнал.The determination unit shown in FIG. 11 can determine which of the speech encoder and audio encoder can more effectively encode each split signal.
Согласно фиг.11 входной сигнал кодируется блоком 500 кодирования/декодирования речи, и закодированный сигнал декодируется блоком 500 кодирования/декодирования речи, тем самым восстанавливается исходный входной сигнал. Блок 500 кодирования/декодирования речи может включать в себя адаптивный многоскоростной широкополосный (AMR-WB) речевой кодер/декодер, и AMR-WB речевой кодер/декодер может иметь структуру линейного предсказания с кодовым возбуждением (CELP).11, the input signal is encoded by the speech encoding /
Входной сигнал может быть субдискретизирован до ввода его в блок 500 кодирования/декодирования речи. У сигнала, выведенного блоком 500 кодирования/декодирования речи, может быть повышена дискретизация, тем самым восстанавливается входной сигнал.The input signal may be downsampled before being input to speech coding /
Входной сигнал может быть подвергнут преобразованию частоты посредством первого набора 510 фильтров.The input signal may be frequency converted by a first set of
Сигнал, выведенный блоком 500 кодирования/декодирования речи, преобразуется в сигнал частотной области вторым набором 520 фильтров. Первый набор 510 фильтров или второй набор 520 фильтров могут выполнять косинусное преобразование, например модифицированное дискретное преобразование (MDCT), введенного в них сигнала.The signal output by the speech encoding /
Частотная составляющая исходного входного сигнала, выведенного первым набором 510 фильтров, и частотная составляющая восстановленного входного сигнала, выведенного вторым набором 520 фильтров, обе вводятся в блок 530 определения. Блок 530 определения может определять, какой из речевого кодера и кодера звука может более эффективно закодировать входной сигнал на основе введенных в него частотных составляющих.The frequency component of the original input signal output by the first filter set 510 and the frequency component of the restored input signal output by the second filter set 520 are both input to the
Более конкретно, блок 530 определения может определять, какой из речевого кодера и кодера звука может более эффективно закодировать входной сигнал на основе введенных в него частотных составляющих, посредством вычисления перцепционной энтропии PE каждой из частотных составляющих с использованием уравнения (15):More specifically, the determining
МатФиг.15MatFig. 15
гдеWhere
где x(j) обозначает коэффициент частотной составляющей, j обозначает индекс частотной составляющей, обозначает размер шага квантования, nint() является функцией, которая возвращает целое число, ближайшее к его аргументу, jlow(i) и jhigh(i) являются соответственно индексом начальной частоты и индексом конечной частоты диапазона масштабного множителя.where x (j) denotes the coefficient of the frequency component, j denotes the index of the frequency component, denotes the size of the quantization step, nint () is a function that returns the integer closest to its argument, j low (i) and j high (i) are respectively the index of the initial frequency and the index of the final frequency of the range of the scale factor.
Блок 530 определения с использованием уравнения (15) может вычислять перцепционную энтропию частотной составляющей исходного входного сигнала и перцепционную энтропию частотной составляющей восстановленного входного сигнала и на основе результатов вычисления определять, какой из кодера звука и речевого кодера более эффективен для использования при кодировании входного сигнала.The
Например, если перцепционная энтропия частотной составляющей исходного входного сигнала меньше, чем перцепционная энтропия частотной составляющей восстановленного входного сигнала, то блок 530 определения может определить, что входной сигнал может быть закодирован кодером звука более эффективно, чем речевым кодером. С другой стороны, если перцепционная энтропия частотной составляющей восстановленного входного сигнала меньше, чем перцепционная энтропия частотной составляющей исходного входного сигнала, то блок 530 определения может определить, что входной сигнал может быть закодирован речевым кодером более эффективно, чем кодером звука.For example, if the perceptual entropy of the frequency component of the original input signal is less than the perceptual entropy of the frequency component of the reconstructed input signal, the determining
Фиг.12 является блок-схемой варианта осуществления одного из блоков 210 и 220 кодирования, с первого по m-ый, изображенных на фиг.1. Блок кодирования, изображенный на фиг.12, может быть речевым кодером.FIG. 12 is a block diagram of an embodiment of one of the first through mth coding units 210 and 220 shown in FIG. The coding unit shown in FIG. 12 may be a speech encoder.
В общем, речевые кодеры могут выполнять LPC входного сигнала в блоках кадров и извлекать коэффициент LPC, например коэффициент LPC 16-го порядка, из каждого кадра входного сигнала с использованием алгоритма Левинсона-Дурбина. Сигнал возбуждения можно квантовать через поиск в адаптивной кодовой книге или поиск в фиксированной кодовой книге. Сигнал возбуждения можно квантовать с использованием способа линейного предсказания с алгебраическим кодовым возбуждением. Векторное квантование может быть выполнено на коэффициенте усиления сигнала возбуждения с использованием таблицы квантования, имеющей сопряженную структуру.In general, speech encoders can perform an LPC of an input signal in blocks of frames and extract an LPC coefficient, such as a 16th order LPC coefficient, from each frame of the input signal using the Levinson-Durbin algorithm. The excitation signal can be quantized through a search in the adaptive codebook or a search in a fixed codebook. The excitation signal can be quantized using a linear prediction method with algebraic code excitation. Vector quantization can be performed on the gain of the excitation signal using a quantization table having a conjugate structure.
Речевой кодер, изображенный на фиг.12, включает в себя блок 600 анализа на основе линейного предсказания, блок 610 оценки основного тона, блок 620 поиска в кодовой книге, блок 630 линейной спектральной пары (LSP) и блок 640 квантования.The speech encoder of FIG. 12 includes a linear
Блок 600 анализа на основе линейного предсказания выполняет анализ на основе линейного предсказания входного сигнала с использованием коэффициента автокорреляции, который получен с использованием асимметричного окна. Если время прогнозной оценки, то есть асимметричное окно, 30 мс, то блок 600 анализа на основе линейного предсказания может выполнять анализ на основе линейного предсказания с использованием времени прогнозной оценки 5 мс.A linear
Коэффициент автокорреляции преобразуют в коэффициент линейного предсказания с использованием алгоритма Левинсона-Дурбина. Для квантования и линейной интерполяции, блок 630 LSP преобразует коэффициент линейного предсказания в LSP. Блок 640 квантования квантует LSP.The autocorrelation coefficient is converted to a linear prediction coefficient using the Levinson-Durbin algorithm. For quantization and linear interpolation, the
Блок 610 оценки основного тона оценивает основной тон (в схеме) с разомкнутой петлей для уменьшения сложности поиска в адаптивной кодовой книге. Более конкретно, блок 610 оценки основного тона оценивает период основного тона (в схеме) с разомкнутой петлей c использованием области взвешенного речевого сигнала каждого кадра. После этого формируют фильтр гармоник ограничения шума с использованием оцененного основного тона (в схеме) с разомкнутой петлей. После этого вычисляют импульсную характеристику с использованием фильтра гармоник ограничения шума, синтезирующего фильтра с линейным предсказанием и формантного перцепционного взвешивающего фильтра. Импульсную характеристику можно использовать для формирования целевого сигнала для квантования сигнала возбуждения.The
Блок 620 поиска в кодовой книге выполняет поиск в адаптивной кодовой книге и поиск в фиксированной кодовой книге. Поиск в адаптивной кодовой книге может быть выполнен в блоках подкадров посредством вычисления вектора адаптивной кодовой книги через поиск основного тона (в схеме) с замкнутой петлей и через интерполяцию предыдущих сигналов возбуждения. Параметры адаптивной кодовой книги могут включить в себя период основного тона и коэффициент усиления фильтра основного тона. Сигнал возбуждения может быть сформирован синтезирующим фильтром с линейным предсказанием для упрощения поиска замкнутой петли.The
Структура фиксированной кодовой книги устанавливается на основе модели перестановки чередующихся одиночных импульсов (ISSP). Вектор кодовой книги, содержащий 64 позиции, в которых соответственно расположены 64 импульса, разделен на четыре трека, причем каждый трек содержит 16 позиций. В каждом из четырех треков согласно скорости передачи может находится предопределенное количество импульсов. Так как индекс кодовой книги обозначает положение трека и знак импульса, то нет необходимости сохранять кодовую книгу, и сигнал возбуждения может быть сформирован просто с использованием индекса кодовой книги.The fixed codebook structure is established based on the intermittent single pulse permutation model (ISSP). A codebook vector containing 64 positions, in which 64 pulses are respectively located, is divided into four tracks, each track containing 16 positions. In each of the four tracks, according to the transmission speed, a predetermined number of pulses can be found. Since the codebook index indicates the position of the track and the sign of the pulse, there is no need to save the codebook, and the excitation signal can be generated simply using the codebook index.
Речевой кодер, изображенный на фиг.12, может выполнять вышеупомянутые способы кодирования во временной области. Кроме того, если входной сигнал закодирован с использованием способа кодирования на основе линейного предсказания модулем 100 классификации, изображенным на фиг.1, то блок 600 анализа на основе линейного предсказания может быть необязательным.The speech encoder depicted in FIG. 12 may perform the aforementioned time-domain coding methods. In addition, if the input signal is encoded using the linear prediction coding method by the
Настоящее изобретение не ограничено речевым кодером, изображенным на фиг.12. Другими словами, кроме речевого кодера, изображенного на фиг.12, в рамках настоящего изобретения могут использоваться различные речевые кодеры, которые могут эффективно кодировать речевые сигналы.The present invention is not limited to the speech encoder shown in FIG. In other words, in addition to the speech encoder shown in FIG. 12, various speech encoders that can efficiently encode speech signals can be used within the scope of the present invention.
Фиг.13 является блок-схемой другого варианта осуществления одного из блоков 210 и 220 кодирования, с первого по m-ый, изображенных на фиг.1. Блок кодирования, изображенный на фиг.13, может быть кодером звука.FIG. 13 is a block diagram of another embodiment of one of the first through mth coding units 210 and 220 shown in FIG. The coding unit shown in FIG. 13 may be a sound encoder.
Согласно фиг.13 кодер звука включает в себя набор 700 фильтров, блок 710 психоакустического моделирования и блок 720 квантования.13, the sound encoder includes a set of filters 700, a psychoacoustic modeling unit 710, and a quantization unit 720.
Набор 700 фильтров преобразует входной сигнал в сигнал частотной области. Набор 700 фильтров может выполнять косинусное преобразование, например модифицированное дискретное преобразование (MDCT) входного сигнала.A set of 700 filters converts the input signal into a frequency domain signal. A set of filters 700 may perform a cosine transform, for example a modified discrete transform (MDCT) of the input signal.
Блок 710 психоакустического моделирования вычисляет порог маскировки входного сигнала или SMR входного сигнала. Блок 720 квантования квантует коэффициенты MDCT, выводимые набором 700 фильтров, с использованием порога маскировки, вычисляемого блоком 710 психоакустического моделирования. В качестве альтернативы, для минимизации слышимого искажения в пределах заданного диапазона скорости передачи битов, блок 720 квантования может использовать SMR входного сигнала.A psychoacoustic simulation unit 710 calculates a masking threshold for the input signal or SMR of the input signal. The quantization unit 720 quantizes the MDCT coefficients output by the filter bank 700 using the masking threshold calculated by the psychoacoustic modeling unit 710. Alternatively, to minimize audible distortion within a given range of bit rate, quantization unit 720 may use an input signal SMR.
Кодер звука, изображенный на фиг.13, может выполнять вышеупомянутые способы кодирования в частотной области.The sound encoder depicted in FIG. 13 may perform the aforementioned coding methods in the frequency domain.
Настоящее изобретение не ограничено кодером звука, изображенным на фиг.13. Другими словами, кроме кодера звука, изображенного на фиг.13, в рамках настоящего изобретения могут использоваться различные кодеры звука (например, перспективные кодеры звука), которые могут эффективно кодировать звуковые сигналы.The present invention is not limited to the sound encoder shown in FIG. 13. In other words, in addition to the audio encoder shown in FIG. 13, various sound encoders (eg, perspective audio encoders) that can efficiently encode audio signals can be used within the scope of the present invention.
Перспективные кодеры звука выполняют временное ограничение шума (TNS), интенсивность/связь, предсказание и кодирование стереофонического звука с модуляцией несущей и поднесущей соответственно суммой и разностью сигналов левого и правого каналов (середина/бок, M/S). TNS является операцией соответствующего распределения шума квантования временной области в окне набора фильтров так, чтобы шум квантования стал неслышимым. Интенсивность/связь является операцией, которая может уменьшить количество передаваемой пространственной информации посредством кодирования звукового сигнала и передачи мощности звукового сигнала только на основе того, что восприятие направления звука в диапазоне высоких частот зависит главным образом от временного масштаба мощности.Promising audio encoders perform temporal noise limitation (TNS), intensity / communication, prediction and coding of stereo sound with modulation of the carrier and subcarrier, respectively, the sum and difference of the signals of the left and right channels (mid / side, M / S). TNS is the operation of the corresponding distribution of time-domain quantization noise in a filter set window so that the quantization noise becomes inaudible. Intensity / communication is an operation that can reduce the amount of spatial information transmitted by encoding an audio signal and transmitting the power of the audio signal only on the basis that the perception of the direction of sound in the high frequency range depends mainly on the time scale of the power.
Предсказание является операцией удаления избыточности из сигнала, статистические характеристики которого не изменяются при использовании корреляции между компонентами спектра кадров. Кодирование стереофонического звука M/S является операцией передачи нормализованной суммы (то есть середины) и разности (то есть бока) стереосигнала вместо сигналов левого и правого каналов.Prediction is the operation of removing redundancy from a signal whose statistical characteristics do not change when using correlation between the components of the frame spectrum. M / S stereo audio coding is the operation of transmitting the normalized sum (i.e. middle) and the difference (i.e. side) of the stereo signal instead of the left and right channel signals.
Сигнал, который подвергся операциям TNS, интенсивность/связь, предсказание и кодирование стереофонического звука M/S, квантуют квантователем, который выполняет анализ через синтез (AbS) с использованием SMR, полученного из психоакустической модели.A signal that has undergone TNS operations, intensity / communication, M / S stereo sound prediction and encoding is quantized by a quantizer that performs synthesis through analysis (AbS) using the SMR obtained from the psychoacoustic model.
Как описано выше, так как кодер звука кодирует входной сигнал с использованием способа моделирования, например способа кодирования на основе линейного предсказания, то блок 122 определения, изображенный на фиг.5, может определять, легко ли можно смоделировать входной сигнал согласно предопределенному списку правил. После этого если определено, что входной сигнал можно легко смоделировать, то блок 122 определения может принять решение о кодировании входного сигнала с использованием речевого кодера. С другой стороны, если определено, что входной сигнал нельзя легко смоделировать, то блок 122 определения может принять решение о кодировании входного сигнала с использованием кодера звука.As described above, since the audio encoder encodes the input signal using a modeling method, for example, a linear prediction encoding method, the
Фиг.14 является блок-схемой устройства кодирования согласно другому варианту осуществления настоящего изобретения. На фиг.1 - фиг.14 подобные ссылочные позиции представляют подобные элементы, и, соответственно, их подробные описания будут опущены.14 is a block diagram of an encoding device according to another embodiment of the present invention. 1 to 14, like reference numbers represent like elements, and accordingly, detailed descriptions thereof will be omitted.
Согласно фиг.14 модуль 100 классификации разделяет входной сигнал на множество разделенных сигналов, с первого по n-ый, и определяет, какой из множества блоков 230, 240, 250, 260 и 270 кодирования должен быть использован для кодирования каждого из разделенных сигналов, с первого по n-ый.According to FIG. 14, the
Согласно фиг.14 блоки 230, 240, 250, 260 и 270 кодирования могут последовательно кодировать разделенные сигналы, с первого по n-ый соответственно. Кроме того, если входной сигнал разделен на множество сигналов частотного диапазона, то сигналы частотного диапазона могут быть закодированы в порядке от сигнала диапазона наименьших частот до сигнала диапазона самых высоких частот.According to FIG. 14,
Если разделенные сигналы закодированы последовательно, то для кодирования текущего сигнала можно использовать ошибку кодирования предыдущего сигнала. В результате можно кодировать разделенные сигналы с использованием различных способов кодирования и, соответственно, предотвращать искажение сигнала и обеспечивать масштабируемость диапазона частот.If the separated signals are encoded sequentially, then to encode the current signal, you can use the encoding error of the previous signal. As a result, split signals can be encoded using various coding methods and, accordingly, signal distortion can be prevented and the frequency range scalable.
Согласно фиг.14 блок 230 кодирования кодирует первый разделенный сигнал, декодирует закодированный первый разделенный сигнал и выводит в блок 240 кодирования ошибку между декодированным сигналом и первым разделенным сигналом. Блок 240 кодирования кодирует второй разделенный сигнал с использованием ошибки, выведенной блоком 230 кодирования. Следовательно, разделенные сигналы, со второго по m-ый, кодируют с учетом ошибок кодирования соответствующих им предыдущих разделенных сигналов. Следовательно, можно выполнять безошибочное кодирование и увеличивать качество звука.14, an
Устройство кодирования, изображенное на фиг.14, может восстанавливать сигнал из входного битового потока посредством выполнения в обратном порядке операций, выполняемых устройством кодирования, изображенным на фиг.1 - фиг.14.The encoding device depicted in FIG. 14 may recover a signal from an input bitstream by performing the operations of the encoding device shown in FIG. 1 to FIG. 14 in the reverse order.
Фиг.15 является блок-схемой устройства декодирования согласно варианту осуществления настоящего изобретения. Согласно фиг.15 устройство декодирования включает в себя модуль 800 распаковки битов, модуль 810 определения декодера, модуль 820 декодирования и модуль 830 синтезирования.15 is a block diagram of a decoding apparatus according to an embodiment of the present invention. 15, a decoding apparatus includes a
Модуль 800 распаковки битов извлекает, из входного битового потока, один или несколько закодированных сигналов и дополнительную информацию, необходимую для декодирования закодированных сигналов.The
Модуль 820 декодирования включает в себя множество блоков 821 и 822 декодирования, с первого по m-ый, которые выполняют различные способы декодирования.
Модуль 810 определения декодера определяет, какой из блоков 821 и 822 декодирования, с первого по m-ый, может наиболее эффективно декодировать каждый из закодированных сигналов. Модуль 810 определения декодера может использовать способ, сходный со способом модуля 100 классификации, изображенного на фиг.1, для определения, какой из блоков 821 и 822 декодирования, с первого по m-ый, может наиболее эффективно декодировать каждый из закодированных сигналов. Другими словами, модуль 810 определения декодера может определять, какой из блоков 821 и 822 декодирования, с первого по m-ый, может декодировать наиболее эффективно каждый из закодированных сигналов, на основе характеристик каждого из закодированных сигналов. Предпочтительно, чтобы модуль 810 определения декодера мог определять, какой из блоков 821 и 822 декодирования, с первого по m-ый, может наиболее эффективно декодировать каждый из закодированных сигналов, на основе дополнительной информации, извлеченной из входного битового потока.The
Дополнительная информация может включать в себя информацию о классе, идентифицирующую класс, к которому закодированный сигнал причислен устройством кодирования, информацию о блоке кодирования, идентифицирующую блок кодирования, использованный для генерации закодированного сигнала, и информацию о блоке декодирования, идентифицирующую блок декодирования, который должен быть использован для декодирования закодированного сигнала.Additional information may include class information identifying the class to which the encoded signal is assigned by the encoding device, information on the encoding unit identifying the encoding unit used to generate the encoded signal, and information on the decoding unit identifying the decoding unit to be used to decode the encoded signal.
Например, модуль 810 определения декодера на основе дополнительной информации может определять, к какому классу принадлежит закодированный сигнал, и выбирать, для закодированного сигнала, тот из блоков 821 и 822 декодирования, с первого по m-ый, который соответствует классу закодированного сигнала. В этом случае у выбранного блока декодирования может быть такая структура, что он может наиболее эффективно декодировать сигналы, принадлежащие классу, который идентичен (классу) закодированному сигналу.For example, the
В качестве альтернативы, модуль 810 определения декодера может на основе дополнительной информации идентифицировать блок кодирования, использованный для генерации закодированного сигнала, и выбирать, для закодированного сигнала, тот из блоков 821 и 822 декодирования, с первого по m-ый, который соответствует идентифицированному блоку кодирования. Например, если закодированный сигнал был сгенерирован речевым кодером, то модуль 810 определения декодера может выбрать, для закодированного сигнала, тот из блоков 821 и 822 декодирования, с первого по m-ый, который является речевым декодером.Alternatively, the
В качестве альтернативы, модуль 810 определения декодера может на основе дополнительной информации идентифицировать блок декодирования, который может декодировать закодированный сигнал, и выбирать, для закодированного сигнала, тот из блоков 821 и 822 декодирования, с первого по m-ый, который соответствует идентифицированному блоку декодирования.Alternatively, the
В качестве альтернативы, модуль 810 определения декодера может получать характеристики закодированного сигнала из дополнительной информации и выбирать тот из блоков 821 и 822 декодирования, с первого по m-ый, который может наиболее эффективно декодировать сигналы, характеристики которых идентичны (характеристикам) закодированного сигнала.Alternatively, the
Следовательно, каждый из закодированных сигналов, извлеченных из входного битового потока, кодируют тем из блоков 821 и 822 декодирования, с первого по m-ый, в отношении которого определено, что он может наиболее эффективно декодировать соответствующий закодированный сигнал. Декодированные сигналы синтезируют модулем 830 синтезирования, тем самым восстанавливая исходный сигнал.Therefore, each of the encoded signals extracted from the input bitstream is encoded by that of the first through
Модуль 800 распаковки битов извлекает информацию о разделении, относящуюся к закодированным сигналам, например количество закодированных сигналов, и информацию о диапазоне каждого из закодированных сигналов, и модуль 830 синтезирования может синтезировать декодированные сигналы, обеспечиваемые модулем 820 декодирования, согласно информации о разделении.The
Модуль 830 синтезирования может включать в себя множество блоков 831 и 832 синтезирования, с первого по n-ый. Каждый из блоков 831 и 832 синтезирования, с первого по n-ый, может синтезировать декодированные сигналы, обеспечиваемые модулем 820 декодирования, или выполнять преобразование области или дополнительное декодирование некоторых или всех декодированных сигналов.
Один из блоков 831 и 832 синтезирования, с первого по n-ый, может выполнять операцию постобработки синтезируемого сигнала, которая является операцией, обратной операции предварительной обработки, выполняемой устройством кодирования. Информацию, указывающую, выполнять ли операцию постобработки, и информацию о декодировании, используемую для выполнения операции постобработки, можно извлекать из входного битового потока.One of the synthesis blocks 831 and 832, from the first to the nth, may perform a post-processing operation of the synthesized signal, which is an operation inverse to the pre-processing operation performed by the encoding device. Information indicating whether to perform the post-processing operation and decoding information used to perform the post-processing operation can be extracted from the input bitstream.
Согласно фиг.16 один из блоков 831 и 832 синтезирования, с первого по n-ый, в частности второй блок 833 синтезирования, может включать в себя множество постпроцессоров 834 и 835, с первого по n-ый. Первый блок 831 синтезирования синтезирует множество декодированных сигналов в единый сигнал, и один из постпроцессоров 834 и 835, с первого по n-ый, выполняет операцию постобработки единого сигнала, полученного синтезированием.According to FIG. 16, one of the first to nth synthesis blocks 831 and 832, in particular the
Информация, указывающая, какой из постпроцессоров 834 и 835, с первого по n-ый, должен выполнять операцию постобработки единого сигнала, полученного синтезированием, может быть включена во входной битовый поток.Information indicating which of the
Один из синтезаторов 831 и 832, с первого по n-ый, может выполнять декодирование на основе линейного предсказания единого сигнала, полученного синтезированием с использованием коэффициента линейного предсказания, извлеченного из входного битового потока, тем самым восстанавливая исходный сигнал.One of the
Настоящее изобретение можно осуществить в виде машиночитаемого кода, записанного на машиночитаемом носителе информации. Машиночитаемый носитель информации может быть любым типом записывающего устройства, на котором данные хранятся машиночитаемым способом. Примеры машиночитаемого носителя информации включают в себя ROM, RAM, CD-ROM, магнитную ленту, гибкий диск, оптический носитель информации и несущую (например, передачу данных через Интернет). Машиночитаемый носитель информации может быть распределен по множеству компьютерных систем, связанных с сетью, чтобы машиночитаемый код записывался на него и исполнялся с него децентрализованным способом. Специалист в данной области техники может легко рассмотреть функциональные программы, код и кодовые сегменты, необходимые для осуществления настоящего изобретения.The present invention can be implemented in the form of a machine-readable code recorded on a computer-readable storage medium. A computer-readable storage medium may be any type of recording device on which data is stored in a computer-readable manner. Examples of computer-readable storage media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical storage media, and a carrier (e.g., data transmission over the Internet). A computer-readable storage medium may be distributed across a plurality of computer systems connected to the network so that the computer-readable code is written to and executed from it in a decentralized manner. One of ordinary skill in the art can easily review the functional programs, code, and code segments needed to implement the present invention.
Несмотря на то что настоящее изобретение было, в частности, показано и описано в отношении его иллюстративных вариантов осуществления, специалистам в данной области техники будет понятно, что в нем можно сделать различные изменения по форме и в деталях, не выходя за пределы сущности и объема настоящего изобретения, как определено следующей формулой изобретения.Although the present invention has, in particular, been shown and described in relation to its illustrative embodiments, those skilled in the art will understand that various changes in form and detail can be made therein without departing from the spirit and scope of the present inventions as defined by the following claims.
Промышленная применимостьIndustrial applicability
Как описано выше, согласно настоящему изобретению можно кодировать сигналы, имеющие различные характеристики, с оптимальной скоростью передачи битов посредством причисления упомянутых сигналов к одному или нескольким классам согласно характеристикам этих сигналов и кодирования каждого из сигналов с использованием блока кодирования, который лучше всего подходит для класса, которому принадлежит соответствующий сигнал. Следовательно, можно эффективно кодировать различные сигналы, в том числе звуковые и речевые сигналы.As described above, according to the present invention, it is possible to encode signals having different characteristics with an optimal bit rate by adding said signals to one or more classes according to the characteristics of these signals and encoding each of the signals using the encoding unit that is best suited for the class, to which the corresponding signal belongs. Therefore, it is possible to efficiently encode various signals, including audio and speech signals.
Claims (16)
прием сигнала, включающего в себя, по меньшей мере, один из звукового сигнала и речевого сигнала, причем сигнал разделен на множество кадров,
извлечение информации о способе декодирования, относящейся к тому, как декодировать сигнал в каждом кадре,
определение способа декодирования в каждом кадре на основании информации о способе декодирования и
декодирование сигнала с использованием определенного способа декодирования в каждом кадре.1. A decoding method comprising:
receiving a signal including at least one of an audio signal and a speech signal, the signal being divided into multiple frames,
extracting decoding method information related to how to decode a signal in each frame,
determining a decoding method in each frame based on information about the decoding method and
decoding a signal using a specific decoding method in each frame.
в котором кадр сигнала определяют на основе информации о разделении во временной области.4. The decoding method according to claim 1, further comprising extracting signal separation information from the input bitstream,
in which the signal frame is determined based on the separation information in the time domain.
в котором декодирование содержит декодирование сигнала согласно информации о количестве битов.5. The decoding method according to claim 1, further comprising extracting information about the number of bits of the signal from the input bit stream,
in which the decoding comprises decoding the signal according to information about the number of bits.
в котором декодирование содержит декодирование сигнала согласно информации о порядке декодирования.6. The decoding method according to claim 1, further comprising extracting information about the decoding order of the signal from the input bit stream,
wherein the decoding comprises decoding a signal according to decoding order information.
модуль распаковки битов, который принимает сигнал, включающий в себя, по меньшей мере, один из звукового сигнала и речевого сигнала, причем сигнал разделен на множество кадров, и извлекает информацию о способе декодирования, относящуюся к тому, как декодировать сигнал в каждом кадре,
модуль определения декодера, который определяет способ декодирования в каждом кадре на основании информации о способе декодирования, и
модуль декодирования, который содержит множество блоков декодирования, причем каждый из блоков декодирования декодирует сигнал, используя определенный способ декодирования в каждом кадре.7. A decoding device comprising:
a bit decompression unit, which receives a signal including at least one of an audio signal and a speech signal, the signal being divided into a plurality of frames, and extracts decoding method information related to how to decode the signal in each frame,
a decoder determination module that determines a decoding method in each frame based on information on a decoding method, and
a decoding module that comprises a plurality of decoding blocks, each of the decoding blocks decoding a signal using a specific decoding method in each frame.
в котором кадр сигнала определяют на основе информации о разделении во временной области.9. The decoding apparatus of claim 7, wherein the bit decompression unit further extracts signal separation information from the input bit stream,
in which the signal frame is determined based on the separation information in the time domain.
прием входного сигнала, включающего в себя, по меньшей мере, один из звукового сигнала и речевого сигнала;
определение способа кодирования входного сигнала в соответствии с характеристиками входного сигнала в каждом кадре,
кодирование входного сигнала с использованием способа речевого кодирования или способа звукового кодирования на основе определенного способа кодирования, соответствующего входному сигналу в каждом кадре; и
формирование битового потока, включающего в себя закодированный входной сигнал,
причем способ речевого кодирования использует анализ на основе кодирования с линейным предсказанием (LPC), а способ звукового кодирования использует психоакустическое моделирование и набор фильтров.10. An encoding method comprising:
receiving an input signal including at least one of an audio signal and a speech signal;
determination of the encoding method of the input signal in accordance with the characteristics of the input signal in each frame,
encoding an input signal using a speech encoding method or an audio encoding method based on a specific encoding method corresponding to an input signal in each frame; and
generating a bitstream including an encoded input signal,
moreover, the method of speech coding uses analysis based on linear prediction coding (LPC), and the method of sound coding uses psychoacoustic modeling and a set of filters.
модуль распаковки битов, который принимает входной сигнал, включающий в себя, по меньшей мере, один из звукового сигнала и речевого сигнала;
модуль определения кодера, который определяет способ кодирования входного сигнала в соответствии с характеристиками входного сигнала в каждом кадре;
модуль кодирования, кодирующий входной сигнал на основании определенного способа кодирования, соответствующего входному сигналу в каждом кадре, содержащий:
модуль речевого кодирования, кодирующий входной сигнал с использованием анализа на основе кодирования с линейным предсказанием (LPC), и
модуль звукового кодирования, кодирующий входной сигнал с использованием психоакустического моделирования и набора фильтров, и
модуль упаковки битов, который формирует битовый поток с использованием закодированного входного сигнала.14. An encoding device comprising:
a bit decompression unit that receives an input signal including at least one of an audio signal and a speech signal;
an encoder determination module that determines an encoding method of the input signal in accordance with the characteristics of the input signal in each frame;
an encoding module encoding an input signal based on a specific encoding method corresponding to an input signal in each frame, comprising:
a speech coding unit encoding an input signal using linear prediction coding (LPC) analysis, and
an audio coding module encoding an input signal using psychoacoustic modeling and a set of filters, and
a bit packing module that generates a bitstream using an encoded input signal.
Applications Claiming Priority (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US75962206P | 2006-01-18 | 2006-01-18 | |
US60/759,622 | 2006-01-18 | ||
US79778206P | 2006-05-03 | 2006-05-03 | |
US60/797,782 | 2006-05-03 | ||
US60/817,926 | 2006-06-29 | ||
US84451006P | 2006-09-13 | 2006-09-13 | |
US60/844,510 | 2006-09-13 | ||
US60/848,217 | 2006-09-29 | ||
US86082206P | 2006-11-24 | 2006-11-24 | |
US60/860,822 | 2006-11-24 |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2008133599A RU2008133599A (en) | 2010-02-27 |
RU2414009C2 true RU2414009C2 (en) | 2011-03-10 |
Family
ID=42127445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2008133599/09A RU2414009C2 (en) | 2006-01-18 | 2007-01-18 | Signal encoding and decoding device and method |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2414009C2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2585987C2 (en) * | 2012-03-01 | 2016-06-10 | Хуавей Текнолоджиз Ко., Лтд. | Device and method of processing speech/audio signal |
RU2612589C2 (en) * | 2013-01-29 | 2017-03-09 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Frequency emphasizing for lpc-based encoding in frequency domain |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5707842B2 (en) * | 2010-10-15 | 2015-04-30 | ソニー株式会社 | Encoding apparatus and method, decoding apparatus and method, and program |
-
2007
- 2007-01-18 RU RU2008133599/09A patent/RU2414009C2/en active
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2585987C2 (en) * | 2012-03-01 | 2016-06-10 | Хуавей Текнолоджиз Ко., Лтд. | Device and method of processing speech/audio signal |
RU2616557C1 (en) * | 2012-03-01 | 2017-04-17 | Хуавей Текнолоджиз Ко., Лтд. | Device and method for processing speech /audio signal |
US9691396B2 (en) | 2012-03-01 | 2017-06-27 | Huawei Technologies Co., Ltd. | Speech/audio signal processing method and apparatus |
US10013987B2 (en) | 2012-03-01 | 2018-07-03 | Huawei Technologies Co., Ltd. | Speech/audio signal processing method and apparatus |
US10360917B2 (en) | 2012-03-01 | 2019-07-23 | Huawei Technologies Co., Ltd. | Speech/audio signal processing method and apparatus |
US10559313B2 (en) | 2012-03-01 | 2020-02-11 | Huawei Technologies Co., Ltd. | Speech/audio signal processing method and apparatus |
RU2612589C2 (en) * | 2013-01-29 | 2017-03-09 | Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. | Frequency emphasizing for lpc-based encoding in frequency domain |
US10176817B2 (en) | 2013-01-29 | 2019-01-08 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Low-frequency emphasis for LPC-based coding in frequency domain |
US10692513B2 (en) | 2013-01-29 | 2020-06-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Low-frequency emphasis for LPC-based coding in frequency domain |
US11568883B2 (en) | 2013-01-29 | 2023-01-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Low-frequency emphasis for LPC-based coding in frequency domain |
US11854561B2 (en) | 2013-01-29 | 2023-12-26 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Low-frequency emphasis for LPC-based coding in frequency domain |
Also Published As
Publication number | Publication date |
---|---|
RU2008133599A (en) | 2010-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2007206167B2 (en) | Apparatus and method for encoding and decoding signal | |
EP2224432B1 (en) | Encoder, decoder, and encoding method | |
KR100958144B1 (en) | Audio compression | |
KR101171098B1 (en) | Scalable speech coding/decoding methods and apparatus using mixed structure | |
US8392179B2 (en) | Multimode coding of speech-like and non-speech-like signals | |
CN101583994B (en) | Method and apparatus to encode and/or decode audio and/or speech signal | |
CN101371296B (en) | Apparatus and method for encoding and decoding signal | |
EP1982329B1 (en) | Adaptive time and/or frequency-based encoding mode determination apparatus and method of determining encoding mode of the apparatus | |
JP2001525079A (en) | Audio coding system and method | |
CN101889306A (en) | The method and apparatus that is used for processing signals | |
RU2414009C2 (en) | Signal encoding and decoding device and method | |
RU2409874C2 (en) | Audio signal compression | |
Motlicek et al. | Wide-band audio coding based on frequency-domain linear prediction | |
AU2020365140A1 (en) | Methods and system for waveform coding of audio signals with a generative model |