Hallo zusammen,
ich bin recht unerfahren im Umgang mit LabView und habe folgendes Problem:
Ich muss, wie auch immer, eine variable Anzahl von .avi Dateien, welche ich aufgezeichne, mit Hilfe eines Ringspeichers verwalten. Mir fehlt jedoch der passende Lösungsansatz. Hab hierzu schonmal an eine Queue gedacht und versucht dies zu implementieren. Jedoch hapert es an der Umsetzung:-(
Ich bin über jegliche Hilfe sehr dankbar!
Hallo chill,
was willst du genau verwalten? Nur die Pfadangaben zu den Dateien oder doch den Inhalt (die Bilder) der AVIs?
Etwas mehr Erläuterung wäre schön!
Hallo Gerd,
vielen Dank schonmal für diese schnelle Antwort.
Es soll das gesamte Video, inkl des Dateipfades verwaltet werden.
Ich habe auf der Festpatte des Rechners Platz um ca. 3000 Videos zu speichern. Sind 3000 Videos abgelegt, so soll das älteste überschrieben werden (u.s.w.). Das ist der Plan;-)
Die Dateien zu erzeugen, zu speichern und aus einer Listbox heraus laden zu können ist nicht das Problem. Nur die Menge auf 3000 zu begrenzen und das älteste File zu überschreiben ist für mich echt ne Herausforderung.
(14.08.2013 12:16 )ChiefChill schrieb: [ -> ]Ich habe auf der Festpatte des Rechners Platz um ca. 3000 Videos zu speichern. Sind 3000 Videos abgelegt, so soll das älteste überschrieben werden (u.s.w.). Das ist der Plan;-)
Aha, jetzt wird die Sache schon klarer. Bei deiner Eingangsfrage konnte man denken, dass du x Videos im RAM des Rechners halten willst.
Im Ringpuffer musst du somit eigentlich nur Dateipfad und Datum verwalten, der Inhalt interessiert erst mal nicht.
Zum Thema Ringpuffer gibt es schon eine Reihe von Threads im LVF. Such doch mal.
Eine Queue ist eine der Möglichkeiten.
Grobes Vorgehen:
Queue mit Maximalgröße definieren (Datentyp Pfad oder Cluster aus Pfad+Datum).
Bei Bedarf bei Programmstart befüllen.
Bei jedem neuen Video die aktuelle Queue-Größe auslesen, wenn diese am Maximum, dann erstes Element entnehmen & Datei löschen. Danach neues Video speichern.
usw. usw. usw.
Gruß, Jens
Hallo Jens,
Zitat:Bei jedem neuen Video die aktuelle Queue-Größe auslesen, wenn diese am Maximum, dann erstes Element entnehmen & Datei löschen.
Oder du nimmst eine LossyQueue, dann bekommst du automatisch schon das "überfällige" Element geliefert...
(14.08.2013 13:44 )GerdW schrieb: [ -> ]Oder du nimmst eine LossyQueue, dann bekommst du automatisch schon das "überfällige" Element geliefert...

, daran habe ich gerade nicht gedacht - noch besser.
Danke für die Tipps. Ich werds morgen früh direkt mal ausprobieren:-)
Guten Morgen zusammen,
kann mir jemand ein Beispiel für eine solche Speicherung von Files posten? Ich bekomm das bei mir leider nicht hin:-(
Vielen Dank schonmal!
Hallo Chief,
zum Glück beschäftigt sich js gerade mit einem
sehr ähnlichen Problem, sodass du dort sehr einfach Beispiele abstauben kannst...
Noch einmal: Bitte bemühe dich um eine klare Fragestellung! Unter "eine solche Speicherung von Files" vermutet man nicht unbedingt, dass du "nur" die Dateinamen/-pfade buffern willst...