АУДИОКОДЕР, АУДИОДЕКОДЕР, СПОСОБ КОДИРОВАНИЯ АУДИОИНФОРМАЦИИ, СПОСОБ ДЕКОДИРОВАНИЯ АУДИОИНФОРМАЦИИ И КОМПЬЮТЕРНАЯ ПРОГРАММА, ИСПОЛЬЗУЮЩАЯ ХЭШ-ТАБЛИЦУ, КОТОРАЯ ОПИСЫВАЕТ ЗНАЧИМЫЕ ЗНАЧЕНИЯ СОСТОЯНИЯ И ГРАНИЦЫ ИНТЕРВАЛА

1. Аудиодекодер (200, 800) для обеспечения декодированной аудиоинформации (212, 812) на основе кодированной аудиоинформации (210, 810), включающий:
арифметический декодер (230; 820) для обеспечения множества декодированных спектральных значений (232, 822) на основе арифметически кодированного представления (222; 821) спектральных значений, содержащихся в кодированной аудиоинформации (210; 810), и
конвертер частотной области во временную область (260, 830) для обеспечения аудиопредставления временной области (262; 812), используя декодированные спектральные значения (232, 822), в целях получения декодированной аудиоинформации (212, 812);
при этом арифметический декодер (230, 820) настроен выбирать правило отображения (297; cum_freq []), описывающее отображение значения кода (значение) арифметически кодированного представления (821) спектральных значений на код символа (символ), представляющий одно или более спектральных значений или по меньшей мере часть одного или более декодированных спектральных значений, в зависимости от состояния контекста (s), описанного с помощью числового значения текущего контекста (с);
при этом арифметический декодер (230, 820) настроен определять числовое значение текущего контекста (с) в зависимости от множества ранее декодированных спектральных значений;
при этом арифметический декодер настроен оценивать хэш-таблицу (ari_hash_m[]), записи которой определяют значимые значения состояния среди числовых значений контекста и границы интервалов незначимых значений состояния среди числовых значений контекста для того, чтобы выбрать правило отображения.
при этом значение индекса правила отображения индивидуально связано с числовым значением контекста, так как является значимым значением состояния, и
при этом общее значение индекса правила отображения связано с разными числовыми значениями контекста, находящимися в пределах одного из указанных интервалов, который ограничен указанными границами.
2. Декодер аудиосигнала по п.1, где арифметический декодер настроен сравнивать числовое значение текущего контекста (с) или масштабированную версию (s) числового значения текущего контекста с множеством пронумерованных записей (j) хэш-таблицы (ari_hash_m[]) для того, чтобы получить значение индекса хэш-таблицы (i_min) записи хэш-таблицы (ari_hash_m[min]) так, что числовое значение текущего контекста находится в пределах интервала, определенного записью хэш-таблицы (ari_hash_m[i_min]), которая обозначена при помощи полученного значения индекса хэш-таблицы (i_min) и смежной записи хэш-таблицы (http://ari_hash_m.fi min-1], ari_hash_m[i_min+l]); и
при этом арифметический декодер настроен определять, равняется ли числовое значение текущего контекста значению, определенному записью хэш-таблицы, обозначенной с помощью полученного значения индекса хэш-таблицы (i_min), и выборочно предоставлять, в зависимости от результата определения, значение индекса правила отображения, индивидуально связанного с числовым значением текущего контекста, определенного записью хэш-таблицы, обозначенной при помощи полученного значения индекса хэш-таблицы, либо значение индекса правила отображения, обозначенного при помощи полученного значения индекса хэш-таблицы и связанного с различными числовыми значениями текущего контекста в пределах интервала, ограниченного, с одной стороны, значением состояния, определенного с помощью записи хэш-таблицы, обозначенной при помощи полученного значения индекса хэш-таблицы.
3. Аудиодекодер по п.1, в котором арифметический декодер настроен определять, используя хэш-таблицу, равно ли числовое значение текущего контекста значению границы интервала состояния, определенному записью хэш-таблицы, или оно находится в пределах интервала, определенного двумя записями хэш-таблицы;
при этом арифметический декодер настроен обеспечивать значение индекса правила отображения, соответствующее записи хэш-таблицы, если обнаружено, что числовое значение текущего контекста равно значению границы интервала состояния, а также обеспечивать значение индекса правила отображения, соответствующее интервалу между значениями состояния, которые определены двумя смежными записями хэш-таблицы, если обнаружено, что числовое значение текущего контекста находится в пределах интервала между значениями состояния, которые определены двумя смежными записями хэш-таблицы; и
при этом арифметический декодер настроен выбирать сводную таблицу частот для арифметического декодера в зависимости от значения индекса правила отображения.
4. Аудиодекодер по п.1, в котором значение индекса правила отображения, соответствующее первой заданной записи хэш-таблицы, отличается от значения индекса правила отображения, соответствующего первому интервалу значений контекста, верхняя граница которого определяется первой заданной записью хэш-таблицы, а также отличается от значения индекса правила отображения, соответствующего второму интервалу значений контекста, нижняя граница которого определяется первой заданной записью хэш-таблицы, так что первая заданная запись хэш-таблицы определяет, одним значением, границы двух интервалов числового значения текущего контекста и значимое значение состояния числового значения текущего контекста.
5. Аудиодекодер по п.4, в котором значение индекса правила отображения, соответствующее первому интервалу значений контекста, равно значению индекса правила отображения, которое соответствует второму интервалу значений контекста, так что первая заданная запись хэш-таблицы определяет обособленное значимое состояние в пределах двустороннего окружения незначимых значений состояния.
6. Аудиодекодер по п.4, в котором значение индекса правила отображения, соответствующее второй заданной записи хэш-таблицы, идентично значению индекса правила отображения, соответствующему третьему интервалу значений контекста, границы которого определяются второй заданной записью хэш-таблицы, но отличается от значения индекса правила отображения, которое соответствует четвертому интервалу значений контекста, границы которого определяются второй заданной записью хэш-таблицы, так что вторая заданная запись хэш-таблицы определяет границу между двумя интервалами числового значения текущего контекста без определения значимого значения состояния числового значения текущего контекста.
7. Аудиодекодер по п.1, в котором арифметический декодер настроен оценивать одиночную хэш-таблицу, пронумерованные записи которой определяют значимые значения состояния числового значения текущего контекста и границы интервалов числового значения текущего контекста, чтобы получить значение индекса хэш-таблицы (i_min), обозначающее интервал, среди интервалов, определенных записями хэш-таблицы, в котором находится числовое значение текущего контекста, а также последовательно определять, используя запись таблицы, обозначенную при помощи полученного значения индекса хэш-таблицы, значимое или незначимое значение состояния принимает числовое значение текущего контекста.
8. Аудиодекодер по п.1, в котором арифметический декодер настроен выборочно оценивать таблицу отображения (ari_lookup_m), которая отображает значения индекса интервала (i_min) на значения индекса правила отображения (pki), если обнаружено, что числовое значение текущего контекста не принимает значимое значение состояния, чтобы получить значение индекса правила отображения (pki), соответствующее интервалу незначимых значений состояния, в пределах которого находится числовое значение текущего контекста.
9. Аудиодекодер по п.1, в котором записи хэш-таблицы пронумерованы,
при этом арифметический декодер настроен оценивать последовательность записей хэш-таблицы, чтобы получить итоговое значение индекса хэш-таблицы (i_min) записи хэш-таблицы таким образом, что числовое значение текущего контекста (с) находится в пределах интервала, определенного записью хэш-таблицы, обозначенной с помощью полученного итогового значения индекса хэш-таблицы, и смежной записью хэш-таблицы;
при этом арифметический декодер настроен выполнять заданное количество повторов для того, чтобы повторно определять итоговое значение индекса хэш-таблицы (i_min);
при этом каждый повтор включает только одно сравнение значения состояния, представленное текущей записью (ari_hash_m[i]) хэш-таблицы, и значения состояния, представленное числовым значением текущего контекста, а также выборочное обновление текущего значения индекса хэш-таблицы (i) в зависимости от результата указанного единичного сравнения.
10. Аудиодекодер по п.9, в котором арифметический декодер настроен разграничивать числовое значение текущего контекста, которое включает значимое значение состояния, и числовое значение текущего контекста, которое включает незначимое значение состояния, только после выполнения заданного количества повторов.
11. Аудиодекодер по п.1, в котором арифметический декодер настроен оценивать хэш-таблицу, используя алгоритм:
for (k=0; k<kmax; k++)
{
i=i_min+i_diff[k];
j=ari_hash_m[i];
if(s>j)
{
i_min=i+l;
}
}
при этом k является подвижной переменной;
при этом kmax обозначает заданное число повторов;
при этом i является переменной, которая описывает текущее значение индекса хэш-таблицы;
при этом i_min является переменной, которая инициализируется обозначать значение индекса хэш-таблицы первой записи хэш-таблицы и выборочно обновляется в зависимости от сравнения s и j;
при этом ari_hash_m обозначает хэш-таблицу;
при этом ari_hash_m(i) обозначает запись хэш-таблицы, имеющую значение индекса хэш-таблицы i;
при этом s обозначает переменную, представляющую числовое значение текущего контекста или его масштабированную версию; и
при этом i_diff[k] обозначает размер шага для адаптации текущего значения индекса хэш-таблицы при k повторе.
12. Аудиодекодер по п.11, в котором арифметический декодер дополнительно настроен получать значение индекса правила отображения как возвратное значение в соответствии с:
j=ari_hash_m[i];
if(s>j)
return (ari_lookup_m[i_min+l];
else if(c<(j>>8))
return (ari_lookup_m[i_min];
else
return(j&0×FF);
при этом i_min определяется в результате оценки хэш-таблицы;
при этом ari_lookup_m является таблицей, которая описывает значения индекса правила отображения (pki), соответствующие различным интервалам числового значения текущего контекста для незначимых значений числового значения текущего контекста;
при этом ari_lookup_m[i_min+1] обозначает запись таблицы "ari_lookup_m", имеющую индекс записи i_min+1;
при этом ari_lookup_m[i_min] обозначает запись таблицы "ari_lookup_m", имеющую индекс записи i_min;
при этом условие s>j определяет, что значение состояния, описанное с помощью переменной s, больше, чем значение состояния, описанное с помощью записи таблицы ari_hash_m[i_min];
при этом условие "c<(j>>8)" определяет, что значение состояния, описанное с помощью переменной с, меньше, чем значение состояния, описанное с помощью записи таблицы ari_hash_m[i_min]; и
при этом "j&0×FF" описывает значение индекса правила отображения, описанное с помощью записи таблицы ari_hash_m[i_min].
13. Аудиодекодер по п.1, в котором арифметический декодер настроен оценивать хэш-таблицу, используя алгоритм:
while ((i_max-i_min)>l){
i=i_min+((i_max-i_min)/2);
j=ari_hash_m[i];
if(c<(j>>8))
i_max=i;
else if (c<(j>>8))
i_min=i;
else
return (j&0×FF);
}
return ari_lookup_m[i_max];
при этом с является переменной, которая описывает числовое значение текущего контекста;
при этом i min является переменной, которая инициализируется принимать значение, меньшее на 1, чем значение индекса хэш-таблицы первой записи хэш-таблицы, и выборочно обновляется в зависимости от сравнения с и значения состояния j>>8, которое описано с помощью записи хэш-таблицы j=ari_hash_m[i];
при этом i_max является переменной, которая инициализируется для обозначения значения индекса хэш-таблицы последней записи хэш-таблицы и выборочно обновляется в зависимости от сравнения с и значения состояния j>>8, которое описано с помощью записи хэш-таблицы j=ari_hash_m[i];
при этом i является переменной, которая описывает текущее значение индекса хэш-таблицы;
при этом ari_hash_m обозначает хэш-таблицу;
при этом ari_hash_m(i) обозначает запись хэш-таблицы, имеющую значение индекса хэш-таблицы i;
при этом условие "c<(j>>8)" определяет, что значение состояния, описанное с помощью переменной с, меньше, чем значение состояния, описанное с помощью записи таблицы j=ari_hash_m[i];
при этом условие "c>(j>>8)" определяет, что значение состояния, описанное с помощью переменной с, больше, чем значение состояния, описанное с помощью записи таблицы j=ari_hash_m[i]; и
при этом "j&0×FF" описывает значение индекса правила отображения, описанное с помощью записи таблицы ari_hash_m[i].
14. Аудиокодер (100, 700) для обеспечения кодированной аудиоинформации (112, 712) на основе входной аудиоинформации (110, 710), аудиокодер, включающий:
энергосберегающий конвертер временной области в частотную область (130, 720) для обеспечения аудиопредставления частотной области (132, 722) на основе представления временной области (110, 710) входной аудиоинформации, так, что аудиопредставление частотной области (132, 722) включает набор спектральных значений, и
арифметический кодер (170; 730) настроен кодировать спектральное значение (а) или его ранее обработанную версию, используя кодовое слово переменной длины (acod_m, acod_r), при этом арифметический кодер (170) настроен отображать одно или более спектральное значение (а, b), или значение (m) наиболее значимой битовой плоскости одного или более спектральных значений (а, b) на значение кода (acod_m).
при этом арифметический кодер настроен выбирать правило отображения, описывающее отображение одного или более спектральных значений, или наиболее значимой битовой плоскости одного или более спектральных значений на значение кода в зависимости от состояния контекста (s), которое описано с помощью числового значения текущего контекста (с); и
при этом арифметический кодер настроен определять числовое значение текущего контекста (с) в зависимости от множества ранее кодированных спектральных значений; и
при этом арифметический кодер настроен оценивать хэш-таблицу, записи которой определяют значимые значения состояния среди числовых значений контекста и границы интервалов незначимых значений состояния среди числовых значений контекста, при этом значение индекса правила отображения индивидуально связано с числовым значением контекста, так как является значимым значением состояния, и при этом общее значение индекса правила отображения связано с разными числовыми значениями контекста, находящимися в пределах одного из указанных интервалов, который ограничен указанными границами;
при этом кодированная аудиоинформация включает множество кодовых слов переменной длины.
15. Способ предоставления декодированной аудиоинформации на основе кодированной аудиоинформации, включающий:
предоставление множества декодированных спектральных значений на основе арифметически кодированного представления спектральных значений, содержащегося в кодированной аудиоинформации; и
обеспечение аудиопредставления временной области, используя декодированные спектральные значения, чтобы получить декодированную аудиоинформацию;
при этом предоставление множества декодированных спектральных значений включает выбор правила отображения, описывающего отображение значения кода (acod_m; value) арифметически кодированного представления спектральных значений, на код символа (symbol), представляющий одно или более декодированное спектральное значение или наиболее значимую битовую плоскость одного или более декодированного спектрального значения, в зависимости от состояния контекста, которое описано с помощью числового значения текущего контекста (с); и
при этом числовое значение текущего контекста (с) определяется в зависимости от множества ранее декодированных спектральных значений:
при этом оценивается хэш-таблица, записи которой определяют значимые значения состояния среди числовых значений контекста и границы интервалов незначимых значений состояния среди числовых значений контекста,
при этом значение индекса правила отображения индивидуально связано с числовым значением текущего контекста, так как является значимым значением состояния, и при этом общее значение индекса правила отображения связано с разными числовыми значениями контекста, находящимися в пределах одного из указанных интервалов, который ограничен указанными границами.
16. Способ предоставления кодированной аудиоинформации на основе входной аудиоинформации, включающий:
предоставление аудиопредставления частотной области на основе представления входной аудиоинформации во временной области, используя энергосберегающее преобразование из временной области в частотную, так, что аудиопредставление частотной области включает набор спектральных значений; и
арифметическое кодирование спектрального значения или его ранее обработанной версии, используя кодовое слово переменной длины, при этом одно или более спектральное значение или значение наиболее значимой битовой плоскости одного или более спектральных значений отображается на значение кода;
при этом правило отображения, описывающее отображение одного или более спектральных значений или на более значимой битовой плоскости одного или более спектральных значений на значение кода, выбирается в зависимости от состояния контекста, которое описано с помощью числового значения текущего контекста (с);
при этом числовое значение текущего контекста (с) определяется в зависимости от множества ранее кодированных смежных спектральных значений;
при этом оценивается хэш-таблица, записи которой определяют значимые значения состояния среди числовых значений контекста и границы интервалов незначимых значений состояния среди числовых значений контекста.
при этом значение индекса правила отображения индивидуально связано с числовым значением текущего контекста, так как является значимым значением состояния, и при этом общее значение индекса правила отображения связано с разными числовыми значениями контекста, находящимися в пределах одного из указанных интервалов, который ограничен указанными границами;
при этом кодированная аудиоинформация включает множество кодовых слов переменной длины.
17. Компьютерная программа для осуществления способа по п.15 или 16. когда программа запускается на компьютере.