05. september 2008 - 21:10Der er
9 kommentarer og 1 løsning
Svær: Flere waves samtidig (på udvalgt enhed, samt flere krav)
Hej eksperter.
Jeg vil gerne spørge, om det er lykkedes nogle herinde, at lave det her, kun ved at benytte sig af mmsystem.pas API'en, og dermed ingen ekstra dll.
Altså: Vil gerne kunne afspille flere waves på samme tid, på en udvalgt waveout enhed. Jeg har haft behovet for at gøre dette, op mod flere gange, gennem tiden, men det er aldrig lykkedes, at afspille mere end 1 wave ad gangen (via sndPlaySound).
HVOR LANGT ER JEG KOMMET...
Først fik jeg lavet en resource DLL, hvorefter jeg kunne afspille direkte derfra, ved at bruge: loadLibrary, loadResource, sndPlaySound(lpData,SND_MEMORY+SND_ASYNC).
Herefter kom jeg en smule længere, ved at lave en tWave som: tWave=class(tMemoryStream). Så er det jo muligt at indlæse wave-filerne fra disk, til memory, og så afspille dem på nogenlunde samme måde: fActive:=sndPlaySound(memory,SND_MEMORY or SND_ASYNC);
Derfor vil jeg gerne kunne gøre det fra et memory stream.
Jeg har forsøgt at hente alverdens komponenter, men det har ikke rigtig fungeret. Har forsøgt med at afspille fra flere tråde samtidig, men dette virkede heller ikke. Har læst noget om, at man skal "mixe" lydene sammen selv, men har ellers ingen anelse om hvordan.
Håber at det er lykkedes for andre, og at nogen vil hjælpe med det.
hrc> Tror det ikke, fordi lydene gerne skulle kunne fyres af løbende.
martin> Er du sikker på at komponentet vil kunne gøre det ?, Jeg har kigget lidt på det, men kan ikke umiddelbart vælge device, og afspille flere lyde. Men hvis du ved den kan gøre det, så er det nok bare mig der ikke kan finde ud af det :)
Jeg kunne godt ønske en "demo", hvor man vælger wave output via comboBox, og herefter 3 knapper til at fyre forskellige lyde af på den valgte enhed
Okay nu ser det alligevel lovende ud. Opdagede at den har lavet 2 faneblade (havde kun set den ene)... Kender du til komponentet? Jeg har fået den til at afspille 2 lyde samtidig, men er lidt i tvivl om hvordan man på en let måde kommer til at kunne "trigger" sine lyde, og så få det blandet sammen på de rigtige tidspunkter.
Der ligger rigtig nok meget guf sammen med komponenterne :) Tror på det er en god pakke for at komme videre.
Det er da lidt tungt (bare lige at afspille et par lyde samtidig), men kunne være rart at lære det. Kan se at der findes nogle features såsom filter og volume. Kunne være sjovt at kunne bestemme dette for de enkelte lyde. Vil vildt gerne se eksempel :)
p.s. Martin du får points hvis du svarer. Har noget at læse i nu. tak
psycosoft-funware> Vil også gerne give points til dig, for gode eksempler :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.