• Главная
  • Блог
  • Пользователи
  • Форум
  • Литературное творчество
  • Музыкальное творчество
  • Научно-техническое творчество
  • Художественно-прикладное творчество

Исследовательская работа по информатике "Создание медиа плеера в среде программирования Delphi"

Опубликовано Кошман Алеся Анатольевна вкл 13.09.2021 - 23:19
Кошман Алеся Анатольевна
Автор: 
Тетеркин Александр

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

Цель – разработка программы «Медиа плеер» для уроков информатики с применением способов создания программ в среде Delphi.

Скачать:

ВложениеРазмер
Файл issledovat_rabota_po_informatike_mediapleer.docx406.19 КБ

Предварительный просмотр:

МУНИЦИПАЛЬНОЕ БЮДЖЕТНОЕ ОБЩЕОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

 «Гимназия №3»

Городской конкурс исследовательских работ

и персональных проектов

Физико-математическая секция

Исследовательский проект по информатике

 «Создание медиа плеера в среде

программирования Delphi».

Выполнил

ученик 9а класса:

Тетеркин Александр

Руководитель:

Кошман Алеся Анатольевна

2017 г.

Содержание

Введение………………………………………………………………………….......3

Знакомство со средой Delphi                                        ……… …………………..5

Компоненты, используемые в программе……………………………………….…8

Проектирование медиа плеера в среде программирования Delphi……………...16

Заключение……………………………………………………………………….... 22

Список используемой литературы        …………………………………………...…..23



Введение

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

«Научиться можно только постоянно программируя, решая конкретные задачи. При этом достигнутые в программировании успехи в значительной мере зависят от опыта. Чем больше Вы сделаете самостоятельно, тем больше Вы научитесь.» Так в своей книги о программировании написал Н.Б. Культин. 

Научная новизна моей работы:

  • выявление условий перевода программы на машинный язык в среде программирования Delphi;
  • создание  программы «Медиа плеера» в среде  программирования Delphi.

Цель – разработка программы «Медиа плеер» для уроков информатики с применением способов создания программ в среде Delphi.

Задачи исследования:

  • изучить основы среды Delphi;
  • познакомиться с основными компонентами программы;
  • познакомиться с технологией разработки программного обеспечения  на всех этапа;
  • изучить терминологию программиста.

Объект исследования – среда программирования Delphi.

Предмет исследования– программное обеспечение уроков информатики.

Методы:

  • эмпирические: создание опытным путем программы «Медиа плеера» в среде  программирования Delphi;
  • теоретические: изучение книг и статей по языку программирования Delphi, изучение основных этапов при создании программы и терминологии программиста с целью создания программы «Медиа плеера».

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


Знакомство со средой Delphi

Развитие Delphi берет свое начало с языка программирования Pascal, названного в честь знаменитого французского математика Блеза Паскаля. Язык Pascal был создан Никлаусом Виртом  в Цюрехе  (Швецария) как учебный язык компьютерного программирования. Хорошая структурированность языка помогает привить начинающими программистам праильные навыки программирования. В результате Pascal быстро получил широкую популярность  и стал основным учебным языком во многим университетах как США, так и во всем мире. Благодаря богатым функциональным возможностям , легкости составления программ и высокой скорости компиляции Pascal стал интенсивно использоваться также для создания коммерческих программ.

Компанией Borland были разработаны популярные версии этого языка  - Turbo Pascal и Object Pascal. Следующим естественным шагом было создание Delphi – среды разработки программ на языке Object Pascal. Слово Delphi– это название города в древней Греции, в котором пророчествовали оракулы. Такое название было выбрано разработчиками Delphi для того, чтобы подчеркнуть способность программ, создаваемых в Delphi, взаимодействовать с базами данных Oracle.

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

C:\Users\HP\AppData\Local\Microsoft\Windows\INetCache\Content.Word\Новый рисунок (3).bmp

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

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

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

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

Окно кода программы – предназначено для создания и редактирования текста программы. Это текст составляется по специальным правилам и описывает алгоритм работы программы. Совокупность правил записи текста называется языком программирования. В система Delphi используется язык программирования Object Pascal, который представляет собой расширенную и усовершенствованную версию языка Pascal.

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

Музыка, человеческий голос и звуковые эффекты хранятся на носителях информации в файлах специальных форматах, среди которых достаточно часто используются файлы с расширением AVI(Audio – Video- Information). Обычно файлы, содержащие аудио/видео информацию получаются очень большими, поэтому мультимедиа-приложения сохраняются и поставляются на лазерных дисках. Мы решили написать программу, которая по выбору пользователя позволяет активировать звук mp3 и mp4 формата или запустить фильм  avi – формата.


Компоненты,  используемые в программе

А сейчас опишем компоненты, которые используются нами при создании медиа плеера.

  1. Компонент Delphi Panel представляет собой панель, на поверхности которой можно поместить другие компоненты. Обычно панель используется для привязки компонентов к границе окна (при изменении размера окна компоненты, которые находятся на панели, не меняют своего положения относительно границ окна, к которой привязана панель).

http://delphi-prg.ru/wp-content/uploads/2013/01/panel1.jpg

Свойства компонента Panel:

Caption

текст, выводимый в центре панели.

Align

определяет границу формы, к которой привязана(прикреплена) панель. Она может быть прикреплена к левой(alLeft), правой(alRight), верхней(alTop) и нижней(alBottom) границе

BevelOuter

внешняя фаска панели. Если значение свойства равно bvNone, то фаска не отображается и поверхность панели находится на одном уровне с поверхностью формы, если значение равно bvLowered, то поверхность панели протоплена, если свойство равно bvRaised, то поверхность панели выступает над поверхностью формы

BevelCut

определяет вид внутренней кромки если значение равно bvNone, то кромки нет, если bvLowered — кромка вдавленная, если bvRaised — кромка приподнятая

BevelInner

определяет вид внешней кромки, если значение равно bvNone, то кромки нет, если bvLowered — кромка вдавленная, если bvRaised — кромка приподнятая

BevelWidth

толщина кромки

Enabled

свойство позволяет сделать недоступным все компоненты находящиеся на панели

  1. Компонент  Delphi TrackBar  представляет собой визуальный элемент управления в виде ползунка, который можно перемещать клавишами или курсором мыши во время выполнения. Таким образом, пользователь может управлять какими-либо процессами: громкость звука, размером изображения и д.р.Ползунок может располагаться как вертикально, так и горизонтально, иметь шкалу с разных сторон и выделенный диапазон этой шкалы.

http://3.bp.blogspot.com/_EGZ0bzqRRAo/TL5Bb5MTzII/AAAAAAAAAJ4/yZwMjYELpsQ/s1600/program_rgb_delphi.png

Свойства компонента TrackBar:

Position

целое значение, которое изменяется в пределах, задаваемые свойствами Min и Max. По умолчанию это 0 и 10 соответственно. Если задать больше значение Max, то увеличится кол-во возможных значений Position.

Orientation

определяет ориентацию ползунка горизонтальная или вертикальная

TickMarks

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

TickStyle

указывает способ изображения шкалы. Может принимать значения: tsAuto — автоматическая прорисовка шкалы, tsManual – программное рисование шкалыс помощью метода SetTick, который помещает метку шкалы в позицию, соответствующую значению Value

Frequency

частота меток шкалы если свойство TickStyle равно tsAuto

LineSize

определяет насколько смещается ползунок при перемещении стрелками

PageSize

определяет насколько смещается ползунок при перемещении клавишами PageUp и PageDawn

SelStart и SelEnd

позволяет визуально выделить на шкале некоторый диапазон (средний компонент на рисунке 1)

ThumbLength

Толщина полосы бегунка в пикселях

  1. Компонент Delphi- MediaPlayer обеспечивает воспроизведение звуковых файлов различных форматов (WAV, MID, MP3), компакт дисков, сопровождаемой звуком анимации и видео роликов (AVI).

http://helpdelphi.ru/wp-content/uploads/2013/04/12.png

Воспроизведение(btPlay)

Воспроизведение звука или видео

Пауза(btPause)

Приостановка воспроизведения

Стоп(btStop)

Остановка воспроизведения

Следующий(btNext)

Переход к следующему кадру

Предыдущий(btPrev)

Переход к предыдущему кадру

Шаг(btStep)

Переход к следующему фрагменту, например к следующему треку на CD

Назад(btBack)

Переход к предыдущему фрагменту, например к предыдущему треку на CD

Запись(btRecord)

Активирует процесс записи

Открыть(btEject)

Открывает CD-дисковод компьютера

Свойства компонента MediaPlayer:

Length

Длина открытого файла

Tracks

Количество треков на устройстве

TrackLength

Длина треков

Position

Позиция (время воспроизведения)

TimeFormat

Формат представления значений свойств Length, TrackLength и Position. Наиболее универсальным является формат tfMilliseconds

Mode

Состояние устройства воспроизведения.
mpPlaying — состояние воспроизведения;
mpStopped – процесс остановлен;
mpPaused — приостановлен;
mpNotReady — не готово к работе;
mpOpen – в устройстве (CD-деске) отсутствует носитель.

Display

Экран, на котором отображается клип. Если значение не задано, то клип отображается в отдельном окне (создаваемом во время работы программы)

DisplayRect

Размер и положение области отображения клипа на поверхности экрана

  1. Компонент Delphi Timer генерирует последовательность событий timer, этот компонент является не визуальным, то есть во время работы программы он не отображается на форме.

http://www.delphi-manual.ru/TimerInForm.JPG

Свойства компонента Timer:

Name

имя компонента необходимое для доступу к компоненту и свойствам этого компонента

Interval

период генерации событий timer, в миллисекундах

Enabled

Разрешает(True) или запрещает(False) генерацию события OnTimerоцени статью оставь комментарий

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

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

http://dersnotusitesi.com/wp-content/uploads/2010/12/openDialog1.png

Свойства  компонента OpenDialog:

ofReadOnly

Открывает окно в режиме «только для чтения»

ofHideReadOnly

Скрывает флажок ReadOnly

ofOverwritePrompt

Играет роль в диалогах записи файлов, запрашивает разрешение на перезапись при совпадении имени.

ofNoChangeDir

Если флаг установлен, то при повторных запусках диалога он открывает папку определенную в свойстве InitialDir. Иначе будет открыт каталог с которым велась работа в последний раз.

ofShowHelp

Дополняет диалог кнопкой помощи.

ofNoValidate

Отключает контроль ввода недопустимого символа в имя файла

OfAllowMultiSelect

Допускает одновременный выбор нескольких файлов

ofExtensionDifferent

Наличие флага обычно контролируется программистом во время выполнения приложения. Он автоматически устанавливается приложениям в случае, когда расширение выбранного файла отличается от заданного в свойстве DefaultExt

ofPathMustExist

Вызывает сообщение об ошибке, если пользователь указал неверный путь к файлу.

ofFileMustExist

Вызывает сообщение об ошибке, если пользователь указал имя не существующего файла

ofCreatePrompt

Запросит подтверждения на создание несуществующего файла.

ofShareAwere

Разрешает совместный доступ к одному и тому же файлу

ofNoReadOnlyReturn

Инициализирует сообщение об ошибке при попытке обратиться к файлу с атрибутом «только для чтения».

ofNoTestFileCreate

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

ofNoNetworkButton

Скрывает кнопку доступа к сетевым ресурсам.

ofNoLongNames

 Показывает файлы с форматом имени.

ofOldStyleDialog

Флаг обратной совместимости, создает диалоговое окно старого стиля.

ofNoDereferenceLinks

Определяет порядок взаимодействия с ярлыками файлов.

ofEnableIncludeNotify

Работает с Windows2000 и более поздними версиями.

ofEnableSizing

Разрешает изменять размеры диалогового окна

  1. Компонент Delphi Button это стандартная кнопка Delphi, кнопка имеет на поверхности надпись (описывающая её назначение при нажатии). Основное событие для кнопки является OnClick, выполняемое при нажатии, при этом кнопка меняет внешний вид, подтверждая этим происходящее действие визуально.Сразу после отпускания кнопки, выполняется действия в обработчике OnClick.

Свойства  компонента Button:

Cancel

если установлено true, то нажимая клавишу «Esc» будет выполнено нажатие на данную кнопку. Это свойство лучше задавать для кнопок «Отменить»;

Caption

задает название кнопки

Default

если установлено в true, то при нажатии клавиши Enter будет выполнено нажатию на данную кнопку, даже если в этот момент данная кнопка не находится в фокусе. Но если в момент нажатия в фокусе находится другая кнопка, то сработает кнопка находящаяся в фокусе.

Hint

подсказка — текст, который будет появляется рядом с курсором мыши при наведении указателя на кнопку(для того что бы текст отображался, свойство ShowHint должно быть )

ShowHint

разрешает или запрещает отображение подсказки при наведении указателя на кнопку


Проектирование медиа плеера в среде программирования Delphi

Начнем проектировать приложение, которое обеспечит просмотр mp4 –файлов с видеоклипами.

Шаг1. Начинаем новое приложение. Назовем эту форму frmVPlayer, а в ее заголовке напишем Видеоплейер. Сохраним программный модуль с именем VPlayer.pas, а проект - PrVPlayer.pas.

Шаг 2. Кнопки управления видеоплейера расположим на панели, установленной в верхней части формы. Поместим на форму компонент типа TPanel, присвоимему имя ToolBarPanelи для свойства Alignустановим значение alTop. Поместим на ToolBarPanelкомпонент MediaPlayerи установим для свойства VisibleButtonsзначения, равные Falseдля опций btRecord и btEject.

Шаг 3. Любому видеопроигрывателю нужен экран, на котором отображается видеоклип. В качестве экрана нам будет служить компонент типа TPanel. Поместим компонент Panelна форму, и установим следующие свойства и их значения:

  • Name =ScreenPanel;
  • Caption = пусто;
  • Align = alClient;
  • BorderStyle = bsSingle;
  • BevelOuter = bvNone

Теперь подключим компонент MediaPlayerк установленному экрану, установив для свойства Displayего значение – ScreenPanel.

Шаг 4. Создадим на форме индикатор, который создает визуальный эффект движения головки считывания данный из файла AVI. Индикатор динамически отображает процесс воспроизведения , показывая, какой кадр считывается для показа. Таким индикатором станет компонент класса TTrackBar (вкладка Win32 Палитры компонентов), который представляет собой полосу с засечками и перемещающимися вдоль нее ползунком. Поместим на форму компонент этого класса и присвоим ему имя TrackBar. Подкорректируем его размеры и положение на панели.

Установим для компонента TrackBarсвойства:

  • Enabled = False, т. к. Пока видеоклип не загружен. TrackBar работать не должен.
  • TickMarks =tmBoth;
  • TickStyle = tsNone.

Для устойчивой работы видеоплейера объявим в разделе Private секции interface переменную логического типа, которая будет хранить флажок состояния плейера: остановлен или работает. В редакторе Кода впишем:

…..

private

{Флажок, указывающий в каком состоянии находитсяMediaPlayer:    остановлен или запущен}

TrackBarSetPos: Boolean;

…..

Для достижения эффекта перемотки видеоролика при перемещении ползунка (слайдера) пользователем, определим для компонента TrackBar обработчик события OnChange:

procedureTfrmVplayer.procedure TForm1.TrackBarChange(Sender: TObject);

var

IsPlaying:Boolean;

begin

//Если флажлок находится в состоянии «MediaPlayer остановлен», т.е.  переменная//TrackBarSetPos имеетзначение False, то …

if not TrackBarSetPos then

begin

//Указать состояние MediaPlayera. В данном случае установить состояние –

//воспроизведение

IsPlaying:=(mpPlaying=MediaPlayer.Mode);

//УстановкапозицииMediaPlayer

MediaPlayer.Position:=TrackBar.Position;

  //Если состояние – воспроизведение, то MediaPlayer запускается

if IsPlaying then MediaPlayer.Play;

end;

end;

Шаг 5. Движение ползунка в процессе воспроизведения видеоклипа осуществим с помощью таймера. Для этого поместим на форму компонент типа TTimer, установим его имя – Timer, а свойство Intervalв значении 100. Пока видеоклип не загружен, свойство Enabledустановим в значение False.

Определим для компонента Timer следующий обработчик события OnTimer:

