'

Разработка мультимедийных приложений для MeeGo

Понравилась презентация – покажи это...





Слайд 0

Иванов Сергей, ННГУ ВМК ФОТ БС Разработка мультимедийных приложений для MeeGo


Слайд 1

Библиотеки для разработки Gstreamer – фреймворк написанный с использованием библиотеки Glib FFmpeg – фреймворк на основе библиотек libavcodec и libavformat Media Application FrameWork(MAFW) – фреймворк основанный на gstreamer для работы с мультимедийными сервисами в Maemo/MeeGo Phonon – модуль к библиотеке QT для работы с мультимедиа


Слайд 2

Gstreamer Gstreamer - мультимедийный фреймворк написанный на языке программирования С с использованием библиотеки Glib. Он установлен в MeeGo по умолчанию. Эта библиотека является основой для большинства мультимедийных приложений, таких как видео-редакторы, медиа-плееры, программы записи и т.д.


Слайд 3

Архитектура Gstreamer


Слайд 4

Основа GStreamer - наборы плагинов, которые позволяют использовать различные компоненты в составе программы, расширяя функциональность. Принцип работы GStreamer - конвеер, состоящий из различных плагинов. В конвейере происходит преобразование потоков данных. Простейший конвеер укладывается в формулу «Входящий поток - Обработка - Исходящий поток». Усложнение и, как следствие, расширение функционала происходит во втором звене. Отдельные плагины различаются по выполняемым ими функциям. Для выполнения поставленной задачи плагины отбираются в определенной последовательности, которая и составляет конвейер. Существует более 150 плагинов и постоянно пишутся новые


Слайд 5

protocols handling sources: аудио и видео потоки formats: микшеры, демикшеры, субтитры и т.д codecs: кодеки и декодеры filtres: конверторы, микшеры, эффекты и т.д. sinks: аудио и видео потоки Классификация плагинов Gstreamer:


Слайд 6

Gst-Inspect – выводит информацию об установленных плагинах Gst-Launch – запускает конвеер(pipeline) Gst-Editor – позволяет под “графикой” создавать конвееры из блоков Gst-Xmllaunch – запускает созданные конвееры с помощью gst-editor Gst-Visualise – визуализация при воспроизведении аудио потока Программы для работы с Gstreamer


Слайд 7

Gst-Editor Графический редактор конвееров


Слайд 8

Gst-Visualise Эффекты при воспроизведении аудио


Слайд 9

Использование в своих программах Вызов существующих приложений с необходимыми параметрами Вставка в свой код на C/C++, Python и др.


Слайд 10

FFmpeg FFmpeg - кросс-платформенное решение для записи, конвертации и воспроизведения аудио и видео. Принцип работы FFmpeg отличается от GStreamer, этот фрэймворк также является весьма популярным инструментом разработки.


Слайд 11

FFmpeg – очень быстрый видео и аудио конвертер с возможностью захвата видео и аудио потоков с различных устройств FFplay – простой медиа проигрыватель FFprobe – показывает информацию о мультимедиа потоках FFserver – потоковый сервер для аудио и видео Программы для работы с Ffmpeg:


Слайд 12

Конвертация аудио. ffmpeg -i birds_song.wav birds_song.mp3 Запись видео с вебкамеры. Захватим видео с вебкамеры и сохраним в MPEG-файле: ffmpeg -f video4linux2 -s 320x240 -i /dev/video0 out.mpg А теперь то же самое, но еще и со звуком: ffmpeg -f oss -i /dev/dsp -f video4linux2 -s 320x240 -i /dev/video0 out.mpg Простота использования FFmpeg:


Слайд 13

Однако существует несколько задач, которые не затронуты в предыдущих фрэймворках. Это связано со сложностью новых приложений, в которых пользователям предоставляются все виды возможных на данный момент мультимедийных служб, таких как: UPnP, Last.Fm, Youtube, и т. д. Для удобства написания приложений для этих сервисов в MeeGo существует The Multimedia Applications FrameWork(MAFW). MAFW предоставляет программистам простой и удобный способ создания современных мультимедиа приложений отвечающих сегодняшним запросам пользователей. MAFW по сути есть надстройка более высокого уровня над Gstreamer. В описании к MAFW написано, что она позволяет более "просто" работать с мультимедиа сервисами с которыми "не умеет" работать GStreamer. Media Application FrameWork


Слайд 14

Модуль Qt Phonon Phonon —мультимедийный фреймворк для KDE4, который предоставляет API для разработки мультимедиа-приложений. Входит в состав Qt начиная с версии 4.4.


Слайд 15

Для включения определений классов этого модуля используйте следующую директиву: #include <QtMultimedia> Для линковки приложения с этим модулем, добавьте в ваш qmake файл проекта .pro: QT += multimedia Использование в своем приложении


Слайд 16

Gstreamer – http://www.gstreamer.org FFmpeg –http://www.ffmpeg.org MAFW – http://www.garage.maemo.org/projects/mafw/ Phonon – http://phonon.kde.org/ Qt – http://www.qt.nokia.com Описание классов Qt – http://doc.qt.nokia.com/ Описание на русском – http://doc.crossplatform.ru/ Интересные ссылки:


Слайд 17

У вас есть ко мне вопросы?


×

HTML:





Ссылка: