Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Simultaner Sound von Stream/Resource (https://www.delphipraxis.net/107307-simultaner-sound-von-stream-resource.html)

FoxOne 25. Jan 2008 15:20


Simultaner Sound von Stream/Resource
 
Hallo!

Ich möchte gerne Sounds simultan abspielen (dass sie also überlagert hörbar sind). Wegen Portierbarkeit des Codes möchte ich gerne auf externe dlls etc. verzichten, und fortwährendes Hantieren mit einer Vielzahl von Soundfiles ist mit unsymphatisch (zumal die alle sehr klein sind), weshalb ich Resource-Files zum Verstauen der WAVs bevorzuge. Nun stehe ich vor folgenden Ergebnissen aus Recherchen und Experimenten:

1) Playsound kann nur einen Kanal bedienen

2) mciSendstring('play....') kann nur Files abspielen

Besonders letzteres finde ich verwunderlich, gibt es da wirklich keine Möglichkeit, mit mci aus einer Resource ohne den Umweg über ein temporäres File (Vorschlag aus diesem Forum) den Sound abzuspielen?

Zum Playsound finde ich folgendes interessant: Wenn aus zwei Applikationen gleichzeitig Playsound zum Abspielen von WAVs verwendet wird, hört man diese überlagert. Meine Idee, dann in einer Applikation in zwei Threads WAVs mit Playsound zu spielen, brachte mich nicht weiter: Es ist dann wieder entweder nur der eine WAV oder der andere zu hören. Weiß vielleicht jemand den Unterschied dieser beiden Szenarios bzw. vielleicht gar, wie man die Threads dazu bringen könnte, in dieser Hinsicht eigenständig wie die Applikationen zu agieren?

Vielen Dank,
Martin

Muetze1 25. Jan 2008 15:43

Re: Simultaner Sound von Stream/Resource
 
1. Du willst Portierbarkeit und von daher keine DLLs, aber Resourcen wiederrum ja? :gruebel:
2. Du hast noch zwei Möglichkeiten vergessen: zum einen über die WinAPI MMSystem (waveOut()) abspielen und zum anderen DirectSound. Beides kann direkt mit einem Buffer befüttert werden, somit u.a. mit einem TResourceStream.


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz