|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
PLOP ENGINE - POUR LES PLAYERS AUDIO/VIDEO
Information sur la source
Description
Salut a tous! Voila, ma toute derniere nouveautée, Plop Engine(v1.0.2) Qu'est-ce que Plop Engine ? Plop est un moteur (une API) pour les lecteurs multimedia, qu'ils soient basés sur FMOD, BASS, DSPACK ou n'importe qu'elle autre API Video/Audio. Qu'est-ce que fait Plop Engine ? Plop ne fait que le strict minimum pour le moment. Il fournis des fonctions, procedures, constantes, composants et classes necessaires pour faire un lecteur multimedia, comme toute API qui se respecte. Je pose un composant et pouf! j'ai une lecteur multimedia ? Non Non et Non, Plop ne vas pas jusque la. Il fournis juste quelques trucs utiles que vous n'aurez donc pas a developper. J'ai tenter d'apporter un grand soins a l'ecriture du code pour que Plop soit performant et n'handicape pas vos projets. Mais pour l'instant, Plop est tout jeune donc il se peu que certaines chose ne passe pas correctement. Alors que contient Plop Engine precisement ? Plop est constituer pour le moment de 5 unités distincte. PlopEngine, PlopTape, PlopTrack, PlopPanel et PlopGauge. - PlopEngine est l'unité principale de Plop, elle contient tout ce qui n'est pas visuel, fonctions, types, constantes, variables ect... Vous devrez declarer manuellement PlopEngine dans la close uses de votre projet pour pouvoir acceder a tout ceci. (la source de PlopEngine.pas est largement commentée pour en expliquer le fonctionnement). - PlopTape est l'unité de l'objet experimental(!) TPlopTape. TPlopTape est un objet permettant tout simplement de gerer trois boutton (play, stop pause) peut importe leurs type. Il est juste la pour gerer les etats (play, stop, pause) de votre lecteur multimedia. Pour utiliser TPlopTape vous devrez le créer dynamiquement dans votre projet. - PlopTrack est l'unité de l'objet experimental(!) TPlopTrack. TPlopTrack est un objet permettant de fournir un certain nombre de champs standard et utile a n'importe quel lecteur multimedia : titre, album, artiste, genre, nom du fichier, extention du fichier, repertoire du fichier, durée de la piste, durée en cours de la piste, temps restant ...Pour utiliser TPlopTrack vous devrez le créer dynamiquement dans votre projet. (!) risque d'etre modifier a l'avenir. - PlopPanel est l'unité du composant visuel TPlopPanel qui a un look ecran LCD (parametrable, simple mais efficace), de par ses propriétés TPlopPanel peut etre utilisé comme un Label ou un Boutton bien qu'il ne soit initialement pas prevus pour cela. - PlopGauge est l'unité du composant visuel TPlopGauge qui a egalement un look ecran LCD (en harmonie avec TPlopPanel). En installant le package PlopEngineD7.dpk, ces deux nouveaux composants seront presents dans la palette "Plop Engine". J'ai essayer de fournir un maximum de propriétés aux composants TPlopPanel et TPlopGauge pour qu'ils soient des plus pratique a utiliser. Vous y retrouverez donc les propriétés (publiées) DoubleBuffered (a true par defaut), PopupMenu, TabStop, TabOrder, la plupart des evenements Souris, Clavier, Tabulation... et meme l'ajout des evenements OnMouseLeave et OnMouseEnter pour votre plus grand plaisir. TPlopPanel possede egalement une propriété Caption gérée par deux autres propriétés TextHAlign et TextVAlign permettant de definir sa position, cela vous permettras de l'utiliser comme simple Label d'affichage.
Source
- { -------------------------------------------------------------------- }
- { -------------------------------------------------------------------- }
- {
- A propos de PlopEngine.pas
-
- PlopEngine contient divers types, variables, constantes, fonctions
- et procedures utilisable dans n'importe quel projet de lecteur
- multimedia
- }
-
- procedure SetTimeFormat(const val : string);
-
- function MinutesToTime(const Minutes : integer) : TDateTime;
- function MinutesToStr(const Minutes : integer) : string;
-
- function SecondsToTime(const Seconds : integer) : TDateTime;
- function SecondsToStr(const Seconds : integer) : string;
-
- function MillisecsToTime(const MilliSecs : integer) : TDateTime;
- function MillisecsToStr(const MilliSecs : integer) : string;
-
- function TimeRemain(const Ps,Len : TDateTime) : TDateTime;
- function TimeRemainStr(const Ps,Len : TDateTime) : string;
-
- function GenreToStr(const GenreID : byte) : string;
-
- function ValueToPercent(const P,Max : single;const Min : single = 0) : single;
- function ValueToPercentStr(const P,Max : single;const Min : single = 0) : string;
-
- function ShuffleAPC(const PlaylistCount,CurrentTrackIndex : integer) : integer;
- function ShufflePlayList(var PlayList) : integer;
-
- Procedure PlopEngine_Close;
-
- Procedure PLOPPANIK;
-
- { -------------------------------------------------------------------- }
- { -------------------------------------------------------------------- }
- {
- A propos de PlopGraphics.pas
-
- PlopGraphics contient deux tout nouveaux types TPointFloat, TRectFloat
- et egalement leurs equivalent pointeurs PPointFloat et PRectFloat.
- Elle contient egalement diverses methodes pour gerer tout ce qui est
- d'ordre graphique (point, rect, pointfloat, rectfloat ect...)
-
- (!) le type TRectFloat est réellement derivé de TRect.
- (!) le type TPointFloat est réellement derivé de TPoint.
- }
-
- function RectFloat(ALeft,ATop,ARight,ABottom : Single) : TRectFloat; overload;
- function RectFloat(ATopLeft,ABottomRight : TPointFloat) : TRectFloat; overload;
- function PointFloat(AX,AY : Single) : TPointFloat;
-
- procedure FusionRect(const Src : TRect; var Dest : TRect);
- procedure FusionRectFloat(const Src : TRectFloat; var Dest : TRectFloat);
-
- function CollideRect(const R1,R2 : TRect) : boolean; overload;
- function CollideRect(const R1,R2 : TRectFloat) : Boolean; overload;
-
- function RectCenter(const ARect: TRect): TPoint;
- function RectFloatCenter(const ARect: TRectFloat): TPointFloat;
-
- function IsEmptyRect(const ARect : TRect) : boolean; overload;
- function IsEmptyRect(const ARect : TRectFloat) : boolean; overload;
-
- function IsZeroPoint(const APoint : TPoint) : boolean; overload;
- function IsZeroPoint(const APoint : TPointFloat) : boolean; overload;
-
- function IsPositivePoint(const APoint : TPoint) : boolean; overload;
- function IsPositivePoint(const APoint : TPointFloat) : boolean; overload;
-
- function PointInRect(const APoint : TPoint; const ARect : TRect) : boolean; overload;
- function PointInRect(const APoint : TPointFloat; const ARect : TRect) : boolean; overload;
- function PointInRect(const APoint : TPoint; const ARect : TRectFloat) : boolean; overload;
- function PointInRect(const APoint : TPointFloat; const ARect : TRectFloat) : boolean; overload;
-
- function PointFloatToPoint(const APoint : TPointFloat; const Scale : Single = 0) : TPoint;
- function PointToPointFloat(const APoint : TPoint; const Scale : Single = 0) : TPointFloat;
-
- function RectFloatToRect(const ARect : TRectFloat; const Scale : Single = 0) : TRect;
- function RectToRectFloat(const ARect : TRect; const Scale : Single = 0) : TRectFloat;
-
- function SetRect(ALeft,ATop,ARight,ABottom : Integer) : TRect; overload;
- function SetRect(ATopLeft,ABottomRight : TPoint) : TRect; overload;
- function SetPoint(AX,AY : Integer) : TPoint;
-
- function SetRectFloat(ALeft,ATop,ARight,ABottom : Single) : TRectFloat; overload;
- function SetRectFloat(ATopLeft,ABottomRight : TPointFloat) : TRectFloat; overload;
- function SetPointFloat(AX,AY : Single) : TPointFloat;
{ -------------------------------------------------------------------- }
{ -------------------------------------------------------------------- }
{
A propos de PlopEngine.pas
PlopEngine contient divers types, variables, constantes, fonctions
et procedures utilisable dans n'importe quel projet de lecteur
multimedia
}
procedure SetTimeFormat(const val : string);
function MinutesToTime(const Minutes : integer) : TDateTime;
function MinutesToStr(const Minutes : integer) : string;
function SecondsToTime(const Seconds : integer) : TDateTime;
function SecondsToStr(const Seconds : integer) : string;
function MillisecsToTime(const MilliSecs : integer) : TDateTime;
function MillisecsToStr(const MilliSecs : integer) : string;
function TimeRemain(const Ps,Len : TDateTime) : TDateTime;
function TimeRemainStr(const Ps,Len : TDateTime) : string;
function GenreToStr(const GenreID : byte) : string;
function ValueToPercent(const P,Max : single;const Min : single = 0) : single;
function ValueToPercentStr(const P,Max : single;const Min : single = 0) : string;
function ShuffleAPC(const PlaylistCount,CurrentTrackIndex : integer) : integer;
function ShufflePlayList(var PlayList) : integer;
Procedure PlopEngine_Close;
Procedure PLOPPANIK;
{ -------------------------------------------------------------------- }
{ -------------------------------------------------------------------- }
{
A propos de PlopGraphics.pas
PlopGraphics contient deux tout nouveaux types TPointFloat, TRectFloat
et egalement leurs equivalent pointeurs PPointFloat et PRectFloat.
Elle contient egalement diverses methodes pour gerer tout ce qui est
d'ordre graphique (point, rect, pointfloat, rectfloat ect...)
(!) le type TRectFloat est réellement derivé de TRect.
(!) le type TPointFloat est réellement derivé de TPoint.
}
function RectFloat(ALeft,ATop,ARight,ABottom : Single) : TRectFloat; overload;
function RectFloat(ATopLeft,ABottomRight : TPointFloat) : TRectFloat; overload;
function PointFloat(AX,AY : Single) : TPointFloat;
procedure FusionRect(const Src : TRect; var Dest : TRect);
procedure FusionRectFloat(const Src : TRectFloat; var Dest : TRectFloat);
function CollideRect(const R1,R2 : TRect) : boolean; overload;
function CollideRect(const R1,R2 : TRectFloat) : Boolean; overload;
function RectCenter(const ARect: TRect): TPoint;
function RectFloatCenter(const ARect: TRectFloat): TPointFloat;
function IsEmptyRect(const ARect : TRect) : boolean; overload;
function IsEmptyRect(const ARect : TRectFloat) : boolean; overload;
function IsZeroPoint(const APoint : TPoint) : boolean; overload;
function IsZeroPoint(const APoint : TPointFloat) : boolean; overload;
function IsPositivePoint(const APoint : TPoint) : boolean; overload;
function IsPositivePoint(const APoint : TPointFloat) : boolean; overload;
function PointInRect(const APoint : TPoint; const ARect : TRect) : boolean; overload;
function PointInRect(const APoint : TPointFloat; const ARect : TRect) : boolean; overload;
function PointInRect(const APoint : TPoint; const ARect : TRectFloat) : boolean; overload;
function PointInRect(const APoint : TPointFloat; const ARect : TRectFloat) : boolean; overload;
function PointFloatToPoint(const APoint : TPointFloat; const Scale : Single = 0) : TPoint;
function PointToPointFloat(const APoint : TPoint; const Scale : Single = 0) : TPointFloat;
function RectFloatToRect(const ARect : TRectFloat; const Scale : Single = 0) : TRect;
function RectToRectFloat(const ARect : TRect; const Scale : Single = 0) : TRectFloat;
function SetRect(ALeft,ATop,ARight,ABottom : Integer) : TRect; overload;
function SetRect(ATopLeft,ABottomRight : TPoint) : TRect; overload;
function SetPoint(AX,AY : Integer) : TPoint;
function SetRectFloat(ALeft,ATop,ARight,ABottom : Single) : TRectFloat; overload;
function SetRectFloat(ATopLeft,ABottomRight : TPointFloat) : TRectFloat; overload;
function SetPointFloat(AX,AY : Single) : TPointFloat;
Conclusion
Si vous avez des suggestions, si vous remarquez des bugs ou ameliorations possible, postez un commentaire. Si vous desirez prendre par au developpement de PlopEngine, contactez moi par Message privé. version en cours : PlopEngine v1.0.2 (!) le package est marquer D7 mais il se peut qu'il soit installable sur d'autre version de Delphi. (au moins delphi 6 - 8 et 9) (!) a venir : de nouveaux composants visuel au look Plop! De nouvelles fonctions et trucs utile.
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 21 décembre 2005 17:58:57 :
- correction de la source affichée, because // grrr
- 21 décembre 2005 18:00:52 :
- idem que la precedente! Nix ton colorisateur syntaxique bug! (c'est pas grave, ça arrive...)
- 21 décembre 2005 18:03:40 :
- pfff decidement...
- 22 décembre 2005 17:53:00 :
- Ajout d'une unité "PlopGraphics" permettant la manipulation des types TPoint TRect et egalement TPointFloat et TRectFloat.
Ajout d'un tableau des noms des effets d'environnement standard EAX dans PlopEngine.
- 22 décembre 2005 18:00:38 :
- Niveau passe de Debutant a Initié (j'avais oublier de le faire)
- 22 décembre 2005 18:14:56 :
- Suppression d'une erreur dans la fonction PointToPointFloat et egalement l'oublis de publier les fonctions RectToRectFloat et RectFloatToRect.
Sources du même auteur
Sources de la même categorie
INTERFACE QUI : OUVRE LE LECTEUR CD LE REFERME,LIGNE DE COMMANDE CMD,LECTEUR MEDIA,LISTE LES PROCESSUS,LISTE LES MODULES,MET EN VEILLE L'ECRAN ...Sorte de trojan qui : Ouvrir le lecteur Cd le referme,ligen de commande cmd,lecteur media,liste les processus,liste les modules,met en veille l'ecran ... INTERFACE QUI : OUVRE LE LECTEUR CD LE REFERME,LIGNE DE COMM...
par Chyokyka
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Les Api Windows [ par twoupy ]
Est-ce que quelqu'un possède ou sait où je pourrais trouver l'aide sur les Api Windows (win32.hlp) en français. ce serait bien cool, parce que l'angl
documentation API [ par Noureddine ]
Bonjour,je cherche la documentation pour comprendre L'API, si vous avez une adresse ou je peut télécharger une documentation en français SVPMerci.
problème avec une api [ par fabiin ]
SalutEst-ce que kelk'un rencontre un problème lors de l'utilisation desetDCbrushcoloren Delphi 6Merci par avance@+Fabse
Comment utiliser une API avec Delphi 5? [ par Manthis ]
Salut,Je débute tout juste en Delphi 5. J'avais commencer par le VB. Et donc voila j'ai un problème comment utiliser une API avec Delphi?Ou doit-on la
API sndPlaySoundA [ par jlg75 ]
j'utilise l'API 'sndPlaySoundA' tirée de 'winmm.dll' pour lire des .wav dans un prog DELPHI. Je déclare explicitement cet API comme fonction 'external
CHERCHE TUT DELPHI API [ par golum ]
Salut je suis a la recherche d'un tut Delphi et API un peu comme EstDev pour VBAuriez vous quelque chose ? des adresses ?
Winsock [ par SMoG ]
Yop... Je desespere de trouver un jour de la doc sur l'api winsock avec des exemples delphi...Si qqn pouvait m'expliquer comment deux machines se con
API msn messenger [ par achovovich ]
BonjourJe voudrai creer un add on pour msn messenger. Je sais ke ceci es faisable en VB et bcp d'exemples existent mais en delphi, rien. Je ne sais me
fenetres bizzarres [ par ak47 ]
bonjour a tous,J'ai lu dans un article qu'on pouvait faire des fenetres "bizarres" (de part leurs formes) grace a une api de windows. Malheureusement,
Fonction API GetOpenFileName ??? [ par PhGORMAND ]
Salut à tous.Je cherche à utiliser la fonction API GetOpenFileName, mais je ne parvient pas à l'utiliser.Dans le code ci dessous, je fais appel à la f
|
Téléchargements
Logiciels à télécharger sur le même thème :
|