Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Ganz einfacher MP3 Player (https://www.delphipraxis.net/114411-ganz-einfacher-mp3-player.html)

Blackheart 24. Mai 2008 23:00


Ganz einfacher MP3 Player
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo Leute !
Hab mal wieder was zum testen wenn ihr möchtet.
Ein ganz simpler MP3 Player.
Dateien per Dialog hinzufügen.
Ordner & Unterordner(per Drag & Drop hinzufügen.
Freu mich wie immer über Anregungen oder auch Kritik.
Kein Installer oder Registry eintrag.
Zip und Screenshot anbei cr.300 kb.

lbccaleb 24. Mai 2008 23:19

Re: Ganz einfacher MP3 Player
 
joa ganz schick, das einzige was nicht gans super ist wie ich finde, ist die durchlaufende schrift, die ist echt nervig...
aber sonnst.. ;-)

BullsEye 24. Mai 2008 23:21

Re: Ganz einfacher MP3 Player
 
Hey,
Find ich ganz gut deinen Musikplayer! Vor allem der 'Effekt' beim laufenden Titel.
Nur zwei Vorschläge:

# Der Titel sollte nicht ganz so schnell laufen
# Wenn ein Lied spielt und ich während dessen ein neues per Dialog in die Playlist packe stockt es kurz

Blackheart 25. Mai 2008 07:02

Re: Ganz einfacher MP3 Player
 
Danke euch fürs testen.
Titelscrolling ist jetzt abschaltbar.
Stocken beim Datei hinzufügen beseitigt.
Hab oben die Exe ersetzt.

Mazel 25. Mai 2008 07:16

Re: Ganz einfacher MP3 Player
 
Hi,

finde auch das er ganz schick ist, klein aber fein ;). Mir ist aber auch ein Fehler aufgefallen:
Wenn man den Stop-Button tätigt und kein Titel abgespielt wird, kommt die Meldung "Kein MCI-Gerät geöffnet". Das zu entfernen sollte aber sicher auch kein Problem sein.

lbccaleb 25. Mai 2008 11:52

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von Blackheart
Titelscrolling ist jetzt abschaltbar.

wo denn??


und ich hab noch nen kleinen fehler gefunden ebend beim testen, wenn du einen eintrag aus der liste entfenst (mag vllt nur 1 drin sein) und dieser gerade abspielt, dann kommt ein fehler "kein mci gerät geöffnet" aber das sollte auch easy zu beheben sein ;-)

BullsEye 25. Mai 2008 12:29

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von lbccaleb
Zitat:

Zitat von Blackheart
Titelscrolling ist jetzt abschaltbar.

wo denn??

Ist ein PopUp Menü. Einfach mit dem Rechtsklick.
An für sich ist die Idee gut, allerdings ist die Oberfläche dafür zu klein, teilweise werden bei mir die Titel abeschnitten angezeigt.

Kleiner Vorschalg. Wenn nichts in der Playlist ist, und man Play drückt, sollte dann der Open Dialog kommen.

Beispiel:
Delphi-Quellcode:
IF ListBox1.ItemIndex <= -1 THEN BEGIN
btnOeffnen.click;
Abspielen;
END ELSE BEGIN
Abspielen;
END;
Code gerade ausm Kopf

lbccaleb 25. Mai 2008 12:36

Re: Ganz einfacher MP3 Player
 
ja da kommt bei mir ein popup menü mit nem häckchen bei "hinweise", nur wenn ich das häckchen weg nehme, dann passiert:
nichts!!
und wenn ich rechtsklick auf die listbox mache, dann kommt nen menü mit eintrag hinzufügen, liste leeren, und eintrag löschen (nicht wörtlich)!

wenn ein track spielt und eintrag löschen oder liste leeren gewählt wird kommt dann auch noch ne fehlermeldung (wie oben geschireben)

GeMo 25. Mai 2008 16:04

Re: Ganz einfacher MP3 Player
 
also der ist echt mal schick *TOP*

nen bisschen kritik hab ich aber noch:
- warum kann man keine einzelnen dateien per drag&drop hinzufügen? ich denke das wäre noch ganz gut wenn du das implementierst

- man sollte noch die einstellungen die man gemacht hat speichern können, bzw er sollte es vllt beim schliessen automatisch speichern. sonst muss man immer alles neu einstellen wenn man den player öffnet

- playliste: es wäre ganz gut wenn man playlisten in deinen player laden könnte und auch selbst erstellte abspeichern könnte. vllt beschränkst du dich da nur auf *.mnu und *.pls playlisten! die sind nicht allzuschwer zu verstehen :)

so.. das wars erstmal von mir..
verbesser das programm noch etwas und ich werds sicherlich häufiger nutzen :)

1234588 25. Mai 2008 16:49

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
IF ListBox1.ItemIndex <= -1 THEN BEGIN
btnOeffnen.click;
Abspielen;
END ELSE BEGIN
Abspielen;
END;
Code gerade ausm Kopf

man will ja nicht kleinlich sein, aber:
http://www.delphi-treff.de/delphi-styleguide/
:stupid:


außerdem wurde ich nur verschachteln, wenn es unbegint sein muss. nicht formatiert kann das furchtbar unleserlich werden.
Delphi-Quellcode:
if ListBox1.ItemIndex <= -1 then
  Dialog();
Abspielen();
das entspricht deinem snippet, denn bei
Delphi-Quellcode:
if exp then
  miep() else
    miep()
wird immer miep() aufgerufen.
sinnvoll waere folgendes:
Delphi-Quellcode:
if ListBox1.ItemIndex <= -1 then
  Dialog();
if ListBox1.ItemIndex <= -1 then
  Abpielen();
imho muss es ja nicht sein, das eine datei tatsaechlich hinzugefuegt wird bzw. existiert. so wird sichergestellt, das auch nur abgespielt wird, wenn auch was da ist.

Matze 25. Mai 2008 16:58

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von BullsEye
Delphi-Quellcode:
IF ListBox1.ItemIndex <= -1 THEN BEGIN

Diese Überprüfung ist falsch. Der ItemIndex ist auch "-1", wenn bei einer gefüllten ListBox kein Eintrag selektiert ist. Und kleiner als "-1" kann der ItemIndex sowieso nicht werden. Besser wäre hier

Delphi-Quellcode:
if ListBox1.Items.Count > 0 then // bzw. = 0
oder kürzer müsste auch das gehen:

Delphi-Quellcode:
if ListBox1.Count > 0 then // bzw. = 0
Grüße

BullsEye 25. Mai 2008 21:08

Re: Ganz einfacher MP3 Player
 
[quote="1234588"]
sinnvoll waere folgendes:
Delphi-Quellcode:
if ListBox1.ItemIndex <= -1 then
  Dialog();
if ListBox1.ItemIndex <= -1 then
  Abpielen();
Das wäre ganz und gar nicht sinnvoll, da man dann 2x auf Play klicken müsste, um ein Titel abzuspielen. 1 klick: Laden 2 Klick: Abspielen.
Das war schon recht sinnvoll ausgedacht.

hm Matze, ok. Danke für die Verbesserung, war mir da nicht ganz so sicher.
Aber ich denke, der Sinn meiner Idee wurde verstanden.

Blackheart 26. Mai 2008 14:59

Re: Ganz einfacher MP3 Player
 
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

lbccaleb 26. Mai 2008 15:08

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von Blackheart
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

ok, jetzt geht alles, bis auf eins^^
wenn man jetzt auf play drückt (keine datei wird gespielt) und eine datei auswählt, dann erscheint die weder in der play list noch wird sie abgespielt...

Blackheart 26. Mai 2008 16:05

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von lbccaleb
Zitat:

Zitat von Blackheart
Danke Leute fürs testen hab einige Vorschläge übernommen und einige Fehler behoben.
- Fehler beim löschen von Playlisteinträgen behoben.
- Ist kein Eintrag in der Playlist öffnet sich der Opendialog.
Exe oben erneuert.

ok, jetzt geht alles, bis auf eins^^
wenn man jetzt auf play drückt (keine datei wird gespielt) und eine datei auswählt, dann erscheint die weder in der play list noch wird sie abgespielt...

Stimmt habs geändert danke :thumb:

1234588 26. Mai 2008 16:08

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von BullsEye
Das wäre ganz und gar nicht sinnvoll, da man dann 2x auf Play klicken müsste, um ein Titel abzuspielen. 1 klick: Laden 2 Klick: Abspielen.
Das war schon recht sinnvoll ausgedacht.

ich hab einen kleinen schoenheitsfehler in der zweiten anweisung. natuerlich soll geprueft werden, ob ein eintrag existiert, falls ja soll abgespielt werden. das war aber auch durch meinen kleinen kommentar ergruendlich.
jetzt sag mir mal was daran nicht sinnvoll ist?
bei deinem snippet wird der dialog aufgerufen und egal was passiert abgespielt. das ist als ob du die augen schliesst und anfaengst zu rennen, irgendwann wirst du gegen eine wand kollidieren.

das zweimal ueberprueft werden muss ist bloed, ich weiß. aber blind abspielen ist auch nicht die genialste loesung.
-> fehler vermeiden wo es nur moeglich ist

man sollte das zweite statement sogar mit einem FileExists() ergaenzen, sodass auch sichergestellt wird, das das hinzugefuegte auch eine datei ist.

Delphi-Quellcode:
if ListBox1.Count <= 0 then
  Dialog();
if (ListBox1.Count > 0) and (FileExists(fName)) then
  Abpielen();
in dem fall koennte man sogar auf das zweite ueberpruefen der listbox verzichten

ich hab das zeitweise anders geloest. ich lies beim hinzufuegen die datei rendern. je nach dem ob es erfolgreich war, wird die datei hinzugefuegt oder eben nicht. problem an der sache ist aber, das das staendige rendern nicht gerade perfomant ist.

Blackheart 31. Mai 2008 06:33

Re: Ganz einfacher MP3 Player
 
Hab noch zwei Bugs gefunden und beseitigt.
Datei oben ersetzt.

GeMo 31. Mai 2008 10:21

Re: Ganz einfacher MP3 Player
 
wie sieht es denn mit den von mir gemachten vorschlägen zur verbesserung der benutzerfreundlichkeit aus?
:)

hier nocheinmal was ich geschrieben habe:

Zitat:

Zitat von GeMo
- warum kann man keine einzelnen dateien per drag&drop hinzufügen? ich denke das wäre noch ganz gut wenn du das implementierst

- man sollte noch die einstellungen die man gemacht hat speichern können, bzw er sollte es vllt beim schliessen automatisch speichern. sonst muss man immer alles neu einstellen wenn man den player öffnet

- playliste: es wäre ganz gut wenn man playlisten in deinen player laden könnte und auch selbst erstellte abspeichern könnte. vllt beschränkst du dich da nur auf *.mnu und *.pls playlisten! die sind nicht allzuschwer zu verstehen :)

falls du hilfe bei den playlisten brauchst: da könnte ich dir helfen.. hab schonmal einen m3u und pls import/export programmiert..

greetz

Macci 31. Mai 2008 18:45

Re: Ganz einfacher MP3 Player
 
Am sinnvollste wäre es meiner Meinung nach so:

Zitat:

if (ListBox1.Count > 0) or Dialog() then
Abspielen();
, wobei Dialog() eine Funktion ist, die auf einen bool'schen Wert abbildet. Auf true, wenn der Nutzer eine Datei geöffnet hat, auf false, sonst. Für diesen Code darf der Compilerschalter {$B+} nicht aktiviert sein, was normal auch nicht der Fall ist.

@1234588:

Eine Überprüfung mit FileExists würde ich nicht so gut finden, weil, wenn der Nutzer aus Versehen einen ungültigen Dateinamen angegeben hat, er dann keine Fehlermeldung erhält, sondern einfach nichts passiert. Besser wäre es z.B. im OpenDialog gleich zu fordern, dass die Datei existieren muss (das kann man ja so einstellen).
Ansonsten sollte dem Nutzer ruhig eine Fehlermeldung um die Ohren genauen werden, was ja auch z.B. passieren kann, wenn die Datei vorhanden ist, aber der Nutzer nicht über die nötigen Rechte verfügt, darauf zuzugreifen.


@BullsEye:

Immer Abspielen, selbst wenn der Nutzer im OpenDialog auf Abbrechen klickt, halte ich übrigens - genau wie 1234588 - auch nicht für sinnvoll.

Blackheart 31. Mai 2008 19:10

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von GeMo
wie sieht es denn mit den von mir gemachten vorschlägen zur verbesserung der benutzerfreundlichkeit aus?
:)

hier nocheinmal was ich geschrieben habe:

Zitat:

Zitat von GeMo
- warum kann man keine einzelnen dateien per drag&drop hinzufügen? ich denke das wäre noch ganz gut wenn du das implementierst

- man sollte noch die einstellungen die man gemacht hat speichern können, bzw er sollte es vllt beim schliessen automatisch speichern. sonst muss man immer alles neu einstellen wenn man den player öffnet

- playliste: es wäre ganz gut wenn man playlisten in deinen player laden könnte und auch selbst erstellte abspeichern könnte. vllt beschränkst du dich da nur auf *.mnu und *.pls playlisten! die sind nicht allzuschwer zu verstehen :)

falls du hilfe bei den playlisten brauchst: da könnte ich dir helfen.. hab schonmal einen m3u und pls import/export programmiert..

greetz

Einzelne Dateien oder merfachauswahl über Dialog finde ich persönlich
Benutzerfreundlicher.
Einstellungen speichern ist kein Thema, werd ich mal tun.
Playlisten mal schaun, wie gesagt sollte nur ein ganz einfacher Player werden.
Hab noch neue Bugs gefunden beim löschen von Einträgen, kommt dann demnächst.
danke fürs Testen.

1234588 31. Mai 2008 19:13

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von Macci
Eine Überprüfung mit FileExists würde ich nicht so gut finden, weil, wenn der Nutzer aus Versehen einen ungültigen Dateinamen angegeben hat, er dann keine Fehlermeldung erhält, sondern einfach nichts passiert.

Delphi-Quellcode:
if FileExists() then abspielen else error
//oder vma auch umgedreht :>
if not FileExists() then error else abspielen
//erste variante ist aber sinnvoller, da wohl oefters ein gueltiger dateiname eingegeben wird
ich finde es nicht so berauschend wenn der user eine fehlermeldung vom system bekommt. die sind manchmal etwas grober. da gebe ich lieber eine eigene fehlermeldung aus :)

ich selbst benutze die bass.dll, die mir ein ungeultiges handle liefert wenn die datei nicht gerendert werden konnte. feinheiten lassen sich dann mit einer funktion aehnlich der GetLastError() funktion erfahren. da entfaellt das doofe FileExists() :o)


//edit
wo war der rote kasten

Blackheart 31. Mai 2008 19:17

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von 1234588
Zitat:

Zitat von Macci
Eine Überprüfung mit FileExists würde ich nicht so gut finden, weil, wenn der Nutzer aus Versehen einen ungültigen Dateinamen angegeben hat, er dann keine Fehlermeldung erhält, sondern einfach nichts passiert.

Delphi-Quellcode:
if FileExists() then abspielen else error
//oder vma auch umgedreht :>
if not FileExists() then error else abspielen
//erste variante ist aber sinnvoller, da wohl oefters ein gueltiger dateiname eingegeben wird
ich finde es nicht so berauschend wenn der user eine fehlermeldung vom system bekommt. die sind manchmal etwas grober. da gebe ich lieber eine eigene fehlermeldung aus :)

ich selbst benutze die bass.dll, die mir ein ungeultiges handle liefert wenn die datei nicht gerendert werden konnte. feinheiten lassen sich dann mit einer funktion aehnlich der GetLastError() funktion erfahren. da entfaellt das doofe FileExists() :o)

Ich danke euch fürs Testen meines Progs aber hier im Thread sollte es sich auch darauf beschränken für den Rest könntet ihr ja einen eigenen Thread eröffnen.

Macci 31. Mai 2008 21:06

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von Blackheart
Ich danke euch fürs Testen meines Progs aber hier im Thread sollte es sich auch darauf beschränken für den Rest könntet ihr ja einen eigenen Thread eröffnen.

Hast Recht, Sorry. :-[
Dein Programm sieht übrigens gut aus, obwohl ich ehrlichgesagt schon immer nur den Media Player benutze :-)

Blackheart 16. Jun 2008 22:24

Re: Ganz einfacher MP3 Player
 
Hallo Leute !
Hab den Player jetzt auf Bass dll umgestellt spielt jetzt auch ogg und wave.
Ganze Verzeichnisse werden jetzt per Drag and Drop übernommen.
Freu mich wie immer über Ratschläge, Bugmeldungen und natürlich Kritik.

Blackheart 17. Jun 2008 19:56

Re: Ganz einfacher MP3 Player
 
Gerade zwei Bugs gefunden.
Liste wurde nicht aktualisiert beim abspielen.
Opendialog wurde bei leerer Liste und Play nicht geöffnet.
Exe oben erneuert.

blender 18. Jun 2008 17:49

Re: Ganz einfacher MP3 Player
 
Hallo,
ich finde deinen Player ziemlich gut.
(Wie bekommst du das Symbol und das Menü in die Taskleiste? :stupid: )

Die Lautstärkeregelung beeinflusst bei mir die des Windows Media Players, aber nicht die des Systems.
Ebenfalls würde ich für die Lautstärkeregelung eine Track Bar nehmen. Die könnte man dann auch ziehen.

Außerdem:
Ich kann mit deinem Player keine CD's öffnen. :gruebel:

Wenn kein Lied in der Listbox ist und man auf Play drückt kommt immer noch ein Fehler. (Listenindex überschreitet das Maximum...) :pale:

Die Einstellungen sollte man, finde ich, speichern.

Der Datei Öffnen Button lässt denken, er öffne das CD/DVD/Blue Ray Laufwerk.

Alles in allem ein gutes Programm!!! :thumb:

PS: Wie wäre es mit einem Equalizer?

Blackheart 22. Jun 2008 16:48

Re: Ganz einfacher MP3 Player
 
Hallo !
Einige Bugs entfernt und einige Neuerungen hinzugefügt wie Folderdialog
zum hinzufügen von Ordnern oder ganzen Verzeichnissen.

Blackheart 28. Jun 2008 08:06

Re: Ganz einfacher MP3 Player
 
Mal wieder eine etwas neuere Version mit kleinen Neuerungen.

Dbof 28. Jun 2008 08:51

Re: Ganz einfacher MP3 Player
 
Hallo, tolles Programm, einfach und schnell... :thumb:

Was ich vermisse ist eine Option zum Speichern der Einstellungen(Ini), vll. eine Andockfuntion des Fensters(ScreenSnap) und ein Minimieren-Button, damit es auch schön in der Taskleiste verschwindet(oder vll. in die TNA?).

##Edit##
Noch ein Anliegen: mach doch bitte eine Repeat-Funktion, anstatt das nach der Wiedergabe aller Titel ein Fenster auftaucht, was mich fragt, ob ich die Playlist neustarten will...

Blackheart 28. Jun 2008 09:01

Re: Ganz einfacher MP3 Player
 
Danke fürs Testen.
Die Einstellungen werden in einer Ini im Projektordner gespeichert.
Mit Rechtsklick im Tray kannst du den Player links oder rechts andocken lassen.
Klick im Tray versteckt bzw. zeigt ihn wieder an.

Dbof 28. Jun 2008 09:09

Re: Ganz einfacher MP3 Player
 
Zitat:

Mit Rechtsklick im Tray kannst du den Player links oder rechts andocken lassen.
Wurde vielleicht falsch verstanden, eig. sollte man doch durch ScreenSnap das Fenster überall am Rand andocken müssen, wenn ich es per Rechtsklick mache, wird das Fenster nur an Rand verschoben, aber bleibt ja nicht hängen... :gruebel:

Zitat:

##Edit##
Noch ein Anliegen: mach doch bitte eine Repeat-Funktion, anstatt das nach der Wiedergabe aller Titel ein Fenster auftaucht, was mich fragt, ob ich die Playlist neustarten will...

lbccaleb 28. Jun 2008 11:01

Re: Ganz einfacher MP3 Player
 
ich arbeite ja auch gerade an einem player, hast du nen problem damit, wenn ich mir sonn bissel deine (verwendetetn) grafiken aneigne???
weil die gefallen mir ganz gut und fürs erste würd ich die auch verwenden wollen^^

Blackheart 28. Jun 2008 11:17

Re: Ganz einfacher MP3 Player
 
Schau mal hier dort sind die dabei.Icons

xZise 28. Jun 2008 15:55

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von lbccaleb
ich arbeite ja auch gerade an einem player, hast du nen problem damit, wenn ich mir sonn bissel deine (verwendetetn) grafiken aneigne???
weil die gefallen mir ganz gut und fürs erste würd ich die auch verwenden wollen^^

Kann das sein, das sogar der FF3 die Benutzt (Downloads).

MfG
xZise

Blackheart 23. Aug 2008 06:41

Re: Ganz einfacher MP3 Player
 
Einige Bugs entfernt - neue Version im ersten Post.
Freu mich wie immer über Kritik und gefundene Bugs.

World 7. Okt 2008 14:03

Re: Ganz einfacher MP3 Player
 
Kann man den auch im Delphi 3 bauen???

mquadrat 7. Okt 2008 14:08

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von World
Kann man den auch im Delphi 3 bauen???

Delphi 3? :shock:

World 7. Okt 2008 14:10

Re: Ganz einfacher MP3 Player
 
Ja Sorry kann man das nun im delphi 3 bauen??

BullsEye 7. Okt 2008 14:18

Re: Ganz einfacher MP3 Player
 
Unter Vista Business geht KEIN Drag & Drop!

Blackheart 27. Okt 2008 14:52

Re: Ganz einfacher MP3 Player
 
Zitat:

Zitat von World
Ja Sorry kann man das nun im delphi 3 bauen??

Dürfte man auch ohne weiteres mit D3 hinbekommen.

Zitat:

Zitat von BullsEye
Unter Vista Business geht KEIN Drag & Drop!

Einzelne oder mehrere Dateien über öffnen Dialog, Ordner oder Verzeichnisse über Drag & Drop.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz