Пример программы с мультимедиа. Мультимедийная система для авто: главные функции

Все программные средства систем мультимедиа (ММ) можно разделить на четыре вида: системное программное обеспечение (ПО) ММ, профессиональное ПО ММ, функциональное ПО ММ, преобразователи ММ-информации (рис. 6).

Рис. 6. Структура программного обеспечения средств мультимедиа

Мультимедийные операционные системы - это ОС, предназначенные для работы с различными видами информации: текстом, звуком, графикой, видео. Эти операционные системы, помимо основных для ОС черт, имеют и специфические, связанные с видами обрабатываемой информации. К мультимедийным относятся операционные системы фирмы Microsoft - Windows различных версий. Unix же первоначально не предназначалась для обработки различных видов информации. Она была больше приспособлена для обработки текста и для программирования. Другие виды информации на ней обрабатывать можно, но для этого необходимо дополнительное программное обеспечение, которое в состав основного комплекта операционной системы Unix не входит.

Мультимедиа-интерфейсы служат для облегчения процесса общения человека с ЭВМ. В связи с необходимостью выполнения сложных операций, связанных с извлечением и преобразованием смысла, мультимедиа-интерфейсы часто выполняются интеллектуальными. К их числу относятся: речевой интерфейс, графический, мимический, естественноязыковый интерфейс (ЕЯ-интерфейс) и псевдоЕЯ-интерфейс.

Обычно интерфейсы выполняются в виде виртуальных или прозрачных структур. Виртуальная структура - это кажущаяся, не существующая в действительности, функции которой моделируются с помощью реальных структур.

Прозрачные структуры - это действительно существующие, но незаметные, спрятанные структуры (программы). Начало их действия обычно связано с возникновением определенных условий. К прозрачным структурам относятся такие программные средства, как демоны (из терминологии искусственного интеллекта и Unix-систем). К демонам нет явного обращения, они начинают работать, если возникает необходимая ситуация (нажаты какие-то клавиши, произошло обращение к жесткому диску для записи, появился сигнал о неисправности устройства или о нарушении какой-либо защиты и т.д.).

Речевой интерфейс состоит из двух частей. Одна из них предназначена для ввода и распознавания речи при речевом обращении к ЭВМ, вторая часть - это синтезатор речи, в состав которого обычно входит “говорящая машина”, которая символьный текст, подготовленный ЭВМ, преобразует в речевое сообщение.

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

Синтез речи также является сложной проблемой. В говорящих машинах очень трудно реализовать звучание женского голоса, легче синтезируется металлический голос робота.

Мимический интерфейс необходим для работы с ЭВМ в сильно зашумленной среде и для лиц с дефектами речи и слуха. Мимика и жестикуляция всегда сопровождают естественноязыковое общение людей и способствуют восприятию информации, передаче эмоций. Могут использоваться в качестве самостоятельного средства для обмена информацией.

ЕЯ-интерфейс предназначен для общения пользователей с ЭВМ на естественном для человека языке, без каких-либо специальных знаний. При ЕЯ-общении не человек подстраивается под машину, пытаясь ей что-то объяснить, а машина пытается подстроиться под человека. Если ей что-то непонятно, она переспрашивает, формулирует свой вопрос другими словами, в результате чего в конечном итоге достигается полное взаимопонимание.

ЕЯ-интерфейс очень труден для машинной реализации. Трудности эти усугубляются неоднозначностью языка общения людей. У людей общение строится на интуитивном уровне, объяснить как, часто никто не может. Поскольку алгоритмы общения не сформулированы в явном виде, т.е. практически неизвестны, возникают трудности с ЕЯ-реализацией системы общения.

Трудности в реализации ЕЯ-интерфейса привели к тому, что на практике чаще стал использоваться псевдоЕЯ -интерфейс . В псевдоЕЯ-интерфейсе используется система ограничений, не свойственных для естественного языка. Например, ограничение по теме для общения. При таком ограничении сокращается возможность неоднозначного описания одного и того же объекта. Конструкции предложений становятся более простыми, легче становится понимание смысла.

Стандартное мультимедийное программное обеспечение операционной системы включает фонограф (для записи речи с микрофона и редактирования ее), универсальный проигрыватель (для звуковых и анимационных файлов), микшер (для смешивания звука, записанного в различных файлах), регулятор записи, громкости и баланса, презентационное программное обеспечение (для создания и демонстрации мультимедиа-презентаций, упрощающих перенос смысла от информационной системы человеку).

Профессиональное программное обеспечение и функциональное ПО различаются широтой функций.

Профессиональное ПО необходимо человеку-профессионалу для его профессиональной деятельности, во время которой ему приходится выполнять большое число различных, но связанных между собой операций. Желательно, чтобы все эти операции можно было выполнить с помощью одного и того же программного средства. Иногда возникает необходимость различным специалистам выполнять общую работу. Эта работа должна выполняться на одной ЭВМ (или на локальной сети), профессиональное программное средство с каждым из этих специалистов должно изъясняться на его языке. Например, такой системой является “кремниевый транслятор” Мид и Конвей. Этот транслятор упрощает процедуру создания кристаллов микросхем.

