Вверх ↑
Этот топик читают: Гость
Ответов: 195
Рейтинг: 1
#1: 2022-06-09 17:21:26 ЛС | профиль | цитата
использовал PlaySound. возникла задача, что бы выполнить действие по окончанию воспроизведения звука . не нашел такой точки.
Как мне найти выход?.
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 187
Рейтинг: 3
#2: 2022-06-09 19:28:05 ЛС | профиль | цитата
используй MediaPlayer там есть

Add(MediaPlayer,15122210,581,378)
{
}
карма: 1

0
Ответов: 195
Рейтинг: 1
#3: 2022-06-14 23:16:06 ЛС | профиль | цитата
он воспроизводит только из файла а мне нужно из памяти
карма: 0

0
Ответов: 270
Рейтинг: 5
#4: 2022-06-15 02:33:05 ЛС | профиль | цитата
На держи мне добрый человек flint2 делалhttp://forum.hiasm.com/getfile/38232
карма: 0

0
Ответов: 195
Рейтинг: 1
#5: 2022-06-15 09:26:08 ЛС | профиль | цитата
но здесь ведь тоже из файла. а мне нужно из массива данных. из памяти.
карма: 0

0
Ответов: 8769
Рейтинг: 812
#6: 2022-06-15 19:23:04 ЛС | профиль | цитата
z80, а так: посчитать и записать время исполнения для каждого элемента массива, включать таймер по номеру элемента.
Шесть песен Виктора Цоя в массиве (15 Мб): https://disk.yandex.ru/d/iH6eKfbEnBmwQw
(Кнопками мыши по форме переключается следующий-/предыдущий.)
карма: 18

0
Ответов: 195
Рейтинг: 1
#7: 2022-06-15 21:09:30 ЛС | профиль | цитата
Леонид, отличная идея. Спасибо. я вот только одного не пойму, откуда вы узнали, что я поклонник Цоя? я на этом форуме нигде не писал об этом
карма: 0

0
Ответов: 458
Рейтинг: 159
#8: 2022-06-15 21:47:34 ЛС | профиль | цитата
z80, ник Z80 о многом говорит , в то время Виктора Цоя многие слушали...
карма: 4

1
Голосовали:z80
Ответов: 8769
Рейтинг: 812
#9: 2022-06-15 22:48:33 ЛС | профиль | цитата
z80, опыт большой накопился за 77 лет Ну и не "Ласковый май" же, кастраты, блин
карма: 18

1
Голосовали:z80
Ответов: 1994
Рейтинг: 129
#10: 2022-06-16 01:35:14 ЛС | профиль | цитата
z80 писал(а):
но здесь ведь тоже из файла. а мне нужно из массива данных. из памяти.

Что значит тоже из файла? И окончание есть.

https://forum.hiasm.com/getfile/39505

Редактировалось 1 раз(а), последний 2022-06-16 01:49:52
карма: 5

0
Ответов: 5103
Рейтинг: 578
#11: 2022-06-16 11:04:05 ЛС | профиль | цитата
Мда уж

пару звуков добавить самостоятельно

