| |
|
|
- Página 1 - |
|
| Grüß euch!
En una kürzlichen Spieleprojekt stellte se me el Cuestión, si uno el Audioeingangspegel (o. el Veränderung desselben) uno Mikrofons en XProfan en irgendeiner Form graphisch darstellen dejar kann. Yo kam en esta Gedanken, como se somit ggf. Möglichkeiten para "lautstärkegesteuerte" Spielsteuerungen ergeben würden (gab sí veces antes de vielen Monden una Pong-Variante con vergleichbarer Bedienung).
Vielen Dank ya veces en el Vorraus
MfG, Ernst. |
|
|
| |
|
|
|
| |
|
- Página 1 - |
|
| Coole Cuestión, Sé que También me gusta como el va y habe dazu todavía nichts parat.
Man debería sólo wohl Audiodaten en un Speicher vorliegen haben en de el en él enthaltenen Daten wiederum una Lautstärke a calcular.
Vlt. kann Yo hier anknüpfen: [...] |
|
|
| |
|
|
|
| Soso... [...] ... mist muss en el Bett morgen früh fuera...
MSDN
The common order for calling Waveform Audio functions to record audio is:
waveInOpen waveInPrepareHeader waveInAddBuffer waveInStart waveInUnprepareHeader waveInClose
- así debería uno wohl vorgehen -
el debería se wohl erarbeiten dejar. |
|
|
| |
|
|
|
| Grad aufgewacht weils simplemente "zu" warm es y pensamiento así "gugste mal"... -
igual aber otra vez de en el Heia...
Pegel Mostrar es simplemente... meinste algo como?
Descargar externer Descargar
|
|
|
| |
|
|
|
|
|
|
| |
|
|
|
| Vielen Dank - el sieht doch muy interessant de Werde me Ganze ahora veces a Gemüte führen. |
|
|
| |
|
|
|
| Perfekt - genau el es! Vielen Dank! Yo frag simplemente veces - hättest du vllt. una Codeschnipsel o.Ä. como? |
|
|
| |
|
|
|
| Selbstverständlich sollst Usted soviel Quellcode dazu bekommen como Usted magst -
sería Yo sólo gerne wissen en welcher Variante Usted el gerne hättest
como Yo dazu durchaus gerne algunos Lösungsansätze anbieten sería.
Richtig optimal y al einfachsten gehts si XProfan en Verbindung con XPSE [...] einsetzt -
como podría Yo Usted fix una Variante "herbilden" sodass el eigentliche Hauptprogramm garnichts tun muss y simplemente z.B. en uno Variable siempre el aktuelle Pegelwert es.
Dann gäbe lo como ni reine XProfan-Variante el pero no así zuverlässig ser se y wo Usted en el Programa sólo incluso ständig el Pegelwert herausmessen musst qué gewisse Verarbeitungszeit en Anspruch nimmt y eben o más weniger "ständig" geschehen muss como Usted sí no valor de vorgestern wissen möchtest.
Más Arbeit würden como hacer ne DLL sowie auch una Unit oder Incluir el una DLL beinhalten y aber auch ginge una Modul como Unit welches el Características como MemoryModule vorhalten podría.
Hier una minimale "Quick&Dirty"-Variante en "reinem" XProfan:
'{$ Cleq}
'{$runtime c:\dev\x11}
'{$compiler c:\dev\x11}
struct waveFormatEx=wFormatTag%,nChannels%,nSamplesperSec&,nAvgBytesPerSec&,nBlockAlign%,wBitsPerSample%,cbSize%
declarar waveform#
var WaveHdrIn&=0
cls
usermessages 960
dim waveform#,waveFormatEx
with waveform#
.wFormatTag%=1
.nChannels%=1
.wBitsPerSample%=8
.nAvgBytesPerSec&=16000*1*8
.nSamplesPerSec&=16000
.nBlockAlign%=1
.cbSize%=0
endwith
var hWaveIn&=external("kernel32","GlobalAlloc",64,4)
caso external("winmm","waveInOpen",hWaveIn&,-1,waveform#,%hWnd,0,65536) : end messagebox("ERROR","ERROR",4096)
hWaveIn&=long(hWaveIn&,0)
whileLoop 2
WaveHdrIn&=createWaveHdrIn()
external("winmm","waveInPrepareHeader",hWaveIn&,WaveHdrIn&,32)
external("winmm","waveInAddBuffer",hWaveIn&,WaveHdrIn&,32)
wend
external("winmm","waveInStart",hWaveIn&)
var peek!=0
var tmp&=0
mientras que 1
waitinput
seleccionar %uMessage
caseof 960
if &uwParam=hWaveIn&
WaveHdrIn&=createWaveHdrIn()
external("winmm","waveInPrepareHeader",hWaveIn&,WaveHdrIn&,32)
external("winmm","waveInAddBuffer",hWaveIn&,WaveHdrIn&,32)
tmp&=abs(128-byte(long(&ulParam,0),0))*2
peek!=peek!*0.95
caso peek!<tmp& : peek!=tmp&
usebrush 1,$FFFFFF
rectangle 0,0 - 40,256-peek!
usebrush 1,$FF
rectangle 0,(256-peek!) - 40,256
external("kernel32","GlobalFree",long(&ulParam,0))
external("kernel32","GlobalFree",&ulParam)
endif
EndSelect
wend
end
proc createWaveHdrIn
var waveHdrIn&=external("kernel32","GlobalAlloc",64,32)
long waveHdrIn&,0=external("kernel32","GlobalAlloc",64,64),64
volver waveHdrIn&
ENDPROC
Descargar externer Descargar
PS: ¿Por qué schreibst como Invitado en lugar de angemeldet? ( [...] ) -
así bekommst doch no Info si Usted uno qué schreibt. |
|
|
| |
|
|
|
| Sí super - vielen Dank, se ejecuta! Sí also wenn's nichts ausmacht, sería Yo Notifiqueme de una Versión con XPSE muy freuen
Und sí, stimmt, eigentlich podría Yo mich auch registro. Mach Yo veces de el nächsten Antwort. Hatte así antes längerer Tiempo irgendwie Problemas y bin deshalb de Gewohnheit hautsächlich sólo todavía como Invitado anwesend |
|
|
| |
|
|
|
| Wenn irgendwie una Anmeldeproblem todavía bestehen debería entonces kannst Usted el z.B. auch hier bajo Kontakt simplemente escribir: [...]
Yo glaube lo war algo irritierend el Yo vom Registro por Mitgliedsname a Registro por E-Mail übergegangen bin simplemente porque lo sicherer es porque el Mitgliedsnamen öffentlich son en el Gegensatz a E-Mail-Adressen y yo sichere/ echte Accounts anbeiten möchte el por lo tanto SSL-gesichert son.
So una Variante con XPSE lugar Yo Usted her y poste el entonces hier. |
|
|
| |
|
|
|
| Schau veces si Usted con el miclevel.inc klar kommst: [...] |
|
|
| |
|
|
|
Endwhile | So, ahora como registrierter Nutzer Also, perfekt - vielen Dank! Es bastante genau el, Yo me vorstellte. Werde me veces genauer ansehen y en Fragen ggf. una vez más qué escribir. |
|
|
| |
|
|
| |
|
- Página 2 - |
|
|
| |
|
| |
|
|