В США существуют так называемые “дворовые кремнелитейни” - это маленькие цеха по изготовлению микросхем в малых количествах почти кустарным способом. Для того, чтобы изготовить микросхему, нужен проект, так как процесс изготовления автоматизирован. Проект микросхемы делается примерно в следующей последовательности: сначала заказчик объясняет системному аналитику, чего он хочет. Системный аналитик на основании объяснений заказчика составляет задание для конструктора. Конструктор по этому заданию разрабатывает микросхему и передает разработанную конструкторскую документацию технологу. Технолог, получив эту документацию, решает, как такое изделие можно реализовать, и составляет технологическую документацию (например, технологические карты процесса изготовления микросхемы). Эта технологическая документация представляет собой документацию, позволяющую управлять кремнелитейней.

Цикл подготовки технологической документации вручную занимал несколько месяцев. Когда реализовали процесс проектирования с помощью программного комплекса “кремниевый транслятор”, цикл сократился до нескольких недель. Кремниевый транслятор сначала общался с заказчиком на его языке и выяснял, что нужно сделать, затем передавал относительно грамотные соображения системному аналитику, который доводил их до технического задания на изготовление микросхемы. После этого за программный комплекс садился конструктор, который получал понятное ему техническое задание, а затем, используя тот же самый программный комплекс, разрабатывал электронные схемы и оформлял их в виде конструкторской документации, передаваемой для работы технологу.

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

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

Локальные и телекоммуникационные вопросно-ответные системы в зависимости от применяемого интерфейса делятся на речевые, видео-сенсорные, графические. Они представляют собой программное средство, содержащее шаблоны, с помощью которых создаются системы этого типа. Локальные системы предназначены для использования только на одном компьютере, телекоммуникационные - на удаленных компьютерах.

Графические программные средства - это графические редакторы, редакторы сценариев (например, для создания мультипликаций), программы для подготовки графических презентаций. К профессиональному программному обеспечению относятся только мощные, многофункциональ-ные программные средства типа 3D-Studio, Macromedia Flash и др.

Аудиопрограммные средства включают в себя музыкальные, речевые, акустические редакторы, говорящие машины, проигрыватели. Все они предназначены для ввода в ЭВМ, вывода из нее различных звуковых файлов, создания звукового сопровождения презентаций и т.д.

Программное обеспечение видеомонтажа предназначено для обработки видео, снимаемого с помощью видеокамеры (т.н. “живого видео”). Различают две разновидности видеомонтажа: линейный и нелинейный. В обоих видах используются ЭВМ, телевизионный плеер (для ввода), и пишущий плеер для вывода преобразованной в ЭВМ видеозаписи на магнитную ленту.

Исходная видеозапись считывается с плеера и поступает в ЭВМ, где преобразуется, а затем в преобразованном виде выводится на пишущий плеер.

Для линейного видеомонтажа используется “анимационная линейка”, ЭВМ которой должна иметь основную память, достаточную для хранения 1-2 кадров видеозаписи (это около 16 Мбайт). Ввели один кадр, обработали его, вывели на пишущий плеер. Обработка кадров исходной видеозаписи ведется последовательно, кадр за кадром (т.е. линейно).

При нелинейном видеомонтаже используется “компьютерный куб”, ЭВМ которого должна иметь объем памяти, достаточный для хранения большого количества кадров, которые считываются группами и находятся в основной памяти одновременно. Выбор кадра для обработки производится произвольно. При выводе видеозаписи кадры могут меняться местами, дополняться другими фрагментами, удаляться и т.д. Для этого необходима большая основная память (не менее 60 Мбайт). В системах нелинейного монтажа кадры обрабатываются в произвольной последовательности, т.е. нелинейно.

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

Программное обеспечение для создания обучающих систем и тренажеров содержит текстовый и графический редакторы, специальные средства для контроля знаний, для дозированной выдачи информации и т.д. В качестве примера мультимедийного тренажера можно назвать разные варианты клавиатурного тренажера, например, TRK.

Компьютерный диктофон - это программное средство, предназначенное для ввода речи в ЭВМ, распознавания ее и перевода в символьный вид, записи полученного речевого сообщения в символьном виде в текстовом редакторе. Фирма Курцвейл разработала один из первых компьютерных диктофонов, распознававший 1000 английских слов. В настоящее время выпускается много аналогичных систем, например, Dragon Dictate. Сильно продвинулась в этом направлении фирма IBM. Ею в 1997 г. запатентованы системы распознавания для китайского и японского языков.

Программы-переводчики предназначены для перевода письменных текстов с одного языка на другой. Проблема эта сложная, так как точный алгоритм перевода неизвестен - ведь переводить надо мысли, а не слова, с помощью которых они выражаются. Предпринимаются попытки по-разному реализовать такие системы. Обычно для качественного перевода требуются большие словари. Известны попытки использовать нейрокомпьютеры для перевода с одного языка на другой. Качество перевода с помощью нейрокомпьютеров зависит от длительности обучения, от качества обучающей выборки.

Системы психологического тестирования в системах мультимедиа необходимы для определения характеристик человека при создании человеко-машинных систем. Кроме получения необходимых характеристик (иногда, с помощью специально разработанных на основе ЭВМ приборов типа гомеостата, тахистоскопа и др.), системы психологического тестирования позволяют исследовать профориентацию сотрудников (например, тест MMPI), их способность выполнять ответственную работу (тесты Спилбергера, Люшера), оценивать интеллектуальные способности работающих на ЭВМ и др.

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

Программные комплексы для конструирования шрифтов позволяют создавать шрифты, например, для отображения фирменного стиля. Корректировка чужих шрифтов авторским правом запрещается, так как корректировка формы символа может нарушить общий стиль комплекта символов (фонта). В то же время создание нескольких собственных символов или даже целого набора шрифтов бывает необходимо для оформления мультимедиа-системы.

Архиваторы получили широкое распространение. Они позволяют сжимать информацию в среднем в 2-3 раза. Существуют специальные архиваторы, ориентированные на определенные виды информации. Так, например, архиваторы, работающие на основе обратного фрактального преобразования, позволяют сжимать видеоизображение в 10000 раз. Изображения разбиваются на части, и под каждую такую часть ищутся формулы, по которым образуются эти фрагменты изображений. Кодирование изображения набором формул и есть результат работы такого архиватора.

Распознающие системы - это системы для распознавания зрительных, звуковых и т.д. образов. Распознанные образы отождествляются с их названием. Например, при сканировании текста, его изображение снимается в графическом виде, т.е. в виде черных и белых пятен. Распознающая система из этих пятен “узнает” символы и заменяет их кодами ASCII или Unicode. После этого считанный текст можно обрабатывать текстовым редактором. В процессе распознавания осуществляется сжатие изображения, так как запись в кодах занимает значительно меньше места, чем запись в графическом виде.

Программное обеспечение для создания гипертекстов позволяет создавать электронные информационные системы - презентации, Web-сайты, Help-справочники и др. Основой для создания гипертекстов является язык HTML. Простейшие HTML-страницы создаются с помощью текстового процессора Word. Более сложные конструкции создаются с помощью таких пакетов, как Front Page, Power Point, Macromedia Flash, Dreamviewer, Homesite, и др.

Демонстрационные программы предназначены для проигрывания звуковых файлов и демонстрации текстов и рисунков, выполненных в разных форматах. Кроме того, есть демонстрационные программы для пакетов прикладных программ (ППП). Они позволяют автоматизировать демонстрацию возможностей различных ППП. При первом обращении к такой программе сначала запускается она, затем демонстрируемый пакет. Программа запоминает, какие клавиши нажимались при демонстрации пакета и в каком временном ритме. При окончании первой демонстрации программа создает управляющий файл, под управлением которого можно впоследствии запускать демонстрируемый пакет, никаких клавиш больше нажимать не надо. Их нажатие имитируется управляющим файлом, в котором сохранена последовательность нажатия клавиш с учетом фактора времени. Демонстрация ППП ведется на экране автоматически, без участия человека.

Тестирующие программы определяют состав и конфигурацию устройств, проводят их тестирование, настраивают режимы. Их использование необходимо для определения характеристик аппаратных средств при создании человеко-машинных систем. Настройка режимов позволяет согласовать характеристики пользователя (оператора) и ЭВМ, обеспечить наилучшее соответствие программ техническим средствам.

Программные средства для обеспечения безопасности включают в себя детекторы (программы, определяющие наличие опасности, например, появления вируса), фаги (программы, удаляющие вирус из зараженной программы), мониторы (программы, постоянно наблюдающие за работой системы и фиксирующие “опасные” действия, например, операции записи в системную область диска), анализаторы (программы, позволяющие восстанавливать информацию после искажения, находить пути проникновения вредоносных программ в систему, вести контроль трафика для определения того, что именно и кому передается при работе в телекоммуникационной системе), средства для идентификации работающего (например, по клавиатурному почерку, по голосу, по радужной оболочке глаза) и др.

Программное обеспечение систем безопасности часто использует средства мультимедиа. Например, существуют запорные системы (электронные замки), которые открываются по знакомому голосу. Известны системы, дополняющие парольную защиту при доступе к ЭВМ, например, по клавиатурному почерку работающего. В такой системе даже при известном пароле доступ к системе можно получить только при совпадении клавиатурного почерка работающего с эталонным. Формирование эталона производится один раз при настройке системы на нового пользователя. В простейшем случае клавиатурный почерк определяют такие параметры, как продолжительность нажатия клавиши и продолжительность промежутка между нажатием клавиш. Система, определяющая клавиатурный почерк по этим параметрам с помощью Эвклидова расстояния, распознает около 92% попыток несанкционированного доступа.

Преобразователи информации в системах мультимедиа используются для ввода в ЭВМ аналоговой информации (аналого-цифровые преобразователи или АЦП), для вывода из ЭВМ цифровой информации в аналоговом виде (цифро-аналоговые преобразователи или ЦАП), для преобразования форматов файлов, содержащих текстовую, графическую, звуковую, видео информацию.

Компрессоры и декомпрессоры - это программные средства, позволяющие сжимать видеоизображения и в сжатом виде производить их хранение. Некоторые программы позволяют и обрабатывать сжатые изображения. Декомпрессоры позволяют восстановить сжатую информацию для ее вывода. Для работы компрессоров и декомпрессоров используются не только программные, но и специальные технические средства, ускоряющие эти действия.

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

Общие сведения о системах мультимедиа для авто

Несмотря на развитие функционального наполнения и технической начинки, форм-фактор и конструкционные параметры таких устройств остаются прежними. В этом отношении создатели стремятся делать оборудование как можно проще, компактнее и надежнее. Обычно это небольшой блок, который внедряется в специальную нишу, расположенную на передней панели. Конечно, нельзя отрицать, что мультимедийная система для авто оказывает влияние на эстетические достоинства интерьера в салоне, поэтому дизайнерское исполнение устройства имеет особое значение. Наличие тачскрин-дисплея также стало обязательным компонентом в современных Именно через него происходит управление функциями прибора - от смены треков до назначения маршрута в навигаторе. Требования к автомобильной электронике отличаются особой жесткостью в отношении эргономики, поэтому конструкция и способ управления должны подбираться с детальным изучением мельчайших деталей.

Акустические возможности

В последние годы аудиосистемы стали трансформироваться в многофункциональную аппаратуру. Но изначальная задача подобных систем, как и прежде, заключается в воспроизведении звука. И в этом направлении производители развивают свою продукцию не менее активно. В лучших современных исполнениях мультимедийная акустическая система представляет собой целый комплекс, который снабжен всеми возможностями аудио-плеера, а также способен работать с широким спектром сторонней техники. Такие модели, как правило, располагают звуковым процессором, поэтому их можно подключают и к сабвуферу. Также немало вариантов с интегрированными колонками, но в любом случае такие устройства позволят настраивать звуковую картину на любой вкус по обширной шкале параметров.

Что касается возможностей подключения, то в первую очередь они предполагают стандартные Если требуется для просмотра видео, то будет не лишним обратить внимание на разъем HDMI, который считается лучшим каналом для воспроизведения звука и кинофильмов.

Функция навигатора

Хотя данная опция давно стала едва ли не обязательной для автомагнитол, такие системы все еще рассматриваются в качестве гибридных. На рынке подобные устройства легко найти по маркировке 2DIN, которая и указывает на поддержку функции навигатора. С таким оснащением водитель получает возможность цифровой прокладки маршрута с выводом карты на экран дисплея. Сегодня даже мультимедийная из бюджетного сегмента обеспечивает довольно привлекательный набор инструментов для работы с картами. Их можно поворачивать, увеличивать и уменьшать, делать отметки и, конечно, регулярно обновлять и пополнять базу данных с маршрутами. Самым искушенным автовладельцам стоит рекомендовать более функциональные гибриды, снабженные GPS-антеннами и видеорегистраторами. Такая комплектация избавит от необходимости приобретения отдельного средства видеозаписи. Но и это не все. Чтобы избежать неприятностей с дорожной инспекцией, можно приобрести устройство, в котором также будет присутствовать антирадар. За несколько сотен метров до приближения к месту фиксации скоростных режимов данный прибор оповестит об этом участке водителя.

Коммуникационные способности

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

Цифровое ТВ

Телевидение на центральной панели автомобиля может показаться неуместным, но и эта функция не будет лишней. Производители обычно комплектуют такие устройства специальными антеннами с магнитными держателями и широким набором опций. Собственно, в плане управления цифровое автомобильное ТВ можно сравнить с полноценными ресиверами и тюнерами. Те же настройки с поддержкой объемного звучания, автоматического поиска, эквалайзера и т.д. Помимо этого, мультимедийная система, в зависимости от модификации, может активно работать с местными передающими сетями. Для этого используется система LCN, улучшающая эффективность приема сигнала и качество трансляции.

Что еще учесть при выборе?

Перед покупкой головного устройства для автомобиля следует определить перечень задач, которые должна будет выполнять система. В частности, следует определиться с источниками контента и устройствами, которые должны будут подключаться к аппаратуре. Также следует оценить необходимость наличия GPS-датчика, радиоприемника, модуля Bluetooth и цифрового ТВ. Это, конечно, полезные опции, но в таком оснащении мультимедийная система стоит в разы дороже, чем предназначенная исключительно для воспроизведения звука. Правда, в случае с гибридными устройствами - напротив, функциональность помогает сэкономить. Дело в том, что многофункциональные комплексы исключают необходимость покупки отдельного видеорегистратора и навигационной системы.

Установка мультимедийной системы

