Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetzen (https://www.delphipraxis.net/188310-windows-7-ducking-mit-delphi-nutzen-funktionierendes-c-bsp-zu-delphi-uebersetzen.html)

Julian M. 18. Feb 2016 18:27


Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetzen
 
Nein, hat nichts mit Enten zu tun.. :-D

Ich würde gerne die Ducking Funktion von Windows 7 ansteuern.
Das ist eine Funktion, welche von einer Anwendung benutzt werden kann, um alle anderen Anwendungen zu muten bzw. leise zu stellen.

https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

Ich konnte jedoch nichts dazu im Bezug auf Delphi finden..
Ich werde jetzt mal das dort angegebene Sample mit Visual Studio 2008 kompilieren..
Wie groß ist die Chance, dass man das in Delphi leicht übernehmen kann ?

Noch ein Screenshot

http://abload.de/image.php?img=soundcwub6.png

Julian M. 19. Feb 2016 09:23

AW: Windows 7 Ducking mit Delphi nutzen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Ich liebe ja Monologe :-D (natürlich nicht böse gemeint:thumb:)

Also, ich habe nun folgende Erkenntnisse gewonnen:

Die 90-Tage Testversion von Visual Studio 2008 gibt's hier direkt von Microsoft:
http://www.microsoft.com/downloads/i...NUX1435622.iso

Wichtig, um die Ducking-Funktion zu testen ist NICHT der Ducking Media Player !
(Man nehme einfach einen beliebigen Media Player und spiele damit Musik ab. VLC, Browser....egal)

DANN nimmt man das DuckingCaptureSample, welches im Windows SDK enthalten ist und hier zu finden ist:
Code:
C:\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\audio\DuckingCaptureSample
(siehe auch Anhang DuckingCaptureSample_untouched.7z)

Dieses lässt sich in VS 2008 leider nicht ohne weiteres Kompilieren, man bekommt eine Fehlermeldung dass das Projekt veraltet ist, das ist aber weiter nicht schlimm. Es gibt jedoch eine Variable in einem Funktionsaufruf, welche nicht mehr existiert.
Ich habe sie entfernt, keine Ahnung, wozu sie gut war, ist mir auch egal, funktioniert trotzdem.
(Siehe Anhang: DuckingCaptureSample_modified.7z)
Hinweis: Die Projektdatei ist die .sln

Jedenfalls lassen sich jetzt damit alle anderen Anwendungen per Klick muten und wieder unmuten..

Soo, wer übersetzt mir das C++ Gedöns jetzt zu Delphi ? :-D Im Ernst : Hilfe ! An dieser Stelle komme ich wohl wirklich nicht weiter..

jaenicke 19. Feb 2016 11:09

AW: Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetz
 
Wenn ich das auf den ersten Blick richtig verstehe, gibt es dafür gar keine direkte API, die dort verwendet wird. Dort wird einfach (in WaveChar.cpp) waveInOpen benutzt und WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE als Parameter. Dadurch gibt man dann vermutlich an, dass es sich um eine Kommunikation handelt und das reicht bereits...

Ich habe das aber nur ganz kurz überflogen...

Julian M. 19. Feb 2016 11:50

AW: Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetz
 
danke für deine Antwort !

Ich verstehe das so:
Die Wavechat.cpp benutzt Funktionen der WaveChat.h richtig ? Daher müsste ich wissen, wie die entsprechenden Aufrufe für Delphi
zur Benutzung der Wavechat.h lauten, also quasi eine Wavechat.pas.

Ich habe sowas schon öfters mal eingebunden, also eine .pas zusammen mit .h ..aber selbst übersetzt noch nie.

vagtler 19. Feb 2016 12:40

AW: Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetz
 
Zitat:

Zitat von Julian M. (Beitrag 1330812)
[...] Ich habe sowas schon öfters mal eingebunden, also eine .pas zusammen mit .h [...]

Das glaube ich nicht, Tim.

http://www.drbob42.com/tools/headconv.htm

Julian M. 19. Feb 2016 14:55

AW: Windows 7 Ducking mit Delphi nutzen //Funktionierendes C++ Bsp zu Delphi übersetz
 
Zitat:

Zitat von vagtler (Beitrag 1330816)
Zitat:

Zitat von Julian M. (Beitrag 1330812)
[...] Ich habe sowas schon öfters mal eingebunden, also eine .pas zusammen mit .h [...]

Das glaube ich nicht, Tim.

http://www.drbob42.com/tools/headconv.htm

Stimmt, da war ich wohl verwirrt ;) Danke für den Link, schau ich mir mal an.

Schönes Wochenende.. !


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:31 Uhr.

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