Hallo, wie erzeuge und verarbeite ich WAV-Dateien? Hintergrund: Ich will mehrere WAV-Dateien in meinem Flash abspeichern und über den DA-Wandler abspielen. Dies habe ich schon mit der WAV-Datei von Ponyprog ausprobiert. Der Controller wiehert. Nur womit kann ich die WAV-Dateien erstellen oder konvertieren? 8 Bit und Mono reichen erst mal. Samplingrate 8000 oder 11050 sind auch machbar. Wie ist es mit dem rechtlichen Hintergrund, wenn ich Töne einer CD nehme? Darf man eine kurze Tonfolge von x Sekunden frei verwenden oder sind CDs tabu. Das Gerät ist nicht nur für den Hausgebrauch gedacht. Ich habe bisher nichts gefunden, wo ich "freie Töne" herrunterladen könnte. Oryx
Wie hast Du denn das mit dem Wiehern gemacht??? Ich finde das lustig und hätte gerne den Quellcode! g MFG, ################# Florian Wolling # ################# Florians-c-e-r-page@onlinehome.de http://www.florians-c-e-r-page.de
Hi Florian, ich habe den Quellcode im Anhang. Ist in C++, für einen H8/3069 Controller. Der eine analoge Ausgang wiehert, der andere macht ein 1 kHz Sinus. Muste halt für deinen Controller anpassen, sollte aber gehen. Die "Wav-Datei" ist in test.txt und wurde mit einem Minikonverter aus der ponyprog-wav-datei erzeugt. Wenn Fragen zu diesem Quellcode sind, bitte einen eigenen Thread öffnen, da die Diskussionen sonst doch abdriften (nicht im Niveau, sondern in der Fragestellung). Oryx
Hi, Ich wollte mal fragen wie dein Programm allgemein funktioniert, hab mir dein Quellcode angeschaut, hab aber leider nicht so viel Ahnung von C++ Programmierung. Ich schreib meine Programme immer in Assembler. Werden die Werte aus der Datei test.txt einfach nacheinander in den DA wandler geladen und dann per verstärker/lautsprecher hörbar gemacht, oder wíe läuft das ab? Rechtlich gesehen, machst du doch nichts anderes als deine Töne von einer CD abzuspielen oder?! Wenn du die orginal CD besitzt, ist das legal, auch das konvertieren ist rechtlich erlaubt, oder liege ich jetzt falsch? mfg michi
Von "normalen" CDs zu kopieren ist nicht legal. Ich würde mal im Video-Bereich nach freien Klängen schauen. Da gibt es teilweise CDs, die freigegeben sind. ct hat gerade ein Video-Sonderheft mit freienm Sounds auf CD rausgebracht, wenn ich mich nicht irre. Stefan
Hallo Michi0021, das mit der Funktion hasst Du richtig erkannt. Mit festem Takt, einfach den jeweiligen Wert in den Wandler und über einen Verstärker in den Lautsprecher. Deine rechtliche Beurteilung sehe ich allerdings anders. Wenn ich meine eigene CD einspiele und nur bei mir höhre, mags Du noch recht haben. Aber wenn ich das ganze verkaufe, wir Mick Jagger das nicht witzig finden. Ob man bei kurzen Tönen erwischt wird, ist eine andere Frage und interressiert auch nicht wirklich. Ich will erst mal einen korrekten weg gehen. Hat schon mal jemand das Sonderheft der CT in Händen gehabt? Oryx
Wie bekomme ich aus einer WAV Datei die Werte für den DA-Wandler? Oder anders gefragt Was für eine Dateistruktur hat eine WAV Datei?
Eine Wav-Datei hat außer dem Header von ca 100 Byte nur die einzelnen digitalen Werte, die man eins zu eins auf den DA-Wandler geben kann. Und da die ersten 100 Bytes nur einen Bruchteil einer Sekunde ausmachen kann man die getrost mitausgeben.
@Oryx Erstellen kannste das schon mit den Hausmittlen von Windows oder Linux. Desweiteren gibt es im Web unzälige Editoren dafür.(Einfache und auch Komfortable). Ich zb. nutze sehr gerne Cooledit (Heißt jetzt anders aber ich weiß es jetzt nicht.Such mal nach Cooledit und du wirst umgeleitet). Es gibt genug Effekte,Mehrspurrecorder usw. Auch das Konvertieren der Bitrate ist kein Akt. Und damit du nicht immer den Header mitabspielen mußt kannste das ganze auch im RAW-Format abspeichern. Das sind dann nur die nackten Samples. Es gab für Cooledit immer ne Demoversion (Einige Effekte waren begrenzt). schaus dir mal an. Zur Not kannste dir innem Hexeditor einfach den Header einer WAV-Datei abschneiden.Dann haste das gleiche Ergebnis. Der vollständigkeit halber:Natürlich gibt es noch unzälige Programme die das genauso können.
Yo,genau,Adobe hat es gekauft (War mir entfallen). Ich will mal hoffen das die das Produkt nicht verhunzen (Von wegen neuer Look usw.). Wäre Schade drumm.
Wie sieht die Schaltung hierfür aus? Einfach einen Piezo-Schallwandler oder Lautsprecher an Masse und den Analogausgang? Muss man noch einen Verstärker dazwischen schalten?
piezo würde so gehen, aber das kann ja keinen sound geben. nen lautsprecher kann man zB per transistor anschließen.
Hallo, sehr interessant, kann ich als Speicher auch I2c-EEPROM nehmen mit z.B. 8k...? Hat jemand Erfahrung hierzu in Basic (BASCOM / FASTAVR) Gruss A. Arndt
i2c eeprom müsste gehen. und bisher fast alles in assembler gemacht dürfte in bascom allerdings simpel sein.
Hallo, hat mal jemand einen Schaltplan mit der Grundkonfiguration der Hardware, oder ein Schemabild...? Gruss A. Arndt P.S.: Diese Technik wäre eine echte Alternative zu diesen teuren ISD-Chip von z.B. Conrad...
eeprom ganz einfach über 2 leitungen an den uP (mit pullup) eben so, wie das bei i2c bus gemacht wird. und den lautsprecher, wenn man nur mal probieren will mit einer freilaufdiode versehen, da drunter einen transistor (pnp) und mit basiswiederstand die basis an den uP oder einen impedanzwandler (spannungsfollger) als op-schaltung an den ausgang, oder gleich einen class-d amplifier chip appropro class-D: man könnte über einen timer ein PWM signal erzeugen. das hat eine periodenzeit von 255 und eine Tein von dem Wave-Momentwert (heisst sample?) das ganze auch über treibertransistor an den Lautsprecher. 1 Pin, 1 Transistor, 1 lautsprecher und die sache ist fertig.
Vielen Dank, d.h. die "Ton-Daten" als Bin-Daten aus dem per PC erzeugt auf das EEPROM bringen und dann in einem festen Zeitraster auslesen und auf den Port geben ??? Gruss A. Arndt
@A.Arnd Hallo Namensvetter. I2C-Eeprom mit Bacom ist kein Problem. Nur ist die Speichertiefe nicht so prall und man muß den Filter selber basteln (Nakter Digitaslsound höhrt sich grausig an) Bei 8K Samplingfrequenz und nem 64K EEProm (zb. 4.75 Eur. bei Reichelt) sind das max 8 Sekunden also wirste vermutlich 2-3 Brauchnen. Das wären schon 14.25 für 24 Sekunden. Nen ISD 1420 (20 Sekunden) Kostet dagegen nur 7.55 bzw. wenn man noch etwas Geld für den Filter (Für EEPRom Version) mitrechnet dann wäre der ISD2560 (60 Sekunden) oder der ISD2590 (90 Sekunden) für jeweils 17.90 (Ja,kosten beide das Gleiche) schon recht gut bemessen. Der Chip beinhaltet vom Speicher über den Filter bis Zum Microfonverstärker alles was man braucht. eigentlich muß da nurnoch nen Lautsprechertreiber und nen Micro sammt einiger Tasten Drann (Wenn gewünscht)und fertig ist er. zurück zu I2C Die Ansteuerung von EEProms ist in Bascom kinderleicht. Man schaue sich die befehlsfolge im Datenblatt an und der Rest ist mit ner Hand befehle abgearbeitet. Nioch ne Anmerkung zu den ISD-Chips. Die 4000er Serie bietet bis zu 16 Minuten Platz und hat sogar nen I2C Schnittsatelle. Den Preis weiß ich allerdings nicht und ich gehe mal davon aus das er nicht so günstig sein wird.Nur der Info wegen. Wie gesagt: "Teuer" ist ne Frage von "wie lange". Bei Conrad würde ich den eh nicht holen.Die haben mittlerweile Phantasiepreise. Für deren 14er bekomme ich bei Reichelt 2 20er oder für 3 Euro mehr gleich nen 90er. Rechne ich die Versandkosten noch mit ein dann beträgt der Unterschied von 14 zu 90 nur noch unter 2 Euro. Ich persönlich nehme lieber die ISD's Für mich ist es einfacher und der Sound ist wesentlich besser als ne Einfache Epromlösung. Aber am Ende mußte selber entscheiden.
Vielen Dank an alle Der Sound läuft jetzt. Zur PC-seitigen Verarbeitung habe ich Audacity verwendet. Ist in der CT Software Kollektion. Bei meinen ersten Tests hatte ich noch eine Stereo-Datei. Hört sich irgendwie nicht gut an. Für die Filterei hinter dem AD-Wandler habe ich einen einfachen Tiefpass verwendet. Reicht halt aus. Als Verstärker noch einen TDA7053 und die Lautstärke ist auch ok. Vielleicht hat ja noch jemand eine Idee, wo man einzelne Töne wie z.B. Hundegebell, zerspringendes Glas und andere Tonfolgen herrunterladen kann. Sollte halt gut sortiert sein. Oryx
Wie ich schon sagte: schau Dich mal nach CDs zum Video-Vertonen um, da ist sowas lizensfrei drauf. Stefan
@Oryx Entweder bei Google suchen (Ist in diesem Falle mühsam.Ich machs ab und an auch so wenn ich was Spezielles suche) oder wie Stefan schon sagte .
Hi Zusammen ! Bin auch grad kräftig am basteln wegen einer Soundausgabe. Hab glaub ich noch nen interessanten Lieferanten gefunden. da gibs den ISD 25120 für knapp 10 Vielleicht interessierts den ein oder anderen http://www.hinkel-elektronik.de/cgi-bin/1.cgi?obj=www&_cgi=wk&_S=/shop/2724.html&WK_42311=1 Versandkosten zwar bei 5,80 aber somit immer noch günstiger als Reichelt.
wav-dateien sind übrigens auch fast raw daten. in der ct gabs nen sehr interresantes projekt zu frequenzgang-erfassung. http://www.heise.de/ct/ftp/projekte/fgang/ da gibts nen programm + sourcen mit dem man frequenzgänge ermitteln kann. außerdem ist der aufbau von wave-dateien sehr genau erläutert.
Hallo, hier ist eine Beschreibung des .wav-Formates. Fand ich ganz interessant Gruß Klaus
Ich nutze ein ISD im Push-Button Betrieb am Controller. Nervig ist da immer das Knacken der Impulse. Hat jemand ne Lösung wie man das unterdrücken kann
Ich verwende eine andere Lösung: 512kByte Flash EPROM, direkt mit dem 64kB Adress/Datenbus verbunden. Die restlichen Adressleitungen kommen von einem weiteren uC Port. Die RD\ Leitung ist mit Clk eines 74HC574 Latches verbunden -> Der uC liest Daten, und der 74HC574 speichert den Wert automatisch. An dessen Ausgang sitzt ein R2R DAC, der so angeschlossen ist, dass im Ruhezustand (OE\ des 74HC574 auf High) die Ausgangsspannung auf 2,5V also Wert 128 liegt. Damit vermeide ich das Knacken bei der Widergabe. Per OE\ schalte ich den DAC ab. Das ganze ist mit 32 Tasten verbunden (4*8 Matrix). Auf Knopfdruck werden jetzt bis zu 32 Geräusche abgespielt, mit isngesamt maximal 85 Sekunden. In den ersten 128Bytes des Flash sind Informationen über Samplerate und Startadresse der einzelnen Geräusche gespeichert. Das Flash lässt sich über RS232 per PC programmieren.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.