Record Wave And Play

Hier könnt Ihr gute, von Euch geschriebene Codes posten. Sie müssen auf jeden Fall funktionieren und sollten möglichst effizient, elegant und beispielhaft oder einfach nur cool sein.
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Record Wave And Play

Beitrag von bobobo »

RecordWaveAndPlay

folgendes geht per Umweg ..

Code: Alles auswählen

;pb4 - winXP tested 

Global td$ ,ms.l
td$=GetTemporaryDirectory() 

Procedure.s RecordWav() 
  mciSendString_("open new type waveaudio alias capture",buffer$,128,0) 
  mciSendString_("set capture samplesperbuffer 8000 bytesperbuffer 8000",0,0,0) 
  mciSendString_("record capture",buffer$,128,0) 
  Sleep_(ms) ; Wait for specified capture time to end. 
  Debug "save capture "+Chr(34)+td$+"test.wav"+Chr(34) 
  mciSendString_("save capture "+Chr(34)+td$+"test.wav"+Chr(34),buffer$,128,0) 
EndProcedure 

;AufnahmeKanal einstellen per mixer 
RunProgram("sndvol32.exe","/record","",#PB_Program_Wait) 
;RunProgram("sndrec32.exe","/record","",#PB_Program_Wait) 



ms=5000 ;feste Länge 5000mSek 
MessageRequester("Info","Click OK to capture audio to buffer for "+Str(ms/1000)+" Sec",0) 

RecordWav() 
MessageRequester("Info","Done!",0) 

; 
;statt loadsound() ein selbstgehäkeltes loadsound, kann ja mal jemand 
;umstricken, so dass der direkt in der mciprozedur erstellte Bereich 'capture' 
;gecatcht wird 
; 
If ReadFile(0, td$+"test.wav") 
  length = Lof(0) 
  *MemoryID = AllocateMemory(length) 
  If *MemoryID 
    bytes = ReadData(0, *MemoryID, length) 
    Debug "Anzahl der gelesenen Bytes: " + Str(bytes) 
  EndIf 
  CloseFile(0) 
EndIf 
InitSound() 
Debug CatchSound(0,*Memoryid,length) 
PlaySound(0,0) 
Delay(ms);damit man auch was hört 
MessageRequester("wow","now you have "+Str(length)+"Bytes more crap&scrap in "+td$,0)
Zuletzt geändert von bobobo am 19.03.2007 12:51, insgesamt 1-mal geändert.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Hoto
Beiträge: 294
Registriert: 01.09.2004 22:51

Beitrag von Hoto »

Funktioniert bei mir irgendwie nicht (PB4+XP), die wav Datei ist nur 1 KByte groß und ich kann nicht darauf zugreifen. Der Code gibt bei PlaySound() auch einen Error aus (#Sound object not initialized).
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Funktioniert Fehlerfrei, jedoch mit Mikrofon als Quelle kann es zu Fehlern
kommen, Wave als Quelle funktioniert sehr gut, hat die Simpson vom TV
gecaptured :mrgreen:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

ömm .. ging hier und geht hier immer noch
auch mit Micro ..

da zuck ich mal mit der Schulter


check mal ob die grundsätzliche Aufnahme klappt .. dafür gibt es
das sndrec32.exe in windows\system32
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Hoto
Beiträge: 294
Registriert: 01.09.2004 22:51

Beitrag von Hoto »

Ja, das klappt definitiv, schon vorher benutzt gehabt und anschließend Deinen Code.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Haste auch mal mit WAV statt Mikro probiert. Bei mir geht Mikro wegen des
aktiviertem Vorverstärkers nicht.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Hoto
Beiträge: 294
Registriert: 01.09.2004 22:51

Beitrag von Hoto »

Mit wav hab ichs nicht probiert, das wäre auch sinnlos, weil ich Mikroaufnahmen brauche. Ich habs mit und ohne Vorverstärker versucht, ging bei beiden nicht.
Benutzeravatar
DarkSoul
Beiträge: 689
Registriert: 19.10.2006 12:51

Beitrag von DarkSoul »

die quali von der aufnahme haut mich aber irgendwie nicht vom hocker - alles so dumpf und schrill zugleich :cry: . Aber bei sndrec32 klingt es normal
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

>> Aber bei sndrec32 klingt es normal
Komisch, es dürfte garkeinen Unterschied geben, beide benutzen MCI :freak:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

hab oben die Aufnahme-bzw. Abspieldauer mal etwas
abhängiger voneinander gemacht.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Antworten