AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte FAMP (FAlters Media Player)
Thema durchsuchen
Ansicht
Themen-Optionen

FAMP (FAlters Media Player)

Ein Thema von FAlter · begonnen am 16. Jun 2008 · letzter Beitrag vom 16. Jun 2008
Antwort Antwort
Benutzerbild von FAlter
FAlter
Registriert seit: 21. Jul 2004
Hi,

ich habe mich ja schon früher mal an Media-Playern probiert. Jedes Mal wurde es irgendwann zu kompliziert, es zu erweitern. Nur ist mir jetzt wieder eine ganz tolle Idee gekommen, die es nochmal für mich einfacher macht (hehe)! Und da muss sich natürlich noch einen Versuch wagen.

Code:
[b][size=18]Changelog/Features[/size][/b]

[b]0.0.0.18[/b]
-FMM-Format unterstützt (wird in temporäre WAV umgewandelt).

[b]0.0.0.12[/b]
-BASS: weitere Änderungen an der TBassDLLPlayer
-GUI: Menü erweitert, Bedienung über Tastatur (dank Tastenkombinationen) einfacher möglich.
-Arbeiten an vorgesehenen Einstellungsmöglichkeiten.

(Außerdem habe ich mir erste Gedanken über eine Visualisierung gemacht, diese jedoch noch nicht angefangen, umzusetzen.)

[b]0.0.0.10[/b]
-BASS: Bass.DLL verwendet (mit modifiziertem [dp]TBassDLLPlayer[/dp], also ohne externe DLL).
-Dadurch jetzt auch Tracker-Formate (wie MOD und XM) sowie OGG möglich.
-Erweiterte Fehleranzeige, wenn Datei nicht geöffnet werden kann (Meldungen der einzelnen Player beim Öffnen-Versuch).

[b]0.0.0.8[/b]
-MCI: Komisches Verhalten bei Stopp-Klick bzw. Aufrufen des nächsten Titels korrigiert (evtl. TMediaPlayer.OnNotify-Bug in der .dcu - jedenfalls gings besser nach Neucompilieren der MPlayer.pas aus der VCL, ein kleiner Fehler meinerseits war aber auf jeden Fall noch mit dabei).
-GUI: Klick auf Lautsprecher-Bildchen jetzt zum Stummschalten.

[b]0.0.0.6[/b]
-MCI: Division durch null verhindert.
-MCI: bei Exception beim Öffnen wird jetzt wieder geschlossen (objekte freigegeben), wodurch Folgefehler vermieden werden (else-Zweig bei try-except-(else)-end vergessen). Vorher: Massig viele AVs.

[b]0.0.0.5[/b]
-Playliste (vor, zurück, öffnen, hinzufügen)
-FVF-Formate (BGR, BGR interlaced, MJPEG, FMK) incl. Lautstärkeregelung (falls Format dies unterstützt)
-ID3v1-Tags (mp3 und fvf)
-MCI (TMediaPlayer) incl. Lautstärkeregelung (falls unterstützt, Problem bei WAV?)
-Bildformate (die bei TPicture registriwert sind)
-LZMA
-Endlich mal wieder ein MediaPlayer ohne hässliche Skins!!! Sieht aus wie alle anderen Windows-Programme. :thumb: Eventuell kommt noch ein Manifest rein, das fehlt bisher noch. Ich finde es aber fast so noch besser, in diesem einen besonderen Fall.
Momentan gibt es noch keine Möglichkeiten, etwas einzustellen. Daher werden auch keine Einstellungen gespeichert, allerdings werden bereits (noch leere) Verzeichnisse angelegt. Siehe <user>\Anwendungsdaten\FAlterSoft\FAMP oder ähnlich.

Mfg
FAlter
Miniaturansicht angehängter Grafiken
famp_129.jpg  
Angehängte Dateien
Dateityp: zip famp_157.zip (525,3 KB, 47x aufgerufen)
 
Larsi

 
Delphi 2007 Professional
 
#2
  Alt 16. Jun 2008, 16:44
