Sprachsequenzen

Im Unterforum Alle anderen elektronischen Probleme - Beschreibung: Was sonst nirgendwo hinpasst

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 24 11 2024  20:50:16      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Alle anderen elektronischen Probleme        Alle anderen elektronischen Probleme : Was sonst nirgendwo hinpasst

Gehe zu Seite ( 1 | 2 Nächste Seite )      


Autor
Sprachsequenzen

    







BID = 368810

robodriver

Stammposter

Beiträge: 217
 

  


Hallo Leute,

Ich bräuchte mal euren Rat:

ich habe etwa 500 Sprachsequenzen, die alle nicht länger als 2 Sekunden sind. Diese möchte ich irgendwo drauf speichern, so das ich sie dann mit einem Mikrocontroller problemlos und ziemlich schnell abspielen kann (über Lautsprecher). Das Problem ist: man sollte von einer Sequenz, wenn sie fertig abgespielt ist, zur nächsten maximal 100ms zugriffszeit vergehen.

Könnt ih mir sagen mit welcher Art von Speicher man das am besten realisiert?

Schonmal vielen Dank für eure Vorschläge

BID = 368816

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

 

  

Das sind grobgeschätz ne Viertelstunde.


Welche Qualitäten willst du denn haben? Welche Smaplerate und wieviele Kanäle? Das sollte man schon sagen, macht einiges einfacher.

Ich würde nen großen Flash-ROM nehmen und dort alle Daten ablegen. Mit nem geeigneten Assemblerprogramm und nem schnellen Controller sollte das gehen. Welches Format solls denn sein? Es gibt z.b. ferige mp3-Dekoder...

_________________

BID = 368832

Benedikt

Inventar

Beiträge: 6241

Die wohl einfachste und billigste Lösung ist ein serielles Flash EPROM wie z.B. M25P32 mit 32MBit, also 4MByte. Bei 6kHz Samplerate (sollte für eine männliche Stimme reichen) reicht das für etwa 680 Sekunden.
Die Zugriffszeiten liegen im Bereich <1us, also schnell genug.
Einziges Problem: Die Speicher laufen meist nur mit 3,3V.

BID = 368883

robodriver

Stammposter

Beiträge: 217

OK, das klingt alles schon ganz gut.

Im Prinzip soll es eine Stimme werden, die was sagt.
Keine Ahnung welche Qualität da ausreicht um die Stimme deutlich zu verstehen.

Ich denke ein Flash EPROM könnte durchaus akzeptabel für mich sein
Aber wegen dem Format peil ich nicht so ganz. Kann ich nicht einfach zum Aufnehmen die Sprache über einen A/D Wandler schicken und dann im z.B. 6kHz Takt den EPROM mit den Werten voll schreibe, Zelle für Zelle.
Und zum Abspielen dann die Zellen auslese (ebenfalls im 6kHz Takt) und den Wert über einen D/A Wandler und Verstärker auf den Lautsprecher gebe. Würde das so gehen?

Die 3,3 Volt sind nicht zwingend ein Problem, ich habe 5 und 12 Volt zur Verfügung, die man ja über einen Festspannungsregler vernünftig runter regeln kann.

BID = 368885

Benedikt

Inventar

Beiträge: 6241

Ja, genauso einfach geht das.
Allerdings ist beim Aufnehmen zu beachten, dass einige Flash Speicher Byteweise, andere Seitenweise (meist einige 10 bis 1000Bytes) auf einmal beschrieben werden müssen.
Beim M25Pxx geht beides, weshalb ich diesen gerne verwende.

Das Löschen geht nur Blockweise, also einige 10-100kByte aus einmal.

BID = 368906

robodriver

Stammposter

Beiträge: 217

Ah, das ist ja cool, dass das so einfach geht
Deshalb irritierte mich etwas die Frage ob es Mp3 Format sein soll.
Naja,
aber woran liegt es, das man nur 10-100kBytes auf einmal löschen kann?
Das währe ungünstig, denn wenn ich mal eine Sequenz löschen will, dann müsst ich gleich ganz viele löschen und die dann alle wieder neu aufspielen.
Oder kann man nicht auch einfach wie beim beschreiben vor gehen und dann die Zellen einzeln alle mit Null beschreiben?

BID = 368910

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika


Zitat :

Deshalb irritierte mich etwas die Frage ob es Mp3 Format sein soll.



Zitat :

Es gibt z.b. ferige mp3-Dekoder...

