Hallo, durch die Suche und dem Stöbern in Beiträgen, habe ich schon sehr viele Infos gefunden, die ich für mein Projekt verwenden kann. Nur habe ich noch nichts zu folgendem Problem gefunden: Ich möchte mehrere Töne eines Musikinstrumentes (sehr kurze Samples, evtl. nur 1-3 Wellenlängen) auf einer SD-Card ablegen (nach Möglichkeit WAV oder MP3, damit Benutzer selbst Samples erstellen kann) und diese als Loop Ausgeben. Soweit sehe ich da kein Problem. Nur will ich dies Mehrstimmig machen, d.h. ich gebe z.B. das Sample für den Ton C aus und gleichzeitig das Sample für z.B. G und dann noch z.B. E. Es sollte möglich sein, 4 Samples gleichzeitig auszugeben. Bin also auf der Suche nach einer Art Mixer (Software oder Hardware) welches es mir ermöglicht die 4 Samples gleichzeitig auf einen Stereo-Ausgang (für Kopfhörer) auszugeben. Es sollte auch möglich sein, 1 der 4 Samples von der Abspielgeschwindigkeit her zu beeinflussen. Habe hier Atmega644 und Atmega128 zur Verfügung. Hat jemand sowas schon gemacht oder irgendwelche Ideen dazu? Decoder-Chips, RAW WAV Daten, andere Chips, evtl. externes RAM verwenden? Danke Alex
>Habe hier Atmega644 und Atmega128 zur Verfügung.
Naja, das ist wohl eher eine Aufgabe für einen DSP;)
holger schrieb: >>Habe hier Atmega644 und Atmega128 zur Verfügung. > > Naja, das ist wohl eher eine Aufgabe für einen DSP;) Irgendwelche Empfehlung? Atmega wird ja dann aber trotzdem noch benötigt, oder? Zumindest brauch ich den für Buttons usw. noch.
Also wenn du WAV nimmst sollte auch ein AVR reichen, wie sind den die sonstigen Bedingungen? - Zeit? - Budget? - Nötige Zuverlässigkeit? - Stückzahl? Du hast prinzipiell ja zwei Möglichkeiten: 4 DACs und Analog mischen 1 DAC und Digital mischen Oben sind ja schon ein paar Hinweise gegeben, ob das so wirklich funktioniert (einfache Addition) müßte man ggf einfach mal am PC ausprobieren, oder etwas im Internet forschen (du bist nicht der Erste der zwei Sounds überlagern will ;)
ich fürchte so ein AVR ist nicht schnell genug um zwei signale gleichzeitig zu verarbeiten, zwei MP3's wohl erst recht nicht.
Ben _ schrieb: > ich fürchte so ein AVR ist nicht schnell genug um zwei signale > gleichzeitig zu verarbeiten, zwei MP3's wohl erst recht nicht. Begründung? Es ging doch gar nicht um MP3 ich schrieb doch extra WAV. Bei 44.1khz hat ein AVR etwa 450 Takte Zeit das Signal zu verarbeiten, und falls es auf eine Simple Addition hinausläuft ist das allemal zu schaffen.
ok und wo bekommt er die daten her? stereo bitte!
Na bei MP3 wirds das addieren wohl kaum funktionieren. Ich will ein meinem aktuellen Projekt auch zwei MP3 Sounds gemischt ausgeben. Habe mich aber entschlossen in zwei VS1011 zu investieren, genau genommen sogar zwei komplett getrennte MP3-Player mit eigenem AVR die von einem Master AVR gesteuert werden sollen. Die Audiosignale mische ich dann mittels einem Summierverstärker. Ist natürlich etwas aufwendiger und teurer, hängt halt davon ab wie teuer die Lösung sein darf. Gruß Tom
Ben _ schrieb:
> ok und wo bekommt er die daten her? stereo bitte!
Er schreib doch das er das gerne von SD karte lesen würde, und das ein
externer RAM ggf auch eingesezt werden soll.
Von Stero stand da nun überhauptnix und würde bestenfalls den AUfwand
verdoppeln.
Morgen zusammen, noch ein paar Infos: wenn möglich sollte es recht einfach gehalten sein. Auch nicht zu teuer. Vorerst nur mal ein einziges Teil für mich, wenn es gehen sollte wie gedacht, dann evtl. mehr. Massenproduktion ist nicht geplant. Zeitlich keine Einschränkung. WAV zwecks einfacherer Verwendung bevorzugt, evtl. für ganz einfache Fälle könnte man das auch in ein EEPROM auslagern, wenn die Daten nicht so groß sind. Mono reicht momentan vollkommen aus. Sollte aber trotzdem gute Qualität sein. Natürlich kann es auch aufwendiger werden, wenn die einfachen Sachen nicht gehen. Aber die werden erst getestet. Ich will nur schauen, daß das ganze auch von nicht so geübten aufgebaut werden kann (z.B. minimal SMD) und evtl. so wenig Platz wie möglich braucht. Wenn ich was richtig ausgefeiltes haben will, könnte ich ja gleich AVR32 oder ARM-Prozessoren einsetzen. Die wären stärker. Aber vorerst soll mal ein Atmega reichen, da die Sachen dazu vorhanden sind. Ansonsten muss ich wieder in Hardware investieren und alles wird teurer. Die Eierlegende-Wollmilchsau mit AVR32 oder ARM7/9 und vielen Spielereien wie Display usw. kann ja irgendwann als Extra Projekt angegangen werden. Die Hauptaufgabe besteht einfach darin, verschiedene Taster abzufragen und je nach Kombination, einen entsprechenden Ton (bestehend aus Einzelton oder eben mehreren Tönen überlagert) auszugeben (Art elektronische Flöte). Ich weiß, es gibt solche Dinge bereits zu kaufen, kosten erstens sehr viel und bieten nicht das, was ich noch vorhabe und man kriegt keine Quellen usw. da ja Geld damit verdient werden will. Was genau anders sein soll, wird noch nicht verraten, erst wenn es soweit fertig ist. Die ganzen anderen Sachen zwecks WAV usw. werden natürlich hier zur Verfügung gestellt. Ich werd auf jeden Fall die ganzen Software-Dinge erstmal testen. Gruß Alex
Mach erstmal einen Test auf dem PC für das Überlagern, wenn du da den Alorithmus hast kann man das viel besser abschätzen. Wenn die Anzahl smaples beschränkt sind, könntest du die Überlagerung auch am PC vorberechnen und dann einfach nur das passende WAV abspielen Platz genug ist auf so einer SD karte allemal... Wenn du dann die SD Karte einfach im Blockmodus beschreibst ohne Dateisystem fällt auch da eine ganze Menge overhead weg. Für den AVR bleibt dan nurnoch: Lesen von der Karte je nach Zustand, ausgabe auf DAC oder R2R.
Hi, Läubi .. schrieb: > Wenn die Anzahl smaples beschränkt sind, könntest du die Überlagerung > auch am PC vorberechnen und dann einfach nur das passende WAV abspielen > Platz genug ist auf so einer SD karte allemal... > Wenn du dann die SD Karte einfach im Blockmodus beschreibst ohne > Dateisystem fällt auch da eine ganze Menge overhead weg. das wäre auch noch eine Möglichkeit.
> WAV zwecks einfacherer Verwendung bevorzugt, evtl. für ganz einfache > Fälle könnte man das auch in ein EEPROM auslagern, wenn die Daten nicht > so groß sind. ... > Sollte aber trotzdem gute Qualität sein. LOL Das ist ja von keinerlei Kenntnis getrübt.
Ich hab schon mal versucht, Waves von ner SD-Karte mit nem AVR abzuspielen. Ohne Zwischenpuffer im RAM gehts mit 8000 kHz, Mono, 8 Bit nicht ruckelfrei. Und selbst mit Puffer ist die Soundqualität dermassen besch*...eiden... Für synthetische Klänge (vgl. Uzebox) ist so'n AVR zwar ok. Aber für direkte Soundwiedergabe von Waves... naja.
Hallo, weiß wenn einer genau, wie man diese Übergange hinbekommt? Hat da jemand schon einen Algorithmus entwickelt? Oder eine Idee wie das prinzipiell geht (ich kann mir nicht vorstellen, dass eine Simple Addition der Samples reicht) ? Gruß Hans
öhm schrieb:
> Das ist ja von keinerlei Kenntnis getrübt.
tja, da das alles immer noch im groben Planungsstadium ist und noch
keine Versuche gemacht wurden, trifft das auch zu.
Oder ist das bei Dir anders, wenn Du irgendeine Idee hast von etwas, das
Du noch nie gemacht hast?
Alexander Ruof schrieb: > öhm schrieb: >> Das ist ja von keinerlei Kenntnis getrübt. > > tja, da das alles immer noch im groben Planungsstadium ist und noch > keine Versuche gemacht wurden, trifft das auch zu. > > Oder ist das bei Dir anders, wenn Du irgendeine Idee hast von etwas, das > Du noch nie gemacht hast? Laß dich nicht ärgern, ich würde zur Zeit wirklich die Lösung mit vorberechneten Samples bevorzugen, wenn man dann noch eine Feste Blockgröße nimmt und die SD Karte im RAW Modus betreibt sollte auch die Datenrate schaffbar sein für Mono.
> tja, da das alles immer noch im groben Planungsstadium ist und noch > keine Versuche gemacht wurden, trifft das auch zu. Im Planungsstadium würd ich erstmal die nötige Datenrate ausrechnen. Da braucht es keine Versuche. Aber frickel ruhig weiter.
Hallo Richard, das geht aber doch nur bei unkomprimierten Formaten, also wav und pcm, bei mp3 wohl nicht, oder ? Weil er schrieb anfänglich was von mp3, und dabei konnte ich mir das nicht "vorstellen" dass es so einfach geht :) Bin aber auch nicht so mit dem Aufbau der Audiostreams vertraut, hatte halt nur überlegt, ob das in meinem Mp3 Player (mit VS1053) realisierbar ist und so eine Fade Geschichte zu implementieren, wie es z.B Winamp bietet. Gruß Hans
Hi, MP3 war nur als Möglichkeit neben WAV genannt. Infos bezüglich WAV mixen habe ich zwar gefunden, aber wenn dann in C#, oder unter zuhilfenahme von DirectX oder Win-Libraries. Zumindest C# kann man lesen und die Infos herausziehen. So schwer sieht das nicht aus. Da ja die Atmegas zu schwach sein werden und ich durch Zufall hier im Forum gefunden habe, daß der AVR DRagon nun wohl auch die AVR32 (UC3) Typen programmieren und debuggen kann, bin ich am überlegen, ob ich mir nicht einfach von Alvidi.de das AVR32 Modul mit Atmel AVR32 AT32UC3A1512 (bis 66 MHz, 37,90 EUR) holen soll. Ist ja als Audio-Device mit Audio-DAC (bis 50 kHz) und MP3/WMA unterstützung angepriesen. Das sollte auf jeden Fall stark genug sein, für das, was ich vorhabe.
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.