Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Wave auslesen.

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
funkeld
gesperrt


Anmeldungsdatum: 10.10.2009
Beiträge: 179

BeitragVerfasst am: 21.05.2010, 13:06    Titel: Wave auslesen. Antworten mit Zitat

Hallo, wenn ich eine Wav öffne mit Audacity , da steht dann unter Sampleformat :
32-bit float.

Nun möchte ich aber diese Sampledaten auslesen nach dem Wavheader und die Zahlenwerte verarbeiten.
Wer kann mir mal helfen?
Sind das tatsächlich float oder ist es 4-Byte-Integer?

Gruss
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 21.05.2010, 15:54    Titel: Antworten mit Zitat

Also Floats hab ich in einer Wave noch nie gefunden (korrigiert mich wenn ich mich irre).

Ob die Samples in 1 Byte, 2 Byte oder 4 Bytes stecken hängt logischerweise vom Format ab, 8-Bit, 16 Bit etc.

Am besten mal das Format zu Gemüte führen (www.wotsit.org). Da steht was gefordert ist bzw. was man erwarten kann.
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 21.05.2010, 18:26    Titel: Antworten mit Zitat

E-P-S hat Folgendes geschrieben:
Also Floats hab ich in einer Wave noch nie gefunden (korrigiert mich wenn ich mich irre).

Da ich dein Hirn im moment nicht anylsieren kann, kann ich leider nicht sagen, ob du dich irrst. lachen

Und ja, wenn 32-bit float gewählt ist, sind das wirklich 32-bit-float daten. Es gibt 32-bit PCM und 32-bit float, was jeweils im format-tag spezifiziert ist. Du musst also erst im format-tag lesen, ob es sich um Float oder PCM handelt. Die Werte sollten, wenn hier das übliche Format verwendet wird, zwischen -1 und +1 liegen.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
funkeld
gesperrt


Anmeldungsdatum: 10.10.2009
Beiträge: 179

BeitragVerfasst am: 22.05.2010, 14:42    Titel: Antworten mit Zitat

Dann sag mal, wo das im Wave-Header erkennbar ist und welche Zahl dieses im Header symbolisiert ob es eine 4-Byte Float ist oder nur eine 4-Byte Interger bzw Long.

Gruss
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 22.05.2010, 14:45    Titel: Antworten mit Zitat

Das mit den Floats war mir neu - man lernt eben nie aus.

@funkeld - Wie wärs wenn Du mal dem angegebenen Link (und den weiterführenden) folgst und mal etwas liest zwinkern In den Formatspezifikationen steht doch alles drin.
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
funkeld
gesperrt


Anmeldungsdatum: 10.10.2009
Beiträge: 179

BeitragVerfasst am: 22.05.2010, 16:11    Titel: Antworten mit Zitat

Also ich finde die Kodierung für "float" in keiner Beschreibung.

Gruss
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 22.05.2010, 16:24    Titel: Antworten mit Zitat

IEEE Float heißt das auf Wikipedia. Ich bin nicht deine Suchmaschine, Pebi, also stell dich nicht dümmer an, als du bist.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
funkeld
gesperrt


Anmeldungsdatum: 10.10.2009
Beiträge: 179

BeitragVerfasst am: 22.05.2010, 16:34    Titel: Antworten mit Zitat

Jup, danke, jetzt habe ich es gefunden.

Wie kann ich jetzt diese 4-Byte auslesen als Daten nach dem Header um daraus eine Float zu haben, die ich dann in freebasic ausgeben kann.

Gruss
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
E-P-S



Anmeldungsdatum: 16.09.2004
Beiträge: 500
Wohnort: Neuruppin

BeitragVerfasst am: 22.05.2010, 17:34    Titel: Antworten mit Zitat

Siehe FreeBasic Hilfe Befehl Get (FileI/O) und den einzulesenden Datentyp auf Float setzen.
_________________
Man kann sich öfter als zweimal im Leben halb tot lachen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
funkeld
gesperrt


Anmeldungsdatum: 10.10.2009
Beiträge: 179

BeitragVerfasst am: 22.05.2010, 19:27    Titel: Antworten mit Zitat

Also die ID in der Wav ist "01" für PCM und nicht "03" für IEEE Float.

Aber warum zeigt Audacity "32-bit float" an?

Gruss
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jojo
alter Rang


Anmeldungsdatum: 12.02.2005
Beiträge: 9736
Wohnort: Neben der Festplatte

BeitragVerfasst am: 22.05.2010, 19:31    Titel: Antworten mit Zitat

Weil das vielleicht die interne repräsentation ist? Das wird scheinbar bei allen Dateien so angezeigt. Da musst du im Audacity-Forum fragen, nicht hier.
_________________
» Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz