![]() |
Hohe "Ladezeit" bei vielen MP3 Dateien (FindAllFil
Hi,
ich habe eine Art JukeBox programmiert. Man kann auswählen welche Ordner man zur Auswahl der MP3's "freigibt". Ich durchsuche die Ordner dann mit FindAllFiles aus der CodeLib auf Dateien mit der Endung "*.mp3". Bei einigen GB an Dateien dauert das allerdings ewig. :-/ Wie könnte ich das denn anders machen damit es schneller geht? Vielleicht was anderes als FindAllFiles oder so... Notfalls hab ich mir auch schon überlegt dieses Durchsuchen einmal nach dem "Freigeben" durchrattern zu lassen und alle gefundenen MP3 Dateien dann in TXT Dateien (z.B.) schreiben zu lassen. Später würde ich dann nur auf diese TXT Dateien zugreifen. Aber ich weiss nicht ob das so einfach geht bzw. ob das nicht jedesmal genau so lange dauert... Bin für jede kleine Idee dankbar! :) Gruß Torsten |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Das reine Auflisten von 500-1000 Dateien in einem einzelnen Verzeichnis dauert nicht sehr lange. In unter 1 Sekunde sollte das erledigt sein. Durchsucht du allerdings sehr viele Verzeichnisse dauert das Suchen unter Umständen sehr lange, je nach Verzeichnistiefe und Anzahl enthaltender Dateien etc.
Liest du dann zusätzlich noch deren ID3-Tags aus, dauert es in jedem Fall sehr lange. Ich vermute mal, das du das sogar tust. Hier dürfte dann auch das Hauptproblem zu finden sein. Aber bevor ich hier noch alle restlichen Fälle aufmale, poste doch mal eine kleine Demo deines Programms. |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Hallo Torsten,
Dein Vorhaben in allen Ehren .. aber Jukebox-Programme gibts doch wie Sand am Meer :???: Guck Dir mal ![]() Gruß Rolf |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
ui, das geht ja schnell hier ;)
@bigg: hast recht, ich lese die ID3 Tags aus. Voll vergessen zu erwähnen. :oops: Ich werde das mal weglassen und schauen ob es schneller geht. Dann weiss ich ja wo ich dran arbeiten muss! DANKE!!! :) @laserflor: Ja, hast recht. Da gibt es wirklich tausende. Habe auch schon viele getestet und nicht eine hat mir wirklich zugesagt. MediaMonkey war natürlich auch dabei. Das war zwar für mich die zweitbeste aber immernoch nicht das was ich wollte *ggg*. Deshalb schreib ich mir halt ne eigene. :mrgreen: Funzt ja auch schon einigermaßen. Hauptproblem ist eben das mit der Ladezeit. Trotzdem danke für deinen Hinweis. LG Torsten |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Einfach so als Anregung:
Speicher doch die Daten in einer DB. Das dauert dann zwar einmal sehr lange, aber dafür läufts danach schnell und du kanns sogar sehr schnell nach Titel, Intepret usw. suchen. :) Nachteil: Wenn neue MP3's dazu kommen mußt du natürlich die DB aktuallisieren. |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
@Ghostwalker:
Datenbank ist ein guter Ansatz :) Ich habe mich auch jahrelang mit dem Thema MP3-Katalog beschäftigt und bin dabei darauf gekommen, dass die BDE bei über 4.000 Datensätzen (die hatten so ca. 500 Byte pro Datensatz und über 100 Byte pro Index) fast in eine Art Schlafmodus fällt .. also extrem langsam wird. @strange-t: Das einzige, was mir einfallen würde, was ich zusätzlich bräuchte: Eine Analyse der Titel, damit ich sie nach Sprachen einordnen kann.. Immerhin kann IMHO in MySQL sogar Soundex als Index benutzen.. :?: Ich überlege, ob ich da noch was investiere :twisted: Als Tipp: Nimm gleich Interbase oder FireBird .. oder halt MySQL. Ein gutes Tutorial zum Thema findest Du hier ![]() (Ich hoffe, dass "Fremdwerbung" nicht unerwünscht ist, sonst müsste mir der Moderator eine PN schicken.) Gruß Rolf |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Liste der Anhänge anzeigen (Anzahl: 1)
Häh, Datenbank? :shock:
Ist das nicht etwas überdimensoniert? Eine TList in Verbindung mit Mergesort ist alles was man für die Verwaltung der Daten benötigt. Anschließend könnte man sich Reports für Excel oder HTML-Tabellen erstellen lassen. Ist man dazu auch noch zu faul nimmt man wie ich das VT und lässt die Liste dort anzeigen. Und um die Performance der Anwendugn zu optimieren, liest man nicht alle Dateien in einem Rutsch aus, sondern nur die die auch im VT oder in einer Listview momentan angezeigt werden. |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
so, wenn ich das ID3 Tag auslesen weg lasse, geht das wirklich richtig schnell...
an eine datenbank hab ich auch schon gedacht. allerdings kenne ich mich da noch gar nicht aus. aber was nicht ist, kann ja noch werden. :zwinker: @bigg: nur auslesen was auch in der listview angezeigt wird geht leider nicht so ganz, da in der listview nunmal der komplette ordnerinhalt angezeigt werden muss *ggg*. was du mit TList und Mergesort meinst, weiß ich grad net... :gruebel: sorry ich habe das jetzt allerdings erstmal weg gelassen und in der listview wird wirklich nur das angezeigt was auch durch eine manuelle sucheingabe gefunden wurde. das geht dann recht flott, auch mit ID3 Tags. muss mich dann mal mit DB befassen oder eine andere lösung finden. weiss nicht zufällig jemand wie das z.B. in mediamonkey gespeichert wird? da muss man ja auch einmal alles einlesen und danach gehts auch recht schnell wenn ich mich richtig erinnere. @laserflor: danke für die tips und den link! kann ich gut gebrauchen wenn ich mich für ne DB entscheide :zwinker: so, dann werd ich mal sehen wie's weitergeht lol danke schonmal für die antworten. falls es noch weitere ideen, tips oder hilfe gibt, nur zu... :mrgreen: lg torsten |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
Haste schonmal gesehen wie das der Windows-Explorer macht unter XP? :???:
Dieser liest nur die Infos, die der Benutzer auch tatsächlich sieht ein und speichert sie zwischen. Du kannst ja deine Einträge mit dem Dateinamen eintragen und beim runterscrollen liest du dann die einzelnen Dateien ein. Ein Flag kennzeichnet dann, ob die Datei schonmal eingelesen wurde. Macht Winamp und Co. ebenso. |
Re: Hohe "Ladezeit" bei vielen MP3 Dateien (FindAl
hey, stimmt!!!
daran hab ich noch gar net gedacht. das is die idee schlechthin lol danke!!! :) öööhhhh, aber wie funzt das??? lol hast du da n beispiel-programm oder so? ich arbeite mit ner listview im vsReport-Style. in der caption hab ich den Pfad und in den anderen teilen eben Interpret, Titel usw. THX!!!! lg |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz