Кодер, декодер и способ, использующие модовые символы

1. Кодер (110) для кодирования входных данных (D1) для формирования соответствующих кодированных данных (Е2), отличающийся тем, что
кодер (110) выполнен с возможностью:
(a) анализа входных данных (D1) для выявления в них по меньшей мере одного модового символа;
(b) формирования значений данных по меньшей мере первого типа и второго типа из входных данных (D1), при этом значения первого типа включают немодовые символы, а значения данных второго типа включают серии по меньшей мере из одного модового символа, где упомянутый по меньшей мере один модовый символ - это символ, который наиболее часто встречается во входных данных (D1), а немодовые символы - это остальные символы, при этом серии по меньшей мере из одного модового символа указывают на присутствие упомянутого по меньшей мере одного модового символа до или после немодовых символов во входных данных (D1);
(c) формирования информации, указывающей на количество немодовых символов во входных данных (D1), и информации, указывающей по меньшей мере на один модовый символ; и
(d) сборки или кодирования информации, которая указывает по меньшей мере на один модовый символ, информации, которая указывает на количество немодовых символов, значений данных первого типа, включающих немодовые символы, и значений данных второго типа, включающих последовательности по меньшей мере из одного модового символа, для получения кодированных данных (Е2).
2. Кодер (110) по п. 1, отличающийся тем, что кодер (110) выполнен с возможностью вставки значений данных первого типа и значений данных второго типа в один или более потоков данных перед шагом (d).
3. Кодер (110) по п. 2, отличающийся тем, что когда он выполняет вставку в один или более потоков данных, кодер (110) способен выполнять вставку значений данных первого типа и значений данных второго типа в разные потоки данных.
4. Кодер (110) по п. 2 или 3, отличающийся тем, что кодер (110) выполнен с возможностью рекурсивной обработки заданного потока данных, включающего немодовые символы, согласно шагам (a)-(d).
5. Кодер (110) по п. 2, отличающийся тем, что когда он выполняет вставку в один или более потоков данных, кодер (110) способен выполнять вставку значений данных первого типа и значений данных второго типа в чередующемся формате или в планарном формате в один поток данных.
6. Кодер (110) по любому из пп. 2-5, отличающийся тем, что кодер (110) выполнен с возможностью использования по меньшей мере одного метода энтропийного кодирования для сжатия упомянутых одного или более потоков данных, совместно или по отдельности.
7. Кодер (110) по любому из пп. 1-6, отличающийся тем, что кодер (110) выполнен с возможностью сборки или кодирования дополнительной информации, относящейся к передаче по меньшей мере одного из следующего: вероятностные и индексные таблицы, модовые символы, количество модовых символов, указатели на выбранные методы кодирования, значения данных, максимальные индексы различных данных
8. Кодер (110) по п. 7, отличающийся тем, что кодер (110) выполнен с возможностью передачи, по меньшей мере в один декодер, указателя, который указывает по меньшей мере на одно из следующего: выбранный способ кодирования, по меньшей мере один модовый символ, количество модовых символов, содержится ли по меньшей мере один модовый символ в кодированных данных (Е2) или нет.
9. Кодер (110) по п. 7 или 8, отличающийся тем, что кодер (110) выполнен с возможностью передачи упомянутой дополнительной информации в качестве предваряющей информации, до передачи кодированных данных (Е2).
10. Кодер (110) по п. 7 или 8, отличающийся тем, что кодер выполнен (110) с возможностью передачи дополнительной информации вместе с кодированными данными (Е2), как части кодированных данных (Е2).
11. Способ кодирования входных данных (D1) в кодере для формирования соответствующих кодированных данных (Е2), включающий конфигурирование кодера для::
(a) анализа входных данных (D1) для выявления в них по меньшей мере одного модового символа;
(b) формирования значений данных по меньшей мере первого типа и второго типа из входных данных (D1), при этом значения первого типа включают немодовые символы, а значения данных второго типа включают серии по меньшей мере из одного модового символа, где упомянутый по меньшей мере один модовый символ - это символ, который наиболее часто встречается во входных данных (D1), а немодовые символы - это остальные символы, при этом серии по меньшей мере из одного модового символа указывают на присутствие упомянутого по меньшей мере одного модового символа до или после немодовых символов во входных данных (D1);
(с) формирования информации, указывающей на количество немодовых символов во входных данных (D1), и информации, указывающей по меньшей мере на один модовый символ; и
сборки или кодирования информации, которая указывает по меньшей мере на один модовый символ, информации, которая указывает на количество немодовых символов, значений данных первого типа, включающих немодовые символы, и значений данных второго типа, включающих последовательности по меньшей мере из одного модового символа, для получения кодированных данных (Е2).
12. Способ по п. 11, дополнительно включающий вставку значений данных первого типа и значений данных второго типа в один или более потоков данных перед шагом (d).
13. Способ по п. 12, включающий рекурсивную обработку заданного потока данных, включающего немодовые символы, согласно шагам (a)-(d).
14. Декодер (120) для декодирования кодированных данных (Е2) для формирования соответствующих декодированных данных (D3), отличающийся тем, что:
(i) декодер (120) выполнен с возможностью декодирования, из кодированных данных (Е2), информации, которая указывает по меньшей мере на один модовый символ, информации, которая указывает на количество немодовых символов и значений данных по меньшей мере первого типа и второго типа, при этом значения данных первого типа включают немодовые символы, а значения данных второго типа включают серии по меньшей мере из одного модового символа, при этом серии по меньшей мере из одного модового символа указывают на присутствие упомянутого по меньшей мере одного модового символа до или после немодовых символов в исходных входных данных (D1); и
(ii) декодер (120) выполнен с возможностью вставки, до или после немодовых символов, соответствующих серий по меньшей мере из одного модового символа, для формирования декодированных данных (D3).
15. Декодер (120) по п. 14, отличающийся тем, что декодер (120) выполнен с возможностью приема, в кодированных данных (Е2), одного или более потоков данных, включающих значения данных первого типа и значения данных второго типа.
16. Декодер (120) по п. 14 или 15, отличающийся тем, что декодер (120) выполнен с возможностью рекурсивного выполнения шагов (i)-(ii) для каждого модового символа, для формирования декодированных данных (D3), когда в кодированных данных (Е2) использованы более одного модовых символов.
17. Декодер (120) по любому из пп. 14-16, отличающийся тем, что декодер (120) выполнен с возможностью приема дополнительной информации, относящейся по меньшей мере к одному из следующего: вероятностные и индексные таблицы, модовые символы, количество модовых символов, указатели на выбранные методы кодирования, значения данных, максимальные индексы различных данных
18. Декодер (120) по п. 17, отличающийся тем, что декодер (120) выполнен с возможностью приема, от соответствующего кодера, указателя, который указывает по меньшей мере на одно из следующего: выбранный способ кодирования, по меньшей мере один модовый символ, количество модовых символов, содержится ли по меньшей мере один модовый символ в кодированных данных (Е2) или нет.
19. Способ декодирования кодированных данных (Е2) для формирования соответствующих декодированных выходных данных (D3), включающий:
(i) декодирование, из кодированных данных (Е2), информации, которая указывает по меньшей мере на один модовый символ, информации, которая указывает на количество немодовых символов и значений данных по меньшей мере первого типа и второго типа, при этом значения данных первого типа включают немодовые символы, а значения данных второго типа включают серии по меньшей мере из одного модового символа, при этом серии по меньшей мере из одного модового символа указывают на присутствие упомянутого по меньшей мере одного модового символа до или после немодовых символов в исходных входных данных (D1); и
(ii) вставку, до или после немодовых символов, соответствующих серий по меньшей мере из одного модового символа, для формирования декодированных данных (D3).
20. Способ по п. 19, отличающийся тем, что способ включает прием, в кодированных данных (Е2), одного или более потоков данных, включающих значения данных первого типа и значения данных второго типа.
21. Способ по п. 19 или 20, отличающийся тем, что способ включает рекурсивное выполнение шагов (i)-(ii) для каждого модового символа для формирования декодированных данных (D3), когда в кодированных данных (Е2) использованы более одного модовых символов.
22. Кодек (130), включающий по меньшей мере один кодер (110) по любому из пп. 1-10 для кодирования входных данных (D1) для формирования соответствующих кодированных данных (Е2), и по меньшей мере один декодер (120) по любому из пп. 14-18 для декодирования кодированных данных (Е2) для формирования соответствующих декодированных данных (D3).
23. Машиночитаемый носитель, имеющий хранимые на нем машиночитаемые инструкции, которые могут быть исполнены при помощи компьютеризованного устройства, включающего процессорную аппаратуру, для выполнения способа по любому из пп. 11-13 или 19-21.