ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ММ |
Классы программного обеспечения
ММТ
Классы программного
обеспечения мультимедиа:
-
Микропрограммы
мультимедийных устройств
-
Драйверы аудио и
видеоустройств устройств
-
Медиасерверы
-
Мультимедийные операционные системы
-
Мультимедийные
программные среды
-
Утилиты для
мультимедиа
-
Медиаредакторы
-
Медиаконверторы
-
Медиаплееры
-
Плагины для мультимедийных
программ
-
Мультимедийные приложения
-
Программные средства
создания мультимедийных презентаций.
|
Назначение программного обеспечения
ММТ
Программное обеспечение
мультимедиа предназначено для работы:
|
Микропрограммы
мультимедийных устройств
Микропрограмма (firmware) — системное программное
обеспечение, встроенное в аппаратное
устройство («зашитое», хранящееся в энергонезависимой
памяти) и управляющая его работой.
Микропрограммы («прошивки») применяются везде, где применяются
микропроцессоры: в мобильных телефонах, фото- и видеокамерах, телевизорах, платёжных картах и т. п.
«Прошивки» могут создаваться «с нуля» для данного конкретного типа
устройства, либо иметь в основе готовую операционную систему, как правило, с
открытым исходным кодом (GNU/Linux).
Для написания исходных текстов программ используются ассемблеры
или
язык Си.
Применение микропрограмм удешевляет
конструирование и изготовление устройства, но разработка «прошивки» обычно
занимает большее время и стоит дороже, чем разработка аппаратного
обеспечения прибора. Фирмы-производители, как правило, очень ревностно следят за
сохранностью «прошивок»: лицензионное соглашение с потребителем запрещает
извлекать и изучать
«прошивки» тем или иным способом.
Наушники Sennheiser
PXC 450 используют
программные технологии для устранения окружающего шума.
-
NoiseGard 2.0 устраняет
внешние звуки противофазой: улавливает звук,
рассчитывает волну, разворачивает ее в противофазу и воспроизводит с
нужной громкостью внутри. После сложения волн остается тишина.
-
TalkThrough отделяет
шумы от человеческой речии подавляет их обеспечивая
хорошую слышимость речи.
|
Медиадрайверы
Драйверы для видеокарт
служат для программного управления параметрами видеокарты (установка
разрешения, частоты обновления экрана, параметров ускорения видеокарты и пр).
Обновленные версии
драйверов позволяют устранить
какие-либо проблемы с
видеокартой (мерцание экрана, возможна непроизвольная перезагрузка и др.)
и открыть дополнительные возможности или функции (повышение
производительности, возможности разгона, поддержка новых опций).
Лидеры
в сфере разработки видеокарт - Nvidia (www.nvidia.ru)
и ATI (www.ati.amd.com),
постоянно выпускают и предлагают свежие версии видео
драйверов для своих видео карт (программа установки
автоматически определяет модель и устанавливает нужный видео драйвер).
Драйверы для
аудиокарт служат для программного управления
параметрами аудиокарты
(полоса пропускания,
число каналов, многопоточность, распознавание речи и др.).
Realtek High Definition
Audio Codec Driver – звуковые драйверы для аудиоустройств Realtek (HD
Audio) для
Win 2K, XP, Vista, Windows 7, Linux
Преимуществами спецификации
High Definition Audio являются: полноценная поддержка новых форматов звука,
более высокая частота пропускания, поддержка подключения аудио-устройств по
технологии Plug and Play, более точное распознавание речи и ее ввод (96.8 Мб)
|
Медиасерверы
Клиент-сервер (Client-server) —
вычислительная или сетевая архитектура, в которой задания или сетевая
нагрузка распределены между поставщиками услуг (сервисов), называемыми
серверами, и заказчиками услуг, называемыми клиентами. Клиенты и
серверы взаимодействуют через компьютерную сеть и могут быть как различными
физическими устройствами, так и программным
обеспечением.
Медиасервер — это
специализированный сервер, обрабатывающий AV сигналы, медиа-потоки и файлы в
соответствии с расписаниями записи и воспроизведения, клиентскими запросами,
поддерживающий обработку потоковых данных и основные протоколы передачи
аудио/видео данных через интерфейсы ввода-вывода аудиовидеоданных (например,
PAL/NTSC, HD/SD SDI, HDMI) или через сеть.
Медиа-серверы используются в широком круге
задач телевизионными и Internet-вещательными компаниями, кабельными и
спутниковыми операторами ТВ и радиовещания, производителями медиа-контента и
локальными вещателями (гостиницы, аэропорты, супермаркеты, выставки, музеи,
клубы, видеоэкраны и пр.)
Основные функции:
Adobe Flash Media Server
— сервер медиа
контента, работает со
средой Flash Player и позволяет создавать мультимедийные,
многопользовательские RIAs (Rich Internet Applications).
Используется для:
-
Live Video — позволяет транслировать
видео с веб-камеры для других пользователей.
-
Video on Demand — потоковое видео по
запросу.
-
Real Time Communication — применяется
в приложениях, в которых требуется связь между несколькими клиентами —
видео-конференции, чаты или многопользовательские игры.
Другие медиасервера:
-
Wowza Media Server
-
Red5
-
RTMP
-
VoD
|
Мультимедийные операционные системы
Операционные системы 70–80-х г.г. 20
века развивались в направлении повышения гибкости
управления ресурсами и не были рассчитаны на специфические требования,
свойственные мультимедиа-технологиям.
В основу мультимедийных ОС легла концепция
Media OS - совокупность требований к операционной системе,
предназначенной для работы с большими объемами цифровых данных:
-
встроенная поддержка симметричной
многопроцессорной обработки ОС
-
вытесняющая многозадачность (позволяющая
эффективно работать с несколькими приложениями одновременно),
-
многопотоковость (возможность выполнения
множества независи-мых процессов внутри одного приложения),
-
64-разрядная файловая система (обеспечивающая
улучшенные средства доступа к дискам большого объема),
-
внутренняя архитектура
клиент-сервер и
др.
Описывающий концепцию Media OS официальный
документ здесь: www.be.com/products/beos/mediaos.html.
Первые МMОС:
-
NeхtStep
разрабатывалась для для компьютера NeXT, который выпускался с 1989 г. по
1993 г., но вследствие несовместимости с иными моделями и дороговизны
выпуск был прекращен, а фирма перепрофилирована в разработчика
системного ПО.
-
BeOS
разрабатывалась для компьютера BeBox (разработка аппаратной части не
завершена и прекращена в 1996 г. ).
Начинали разрабаты-вать и BeOS и NeXTStep
выходцы из Apple Computer
GeeXboX –
операционная система для
организации HTPC (Home
Theatre Personal Computer). GeeXboX
позволяет создать
домашний кинотеатр можно построить на базе обычного ПК (он
подключается к телевизору или проектору, акустике или ресиверу). GeeXboX –
специализированный вариант Linux. В нее уже встроено все необходимое для
воспроизведения любых аудио- и видеофайлов: драйвера для всего
распространенного оборудования, кодеки, плееры и т.д.
|
Медийные
возможности Microsoft Windows 7
Windows 7
имеет всестороннюю поддержку
мультимедиа-технологий:
Windows Media
Center входит в состав некоторых
выпусков Windows 7.
Windows Media Center
позволяет подключить к компьютеру телевизор высокой четкости и пульт ДО,
стандартные монитор, клавиатуру и мышь.
Windows Media Center
позволяет:
-
использовать
цифровые музыкальные композиции, фотографии и видеозаписи,
-
смотреть
потоковое мультимедиа по Интернету
-
управлять цифровыми правами на медийный контент
-
покупать
медийный контент в электронных магазинах
-
использовать
Библиотеку проигрывателя Windows Media
-
записывать
компакт-диски и DVD-диски и др.
Проблемы с выводом
звука:
-
В
Windows XP через интерфейс DirectSound прикладные программы имели прямой доступ к
аппаратным ресурсам звуковой карты - микширование, преобразование частоты
дискретизации, различные эффекты.
-
Windows
Vista и Windows 7
новая подсистема
ввода/вывода звука - WASAPI
. Все программы, оптимизированные под
DirectSound подключаются в
общем режиме WASAPI Shared, использующем
для всех преобразований только ресурсы центрального процессора.
-
Поддержка
высококачественного режима WASAPI Exclusive реализована в
приложениях: foobar2000 (с плагином ASIO
Output или WASAPI
output support) и Media Player Classic
HomeCinema (с плагином ReClock),
AIMP.
|
Оптимизация
обработки мультимедиа в Windows 8
В Windows 8 оптимизированы
программные декодеры, за счёт чего уменьшилась загрузка процессора,
потребление памяти и пр.
-
Производительность декодирования видео выросла за счёт оптимизации
программных декодеров для H.264 и VC-1, а улучшение в обработке
видео с веб-камеры — за счёт перехода с DirectShow Capture API на
новый, значительно более эффективный Windows 8 Media Foundation
Capture API.
-
Существенно
изменен алгоритм обработки аудиоконтента перед воспроизведением, что
значительно уменьшило нагрузку на CPU и расход аккумулятора на
мобильных устройствах. Сделано это за счёт увеличенной буферизации —
разбиения аудиозаписи на бóльшие фрагменты, которые заранее
обрабатываются процессором, а потом он переходит в спящий режим.
Продолжительность промежутков спящего режима
CPU увеличилась в 100 раз — с 10 миллисекунд до более 1 секунды, что
кардинально снижает энергопотребление аудиоплеера.
-
Ещё одной важной
оптимизацией стало внедрение в ОС передачи и рендеринга аудио и
видео с низкой задержкой (low-latency media capture and rendering)
чтобы гарантировать идеальную работу чата в Skype, в том числе
видеочата в режиме HD.
Использование CPU при декодировании видео 720p VC1/H.264
и предпросмотре с веб-камеры
Рекомендуемыми
видеокодеками для использования в приложениях Windows 8 являются H.264 и
VC-1. |
Мультимедийные
программные среды
Фреймворк
(framework)
-
постоянная
часть
программного проекта,
несущая в себе гнезда, в которых размещается
переменная часть (сменные модули).
Фреймворк может
включать вспомогательные программы, библиотеки
кода, язык сценариев и другое ПО, облегчающее разработку и объединение
разных компонентов большого программного проекта.
Для обеспечения
каркаса обычно используются техники объектно-ориентированного
программирования (наследования
от базовых классов и др.).
.NET Framework
(основной продукт Microsoft для разработки
ПО) - программная платформа, на
основе исполняющей среды
Common Language Runtime (CLR), способная выполнять
десктопные программы и серверные веб-приложения,
поддерживает разные
языки программирования
12.04.2010
Выпущена окончательная версия
.NET Framework 4.0
(вместе
с Visual Studio 2010).
Мультимедийный
фреймворк (multimedia framework) —
фреймворк для работы с аудио- и видеоданными. Обычно, состоит из системы
плагинов (кодеков, фильтров, (де-)мультиплексаторов,
вывода на экран, работы с файлами и др.), которые
можно соединить в граф для конвейерной обработки аудио/видео потока.
Мультимедийные
фреймворки работают и с файлами, и с сетевыми потоками, и позволяют
пользователю устанавливать свои собственные плагины.
Примеры дmultimedia framework
для различных операционных систем:
-
Windows Media
(для Microsoft Windows),
-
QuickTime
для (Mac OS X),
-
Adobe Flash
(кроссплатформенный)
-
Microsoft
Silverlight (кроссплатформенный)
-
Java Media
Framework (кроссплатформенный)
Adobe Flash —
мультимедийная платформа для создания веб-приложений или мультимедийных
презентаций. Широко используется для создания рекламных баннеров,
анимации, игр, воспроизведения на веб-страницах видео- и
аудиозаписей. Платформа включает в себя ряд средств разработки (Adobe
Flash Professional и Adobe
Flash Builder) и Adobe
Flash Player. Adobe Flash
позволяет работать с векторной, растровой и ограниченно с трёхмерной
графикой, а также поддерживает двунаправленную потоковую трансляцию
аудио и видео.
Стандартным
расширением для скомпилированных flash-файлов (анимации, игр и
интерактивных приложений) является .SWF (Shockwave Flash
или Small Web Format). Видеоролики в формате Flash представляют собой
файлы с расширением FLV (при этом Flash в данном случае используется
только как контейнер для видеозаписи).
Расширение FLA соответствует формату рабочих файлов в среде разработки.
Silverlight
- программная платформа,
позволяющая создавать сложные мультимедийные приложения и запускать их в окне веб-браузера. Microsoft
Silverlight включаюет в себя плагин для браузеров, который позволяет запускать приложения, содержащие анимацию, векторную
графику и аудио-видео
ролики, что характерно для RIA (Rich
Internet application).
Rich Internet
application (RIA) — это приложение, доступное в браузере через Интернет,
насыщенное функциональностью традиционных настольных приложений
Как правило,
приложение RIA:
-
передаёт
веб-клиенту необходимую часть пользовательского интерфейса, оставляя
большую часть данных (ресурсы программы, данные и пр.) на сервере;
-
запускается в
браузере и не требует дополнительной установки ПО;
-
запускается
локально в среде безопасности, называемой «песочница» (sandbox).
Adobe Integrated Runtime (AIR) —
это платформо-независимая среда для
запуска приложений, позволяющая использовать HTML/CSS, Ajax, Adobe
Flash для переноса веб-приложений (в
т. ч. Rich
Internet Applications) на настольные
ПК.
-
AIR
позволяет перенести готовое HTML-приложение
на компьютер пользователя.
-
Приложения могут функционировать без подключения к
Интернет,
отправляя накопленные в процессе работы данные в момент появления
связи.
-
Свыше 180 готовых программ, разработанных с использованием Adobe AIR,
доступны для скачивания на сайте Adobe AIR Marketplace.
|
Утилиты для
мультимедиа
Риппер (ripper, grabber, extractor) — программа для извлечения цифровой
звуковой информации в
неструктурированном (raw)
формате, записанной на Audio-CD,
в файл или
на стандартный
вывод (stdout).
Большинство рипперов позволяют автоматически
добавлять в полученные файлы метаданные.
Сплиттеры
(разделители) позволяют извлекать медиаданные из контейнеров
Эмулятор CD/DVD-приводов
-
DAEMON Tools Lite
-
Alcohol
120%
Программы захвата для записи всего, что происходит на экране монитора, в
файл
-
CamStudio
-
HyperCam
записывает действия на экране,
видео изображение и звук в AVI, WMV/ASF файлы с возможностью
дальнейшего редактирования записанного материала
-
UVScreenCamera
запоминает все, что происходит на экране, включая движения курсора
мыши и звук, и сохраняет в очень компактный файл с расширением uvf
или exe.
Видео-
аудиоколлекции
-
MediaMonkey (Portable)
- позволяет упорядочить коллекцию музыки/видео - быстро отредактировать теги,
найти неполные или повторяющиеся файлы, переконвертировать файлы в другие
форматы, записать контент на CD/DVD или загрузить в плее
-
eXtreme Movie Manager
Программа для ведения домашней фильмотеки с очень широкими возможностями,
включая автоматизацию создания базы данных
Маскировка голоса
Наборы кодеков
Программа записи CD и DVD, Blu-Ray и HD-DVD.
Программы для работы с веб-камерой с поддержкой автовключения и добавления
видеоэффектов
Информационные
программы:
-
GPU-Z 0.5.7 RU
Показывает детальную информацию о видеокарте
-
VideoInspector
Отображает информацию о видеофайле (видео- и аудиокодеки, разрешения и др.)
Программы для
оптимизации оборудования
-
GPU-Z (Portable)
Отображает детальную информацию о видеокарте. Поддерживаются карты на базе
чипсетов NVIDIA, Intel и ATI
-
Movie Label
Программа с мощными возможностями по созданию каталога видеоколлекции
-
MSI Afterburner
Программа для настройки, мониторинга и разгона видеокарт
MKV Toolnix -
кроссплатформенное приложение, представляющее собой функциональный набор
инструментов для работы с файлами формата MKV (Matroska). Программа
позволяет добавлять, извлекать, удалять звуковые дорожки и субтитры,
редактировать (разбивать/объединять) видео файлы, а также осуществлять
конвертацию файлов в формате DivX и AVI в MKV. Поддерживается работа с
наиболее популярными кодеками и форматами субтитров.
VideoCacheView - крошечная
(77 КБ) бесплатная утилитка, которая автоматически сканирует содержимое кэша веб-браузеров, находит там
мультимедиа файлы и предоставляет все необходимые средства для копирования
выбранных вами файлов в нужную вам папку для их дальнейшего просмотра в режиме оффлайн
Freemake Music Box
- программа поиска, прослушивания музыкальных композиций онлайн и
создания музыкальной коллекции...
|
Плагины для
мультимедиа
Плагин (plug-in) —
независимо компилируемый программный
модуль, динамически подключаемый к основной программе,
предназначенный для расширения или использования её возможностей.
Плагин - это маленькая программка, которая встраивается в
основную (большую) программу и расширяет её возможности.
Основное приложение предоставляет сервисы, которые
плагин может использовать. К ним относится предоставляемая плагину
возможность зарегистрировать себя в основном приложении, а также протокол
обмена данными с другими плагинами. Плагины являются зависимыми от сервисов,
предоставляемых основным приложением и зачастую отдельно не используются. В
противоположность им, основное приложение независимо оперирует плагинами,
предоставляя конечным пользователям возможность динамически добавлять и
обновлять плагины без необходимости внесения изменений в основное
приложение.
Основные типы аудиоплагинов:
-
Input-плагины за поддержку воспроизведения файлов
различных форматов.
-
Оutput-плагины
отвечают за поддержку
вывода изображения и звука (настройки аудио- и видеокарты
карты и т.п.)
-
DSP-плагины
отвечают за цифровую обработку
аудио- и видеосигнала и создание
звуковых эффектов
-
Кодеки в виде плагина выполняют
поддержку форматов файлов для звуковых и видео проигрывателей.
WinAMP не отличается высококачественным звуком на выходе
и желательна
настройка плагина вывода звука на аудиокарту и поддержка DSP-плагинов (плагины
цифровой обработки звука), улучшающих качество звучания. Более 3500 плагинов
для WinAMP размещено на официальном сайте проекта (75% из них для
визуализации, которая мало ого интересует)
DSP (digital
signal processing, цифровая обработка
сигналов):
-
Линейная и адаптивная фильтрация — селекция
сигнала в частотной области; синтез фильтров, согласованных с сигналами;
частотное разделение каналов; цифровые преобразователи Гильберта
и дифференциаторы; корректоры характеристик каналов; подавление шумов
-
Спектральный и Частотно-временной анализ
-
Нелинейная обработка —
вычисление корреляций, медианная фильтрация; синтез амплитудных,
фазовых, частотных детекторов, обработка речи, векторное кодирование
-
Многоскоростная
обработка — интерполяция (увеличение) и децимация (уменьшение) частоты
дискретизации в аудиосистемах и др.
SRS WOW 2.0 - DSP плагин
для AIMP/Winamp - улучшает звучание проигрываемых композиций на
основе психоаккустической модели восприятия человеком
звука.
MiniLyrics —
плагин для синхронной прокрутки «таймированного» текста
песен (формат субтитров LRC) во время проигрывания в медиаплеерах. В
программе имеются настройщик типа (вертикальный, «бегущая строка» и другие)
и стиля прокрутки (кегль, оформление, цвет как шрифта, так и фона, в том
числе с помощью обложки альбома из папки с мелодиями), встроенный поисковый
браузер по крупной онлайн-базе (расположена на официальном сайте),
моментальный редактор с минимальным набором функций.
|
ПО поддержки
MIDI-технологий
В отсутствии BRAND-звуковой карточки профессионального класса,
будут полезны программы-эмуляторы
синтезатора, позволяющие MIDI-файлам
отлично звучать независимо
от того, какая карта имеется:
-
Yamaha S-YXG100plus предоставляет качество проигрывания - Audio-CD, 1188 инструментов, 65 эффектов,
полифония 256-512 звуков.
В реальном времени синтезатор способен накладывать множество звуковых
эффектов, например: реверберация, хорус, вариация, эхо, фленджер, auto
pan, delay. Дополнительные эффекты позволяют включить музыку, как в зале,
холе, комнате... Поддерживается автоматический подбор инструментов (реаранжировка мелодии заменой инструментов).
-
Virtual Sound Canvas
с банком на 902 инструмента.
Способен конвертировать midi в wav с Audio-CD качеством.
-
VanBasco's Karaoke Player -
один лучши миди/караоке плееров. Проигрывает
практически все типы midi-файлов (midi,
mid, rmi, kar). Во время воспроизведения в реальном времени
отображаются играющие инструменты, ноты и даже кнопки фортепиано,
которые "нужно" нажимать. Может
проигрывать около 6 000 караоке-файлов
с текстами песен, расположенных на сайте
http://mids.ru/
|
Поддержка WebRTC в
Chrome
WebRTC интегрирован в dev-версию Chrome.
WebRTC представляет
собой открытый фреймворк реализующий собой технологию передачи в
реальном времени видео и аудио напрямую между браузерами.
WebRTC (англ. real-time communications — коммуникации в реальном
времени) — разработанный Google интернет-протокол, с открытым
исходным кодом, предназначенный для организации голосовой и
видеосвязи через интернет в режиме реального времени.
В WebRTC используются два аудиокодека, созданных в GIPS, а также
видеоформат VP8 (WebM).
Chrome
с WebRTCсможет выполнять функции, которые сейчас выполняет Skype.
Mozilla Foundation предлагает свой вклад в WebRTC
— спецификацию MediaStream
Processing, позволяющую программно смешивать аудио-потоки или
отслеживать движение в передающемся онлайн видео.
Ключевым понятием в WebRTC API является объект MediaStream,
который является общим JavaScript-интерфейсом для взаимодействия с
аудио- и видео-потоками.
Для того, что разработчик смог организовать
взаимодействие с ними, он должен иметь инструмент доступа к
микрофону и web-камере пользователя — для этой цели служит функция getUserMedia.
В случае, если эта функция завершилась успешно и доступ к камере и
микрофону был получен, разработчику возвращается экземпляр классаMediaStream,
представляющий из себя, собственно, интерфейс для работы с
мультимедиа-данными.
HTML-код страницы с WebRTC API:
<html>
<head>
<title>Тест WebRTC</title>
</head>
<body>
<h2>Привет, Хабр!</h2>
<video id="live" autoplay></video>
<script type="text/javascript">
video = document.getElementById("live")
navigator.webkitGetUserMedia("video",
function(stream) {
video.src = window.webkitURL.createObjectURL(stream)
},
function(err) {
console.log("Ошибка!")
}
)
</script>
</body>
</html>
В данном случае функция webkitGetUserMedia получает
три параметра:
первый — строка, определяющая, что мы хотим работать именно с видео,
второй —
callback-функция, вызываемая в случае успеха попытки доступа к
web-камере и, наконец,
третий — функция, которая будет вызвана, если
получить доступ к оборудованию не удалось по каким-либо причинам.
Строка window.webkitURL.createObjectURL(stream) представляет
собой получение Blob
URL (элемент File
API) видео-потока, после чего в объекте video и
начнется отображение видео.
Согласно спецификациям WebRTC функция GetUserMedia должна
поинтересоваться у пользователя не возражает ли он, что приложением
будет получен доступ к его web-камере, приблизительно так же, как
это делает Geolocation API.
|
|