Wieso Frage?
Du wolltest meine Meinung hören, ich habe einen Vorschlag gemacht. Warum bist du irritiert? Es gibt fertige MP3-Codecs für ca. 10€. Warum ist das so abwegig?
Ich denk, damit kann man die Datenrate ziemlich klein in ein ROM quetschen. Naja, aber musst ja nicht... Dann behalte ich das nächste mal meine Meinung für mich und du beantwortest deine Fragen selber...



Zitat :

Ah, das ist ja cool, dass das so einfach geht



Sehr gut, wirklich .

So einfach ist das nicht, glaub mir. Der digitale Kram wird vermutlich noch der kürzeste... Hast du dir eigentlich mal überlegt, dass man das Audiosignal vorm Wandeln vielleicht anpassen muss?


PS:
Achso, ich würds alles am PC machen, und dann per schneller serieller Übertragung zum Flash-ROM senden. So kannst du auch sehr einfach gewisse Sequenzen löschen.

_________________

BID = 368941

Benedikt

Inventar

Beiträge: 6241


Zitat :
robodriver hat am 12 Sep 2006 19:43 geschrieben :


Naja,aber woran liegt es, das man nur 10-100kBytes auf einmal löschen kann?
Das währe ungünstig, denn wenn ich mal eine Sequenz löschen will, dann müsst ich gleich ganz viele löschen und die dann alle wieder neu aufspielen.


So ist das halt mit Flash Speichern. Beim M25Pxx sind die Sektoren 64kByte groß.


Zitat :

Oder kann man nicht auch einfach wie beim beschreiben vor gehen und dann die Zellen einzeln alle mit Null beschreiben?

Du kannst alle Zellen nochmals überschreiben, aber dabei werden nur 1en in 0en und nicht umgekehrt. Ohne das Löschen geht es also nicht.

EEPROMs kann man Bytesweise löschen, aber davon 4MByte zu bekommen wird sehr teuer (geschätzt: etwa 50€)

BID = 368991

Benedikt

Inventar

Beiträge: 6241

Eine andere Möglichkeit (und dazu sogar noch billiger): MMC oder SD Karte.
Diese besitzt nur 512Byte große Sektoren (in Wirklichkeit ist das auch ein Flash Speicher mit großen Sektoren, aber die Karte verwaltet das.)
Die Ansteuerung einer SD ist aber ein klein wenig komplizierter, und der Zugriff ist nur Sektorweise möglich, dafür sind aber selbst 1GB zu kleinen Preisen erhältlich.

BID = 369152

robodriver

Stammposter

Beiträge: 217

Ah, OK,
also wenn ich so darüber nachdenke, würd ich mal sagen, das eine SD-Karte sicherlich schon das beste ist. Davon hab ich sogar noch eine 64 MB rum zu liegen. Das würde sich ja anbieten.
Und wenn ich schon so ne Karte benutze, dann währe es sicher schon am sinnvollsten MP3s zu benutzen. Da hat DonComi auf jeden Fall recht. Wenn ich nur daran denke wie einfach es dann ist, die dinger Per PC drauf zu schreiben und wieder zu löschen...
Also würd ich das sicher nehmen.

Nur sind da bei mir dann weiter Fragen offen:
- Wie muss man sich den Mp3 decoder vorstellen? ist das ein IC, an dem man den Lautsprecher dann anschließt, oder ist es ein Software Decoder?
- Wo bekommt man das Ding am besten her?
- Woher bekomme ich die Daten wie ich das Ding ansteuern muss, um die Daten auslesen zu können? und ist das mit einem Mikrocontroller so ohne weiteres möglich?
- Wie wird auf einer SD-Karte eigentlich gespeichert? Ist da, wie auf der Festplatte (glaube ich) eine Tabelle in der steht auf welchem Speicherplatz welche Datei steht oder wie kann ich dann bestimmte Dateien auf der Karte Finden?

BID = 369172

DonComi

Inventar



Beiträge: 8605
Wohnort: Amerika

Hallo Robodriver,

Du wirst bei SD-Karten z.b. ein Dateiformatstreiber quasi in den Mikrokontroller implementieren.

Dann kannst du damit Dateien z.b. im FAT-Format lesen.
Das ist möglich.


Zitat :

Wie muss man sich den Mp3 decoder vorstellen? ist das ein IC, an dem man den Lautsprecher dann anschließt, oder ist es ein Software Decoder?

Sowohl als auch. Es gibt komplette ICs, die das übernehmen, man kann es allerdings auch seeehhrr kompliziert softwaremäßig lösen, aber dazu sind viele µCs nicht in der Lage, weil da schon sehr komplexe Rechnungen auftauchen. Da bräuchte man dann DSPs (Digitale Signal-Prozessoren).


Zitat :

- Wo bekommt man das Ding am besten her?

Bei Reichelt gibt es z.b. den VS1001k.
Da sind 2 Ausgänge für den rechten und den linken Kanal dran. Das Teil hat eine serielle Schnittstelle (SPI), die auch bei vielen µCs vorhanden ist.


Zitat :

Woher bekomme ich die Daten wie ich das Ding ansteuern muss,

Datenblatt


PS: Ich würds mir einfach mal anschauen, und prüfen, ob das was für dich ist, oder ob du eine andere Möglichkeit bevorzugst. sicher, trivial ist das nicht grade, aber für seinen Roboter (?) will man ja nur das beste .
Außerdem kannste dann auch Musik damit abspielen.

_________________

BID = 369198

Benedikt

Inventar

Beiträge: 6241

Ein Dateisystem ist nicht unbedingt notwendig, hat aber Vorteile.
Ob du mp3 wirklich brauchst, musst du wissen. Bei 64MB kann man aber auch fast 45Minuten in Radio Qualität als Wave auf die Karte bekommen. Das spart dann rund 10€ und vereinfacht alles etwas.
Die Ansteuerung des mp3 Dekoders VS1011 (neuere Version des VS1001) ist eigentlich absolut einfach, wenn man mal das nicht gerade perfekte Datenblatt verstanden hat. Und zum Glück gibt es im Internet auch schon genügned fertige Software dazu.

BID = 369435

robodriver

Stammposter

Beiträge: 217

Hm, also im prinzip ist es egal. Ich kann genauso gut auch das alles als Wave abspeichern und bei 10Sekunden-Sequenzen (die sind eigentlich alle kürzer, aber vielleicht macht man ja mal was längeres rein) kommt man auf 270 Sequenzen. das dürfte so weit eigentlich reichen.

@Benedikt: wenn du sagst, das es mit Wave einfacher geht (und auch noch billiger) dann würd ich mich wahrscheinlich doch eher dafür entscheiden.

Was mir aber ein Rätsel bleibt: Wie funktioniert das dann?
Wie kann ich die Sequenzen per uC Starten und was muss ich machen um sie auf die Lautsprecher zu bringen?


PS: Ja, das ganze ist für einen Roboter

BID = 369473

Benedikt

Inventar

Beiträge: 6241

Wenn du wirklich nur feste Sequenzen haben willst, dann machst du das ganze am besten am PC und speicherst die Stücke als Wave mit 22kHz, 8bit Mono auf die MMC/SD Karte.

Was du jetzt machen musst: Herausfinden wo die Daten auf der Karte stehen. Fertige MMC Ansteuerungen mit Dateisystem gibt es z.B. bei http://www.ulrichradig.de/
Der sagst du dann nur den Dateinamen der Datei und kannst diese dann Byteweise lesen. Das Herausfinden wo die Daten stehen macht die Software für dich.
Um das ganze hörbar zu machen, müssen die Daten im Takt der Samplerate (in diesem Beispiel also mit 22kHz) an einen DA Wandler gesendet werden. Das kann ein 8bit Port sein mit R2R Netzwerk, oder aber auch ein fertiger ADC (z.B. mit SPI) oder aber auch am einfachsten: PWM.

BID = 369490

robodriver

Stammposter

Beiträge: 217

So, also ich habe mir mal den Source-Code runter geladen
werde daraus allerdings nicht im geringsten schlau.
Das sind ja ganz viele Dateien mit verschiedenen Source-Codes
Wo soll ich die bitte schon hin Paken?
Ich blik da nicht im geringsten durch. Das ist irgendwie sau kompliziert.

Kann mir das jemand etwas näher erklären was ich da nun alles machen muss (Programmtechnisch) damit ich dann die Dateien Wiedergeben kann???
(Die Verbindung der SD-Card zum Controller hab ich kappiert)


      Nächste Seite
Gehe zu Seite ( 1 | 2 Nächste Seite )
Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 20 Beiträge im Durchschnitt pro Tag       heute wurden bisher 24 Beiträge verfasst
© x sparkkelsputz        Besucher : 182391962   Heute : 6700    Gestern : 6874    Online : 765        24.11.2024    20:50
5 Besucher in den letzten 60 Sekunden        alle 12.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0511519908905