ПЕРЕКРЕСТНЫЕ ССЫЛКИ НА РОДСТВЕННЫЕ ЗАЯВКИ
[0001] Настоящая заявка испрашивает приоритет согласно предварительной заявки № 61,890,092 на патент США, озаглавленной “СИСТЕМЫ И СПОСОБЫ ПЕРЕДАЧИ ИЗБЫТОЧНОЙ ИНФОРМАЦИИ КАДРА”, поданной 11 октября 2013 г., и согласно непредварительной заявки № 14/509,817 на патент США, озаглавленной “СИСТЕМЫ И СПОСОБЫ ПЕРЕДАЧИ ИЗБЫТОЧНОЙ ИНФОРМАЦИИ КАДРА”, поданной 8 октября 2014 г., содержания которых включены в данный документ полностью путем ссылки.
ОБЛАСТЬ ТЕХНИКИ
[0002] Настоящее изобретение в целом относится к передаче избыточной информации кадра.
ОПИСАНИЕ СВЯЗАННОГО УРОВНЯ ТЕХНИКИ
[0003] Успехи ы технологии привели в результате к появлению меньших по размеру и более мощных вычислительных устройств. Например, сейчас существует разнообразие портативных персональных вычислительных устройств, включающих в себя беспроводные вычислительные устройства, такие как мобильные беспроводные телефоны, персональные цифровые органайзеры (PDA) и пейджеры, которые имеют малые размеры, малый вес и легко носимы пользователями. Более конкретно, мобильные беспроводные телефоны, такие как сотовые телефоны или телефоны, работающие по интернет-протоколу (IP-телефоны), могут обмениваться голосовыми пакетами и пакетами данных по беспроводным сетям. Дополнительно многие такие беспроводные телефоны включают в себя другие типы устройств, которые введены в их состав. Например, беспроводной телефон может также включать в себя цифровую фотокамеру, цифровую видеокамеру, цифровое записывающее устройство и плеер аудиофайлов.
[0004] Электронные устройства, такие как беспроводные телефоны, могут посылать и принимать данные через сеть. Например, аудиоданные могут посылаться и приниматься через сеть с коммутацией каналов (например, телефонную коммутируемую сеть общего пользования (PSTN), сеть глобальной системы мобильной связи (GSM), и т.п.) или сеть с пакетной коммутацией (например, сеть с передачей голоса по интернет-протоколу (VoIP), сеть с передачей голоса по стандарту “Долгосрочное развитие” (VoLTE), и т.п.). В сети с коммутацией каналов голосовые пакеты могут индивидуально направляться от устройства-источника к устройству-адресату. В зависимости от состояний сети голосовые пакеты могут прибывать не в заданном порядке. Устройство-адресат может запоминать принятые пакеты в буфере устранения “дрожания” и может перегруппировывать принятые пакеты по мере необходимости.
[0005] Различные схемы кодирования могут быть использованы при передаче аудиоданных. Например, в зависимости от типа аудиокадра может быть использован подход линейного предсказания с кодовым возбуждением (CELP) или основанное на частотном домене модифицированное дискретное косинус-преобразование (MDCT) для компактного представления речи и звука. Для того чтобы улучшить эффективность кодирования при низкой скорости передачи данных (например, 13,2 килобит в секунду (кбит/с), 24,4 кбит/с, и т.п.) при кодировании более широких полос частот, например, полосы частот (WB) шириной до 8 килогерц (кГц), сверхширокой полосы частот (SWB) 16 кГц или полного диапазона частот 20 кГц, основная часть нижней полосы частот (например, до 6,4 кГц или до 8 кГц) обычно кодируется, используя способы кодирования, согласующиеся с формой колебаний, такие как CELP или MDCT. Осуществляется расширение полосы частот (BWE), которое моделирует верхнюю полосу частот (например, >6,4 кГц или >8 кГц) и кодирует “вспомогательную информацию”, например, связанную с параметрами верхней полосы частот). Вспомогательная информация верхней полосы частот может включать в себя коэффициенты фильтрации линейного предсказания (LP) и параметры усиления, которые моделируют как точную, так и грубую временную эволюцию. Кодер или устройство-источник может посылать вспомогательную информацию вместе с низкочастотным участком аудиокадра в устройство-адресат, с тем чтобы устройство-адресат могло синтезировать высокочастотный участок аудиокадра в устройстве-адресате для высококачественного воспроизведения.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
[0006] Поскольку пакеты в сетях с пакетной коммутацией могут прибывать не в заданном порядке, существует возможность того, что даже хотя конкретный пакет (например, соответствующий аудиокадру N) испорчен или потерян, последующий пакет (например, соответствующий аудиокадру N+2) может быть свободным от ошибок и присутствовать в буфере устранения “дрожаний”. Таким образом, может быть полезно включать в состав последующего кадра (например, кадра N+2) информацию избыточного кодирования (например, информацию коррекции ошибок), которая может быть использована для восстановления предыдущего кадра (например, кадра N).
[0007] В настоящем изобретении описываются системы и способы передачи избыточной информации кадра. В соответствии с описанными способами, когда используется схема расширения полосы частот (BWE), аудиокадр может включать в себя четыре типа данных: кодированную основную часть нижней полосы частот, вспомогательную информацию верхней полосы частот, информацию избыточного кодирования, связанную с участком нижней полосы частот предыдущего кадра, и информацию избыточного кодирования, связанную с параметрами верхней полосы частот предыдущего кадра. Основная часть нижней полосы частот и вспомогательная информация верхней полосы частот для текущего кадра могут совместно рассматриваться как “первичное” кодирование. Информация избыточного кодирования для нижней полосы частот и верхней полосы частот применительно к предыдущему кадру может совместно рассматриваться как “частичная копия”. Таким образом, кадр может включать в себя биты первичного кодирования для его собственной нижней полосы частот и верхней полосы частот, и кадр может также включать в себя биты частичной копии для нижней полосы частот и верхней полосы частот предыдущего кадра.
[0008] Когда возникает состояние стирания кадра (например, предыдущий кадр не принимается или разрушается из-за ошибки сети), информация избыточного кодирования может быть использована приемником для восстановления предыдущего кадра. Дополнительно число битов, выделенных каждому из четырех типов данных, то есть основной части нижней полосы частот, вспомогательной информации верхней полосы частот, частичной копии основной части нижней полосы частот предыдущего кадра и частичной копии верхней полосы частот предыдущего кадра, может динамически регулироваться, основываясь на свойствах передаваемого аудиосигнала. Даже в случае успешного прима предыдущего кадра (например, в условиях чистого канала) декодер может отделить биты первичного кодирования от битов частичной копии для декодирования битов первичного кодирования.
[0009] В конкретном аспекте способ декодирования кадра включает в себя прием второго аудиокадра в декодере вычислительного устройства, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования (например, кодированные основная часть нижней полосы частот и параметры верхней полосы частот), связанной со вторым аудиокадром. Второй аудиокадр также включает в себя второе число битов, выделенных информации (например, частичной копии) избыточного кодирования, связанной с первым аудиокадром. Второй аудиокадр дополнительно включает в себя индикатор типа кадра (например, кадр типа частичной копии) для первого аудиокадра. Этот способ включает в себя, в ответ на состояние стирания кадра, связанное с первым аудиокадром, определение, основанное на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром. Этот способ дополнительно включает в себя декодирование первого аудиокадра на основе информации избыточного кодирования.
[0010] В другом конкретном аспекте способ декодирования кадра включает в себя прием первого аудиокадра и второго аудиокадра в декодере вычислительного устройства. Второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром, второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, и индикатор типа кадра для первого аудиокадра. Способ также включает в себя декодирование первого аудиокадра. Способ дополнительно включает в себя определение, основанное на индикаторе, первого числа битов второго аудиокадра, которые выделены информации первичного кодирования, связанной со вторым аудиокадром. Способ включает в себя декодирование второго аудиокадра на основе информации первичного кодирования. В конкретном варианте осуществления способ включает в себя определение числа битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром, вычитанием второго числа битов, выделенных частичной копии первого аудиокадра, из общего числа битов (например, используемых для представления второго аудиокадра).
[0011] В другом конкретном аспекте способ кодирования кадра включает в себя кодирование первого аудиокадра аудиосигнала в кодере первого вычислительного устройства и передачу первого аудиокадра от первого вычислительного устройства во второе вычислительное устройство. Способ также включает в себя определение, основанное на типе кадра первого аудиокадра, первого числа битов второго аудиокадра для выделения их информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра для выделения их информации избыточного кодирования, связанной с первым аудиокадром. Второй аудиокадр следует за первым аудиокадром в аудиосигнале. Способ также включает в себя кодирование второго аудиокадра и передачу второго аудиокадра от первого вычислительного устройства во второе вычислительное устройство. Второй аудиокадр включает в себя первое число битов информации первичного кодирования, второе число битов информации избыточного кодирования и индикатор типа кадра для первого аудиокадра.
[0012] В другом конкретном аспекте устройство включает в себя приемник, выполненный с возможностью приема второго аудиокадра. Второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром. Второй аудиокадр также включает в себя второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром. Второй аудиокадр дополнительно включает в себя индикатор типа кадра для первого аудиокадра. Устройство также включает в себя декодер, выполненный с возможностью, в ответ на состояние стирания кадра, связанное с первым аудиокадром, определения, основываясь на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром. Декодер выполнен с возможностью декодирования первого аудиокадра на основе информации избыточного кодирования.
[0013] В другом конкретном аспекте устройство включает в себя приемник, выполненный с возможностью приема первого аудиокадра и второго аудиокадра, который следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром. Второй аудиокадр также включает в себя второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром. Второй аудиокадр дополнительно включает в себя индикатор типа кадра для первого аудиокадра. Устройство также включает в себя декодер, выполненный с возможностью декодирования первого аудиокадра и определения, основываясь на индикаторе, первого числа битов второго аудиокадра, которые выделены информации первичного кодирования, связанной со вторым аудиокадром. Декодер выполнен с возможностью декодирования второго аудиокадра на основе информации первичного кодирования.
[0014] В другом конкретном аспекте устройство включает в себя кодер, выполненный с возможностью кодирования первого аудиокадра в аудиосигнале. Кодер также выполнен с возможностью определения, основываясь на типе кадра для первого аудиокадра, первого числа битов второго аудиокадра для выделения их информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра для выделения их информации избыточного кодирования, связанной с первым аудиокадром. Кодер дополнительно выполнен с возможностью кодирования второго аудиокадра. Второй аудиокадр включает в себя первое число битов информации первичного кодирования, второе число битов информации избыточного кодирования и индикатор типа кадра для первого аудиокадра. Устройство также включает в себя передатчик, выполненный с возможностью передачи первого аудиокадра и второго аудиокадра в устройство-адресат.
[0015] Конкретные преимущества, которые достигаются по меньшей мере одним из описанных вариантов осуществления, включают в себя возможность обеспечения информации избыточного кодирования для предшествующего кадра в аудиопотоке в последующем кадре аудиопотока. Информация избыточного кодирования, включенная в состав последующего кадра, может обеспечить восстановление предыдущего кадра, например, когда предыдущий кадр разрушается или теряется из-за ошибки сети. Другие аспекты, преимущества и признаки настоящего изобретения станут очевидными после рассмотрения настоящей заявки, включающей в себя следующие разделы: Краткое описание чертежей, Подробное описание и Формула изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0016] ФИГ. 1 – Блок-схема, представляющая конкретный вариант осуществления системы, которая выполнена с возможностью передачи избыточной информации кадра.
[0017] ФИГ. 2 - Блок-схема, представляющая конкретный вариант осуществления аудиокадра, который включает в себя информацию избыточного кодирования для другого аудиокадра.
[0018] ФИГ. 3 - Блок-схема, представляющая другой конкретный вариант осуществления аудиокадра, который включает в себя информацию избыточного кодирования для другого аудиокадра.
[0019] ФИГ. 4 – Таблица, в которой представлена кодовая книга кадров усиления в верхней полосе частот.
[0020] ФИГ. 5 - Блок-схема, представляющая конкретный вариант осуществления кодера с параллельными путями, выполненного с возможностью кодирования избыточной информации кадра.
[0021] ФИГ. 6 - Блок-схема, представляющая конкретный вариант осуществления декодера с одним путем, выполненного с возможностью декодирования избыточной информации кадра.
[0022] ФИГ. 7 и ФИГ. 8 – Собирательное представление блок-схемы последовательности операций, иллюстрирующей способ декодирования кадра на основе информации избыточного кодирования, включенной в состав последующего кадра.
[0023] ФИГ. 9 – Блок-схема последовательности операций, иллюстрирующая конкретный вариант осуществления кодирования информации избыточного кодирования для кадра в последующий кадр.
[0024] ФИГ. 10 – Блок схема беспроводного устройства, выполненного с возможностью выполнения операций в соответствии с системами и способами, представленными на фиг. 1-9.
ПОДРОБНОЕ ОПИСАНИЕ
[0025] Конкретные варианты осуществления настоящего изобретения описаны ниже со ссылкой на чертежи. В описании и на чертежах одинаковые признаки обозначены одинаковыми ссылочными позициями для обеспечения ясности представленных и описываемых вариантов осуществления.
[0026] На фиг. 1 представлен конкретный вариант осуществления системы, которая выполнена с возможностью передачи избыточной информации кадра и обозначена в целом позицией 100. Система 100 включает в себя первое вычислительное устройство 110 и второе вычислительное устройство 120. Первое вычислительное устройство 110 и второе вычислительное устройство 120 могут быть выполнены с возможностью обмена данными, такими как аудиокадры, через сеть с пакетной коммутацией. Например, сеть с пакетной коммутацией может включать в себя VoIP сеть, VoLTE сеть или другую сеть с пакетной коммутацией. В представленном варианте осуществления каждое из первого вычислительного устройства 110 и второго вычислительного устройства 120 включает в себя мобильный телефон, компьютерное устройство (например, портативный персональный компьютер, настольный компьютер, компьютер-сервер, и т.п.), мультимедийный проигрыватель, игровое устройство, телевизионную приставку, навигационное устройство, компонент сети с пакетной коммутацией, другое устройство, выполненное с возможностью обмена аудиоданными, или любое их сочетание.
[0027] Первое вычислительное устройство 110 может включать в себя процессор 112 (например, центральный процессор (CPU), цифровой сигнальный процессор (DSP), и т.п.) и память 114. В конкретном варианте осуществления память 114 хранит команды, исполняемые процессором 112 для выполнения различных операций, описанных здесь. Первое вычислительное устройство 110 может также включать в себя кодер 116 и передатчик 118. Кодер 116 может кодировать аудиокадры, которые передаются передатчиком 118 (например, через сеть с пакетной коммутацией). В альтернативных вариантах осуществления первое вычислительное устройство 110 может включать в себя приемник в дополнение к передатчику 118 или может включать в себя приемо-передатчик для передачи и приема данных. Кодер 116 может кодировать последовательность аудиокадров, включающую в себя приводимые в качестве примера аудиокадры 131, 132, 133 и 134. На фиг. 1 аудиокадры 131, 132, 133 и 134 являются четырьмя следующими друг за другом кадрами аудиосигнала и именуются как кадр N-1, кадр N, кадр N+1 и кадр N+2, соответственно. Для удобства считывания эти кадры обозначены здесь, соответственно, как КадрN-1, КадрN, КадрN+1 и КадрN+2. Необходимо отметить, что хотя аудио кадры 131-134 представлены на фиг. 1 в порядке следования слева направо, это не нужно понимать как обязательное условие того, что аудиокадры 131-134 принимаются в таком же порядке вторым вычислительным устройством 120. Как будет описано ниже, аудиокадры могут прибывать в устройство-адресат не в заданном порядке или могут быть потеряны из-за ошибки сети.
[0028] Каждый из аудиокадров 131-134 может включать в себя кодированный сигнал нижней полосы частот (“LB основная часть”) и параметры верхней полосы частот (“HB параметры”). LB основная часть и HB параметры кадра могут совместно рассматриваться в качестве первичного кодирования кадра. В конкретном варианте осуществления каждый из аудиокадров 131-134 имеет фиксированный размер, и ширина полосы частот (например, число битов кадра), выделенная основной части в нижней полосе частот и параметрам в верхней полосе частот, может динамически регулироваться от кадра к кадру, как будет описано ниже. Для улучшения характеристики декодирования аудиосигнала при наличии ошибок сети один или более из аудиокадров 131-134 может включать в себя информацию избыточного кодирования для предыдущего кадра. Информация избыточного кодирования может включать в себя информацию избыточного кодирования в нижней полосе частот и/или информацию избыточного кодирования для параметров в верхней полосе частот. Информация избыточного кодирования для нижней полосы частот и верхней полосы частот предыдущего кадра может совместно рассматриваться как “частичная копия” предыдущего кадра. В конкретном варианте осуществления ширина полосы частот (например, число битов кадра), выделенная информации избыточного кодирования в нижней полосе частот и информации избыточного кодирования в верхней полосе частот, может динамически регулироваться от кадра к кадру, как будет описано ниже.
[0029] Например, кодер 161 может кодировать информацию избыточного кодирования для кадра 132 в последующем кадреN+oFFSET, где OFFSET является целым числом, которое больше или равно 1. Когда кадры передаются через сеть с пакетной коммутацией, каждый кадр может быть направлен индивидуально в устройство-адресат, и кадры могут прибывать не в заданном порядке. Таким образом, даже если кадрN 132 (или участок его) может быть поврежден или может не прибыть во второе вычислительное устройство 120 (что совместно именуется состоянием “стирания кадра” по отношению к кадруN 132), кадрN+oFFSET может прибыть (или может быть ранее прибывшим) во второе вычислительное устройство неповрежденным. Информация избыточного кодирования в кадреN+oFFSET может быть использована вторым вычислительным устройством 120, чтобы восстановить кадрN (или его участок) или остановить распространение ошибки, вызывающей серьезный артефакт.
[0030] В примере на фиг. 1 OFFSET составляет от 1 до 2. При этом информация избыточного кодирования для кадраN-1 131 добавляется к кадруN+1 133, информация избыточного кодирования для кадраN 132 добавляется к кадруN+2 134, и т.д. В альтернативных вариантах осуществления параметр OFFSET может иметь значение, отличающееся от 2. Значение параметра OFFSET может быть определено промышленным стандартом (например, стандартом улучшенных услуг голосовой связи (EVS)), может определяться договоренностью между вычислительными устройствами 110 и 120, и/или может определяться, основываясь на измерении или оценке ошибок сети. В приводимом в качестве примера варианте осуществления первое вычислительное устройство 110 может быть выполнено с возможностью определения, требуется или не требуется посылать информацию избыточного кодирования. Например, первое вычислительное устройство 110 может определить, надо или не надо посылать избыточную информацию кадра для кадраN 132 в кадреN+2 134, основываясь на параметре “критичности”, связанной с кадромN 132, причем параметр критичности указывает относительную важность кадраN 132 в уменьшении или минимизации артефактов в аудиосигнале в случае потери кадраN 132 в процессе передачи. Таким образом, может осуществляться передача избыточной информации кадра в зависимости от контролируемых источником параметров, а также исходя из состояния сети или канала, на покадровой основе.
[0031] В конкретном варианте осуществления ширина пространства (например, число битов), занимаемого LB основной частью, HB параметрами, HB информацией избыточного кодирования и LB информацией избыточного кодирования, динамически регулируется кодером 116. Например, как показано на фиг. 1, отношение HB к LB информации избыточного кодирования изменяется в пределах разделения [25%, 75%] и разделения [5%, 95%]. В качестве другого примера, как показано на фиг. 1, отношение HB параметров к LB основной части меньше в кадреN-1 131, чем в кадреN+1 133, и отношение HB параметров к LB основной части меньше в кадреN+1 133, чем в кадреN 132 и кадреN+2 134.
[0032] В качестве примера, номинальная скорость передачи данных при кодировании для аудиокадра может составлять 13,2 кбит/с, когда информация избыточного кодирования не включена в состав аудиокадра. Для того чтобы разместить информацию избыточного кодирования, скорость передачи данных при кодировании для LB основной части и HB параметров аудиокадра может быть уменьшена до 9,6 кбит/с. Остальная ширина полосы в 3,6 кбит/с может быть использована для кодирования HB и LB информации избыточного кодирования для предыдущего кадра, причем разделение между HB и LB информацией избыточного кодирования может динамически изменяться от кадра к кадру в пределах между разделением [25%, 75%] и разделением [5%, 95%]. Следует заметить, что указанные скорости передачи данных и отношений разделения приведены только в качестве примера. В альтернативных вариантах осуществления описанные способы могут быть использованы с разными скоростями передачи данных и с разными отношениями разделения. В другом конкретном варианте осуществления отношение битов, распределенных между избыточным кадром и первичным кадром, может быть адаптивно регулируемым. Например, первичный кадр может использовать 11,6 кбит/с, тогда как избыточный кадр может использовать 1,6 кбит/с из полных 13,2 кбит/с. В другом примере первичный кадр может использовать 12,6 кбит/с, тогда как избыточный кадр может использовать 0,6 кбит/с из полных 13,2 кбит/с. Основываясь на параметре “критичности”, такое динамическое распределение битов может быть достигнуто и может ограничивать ухудшение качества первичного кадра при отсутствии ошибок сети в условиях чистого канала, когда некоторые биты используются для избыточного кодирования кадра.
[0033] Когда определяется, какое пространство должно быть выделено для HB информации избыточного кодирования и LB информации избыточного кодирования в конкретном кадре (например, кадреN+2 134), кодер 116 может принять в расчет свойства используемой сети с пакетной коммутацией, конкретного кадра и/или предыдущего кадра, для которого передается информация избыточного кодирования (например, кадраN 132). Примеры информации избыточного кодирования и динамического регулирования того, какое пространство выделяется такой информации избыточного кодирования, описываются ниже со ссылкой на фиг. 2-9.
[0034] Второе вычислительное устройство 120 может включать в себя процессор 122 и память 124. В конкретном варианте осуществления память 124 хранит команды, исполняемые процессором 122 для выполнения различных операций, описанных здесь. Второе вычислительное устройство 120 может также включать в себя декодер 126 и приемник 128. Декодер 126 может декодировать аудиокадры, которые принимаются приемником 128 (например, через сеть с пакетной коммутацией), такие как аудиокадры 131, 132, 133 и/или 134. В альтернативных вариантах осуществления второе вычислительное устройство 120 может включать в себя передатчик в дополнение к приемнику 128 или может включать в себя приемо-передатчик, выполненный с возможностью передачи и приема данных.
[0035] В конкретном варианте осуществления второе вычислительное устройство 120 включает в себя буфер, который показан на фиг. 1, как буфер 129 устранения “дрожания”. Приемник 128 может запоминать принятые пакеты (например, аудиокадры) в буфере 129 устранения “дрожания”. Поскольку пакеты, переданные по сетям с пакетной коммутацией, могу прибывать не в заданном порядке, буфер 129 устранения “дрожания” может быть использован для запоминания и регистрации принятых пакетов на основании, например, метки времени. При наличии ошибок сети декодер 126 может оказаться неспособным к декодированию всего, или же части одного или более пакетов, так как пакеты (или их участок (участки)) могут быть повреждены или потеряны (например, не приняты). Например, во время передачи аудиокадров 131-134 может быть потерян кадрN 132. Декодер 126 может восстановить потерянный кадрN 132 по информации избыточного кодирования в кадреN+2 134. Примеры информации избыточного кодирования и восстановления, потерянного аудиокадра описываются далее со ссылками на фиг. 2-9.
[0036] Во время работы первое вычислительное устройство 110 может кодировать и передавать аудиокадры 131-134 во второе вычислительное устройство 120 через сеть с пакетной коммутацией. Второе вычислительное устройство 120 может буферировать принятые аудиокадры в буфере 129 устранения “дрожания”. Декодер 126 может извлекать запомненные аудиокадры из буфера 129 устранения “дрожания” и декодировать аудиокадры. Когда декодер 126 определяет, что невозможно декодировать конкретный аудиокадр (или его участок) (например, вследствие того, что кадр или его участок поврежден или не принят), декодер 126 может проверить буфер 129 устранения “дрожания” на наличие кадра, который включает в себя информацию избыточного кодирования для поврежденного/потерянного кадра (например, наличие “последующего” кадра, который следует за поврежденным/потерянным кадром в аудиопотоке). Если такой последующий кадр присутствует, декодер 126 может использовать информацию избыточного кодирования из последующего кадра для восстановления и декодирования конкретного аудиокадра (или его участка). Система 100 на фиг. 1 может, таким образом, обеспечить передачу избыточной информации кадра, которая может быть использована для улучшения характеристики декодирования аудиосигнала при наличии неблагоприятных состояний сети.
[0037] Следует заметить, что в приведенном выше описании различные функции, выполняемые системой 100 на фиг. 1, описаны как выполняемые определенными компонентами или модулями. Однако такое разделение компонентов и модулей приведено только с целью иллюстрации. В альтернативном варианте осуществления функции, выполняемые конкретным компонентом или модулем, могут вместо этого быть разделены между множеством компонентов и модулей. Кроме того, в альтернативном варианте осуществления два или более компонентов или модулей, представленных на фиг. 1, могут быть интегрированы в один компонент или модуль. Каждый компонент или модуль, показанный на фиг. 1, может быть реализован, используя аппаратное обеспечение (например, программируемую пользователем вентильную матрицу (FPGA), специализированную заказную интегральную схему (ASIC), DSP, контроллер, и т.п.), программное обеспечение (например, команды, исполняемые процессором) или любое их сочетание.
[0038] На фиг. 1 и Фиг. 2 представлены приводимые в качестве примера варианты осуществления аудиокадроа 134. Аудиокадр может включать в себя кодированный LB участок, обозначенный как “LB основная часть”. Кодированный LB участок может включать в себя LB фильтр линейного предсказания и информацию возбуждения. Например, кодированный участок нижней полосы частот может включать в себя индекс (индексы) пары спектральных линий (LSP) и LB возбуждение 201. В альтернативных вариантах осуществления LB основная часть аудиокадра может включать в себя другую информацию. Аудиокадр 134 может также включать в себя HB параметры, обозначенные как “HB параметр”. HB параметры занимают меньшее пространство, чем кодированная LB основная часть, и включают в себя ряд параметров, которые могут быть использованы декодером, в соответствии с моделью кодирования аудиосигнала, с целью восстановления HB участка аудиокадра. В примере на фиг. 2 HB параметры могут включать в себя трансформированное LB возбуждение 202, HB форму 203 усиления, HB кадр 204 усиления и HB LSP индекс (индексы). В альтернативных вариантах осуществления аудиокадр может включать в себя другие HB параметры.
[0039] В конкретном варианте осуществления LB LSP индекс (индексы) и LB возбуждение 201, трансформированное LB возбуждение 202, HB форма 203 усиления, HB кадр 204 усиления и HB LSP индекс (индексы) 205 вырабатываются во время анализа аудиосигнала в кодере (например, в кодере 116 на фиг. 1 или в кодере 500, описанном со ссылкой на фиг. 5). Например, аудиосигнал может проходить через набор фильтров для частотного разложения сигнала, который разделяет аудиосигнал на LB сигнал и HB сигнал. LB и HB сигналы могут или не могут перекрываться. LB сигнал может вводиться в LP анализирующий модуль, который кодирует огибающую спектра LB сигнала как ряд LP коэффициентов (LPC). Трансформирующий модуль может трансформировать LPC в LSP, которые могут альтернативно рассматриваться как пары спектральных линий (LSP). Квантизатор может производить квантование LSP, определяя вход LB LSP кодовый книги, который является “ближайшим” к LSP. Квантизатор может выводить индекс входа в кодовую книгу как LB LSP индекс (индексы), показанные в позиции 201. LB анализирующий модуль может также генерировать LB возбуждение, показанное в позиции 201, и трансформированное LB возбуждение 202. Например, LB возбуждение может быть кодированным сигналом, который генерируется квантованием LP разностного сигнала, генерируемого во время LP процесса, выполняемого LP анализирующим модулем. LP разностный сигнал может представлять ошибку предсказания.
[0040] HB анализирующий модуль может принимать HB сигнал от набора фильтров для частотного разложения сигнала и сигнал возбуждения в нижней полосе частот от LB анализирующего модуля. HB анализирующий модуль может генерировать HB LSP индекс (индексы), используя процесс LPC кодирования, трансформации и квантования, подобный процессу, описанному применительно к генерации LB LSP индекса (индексов) и LB возбуждения 201. HB LSP индекс (индексы) 205 может (могут) занимать меньшее число битов, чем LB LSP индекс (индексы). HB анализирующий модуль может также генерировать HB форму 203 усиления и HB кадр 204 усиления. HB форма 203 усиления и HB кадр 204 усиления могут позволить декодеру (например, декодеру 126 на фиг. 1 или декодеру, описанному со ссылкой на фиг. 6) регулировать HB форму усиления и кадр усиления, чтобы более точно воспроизвести HB сигнал.
[0041] Когда осуществляется передача избыточной информации кадра, аудиокадр 134 дополнительно включает в себя LB информацию 214 избыточного кодирования и HB информацию 210 избыточного кодирования для другого аудиокадра. Аудиокадр 134 может также включать в себя индикатор 215 типа кадра. Описываемый далее со ссылками на фиг. 5-6 в приводимом в качестве примера варианте осуществления индикатор 215 типа кадра является 3-битовым индикатором, который указывает тип кадра для другого аудиокадра и указывает, сколько битов аудиокадра 134 выделено LB информации 214 избыточного кодирования и HB информации 210 избыточного кодирования. В конкретном варианте осуществления LB информация 214 избыточного кодирования или HB информация 210 избыточного кодирования может быть необязательной. HB информация 210 избыточного кодирования может включать в себя HB индикатор 211 формы усиления, HB индикатор 212 кадры усиления и HB LSB индикатор 213, как показано на фиг. 2. В альтернативных вариантах осуществления HB информация 210 кодирования может включать в себя другой индикатор или сочетание индикаторов. Например, HB LSP индикатор 213 может быть включен в состав HB информации 210 избыточного кодирования для сверхширокополосной связи, но может быть опущен применительно к широкополосной связи. В качестве другого примера HB индикатор 211 формы усиления и/или HB индикатор 212 кадра усиления может быть опущен для определенных типов кадра.
[0042] В конкретном варианте осуществления HB индикатор 211 формы усиления связан с HB формой усиления предыдущего аудиокадра (например, кадраN 132). Кодер может установить значение HB индикатора 211 формы усиления, основываясь на корреляции между HB участками кадраN 132 и кадраN+2 134. Например, межкадровая нормализованная HB корреляция между кадромN 132 и кадромN+2 134 может оцениваться на основе следующей формулы:
[0043] В этой формуле XN(k) – k-ое значение формы усиления для N-го кадра. В одном примере прокручивающееся окно одного или более субкадров может быть использовано для определения четырех значений формы усиления на кадр (например, k изменяется от 1 до 4). Если значение корреляции больше порогового значения (например, 0,75), тогда кодер устанавливает значение HB индикатора 211 формы усиления равным первому значению (например, GS_bit=1). Когда HB индикатор 211 формы усиления имеет первое значение, кодер может повторно использовать HB форму 203 усиления кадраN+2 134 в качестве оценочной HB формы усиления кадраN 132 во время декодирования дублирующего кадра/восстановления кадраN 132. Если значение корреляции меньше порогового значения, тогда кодер устанавливает значение HB индикатора 211 формы усиления равным второму значению (например, CS_bit=0). Когда HB индикатор 211 формы усиления имеет второе значение, декодер может использовать постоянную форму усиления в качестве оценочной формы усиления или может выполнить другой способ (способы) предсказания для оценки формы усиления кадраN 132.
[0044] В конкретном варианте осуществления кодер может определять значение HB индикатора 211 формы усиления, основываясь на расстоянии индекса в кодовой книге, вместо или в дополнение к HB корреляции формы усиления. Например, кодер может поддерживать или получать доступ к кодовой книге форм усиления, которая используется для квантования информации 203 по HB форме усиления. Кодер может определить первый индекс кодовой книги, связанный с HB формой усиления кадраN 132, и второй индекс кодовой книги, связанный с HB формой усиления кадраN+2 134. Кодер может установить значение HB индикатора 211 формы усиления (например, GS_bit=1 или GS_bit=0), основываясь на расстоянии (например, на расстоянии по меньшей мере среднеквадратичной ошибки) между индексами кодовой книги.
[0045] HB индикатор 212 кадра усиления может быть однобитовым индикатором или многобитовым индикатором. В конкретном примере осуществления размер HB индикатора 212 кадра усиления динамически регулируется кодером. Например, сеть с пакетной коммутацией может быть использована для передачи различных типов аудиокадров, включающих в себя вокализованные аудиокадры, общие аудиокадры, переходные аудиокадры и невокализованные аудиокадры. Может быть полезно использовать более широкий динамический диапазон для квантования кадра усиления невокализованных кадров, чем для вокализованных/ общих/переходных кадров. Грубое квантование кадров усиления может быть достаточным для эффективного представления отношения HB к LB усилению для вокализованных/общих/переходных кадров. Таким образом, если кадрN 132 является невокализованным кадром, кодер может выделить первое, большее число битов (например, от 3 до 6 битов) HB индикатору 212 кадра усиления. Если кадрN 132 не является невокализованным кадром, кодер может выделить второе, меньшее число битов (например, от 1 до 2 битов) HB индикатору 212 кадра усиления.
[0046] В примере на фиг. 2 HB индикатору 212 кадра усиления выделено большее число битов (например, 3-6 битов). В отличие от этого на фиг. 3 приведен пример, в котором HB индикатору 312 кадра усиления выделено меньшее число битов (например, 1-2 бита), чем HB индикатору 212 кадра усиления на фиг. 2. Поскольку HB индикатору 312 кадра усиления выделено меньшее число битов, могут иметься дополнительные биты для использования в представлении LB информации 314 избыточного кодирования, которая больше чем LB информации 214 избыточного кодирования на фиг. 2. Альтернативно дополнительные биты могут быть выделены LB основной части или HB параметрам кадраN+2 134. На фиг. 2-3 такая гибкость в распределении битов иллюстрируется, используя три разделительные линии 250, 260 и 270. Первая разделительная линия 250 отделяет информацию первичного кодирования от информации избыточного кодирования и может сдвигаться влево и вправо, когда кодер динамически регулирует отношение битов первичного кодирования к битам избыточного кодирования. Вторая разделительная линия 260 разделяет LB основную часть и HB параметры внутри информации первичного кодирования и может сдвигаться вверх и вниз, когда кодер динамически регулирует отношение битов LB основной части к битам HB параметров внутри информации первичного кодирования. Третья разделительная линия 270 отделяет LB информацию избыточного кодирования от HB информации избыточного кодирования и может сдвигаться вверх и вниз, когда кодер динамически регулирует отношение HB избыточных битов к отношению LB избыточных битов.
[0047] В конкретном варианте осуществления кодер может динамически регулировать число битов, выделяемых каждому из четырех участков кадра (например, динамически “передвигать” разделительные линии 250, 260 и 270), исходя из “критичности” и/или типа кадра применительно к кадруN 132 и/или кадруN+2 134. В целях иллюстрации распределение битов между четырьмя участками кадра может быть основано на уравновешивании критичности предыдущего кадра (для которого информация избыточного кодирования будет включена в состав кадра) и ухудшения качества звучания, происходящего из-за уменьшения числа битов в кадре, доступных для представления информации первичного кодирования для кадра. Невозможность декодирования определенного типа кадра может быть более заметной для слушателя, чем невозможность декодирования другого типа кадра. Таким образом, определенные кадры аудиосигнала могут рассматриваться как более “критичные”, чем другие кадры. Например, первый кадр аудиопотока может иметь более высокую “критичность”, чем второй кадр аудиопотока, при этом ошибочное декодирование первого кадра с большей вероятностью приведет к заметным артефактам декодирования, чем ошибочное декодирование второго кадра. Большее число битов может быть выделено информации избыточного кодирования для критичного кадра, чем выделяется информации избыточного кодирования для некритичного кадра. Альтернативно, или дополнительно, меньшее число битов критичного кадра может быть выделено информации избыточного кодирования, чем выделяется в некритичном кадре.
[0048] Например, речевые кадры могут быть подразделены на типы кадров “полностью предсказуемые”, “с возбуждаемым шумами линейным предсказанием (NELP)”, “общие” и “непредсказуемые”. Полностью предсказуемые кадры могут соответствовать вокализованной речи и могут составлять 50% или более активных кадров в аудиосигнале, соответствующем основанной на речи связи. NELP кадры могут соответствовать невокализованным данным и могут составлять 10%-20% кадров. Оставшиеся 30%-40% кадров могут быть общими кадрами или непредсказуемыми кадрами. Общие кадры могут быть кадрами смешанного режима, который включает в себя как информацию адаптивной кодовой книги (ACB), так и информацию фиксированной кодовой книги (FCB), такую как индексы кодовой книги. Непредсказуемые кадры могут соответствовать аудио переходам и могут включать в себя FCB информацию. Общие и непредсказуемые кадры могут быть более “самодостаточными”, чем полностью предсказуемые и NELP кадры. В соответствии с этим, если общий или непредсказуемый кадр поврежден или не принят, декодер может оказаться менее способен положиться на другие кадры, чтобы восстановить кадр. Следовательно, общие и непредсказуемые кадры могут рассматриваться как более критичные, тогда как полностью предсказуемые и NELP кадры могут считаться менее критичными для этого конкретного кадра (влияние полностью предсказуемых и NELP кадров может быть другим для последующего кадра).
[0049] В примере на фиг. 2 кадрN+2 134 включает в себя информацию избыточного кодирования для кадрN 132. Если кадрN 132 считается критичным, дополнительные биты могут быт выделены информации избыточного кодирования (например, первая разделительная линия 250 может быть сдвинута влево). Если кадрN+2 134 считается критичным, меньшее число битов может быть выделено информации избыточного кодирования (например, первая разделительная линия 250 может быть сдвинута вправо), с тем чтобы ухудшение качества кадраN+2 134 могло быть уменьшено. Таким образом, в вариантах осуществления, в которых кадрN+2 134 считается критичным, а кадрN 132 не считается критичным, меньшее или нулевое число битов выделяется для информации избыточного кодирования. И наоборот, в вариантах осуществления, в которых кадрN+2 134 не считается критичным, а кадрN 132 считается критичным, большее число битов может быть выделено для информации избыточного кодирования. В соответствии с этим число битов, выделяемых HB параметрам, LB основной части, LB информации избыточного кодирования и/или HB информации избыточного кодирования, может определяться, исходя из типа кадра для кадраN 132 и/или типа кадра для кадраN+2 134.
[0050] В конкретном варианте осуществления, когда HB индикатору 212 кадра усиления выделено первое число битов (например, 3-6 битов), первое число битов используется для представления индекса кодовой книги. Когда HB индикатору 212 кадра усиления выделено второе число битов (например, 1 бит), второе число битов используется для указания того, какая половина кодовой книги соответствует HB кадру усиления для кадраN 132.
[0051] В качестве примера, ссылаясь на фиг. 4, аудиокадры 131-134 могут иметь значения кадров усиления 1,6, 3,6, 1,6 и 1,0, соответственно, и HB кодовая книга кадров усиления может включать в себя 8 индексов. Если кадрN 132 является невокализованным кадром, HB индикатору 212 кадра усиления выделяется три бита, значения которых установлены на “100“, что является двоичным представлением индекса 4 кодовой книги, соответствующего значению 3,6 HB кадра усиления. В противном случае HB индикатору 212 кадра усиления придается один бит, который устанавливается на “1”, указывая на то, что HB кадр усиления со значением 3,6 находится в первом участке (например, в верхней половине, соответствующей индексам 4-7) кодовой книги. Значение должно быть установлено на “0”, если величина HB кадра усиления находилась во втором участке (например, в нижней половине, соответствующей индексам 0-3) кодовой книги. Декодер может использовать значение HB кадра усиления для предыдущего кадра (например, кадраN-1) вместе с информацией, что значение HB кадра усиления для кадраN находится в верхней половине кодовой книги, с целью оценки значения HB кадра усиления для кадраN.
[0052] Таким образом, в конкретном примере осуществления индикатор 212 HD кадра усиления может быть назначен и послан кодером в соответствии со следующим C-style псевдокодом:
/* If redundant frame type is NELP */
if( st->rf_frame_type == RF_NELP )
{
/* Frame gain; potentially encoded using 5 bits for NELP frames */
Step 1: Dequantize the redudnant frame HB gain index;
Step 2: convert the gain from log domian to real value (i.e., 10^gain) if needed;
}
Else /* If redundant frame type is ALL_PRED or GENERIC or NO_PRED */
{
smoothFactor=0.0f;
/* Frame gain */
switch (gainIndex) /* encoded using 2 bits */
{
case 0:
GainFrame=0.5f; /* if the gain index is 0 */
if(previous frame’s gain <= 1.25) { smoothFactor=0.8f; }
break;
case 1:
GainFrame=2.0f; /* if the gain index is 1 */
if(previous frame’s gain > 1.25 && <= 3) { smoothFactor=0.8f; }
break;
case 2:
GainFrame=4.0f; /* if the gain index is 2 */
if(previous frame’s gain > 3 && <= 6) { smoothFactor=0.8f; }
break;
case 3:
GainFrame=8.0f; /* if the gain index is 3 */
if(previous frame’s gain > 6 && <= 16) { smoothFactor=0.8f; }
break;
}
GainFrame=(1-smoothFactor)*GainFrame+smoothFactor*(previous frame’s gain);
}
[0053] HB LSP индикатор 213 может быть однобитовым индикатором, который информирует приемник, как извлечь HB LSP для кадраN 132. Для того чтобы определить значение HB LSP индикатора 213, кодер может оценить межкадровое HB LSP изменение, используя показатель спектрального искажения между кадромN 132 и кадромN+2 134. Альтернативно или дополнительно может быть использовано расстояние индексов в кодовой книге между HB LSP индексом (индексами) аудиокадров. Когда спектральная вариация между кадромN и кадромN+2 меньше чем конкретное пороговое значение (например, 2 децибела (дБ)), кодер может установить HB LSP индикатор 213 на первое значение (например, HBLSP_bit=0). Когда HB LSP индикатор 213 имеет первое значение, декодер может использовать HB LSP индекс (индексы) 205 кадраN+2 как оценочный индекс (индексы) кадраN. Когда спектральная вариация больше или равна конкретному пороговому значению (например, 2 дБ), кодер может установить HB LSP индикатор 213 на второе значение (например, HBLSP_bit=1). Когда HB LSP индикатор 213 имеет второе значение, декодер может извлекать HB LSP индекс (индексы) для кадраN интерполяцией или экстраполяцией. Например, если спектральная вариация находится в пределах порогового диапазона (например, 2 дБ <вариация <4 дБ), декодер может извлечь HB LSP индекс (индексы) для кадраN интерполяцией HB LSP из кадраN-1 в кадрN+2. Если спектральная вариация выходит за пределы порогового диапазона (например, >=4 дБ), декодер может извлечь HB LSP индекс (индексы) для кадраN экстраполяцией из предыдущих кадров (например, кадраN-1 и кадраN-2).
[0054] В альтернативном варианте осуществления для установки значения HB LSP индикатора 213 кодер может определить разность (например, показатель “дельта”) между HB LSP кадраN и кадраN+2. Кодер может установить значение HB LSP индикатора 213 на основе этой разности, и декодер может использовать значение HB LSP индикатора 213, чтобы извлечь HB LSP кадраN из HB LSP кадраN+2. В альтернативном варианте осуществления HB LSP индикатор 213 не включается в состав информации избыточного кодирования.
[0055] Таким образом, со ссылкой на фиг. 2-4, кодер может динамически регулировать величину пространства, занимаемого HB информацией 210 избыточного кодирования, и может устанавливать значения HB информации 210 избыточного кодирования, чтобы позволить декодеру восстанавливать потерянный кадр (или участок его).
[0056] На фиг. 5 представлен конкретный вариант осуществления кодера 500. В представленном варианте осуществления кодер 500 соответствует кодеру 116 на фиг. 1. Кодер 500 включает в себя два пути кодирования, которые работают параллельно: путь 510 первичного кодирования и путь 520 избыточного (иначе называемого “частичной копией”) кодирования. Пути 510, 520 кодирования объединяются в блоке формирования кадров (или в битовом мультиплексоре) 540. На фиг. 5 пути 510, 520 кодирования выполнены с возможностью сообщения через совместно используемую память 530. Совместно используемая память 530 может соответствовать кэш-памяти, регистровой памяти или другой памяти процессора (например, DSP). В альтернативных вариантах осуществления пути 510, 520 кодирования могут сообщаться с использованием другого механизма.
[0057] Во время работы данные кадра для каждого аудиокадра, подлежащие кодированию, могут быть доставлены как в путь 510 первичного кодирования, так и в путь 520 избыточного кодирования. Например, на фиг. 5 показано, что данные 501, 502,503 и 504 кадра для кадраN-2 551, кадраN 132, кадраN+2 134 и кадраN+4 554, соответственно, доставляются в оба пути 510, 520 кодирования. Данные кадра для промежуточных кадров (например, кадраN-1 131, кадраN+1 133 и кадраN+3) не показаны для облегчения представления. Путь 510 первичного кодирования может генерировать информацию первичного кодирования для аудиокадров, а путь 520 избыточного кодирования может генерировать избыточную информацию для аудиокадров. Битовый мультиплексор или блок 540 формирования кадров может соединять биты, которые приняты от путей 510, 520 кодирования для генерации кодированных аудиокадров. В примере на фиг. 5 блок 540 формирования кадров генерирует кадрN-2 551, кадрN 132, кадрN+2 134 и кадрN+4 554, каждый из которых доставляется в систему формирования пакетов и транспортирования для передачи устройству-адресату.
[0058] Операции кодирования, выполняемые путем 501 первичного кодирования, могут зависеть от операций кодирования, выполняемых путем 520 избыточного кодирования, и наоборот. В качестве иллюстрации, кодер 500 может кодировать аудиокадры со скоростью передачи данных 13,2 кбит/с, и каждый кадр может включать в себя 264 бита (в альтернативных вариантах осуществления могут быть использованы другая скорость передачи данных и другое число битов). Путь 510 первичного кодирования может определять, сколько битов путь 520 избыточного кодирования использовал для кодирования информации избыточного кодирования применительно к предыдущему кадру. Путь 520 избыточного кодирования может кодировать информацию избыточного кодирования для кадра, основываясь на параметрах, определенных путем 510 первичного кодирования во время первичного кодирования кадра. Таким образом, как показано, используя совместную память 530 на фиг. 5, путь 510 первичного кодирования может сообщать LB/HB параметры пути 520 избыточного кодирования, и путь 520 избыточного кодирования может сообщать число битов, используемых для выполнения избыточного кодирования кадра, пути 510 первичного кодирования.
[0059] Когда путь 510 первичного кодирования принимает данные 501 кадра для кадраN-2 551, путь 510 первичного кодирования может определить, сколько битов путь 520 избыточного кодирования использовал для выполнения избыточного кодирования кадраN-4 (не показан). В примере на фиг. 5 избыточное кодирование не выполнялось для кадрN-4. Таким образом, путь 510 первичного кодирования может выделять все 264 имеющихся бита информации первичного кодирования, генерируемой из данных 501 кадра, а кадрN-2 551 может включать в себя 264 кодированных бита, принятых от пути 510 первичного кодирования. В качестве иллюстрации, как описано со ссылками на фиг. 2-3, 264 бита могут включать в себя LSP индексы, ACB информацию, FCB информацию, информацию возбуждения, информацию трансформированного возбуждения, информацию формы усиления и/или информацию кадра усиления, помимо других альтернатив. Параллельно с операциями, выполняемыми путем 510 первичного кодирования для данных 501 кадра, путь 520 избыточного кодирования может определять, сколько битов использовать для выполнения избыточного кодирования кадраN-2 551. В примере на фиг. 5 избыточное кодирование кадраN-2 551 не выполняется (например, кадрN-2 551 определяется как “некритичный”). В представленном варианте осуществления путь 520 избыточного кодирования определяет, сколько битов использовать для избыточного кодирования кадра, основываясь на типе кадра для данного кадра. Например, 41 бит может быть использован для избыточного кодирования NELP кадра, 58 битов могут быть использованы для избыточного кодирования полностью предсказуемого кадра и 72 бита могут быть использованы для избыточного кодирования общего кадра (в альтернативных вариантах осуществления другое число битов может быть использовано для разных типов кадра). Конкретная LB/HB избыточная информация кадра, которая представляется, когда используется 41 бит, когда используются 58 битов, когда используются 72 бита, и т.д., может быть определена в промышленном стандарте (например, Проект партнерства третьего поколения (3GPP) EVS стандарте).
[0060] Когда путь 510 первичного кодирования принимает данные 501 кадра для кадраN 132, путь 510 первичного кодирования может определить, сколько битов путь 520 избыточного кодирования использовал для выполнения избыточного кодирования кадраN-2 551. Поскольку избыточное кодирование не выполнялось для кадраN-2 551, путь 510 первичного кодирования может использовать все 264 доступных бита для представления LB основной части и HB параметров, извлеченных из данных 502 кадра, и кадрN 132, выводимый блоком 540 формирования кадров, может включать в себя 264 кодированных бита, принятых от пути 510 первичного кодирования. Путь 520 избыточного кодирования может использовать 41 бит для выполнения избыточного кодирования для кадрN 132 (например, кадрN 132 может быть NELP кадром). В частности, 41 бит может быть использован для представления определенных “критичных” LB/HB параметров, которые определяются путем 510 первичного кодирования во время первичного кодирования для кадрN 132. В качестве иллюстрации, как описано со ссылками на фиг. 2-3, информация избыточного кодирования может включать в себя информацию формы усиления, информацию кадра усиления и/или LSP информацию, помимо других возможностей. 41-битовое избыточное кодирование для кадрN 132 может запоминаться (например, в совместной памяти 530) для последующего использования.
[0061] Когда путь 510 первичного кодирования принимает данные 503 для кадраN+2 134, путь 510 первичного кодирования может определить (например, основываясь на данных, запомненных в совместной памяти 530), что 41 бит был использован для избыточного кодирования кадрN 132. Таким образом, путь 510 первичного кодирования может использовать 264-41=223 бита для кодирования LB основной части и HB параметров для кадраN+2 134. Путь 520 избыточного кодирования может определить использование 72 битов для выполнения избыточного кодирования для кадраN+2 134 (например, кадрN+2 134 может быть общим кадром). 72-битовое избыточное кодирование для кадраN+2 134, которое может представлять выбранные параметры для кадраN+2 134, которые определены путем 510 первичного кодирования, может запоминаться для последующего использования. Блок 540 формирования кадров может соединять 223-битовое первичное кодирование, принятое от пути 510 первичного кодирования, с ранее запомненным 41-битовым избыточным кодированием для кадрN 132 для генерации кадраN+2 134, как показано.
[0062] Когда пут 510 первичного кодирования принимает данные 504 кадра для кадрN+4 554, путь 510 первичного кодирования может определить, что 72 бита были использованы для избыточного кодирования кадрN+2 134. Таким образом, путь 510 первичного кодирования может использовать 264-72=192 бита для кодирования информации LB основной части и HB параметров для кадрN+4 554. Параллельно путь 520 избыточного кодирования может выполнять избыточное кодирование для кадрN+4 554. Блок 540 формирования кадров может объединить 192-битовое первичное кодирование, принятое от пути 510 первичного кодирования, с ранее запомненным 72-битовым избыточным кодированием для кадрN+2 134 для генерации кадраN+4 554, как показано.
[0063] В конкретном варианте осуществления последние три бита кодированного кадра представляют индикатор типа кадра для данных избыточного кодирования, включенных в состав кадра. Например, поскольку кадрN-2 551 и кодированный кадрN 132 не включают в себя какую-либо информацию избыточного кодирования для другого кадра, последние три бита кадраN-2 551 и кадраN 132 могут иметь первое значение (например, 000). Поскольку кадрN+2 134 включает в себя 41 бит информации избыточного кодирования, а кадрN является NELP кадром, последние 3 бита кадраN+2 134 могут иметь второе значение (например, 001 или другое уникальное 3-битовое значение). Так как кадрN+4 554 включает в себя 72 бита информации избыточного кодирования, а кадрN+2 134 является общим кадром, последние три бита кадрN+4 554 могут иметь третье значение (например, 010 или другое 3-битовое значение). Дополнительные значения 3-битового индикатора типа кадра могут быть использованы для указания других типов кадра и сигнализации другой информации (например, частичных копий в частотной области). Таким образом, в описываемом примере последние три бита каждого кадра указывают тип кадра для предыдущего кадра и сколько битов информации избыточного кодирования для предыдущего кадра включено в состав кадра. В соответствии с этим 261 бит из 264 битов может быть разделен между путем 510 первичного кодирования и путем 520 избыточного кодирования, а оставшиеся 3 бита могут быть зарезервированы для индикатора типа дублирующего кадра.
[0064] Кодированные аудиокадры могут передаваться устройством-источником (например, первым вычислительным устройством 110 на фиг. 1) в устройство-адресат (например, второе вычислительное устройство 120 на фиг. 1), которое может декодировать принятые аудиокадры. Например, на фиг. 6 представлен конкретный вариант осуществления декодера 600, который выполнен с возможностью декодирования принятых аудиокадров. Декодер 600 может соответствовать декодеру 126 на фиг. 1. Декодер 600 включает в себя буфер устранения “дрожания” (например, соответствующий буферу 129 устранения “дрожания” на фиг. 1). Тогда как кодер 500 включает в себя параллельные пути 510, 520 кодирования, декодер 600 включает в себя один путь 620 декодирования.
[0065] После того как аудиокадры принимаются приемником, эти аудиокадры могут запоминаться в буфере 610 устранения “дрожания”. Как было описано со ссылкой на фиг.1, в зависимости от состояний сети кадры, посланные устройством-источником в устройство-адресат, могут прибывать не в заданном порядке, могут быть повреждены или могут не прибыть вообще. Путь 620 декодирования может извлекать кадры из буфера 610 устранения “дрожания” в соответствии с последовательностью кадров (например, основываясь на порядковых номерах или другой определяющий последовательность информации, включенной в состав аудиокадров). Например, путь 620 декодирования может попытаться извлечь и декодировать кадрN-2 551 перед кадромN 132, кадрN 132 перед кадраN+2 134 и кадрN+2 134 перед кадромN+4 554. Для облегчения иллюстрации декодирование промежуточных кадров (например, кадраN-1 131, кадраN+1 133 и кадраN+3) не показано на фиг.6.
[0066] Чтобы начать декодирование кадраN-2 551, путь 620 декодирования может проверить, имеется ли кадрN-2 551 в буфере 610 устранения “дрожания”. В примере на фиг. 6 кадрN-2 551 имеется в буфере 610 устранения “дрожания”. Путь 620 декодирования может определить, сколько битов кадраN-2 551 используются для информации избыточного кодирования другого кадра. Например, на основе последних трех битов кадраN-2 551, имеющих значение 000 (как описано со ссылкой на фиг. 5), путь 620 декодирования может определить, что нет битов кадраN-2 551, представляющих информацию избыточного кодирования. Таким образом, путь 620 декодирования может извлечь все 261 битов кадраN-2 551, как показано в позиции 651, и может генерировать декодированные данные 601. Декодированные данные 601 могут быть доставлены в выходное устройство (например, громкоговоритель) для воспроизведения. Должно быть понятно, что в зависимости от качества кодирования, выполненного в кодере 500, и качества декодирования, выполненного в декодере 600, данные 601 могут быть идентичными или приближенными к данным 501 на фиг. 5. Во время декодирования кадраN-2 551, основанного на 261 первичных битах, значения конкретных параметров декодирования могут запоминаться в памяти 622 первичного декодирования для использования во время декодирования последующего кадра.
[0067] В примере на фиг. 6 кадрN 132 отсутствует в буфере 610 устранения “дрожания”. Альтернативно путь 620 декодирования может определить, что кадрN 132 присутствует в буфере 610 устранения “дрожания”, но может возникнуть ошибка во время декодирования первичных битов кадраN 132. В любом случае путь 620 декодирования может проверить, имеется ли избыточная информация кадра для кадраN 132. Например, основываясь на известном смещении 2 кадров между информацией первичного кодирования и информацией избыточного кодирования (другие смещения, например, 3 или 5, или 7, могут быть использованы в других вариантах осуществления), путь 620 декодирования может проверить, присутствует ли кадрN+2 134 в буфере 610 устранения “дрожания”. Если кадрN+2 134 тоже отсутствует, путь 620 декодирования может начать процедуру скрытия ошибок, чтобы выработать декодированные данные 602 для кадраN 132. Однако в примере на фиг. 6 кадрN+2 134 имеется в буфере 610 устранения “дрожания”. Основываясь на последних трех битах кадраN+2 134, имеющих значение 001 (как описано со ссылкой на фиг. 5), путь 620 декодирования может определить, что 41 бит кадраN+2 134 представляет информацию избыточного кодирования для кадраN 132. Путь 620 декодирования может извлечь 41 бит избыточного кодирования для кадраN 132, как показано в позиции 652, и может произвести данные 602. Таким образом, путь 620 декодирования может определять, сколько имеется битов избыточного кодирования и извлекать биты избыточного кодирования, основываясь на их определенном числе (например, когда имеются X битов избыточного кодирования, путь 620 декодирования может извлечь эти X последних битов кадра или пакета, который запомнен в буфере 610 устранения “дрожания”, связанных с порядковым номером пакета, определяемым смещением (OFFSET)). На фиг. 6 декодированные данные, генерируемые из избыточной информации кадра (например, данные 602), показаны в виде заштрихованной рамки. Во время декодирования кадраN 132, основанного на 41 бите информации избыточного кодирования, значения определенных параметров могут запоминаться в памяти 624 избыточного декодирования для последующего использования. В альтернативном варианте осуществления память 624 избыточного декодирования и память 622 первичного декодирования могут перекрываться или могут быть одной и той же.
[0068] Таким образом, путь 620 декодирования может поддерживать раздельные памяти для декодирования, основанного на первичных битах, и декодирования, основанного на избыточных битах. В конкретном варианте осуществления данные из памяти 622 первичного декодирования могут быть использованы во время декодирования других первичных битов, но не во время декодирования избыточных битов. Подобным образом данные из памяти 624 избыточного декодирования могут быть использованы во время декодирования избыточных битов, но не во время декодирования первичных битов. В альтернативном варианте осуществления данные из памяти 622 первичного декодирования могут быть использованы во время декодирования избыточных битов, и/или данные из памяти 624 избыточного декодирования могут быть использованы во время декодирования первичных битов. Например, параметры из множества предыдущих декодированных кадров могут быть использованы во время интерполяции и/или предсказания параметра для “текущего” кадра.
[0069] Путь 620 декодирования может декодировать кадрN+2 134 и кадрN+4 554, которые имеются в буфере 610 устранения “дрожания”, как описано для кадрN-2 551. Основываясь на последних трех битах кадраN+2 134, имеющих значение 001 (как описано со ссылкой на фиг. 5), путь 620 декодирования может извлекать 264-41=223 первичных бита кадрN+2 134, как показано в позиции 653, чтобы генерировать декодированные данные 603. Основываясь на последних трех битах кадраN+4 554, имеющих значение 010 (как описано со ссылкой на фиг. 5), путь 620 декодирования может извлекать 264-72=192 первичных бита кадрN+4 134, как показано в позиции 653, чтобы генерировать декодированные данные 604.
[0070] Следует заметить, что декодер 600 может также использовать индикатор частичной копии кадра при выполнении операций декодирования в условиях “чистого” канала. Например, когда кадрN 132 принимается в буфере 610 устранения “дрожания”, состояние стирания кадра может не существовать для кадраN 132. Тем не менее, декодер 600 может оценивать индикатор типа кадра, чтобы определить, сколько битов кадраN+2 134 являются битами частичной копии для кадрN 132. Путь 620 декодирования может декодировать кадрN+2 134, основываясь на битах первичного кодирования. Биты частичной копии для кадраN 132 могут быть сброшены, поскольку кадрN 132 может быть успешно принят и декодирован до декодирования кадрN+2 134. Таким образом, избыточная информация кадра может обрабатываться декодером 600 в состоянии наличия шумов в канале (при котором кадр может быть сброшен и восстановлен), а также в состоянии чистого канала.
[0071] Следует заметить, что для облегчения пояснения пути 510, 520 кодирования на фиг. 5 и путь 620 декодирования на фиг. 6 представлены в виде компонентов блок-схемы. Однако должно быть понятно, что путь 510 первичного кодирования, путь 520 избыточного кодирования и/или путь 620 декодирования могут выключать в себя субкомпоненты, которые выполнены с возможностью осуществления операций кодирования и/или декодирования, описанных со ссылками на фиг. 1-4. Например, один или более из путей 510, 520 или 620 может включать в себя набор фильтров для частотного разложения сигнала, LP анализирующий модуль, трансформирующий модуль, квантизатор, HB анализирующий модуль, ACB, FCB, и т.п. В конкретных вариантах осуществления один или оба из путей 510-520 кодирования могут включать в себя декодирующие компоненты, которые также включены в состав пути 620 декодирования (например, как “локальный декодер” кодера 500).
[0072] Так, на фиг. 5-6 представлен пример кодера 500 и декодера 600, которые могут быть использованы для кодирования и декодирования избыточной информации кадра. Передача битов избыточного кодирования в последующем кадре может улучшить восстановление (например, синтез) аудиосигнала в устройстве-адресате в неблагоприятных условиях сети. Например, биты избыточного кодирования могут быть использованы для восстановления кадра, когда кадр не принят в устройстве-адресате. В качестве другого примера, когда возникает ошибка в процессе декодирования первичных битов для кадра, биты избыточного кодирования для кадра могут быть извлечены из другого кадра и могут быть использованы вместо или совместно с первичными битами.
[0073] На фиг. 7-8 представлена и обозначена в целом позицией 700 блок-схема последовательности операций в способе декодирования кадра, основанном на информации избыточного кодирования, включенной в состав последующего кадра. В представленном варианте осуществления способ 700 может быть выполнен в устройстве-адресате (например, во втором вычислительном устройстве 120 на фиг. 1) и/или декодере (например, декодере 600 на фиг. 6).
[0074] Способ 700 включает в себя прием второго аудиокадра в декодере (например, через сеть с пакетной коммутацией) на этапе 702. Второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром, второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, и индикатор типа кадра для первого аудиокадра. Например, на фиг. 8 декодер 600 может принимать кадрN+2 134, который следует за кадромN 132 в аудиосигнале.
[0075] Способ 700 также включает в себя запоминание второго аудиокадра в буфере устранения “дрожания” на этапе 704. Например, на фиг. 6 кадрN+2 134 может быть запомнен в буфере 610 устранения “дрожания”. Способ 700 включает в себя определение того, связано ли состояние стирания кадра с первым аудиокадром, на этапе 706. В ответ на определение того, что состояние стирания кадра связано с первым аудиокадром (например, первый аудиокадр был потерян или поврежден вследствие плохого состояния канала), способ 700 дополнительно включает в себя определение, основываясь на индикаторе, второго числа битов второго аудиокадра, которое выделено информации избыточного кодирования, связанной с первым аудиокадром, на этапе 708. Например, на фиг. 6 путь 620 декодирования может определить, что кадрN 132 отсутствует в буфере 610 устранения “дрожания“, и может определить, основываясь на индикаторе типа кадра в кадреN+2 134, что 41 бит кадраN+2 134 представляет информацию избыточного кодирования для кадрN 132.
[0076] Способ 700 включает в себя декодирование первого аудиокадра на основе информации избыточного кодирования на этапе 710. Например, на фиг. 6 путь 620 декодирования может декодировать отсутствующий кадреN 132, или его приближение, основываясь на 41 бите информации избыточного кодирования, включенной в состав кадраN+2 134.
[0077] Когда состояние стирания кадра не связано с первым аудиокадром, способ 700 включает в себя декодирование первого аудиокадра на основе информации первичного кодирования в первом аудиокадре на этапе 712. Например, в условиях чистого канала кадрN 132 может быть ранее принят и запомнен в буфере 610 устранения “дрожания”, и путь 620 декодирования может декодировать кадрN 132, основываясь на битах первичного кодирования кадраN 132.
[0078] Независимо от того, декодирован ли аудиокадр с использованием информации избыточного кодирования или информации первичного кодирования, способ 700 может включать в себя определение, основанное на индикаторе, первого числа битов второго аудиокадра, которые выделяются информации первичного кодирования, связанной со вторым аудиокадром, на этапе 714. Способ 700 может также включать в себя декодирование второго аудиокадра, основанное на информации первичного кодирования, на этапе 716.
[0079] Конкретный пример одной или более операций, которые могут выполняться во время декодирования первого аудиокадра (например, кадраN 132), основываясь на информации избыточного кодирования, включенной в состав второго аудиокадра (например, кадраN+2 134) описывается далее со ссылкой на фиг. 8. Таким образом, одна или более операций, представленных на фиг.8, могут выполняться как часть операции 710 на фиг. 7. В некоторых вариантах осуществления одна или более операций, показанных на фиг. 8, могут быть опущены. Заметим, что на фиг. 8 показано HB декодирование, основанное на избыточно информации кадра. Хотя это не показано на фиг. 8, LB декодирование, основанное на избыточной информации кадра, может также выполняться в декодере во время операции 710 на фиг. 7.
[0080] Декодер может определить значение индикатора формы усиления, включенного в состав информации избыточного кодирования, на этапе 810. Когда индикатор формы усиления имеет первое значение, декодер может использовать форму усиления в верхней полосе частот второго аудиокадра в качестве оценочной формы усиления первого аудиокадра на этапе 812. Например, как показано на фиг. 2-3, декодер может использовать HB форму 203 усиления. Когда индикатор формы усиления имеет второе значение, декодер может использовать постоянную форму усиления как оценочную форму усиления или некоторый другой способ (способы) предсказания для оценки формы усиления первого аудиокадра, на этапе 814.
[0081] Декодер может также определить на этапе 820, сколько битов выделено HB индикатору кадра усиления в информации избыточного кодирования. Когда выделено первое (большее) число битов, декодер может определить HB кадр усиления первого аудиокадра, используя HB индикатор кадра усиления как индекс кодовой книги, на этапе 822. Когда выделяется второе (меньшее) число битов, например, один бит, декодер может определить HB кадр усиления первого аудиокадра, осуществляя доступ к указанному участку (например, к верхней или нижней половине) кодовой книги, на этапе 824.
[0082] Декодер может дополнительно определить значение HB LSP индикатора на этапе 830. Когда HB LSP индикатор имеет первое значение, декодер может использовать HB LSP индекс(ы) (или HB LSP) второго аудиокадра в качестве оценочного HB LSP индекса (индексов) (или HB LSP) первого аудиокадра на этапе 832. Когда HB LSP индикатор имеет второе значение, декодер может определить на этапе 834, находится ли спектральное искажение между первым и вторым аудиокадрами в пределах порогового диапазона. Когда спектральное искажение находится в пределах порогового диапазона, декодер может определить HB LSP индекс(ы) (или HB LSP) первого аудиокадра посредством интерполяции (например, интерполяции между кадромN-1 131 и кадромN+2 134) на этапе 836. Когда спектральное искажение выходит за пределы порогового диапазона, декодер может определить HB LSP индекс(ы) (или HB LSP) первого аудиокадра посредством экстраполяции (например, экстраполяции из кадраN-2 551 и кадраN-1 131) на этапе 838.
[0083] В конкретных вариантах осуществления способ 700 на фиг. 7-8 может быть реализован с помощью аппаратного обеспечения (например, FPGA устройство, ASIC, и т.п.) процессорного блока, такого как CPU, DSP или контроллер, через программно-аппаратное средство или любое их сочетание. В качестве примера способ 700 на фиг. 7-8 может быть выполнен процессором, который исполняет команды, как описано со ссылкой на фиг. 10.
[0084] На фиг. 9 представлена и обозначена в целом позицией 900 блок-схема последовательности операций в конкретном варианте осуществления способа кодирования информации избыточного кодирования для кадра в последующий кадр. В представленном варианте осуществления способ 900 может быть выполнен в устройстве-источнике (например, в первом вычислительном устройстве 110 на фиг. 1) и/или кодере (например, кодере 500 на фиг. 5).
[0085] Способ 900 включает в себя кодирование и передачу первого аудиокадра аудиосигнала на этапе 902. Например, на фиг. 5 кодер 500 может кодировать и передавать кадрN 132. Способ 900 также включает в себя определение, основанное на типе кадра первого аудиокадра, первого числа битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, на этапе 904. Второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второе число битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром, также определяется. Например, как показано на фиг. 5, кодер может определить, основываясь на типе кадра для кадраN 132, что 41 бит кадраN+2 134 должны быть выделены информации избыточного кодирования для кадраN 132 и что 223 бита кадраN+2 134 должны быть выделены информации первичного кодирования для кадраN+2 134.
[0086] Способ 900 включает в себя кодирование второго аудиокадра на этапе 906. Второй аудиокадр включает в себя первое число битов информации первичного кодирования, второе число битов информации избыточного кодирования и индикатор типа кадра для первого аудиокадра.
[0087] Например, кодер может устанавливать значение однобитового индикатора формы усиления на этапе 908. Это значение может быть установлено на основе корреляции между HB участками первого и второго аудиокадров и/или расстояния между индексами кодовой книги, связанными с HB формами усиления первого и второго аудиокадров.
[0088] Кодер может выделять конкретное число битов HB индикатору кадра усиления на этапе 910. Конкретное число битов может быть определено исходя из того, является ли первый аудиокадр невокализованным кадром. Кодер может также устанавливать конкретное значение выделенным битам, основываясь на кодовой книге (например, кодовой книге HB кадров усиления, показанной на фиг. 4).
[0089] Кодер может устанавливать конкретное значение однобитового HB LSP индикатора, основываясь на спектральном искажении между первым и вторым аудиокадрами и/или на расстоянии между индексами кодовой книги, связанными с HB LSP первого и второго аудиокадров, на этапе 912. Альтернативно кодер может определять разность (например, показатель “дельта”) между LSP верхней полосы частот первого и второго аудиокадров и устанавливать значение индикатора HB LSP, основываясь на этой разности, на этапе 914. В альтернативных вариантах осуществления другая информация избыточного кодирования может определяться кодером. Кроме того, следует заметить, что приведенные выше примеры определенных типов индикаторов, будь то однобитовые или многобитовые, приведены только в качестве примера и не должны рассматриваться как ограничивающие. В альтернативных вариантах осуществления разные типы информации первичного и/или избыточного кодирования могут быть представлены, используя разное число битов.
[0090] Способ 900 дополнительно включает в себя передачу второго аудиокадра на этапе 916. Например, на фиг. 1 передатчик 118 может передавать кадрN+2 134 в приемник 128, при этом кадрN+2 134 включает в себя информацию избыточного кодирования для кадраN 132.
[0091] В конкретных вариантах осуществления способ 900 на фиг. 9 может быть реализован с помощью аппаратного обеспечения (например, FPGA устройства, ASIC, и т.п.) процессорного блока, такого как CPU, DSP или контроллер, через программно-аппаратное средство или любое их сочетание. В качестве примера способ 900 на фиг. 9 может быть выполнен процессором, который исполняет команды, как описано со ссылкой на фиг. 10.
[0092] Следует заметить, что порядок операций, представленных на фиг. 10, приведен только в целях иллюстрации и не должен считаться ограничивающим. В альтернативных вариантах осуществления определенные операции могут выполняться в другом порядке или могут выполняться одновременно (или по меньшей мере частично одновременно) с любой другой операцией.
[0093] На фиг. 10 показана блок-схема конкретного, приводимого в качестве примера, варианте осуществления беспроводного устройства связи, обозначенного в целом позицией 1000. Устройство 1000 включает в себя первый процессор 1010 (например, CPU), связанный с памятью 1032 (например, считываемым компьютером запоминающим устройством). Устройство 1000 также включает в себя второй процессор 1080 (например, DSP). Память 1032 может включать в себя команды 1060, исполняемые первым процессором 1010 и/или вторым процессором 1080 для выполнения описанных здесь способов и процессов, таких как способы на фиг. 7-9.
[0094] Второй процессор 1080 может включать в себя речевой кодер 1087, речевой декодер 1088 и память 1085, которая хранит одну или более кодовых книг 1086 (например, LB LSP кодовую книгу, HB LSP кодовую книгу, кодовую книгу HB формы усиления, кодовую книгу HB кадров усиления, и т.п.). Одна или более кодовых книг 1086 могут включать в себя ACB, FCB или и то, и другое. В представленном варианте осуществления речевой кодер 1087 является кодером 116 на фиг. 1 и/или кодером 500 на фиг. 5, речевой декодер 1088 является декодером 126 на фиг. 1 и/или декодером 600 на фиг. 6, и память 1085 включает в себя буфер 129 устранения “дрожания” на фиг. 1, совместную память 530 на фиг. 5 и/или буфер 610 устранения “дрожания” на фиг. 6. В альтернативных вариантах осуществления речевой кодер 1087 и/или речевой декодер 1088 могут быть внешними по отношению ко второму процессору 1080 (например, могут быть включены в состав первого процессора 1010 или же другого процессора или блока аппаратного обеспечения). Речевой кодер 1087 и речевой декодер 1088 могут быть реализованы посредством специализированного аппаратного обеспечения (например, схемой), процессором, исполняющим команды для выполнения одной или более задач, или их сочетанием. В качестве примера, память 1032 или память 1085 может быть запоминающим устройством, таким как оперативное запоминающее устройство (RAM), магниторезистивное оперативное запоминающее устройство (MRAM), MRAM с переносом спинового момента (STT-MRAM), флэш-память, постоянное запоминающее устройство (ROM), программируемое постоянное запоминающее устройство (PROM), стираемое программируемое постоянное запоминающее устройство (EPROM), электрически стираемое программируемое постоянное запоминающее устройство (EEPROM), регистры, жесткий диск, съемный диск или оптический диск (например, постоянное запоминающее устройство на основе компакт-диска (CD-ROM), цифровой видеодиск (DVD), blu-ray диск, и т.п.). Запоминающее устройство может включать в себя команды (например, команды 1060), которые при исполнении их вычислительным устройством (например, первым процессором 1010 и/или вторым процессором 1080) заставляют вычислительное устройство выполнять различные операции, описанные здесь.
[0095] На фиг. 10 также показан дисплейный контроллер 1026, который подсоединен к первому процессору 1010 и к дисплею 1028. Кодер/декодер (КОДЕК) 1034 может быть подсоединен к первому процессору 1010 и ко второму процессору 1080, как показано. Громкоговоритель 1036 и микрофон 1038 могут быть подсоединены к КОДЕКУ 1034. В конкретном варианте осуществления КОДЕК 1034 является аналоговым входным устройством обработки аудиосигналов. Например, КОДЕК 1034 может выполнять аналоговую регулировку усиления и установку параметров для сигналов, принятых от микрофона 1038, и сигналов, переданных в громкоговоритель 1036. КОДЕК 1034 может также включать в себя аналого-цифровой (A/D) и цифро-аналоговый (D/A) преобразователи. В конкретном варианте осуществления КОДЕК 1034 также включает в себя один или более модуляторов и фильтров обработки сигналов. В выбранных вариантах осуществления КОДЕК 1034 включает в себя память для буферизации входных данных, принятых от микрофона 1038, и буферизации выходных данных, которые должны быть поданы в громкоговоритель 1036.
[0096] На фиг. 10 также показано, что контроллер 1040 может быть подсоединен к первому процессору 1010 и к антенне 1042. В конкретном варианте осуществления первый процессор 1010, второй процессор 1080, дисплейный контроллер 1026, память 1032, КОДЕК 1034 и беспроводной контроллер 1040 включены в состав устройства, выполненного в виде заключенной в корпус системы или расположенной на кристалле системы (например, модема мобильной станции (MSM)) 1022. В конкретном варианте осуществления вводное устройство 1030, такое как сенсорный экран и/или клавиатура, и источник 1044 питания подсоединены к устройству 1022, выполненному в виде расположенной на кристалле системы. Кроме того, в конкретном варианте осуществления, представленном на фиг. 10, дисплей 1028, вводное устройство 1030, громкоговоритель 1036, микрофон 1038, антенна 1042 и источник питания 1044 являются внешними по отношению к устройству 1022, выполненному в виде расположенной на кристалле системы. Однако каждое из дисплея 1028, вводного устройства 1030, громкоговорителя 1036, микрофона 1038, антенны 1042 и источника 1044 питания может быть подсоединено к компоненту устройства 1022, выполненного в виде расположенной на кристалле системы, такому как интерфейс или контроллер.
[0097] В связи с представленными вариантами осуществления описывается устройство, которое включает в себя средство для приема второго аудиокадра, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале. Второй аудиокадр включает в себя первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром, второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, и индикатор типа кадра для первого аудиокадра. Например, средство для приема может включать в себя приемник 128 на фиг. 1, антенну 1042 на фиг. 10, беспроводной контроллер 1040 на фиг. 10, одно или более устройств, выполненных с возможностью приема аудиосигнала, или любое их сочетание. Устройство также может включать в себя средство для определения, основываясь на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром. Например, средство для определения может включать в себя процессор 122 на фиг. 1, декодер 126 на фиг. 1, декодер 600 на фиг. 6, первый процессор 1010 на фиг. 10, второй процессор 1080 на фиг. 10, речевой декодер 1088 на фиг. 10, одно или более устройств, выполненных с возможностью определения числа битов, выделенных информации избыточного кодирования, или любое их сочетание. Устройство может также содержать средство для декодирования первого аудиокадра, основываясь на информации избыточного кодирования. Например, средство для декодирования может включать в себя декодер 126 на фиг. 1, декодер 600 на фиг. 6, первый процессор 1010 на фиг. 10, второй процессор 1080 на фиг. 10, речевой декодер 1088 на фиг. 10, одно или более устройств, выполненных с возможностью декодирования аудиокадра, основываясь на информации избыточного кодирования, или любое их сочетание.
[0098] Описывается второе устройство, которое включает в себя средство для кодирования первого аудиокадра и второго аудиокадра аудиосигнала, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале. Например, это средство для кодирования моет включать в себя кодер 116 на фиг. 1, кодер 500 на фиг. 5, первый процессор 1010 на фиг. 10, второй процессор 1080 на фиг. 10, речевой кодер 1087 на фиг. 10, одно или более устройств, выполненных с возможностью кодирования аудиокадра, или любое их сочетание. Устройство может также включать в себя средство для определения, основываясь на типе кадра для первого аудиокадра, первого числа битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром. Например, средство для определения может включать в себя процессор 112 на фиг. 1, кодер 116 на фиг. 1, кодер 500 на фиг. 5, первый процессор 1010 на фиг. 10, второй процессор 1080 на фиг. 10, речевой кодер 1087 на фиг. 10, одно или более устройств, выполненных с возможностью определения битов, выделяемых информации первичного кодирования и информации избыточного кодирования, или любое их сочетание. Устройство может также включать в себя средство для передачи первого аудиокадра и второго аудиокадра в устройство-адресат. Второй аудиокадр включает в себя первое число битов информации первичного кодирования, второе число битов информации избыточного кодирования и индикатор типа кадра для первого аудиокадра. Например, средство для передачи может включать в себя передатчик 118 на фиг. 11, антенну 1042 на фиг. 10, беспроводной контроллер 1040 на фиг. 10, одно или более устройств, выполненных с возможностью передачи аудиокадра, или любое их сочетание.
[0099] Специалистам в данной области техники будет к тому же понятно, что различные иллюстративные логические блоки, конфигурации, модули, схемы и алгоритмические этапы, описанные в связи с вариантами осуществления, приведенными здесь, могут реализовываться в виде электронного аппаратного оборудования, компьютерного программного обеспечения, выполняемого обрабатывающим устройством, таким как аппаратный процессор, или любого их сочетания. Различные иллюстративные компоненты, блоки, конфигурации, модули, схемы и этапы описаны выше в общем случае в терминах их функциональности. Реализуется ли такая функциональность посредством аппаратного оборудования или выполняемого программного обеспечения, зависит от конкретного применения и проектных ограничений, накладываемых на полную систему. Специалисты в данной области техники могут реализовать описанную функциональность различными путями для каждого конкретного применения, но такие решения по реализации не должны рассматриваться как вызывающие отклонение от объема настоящего изобретения.
[00100] Этапы способа или алгоритма, описанного в связи с представленными здесь вариантами осуществления, могут быть реализованы непосредственно в аппаратном обеспечении, в модуле программного обеспечения, выполняемого процессором, или в любом их сочетании. Модуль программного обеспечения может содержаться в запоминающем устройстве (например, в считываемом компьютером или считываемом процессором запоминающем устройстве), таком как RAM, MRAM, STT-MRAM, кэш-память, ROM, PROM, EPROM, EEPROM, регистры, жесткий диск, съемный диск или память на оптическом диске. Типовое запоминающее устройство подсоединяется к процессору, так что процессор может считывать информацию и записывать информацию в запоминающее устройство. В качестве альтернативы запоминающее устройство может быть встроено в процессор. Процессор и запоминающее средство могут содержаться в ASIC. ASIC может находиться в вычислительном устройстве или в пользовательском терминале. В альтернативном варианте процессор и запоминающее средство могут существовать в виде дискретных компонентов в вычислительном устройстве или в пользовательском терминале. Считываемое компьютером или считываемое процессором запоминающее устройство не является сигнальным.
[0099] Приведенное выше описание представленных вариантов осуществления направлено на то, чтобы позволить специалистам в данной области техники реализовать или использовать представленные варианты осуществления. Различные модификации этих вариантов осуществления будут легко понятны специалистам в данной области техники, и принципы, определенные здесь, могут быть применены к другим вариантам осуществления без отклонения от объема изобретения. Таким образом, настоящее описание не направлено на ограничение вариантами осуществления, представленными здесь, но приемлет возможное расширение объема, согласующееся с принципами и новыми признаками, определенными прилагаемой формулой изобретения.
название | год | авторы | номер документа |
---|---|---|---|
ГЕНЕРАЦИЯ СИГНАЛА ВЕРХНЕЙ ПОЛОСЫ | 2016 |
|
RU2742296C2 |
ГЕНЕРАЦИЯ СИГНАЛА ВЕРХНЕЙ ПОЛОСЫ | 2016 |
|
RU2667460C1 |
СПОСОБЫ И СИСТЕМЫ ПЕРЕКЛЮЧЕНИЯ ТЕХНОЛОГИЙ КОДИРОВАНИЯ В УСТРОЙСТВЕ | 2015 |
|
RU2667973C2 |
ПОДДИАПАЗОННЫЙ РЕЧЕВОЙ КОДЕКС С МНОГОКАСКАДНЫМИ ТАБЛИЦАМИ КОДИРОВАНИЯ И ИЗБЫТОЧНЫМ КОДИРОВАНИЕМ | 2006 |
|
RU2418324C2 |
КОДЕР, ДЕКОДЕР И СПОСОБ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ АУДИОКОНТЕНТА С ИСПОЛЬЗОВАНИЕМ ПАРАМЕТРОВ ДЛЯ УЛУЧШЕНИЯ МАСКИРОВАНИЯ | 2015 |
|
RU2701707C2 |
РАСШИРЕНИЕ ПОЛОСЫ ПРОПУСКАНИЯ ЗВУКОВОГО СИГНАЛА НИЖНЕЙ ПОЛОСЫ | 2010 |
|
RU2568278C2 |
СИСТЕМА ОБРАБОТКИ АУДИО | 2014 |
|
RU2625444C2 |
ПРИНЦИП ДЛЯ КОДИРОВАНИЯ АУДИОСИГНАЛА И ДЕКОДИРОВАНИЯ АУДИОСИГНАЛА С ИСПОЛЬЗОВАНИЕМ ДЕТЕРМИНИРОВАННОЙ И ШУМОПОДОБНОЙ ИНФОРМАЦИИ | 2014 |
|
RU2644123C2 |
СИСТЕМЫ, СПОСОБЫ И УСТРОЙСТВО ДЛЯ ШИРОКОПОЛОСНОГО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ АКТИВНЫХ КАДРОВ | 2010 |
|
RU2441288C1 |
СИСТЕМЫ, СПОСОБЫ И УСТРОЙСТВО ДЛЯ ШИРОКОПОЛОСНОГО КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ АКТИВНЫХ КАДРОВ | 2007 |
|
RU2419170C2 |
Изобретение относится к передаче избыточной информации кадра. Технический результат изобретения заключается в улучшении эффективности кодирования/декодирования данных. Способ декодирования кадра содержит: прием второго аудиокадра в декодере вычислительного устройства, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале, второй аудиокадр включает в себя: первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром; второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром; и индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования. В ответ на состояние стирания кадра, связанное с первым аудиокадром, определение, основанное на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром; и декодирование первого аудиокадра, основываясь на информации избыточного кодирования. 10 н. и 34 з.п. ф-лы, 10 ил.
1. Способ декодирования кадра, причем способ содержит:
прием второго аудиокадра в декодере вычислительного устройства, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале, причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования;
в ответ на состояние стирания кадра, связанное с первым аудиокадром,
определение, основанное на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром; и
декодирование первого аудиокадра, основываясь на информации избыточного кодирования.
2. Способ по п. 1, дополнительно содержащий декодирование второго аудиокадра, основанное на информации первичного кодирования.
3. Способ по п. 1, дополнительно содержащий извлечение информации избыточного кодирования из второго аудиокадра, основываясь на втором числе битов.
4. Способ по п. 1, в котором состояние стирания кадра соответствует определению того, что декодер неспособен декодировать по меньшей мере участок первого аудиокадра или что вычислительное устройство не приняло участок первого аудиокадра.
5. Способ по п. 1, в котором:
информация первичного кодирования включает в себя кодированную основную часть нижней полосы частот второго аудиокадра и параметры верхней полосы частот второго аудиокадра; и
числа битов, выделенных кодированной основной части нижней полосы частот второго аудиокадра, параметрам верхней полосы частот второго аудиокадра, информации избыточного кодирования, связанной с кодированной основной частью нижней полосы частот первого аудиокадра, и информации избыточного кодирования, связанной с параметрами верхней полосы частот первого аудиокадра, регулируются на основе характеристики первого кадра, характеристики второго кадра или того и другого.
6. Способ по п. 1, в котором информация избыточного кодирования включает в себя индикатор формы усиления, связанный с формой усиления в верхней полосе частот первого аудиокадра.
7. Способ по п. 6, который дополнительно содержит, в ответ на определение того, что индикатор формы усиления имеет первое значение, использование формы усиления в верхней полосе частот второго аудиокадра в качестве оценочной формы усиления в верхней полосе частот для первого аудиокадра.
8. Способ по п. 6, который дополнительно содержит, в ответ на определение того, что индикатор формы усиления имеет второе значение, использование постоянной формы усиления в качестве оценочной формы усиления в верхней полосе частот для первого аудиокадра.
9. Способ по п. 1, в котором информация избыточного кодирования включает в себя индикатор кадра усиления в верхней полосе частот, связанный с кадром усиления в верхней полосе частот первого аудиокадра.
10. Способ по п. 9, в котором, когда тип кадра включает в себя тип кадра с возбуждаемым шумами линейным предсказанием, индикатору кадра усиления в верхней полосе частот выделяется пять битов и он представляет индекс кодовой книги.
11. Способ по п. 9, в котором, когда тип кадра включает в себя полностью предсказуемый тип кадра, общий тип кадра или непредсказуемый тип кадра, индикатору кадра усиления в верхней полосе частот выделяется два бита и он имеет значение, которое основано на кадре усиления предшествующего кадра.
12. Способ по п. 1, в котором информация избыточного кодирования включает в себя индикатор пары спектральных линий (LSP) верхней полосы частот, связанный с LSP верхней полосы частот первого аудиокадра.
13. Способ по п. 12, который дополнительно содержит, в ответ на определение того, что индикатор LSP верхней полосы частот имеет первое значение, использование LSP верхней полосы частот второго аудиокадра в качестве оценочных LSP верхней полосы частот для первого аудиокадра.
14. Способ по п. 12, который дополнительно содержит, в ответ на определение того, что индикатор LSP верхней полосы частот имеет второе значение, определение оценочных LSP верхней полосы частот первого аудиокадра, основываясь на:
интерполяции LSP верхней полосы частот второго аудиокадра и LSP верхней полосы частот по меньшей мере одного аудиокадра, который предшествует первому аудиокадру; или
экстраполяции LSP верхней полосы частот множества аудиокадров, которые предшествуют первому аудиокадру.
15. Способ по п. 12, в котором индикатор LSP верхней полосы частот указывает разность между LSP верхней полосы частот первого аудиокадра и LSP верхней полосы частот второго аудиокадра.
16. Способ по п. 1, в котором индикатор типа кадра для первого аудиокадра включен в состав последних трех битов типа второго аудиокадра.
17. Способ по п. 16, в котором последние три бита второго аудиокадра указывают число битов информации избыточного кодирования, которые включены в состав второго аудиокадра.
18. Способ по п. 16, в котором второй аудиокадр включает в себя два бита, предшествующих последним трем битам, причем два бита, предшествующие последним трем битам, указывают смещение между первым аудиокадром и вторым аудиокадром.
19. Способ по п. 1, который дополнительно содержит определение положения информации избыточного кодирования во втором аудиокадре.
20. Способ декодирования кадра, причем способ содержит:
прием первого аудиокадра и второго аудиокадра в декодере вычислительного устройства,
причем второй аудиокадр следует за первым аудиокадром в аудиосигнале,
причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования;
декодирование первого аудиокадра;
определение, основываясь на индикаторе, первого числа битов второго аудиокадра, которые выделены информации первичного кодирования, связанной со вторым аудиокадром; и
декодирование второго аудиокадра, основываясь на информации первичного кодирования.
21. Способ по п. 20, в котором:
информация первичного кодирования включает в себя кодированную основную часть нижней полосы частот второго аудиокадра и параметры верхней полосы частот второго аудиокадра; и
числа битов, выделенных кодированной основной части нижней полосы частот второго аудиокадра, параметрам верхней полосы частот второго аудиокадра, информации избыточного кодирования, связанной с кодированной основной частью нижней полосы частот первого аудиокадра, и информации избыточного кодирования, связанной с параметрами верхней полосы частот первого аудиокадра, регулируются на основе характеристики первого кадра, характеристики второго кадра или того и другого.
22. Способ по п. 20, в котором информация избыточного кодирования включает в себя индикатор кадра усиления в верхней полосе частот, связанный с кадром усиления в верхней полосе частот первого аудиокадра.
23. Способ кодирования кадра, причем способ содержит:
кодирование первого аудиокадра аудиосигнала в кодере первого вычислительного устройства;
передачу первого аудиокадра от первого вычислительного устройства во второе вычислительное устройство;
определение, основываясь на типе кадра собственно первого аудиокадра, первого числа битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодируемой основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра, и причем второй аудиокадр следует за первым аудиокадром в аудиосигнале;
кодирование второго аудиокадра, при этом второй аудиокадр включает в себя:
первое число битов информации первичного кодирования;
второе число битов информации избыточного кодирования; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования; и
передачу второго аудиокадра от первого вычислительного устройства во второе вычислительное устройство.
24. Способ по п. 23, в котором информация первичного кодирования кодируется в первичном кодере упомянутого кодера, в котором информация избыточного кодирования кодируется в избыточном кодере упомянутого кодера, в котором первичный кодер выполнен с возможностью обеспечения параметров нижней полосы частот и параметров верхней полосы частот избыточному кодеру и в котором избыточный кодер выполнен с возможностью обеспечения указания второго числа битов первичному кодеру.
25. Способ по п. 23, в котором информация избыточного кодирования включает в себя индикатор формы усиления, связанный с формой усиления в верхней полосе частот первого аудиокадра, и способ дополнительно содержит установку значения индикатора формы усиления, основываясь на одном или более из:
корреляции между участком верхней полосы частот первого аудиокадра и участком верхней полосы частот второго аудиокадра;
расстояния между первым индексом кодовой книги, связанным с формой усиления в верхней полосе частот первого аудиокадра, и вторым индексом кодовой книги, связанным с формой усиления в верхней полосе частот второго аудиокадра.
26. Способ по п. 23, в котором информация избыточного кодирования включает в себя индикатор кадра усиления в верхней полосе частот, связанный с кадром усиления в верхней полосе частот первого аудиокадра.
27. Способ по п. 26, который дополнительно содержит, когда тип кадра включает в себя тип кадра с возбуждаемым шумами линейным предсказанием, выделение пяти битов индикатору кадра усиления в верхней полосе частот и установку индикатора кадра усиления в верхней полосе частот на значение, которое представляет индекс кодовой книги.
28. Способ по п. 26, который дополнительно содержит, когда тип кадра включает в себя полностью предсказуемый тип кадра, общий тип кадра или непредсказуемый тип кадра, выделение индикатору кадра усиления в верхней полосе частот двух битов и установку индикатора кадра усиления в верхней полосе частот на значение, которое основано на кадре усиления предшествующего кадра.
29. Способ по п. 23, в котором информация избыточного кодирования включает в себя индикатор пары спектральных линий (LSP) верхней полосы частот, связанный с LSP верхней полосы частот первого аудиокадра, и способ дополнительно содержит установку значения индикатора LSP верхней полосы частот, основываясь на одном или более из:
спектрального искажения между первым аудиокадром и вторым аудиокадром, или
расстояния между первым индексом кодовой книги, связанным с LSP верхней полосы частот первого аудиокадра, и вторым индексом кодовой книги, связанным с LSP верхней полосы частот второго аудиокадра.
30. Способ по п. 23, в котором информация избыточного кодирования включает в себя индикатор пары спектральных линий (LSP) верхней полосы частот, связанный с LSP верхней полосы частот первого аудиокадра, и способ дополнительно содержит:
определение разности между LSP верхней полосы частот первого аудиокадра и LSP верхней полосы частот второго аудиокадра; и
установку значения индикатора LSP верхней полосы частот на основе этой разности.
31. Устройство связи, которое содержит:
приемник, выполненный с возможностью приема второго аудиокадра, который следует за первым аудиокадром в аудиосигнале, причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования; и
декодер, выполненный с возможностью:
в ответ на состояние стирания кадра, связанное с первым аудиокадром, определения, основываясь на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром; и
декодирования первого аудиокадра, основываясь на информации избыточного кодирования.
32. Устройство связи по п. 31, в котором декодер содержит первую память, используемую во время декодирования первого аудиокадра на основе битов избыточного кодирования, и вторую память, используемую во время декодирования второго аудиокадра на основе битов первичного кодирования.
33. Устройство связи по п. 31, которое дополнительно содержит буфер устранения “дрожания”, выполненный с возможностью запоминания аудиокадров, принятых приемником.
34. Устройство связи, которое содержит:
приемник, выполненный с возможностью приема первого аудиокадра и второго аудиокадра, который следует за первым аудиокадром в аудиосигнале, причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования, и
декодер, выполненный с возможностью:
декодирования первого аудиокадра;
определения, основываясь на индикаторе, первого числа битов второго аудиокадра, которые выделены информации первичного кодирования, связанной со вторым аудиокадром; и
декодирования второго аудиокадра на основе информации первичного кодирования.
35. Устройство связи по п. 34, в котором декодер содержит первую память, используемую во время декодирования первого аудиокадра на основе битов избыточного кодирования, и вторую память, используемую во время декодирования второго аудиокадра на основе битов первичного кодирования.
36. Устройство связи по п. 34, которое дополнительно содержит буфер устранения “дрожания”, выполненный с возможностью запоминания аудиокадров, принятых приемником.
37. Устройство связи, которое содержит:
кодер, выполненный с возможностью:
кодирования первого аудиокадра аудиосигнала;
определения, основываясь на типе кадра собственно первого аудиокадра, первого числа битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра, и причем второй аудиокадр следует за первым аудиокадром в аудиосигнале, и
кодирования второго аудиокадра, при этом второй аудиокадр включает в себя:
первое число битов информации первичного кодирования;
второе число битов информации избыточного кодирования; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования; и
передатчик, выполненный с возможностью передачи первого аудиокадра и второго аудиокадра в устройство-адресат.
38. Устройство связи по п. 37, в котором кодер содержит первичный кодер.
39. Устройство связи по п. 38, в котором первое число битов информации первичного кодирования генерируется первичным кодером.
40. Устройство связи по п. 39, в котором кодер дополнительно содержит избыточный кодер, работающий параллельно с первичным кодером, в котором второе число битов информации избыточного кодирования генерируется избыточным кодером, в котором первичный кодер выполнен с возможностью обеспечения параметров нижней полосы частот и параметров верхней полосы частот избыточному кодеру и в котором избыточный кодер выполнен с возможностью обеспечения указания второго числа битов первичному кодеру.
41. Устройство связи, которое содержит:
средство для приема второго аудиокадра, который следует за первым аудиокадром в аудиосигнале,
причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования;
средство для определения, основываясь на индикаторе, второго числа битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром; и
средство для декодирования первого аудиокадра, основываясь на информации избыточного кодирования.
42. Устройство связи, которое содержит:
средство для кодирования первого аудиокадра аудиосигнала и второго аудиокадра аудиосигнала, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале;
средство для определения, основываясь на типе кадра собственно первого аудиокадра, первого числа битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, и второго числа битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
средство для передачи первого аудиокадра и второго аудиокадра в устройство-адресат, причем второй аудиокадр включает в себя:
первое число битов информации первичного кодирования;
второе число битов информации избыточного кодирования; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования.
43. Считываемое компьютером запоминающее устройство, содержащее команды для декодирования кадра, причем эти команды исполняются, чтобы заставить компьютер:
принимать второй аудиокадр в декодере вычислительного устройства, причем второй аудиокадр следует за первым аудиокадром в аудиосигнале, причем второй аудиокадр включает в себя:
первое число битов, выделенных информации первичного кодирования, связанной со вторым аудиокадром;
второе число битов, выделенных информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования;
в ответ на состояние стирания кадра, связанное с первым аудиокадром, определять, основываясь на индикаторе, второе число битов второго аудиокадра, которые выделены информации избыточного кодирования, связанной с первым аудиокадром; и
декодировать первый аудиокадр, основываясь на информации избыточного кодирования.
44. Считываемое компьютером запоминающее устройство, содержащее команды для кодирования кадра, причем эти команды исполняются, чтобы заставить компьютер:
кодировать первый аудиокадр аудиосигнала в кодере первого вычислительного устройства;
передавать первый аудиокадр от первого вычислительного устройства во второе вычислительное устройство;
определять, основываясь на типе кадра собственно первого аудиокадра, первое число битов второго аудиокадра, выделяемых информации первичного кодирования, связанной со вторым аудиокадром, и второе число битов второго аудиокадра, выделяемых информации избыточного кодирования, связанной с первым аудиокадром, причем информация избыточного кодирования связана с кодированной основной частью нижней полосы частот первого аудиокадра и параметрами верхней полосы частот первого аудиокадра, и причем второй аудиокадр следует за первым аудиокадром в аудиосигнале;
кодировать второй аудиокадр, причем второй аудиокадр включает в себя:
первое число битов информации первичного кодирования;
второе число битов информации избыточного кодирования; и
индикатор того, имеет ли первый аудиокадр полностью предсказуемый тип кадра, тип кадра с возбуждаемым шумами линейным предсказанием, общий тип кадра, непредсказуемый тип кадра или тип кадра, не несущий информацию избыточного кодирования; и
передавать второй аудиокадр от первого вычислительного устройства во второе вычислительное устройство.
Изложница с суживающимся книзу сечением и с вертикально перемещающимся днищем | 1924 |
|
SU2012A1 |
Многоступенчатая активно-реактивная турбина | 1924 |
|
SU2013A1 |
Тепломассообменная тарелка | 1982 |
|
SU1049073A1 |
Пломбировальные щипцы | 1923 |
|
SU2006A1 |
МНОГОКАНАЛЬНЫЙ АУДИОКОДЕК БЕЗ ПОТЕРЬ, КОТОРЫЙ ИСПОЛЬЗУЕТ АДАПТИВНУЮ СЕГМЕНТАЦИЮ С ВОЗМОЖНОСТЯМИ ТОЧЕК ПРОИЗВОЛЬНОГО ДОСТУПА (RAP) И МНОЖЕСТВА НАБОРОВ ПАРАМЕТРОВ ПРЕДСКАЗАНИЯ (MPPS) | 2009 |
|
RU2495502C2 |
Авторы
Даты
2018-11-30—Публикация
2014-10-09—Подача