Devilmarkus Geschrieben 4. Juli 2009 Geschrieben 4. Juli 2009 Hallo, da ich nun leider nicht "der" Mathematiker bin, hätte ich mal eine Frage. Ich bin momentan dabei, eine Anwendung zu programmieren, welche mir 2 Bytes aufzeichnet. (Linker und rechter Soundkanal) Dieses funktioniert soweit auch schon ganz gut, wenn da nicht dieses "aber" wäre. Folgendes Problem habe ich: Schreibe ich die Bytes, wie sie ankommen, in die WAV Datei, erhalte ich umgekehrte, negative Amplituden public void doCapture(byte a, byte { CPC.tapesample[CPC.recordcount] = a; CPC.recordcount++; CPC.tapesample[CPC.recordcount] = b; CPC.recordcount++; }[/code] Ändere ich diesen Code nun etwas, erhalte ich nur positive Amplituden: [code] public void doCapture(byte a, byte { CPC.tapesample[CPC.recordcount] = (byte)(a^0x80); CPC.recordcount++; CPC.tapesample[CPC.recordcount] = (byte)(b^0x80); CPC.recordcount++; } Kann mir jemand helfen, und mir sagen, was ich tun muss, damit ich Amplituden so erhalte, dass sie negativ/positiv sind? Dieses hier ist mein gewünschtes Ziel in der Ausgabe. MfG Markus Zitieren
flashpixx Geschrieben 4. Juli 2009 Geschrieben 4. Juli 2009 Wenn es Dir nur um die Optik geht, dann musst Du eben die Daten eben sowohl in positive wie negative Richtung Deiner Achse plotten. Wenn Du das Frequenzspektrum haben willst, musst Du Deine Daten mit Hilfe einer Fourierreihe ? Wikipedia bzw Fourier-Transformation ? Wikipedia vorverarbeiten und dann entsprechend plotten Phil Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.