ich suche derzeit eine Lösung für eine Testanwendung in C/C++, mittels der ich Sound vom LineIn/Mikro aufnehmen kann. Inwieweit gibt es da schon fertige Bibliotheken und Funktionen, vllt auch ein wenig Bsp-Code?!?
Ich bin bei portaudio sofort fündig geworden und konnte nun so eine Funktion implementieren um vom Audioeingang mitzuschneiden! Fragt sich jetzt nur noch wie ich schaff den Dump im Wave-Format zu speichern, wobei ich noch mit dem Gedanken spiel es dabei zu belassen!
Fragt sich jetzt nur noch wie ich schaff den
Dump im Wave-Format zu speichern,
Da würde ich erst den Header zusammen stellen (Code siehe unten), den rein schreiben mit FILE-Zeiger, fopen() etc, dann die Daten, und paletti; findet man auf den C-Seiten. Der Code unten geht für Mono-Wavs, für Stereo mußt Du das noch basteln.
Naja, die Groesse der Daten (Anzahl Bytes) mußt Du summieren, dann das letzte Arg des Headers in der Datei überschreiben. Das Beispiel ist für SW-Synth, da weiß ich vorher schon, daß ich Speicher für „n Sekunden“ brauche.
lg
Martin B
//////////////////////////////////////////
// "\*sound" kann auch offset haben...
void val2String(char \*sound, const ULONG uli, const int NUM\_BYTES=4)
{
int i;
for (i=0; i\> (i\*8) ); // (int)
//cout
wobei hier sizze die Größe des Daten-Feldes ist. Fragt sich nur noch wie ich mein raw entsprechend konvertieren muss, versteh ich richtig, dass ich dieses auch byte-swappen muss??