Меню:

Домой
Статьи
Файлы
Гостевая
Форум
Обо мне

.::Меню::.

:.:Создание плэера использую DsPack:.:

Введение.
Привет, я Lex Luthor!Я давно хотел написать статью про плэер т.к любой кодер обезательно должен написать хоть один плэер.Но, сегодня это не будет наш первый плэер,я дам основу работы с компонентом под названием DsPack.На мой взгляд если бы более или менее продвинутый кодер, его использовал, то думаю что можно было бы создать WinAmp-у неплохую конкуренцию.Я хотел бы не много рассказать от куда я узнал про этот кулл-компанент...Началось всё с того, что мой знакомый с чата ДелфиМастер предложил посмотреть его плэер,я просто довольно скептически смотрю на создание плэеров и не думал что увижу что стоящее.Но когда я его увидел я обомлел,я не верил своим глазам в этой проги было всё что мне надо.И тут я задумался, а правда ли это, что круче WinAmp ничего нет...После прочтения данной статьи думаю ты сам ответишь:) И так давай посмотрим что сможет делать наш MPlayer:

1)Загрузка видео и аудио файлов;
2)Перемотка песни;
3)Настройка баланса колонок;
4)Настройка звука;


Пожалй и всё.И так,когда бороздишь по просторам сети,у некоторых людей возникают проблемы с установкой.Так довай же разберёмся что и как.Для начала качаем компанент и распаковываем архив, идём в следующую папку ../DSPACK234/packages/ вот так например у меня:

Далее запускаем последовательно три пакета:
1)DirectX9_D7.dpk
2)DSPack_D7.dpk
3)DSPackDesign_D7.dpk

Надо вот так:

Все компаненты должны быть установлены!!!Вообще если прога не будет находить *.dcu файлы то мой совет может не самый элегантный но простой найдите все файлы с расширением *.dcu,потом идите в папку где Делфи найдите папку Lib и скопируйте всё туда.У меня так всё прекрасно работает. И так когда компаненты установлены пора написать плэер.Для начала создайте три формы:

Теперь кидай на форму след.компаненты:
1)1 FilterGraph- с закладки DsPack ;
2)1 DSTrackBar- с закладки DsPack ;
3)3 Button -название 1-го Button-a "Play", 2-го Button-a "Pause", 3-го Button-a "Stop" ;
4)2 TrackBar; Примерно так должна выгледеть Form1:

Проще всего выгледит Form2, на неё нужно лишь положить компанент VideoWindow- с закладки DsPack :

Ну и последняя формочка Form3, идём на закладку Win 3.1:

Берём с закладки три компанента:
1)1 DriveComboBox;
2)1 DirectoryListBox;
3)1 FileListBox;
И ложим их на форму Form3 вот так я разместил компаненты на формачке:


Приготовления окончены приступим к написанию кода.Сразу же кликай на кнопке "Play" и вставляй вот этот код:

procedure TForm1.Button1Click(Sender: TObject);
begin
FilterGraph1.Play;
end;


Теперь вставляй код для кнопки "Pause":

procedure TForm1.Button2Click(Sender: TObject);
begin
FilterGraph1.Pause;
end;


Код для кнопки "Stop":

procedure TForm1.Button3Click(Sender: TObject);
begin
FilterGraph1.Stop;
end;

С кнопками закончили переходим к трэк барам.Нажми один раз на DSTrackBar1 и найди св-во OnTimer два раза кликни и вписывай вот такой код:

TForm1.DSTrackBar1Timer(sender: TObject; CurrentPos, StopPos: Cardinal);
begin
Label1.Caption:='Прошло: '+TimeToStr(CurrentPos / MiliSecPerDay);
Label2.Caption:='Всего :'+TimeToStr(StopPos / MiliSecPerDay);
end;

Следующий трэк бар выполняет функцию уровня звука нажми два раза на TrackBar1 и вставляй вот такой код:

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
FilterGraph1.Volume := Form1.TrackBar1.Position;//Поставь у трэкбара в св-ве Max числовое значение 10000
end;

Следующий трэкбар будет выполнять функцию баланса звука.Жми два раза на TrackBar2 и вставляй вот этот код:

procedure TForm1.TrackBar2Change(Sender: TObject);
begin
FilterGraph1.Balance:=SetBasicAudioPan(Form1.TrackBar2.Position);//Поставь у трэкбара в св-ве Max числовое значение 10000, а Min -10000
end;

Осталось самое главное запуск файла,открывай третью форму ака Form3 и найди компанент FileListBox1 затем ищи в событиях св-во OnDblClick и кликай два раза в пустом поле напротив,затем вставь вот этот код:

procedure TForm3.FileListBox1DblClick(Sender: TObject);
begin
if not Form1.FilterGraph1.Active then Form1.FilterGraph1.Active := true;
Form1.FilterGraph1.ClearGraph;
Form1.FilterGraph1.RenderFile(Form3.FileListBox1.FileName);
Form1.TrackBar1.Position := Form1.FilterGraph1.Volume;
Form1.Label3.Caption:='Адрес: '+FileListBox1.FileName;
Form1.FilterGraph1.Play;
end;

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

Информация к статье:

Скачать:Исходник
Автор : Lex Luthor
Статья : 30.09.2006

Ссылки:

Aniku
Dem@nxp
Xskernel
Excode
Delphi Master
Codenet

.::Ссылки::.

Hosted by uCoz