КОДИРОВАНИЕ/ДЕКОДИРОВАНИЕ ЦИФРОВОГО МУЛЬТИМЕДИА НА ОСНОВЕ ПЕРЕКРЫВАЮЩЕГОСЯ SIMD-ПРЕОБРАЗОВАНИЯ

1. Способ кодирования цифровых мультимедийных данных, содержащий этапы, на которых:
переотображают (710, 1000, 1001) компоненты блоков входных цифровых мультимедийных данных (1010) в набор векторов (1020, 800), к которым операции (720, 730, 740, 750, 760, 1410, 1420, 1430, 1440) преобразования могут быть применены по компонентам блоков на основе архитектуры с одним потоком команд и множественными потоками данных;
применяют преобразование (350) к блокам цифровых мультимедийных данных, чтобы сформировать набор коэффициентов (360, 362) преобразования для соответствующих блоков, при этом применение преобразования содержит этап, на котором выполняют, по меньшей мере, одну операцию на основе архитектуры с одним потоком команд и множественными потоками данных над векторами компонентов блока; и
кодируют коэффициенты преобразования (380) в сжатом потоке битов.
2. Способ по п.1, в котором преобразование является перекрывающимся биортогональным преобразованием, содержащим фильтр перекрытия и блочное преобразование, при этом блочное преобразование применяют к блокам входных цифровых мультимедийных данных, а фильтр перекрытия применяют к областям перекрытия, перекрывающим соседние блоки; и
в котором упомянутое переотображение группирует компоненты в векторы, к которым, по меньшей мере, одна операция фильтра перекрытия и, по меньшей мере, одна операция блочного преобразования могут быть применены по компонентам на основе архитектуры с одним потоком команд и множественными потоками данных; и
в котором упомянутое применение преобразования содержит этап, на котором применяют упомянутую, по меньшей мере, одну операцию фильтра перекрытия и упомянутую, по меньшей мере, одну операцию блочного преобразования на основе архитектуры с одним потоком команд и множественными потоками данных к векторам.
3. Способ по п.2, в котором, по меньшей мере, одна операция фильтра перекрытия и, по меньшей мере, одна операция блочного преобразования, каждая, содержат преобразование Адамара 2×2.
4. Способ по п.2, в котором фильтр перекрытия и блочное преобразование, каждые, содержат операцию вращения, применяемую к компонентам на основе последовательных команд.
5. Способ по п.2, в котором векторами являются векторы с 4-мя компонентами.
6. Способ по п.1, в котором преобразование является одномерным перекрывающимся преобразованием, содержащим фильтр перекрытия и блочное преобразование, при этом блочное преобразование применяют к блокам входных цифровых мультимедийных данных, а фильтр перекрытия применяют к областям перекрытия, перекрывающим соседние блоки; и
в котором упомянутое переотображение группирует компоненты в векторы, к которым, по меньшей мере, одна операция фильтра перекрытия и, по меньшей мере, одна операция блочного преобразования могут быть применены по компонентам на основе архитектуры с одним потоком команд и множественными потоками данных; и
в котором упомянутое применение преобразования содержит этап, на котором применяют упомянутую, по меньшей мере, одну операцию фильтра перекрытия и упомянутую, по меньшей мере, одну операцию блочного преобразования на основе архитектуры с одним потоком команд и множественными потоками данных к векторам.
7. Способ по п.6, в котором, по меньшей мере, одна операция фильтра перекрытия и, по меньшей мере, одна операция блочного преобразования, каждые, содержат стадию "бабочки".
8. Способ по п.6, в котором фильтр перекрытия и блочное преобразование, каждые, содержат операцию вращения, применяемую к компонентам на основе последовательных команд.
9. Способ по п.6, в котором векторами являются векторы с 2-мя компонентами.
10. Способ по п.6, в котором цифровые мультимедийные данные являются двумерными данными, и в котором преобразование является одномерным преобразованием, при этом способ дополнительно содержит этапы, на которых:
выполняют упомянутое переотображение и применяют преобразование к строкам двумерных мультимедийных данных; и
выполняют упомянутое переотображение и применяют преобразование к столбцам двумерных мультимедийных данных.
11. Способ декодирования цифровых мультимедийных данных, закодированных согласно способу по п.1, при этом способ декодирования содержит этапы, на которых:
декодируют коэффициенты преобразования из сжатого потока битов;
упорядочивают декодированные коэффициенты преобразования в компоновке векторов, к которым могут быть применены операции инверсии преобразования по коэффициентам преобразования на основе архитектуры с одним потоком команд и множественными потоками данных;
применяют инверсию преобразования к блокам декодированных коэффициентов преобразования, чтобы восстановить представление цифровых мультимедийных данных в блоках,
при этом применение преобразования содержит этап, на котором выполняют, по меньшей мере, одну операцию на основе архитектуры с одним потоком команд и множественными потоками данных над векторами коэффициентов преобразования; и
переотображают компоненты векторов к начальной компоновке цифровых мультимедийных данных.
12. По меньшей мере, один машиночитаемый носитель данных, несящий кодированный поток битов, закодированный согласно способу по п.1.
13. Цифровой мультимедийный кодер и/или декодер, содержащий:
буфер хранения данных для сохранения цифровых мультимедийных данных (310, 320), которые должны быть закодированы и/или декодированы;
процессор (1710), запрограммированный с возможностью, чтобы:
упорядочивать элементы блоков (1010) цифровых мультимедийных данных в/из набора векторов (800, 1020), к которым, по меньшей мере, некоторые операции (720, 730, 740, 750, 760, 1410, 1420, 1430, 1440) преобразования могут быть применены по компонентам блоков на основе архитектуры с одним потоком команд и множественными потоками данных; и
применять преобразование (350) к блокам цифровых мультимедийных данных, при этом применение преобразования содержит выполнение, по меньшей мере, нескольких операций на основе архитектуры с одним потоком команд и множественными потоками данных над векторами блока; и
кодировать (380)/декодировать (420) цифровые мультимедийные данные в/из сжатого потока битов.
14. Цифровой мультимедийный кодер и/или декодер по п.13, в которых преобразование является перекрывающимся биортогональным преобразованием, имеющим блочное преобразование, применяемое к соседним блокам цифровых мультимедийных данных, и фильтр перекрытия, применяемый по областям перекрытия, охватывающим соседние блоки, при этом упомянутый процессор упорядочивает элементы блоков в векторы, к которым, по меньшей мере, некоторые операции фильтра перекрытия и преобразования могут быть применены на основе архитектуры с одним потоком команд и множественными потоками данных.
15. Цифровой мультимедийный кодер и/или декодер по п.14, в которых перекрывающееся биортогональное преобразование является одномерным, и в котором фильтр перекрытия и блочное преобразование, каждые, содержат стадии "бабочки", операции которых применяются к векторам на основе архитектуры с одним потоком команд и множественными потоками данных.
16. Цифровой мультимедийный кодер и/или декодер по п.14, в которых перекрывающееся биортогональное преобразование является двумерным, и в котором фильтр перекрытия и блочное преобразование, каждые, содержат преобразования Адамара 2×2, операции которых применяются к векторам на основе архитектуры с одним потоком команд и множественными потоками данных.
17. Цифровой мультимедийный кодер и/или декодер по п.14, в которых процессор дополнительно запрограммирован так, чтобы выполнять упомянутое упорядочение элементов в ходе стадии преобразования цветов цифровых мультимедийных данных между форматами цветов.
18. По меньшей мере, один машиночитаемый носитель данных, хранящий машиноисполняемую программу обработки цифрового мультимедиа для осуществления способа обработки цифровых мультимедийных данных, при этом способ содержит этапы, на которых:
переотображают (710, 1000, 1001) компоненты блоков цифровых мультимедийных данных (1010) в набор векторов (1020, 800), к которым операции (720, 730, 740, 750, 760, 1410, 1420, 1430, 1440) преобразования могут быть применены по компонентам блоков на основе архитектуры с одним потоком команд и множественными потоками данных;
применяют преобразование (350) к блокам цифровых мультимедийных данных, чтобы сформировать набор коэффициентов (360, 362) преобразования для соответствующих блоков, при этом применение преобразования содержит этап, на котором выполняют, по меньшей мере, несколько операций на основе архитектуры с одним потоком команд и множественными потоками данных над векторами компонентов блока; и
кодируют (380)/декодируют (420) цифровые мультимедийные данные в/из сжатого потока битов.
19. По меньшей мере, один машиночитаемый носитель записи по п.18, в котором преобразование является перекрывающимся биортогональным преобразованием, содержащим фильтр перекрытия и блочное преобразование, и упомянутое применение преобразования содержит этап, на котором выполняют, по меньшей мере, несколько операций как фильтра перекрытия, так и блочного преобразования на основе архитектуры с одним потоком команд и множественными потоками данных над векторами.
20. По меньшей мере, один машиночитаемый носитель записи по п.19, в котором упомянутое применение преобразования содержит этап, на котором выполняют, по меньшей мере, несколько операций вращения как фильтра перекрытия, так и блочного преобразования на последовательной основе.