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

Вниз

Как одновременно проиграть два файла?   Найти похожие ветки 

 
kblc ©   (2004-07-29 18:11) [0]

Уважаемые мастера, как одновременно можно проиграть 2 файла (может компоненты есть, но лучше через MCI)?

вот код для проигрывания одного файла, но как сделать это сразу для двух файлов? потоки создавать?

procedure mciPlayFile(FileName: string);
var
   Open_Params: TMCI_Open_Parms;
   Play_Params: TMCI_Play_Parms;
   FDeviceID: Word;
begin
  Open_Params.dwCallback:=0;
  Open_Params.wDeviceID:=0;
  Open_Params.lpstrDeviceType:=PAnsiChar(Copy(Filename,Pos(".",Filename)+1,3));
  Open_Params.LPSTRELEMENTNAME:=PChar(Filename);

  mciSendCommand(0, MCI_OPEN, MCI_OPEN_ELEMENT, Longint(@Open_Params));
  FDeviceID:=Open_Params.wDeviceID;
  mciSendCommand(FDeviceID, MCI_PLAY, MCI_WAIT, Longint(@Play_Params));
  mciSendCommand(FDeviceID, MCI_CLOSE,       0, Longint(@Open_Params));
end;


Заранее спасибо за советы.


 
pavia   (2004-07-29 23:27) [1]

убери MCI_WAIT.А как следствие строчка
mciSendCommand(FDeviceID, MCI_CLOSE,       0, Longint(@Open_Params)); должна сробатывать по зовершению фаила.Почитай про события mci.


 
kblc ©   (2004-07-30 10:54) [2]

ну а как сделать так, что бы я мог прослушать оба файла???


 
kblc ©   (2004-07-30 10:54) [3]

ну а как сделать так, что бы я мог прослушать оба файла одновременно???


 
Анонимщик ©   (2004-07-30 11:57) [4]

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


 
kblc ©   (2004-07-30 13:03) [5]

Убрал MCI_WAIT и команде mciSend..(..,MCI_CLOSE,..).. И теперь ваще ничего не работает... почему? может я что-то не так делаю?
может кто-нить сорс покажет?


 
kblc ©   (2004-07-30 18:16) [6]

Народ.. неужели мне никто не поможет?


 
Анонимщик ©   (2004-07-30 18:39) [7]

Сделай пока как-нибудь через потоки. Остальное в понедельник.


 
Вадим ©   (2004-07-30 20:16) [8]


> kblc ©   (30.07.04 18:16) [6]

 Вот здесь http://delphimaster.net/view/8-1082458665/ твою проблему уже решали! Там было так:
uses
MMSystem;

procedure SendMCICommand(Cmd: string);
var
RetVal: Integer;
ErrMsg: array[0..254] of char;
begin
RetVal := mciSendString(PChar(Cmd), nil, 0, 0);
if RetVal <> 0 then
begin
  {get message for returned value}
  mciGetErrorString(RetVal, ErrMsg, 255);
  MessageDlg(StrPas(ErrMsg), mtError, [mbOK], 0);
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
SendMCICommand("open waveaudio shareable");
SendMCICommand("play "C:\xyz\BackgroundMusic.wav"");
SendMCICommand("play "C:\xyz\AnotherMusic.wav"");
SendMCICommand("close waveaudio");
end;

Или уж совсем внаглую:
mciSendString(PChar("play "C:\xyz\BackgroundMusic.wav""), nil, 0, 0);
mciSendString(PChar("play "C:\xyz\AnotherMusic.wav""), nil, 0, 0);

Удачи!



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

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

Наверх




Память: 0.48 MB
Время: 0.033 c
14-1097138065
malkolinge
2004-10-07 12:34
2004.10.24
Предлагаю обсудить статью про разработку ВЕБ сервисов в Д8


14-1097066132
Igorek
2004-10-06 16:35
2004.10.24
Отладка многопоточных приложений в Дельфи / Билдере


3-1095964823
Abuzer
2004-09-23 22:40
2004.10.24
RecNoв чем проблема?


14-1096730173
QuestionX
2004-10-02 19:16
2004.10.24
Множество try except finally ?


4-1095197102
vertal
2004-09-15 01:25
2004.10.24
Формирование ToUnicode CMap для True Type шрифта в PDF документе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский