Презентация "Разработка мультимедийных приложений для MeeGo" - скачать презентации по Информатике

Содержание

Слайд 2

Библиотеки для разработки Gstreamer – фреймворк написанный с использованием библиотеки Glib

Библиотеки для разработки

Gstreamer – фреймворк написанный с использованием библиотеки Glib
FFmpeg –

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

Gstreamer Gstreamer - мультимедийный фреймворк написанный на языке программирования С с

Gstreamer

Gstreamer - мультимедийный фреймворк написанный на языке программирования С с использованием

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

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

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

Слайд 5

Основа GStreamer - наборы плагинов, которые позволяют использовать различные компоненты в

Основа GStreamer - наборы плагинов, которые позволяют использовать различные компоненты в

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

Существует более 150 плагинов и постоянно пишутся новые

Слайд 6

protocols handling sources: аудио и видео потоки formats: микшеры, демикшеры, субтитры

protocols handling
sources: аудио и видео потоки
formats: микшеры, демикшеры, субтитры

и т.д
codecs: кодеки и декодеры
filtres: конверторы, микшеры, эффекты и т.д.
sinks: аудио и видео потоки

Классификация плагинов Gstreamer:

Слайд 7

Gst-Inspect – выводит информацию об установленных плагинах Gst-Launch – запускает конвеер(pipeline)

Gst-Inspect – выводит информацию об установленных плагинах
Gst-Launch – запускает конвеер(pipeline)
Gst-Editor –

позволяет под “графикой” создавать конвееры из блоков
Gst-Xmllaunch – запускает созданные конвееры с помощью gst-editor
Gst-Visualise – визуализация при воспроизведении аудио потока

Программы для работы с Gstreamer

Слайд 8

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

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

Слайд 9

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

Gst-Visualise

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

Слайд 10

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

Использование в своих программах

Вызов существующих приложений с необходимыми параметрами
Вставка в свой

код на C/C++, Python и др.
Слайд 11

FFmpeg FFmpeg - кросс-платформенное решение для записи, конвертации и воспроизведения аудио

FFmpeg

FFmpeg - кросс-платформенное решение для записи, конвертации и воспроизведения аудио и

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

FFmpeg – очень быстрый видео и аудио конвертер с возможностью захвата

FFmpeg – очень быстрый видео и аудио конвертер с возможностью захвата

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

Программы для работы с Ffmpeg:

Слайд 13

Конвертация аудио. ffmpeg -i birds_song.wav birds_song.mp3 Запись видео с вебкамеры. Захватим

Конвертация аудио.
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:

Слайд 14

Однако существует несколько задач, которые не затронуты в предыдущих фрэймворках. Это

Однако существует несколько задач, которые не затронуты в предыдущих фрэймворках. Это

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

Media Application FrameWork

Слайд 15

Модуль Qt Phonon Phonon —мультимедийный фреймворк для KDE4, который предоставляет API

Модуль Qt Phonon

Phonon —мультимедийный фреймворк для KDE4, который предоставляет API для разработки

мультимедиа-приложений.
Входит в состав Qt начиная с версии 4.4.
Слайд 16

Для включения определений классов этого модуля используйте следующую директиву: #include Для

Для включения определений классов этого модуля используйте следующую директиву:
#include
Для

линковки приложения с этим модулем, добавьте в ваш qmake файл проекта .pro:
QT += multimedia

Использование в своем приложении

Слайд 17

Gstreamer – http://www.gstreamer.org FFmpeg –http://www.ffmpeg.org MAFW – http://www.garage.maemo.org/projects/mafw/ Phonon – http://phonon.kde.org/

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/

Интересные ссылки: