Главный Каталог Статей РФ
87573 авторов, размещено 48124 статей, сейчас на сайте пользователей: 93 Статистика
Аватар valiwanderer

Создание MP3-проигрывателя, используя MediaPlayer

Категория:  Компьютеры и Интернет  | Автор:  valiwanderer | Опубликовано: 12.12.2012
И так, вам наверное хотелось бы научиться создавать аудио-, видеопроигрыватели. Вот сейчас мы и посмотрим как можно это реализовать. 

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

В Delphi есть компонент MediaPlayer (расположен на странице System). Это универсальный проигрыватель для работы с аудио- и видео-информацией. 

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

Теперь приступим. Думаю, вы уже догадались, создаем новый проект. Потом добавляем на форму: наш главный компонент MediaPlayer, button, label, OpenDialog.

 Кнопка ОТКРЫТЬ

На кнопку прописываем следующее событие:

procedure TForm1.Button1Click(Sender: TObject);

begin

if OpenDialog1.Execute then

with MediaPlayer1 do

begin

  FileName := OpenDialog1.FileName;

  Open;

  Notify:=true;

 label1.Caption:=ExtractFileName(FileName);

 end;

end;

Компилируем и проверяем работу нашего приложения. Нажимая на кнопку, выбираем файл в формате *.mp3.

Теперь добавляем на форму timer, label2 и label3.

 Дважды кликаем на таймер и прописываем код: 

procedure TForm1.Timer1Timer(Sender: TObject);

var chas, min, sec, chas1, min1, sec1: Integer;

function mode(Length: Integer): String;

  begin

    Result:=IntToStr(Length);

if Length<10 then Result:='0'+Result;

 end;

begin

MediaPlayer1.TimeFormat:=tfMilliSeconds;

{Длина трека}

 sec:=mediaplayer1.Length div 1000;

 min:=sec div 60;

 chas:=min div 60;

 min:=min - chas*60;

 sec:=sec - min*60 - chas*3600;

 label2.Caption:=IntToStr(chas)+':'+mode(min)+':'+mode(sec);

{сколько прошло}

 sec1:=mediaplayer1.Position div 1000;

 min1:=sec1 div 60;

 chas1:=min div 60;

 min1:=min1 - chas*60;

 sec1:=sec1 - min1*60 - chas1*3600;

 label3.Caption:=IntToStr(chas1)+':'+mode(min1)+':'+mode(sec1); 

end;

Теперь в нашем таймере свойство Enabled ставим на False и в кнопке button1 между двумя end'ами добавляем

Timer1.Enabled:=true; 

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

Ну и наверняка вам еще хочется, чтобы в нашем проигрывателе присутствовал прогресс вопроизведения. В таком случае на форму мы еще добавляем еще один таймер и компонент Gauge, который находится на странице Samples библиотеки компонентов. Растягиваем его на форме по своему усмотрению. Также мы можем убрать надпись процента, указав свойство ShowText на False.

Теперь нам нужно привязать Gauge к треку. Для этого на timer2 прописываем следующий код.

procedure TForm1.Timer2Timer(Sender: TObject); 

begin

with MediaPlayer1 do

begin

    if FileName <>'' then

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

 if Gauge1.Progress=100 then begin

      Position:=0; play; end;

end;

end;

После этого свойство Enabled таймера ставим на False и добавляем в button1 код

Timer2.Enabled:=true; 

Снова компилируем и любуемся результатом.


Автор: VT, Источник: Программирование на Delphi 

Комментарии
К этой статье пока нет комментариев. Станьте первым! У нас гости не могут комментировать статьи. Пожалуйста авторизуйтесь или зарегистрируйтесь, чтобы прокомментировать.
Интересные статьи по теме
Аватар admin
Секреты квантовых компьютеров: Как простой алгоритм меняет будущее! Алгоритм Дойча. Квантовые компьютеры звучат как магия, но как они работают на практике? Сегодня мы разберём алгоритм Дойча — один из самых простых квантовых алгоритмов, который показывает, почему квантовые компьютеры...
Категория: Компьютеры и Интернет | Автор: admin | Добавлено: 22.04.2025
Аватар admin
Квантовая интерференция в алгоритме Дойча Квантовая интерференция действительно ключевая фишка алгоритма Дойча и один из тех "волшебных" моментов, которые делают квантовые компьютеры такими уникальными....
Категория: Компьютеры и Интернет | Автор: admin | Добавлено: 22.04.2025
Аватар admin
Квантовые компьютеры и коррекция ошибок: Революция в вычислениях Квантовые компьютеры обещают перевернуть мир технологий, решая задачи, недоступные даже самым мощным суперкомпьютерам. Однако их путь к массовому применению тормозится одной фундаментальной проблемой ...
Категория: Компьютеры и Интернет | Автор: admin | Добавлено: 22.04.2025
Аватар admin
Квантовые компьютеры против обычных: Простое объяснение для начинающих Вы наверняка слышали о квантовых компьютерах — они звучат как что-то из научной фантастики. Но чем они отличаются от обычных компьютеров, которые мы используем каждый день? Давайте разберёмся простыми...
Категория: Компьютеры и Интернет | Автор: admin | Добавлено: 22.04.2025
Аватар proflow
Личный кабинет Триколор ТВ: регистрация, возможности Итак, назовем основные преимущества обладаем персонального личного кабинета, иными словами ради чего стоит потратить время и завести персональную страницу в компании Триколор ТВ:- узнать состояние и п...
Категория: Компьютеры и Интернет | Автор: proflow | Добавлено: 17.10.2021
Свежие комментарии

Комментарий эксперта: Как изменения в налоговом законодательстве 2025 года перевернут привычный бухга...

Читать >>

Узбекистан является одним из крупнейших производителей текстильной продукции в Центральной Азии. Страна исторически специализировалась на выращивании ...

Читать >>

Читая статью про "зарождение инвестиций в Древнем Вавилоне", поймал себя на мысли, что мы упорно пытаемся натянуть современные экономические концепции...

Читать >>

Если раньше много времени уходило на подготовку материалов для конкурса, отправке по почте, то теперь это намного проще. И доступнее для каждого учите...

Читать >>

Зря вы так про аниме, есть прям крутые ужастики, с кровью и кишками, а есть где головой думать надо. К примеру доктор Стоун....

Читать >>

Лучшие авторы
Аватар stvirtuoz
тудия дизайна «Виртуоз» г. Новороссийска Краснодар...

Читать

Напишите нам