Störgeräusch bei WAVEIN

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
ore12
Beiträge: 20
Registriert: Fr 3. Feb 2012, 16:37

Störgeräusch bei WAVEIN

Beitrag von ore12 »

Hallo,

ich bastele am WAVE-Capture mittels Mikrofon, das geht mit WAVEIN, aber ich bekomme jedesmal am Anfang ein 150 ms langes Störgeräusch drauf. Bei manuellen Aufnahmen mit dem Windows Recorder oder Audacity ist das genauso.

Weiß einer von Euch, wie es zu dieser Störung kommt? Kann man die vielleicht durch Einstellung des Soundsystems unterbinden oder muß ich die ersten 150 ms immer löschen?

Vielen Dank für Eure Hinweise.

Olaf

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Störgeräusch bei WAVEIN

Beitrag von Socke »

ore12 hat geschrieben:muß ich die ersten 150 ms immer löschen?

Wenn das immer 150 ms sind, kann das ein Problem der Hardware bzw. des Treibers sein; hast du das mit anderer Hardware getestet?
Eventuell hast du aber auch einen 150 ms großen Puffer, der ohne überschrieben zu werden, ausgegeben wird.

Für alles Weitere wird Weiteres (=Informationen/Code) benötigt.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

ore12
Beiträge: 20
Registriert: Fr 3. Feb 2012, 16:37

Re: Störgeräusch bei WAVEIN

Beitrag von ore12 »

Ich habe das Problem mit dem Störgeräusch auf Vergleichs-PCs nicht gefunden - scheint also was mit der speziellen Konfiguration zu tun zu haben.

Der WAVEIN-Mechanismus, den ich benutze, ist sicher der gleiche wie bei den meisten Audio-Aufnahmeprogrammen:
Ich allokiere Speicher für einen entsprechenden Ringpuffer, mache dann

...
fehlerWert := WaveInPrepareHeader ( waveHandle, pWaveHeader[i], SizeOf ( TWAVEHDR ) );
...
fehlerWert := waveInOpen(@waveHandle,
WAVE_MAPPER,
ptrWaveFmtEx,
Integer ( @bufferFilledCallBack ),
Integer ( self ),
CALLBACK_FUNCTION);
...
fehlerWert := WaveInStart ( waveHandle ) //jetzt geht die Aufnahme los -----> und landet via TMemoryStream in einer WAV-Datei...
...

Das ist, denke ich, die Standard-Prozedur mit DirectShow.
Ich habe mal die Waveform einer Audacity-Aufnahme als BMP angehängt - die sieht genauso aus wie meine selbstprogrammierten Aufnahmen mit der Störung am Anfang.

Viele Grüße

Olaf
Dateianhänge
screen_capture.bmp
screen_capture.bmp (1.05 MiB) 1325 mal betrachtet

Komoluna
Beiträge: 565
Registriert: So 26. Aug 2012, 09:03
OS, Lazarus, FPC: Windows(10), Linux(Arch)
CPU-Target: 64Bit

Re: Störgeräusch bei WAVEIN

Beitrag von Komoluna »

Hallo

Nur mal so als nebenfrage:
In welcher unit befindet sich "WaveInOpen"???
Programmer: A device to convert coffee into software.

Rekursion: siehe Rekursion.

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: Störgeräusch bei WAVEIN

Beitrag von theo »

Komoluna hat geschrieben:Hallo

Nur mal so als nebenfrage:
In welcher unit befindet sich "WaveInOpen"???


mmsystem unter Windows

Antworten