Also schon nicht schlecht.
Ein paar Anregungen wären zum Beispiel dass auf Stumm gestellt wird wenn man auf den Lautspreche klickt. Dann sollte sich das Programm auf Wunsch mit den Dateiendungen die es wiedergeben kann registrieren. Visualisierung wäre vielleicht in dem Video Vorschau Fenster nicht schlecht. Du solltest vielleicht eher die Bass.dll benutzen. Equalizer wäre nicht schlecht, ein Minimodus auch nicht. Was ist der Unterschied zwischen Öffnen und Hinzufügen ?


MFG Lars Wiltfang
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

 
Delphi 10.2 Tokyo Starter
 
#3
  Alt 16. Jun 2008, 17:02
Hi,

Zitat von Larsi:
Ein paar Anregungen wären zum Beispiel dass auf Stumm gestellt wird wenn man auf den Lautspreche klickt.
Klar, das geht bei fast allen MediaPlayern. Daher hab ich auch schon darüber nachgedacht... Dann muss ich aber noch ein zweites Lautsprecherbildchen malen, damit man es auch sehen kann, dass es deaktiviert ist. Schon passiert.

Zitat:
Dann sollte sich das Programm auf Wunsch mit den Dateiendungen die es wiedergeben kann registrieren.
Damit müsste es erst einmal Parameter unterstützen. In so einer frühen Version (0.0.0.x) ist vieles noch nicht implementiert.

Zitat:
Visualisierung wäre vielleicht in dem Video Vorschau Fenster nicht schlecht.
Natürlich, aber über MCI ist das nicht vorgesehen. Andere, spezielle Playerklassen können natürlich Visualition nutzen.

Zitat:
Du solltest vielleicht eher die Bass.dll benutzen.
Darüber habe ich schon nachgedacht, ebenso wie DSPack für Videos. Allerdings nicht anstelle von MCI, sondern neben MCI. Es gibt ein Prioritätenkonzept, d. h. MCI würde nur genommen werden, wenn die Player mit höherer Priorität fehlschlagen (nicht öffnen können bzw. beim Öffnen false zurückgeben). Erledigt. Kennt jemand eine DirectShow-Alternative (außer DSPack)? Sonst muss ich sie selber schreiben

Zitat:
Equalizer wäre nicht schlecht,
Erstmal haben andere Sachen Priorotät, als eine Equalizer-Schnittstelle für die einzelnen Player zu schaffen.

Zitat:
ein Minimodus auch nicht.
Meinst du, dass man bestimmte Teile (Playlist, Controls unten) ausblenden kann? Das war schon für die Zukunft angedacht. Aber erst, wenn die Tastatursteuerung verbessert wurde. Auch einen Vollbildmodus wird es dann geben.

Zitat:
Was ist der Unterschied zwischen Öffnen und Hinzufügen ?
Beim Öffnen wird der aktuelle Inhalt der Playliste gelöscht, bevor die markierten Dateien hinzugefügt werden.

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Benutzerbild von bigg
bigg
 
#4
  Alt 16. Jun 2008, 18:11
Deinen Ansatz finde ich sehr mager. Die Anwendung wirkt auf mich so, als wäre sie vor 20 Jahren geschrieben wurden. Von der Bedienung her imponiert mir der Media Player Classic, vielleicht machste ja was in diese Richtung.

