AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte MiniPlayer mit TMediaPlayer
Thema durchsuchen
Ansicht
Themen-Optionen

MiniPlayer mit TMediaPlayer

Ein Thema von TOC · begonnen am 25. Jan 2005 · letzter Beitrag vom 14. Jul 2005
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
Benutzerbild von TOC
TOC
Registriert seit: 5. Jan 2005
Hi!

Ich lese hier immer wieder solche Fragen wie "Wie kann ich möglichst einfach eine MP3-Datei abspielen?" oder "Wie kann ich die Länge einer Medien-Datei ermitteln" usw. In diesem Zusammenhang lese ich auch immer wieder "Das geht mit der Bass.dll" etc.

Aber warum nicht die Möglichkeiten nutzen die in Delphi schon längst eingebaut sind? Auf der Seite "System" findet ihr, selbst schon bei Delphi 3.0, die Komponente "MediaPlayer". Mit diesem MediaPlayer kann man auf recht einfache Weise eine Reihe von Medien-Dateien abspielen.

Der MediaPlayer selbst verwendet die sogenannten MCI-Geräte von Windows. Leider sind auf verschiedenen Computern und verschiedenen Windows-Versionen unterschiedliche MCI-Devices installiert. Ich weiß auch noch nicht wie man vom Programm aus abfragen könnte welche Treiber den nun installiert sind. Da hilft nur ausprobieren!

Ich habe nun mit der Komponente "MediaPlayer" einen kleinen MiniPlayer geschrieben mit dem Du folgende Medien-Dateien abspielen kannst:

Ab Windows ´95:
Wave-Dateien im Format : *.wav;
Midi-Dateien im Format : *.mid; *.rmi; *.midi;
CD-Audio-Tracks im Format : *.cda
Animationen im Format : *.avi

Ab Windows ´98 Second Edition:
Mp3-Dateien im Format : *.mp3; *.mpa;
Video-Dateien im Format : *.mpg; *.mpeg;

Es ist möglich das auf Deinem Computer noch andere MCI-Geräte installiert sind und das Du noch weitere Medien-Dateien abspielen kannst.

Interessant ist das die meisten MCI-Geräte das ZeitFormat 'tfMilliseconds' nun doch unterstützen. Das ist in der Delphi-Hilfe leider nicht so ganz eindeutig dokumentiert. Nach dem 'Open'-Befehl setzte ich nun dieses Zeit-Format. Dadurch konnte ich all die komplizierten Funktionen zur Addition und Subtraktion von Zeiten im Format 'tfSMPTEDrop30' und 'tfMSF' aus dem Programm komplett rausschmeißen. Jetzt werden alle Zeiten einheitlich nur noch in Millisekunden berechnet, was alles wesentlich einfacher macht.

--------------------------------------------------------------------------------------------------

Version 1.6

Änderungen:

1.) BugFix: Wenn man auf einen leeren Bereich von Panel8 geklickt hat wurde das FreeWare-Formular versehentlich aufgerufen. Diesen dummen Fehler hab ich nun in allen 4 Versionen behoben.

2.) In den beiden Delphi 7.0 Versionen steht nun die Eigenschaft 'DoubleBuffered' von Panel1 und Panel6 auf true, damit der Scroller und die Zeitanzeige nicht mehr flimmern.

3.) BugFix: In den beiden Versionen mit Bass.dll wird nun die Wiedergabe gestopt und die Bass.dll freigegeben bevor der Computer in den Sleep-Modus übergeht, und nach dem Aufwachen wieder initialisiert.

--------------------------------------------------------------------------------------------------

Hi!

Hier kommen gleich 4 neue Versionen 1.7 von MiniPlayer!

Änderungen:

1.) MiniPlayer speichert seine Daten nun unter dem Schlüssel 'HKEY_CURRENT_USER\SoftWare\TocWare\MiniPlayer' in der System-Registrierung.

2.) Mit dem Menüpunkt "Optionen/Registrierung aufheben" kannst Du diese Daten aus Deiner System-Registrierung nun auch wieder löschen und auch die Registrierung der Datei-Typen aufheben.

Hinweis: Dieses Programm verwendet einige meiner selbst gebastelten Komponenten, die Du benötigst um das Projekt zu öffnen und neu zu kompilieren. Eine aktuelle Version meiner Komponenten im Packet findest Du hier : Tocs Komponenten als Paket).

Derzeit kann ich Euch nur bitten den fehlerhafeten Schlüssel 'HKEY_CURRENT_USER\MiniPlayer' von Hand zu löschen (mit RegEdit.exe), Sorry!
--------------------------------------------------------------------------------------------------