Монтаж устройств такого типа обычно выполняется по стандартной схеме. Производители комплектуют оборудование специальными рамками для панелей и крепежными приспособлениями, которые позволяют без труда интегрировать аппаратуру в подготовленные для этих целей ниши. Правда, если планируется установка монитора с несколькими колонками, то конфигурация монтажа может быть нестандартной. Если штатная мультимедийная система устанавливается в центральную панель, то оборудование с крупными дисплеями обычно интегрируют в потолочную нишу. Но такая конфигурация чаще встречается при оснащении минивэнов и внедорожников.

Заключение

Системы мультимедиа, предназначенные для автомобилей, внешне напоминают развлекательные комплексы, а в некоторых модификациях - и домашние кинотеатры. Разумеется, по характеристикам мощности и габаритам о подобных сравнениях говорить не приходится, но некоторые функциональные «фишки» от традиционных систем давно перекочевали в сферу автомобильной электроники. Достаточно сказать, что современная мультимедийная система позволяет любому водителю пользоваться такими средствами коммуникации, как Bluetooth, USB и HDMI. И это не говоря о встроенной навигационной системе, цифровом телевидении и возможности выхода в Интернет. Другое дело, что столь богатая начинка может не потребоваться автовладельцу. Особенно с учетом стоимости подобных устройств, которая может достигать 50-60 тыс. руб.

В данной главе мы рассмотрим пример построения приложения с мультимедиа первого типа. Создайте новый проект (File | New Project). Поместите TMediaPlayer на форму; поместите компоненты TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox для выбора файла. В свойстве FileList для DirectoryListBox1 и FilterComboBox1 поставьте FileListBox1. В св-ве DirList для DriveComboBox1 поставьте DirectoryListBox1. В св-ве Filter для FilterComboBox1 укажите требуемые расширения файлов:

AVI File(*.avi)|*.avi

WAVE File(*.wav)|*.wav

MIDI file(*.MID)|*.mid

Пусть по двойному щелчку мышкой в FileListBox1 выбранный файл будет воспроизводиться. В обработчике события OnDblClick для FileListBox1 укажите

Procedure TForm1.FileListBox1DblClick(Sender:TObject);

with MediaPlayer1 do

FileName:=FileListBox1.FileName;

Внешний вид формы представлен на рис. 4.

Рис.4. Начальный вид проекта

Сохраните проект, запустите его, выберите нужный файл и дважды щелкните на него мышкой. MediaPlayer должен воспроизвести этот файл в отдельном окне.

Как уже говорилось выше, видеоролик можно воспроизводить внутри формы, например, на панели. Давайте слегка модифицируем проект и добавим туда панель TPanel (рис. 5). В св-ве Display для MediaPlayer1 укажите Panel1. Нужно убрать надпись с панели (Caption) и св-во BevelOuter = bvNone. Чтобы переключаться при воспроизведении с окна на панель - поместите TСheckBox на форму и в обработчике события OnClick для него запишите:



procedure TForm1.CheckBox1Click(Sender: TObject);

Start_From: Longint;

with MediaPlayer1 do begin

if FileName="" then Exit;

Start_From:=Position;

if CheckBox1.Checked then

Position:=Start_From;

Запустите проект и воспроизведите видеоролик. Пощелкайте мышкой на CheckBox.

Рис. 5. Добавлена панель для воспроизведения видео и

переключатель окно/панель.

Во время выполнения программы может потребоваться отобразить текущее состояние объекта MediaPlayer и самого ролика (время, прошедшее с начала воспроизведения, длину ролика). Для этого у объекта TMediaPlayer есть соответствующие свойства и события: Length, Position, OnNotify и др. Давайте добавим в проект прогресс-индикатор (TGauge), который отобразит в процентах, сколько прошло времени (см. рис.6). Для обновления показаний индикатора можно воспользоваться таймером. Поместите на форму объект TTimer, установите для него Interval = 100 (100 миллисекунд). В обработчике события OnTimer нужно записать:

procedure TForm1.Timer1Timer(Sender: TObject);

with MediaPlayer1 do

if FileName<>"" then

Gauge1.Progress:=Round(100*Position/Length);

Запустите проект, выберите файл (AVI) и щелкните на нем два раза мышкой. При воспроизведении ролика прогресс-индикатор должен отображать процент, соответствующий прошедшему времени (см. рис.6).

Рис.6: Законченное приложение для воспроизведения

AVI, WAV и MDI файлов.

3. ОБЪЕКТЫ ИССЛЕДОВАНИЯ, ОБОРУДОВАНИЕ, МАТЕРИАЛЫ И НАГЛЯДНЫЕ ПОСОБИЯ

3.1. IBM – совместимый компьютер.

3.2. Установленная операционная система Windows.

3.3. Установленное приложение Borland Delphi.

3.4. Справочная система приложения Borland Delphi.

4. ЗАДАНИЕ НА РАБОТУ

4.1. Изучение теоретические положения работы по программированию в среде Borland Delphi.

4.2. Выполнение индивидуального задания преподавателя по программированию в пределах вопросов, рассмотренных в данной лабораторной работе.

5. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

5.1. Ознакомиться с теоретическими положениями данной лабораторной работы.

