Linux: OpenAL - Aufnehmen

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
_X_
Beiträge: 250
Registriert: Di 16. Dez 2008, 20:13
OS, Lazarus, FPC: aptosid (aptosid.com); Lazarus SVN gtk2+qt4; FPC 2.4.0
CPU-Target: 32/64Bit

Linux: OpenAL - Aufnehmen

Beitrag von _X_ »

Moin, Ich habe ein Problem mit OpenAl.
fmod möchte ich nicht verwenden, weil ich das nicht installieren kann(Debian Sid).
So bin ich zu OpenAL gekommen.

Hat schon mal jemand mit OpenAL gerabeitet?

Ich verwende die Header von http://www.noeska.com/doal/
Die Aufnahme Demo ist da leider noch nicht fertig.

Das wäre mein Ansatz:

Code: Alles auswählen

var szDefaultCaptureDevice: PChar;
    pCaptureDevice: PALCDevice;
    pDeviceList: PALChar;
    lFormat: TALCInt;
    lFrequency: TALCInt;
begin
//List input devices:
pDeviceList := alcGetString(nil, ALC_CAPTURE_DEVICE_SPECIFIER);
 
//Default input device:
szDefaultCaptureDevice := alcGetString(nil, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER);
 
//Open device:
lFormat    := AL_FORMAT_MONO8;
lFrequency := 44100;
pCaptureDevice := alcCaptureOpenDevice(szDefaultCaptureDevice, lFrequency, lFormat, LFrequency);
 
//Start recording:
alcCaptureStart(pCaptureDevice);
 
//Stop recording.
alcCaptureStop(pCaptureDevice);
 
//Get number of captured samples
//alcGetIntegerv(pCaptureDevice, ALC_CAPTURE_SAMPLES, 4, Varptr(NumSamples))
 
//Get samples:
//alcCaptureSamples(...)
 
//Close Device
alcCaptureCloseDevice(pCaptureDevice);
Jetzt muss ich nur noch wissen wie ich an die Daten komme.
Die werden, wenn man es richtig macht in einen Buffer geschrieben.
Leider habe ich bisher noch nie mit OpenAL gearbeitet.

Kennt sich da jemand aus?
Bitte helft mir.

mfg _X_

Antworten