Wenn Du herausfinden willst wie man mit TMediaPlayer bzw. MCI MP3´s und andere Formate ausgibt, oder Mod´s mit MiniMod.pas, dann ist 'Version MCI D3/D7' die richtige Version für Dich!

Wenn Du herausfinden möchtest wie dies mit der Bass.dll geht, dann lade Dir 'Version Bass D3/D7' herunter. Verschiedene Formate (*.avi, *.mpg, *.mpeg, *.mid, *.rmi, *.cda) werden allerdings immer noch mit MCI ausgegeben, da die Bass.dll diese Formate nicht unterstützt.

Grüße von TOC!
Angehängte Dateien
Dateityp: zip miniplayer_fuer_delphi_7_bass_769.zip (1,35 MB, 134x aufgerufen)
Dateityp: zip miniplayer_fuer_delphi_3_bass_186.zip (1,27 MB, 46x aufgerufen)
Dateityp: zip miniplayer_fuer_delphi_7_mci_221.zip (968,6 KB, 107x aufgerufen)
Dateityp: zip miniplayer_fuer_delphi_3_mci_163.zip (892,8 KB, 48x aufgerufen)
"Wäre die Erde eine Bank, ihr hättet sie längst gerettet!"
(Zitat GreenPeace)
 
Benutzerbild von TOC
TOC

 
Delphi 7 Personal
 
#11
  Alt 2. Feb 2005, 14:33
Hi!

Ne TrackBar wollt Ihr? Also gut.

Die neue Version 0.6 vom MiniPlayer hat nun folgendes:

1. So ´ne Art Trackbar
2. Optionaler Vollbild-Modus für Videos
3. Du kannst jetzt selbst entscheiden ob ein Icon eingeblendet wird oder nicht

Aber Leute, diese TTrackBar-Komponente is ja blöd gemacht! Wieder mal ´ne schlecht durchdachte Windows-Komponente die irgendwie in Delphi hineingefummelt wurde. Ich hab´s zuerst damit probiert aber schnell gemerkt das es nicht klappt. TTrackBar meldet keine OnMouseDown- und OnMouseMove und OnMouseUp-Ereignisse, das ist der Nachteil. Ohne diese drei Ereignisse gehts aber nicht. Deshalb hab ich mir einfach zwei Grafiken gemacht, eine für die ScrollBar und eine für den Scroller. Damit hat´s dann geklappt.

Das Programm ist nach wie vor recht farbig. Wenn Dich das stört dann ändere die Farben einfach Deinen Wünschen entsprechend. Is ja auch FreeWare, du DARFST mit dem Programm alles machen was Du willst, auch umschreiben!

Zitat:
Das MCI ist veraltet es werden also nicht alle Mp3s abgespielt
Welche Mp3´s werden nicht abgespielt? Bei mir spielt er alle!

Ja, MCI ist wohl veraltet. Aber wenn sich jemand probeweise ´nen kleinen Player selbst schreiben will, warum nicht? DirectX ist tierich komplex! Das ist nix für Anfänger.
Mein MiniPlayer kann und will und soll gar nicht mit professionelen Playern konkurieren.
Er ist nur als Anregung gedacht für Freaks die mal ´nen eigenen Player schreiben wollen- mehr nicht.

Ich hab ´nen Pentium 4, mit 450 MHz. Videos laufen bei mir völlig problemlos, sogar DVD´s, wohl weil ich ´ne AGP-Grafikkarte in meinem Rechner hab die mehr Rechenleistung hat als mein ganzer Computer!

Mal eine ganz andere Frage: Wie macht man hier in Delphipraxis ein Zitat wo in blauer Schrift drüber steht 'delphiman hat folgendes gesagt:'?

Grüße von TOC!
Lars Uwe Hohmann
  Mit Zitat antworten Zitat
PierreB
 
#12
  Alt 2. Feb 2005, 17:02
Zitat:
Mal eine ganz andere Frage: Wie macht man hier in Delphipraxis ein Zitat wo in blauer Schrift drüber steht 'delphiman hat folgendes gesagt:'?
Benutz einfach den Button Zitat wenn du einen Beitrag zitieren willst. Oder im Antworten-Editor klick auf "Zitat" oder schreib [quote=delphman] und zum Abschluss [ /quote] in den Editor.
  Mit Zitat antworten Zitat
Benutzerbild von malo
malo
 
#13
  Alt 2. Feb 2005, 17:05
@TOC: Editier doch bitte deinen ersten Post und stelle da die neue Version zur Verfügung, damit wir nicht nach der neuesten Version suchen müssen

