Два Playsound

 

Добрый день.

Кто знает - подскажите.

Как на одно событие проиграть два файла WAV?

Пример:

МА пересекла цену.

Playsound(""Symbol()+".wav");

Playsound("Cross_MA.wav");

Воспроизводится только второй.

 
А первый точно есть, с таким названием?
 
evillive:
А первый точно есть, с таким названием?

Да, точно.

Более того, экспериментировал с файлами 1,2,3 для точности.

1.wav - произносит "ПЕРВЫЙ",-

2.wav - произносит "ВТОРОЙ",-

3.wav - произносит "ТРЕТИЙ",

В результате :

Playsound(1.wav);

Playsound(2.wav);

Playsound(3.wav);

Постоянно произносит: "ТРЕТИЙ", "ТРЕТИЙ", "ТРЕТИЙ"...

 
snmax:

Да, точно.

Более того, экспериментировал с файлами 1,2,3 для точности.

1.wav - произносит "ПЕРВЫЙ",-

2.wav - произносит "ВТОРОЙ",-

3.wav - произносит "ТРЕТИЙ",

В результате :

Playsound(1.wav);

Playsound(2.wav);

Playsound(3.wav);

Постоянно произносит: "ТРЕТИЙ", "ТРЕТИЙ", "ТРЕТИЙ"...

Может первые просто не успевают "выговориться",- то как им дать секунд 5 на произношение?

А может причина в чём-то другом.

Поэкспериментируйте.

Прилагаю 1.wav 2.wav 3.wav в архиве


Файлы:
sounds.zip  41 kb
 
Ставьте функцию Sleep() между двумя PlaySound(). Все будет работать.

Например, 

Playsound(""Symbol()+".wav");

Sleep(500); 

Playsound("Cross_MA.wav");

 

 
pro_:
Ставьте функцию Sleep() между двумя PlaySound(). Все будет работать.

Например, 

Playsound(""Symbol()+".wav");

Sleep(500); 

Playsound("Cross_MA.wav");

 

docs.mql4 говорит "Функцию Sleep() нельзя вызывать из пользовательских индикаторов, так как индикаторы выполняются в интерфейсном потоке и не должны его тормозить. "  : (((
 

Таймеры в помощь.

Еще вариант объединить звук ручками и вызывать как один.


 
pro_:
Ставьте функцию Sleep() между двумя PlaySound(). Все будет работать.

Например, 

Playsound(""Symbol()+".wav");

Sleep(500); 

Playsound("Cross_MA.wav");

 

Не хочет. : (((

На 1.wav,2.wav продолжает твердить "ВТОРОЙ,ВТОРОЙ ..."

 
а в чём смысл именно нескольких звуков? говорящий бот нужен? что-то вроде text to speech?
 
evillive:
а в чём смысл именно нескольких звуков? говорящий бот нужен? что-то вроде text to speech?

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

Если на каком-то инструменте возникает нужный сигнал о покупке или продаже мы его или пропустим или опоздаем.

Экранные алерты заставляют всё время быть за монитором.

Если отслеживаемых событий 10,20 или более то и звуков надо Кол. инструментов Х кол. событий (10х10=100).

А решение этой проблемы сократит их до Кол. инструментов + кол. событий (10+10=20).

 

так всё равно несколько звуков одновременно с одного индикатора не проиграется, а если по очереди, так опять же задержка )))

чтобы что-то не пропустить, это надо советника писать, чтобы исполнял по сигналу, а не трубить по жилищу.