Forum: Mikrocontroller und Digitale Elektronik Suche Wav File in C


von John (Gast)


Lesenswert?

Hi Leute,

ich programiere gerade ein bischen mit einem ARM9 rum. Jetzt habe ich
eine Soundausgabe programmiert. Um diese zu nutzen gebe ich ein Wav
File im C-Code aus. Nachdem ich aber das Wav File nicht kenne (war bei
einer Demo von ATMEL dabei) weis ich nicht ob meine Ausgabe stimmt oder
ob ich totalen Humbug ausgebe.
Darum suche ich ein Wav File in C mit 16bit (2x16 bit =32 bit) und
einer Sampling Frequenz von 44,1 kHz. Bei dem ich weis wie es klingt
damit ich sagen kann ob mein Ausgang richtig arbeitet oder nicht.

Hat einer von Euch sowas oder weis jemand wie ich sowas
programieren/erstllen kann.

Als kleines Bsp. damit jeder weis was ich meine, hier ein Auszug aus
dem WAV File das ich momentan benutzte:

// This wave file has the following features:
// Stereo, 16 bits, sampling frequency = 44,1 kHz

const int wav_file[] = {
0x00FF0008,0x000f000A,
0x3A003A00,0x3A003A00,0x3A003A00,0x3A003A00,
0x2E802E80,0x2E802E80,0x2E802E80,0x2E802E80,
0x46004600,0x46004600,0x46004600,0x46004600,
0x34803480,0x34803480,0x34803480,0x34803480,
0x3A003A00,0x3A003A00,0x3A003A00,0x3A003A00,
0x40004000,0x40004000,0x40004000,0x40004000,
0x34803480,0x34803480,0x34803480,0x34803480,
0x40004000,0x40004000,0x40004000,0x40004000,
0x2E802E80,0x2E802E80,0x2E802E80,0x2E802E80,
0x40004000,0x40004000,0x40004000,0x40004000,
0x40004000,0x40004000,0x40004000,0x40004000,
0x3A003A00,0x3A003A00,0x3A003A00,0x3A003A00,
0x46004600,0x46004600,0x46004600,0x46004600,
0x34803480,0x34803480,0x34803480,0x34803480,
0x40004000,0x40004000,0x40004000,0x40004000,
0x3A003A00,0x3A003A00,0x3A003A00,0x3A003A00,
0x40004000,0x40004000,0x40004000,0x40004000,
0x40004000,0x40004000,0x40004000,0x40004000,
0x40004000,0x40004000,0x40004000,0x40004000,
..............


Das File hat eine Länge von 28576

Kann mir irgendjeand helfen?

Schon mal danke im Vorraus!

John

von KoF (Gast)


Lesenswert?

hmm ich hab zwar nicht so ein file, aber ich bin mal beim rumsurfen
(leider kenne ich den link nicht mehr) auf eine seite gestoßen, wo
einer ein prog geschrieben hatte, das wav in ein ascii-code umgewandelt
hat um dieses in ein eeprom zu brennen.

eventuell solltest du danach mal googlen

von ope (Gast)


Lesenswert?

fertig suchen oder selber schreiben - ein kurzes googeln ergab:

http://www.borg.com/~jglatt/tech/wave.htm

hier stehen die jeweiligen header, da wahrscheinlich sample rate,
channela etc. konstant/bekannt sind, kann man gleich die daten chunks
via fprintf(stream, "%x", ....) bzw. dem c++ äquivalent in ein file
schreiben. Drum'rum die Schleife für die Bytes aus dem Wave file und
Zeilenumbruch für die ascii Darstellung. Ich könnte mir aber
vorstellen, da das Problem recht häufig stehen dürfte, das fertige
Programme/Freeware zu Haufe zu finden sind - nur kenne ich keines ad
hoc, sorry.

Viele Grüße
Olaf

von OldBug (Gast)


Lesenswert?

Crossposts, und dazu noch im definitiv falschen Forum, sind bleh!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.