| Autor | Beitrag | 
| chicken11 Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Di 12.02.08 08:36 
 
Hallo,
 sicher gab es die frage schon öfters, doch habe ich nach knapp einstündiger suche hier nichts gefunden.
 meine frage ist also:
 Wie genau kann ich ein videodatei (format mpeg, zur not kann ich es auch noch verändern) in ein delphi programm einbinden?
 das man die datei in einem panel abspielt ist mir bekannt, doch was ist zb der Tmediaplayer? muss ich den als dll downloaden oder ist das eine komponente des programms.
 angenommen mein video heißt "video1" und ich möchte über den "button1" das video in einem "panel1" abspielen lassen?
 wäre echt nett, wenn mir jemand helfen könnte   | 
|  | 
| ma$ter Ehemaliges Mitglied
 Erhaltene Danke: 1
 
 
 
 
 | 
Verfasst: Di 12.02.08 11:21 
 
Mit der Komponente TMediaPlayer lässt sich das machen:
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 5:
 6:
 7:
 8:
 
 | procedure TForm1.Button1Click(Sender: TObject);begin
 MediaPlayer1.FileName:='C:\Video1.mpg';
 MediaPlayer1.open;
 MediaPlayer1.Display:=panel1;
 MediaPlayer1.DisplayRect:=Panel1.ClientRect;
 MediaPlayer1.Play;
 end;
 |  lg
 P.S.: so klappt das zumindestens bei D2k5, bei D6 bin ich mir nicht sicher... | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Di 12.02.08 16:27 
 
	  |  ma$ter hat folgendes geschrieben: |  	  | P.S.: so klappt das zumindestens bei D2k5, bei D6 bin ich mir nicht sicher...
 | 
 jetzt kannst du dir sicher sein:
 es geht leider nicht bei d6. aber ich habe mal einen screenshot gemacht, vielleicht fällt jemanden was auf, was da noch gemacht werden könnte:
   edit: mit anderem formaten geht es auch nicht. | 
|  | 
| Blackheart666 
          Beiträge: 2195
 
 XP
 D3Prof, D6Pers.
 
 | 
Verfasst: Di 12.02.08 16:37 
 
Per Drag & Drop übernommen ?
Hast Du überhaupt eine MediaPlayer Komponente auf deiner Form ?
 vlv was soll das sein.
 _________________Blackheart666 Der Irrsinn ist bei Einzelnen etwas Seltenes, - aber bei Gruppen, Parteien, Völkern, Zeiten die Regel. (Friedrich Nietzsche)
 | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Di 12.02.08 16:44 
 
ich weis nicht, ob ich eine solche komponente besitze. ich habe d6 und mal schnell nachgeschaut, aber nichts (keine solche komponente) gefunden.
 was meinst du mit vlv? sollte bestimmt flv heißen. das ist ein videoformat, abspielbar zb über den vlc-player.
 
 naja, mit iener anderen methode kann ich den audiostream eines videos wiedergeben, es kommt bloß kein bild.
 | 
|  | 
| nagel 
          Beiträge: 708
 
 Win7, Ubuntu 10.10
 
 
 | 
Verfasst: Di 12.02.08 18:26 
 
Oben hast du geschrieben, dass dein Video im MPEG-Format wäre, nun ist es plötzlich Flash Video. Das dürfte nicht ganz einfach sein, das in Delphi abzuspielen (wobei es afaik auch flv-Dateien gibt, die einen MPEG4-ähnlichen Codec verwenden).
 Die MediaPlayer-Komponente hast du und damit funktioniert's auch genauso, wie dir   ma$ter  bereits oben gepostet hat, sofern du ein unterstütztes Videoformat verwendest. | 
|  | 
| Xion 
          
  Beiträge: 1952
 Erhaltene Danke: 128
 
 Windows XP
 Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse),  C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
 
 | 
Verfasst: Di 12.02.08 18:33 
 
falls du die TMediaPlayer-Komponente nicht findest, probiere es mal so
 		                       Delphi-Quelltext 
 									| 1:2:
 3:
 4:
 
 | var MediaPlayer: TMediaPlayer;begin
 MediaPlayer:=TMediaPlayer.Create(Form1);
 MediaPlayer.Parent:=Form1;
 |  damit erzeugst du einen mediaplayer (falls dein Delphi TMediaPlayer kennt, wo ich mir aber 99.9%ig sicher bin    )
 Aber flvs kann der sicher nicht abspielen.
 Xion
 //Edit: nur so als Hinweis: den Fehler den er bei dir bringt heißt nur, dass du ihm nicht sagst, was denn "MediaPlayer1" sein soll. Ählich wie wenn du schreiben würdest "Hanswurst.FileName:=". Du musst also erstmal sagen, was das sein soll (siehe bei mir den var Teil) und da es eine Klasse ist musst du sie erst noch createn. Das Parent musst du setzen, damit er weiß, wo er es hinmalen soll und zu welcher Komponente er gehört_________________a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius) | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Di 12.02.08 19:48 
 
erstmal danke
 kurzes feedback von mir nochmal:
 leider kennt das delphi von mir die komponente TMediaPlayer überhaupt nicht. auch bei deiner version wird wieder der fehler "undefinierter bezeichner" hervorgebracht.
 
 nochmal etwas anderes:
 da die komponente offensichtlich nicht da ist; woher kann ich sie möglichst kostenfrei bekommen. einzige bedingung ist, dass es schon mit delphi 6 funktionieren sollte. mit d5 klappt es ja sicher, nur brauche ich das für d6.
 | 
|  | 
| nagel 
          Beiträge: 708
 
 Win7, Ubuntu 10.10
 
 
 | 
Verfasst: Di 12.02.08 20:04 
 
D6 hat 100% eine TMediaPlayer-Komponente, vermutlich irgendwo in der Kategorie "System".
 Alternativ kannst du's natürlich auch so machen, wie von   Xion  vorgeschlagen. Vermutlich hat das nicht funktioniert, weil du die entsprechende Unit nicht eingebunden hast. | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Di 12.02.08 20:16 
 
guten abend,
 tatsächlich habe ich die komponente nach deinem guten tipp gefunden:
   dennoch, selbst, wenn ich den code von xion benutze, komme ich einfach auf keinen grünen zweig. ich kann das einfach nicht, vieleicht geht es auch nicht.
 danke für eure hilfe trotzdem. | 
|  | 
| nagel 
          Beiträge: 708
 
 Win7, Ubuntu 10.10
 
 
 | 
Verfasst: Di 12.02.08 20:30 
 
	  |  chicken11 hat folgendes geschrieben: |  	  | dennoch, selbst, wenn ich den code von xion benutze, komme ich einfach auf keinen grünen zweig.
 | 
 Wenn du näher beschreiben würdest, wie sich das "auf keinen grünen Zweig kommen" äußert (Was passiert? Welche Fehlermeldungen an welcher Stelle?), können wir dir vielleicht weiterhelfen. | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: So 17.02.08 17:28 
 
ok, ich habe es nun ganz ohne quelltext geschafft. danke an die anderen für die vielen ideen.
 PS: mit avi oder wma hackt es gewaltig, allerdings funktioniert es enwandfrei mit mpg1.
 | 
|  | 
| Xion 
          
  Beiträge: 1952
 Erhaltene Danke: 128
 
 Windows XP
 Delphi (2005, SmartInspect), SQL, Lua, Java (Eclipse),  C++ (Visual Studio 2010, Qt Creator), Python (Blender), Prolog (SWIProlog), Haskell (ghci)
 
 | 
Verfasst: So 17.02.08 18:30 
 
Wie   Nagel  schon sagte:
 Du hättest für meinen Code die Unit MPlayer einbinden müssen (oben bei uses). Die Unit bekommst du raus indem du über TMediaPlayer im Quellcode F1 drückst, oben steht dann, in welcher Unit die Klasse steht.
 Da du mit dem Objektinspektor die TMediaPlayer-Komponente auf die Form platziert hast, hat Delphi automatisch diese Unit eingebunden.
 Soviel nur zum Verständnis   _________________a broken heart is like a broken window - it'll never heal
In einem gut regierten Land ist Armut eine Schande, in einem schlecht regierten Reichtum. (Konfuzius) | 
|  | 
| chicken11  Hält's aus hier
 Beiträge: 7
 
 
 
 
 | 
Verfasst: Mo 18.02.08 23:32 
 
	  |  Xion hat folgendes geschrieben: |  	  | Wie  Nagel schon sagte: 
 Du hättest für meinen Code die Unit MPlayer einbinden müssen (oben bei uses). Die Unit bekommst du raus indem du über TMediaPlayer im Quellcode F1 drückst, oben steht dann, in welcher Unit die Klasse steht.
 
 Da du mit dem Objektinspektor die TMediaPlayer-Komponente auf die Form platziert hast, hat Delphi automatisch diese Unit eingebunden.
 
 Soviel nur zum Verständnis
  | 
 danke für die nachträglich erklärung.
 da man aber auch von berlim nach stuttgard über erlin fahren kann, mache ich es einfach so    nix für ungut und nochmal danke an alle, die mitgeholfen haben. ich werde mich jetzt wohl näher mit delphi beschäftigen. | 
|  |