41
Архитектура Maemo и обработка мультимедиа на мобильных устройствах Александр Боковой Maemo Devices, Nokia 25 марта 2010 г. (Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 1 / 26

Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

  • Upload
    others

  • View
    46

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектура Maemo и обработка мультимедиа намобильных устройствах

Александр Боковой

Maemo Devices, Nokia

25 марта 2010 г.

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 1 / 26

Page 2: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Outline

1 Архитектура Maemo 5

2 Обработка мультимедиа

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 2 / 26

Page 3: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Что такое архитектура?

Средство обмена информацией между заинтересованнымилицамиСпособ записи принятых проектных решений

какие задачи были поставлены?каким образом их решение влияет на всю систему?

Метод поддержки стабильности компонент системы с точкизрения долгосрочного планированияОписание:

структуры компонентпрограммных интерфейсоввзаимодействия компонентпричин, почему это все решает поставленную задачу

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 3 / 26

Page 4: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Что такое архитектура?

Средство обмена информацией между заинтересованнымилицамиСпособ записи принятых проектных решений

какие задачи были поставлены?каким образом их решение влияет на всю систему?

Метод поддержки стабильности компонент системы с точкизрения долгосрочного планированияОписание:

структуры компонентпрограммных интерфейсоввзаимодействия компонентпричин, почему это все решает поставленную задачу

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 3 / 26

Page 5: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Что такое архитектура?

Средство обмена информацией между заинтересованнымилицамиСпособ записи принятых проектных решений

какие задачи были поставлены?каким образом их решение влияет на всю систему?

Метод поддержки стабильности компонент системы с точкизрения долгосрочного планированияОписание:

структуры компонентпрограммных интерфейсоввзаимодействия компонентпричин, почему это все решает поставленную задачу

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 3 / 26

Page 6: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Что такое архитектура?

Средство обмена информацией между заинтересованнымилицамиСпособ записи принятых проектных решений

какие задачи были поставлены?каким образом их решение влияет на всю систему?

Метод поддержки стабильности компонент системы с точкизрения долгосрочного планированияОписание:

структуры компонентпрограммных интерфейсоввзаимодействия компонентпричин, почему это все решает поставленную задачу

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 3 / 26

Page 7: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Стратегия и тактика

Цели архитектуры Maemo:определенностьподдержка нового оборудованиямаксимальное использование свободного ПОгибкий механизм настроек для конкретного решениянепрерывность обновленияхорошая производительностьэффективный процесс разработки

"В пути кормить не обещали"Не надо путать цель и текущее состояниедостижение целей — компромисс между реальностью и желаниемархитектурные цели призваны улучшать реальность

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 4 / 26

Page 8: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Стратегия и тактика

Цели архитектуры Maemo:определенностьподдержка нового оборудованиямаксимальное использование свободного ПОгибкий механизм настроек для конкретного решениянепрерывность обновленияхорошая производительностьэффективный процесс разработки

"В пути кормить не обещали"Не надо путать цель и текущее состояниедостижение целей — компромисс между реальностью и желаниемархитектурные цели призваны улучшать реальность

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 4 / 26

Page 9: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектура в картинках: Android

Android

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 5 / 26

Page 10: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектура в картинках: Moblin

Moblin

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 6 / 26

Page 11: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектура в картинках: Maemo 5

Maemo 5

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 7 / 26

Page 12: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурный скелет

Программныйпродукт образует систему из

программного обеспеченияуправленияконфигурациямисреды разработкивнешних интерфейсов

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 8 / 26

Page 13: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурный скелет: слои и домены

Программноеобеспечение группируется в

слои, длянезависимой разработкимногими поставщикамидомены для определениязон ответственностиразработки

Требования Maemo к слою Base:http://wiki.forum.nokia.com/index.php/Maemo_Base_Port

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 9 / 26

Page 14: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурный скелет: домены и подсистемы

Домены содержат подсистемыи описывают логическисвязанные компоненты.

Исходные пакеты:единицы распространенияисходного кодаисточникбинарных пакетов

Бинарные пакетыединицы распространениябинарного кодасодержатинтерфейсы подсистемы

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 10 / 26

Page 15: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектура в картинках: Maemo 5

Maemo 5

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 11 / 26

Page 16: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Outline

1 Архитектура Maemo 5

2 Обработка мультимедиа

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 12 / 26

Page 17: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Самый популярный звуковоспроизводящий инструмент вмире?Самый популярный звукозаписывающий инструмент в мире?Самый массовый фотоаппарат в мире?Самая массовая видеокамера в мире?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 13 / 26

Page 18: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Самый популярный звуковоспроизводящий инструмент вмире?Самый популярный звукозаписывающий инструмент в мире?Самый массовый фотоаппарат в мире?Самая массовая видеокамера в мире?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 13 / 26

Page 19: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Самый популярный звуковоспроизводящий инструмент вмире?Самый популярный звукозаписывающий инструмент в мире?Самый массовый фотоаппарат в мире?Самая массовая видеокамера в мире?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 13 / 26

Page 20: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Самый популярный звуковоспроизводящий инструмент вмире?Самый популярный звукозаписывающий инструмент в мире?Самый массовый фотоаппарат в мире?Самая массовая видеокамера в мире?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 13 / 26

Page 21: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Мобильный телефонСовременный телефон = графическая рабочая станция 1990-95

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 14 / 26

Page 22: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Эволюция мультимедиа: от потребления к производству

Мобильный телефонСовременный телефон = графическая рабочая станция 1990-95

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 14 / 26

Page 23: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Функциональное развитие: от 770 до N900

АудиоВоспроизведение: громкоговорители, наушники, bluetooth A2DP,FM-передатчикЗапись звука: встроенный микрофон, гарнитура, bluetooth A2DP,FM-приемник

ВидеоВоспроизведение: два WVGA видео-слоя и возможностьаппаратного декодирования видео-форматовЗапись: стандартная веб-камера (640х480), CarlZeiss-сертифицированная 5Мп-камера

ФотоЗапись: стандартная веб-камера (640х480), CarlZeiss-сертифицированная 5Мп-камера

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 15 / 26

Page 24: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Особенности медиа-данных

Современные видео-потоки и изображенияв 4-15 раз превышают размеры экрана мобильного устройствана порядки превышают объемы типичных медиатек 1990-95имеют иную модель использования, чем даже 5-10 лет назадимеют иную модель обработки, чем 10 лет назад, с упором нааппаратное ускорение

Большинство библиотек обработки изображений не изменили

модель представления изображений в памятимодель взаимодействия отдельных элементов алгоритмовобработкиожидания по мощности вычислительных устройств

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 16 / 26

Page 25: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Особенности медиа-данных

Современные видео-потоки и изображенияв 4-15 раз превышают размеры экрана мобильного устройствана порядки превышают объемы типичных медиатек 1990-95имеют иную модель использования, чем даже 5-10 лет назадимеют иную модель обработки, чем 10 лет назад, с упором нааппаратное ускорение

Большинство библиотек обработки изображений не изменили

модель представления изображений в памятимодель взаимодействия отдельных элементов алгоритмовобработкиожидания по мощности вычислительных устройств

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 16 / 26

Page 26: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Особенности национального характера

Кто виноват?Что делать?

Где искать правду?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 17 / 26

Page 27: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Особенности национального характера

Кто виноват?Что делать?

Где искать правду?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 17 / 26

Page 28: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Особенности национального характера

Кто виноват?Что делать?

Где искать правду?

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 17 / 26

Page 29: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Обработка мультимедиа в GNU/Linux

Запись и воспроизведение аудио потоковVideo4LinuxALSAPulseAudio

Запись и воспроизведение видео-потоковVideo4Linux

Обработка изображенийGEGL, Qt, OpenCV, ImageMagick, ...

Визуализация изображенийGTK+, GDKPixBuf, Qt, Xlibи многое другое

Высокоуровневое управление мультимедиа-ресурсами ипроцессами

GStreamer

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 18 / 26

Page 30: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурное развитие: от 770 до N900

Мультимедийные приложения на Nokia 770

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 19 / 26

Page 31: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурное развитие: от 770 до N900

Мультимедийные приложения на Nokia N800

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 20 / 26

Page 32: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Архитектурное развитие: от 770 до N900

Мультимедийные приложения на Nokia N900

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 21 / 26

Page 33: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера

Простая арифметика:5Мп фото = 13х WVGA (800x480, 0.3Мп) в пикселях, 19х в байтах720p видео = 2.4x WVGA в пикселях и байтахWVGA = 3x кэш L2 Cortex-A8 в байтах

Простые выводы:обработка фотографий и показ видео означает для другихприложений работу напрямую с ОЗУ без кэширования данныхрост аппаратной мощности (ЦПУ, скорость пропускнойспособности шин) компенсируется ростом объемовобрабатываемых данныхнеобходимы более "умные"алгоритмы для обработки изображенийпо частямнеобходим иной подход к проектированию контракта междуприложением и библиотеками

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 22 / 26

Page 34: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера

Простая арифметика:5Мп фото = 13х WVGA (800x480, 0.3Мп) в пикселях, 19х в байтах720p видео = 2.4x WVGA в пикселях и байтахWVGA = 3x кэш L2 Cortex-A8 в байтах

Простые выводы:обработка фотографий и показ видео означает для другихприложений работу напрямую с ОЗУ без кэширования данныхрост аппаратной мощности (ЦПУ, скорость пропускнойспособности шин) компенсируется ростом объемовобрабатываемых данныхнеобходимы более "умные"алгоритмы для обработки изображенийпо частямнеобходим иной подход к проектированию контракта междуприложением и библиотеками

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 22 / 26

Page 35: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера

Video4Linuxнизкоуровневый интерфейс к драйверам видео-устройств

GStreamerвысокоуровневый интерфейс обработки медиа-потоковне поддерживает типичные режимы фотоаппарататребует написания собственных специализированных модулей

Решение:реализация “фотоинтерфейса” GstPhotographyобеспечивает типичные высокоуровневые операции

настройка режимов (видоискатель, съемка изображения, съемкавидео)настройка автофокуса, баланса белого, экспозиции, ...

стандартная настройка GStreamer трех основных режимов длякамеры (видоискатель, режими съемки) в рамках GDigicam

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 23 / 26

Page 36: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера

Video4Linuxнизкоуровневый интерфейс к драйверам видео-устройств

GStreamerвысокоуровневый интерфейс обработки медиа-потоковне поддерживает типичные режимы фотоаппарататребует написания собственных специализированных модулей

Решение:реализация “фотоинтерфейса” GstPhotographyобеспечивает типичные высокоуровневые операции

настройка режимов (видоискатель, съемка изображения, съемкавидео)настройка автофокуса, баланса белого, экспозиции, ...

стандартная настройка GStreamer трех основных режимов длякамеры (видоискатель, режими съемки) в рамках GDigicam

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 23 / 26

Page 37: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера: галерея

Галерея фотографий, три основных варианта использованияизображения:

"бесконечное"полотно с иконками-отпечаткамиполноэкранный просмотр одной фотографииизучение деталей с углублением в реальное изображение

Простые выводы:оригинальное 5Мп изображение нужно только в одном изосновных режимов работы программыглавный режим – просмотр полотна, нужны толькоиконки-отпечатки (124x124)полноэкранный просмотр – отпечаток размером WVGA (800x480)необходим общесистемный механизм создания отпечатков разныхразмеров

Решение: hildon-thumbnailer (Maemo 5), tumbler (Harmattan)

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 24 / 26

Page 38: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как фотоаппарат и видео-камера: галерея

Галерея фотографий, три основных варианта использованияизображения:

"бесконечное"полотно с иконками-отпечаткамиполноэкранный просмотр одной фотографииизучение деталей с углублением в реальное изображение

Простые выводы:оригинальное 5Мп изображение нужно только в одном изосновных режимов работы программыглавный режим – просмотр полотна, нужны толькоиконки-отпечатки (124x124)полноэкранный просмотр – отпечаток размером WVGA (800x480)необходим общесистемный механизм создания отпечатков разныхразмеров

Решение: hildon-thumbnailer (Maemo 5), tumbler (Harmattan)

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 24 / 26

Page 39: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как видео-камера и медиа-проигрыватель

Медиа-проигрыватель, работа с разными источникамимедиа-данных

локальный диск, DLNA, социальные сервисы (Youtube, Flickr, ...)коллекции, списки воспроизведения, разные режимыпредставления

Простые выводы:необходимо отделить воспроизведение от источника данныхнеобходимо отделить локальное представление данных отисточниканеобходимо обрабатывать мета-информацию об источниках дляведения списков и коллекций по различным критериямнеобходим общесистемный механизм адресации иструктурирования медиа-данных и других объектов

Решение: Media Application Framework (MAFW), TrackerMAFW добавляет управление источниками и спискамивоспроизведения, расширяя возможности GStreamerTracker индексирует мета-информацию о всех доступных ресурсахв системе и обеспечивает семантический поиск

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 25 / 26

Page 40: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Телефон как видео-камера и медиа-проигрыватель

Медиа-проигрыватель, работа с разными источникамимедиа-данных

локальный диск, DLNA, социальные сервисы (Youtube, Flickr, ...)коллекции, списки воспроизведения, разные режимыпредставления

Простые выводы:необходимо отделить воспроизведение от источника данныхнеобходимо отделить локальное представление данных отисточниканеобходимо обрабатывать мета-информацию об источниках дляведения списков и коллекций по различным критериямнеобходим общесистемный механизм адресации иструктурирования медиа-данных и других объектов

Решение: Media Application Framework (MAFW), TrackerMAFW добавляет управление источниками и спискамивоспроизведения, расширяя возможности GStreamerTracker индексирует мета-информацию о всех доступных ресурсахв системе и обеспечивает семантический поиск

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 25 / 26

Page 41: Архитектура Maemo и обработка мультимедиа на ... · 2014-02-05 · Архитектура Maemo и обработка мультимедиа на

Вопросы?

Спасибо!

[email protected]

(Maemo Devices, Nokia) Обработка мультимедиа 25 марта 2010 г. 26 / 26