Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv (https://www.delphipraxis.net/159684-moechte-winamp-stummschalten-falls-anderer-ton-z-b-youtube-vid-aktiv.html)

Julian M. 7. Apr 2011 22:16

Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Hallo,

da ich im Hintergrund immer Winamp laufen habe und es mich nervt, es jedes mal stummschalten zu müssen,
wenn ich mal ein kurzes Video auf Youtube etc. gucken will, dachte ich, man könnte da vielleicht etwas schreiben.

Ich hab hier auf Delphi-Praxis schon ein Programm geladen, mit dem man Winamp steuern kann.
(Auch lauter/leiser)

Ich weiß jetzt nur nicht, wie ich mit dem Programm ermitteln soll, ob ein anderer Ton abgespielt wird, als der von Winamp. Es gibt auch bereits ein Programm, welches Winamp stumm stellt, wenn bei Teamspeak Jemand spricht.

Ließe sich dass auch so programmieren, dass Winamp stummgeschaltet wird, wenn ein Ton von einem anderen ( egal welchem) Programm kommt? Wenn ja, wie? :D


Danke+ Gruß Julian

rollstuhlfahrer 7. Apr 2011 22:40

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Herzlich willkommen in der DP :dp: :dp:

Wenn du Win >= Vista hast, dann kannst du mal versuchen, ob es ein Event der Sound-API gibt, wenn ein anderes Programm die Tonausgabe startet. Mit Win XP und drunter hast du schlechte Karten.

Bernhard

EWeiss 7. Apr 2011 22:52

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Das ist eigentlich kein Problem
Du benötigst quasi nur ein kleines Programm.

Wenn Winamp läuft suche das WindowHandle über FindWindow..
Danach sendest du eine Message an Winamp

Zitat:

IPC_SETVOLUME = 122;
(* (requires Winamp 2.0+)
** SendMessage(hwnd_winamp,WM_WA_IPC,volume,IPC_SETVO LUME);
** IPC_SETVOLUME sets the volume of Winamp (from 0-255).
*)
Das funktioniert immer und überall.
Kannst dann sogar noch bestimmen wie laut er dann sein darf oder halt ganz aus.

Zitat:

wenn ein Ton von einem anderen ( egal welchem) Programm kommt?
Hmm das habe ich überlesen.

gruss

Julian M. 8. Apr 2011 15:05

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
@rollstuhlfahrer:

Danke für den Tipp, hab zwar Win Xp, aber ne Windows 7 OEM hab ich auch noch.
Hast du ne Ahnung wie man mit Delphi auf die Sound-API zugreift?

@EWeiss: Danke, also das steuern von Winamp mit Delphi klappt gut, mein Hauptproblem ist halt, wie ich überprüfe, ob ein anderes Programm außer Winamp Ton wiedergibt.

Gruß Julian

EWeiss 8. Apr 2011 15:09

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Zitat:

Hast du ne Ahnung wie man mit Delphi auf die Sound-API zugreift?
Am besten wäre es wenn du das mit hilfe der bass.dll erledigst.
Diese ist kompatibel zu XP und Win7

Schau dir das RecordTest Sample in der package an.
Ich denke damit ließe sich zumindest feststellen ob überhaupt ein TonSignal ankommt.
Das problem wird aber dennoch sein wie feststellen ob es von Winamp kommt oder von einer anderen anwendung.

gruss

BenjaminH 8. Apr 2011 15:18

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Hi,
was du brauchst ist Zugriff auf die Core Audio Funktionen von Windows. MSDN-Library durchsuchenWASAPI
Damit kannst du erfahren welche Programme gerade Sound senden, genauso, wie es z.b. im Mixer selbst angezeigt wird.

Ich habe hier im Forum vor einer Weile mal den Mixer von Windows 7 nachgebaut gesehen(leider find ich ihn jetzt nicht mehr - wenns jemand findet, das Thema reizt mich grad selbst sehr).
Wenn du dir davon den Code anschaust müsstest du selbst rausfinden können, wie man herausfindet welche Anwendung gerade Sound abspielt.

Viel Erfolg,
Benjamin

EWeiss 8. Apr 2011 15:51

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Zitat:

Zitat von BenjaminH (Beitrag 1093952)
Hi,
was du brauchst ist Zugriff auf die Core Audio Funktionen von Windows. MSDN-Library durchsuchenWASAPI
Damit kannst du erfahren welche Programme gerade Sound senden, genauso, wie es z.b. im Mixer selbst angezeigt wird.

Ich habe hier im Forum vor einer Weile mal den Mixer von Windows 7 nachgebaut gesehen(leider find ich ihn jetzt nicht mehr - wenns jemand findet, das Thema reizt mich grad selbst sehr).
Wenn du dir davon den Code anschaust müsstest du selbst rausfinden können, wie man herausfindet welche Anwendung gerade Sound abspielt.

Viel Erfolg,
Benjamin

Die ist doch eingebunden in der Bass.dll
Warum mehr Arbeit machen als nötig.

gruss

rollstuhlfahrer 8. Apr 2011 16:07

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Zitat:

Zitat von EWeiss (Beitrag 1093963)
Die ist doch eingebunden in der Bass.dll

Nicht ganz. Man benötigt ein Addon zu der Bass.dll (siehe entsprechendes Forum).

Bernhard

Julian M. 8. Apr 2011 16:14

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Jetzt bin ich verwirrt :D

Ihr habt ne ganze Menge mehr Ahnung davon als ich...

Also wenn ich das so richtig rauslese - ohne Win 7 oder Vista geht nichts. ?

Aber wenn ich den Windows 7 Mixer nachgebaut hier im Forum finde, dürfte es nicht mehr soo schwer sein... Hoffe ich :)

EWeiss 8. Apr 2011 16:28

AW: Möchte Winamp stummschalten, falls anderer Ton (z.B. Youtube-Vid) aktiv
 
Zitat:

Zitat von rollstuhlfahrer (Beitrag 1093967)
Zitat:

Zitat von EWeiss (Beitrag 1093963)
Die ist doch eingebunden in der Bass.dll

Nicht ganz. Man benötigt ein Addon zu der Bass.dll (siehe entsprechendes Forum).

Bernhard

WASAPI ist ein ADDON für Bass ja ich weiss ;)

gruss


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 Uhr.
Seite 1 von 3  1 23      

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