btw: Hab dazu mal ne Vorlage in Delphi entwurfen...siehe Anhang.
Angehängte Dateien
Dateityp: zip mpc_201.zip (6,6 KB, 22x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

 
Delphi 10.2 Tokyo Starter
 
#5
  Alt 16. Jun 2008, 18:34
Hi,

vor zwanzig Jahren bestimmt nicht (1988?)... aber ja, das einzige Layout des Windows-Media-Players, das mir je gefallen hat, stammt von vor etwa 15 Jahren, von der Medienwiedergabe aus Windows 3.x.

Aber daran habe ich mich nicht mehr orientiert, das war bei meinem vorvorletzten MediaPlayer-Versuch so. Ich habe nur ein Design gewählt, was mir gefällt. Keine Skins, und dass ich BitBtns gewählt habe ist pure Absicht und war bisher nicht so.

Und ohne Tnt hilft mir dein Anhang gar nix, die will ich aber auch nicht extra dafür installieren. BTW verwende ich übrigens für das Projekt TurboDelphi Explorer --> gar keine Fremdkomponenten zum installieren. Das einzige, was ich sehen kann, ist eine schwarze Hintergrundfarbe - genau das hat mich (u. a., die Bedienung war auch unter aller Sau, da ist meins jetzt teilweise schon besser obwohl noch im Anfangsstadium) unter Win9x am Windows Media Player gestört. Es passt einfach nicht zu den anderen Anwendungen, welche ja alle clBtnFace verwenden. Warum wollen MediaPlayer immer aus der Reihe tanzen? VLC ist wohl die einzige Ausnahme unter den "großen" MediaPlayern, das sieht normal aus.

Also am Design wird definitiv nichts wesentliches geändert, zumindest nicht, solange es keine gute Begründung gibt, dass es dadurch einfacher zu bedienen wäre. Und Klickibunti oder so fällt komplett weg. Ich halte insgesamt nicht viel von Skins. Wenn ich die Farben wechseln möchte, stelle ich ein anderes Windows-Farbschema ein, und alle Anwendungen sind betroffen, nur die Außenseiter eben nicht. Wenn es dir nicht gefällt, musst du das Programm ja nicht nehmen.

Und was meinst du damit, dass der Ansatz mager wäre? Erklär das mal genauer. Du kennst meinen Ansatz doch überhaupt gar nicht, da ich mich hier für ein closed-source-projekt entschieden habe, oder bist du ein Meister im reverse-engineering?

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

 
Delphi 7 Enterprise
 
#6
  Alt 16. Jun 2008, 19:04
also ich arbeite auch gerade an einem mediaplyer, ähnlich deinem, da ich auch eher auf das klassische win design abfahr^^
und sonnst ist er doch nicht schlecht, man muss ja auch nicht gleich den mediaplayer von microsoft neuschreiben und schon gar nicht mit ner 1-mann armee..
Martin
  Mit Zitat antworten Zitat
Benutzerbild von bigg
bigg
 
#7
  Alt 16. Jun 2008, 19:44
Hi,

mein erster Beitrag war nur ein Versuch dir zu helfen. Wenn meine Hilfe bzw. meine Kritik nicht erwünscht ist, ist das okay für mich. Warum ist dein erster Ansatz so mager? Weil kein einziges Video fehlerfrei abgespielt oder überhaupt nicht abgespielt wurde.

Ich habe die Delphi-Vorlage jetzt mal als Binary angehängt.
Die Vorlage orieniert sich an der des "Media Player Classic" von Gabest.

Link: http://de.wikipedia.org/wiki/Media_Player_Classic

So stelle ich mir einen schlanken und schnellen Player vor^^. Keine Skins, Single-Exe, Portable, schnell und leicht zu installieren. Der VLC, den du ja bereits angesprochen hast, ist ja auch nichts anderes, nur werden beim VLC alle Codecs seperat mitgeliefert. Und du lieferst ja auch keine Codecs mit. -> viele unvorhersehbare Fehler.

Wird eine Video-Datei, bevor sie abgespielt wird, analysiert? Nein.
[...]


Zitat:
Und was meinst du damit, dass der Ansatz mager wäre? Erklär das mal genauer. Du kennst meinen Ansatz doch überhaupt gar nicht, da ich mich hier für ein closed-source-projekt entschieden habe, oder bist du ein Meister im reverse-engineering?
Jetzt mal ehrlich, jeder der dein Programm testet, wird zu einem ähnlichen Ergebnis kommen. Keine Fehlermeldungen, kaum Funktionalität, das einzigste was fehlerfrei abspielbar wäre, wäre wohl ein unkomprimiertes AVI, aber selbst da wäre ich mir nicht sicher.

PS: Und die Ausrede, du würdest Turbo-Delphi nutzen und könntest deswegen die Vorlage nicht kompilieren, ist nur ne Trotzreaktion auf meinen ersten Beitrag.

Demo mit Turbo Delphi öffnen, Komponenten-Ordner in den Suchpfad packen und kompilieren. Man muss nichts installieren, halt oldschool-mäßig.

*so nu fussball gucken*
Angehängte Dateien
Dateityp: exe mpc_974.exe (221,0 KB, 13x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von FAlter
FAlter

 
Delphi 10.2 Tokyo Starter
 
#8
  Alt 16. Jun 2008, 20:25
Hi,

Zitat von bigg:
mein erster Beitrag war nur ein Versuch dir zu helfen. Wenn meine Hilfe bzw. meine Kritik nicht erwünscht ist, ist das okay für mich. Warum ist dein erster Ansatz so mager? Weil kein einziges Video fehlerfrei abgespielt oder überhaupt nicht abgespielt wurde.
Wo habe ich gesagt, dass Hilfe unerwünscht ist? Dann hätte ich das Programm ja gar nicht vorgestellt. Ich erwarte allerdings detaillierte, begründete Kritik und nicht nur "ist schlecht".

Also bei mir werden zahlreiche Videos fehlerfrei abgespielt. BTW habe ich geschrieben, dass im Moment nur MCI verwendet wird, das wird sich aber noch ändern. Ich habe gerade einmal drei Tage daran gearbeitet. Ich veröffentliche meine Programme hier sehr früh, ja, weil es einfacher ist, auf Hinweise einzugehen, als eventuell später mal.

Zitat:
Und du lieferst ja auch keine Codecs mit. -> viele unvorhersehbare Fehler.
Ähm, ich liefere einige Codecs mit, bzw. sie sind fest eincompiliert. Im Moment betrifft dies hauptsächlich Grafikformate und das FVF-Format. Notfalls greife ich auf das Zurück, was mir Windows liefert.

Zitat:
Wird eine Video-Datei, bevor sie abgespielt wird, analysiert? Nein.
Möchstest du erst eine Ewigkeit warten, bis ein Video komplett analysiert ist? Bedenke, wie groß ein Video ist/sein kann.

Zitat:
Jetzt mal ehrlich, jeder der dein Programm testet, wird zu einem ähnlichen Ergebnis kommen. Keine Fehlermeldungen,
Also ich verhindere nicht, dass keine Meldungen kommen. [edit] Jetzt werden sogar detailliertere Informationen angezeigt, wenn das Öffnen fehlschlägt (kein Player Erfolg hatte). [/edit]

Zitat:
kaum Funktionalität,
Version 0.0.0 bedeutet auch so viel wie erster Entwurf - was erwartest du?

Zitat:
das einzigste was fehlerfrei abspielbar wäre, wäre wohl ein unkomprimiertes AVI, aber selbst da wäre ich mir nicht sicher.
Es geht schon mehr. Das einzige, was ich nicht abspielen kann, ist eine Digitalfernsehaufnahme, bei der sogar der WindowsMediaPlayer ein wenig spinnt. Und dass MCI buggy ist, seit sich MS nicht mehr so intensiv darum kümmert, ist ja bekannt. Daher steht es ja auch ganz hinten auf der Prioritätenliste.

Zitat:
PS: Und die Ausrede, du würdest Turbo-Delphi nutzen und könntest deswegen die Vorlage nicht kompilieren, ist nur ne Trotzreaktion auf meinen ersten Beitrag.
Ich hatte nie vor, die Vorlage überhaupt zu compilieren. Ich wollte sie mir nur im Designer angucken. Und selbst wenn, ich habe die Tnt-Controls nicht und will sie nicht kaufen (afaik sind sie nicht mehr kostenlos). Außerdem, zum Testen hätte ich auch eine der anderen verwendet. Das war auch keine Ausrede, sondern ein Hinweis.

Zitat:
*so nu fussball gucken*
Nö. Ich nicht. Muss ich mir nicht antun.

Der MediaPlayerClassic scheint sich tatsächlich am WMP von 9x zu orientieren...

Zitat:
Die klassische, bewusst nicht durch Skins zu verändernde Oberfläche dieser Anwendung ist an die ältere Version 6.4 des Windows Media Player angelehnt.
Wie ich schon sagte, alleine das clBlack stört mich, clBtnFace ist mit lieber... Eventuell Geschmackssache. Aber wie sieht es mit Playlists aus? WMP 6.4 war da ziemlich schlecht, es hat sie zwar unterstützt, aber auch wieder nicht wirklich. Auch eine Frage der GUI. Naja, bei mir ist es auch noch nicht vollständig implementiert, speichern/laden und umsortieren z. B. fehlt noch.

Mfg
FAlter
Felix Alter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:56 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