Batch Beep-Ton Allgemein 

Status
Für weitere Antworten geschlossen.

H@zAdOu$

Registered +
Registriert
Nov. 2003
Beiträge
158
Hi !

Ich kann ja ganz simpel mit einem BatchCode den internen PC-Speaker zum piepsen bewegen:

Code:
@echo ^G [Strg - G]

doch wird ja so nur der standard-beep ausgegeben, da der PC-Speaker aber viel mehr Töne kann, hier nun meine Frage:

Wie kann ich andere Töne abspielen oder gar kleine Melodien komponieren/programmieren ?
Geht das ueberhaupt ?
 
Willst du deine Töne nur über nen BatchCode erzeugen oder gehts auch mit was anderem?
Weil unterschiedliche Töne kriegt man z.b. mit C oder sonst was auf jedenfall raus.
Obs mit cmd Befehlen geht glaub ich jetzt ausm stegreif nicht. Aber ich bin kein shell hacker ;-)
 
Batch wär mir eigentlich am liebsten, aber wie sähe das denn beispielsweise in C aus ?
 
Also ich hab bei mir am Rechner keinen Speaker angeschlossen,
Aber probier das mal aus, sollte eigentlich gehen.
PHP:
#define WIN32_LEAN_AND_MEAN
#include 

int main (void){

//Noten
int c = 262;
int d = 294;
int e = 330;
int f = 349;
int g = 392;
int a = 440;
int h = 494;

//Länge
int achtel = 250;
int virtel = 500;
int halbe = 1000;
int ganze = 2000;

Beep(c,virtel);
Beep(d,virtel);
Beep(e,virtel);
Beep(f,virtel);
Beep(g,halbe);
Beep(g,halbe);
//Schwimmen auf dem See
Beep(a,virtel);
Beep(a,virtel);
Beep(a,virtel);
Beep(a,virtel);
Beep(g,ganze); 
//Wiederhohlung
Beep(a,virtel);
Beep(a,virtel);
Beep(a,virtel);
Beep(a,virtel);
Beep(g,ganze);
//Köpchen in das Wasser
Beep(f,virtel);
Beep(f,virtel);
Beep(f,virtel);
Beep(f,virtel);
Beep(e,halbe);
Beep(e,halbe);
//schwänzchen in die Höh
Beep(d,virtel);
Beep(d,virtel);
Beep(d,virtel);
Beep(d,virtel);
Beep(c,ganze);

return 0;

}
 
hoi,

über die Batch oder Skript geht's wohl nicht direkt... aber über VBS kannst die WinAPI Beep indirekt aufrufen:
1) COM DLL ("beep.dll" mit Klasse "clsBeep") mit API Aufruf
Code:
Private Declare Function Beep Lib "kernel32" (ByVal dwFreq As Long, ByVal dwDuration As Long) As Long

Public Sub Play(hertz, msecs)
Beep hertz, msecs
End Sub

2) und dann ein VBScript mit
Code:
Set myBeep = CreateObject ("Beep.clsBeep")
myBeep.Play 440, 1000
myBeep.Play 330, 2000

3) die töne von stelzi nehmen

cheers,
blah
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben Unten