procedure TfrmVPlayer.TimerTimer(Sender: TObject);

begin

  //Флажок находится в состоянии «MediaPlaye rзапущен».

TrackBarSetPos:=True;

  //Текущая позиция слайдера соответствует позиции MediaPlayer

trckbr1.Position:=MediaPlayer1.Position;

  //Флажок находится в состоянии «MediaPlayer остановлен»

TrackBarSetPos:=False;

end;

Шаг 6. Реализуем для пользователя выбор видеоклипов (AVI-файла) в диалоговом окне. Для этого поместим на панель TrackBar компонент OpenDialog, реализующий диалог выбора файла и установим его свойства и их значения:

  • Name = OpenDialog;
  • DefaultExt = avi;
  • Filter = Видеоклип (*.avi)*.avi; (*.mp3)*.mp3; (*.mp4)*.mp4.

Кроме диалога, поместим на панель кнопку, с помощью которой активируется диалог открытия видеоклипа. Назовем кнопку: свойству Name присвоим значение OpenBtn, а свойствуCaption– Открыть…

После установки на форме списанных компонентов, внешний вид приложения может быть таким.

медиаплеер фото.png

Для кнопки Открыть… определим обработчик события OnClick. Код обработчика может быть таким:

procedure TfrmVPlayer.OpenBtnClick(Sender: TObject);

begin

   //Вызов отображения диалога выбора файлов

ifOpenDialog.Executethen

   begin

//Определяет открытый файл для воспроизведения

MediaPlayer.FileName:=OpenDialog.FileName;

     //Открывает устройство мультимедиа для воспроизведения

MediaPlayer.Open;

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

//мультимедиа

MediaPlayer.DisplayRect:=pnlScreenPanel.ClientRect;

//Определение числа кадров для воспроизведения

MediaPlayer.Frames:=1;

//Начало отсчета позиции слайдера TrackBar

TrackBar.Min:=0;

     //КонецпозицииTrackBar, определяемой длиной среды в открытом устройстве

//мультимедиа

TrackBar.Max:=MediaPlayer.Length;

//Определение значения позиции, зависящих от числа кадров

TrackBar.PageSize:=MediaPlayer.Frames;

//«Открыть» полосу TrackBar

TrackBar.Enabled:=True;

//«Открыть» таймер

TTimer.Enabled:=True;

//Вывести в заголовок название выбранного файла

Caption:=MediaPlayer.FileName;

end;

end;

Шаг 7. Давайте представим на секунду, что мы хотим изменить размеры экрана для ввода видеоклипа при работе приложения. Очевидно, что необходимо масштабирование изображения. Для компонента MediaPlayer оно достигается с помощью установки для свойства DisplayRect значения ClientRect, устанавливающего размерность клиентской области для объекта, на который выводится изображение. В нашем случае это ScreenPanel.ClientRect.

Для масштабирования изображения при изменении окна просмотра для компонента ScreenPanel определим обработчик события OnResize:

procedure TfrmVPlayer.ScreenPanelResize(Sender: TObject);

begin

//Прямоугольная область панели является клиентской областью для выводаизображения

MediaPlayer.DisplayRect:=ScreenPanel.ClientRect;

end;

На этом разработка проекта закончена, теперь мы можем запустить наше приложение.


Заключение

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

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

В результате исследования составлена программа «Медиа плеер», которая демонстрируется в качестве ознакомления со средой  программирования Delphi на уроках информатики при изучении темы «Алгоритмизация и программирование» в 9 классе.

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

Список используемой литературы

  1. Горбачев Л.И. «Программирование приложений в среде Delphi 6.0», 2012.
  2. Керман, Митчелл «Программирование и отладка в Delphi». Учебный курс.: Пер. с англ.- М.: Издательский дом «Вильямс», 2012, 672с.:ил.
  3. Фараонов В.В. Delphi 6. Учебный курс.- М.: Издатель Молгачева С.В., 2012.-672с., ил.
  4. http://www.studfiles.ru/preview/4301107/page:11/


Поделиться:

Любили тебя без особых причин...

По морям вокруг Земли

Разноцветное дерево

Две снежинки

Можно от Солнца уйти...