5.2. Выполнить индивидуальные задания преподавателя по программированию.

Задание 1

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

Задание 2

Дополнить программу возможностью определения времени и размера проигрываемого файла

5.3. Оформить отчет по работе.

5.4. Защитить лабораторную работу путем ответа на вопросы преподавателя.

6.1. Описание цели работы.

6.2. Основные теоретические положения работы

6.4. Описание методики выполнения индивидуального задания.

7. КОНТРОЛЬНЫЕ ВОПРОСЫ

8. СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

8.1. Delphi 7: [наиболее полное руководство] / А. Д. Хомоненко [и др.];под общ.ред.А.Д.Хомоненко.- СПб. : БХВ - Петербург, 2007 .- 1216с. : ил. (7 экз.)

8.2. Программирование в Delphi 7 / П. Г. Дарахвелидзе, Е. П.Марков.- СПб.: БХВ -Петербург, 2004 .- 784c. : ил. (1 экз.)

8.3 Осипов Д. Delphi. Профессиональное программирование. - СПб.: Символ-Плюс, 2006. -1056 с., ил.

Два вида программ мультимедиа

Иногда приходится предоставлять пользователям простой путь для проигрывания максимально широкого круга файлов и затем позволить ему выбрать и воспроизвести подходящий файл. В этом случае, на форме обычно располагается TMediaPlayer, предоставляющий возможность управления воспроизведением.

Иногда программист может захотеть скрыть от пользователя существование компонента TMediaPlayer. То есть, воспроизвести звук или видео без того, чтобы пользователь заботился об их источнике. В частности, звук может быть частью презентации. Например, показ какого-нибудь графика на экране может сопровождаться объяснением, записанным в WAV-файл. В течении презентации пользователь даже не знает о существовании TMediaPlayer. Он работает в фоновом режиме. Для этого компонент делается невидимым (Visible:= False;) и управляется программно.

В данной главе мы рассмотрим пример построения приложения с мультимедиа первого типа. Создайте новый проект (File | New Project). Поместите TMediaPlayer на форму; поместите (страница WIN 3.1) компоненты TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox для выбора файла. В свойстве FileList для DirectoryListBox1 и FilterComboBox1 поставьте FileListBox1. В свойстве DirList для DriveComboBox1 поставьте DirectoryListBox1. В свойстве Filter для FilterComboBox1 укажите требуемые расширения файлов:

AVI File (*.avi) | *.avi

WAVE File (*.wav) | *.wav

MIDI file (*.MID) | *.mid

Пусть мы хотим по двойному щелчку мышкой на компоненте FileListBox1 воспроизводить выбранный файл. Тогда в обработчике события OnDblClick для FileListBox1 следует записать:

Procedure TForm1.FileListBox1DblClick(Sender:TObject);

with MediaPlayer1 do

Внешний вид формы представлен на рис.4.

Рис.4. Начальный вид проекта

Сохраните проект, запустите его, выберите нужный файл и дважды щелкните на него мышкой. MediaPlayer должен воспроизвести этот файл в отдельном окне.

Как уже говорилось выше, видеоролик можно воспроизводить внутри формы, например, на панели. Давайте слегка модифицируем проект и добавим туда панель TPanel (см. рис.5). В свойстве Display для MediaPlayer1 укажите Panel1. Нужно убрать надпись с панели (Caption) и присвоить свойству BevelOuter:= bvNone;

Чтобы переключаться при воспроизведении с окна на панель - поместите TСheckBox на форму и в обработчике события OnClick для него запишите:

Start_From: Longint;



with MediaPlayer1 do

if FileName ="" then Exit;

Start_From:= Position;

if CheckBox1.Checked then Display:= Panel1

else Display:= NIL;

Position:= Start_From;

Запустите проект и воспроизведите видеоролик. Пощелкайте мышкой на компоненте CheckBox.

Рис.5. Добавлена панель для воспроизведения видео

и переключатель окно/панель

Во время выполнения программы может потребоваться отобразить текущее состояние объекта MediaPlayer и самого ролика (время, прошедшее с начала воспроизведения, длину ролика). Для этого у объекта TMediaPlayer есть соответствующие свойства и события: Length, Position, OnNotify и др.

Давайте добавим в проект прогресс-индикатор (TGauge), который отобразит в процентах, сколько прошло времени (см. рис.6). Для обновления показаний индикатора можно воспользоваться таймером. Поместите на форму объект TTimer и установите для него

Interval:= 100; (100 миллисекунд).

В обработчике события OnTimer нужно записать:

with MediaPlayer1 do

if FileName<>"" then

Запустите проект, выберите файл (AVI) и щелкните на нем два раза мышкой. При воспроизведении ролика прогресс-индикатор должен отображать процент, соответствующий прошедшему времени (см. рис.6).

Листинг DEMOVideo приведен ниже.

SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,

Forms, Dialogs, ExtCtrls, Gauges, FileCtrl, StdCtrls, MPlayer;

TForm1 = class(TForm)

MediaPlayer1: TMediaPlayer;

