Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Воспроизведение звука


Автор: DragonFire 14.10.2005, 09:51
Как воспроизвести звук с помощью OpenAL или другим способом, тока без стандартных компонентов Delphi!!! smile smile smile

Автор: Alexeis 14.10.2005, 11:15
Чем стандартные неустраивают smile

Автор: DragonFire 14.10.2005, 12:02
Я от VSL полностью отказался. Формы через WinApi создаются и соответственно никаких стандартных компонентов быть не может...

Автор: Alexeis 14.10.2005, 12:26
А звук записан Wav или необходимо синтезировать при помощи
звуковой карты smile

Автор: DragonFire 14.10.2005, 13:10
Либо в Wav, либо в MP3. Как лучше так и сделаю... Главное, объясни мне, как воспроизводить эти файлы... smile

Автор: s-mike 14.10.2005, 15:16
DirectSound, тут уже была не одна тема о нем.

Автор: DragonFire 14.10.2005, 20:09
А про OpenAL есть что-нибудь?
Если нет, то можно ссылочку на DirectSound, плиз... smile

Автор: Snowy 14.10.2005, 21:29
IMHO PlaySound. Куда проще и стандартней.
WAV с любой компрессией играет, был бы кодек установлен.

Автор: DragonFire 15.10.2005, 09:44
А как использовать этот PlaySound? Ссылочку на статью или пример дай, или же напиши плиз...

Автор: Snowy 15.10.2005, 10:45
Да сколько угодно.
1. http://forum.vingrad.ru/index.php?act=Search&CODE=show&searchid=68e1336900960bde0c90e469a9396a2d&search_in=posts&result_type=topics&highlite=playsound
2. Delphi->Help->WinAPI
Добавлено @ 10:47
3. http://forum.vingrad.ru/index.php?act=Search&CODE=show&searchid=190c7994dd4a0a130615882cc984f8d4&search_in=posts&result_type=topics&highlite=playsound

Автор: DragonFire 15.10.2005, 11:27
Спасибо, будут вопросы, выложу тута...

Автор: DragonFire 15.10.2005, 12:01
Посмотрел я темки и все же не понял, как воспроизвести с помощью PlaySound два звуковых файла одновременно??? Это нужно для создания фоновой музыки например.... smile smile smile smile smile

Автор: Guest 19.10.2005, 17:43
Вроде как это делается установкой ключа SND_ASYNC.
Вроде этого:

Playsound ('sound1.wav',0,SND_ASYNC);
Playsound ('sound2.wav',0,SND_ASYNC);
то есть два звука несинхронизированно сыграют smile
может, если я ошибся, то SOUND_ASYNC smile

Автор: kindDevil 19.10.2005, 17:44
это я (забывший войти) - см. выше smile

Автор: DragonFire 19.10.2005, 18:09
А в том все и дело, что при команде Playsound ('sound2.wav',0,SND_ASYNC);
Sound1 затыкается и играет тока sound2. smile smile smile smile smile smile smile smile smile smile
А SOUND_ASYNC он вообще не знает...

З.Ы. Чтобы не забывать входить, выбери ДА при авторизации в пункте:
"Запомнить Вас?
Если включено, то при следующем посещении, Вы будете автоматически авторизованы.
Не рекомендовано, если компьютер является общественным."

Автор: kindDevil 20.10.2005, 16:26
ну не знаю, у меня попробовал - работает, правда с привязкой на разные события, но одновременно smile
а не вошел, потому что историю браузера очистил smile)))

Автор: DragonFire 20.10.2005, 18:00
А понятно, а я сделал другим способом:
Код

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;  

smile smile smile smile smile

Автор: ВасяТриллер 31.10.2005, 14:36
Цитата
А звук записан Wav или необходимо синтезировать при помощи
звуковой карты smile


Не знаю, нужно ли создавать новую тему...
Весь форум облазил, но нигде не нашёл smile : как вывести звук в собственном формате (возможно, перекодированный в оперативке в RAW-формат) на выход звуковой карты? Желательно варианты под WinXP и реализацию средствами WinAPI...

Автор: DragonFire 31.10.2005, 15:28
Не знаю, не знаю. С собственными форматами не работал...
Лучше создай новую темку....

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)