Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Проигрывание мультимедиа файлов nonstop   Найти похожие ветки 

 
Puliay ©   (2003-07-16 15:52) [0]

Подскажите пожайлуста! Как используя компонент TMediaPlayer воспроизводить ряд музыкальных или видео файлов без дополнительного вмешательства, т.е. при нажатии одной кнопки последовательно проигрывать все видео или аудио файлы содержащиеся в одной произвольной папке?


 
iXuSs   (2003-07-16 16:42) [1]

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

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


 
Думкин ©   (2003-07-17 05:32) [2]

Что каксаемо onNotify, то недавно у меня при проигрывании файлов DivX было следующее:
При остановке файла событие срабатывало, но при обработке я проверял mode а он был mpPlaying, и переходил в mpStopped примерно через секунду. Может я где-то чего-то, но это вылазило с завидной регулярностью.
Пришлось делать дополнительные вещи.


 
iXuSs   (2003-07-17 22:52) [3]

Я как-то сказал, что TMediaPlayer - старый глючный компонент и очень хотелось бы, чтобы Borland переписала его, при этом разложив на составляющие.


 
ЮЮ ©   (2003-07-18 06:11) [4]

>Я как-то сказал, что TMediaPlayer - старый глючный компонент и очень хотелось бы, чтобы Borland переписала его, при этом разложив на составляющие.

А самому переписать что мешает? :-) От Борланда там, по существу, только кнопочки, а все остальное - mciSendCommand(...)


 
iXuSs   (2003-07-18 15:55) [5]

> А самому переписать что мешает?

Мне лично такой компонент не требуется, я пользуюсь TBASSPlayer.


 
Лавриненко Алексей   (2003-07-20 09:06) [6]

iXuSs, а вы не могли бы вставить кусочек программки или объяснить по подробнее?. Дело все в том, что я только начинаю программировать...Please!


 
iXuSs   (2003-07-20 15:00) [7]

Вот очень простой пример:

unit MediPlayerUnit;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, MPlayer;

type
TPlayerForm = class(TForm)
MediaPlayer: TMediaPlayer;
memoFileList: TMemo;
buttonPlay: TButton;
procedure MediaPlayerNotify(Sender: TObject);
procedure buttonPlayClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
PlayerForm: TPlayerForm;
Num: Integer;

implementation

{$R *.DFM}

procedure TPlayerForm.MediaPlayerNotify(Sender: TObject);
begin
If MediaPlayer.Mode = mpStopped then
begin
Num := Num + 1;
If Num > memoFileList.Lines.Count-1 then Num := 0;
MediaPlayer.FileName := memoFileList.Lines.Strings[Num];
MediaPlayer.Open;
MediaPlayer.Play;
( Sender: TObject)
Вот очень простой пример:

unit MediPlayerUnit;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, MPlayer;

type
TPlayerForm = class(TForm)
MediaPlayer: TMediaPlayer;
memoFileList: TMemo;
buttonPlay: TButton;
procedure MediaPlayerNotify(Sender: TObject);
procedure buttonPlayClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
PlayerForm: TPlayerForm;
Num: Integer;

implementation

{$R *.DFM}

procedure TPlayerForm.MediaPlayerNotify(Sender: TObject);
begin
If MediaPlayer.Mode = mpStopped then
begin
Num := Num + 1;
If Num > memoFileList.Lines.Count-1 then Num := 0;
MediaPlayer.FileName := memoFileList.Lines.Strings[Num];
MediaPlayer.Open;
MediaPlayer.Play;
end;
end;

procedure TPlayerForm.buttonPlayClick(Sender: TObject);
begin
Num := 0;
MediaPlayer.Enabled := True;
MediaPlayer.FileName := memoFileList.Lines.Strings[Num];
MediaPlayer.Open;
MediaPlayer.Play;
end;

end.


Собственно говоря, на форме расположен TMediaPlayer, TButton и TMemo. При нажатии на кнопку проигрываются файлы, путь к которым записан в memoFileList. Когда все файлы проиграются, то список проигрывается заново. Этим примером я хотел показать работу с OnNotify.


 
Puliay ©   (2003-07-23 14:07) [8]

А как заполнить мемо-лист?



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.026 c
1-65904
Alibaba
2003-11-11 16:42
2003.11.20
TListBox


14-66103
Radionov Alexey
2003-10-28 16:35
2003.11.20
Задачка


1-65897
VJar
2003-11-08 11:30
2003.11.20
Помогите описать класс


3-65722
nika_ufc
2003-11-02 00:17
2003.11.20
Помогите c ADO


1-65927
Малиновский Владимир
2003-11-11 14:48
2003.11.20
Группировка данных в Excel?