Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2008, 14:54   #1
JoanM
Дешево пишу проги)
Форумчанин Подтвердите свой е-майл
 
Аватар для JoanM
 
Регистрация: 12.12.2006
Сообщений: 106
По умолчанию PlaySound для 2 файлов

Здравствуйте!
Я на этом форуме искал и через яндекс/гугель искал, но не нашёл. Вопрос: как воспроизвести 2 файла (можно больше) одновременно. Т.е. допустим у меня в проге играет фон + какой-то звукан появился. Через MediaPlayer не предлагайте (есть причины). Может быть есть какие флаги на PlaySound? Хорошо бы на PlaySound сделать.
На MediaPlayer делаю:

MP.filename:='asdfadf';
MP.Open;
MP.Play;

Когда в следующий раз делаю то же самое, даёт ошибку.
Пишу тогда:

If MP.Filename='Тот, что уже был открыт' then MP.Play;

Всё равно даёт какую-то ошибку про псевдоним файла.

Заранее спасибо!
JoanM вне форума Ответить с цитированием
Старый 07.05.2008, 15:43   #2
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

А второй MediaPlayer для второго звука не пробовал добавить? Первый пускай себе играет, и воспроизводи второй когда нужно.

В PlaySound нужно флаг передать такой чтобы управление вернула программе сразу, и можно будет еще раз запустить.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 07.05.2008, 15:48   #3
Terran
Участник клуба
 
Аватар для Terran
 
Регистрация: 28.11.2007
Сообщений: 1,521
По умолчанию

Если файлы которые нужно воспроизвести формата .wav, то можно использовать такой способ для каждого файла:

const
SND_ASYNC = $0001;
function sndPlaySound(lpszSoundName: PChar; uFlags: UINT): BOOL; stdcall; external 'winmm.dll' name 'sndPlaySoundA';
procedure PlayWav(FileName:string);
begin
sndPlaySound(PChar(FileName),SND_AS YNC);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
PlayWav('C:\1.wav');
end;
Всегда рад помочь!
Terran вне форума Ответить с цитированием
Старый 23.09.2008, 18:55   #4
lacost
Пользователь
 
Регистрация: 25.03.2007
Сообщений: 67
По умолчанию

Пишу тут потому что не хочу создавать тему клон.

Такой вопрос, необходимо воспроизвести n звуков одновременно, думаю n будет не больше 10 но это не суть важно. Вобщем какой порекомендуете способ чтобы можно было управлять воспроизведением каждой мелодии, ещё очень важно чтобы это не сильно грущило систему так как все мелодии должны воспроизводиться чётко в своё время.

Буду благодарен за любые советы.
lacost вне форума Ответить с цитированием
Старый 23.09.2008, 19:06   #5
JTG
я получил эту роль
Старожил
 
Аватар для JTG
 
Регистрация: 25.05.2007
Сообщений: 3,694
По умолчанию

Ищи TBassPlayer, или просто bass.dll+bass.pas
пыщь
JTG вне форума Ответить с цитированием
Старый 23.09.2008, 20:25   #6
lacost
Пользователь
 
Регистрация: 25.03.2007
Сообщений: 67
По умолчанию

Подскажи плз где можно скачать исходники какого нибудь плеера с коментариями на русском или хорошоую справку по использованию этой ддлки.

Потому что те исходники которые я нарыл меня мало устаривают...
lacost вне форума Ответить с цитированием
Старый 23.09.2008, 20:50   #7
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Найди именно TBassPlayer, с ним помимо самого модуля и библиотек должны быть примеры использования с исходниками.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Старый 23.09.2008, 22:35   #8
lacost
Пользователь
 
Регистрация: 25.03.2007
Сообщений: 67
По умолчанию

ДА спасибо нашел более менее понятно, но всётакии хотелось бы ещё и конкретный ответ. Может кто то сталкивался с одновременным воспроизведение нескольких звуков и будут советы в реализации....прошу простить за наглость
lacost вне форума Ответить с цитированием
Старый 24.09.2008, 08:07   #9
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Попробуйте набор компонентов New Audio Component 1.72
http://www.softsl.com/Components-View-401.html

Последний раз редактировалось SERG1980; 24.09.2008 в 08:10.
SERG1980 вне форума Ответить с цитированием
Старый 24.09.2008, 09:49   #10
mutabor
Телепат с дипломом
Старожил
 
Аватар для mutabor
 
Регистрация: 10.06.2007
Сообщений: 4,929
По умолчанию

Цитата:
Может кто то сталкивался с одновременным воспроизведение нескольких звуков и будут советы в реализации...
Не имеет значения каким компонентом или функцией воспроизводить звуки, принцип от этого не меняется. Если звуки воспроизводятся асинхронно, запускайте хоть пятьдесят, лишь бы ресурсов системы хватило. Это можно сделать и с TMediaPlayer и с PlaySound и тем более с более продвинутыми звуковыми движками.

Если BASS вы скачали только ради этого, можно было этого не делать, а обойтись стандартными средствами Дельфи.

Тут вообще вопрос реализации алгоритма, вывода звуков мало касающегося. Все зависит от конкретной задачи. В общем случае, я бы поместил в массив идентификаторы звуков, время их вывода, и в таймере проверял подошло ли время, если подошло - запускал бы определенный звук.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог
mutabor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PlaySound() Артэс Общие вопросы C/C++ 7 19.09.2010 20:18
Нужна помощь: выбор файлов исходя из имени файлов Antik163RUS Помощь студентам 4 19.06.2008 21:20
Печать pdf файлов из списка файлов в Excel АПС Microsoft Office Excel 5 15.04.2008 16:04
PlaySound delphin100 Мультимедиа в Delphi 9 31.03.2008 08:40
соединение файлов Lonix Общие вопросы Delphi 1 06.11.2007 22:52