Add(MainForm,2953706,35,91)
{
Left=0
Top=0
Width=289
Height=188
Align=0
akLeft=0
akTop=0
akRight=1
akBottom=1
MarginLeft=0
MarginTop=0
MarginRight=0
MarginBottom=0
Margin=0
MaxWidth=0
MaxHeight=0
MinWidth=0
MinHeight=0
Color=-16777201
Font=[MS Sans Serif,8,0,0,1]
ParentFont=1
Visible=0
Enabled=0
Cursor=0
TabOrder=0
Ctl3D=1
WinStyle=0
Name=""
Hint=""
HintManager="(empty)"
ReBarCtrl="(empty)"
StrID=""
Layout="(empty)"
WidthScale=0
HeightScale=0
AlphaBlendValue=255
Caption="Form"
BorderStyle=2
WindowsState=0
Icon=[]
TaskBar=0
DragForm=1
KeyPreview=0
TransparentColor=16777215
Picture=[]
SavePosName=""
MouseCapture=1
ClientSize=1
Position=0
ShiftLeft=0
ShiftTop=0
TransparentManager="(empty)"
FormFastening="(empty)"
}
Add(WaveArray,8710786,357,133)
{
Waves=['Wave'=[],'Wave'=[]]
UseName=1
PlayType=0
}
Add(Button,11807569,105,91)
{
Left=30
Top=25
Width=55
Height=40
Align=0
akLeft=0
akTop=0
akRight=1
akBottom=1
MarginLeft=0
MarginTop=0
MarginRight=0
MarginBottom=0
Margin=0
MaxWidth=0
MaxHeight=0
MinWidth=0
MinHeight=0
Font=[MS Sans Serif,8,0,0,1]
ParentFont=1
Visible=0
Enabled=0
Cursor=0
TabOrder=0
Ctl3D=1
WinStyle=0
Name=""
Hint=""
HintManager="(empty)"
ReBarCtrl="(empty)"
StrID=""
Layout="(empty)"
WidthScale=0
HeightScale=0
Caption="Push"
Data=Integer(1)
Flat=1
DefaultBtn=1
Mode=0
Icon=[]
ID=-1
link(onClick,9287932:doEvent1,[])
}
Add(Thread,3033020,203,133)
{
Delay=1
FastStop=0
BusyEvent=0
link(onExec,15829374:doData,[])
}
Add(Hub,12917998,308,133)
{
InCount=1
OutCount=2
link(onEvent1,8710786:doPlay,[])
link(onEvent2,4143214:doMessage,[(335,146)(335,188)])
}
Add(Message,4143214,357,182)
{
Message="end"
Caption=""
Type=0
Icon=0
DefButton=0
}
Add(DoData,15829374,259,133)
{
Data=Integer(1)
link(onEventData,12917998:doEvent1,[])
link(Data,12577332:Count,[])
}
Add(CounterEx,12577332,259,91)
{
Min=0
Max=1
Step=1
Direct=0
Default=0
}
Add(Hub,9287932,154,91)
{
InCount=1
OutCount=2
link(onEvent1,12577332:doNext,[])
link(onEvent2,3033020:doStart,[(186,104)(186,139)])
}
Add(Memo,1393461,35,42)
{
Left=115
Top=25
Width=135
Height=120
Align=0
akLeft=0
akTop=0
akRight=1
akBottom=1
MarginLeft=0
MarginTop=0
MarginRight=0
MarginBottom=0
Margin=0
MaxWidth=0
MaxHeight=0
MinWidth=0
MinHeight=0
Color=-16777211
Font=[MS Sans Serif,8,0,0,1]
ParentFont=1
Visible=0
Enabled=0
Cursor=0
TabOrder=0
Ctl3D=0
WinStyle=0
Name=""
Hint=""
HintManager="(empty)"
ReBarCtrl="(empty)"
StrID=""
Layout="(empty)"
WidthScale=0
HeightScale=0
ModeSp=0
SizeSp=4
ColorSp=-16777201
MinOwn=0
MinRest=0
EnabledSP=1
Style_SP=1
Size_Sp=7
ColorSP1=16777215
ColorSP2=15780518
ColorSP3=12615680
MinOwnEx=0
MinRestEx=0
FileName=""
Strings=#
AddType=0
ScrollBars=0
ReadOnly=1
}

карма: 5
0
Ответов: 1994
Рейтинг: 129
#12: 2022-06-16 13:03:23 ЛС | профиль | цитата
Мда уж
Хранить в памяти, читай в файле с программой, WAV - это что то.
Не лучше ли на порядок\два меньше?
Вообще это всё не так делается!
Всё зависит от задачи.
В игрушках ну очень много звуков и какой то фон идёт.
Понятно, что фон крутится из файла, но из файлов нельзя воспроизводить звук по событиям(задержка).
Допустим звон склянки, скрип двери, или накладываются звуки нескольких действий синхронно, или со сдвигом на десяток-сто миллисекунд по сценарию....
Для этого есть семплы, которые закачиваются в память с любого вида файла(ogg, mp3, ...) массивами и на событие передаётся указатель на него и никаких стримов! Можно даже хранить в памяти в виде РИФОВ.
А лучше даже сразу делать потоки(звуковые, не стримы!!!), хранить и передавать указатели на них.
Всё зависит от задачи.
Но хранить в exe WAV - охренеть! А mp3, ogg,... не катит?

Редактировалось 12 раз(а), последний 2022-06-16 15:19:07
карма: 5

0
Ответов: 1994
Рейтинг: 129
#13: 2022-06-16 17:08:50 ЛС | профиль | цитата
А с этими двумя компонентами можно делать о чём я писал выше.
https://disk.yandex.ru/d/PNSAJcdL8RocJw
То есть создаём в памяти кучу потоков из файлов верхним компонентом(по схеме) и скармливаем ссылки на потоки нижнему компоненту. (Это тебе не из стримов mp3 крутить что выше пример был). (Схему рисовать надо? Сейчас пример того же самого, только вид сбоку) В exe тоже можно библиографию дисков разместить в mp3, чем пяток песен в wav.)
Без Bass.dll куда удобней, а вообще то даже OpenAL уже дремучая старина, a наш Squall до сих пор все новомодные NVIDIA-AL и подобные на лопатки кладёт!

Редактировалось 3 раз(а), последний 2022-06-16 17:29:41
карма: 5

0
13
Сообщение
...
Прикрепленные файлы
(файлы не залиты)