Wie
Verfasst: 06.04.2005 11:48
wie meinst du das? kannst du mir ein beispiel machenKaeru Gaman hat geschrieben: du musst lediglich die ausgabe deiner soundkarte mitschneiden.
wie meinst du das? kannst du mir ein beispiel machenKaeru Gaman hat geschrieben: du musst lediglich die ausgabe deiner soundkarte mitschneiden.
Code: Alles auswählen
; English forum: http://purebasic.myforums.net/viewtopic.php?t=8404&highlight=
; Author: einander
; Date: 19. November 2003
; etwas angepasst vom bobobo 2005-04-06
Global buffer$
buffer$=Space(256)
Enumeration
EndEnumeration
Procedure MCI(command.s)
result=mciSendString_(command,@buffer$,256,0)
ProcedureReturn result
EndProcedure
clip.s="C:\tmp.wav" ; file to save to disk MCI kann keine langen Dateinamen, RenameFile (s.u.) aber schon
alignment=4 ; muss wohl so bleiben, keine Ahnung warum
bits=16 ;16bit wave file
channels=2 ;1=mono 2=stero
samples=44100 ;44.1kHz sample rate
If OpenWindow(0,10,200,300,200,#PB_Window_SystemMenu,"Record Audio")=0:End:EndIf
If CreateGadgetList(WindowID())=0:End:EndIf
text.s="Stop! Vorher muss man mal die Aufnahme Einstellungen checken."+Chr(10)
text+"Ich hatte gute Ergebnisse mit Aufnahmekanal StereoMix und in der Sw-SynthesizerWiedergabe nicht zu weit aufgedreht."+Chr(10)
text+"Ein Testlauf mit einer kleinen Mididatei ist zu empfehlen."+Chr(10)
TextGadget(0,0,0,WindowWidth(),WindowHeight(),text)
While WindowEvent():Wend
MCI("open new type waveaudio alias recsound")
MCI("set recsound time format ms")
MCI("set recsound alignment "+Str(alignment)+" bitspersample "+Str(bits)+" samplespersec "+Str(samples)+" channels "+Str(channels)+" bytespersec "+Str(samples*alignment) )
MCI("record recsound")
Midifile.s=OpenFileRequester("MidiFile","D:\Eigene Dateien\Eigene Musik\midiZ\*.mid", "MidiFiles|*.mid;alle|*",0)
If Midifile<>"" And InitMovie() And LoadMovie(0, Midifile)
Clip1.s=RemoveString(Midifile,"."+GetExtensionPart(Midifile))+".wav"
SetGadgetText(0,"BITTE RUHE!!"+Chr(10)+Chr(10)+Clip1 +" wird aufgenommen .. bitte warten")
While WindowEvent():Wend
PlayMovie(0,WindowID(0))
Delay(1000); etwas warten
While MovieStatus()>0:Delay(1):Wend
Delay(1000) ;kleiner Nachspann
MCI("save recsound "+clip)
MCI("close recsound")
SetGadgetText(0,"Wav file saved "+clip1)
MessageRequester("Done","",0)
EndIf
RenameFile (clip,clip1)
; ExecutableFormat=
; EnableXP
; EOF
Das nimmt genau mit dem Device auf welches eingestellt ist.Green Snake hat geschrieben:dieses beispiel nimmt meiner meinung nach den sound über das mikrofon auf?
liege ich da richtig??
so habe ich es auch schon mal gemacht, klingt jedoch
sch........rott
gibt es keine bessere lösung
Code: Alles auswählen
runprogram(sndvol32.exe)