Entwickler-Ecke
Multimedia / Grafik - Video in Delphi6 einbinden
chicken11 - Di 12.02.08 09:36
Titel: Video in Delphi6 einbinden
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 :D
Delete - Di 12.02.08 12:21
Titel: Re: Video in Delphi6 einbinden
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 - Di 12.02.08 17:27
Titel: Re: Video in Delphi6 einbinden
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 - Di 12.02.08 17:37
Per Drag & Drop übernommen ?
Hast Du überhaupt eine MediaPlayer Komponente auf deiner Form ?
vlv was soll das sein.
chicken11 - Di 12.02.08 17: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 - Di 12.02.08 19: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 - Di 12.02.08 19: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
chicken11 - Di 12.02.08 20: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 - Di 12.02.08 21: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 - Di 12.02.08 21: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 - Di 12.02.08 21: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 - So 17.02.08 18: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 - So 17.02.08 19: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 :D
chicken11 - Di 19.02.08 00: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 :D |
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 :D
nix für ungut und nochmal danke an alle, die mitgeholfen haben. ich werde mich jetzt wohl näher mit delphi beschäftigen.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!