CheckBox1: TCheckBox;

FileListBox1: TFileListBox;

DirectoryListBox1: TDirectoryListBox;

DriveComboBox1: TDriveComboBox;

FilterComboBox1: TFilterComboBox;

Button1: TButton;

procedure FileListBox1DblClick(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

procedure CheckBox1Click(Sender: TObject);

procedure Button1Click(Sender: TObject);

{ Private declarations }

{ Public declarations }

procedure TForm1.FileListBox1DblClick(Sender: TObject);

with MediaPlayer1 do

FileName:= FileListBox1.FileName;

procedure TForm1.Timer1Timer(Sender: TObject);

with MediaPlayer1 do

if FileName<>"" then

Gauge1.Progress:= Round(100*Position/Length);

procedure TForm1.CheckBox1Click(Sender: TObject);

Start_From: Longint;

with MediaPlayer1 do

if FileName ="" then Exit;

Start_From:= Position;

if CheckBox1.Checked then

Display:= Panel1

Position:= Start_From;

procedure TForm1.Button1Click(Sender: TObject);

if FileListBox1.FileName ="" then Exit;

with MediaPlayer1 do

FileName:= FileListBox1.FileName;

Рис.6. Законченное приложение для воспроизведения AVI, WAV

Обзор

Что такое мультимедиа

Мультимедиа в Delphi

Компонент TMediaPlayer

Два вида программ, использующих мультимедиа

Пример программы с мультимедиа

  1. Обзор
  2. Delphi позволяет легко и просто включать в программу такие мультимедийные объекты, как звуки, видео и музыку. В данном уроке обсуждается, как это сделать, используя встроенный в Delphi компонент TMediaPlayer. Подробно рассматриваются управление этим компонентом в программе и получение информации о текущем состоянии.
  3. Что такое мультимедиа
  4. Точного определения, что же это такое, нет. Но в данный момент и в данном месте, наверное, лучше дать по-возможности наиболее общее определение и сказать, что “мультимедиа” - это термин относящийся к почти всем формам анимации, звукам, видео, которые используются на компьютере.

    Давая такое общее определение, нужно сказать, что в данном уроке мы имеем дело с подмножеством мультимедиа, которое включает:

    1. Показ видео в формате Microsoft"s Video for Windows (AVI).

    2. Воспроизведение звуков и музыки из MIDI и WAVE файлов.

    Данную задачу можно выполнить с помощью динамической библиотеки Microsoft Multimedia Extensions для Windows (MMSYSTEM.DLL), методы которой инкапсулированы в компоненте TMediaPlay, находящийся на странице System Палитры Компонент Delphi.

    Для проигрывания файлов мультимедиа может потребоваться наличие некоторого оборудования и программного обеспечения. Так для воспроизведения звуков нужна звуковая карта. Для воспроизведения AVI в Windows 3.1 (или WFW) требуется установить ПО Microsoft Vid eo.

  5. Мультимедиа в Delphi
  6. В Delphi есть компонент TMediaPlayer, который дает Вам доступ ко всем основным возможностям программирования мультимедиа. Данный компонент очень прост в использовании. Фактически, он настолько прост, что многим начинающим программистам будет проще создать свою первую программу, проигрывающую видео или музыку, нежели показывающую классическую надпись "Hello World".

    Простоту использования можно воспринимать двояко:

    · С одной стороны - это дает возможность любому создавать мультимедиа приложения.

    · С другой стороны, можно обнаружить, что в компоненте реализованы не все возможности. Если Вы захотите использовать низкоуровневые функции, то придется копаться достаточно глубоко, используя язык Delphi.

    В данном уроке не описываются подробности внутренних вызовов мультимедийных функций при работе компонента. Все что нужно знать - это то, что компонент называется TMediaPlayer, и что он дает доступ к набору подпрограмм, созданных Microsoft и называемых Media Control Interface (MCI). Эти подпрограммы дают программисту простой доступ к широкому кругу устройств мультимедиа. Собственно работа с TMediaPlayer интуитивно понятна и очевидна .

  7. Компонент TMediaPlayer

Для начала давайте создадим новый проект, затем поместим компонент TMediaPlayer (стр. System Палитры) на форму, как показано на рис.1.

Рис.2: Свойства TMediaPlayer в Инспекторе Объектов

на этом свойстве и выберите имя файла с расширением AVI, WAV или

MID. На рис.2 выбран AVI файл DELPHI.AVI. Далее нужно установить свойство AutoOpen в True.

После выполнения этих шагов программа готова к запуску. Запустив программу, нажмите зеленую кнопку “воспроизведение” (крайняя слева) и Вы увидите видеоролик (если выбрали AVI) или услышите звук (если выбрали WAV или MID). Если этого не произошло или появилось сообщение об ошибке, то возможны два варианта:

  1. Вы ввели неправильное имя файла.
  2. Вы не настроили правильным образом мультимедиа в Windows. Это означает, что либо у Вас нет соответствующего ”железа”, либо не установлены нужные драйверы. Установка и настройка драйверов производится в Control Panel, требования к “железу” приводятся в любой книге по мультимедиа (нужна звуковая карта, например совместимая с Sound Blaster).

Итак, Вы имеете возможность проигрывать AVI, MIDI и WAVE файлы просто указывая имя файла.

Еще одно важное свойство компонента TMediaPlayer - Display. Изначально оно не заполнено и видео воспроизводится в отдельном окошке. Однако, в качестве экрана для показа ролика можно использовать, например, панель. На форму нужно поместить компонент TPanel, убрать текст из св-ва Caption. Далее, для TMediaPlayer, в свойстве Display выбрать из списка Panel1. После этого надо запустить программу и нажать кнопку “воспроизведение” (см. рис.3)

Рис.3: Воспроизведение AVI на панели.

    1. Два вида программ мультимедиа
    2. · Иногда приходится предоставлять пользователям простой путь для проигрывания максимально широкого круга файлов. Это означает, что Вам нужно будет дать пользователю доступ к жесткому диску или CD-ROM, и затем позволить ему выбрать и воспроизвести подходящий файл. В этом случае, на форме обычно располагается TMediaPlayer, предоставляющий возможность управления воспроизведением.

      · Иногда программист может захотеть скрыть от пользователя существование компонента TMediaPlayer. То есть, воспроизвести звук или видео без того, чтобы пользователь заботился об их источнике. В частности, звук может быть частью презентации. Например, показ какого-нибудь графика на экране может сопровождаться объяснением, записанным в WAV файл. В течении презентации пользователь даже не знает о существовании TMediaPlayer. Он работает в фоновом режиме. Для этого компонент делается невидимым (Visible = False) и управляется программно.

    3. Пример программы с мультимедиа

В данной главе мы рассмотрим пример построения приложения с мультимедиа первого типа. Создайте новый проект (File | New Project). Поместите TMediaPlayer на форму; поместите компоненты TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox для выбора файла. В свойстве FileList для DirectoryListBox1 и FilterComboBox1 поставьте FileListBox1. В св-ве DirList для DriveComboBox1 поставьте DirectoryListBox1. В св-ве Filter для FilterComboBox1 укажите требуемые расширения файлов:

AVI File(*.avi)|*.avi

WAVE File(*.wav)|*.wav

MIDI file(*.MID)|*.mid

Пусть по двойному щелчку мышкой в FileListBox1 выбранный файл будет воспроизводиться. В обработчике события OnDblClick для FileListBox1 укажите

Procedure TForm1.FileListBox1DblClick(Sender:TObject);

begin

with MediaPlayer1 do

begin

Close;

FileName:=FileListBox1.FileName;

Open;

Play;

end;

end;

Внешний вид формы представлен на рис.4

Рис.4: Начальный вид проекта

Сохраните проект, запустите его, выберите нужный файл и дважды щелкните на него мышкой. MediaPlayer должен воспроизвести этот файл в отдельном окне.

Как уже говорилось выше, видеоролик можно воспроизводить внутри формы, например, на панели. Давайте слегка модифицируем проект и добавим туда панель TPanel (см. рис.5). В св-ве Display для MediaPlayer1 укажите Panel1. Нужно убрать надпись с панели (Captio n)

и св-во BevelOuter = bvNone. Чтобы переключаться при воспроизведении с окна на панель - поместите TСheckBox на форму и в обработчике события OnClick для него запишите:

procedure TForm1.CheckBox1Click(Sender: TObject);

Start_From: Longint;

begin

with MediaPlayer1 do begin

if FileName="" then Exit;

Start_From:=Position;

Close;

Panel1.Refresh;

if CheckBox1.Checked then

Display:=Panel1

else

Display:=NIL;

Open;

Position:=Start_From;

Play;

end;

end;

Запустите проект и воспроизведите видеоролик. Пощелкайте мышкой на CheckBox.


  • Рис.5: Добавлена панель для воспроизведения видео и переключатель окно/панель.
  • Во время выполнения программы может потребоваться отобразить текущее состояние объекта MediaPlayer и самого ролика (время, прошедшее с начала воспроизведения, длину ролика). Для этого у объекта TMediaPlayer есть соответствующие свойства и события: Length, Position, OnNotify и др. Давайте добавим в проект прогресс-индикатор (TGauge), который отобразит в процентах, сколько прошло времени (см. рис.6). Для обновления показаний индикатора можно воспользоваться таймером. Поместите на форму объект TTimer, установите для него Interval = 100 (100 миллисекунд). В обработчике события OnTi m er нужно записать:

    procedure TForm1.Timer1Timer(Sender: TObject);

    begin

    with MediaPlayer1 do

    if FileName<>"" then

    Gauge1.Progress:=Round(100*Position/Length);

    end;

    Запустите проект, выберите файл (AVI) и щелкните на нем два раза мышкой. При воспроизведении ролика прогресс-индикатор должен отображать процент, соответствующий прошедшему времени (см. рис.6).


  • Рис.6: Законченное приложение для воспроизведения AVI, WAV и MDI файлов.