//Edit: Dazu kannst du den Button benutzen, der etwa so aussieht:
  Mit Zitat antworten Zitat
PierreB
 
#14
  Alt 2. Feb 2005, 17:16
Also ich habs mir mal angeguckt.
Ich finde wenn du die bereits abgelaufende Zeit neben die TrackBar machst, könntest du die "ProzentBar" eigentlich weglassen. Das verwirrt nur und ist irgendwie doppelt gemoppelt.
Sonst wirklich super !
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

 
Delphi 7 Personal
 
#15
  Alt 3. Feb 2005, 15:56
Hi!

Aha! So geht das also!

Zitat:
Editier doch bitte deinen ersten Post und stelle da die neue Version zur Verfügung, damit wir nicht nach der neuesten Version suchen müssen
Den ersten Beitrag editieren, geht also auch. Seht ihr, ich brauch da bißchen Eure Hilfe ! Internet is´für mich was völlig neues, erst recht dieses Forum hier! Danke für eure Tips !

Zitat:
Ich finde wenn du die bereits abgelaufende Zeit neben die TrackBar machst, könntest du die "ProzentBar" eigentlich weglassen. Das verwirrt nur und ist irgendwie doppelt gemoppelt.
Finde ich nicht! Ich bin sehr schlecht in Kopfrechnen. Die Prozent-Angabe zeigt mir ziemlich genau wo ich im Medium bin. Ich brauch dann nicht zu rechnen, wenn ich auf 20% gehen will, also soundsoviel Minuten von soundsoviel Gesamtlänge...

Da war noch ein blöder Fehler im Programm, im Vollbild-Modus wurde das Videobild zwar skaliert, aber nicht richtig positioniert. Jetzt weiß ich auch warum, das is ja dumm gemacht mit der Eigenschaft 'DisplayRect'!

In der Hilfe steht das DisplayRect folgendermaßen definiert ist:

property DisplayRect: TRect; Eine TRect-Struktur ist normalerweise folgendermaßen definiert:

Delphi-Quellcode:
type
TPoint = record
  X: Longint;
  Y: Longint;
end;
TRect = record
  case Integer of
    0: (Left, Top, Right, Bottom: Integer);
    1: (TopLeft, BottomRight: TPoint);
end;
Ein Varianter Record also.

Üblicherweise sind 'Left' und 'Top' der linke und obere, 'Right' und 'Bottom' der rechte und untere Punkt des Rechtecks. Üblicherweise also, aber nicht bei DisplayRect. Bei DisplayRect sind 'Left' und 'Top' der linke und obere Punkt des Rechtecks, und 'Right' ist die BREITE und 'Bottom' die HÖHE des Rechtecks. Nun gut, auch so kann man ein Rechteck beschreiben. Ist aber in Windows bzw. Delphi nicht gerade üblich.
Wenn ihr Euch mal ´nen eigenen Player programieren wollt dann solltet ihr dies beachten! Hat mich mindestens 10 Stunden gekostet diesen Fehler zu finden. Wenn ihr das Display übrigens nur an einer anderen Position aber in Originalgröße anzeigen wollt, dann setzt 'Left' und 'Top' auf die gewünschten Koordinaten und setzt 'Right' und 'Bottom' einfach auf 0!

Also, Vollbild klappt nun endlich.

Wenn ihr übrigens im Vollbild-Modus das Hauptformular anzeigen wollt dann klickt einfach auf das Vollbild. Klickt ihr nochmal auf´s Vollbild dann verschwindet das Hauptfenster wieder.

Jetzt kann man auch die Hintergrundfarbe von Form2, dem Vollbild-Formular, über einen ColorDialog verändern.
Im Vollbild-Modus wird das Bild so skaliert das das Verhältnis zwischen Höhe zur Breite erhalten bleibt. Dies soll verhindern das die Schauspieler zum Beispiel Eierköpfe bekommen. Aber dadurch kann es vorkommen das am oberen und unteren Rand bzw. am linken und rechten Rand etwas Platz bleibt. Naja, und die Farbe dieser Streifen kann man nun einstellen.

Wenn ihr sonst noch irgendwelche Vorschläge oder Anregungen habt dann meldet euch.

Von Visualisierung halte ich aber nicht grad viel. In der Regel hört man halt Musik, oder schaut einen Film, und schaut nicht stundenlang auf den Player mit seinen Visualisierungen- die werden sehr schnell langweilig... Und außerdem ist sowas extrem rechenintensiv. Bei älteren Computern (wie meinem) bringt das nix!

So, dann versuche ich mal im ersten Beitrag die neue Version hochzuladen! Mal sehen ob´s klappt !

Grüße von TOC!
Lars Uwe Hohmann
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

 
Delphi 7 Personal
 
#16
  Alt 5. Feb 2005, 15:03
Hi!

Zitat von delphman:
Also ich habs mir mal angeguckt.
Ich finde wenn du die bereits abgelaufende Zeit neben die TrackBar machst, könntest du die "ProzentBar" eigentlich weglassen. Das verwirrt nur und ist irgendwie doppelt gemoppelt.
Sonst wirklich super !
Extra für Dich: Alle Anzeigen-Elemente außer den Mediaplayer-Knöpfen kannst Du jetzt einzeln im Menü 'Anzeige' ein und abschalten.

Der Player spielt jetzt auch Amiga-Tracker-Module im *.mod-Format. Aber Hallo, diese Unit die ich da für die Mod´s verwende ist ein totaler crack! Ich übernehme keinerlei Gewähr dafür das das nicht zu Addres-Fehlern oder sonstigen Abstürzen führt! Immerhin, diese Unit spielt Mod´s! Erstaunlich das man mit so einer kleinen Unit soviel Sound aus ´nem PC kriegt! Ihr könnt ja mal das Internet nach weiteren Mod´s durchsuchen. Die Dinger sind manschmal echt gut gemacht!

Wenn ihr weitere Anregungen habt dann meldet Euch.

Grüße von TOC!
Lars Uwe Hohmann
  Mit Zitat antworten Zitat
PierreB
 
#17
  Alt 5. Feb 2005, 16:14
Zitat:
Extra für Dich: Alle Anzeigen-Elemente außer den Mediaplayer-Knöpfen kannst Du jetzt einzeln im Menü 'Anzeige' ein und abschalten.
Thanx.
Jetzt nur noch ne Playlist und ne Repeat Funktion und dein Player ist grandios !
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

 
Delphi 7 Personal
 
#18
  Alt 6. Feb 2005, 14:53
Hi!

Auf ein neues!

Zitat von Red_Dragon:
etwas interssanteres style (entweder etwas schlichtes graues aber gut dargestellt oder etwas stylisches ala winamp)
Extra für Dich : MiniPlayer hat nun einen Schwarz/Weiß-Modus. Wenn Dich die Farben immer noch stören dann klick sie im Menü einfach weg...
Selbst das Symbol vom Datei-Typ rechne ich jetzt extra für Dich in Graustufen um, kicher!

So, Leute! Damit kommen wir aber wohl so ziemlich zum natürlichen Ende des MiniPlayer-Projekts! Ich hab mich bemüht so ziemlich alles hineinzubasteln was von Euch an Vorschlägen und Anregungen so kam.
Mir fällt nix mehr ein was man noch einbauen könnte...

Zitat von delphman:
Jetzt nur noch ne Playlist und ne Repeat Funktion und dein Player ist grandios !
Auch noch ´ne Playlist! Muß das wirklich sein? Das ist Aufwand! Wir sollten abstimmen!
Wer ist für und wer ist gegen ´ne PlayList Kicher!

Falls Euch noch was einfällt (außer Visualisierung!) dann meldet Euch.

Grüße von TOC!
Lars Uwe Hohmann
  Mit Zitat antworten Zitat
PierreB
 
#19
  Alt 6. Feb 2005, 16:07
*meld* bin für die Playlist !

Und nen Lautstärke-Einsteller.
  Mit Zitat antworten Zitat
Benutzerbild von TOC
TOC

 
Delphi 7 Personal
 
#20
  Alt 10. Feb 2005, 13:58
Hi!

Zitat von delphman:
*meld* bin für die Playlist ! :P

Und nen Lautstärke-Einsteller. ;)
Kicher! Nur eine Meldung! Du hast mich überstimmt! Es steht jetzt 50 zu 50! Kicher!

Hab inzwichen ´ne Version mit PlayList UND Lautstärke in Arbeit!

Aber Hallo! Dazu muß ich das ganze Programm von Anfang bis Ende rekursiv umschreiben und erweitern!
Und dann muß ich es mit allen Datei-Typen gründlich testen. Das dauert ´n paar Tage! Und eigentlich is'es dann kein Mini-Player mehr! Was solls!

Hab nur etwas Geduld mit mir! Es macht wohl keinen Sinn eine unfertige Version rauszugeben. Immerhin kann ich schon eine PlayListe erstellen und abspielen lassen...

Grüße von TOC!
Lars Uwe Hohmann
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 11: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