AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tmediaplayer xe 2

Ein Thema von bernhard_LA · begonnen am 6. Mai 2012 · letzter Beitrag vom 9. Mai 2012
Antwort Antwort
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.124 Beiträge
 
Delphi 11 Alexandria
 
#1

Tmediaplayer xe 2

  Alt 6. Mai 2012, 16:11
ich möchte div. AVI#s mit verschiedner Codierung, fps und Auflösung hintereinander mit einem Tmediaplayer abspielen. ( Habe leider kein Programm gefunden was hier aus den Mini AVIs ein gesamtes AVI erstellen kann)

Wenn ich die Dateien einzeln lade klappt die Wiedergabe, wenn ich die Files in einer Schleife durchlaufen lasse kommt die AV : "there is no driver in your system" ...., muss ich TMediaPlayer vorm laden des nächsten *.avi aufräumen ?
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

AW: Tmediaplayer xe 2

  Alt 6. Mai 2012, 16:13
muss ich TMediaPlayer vorm laden des nächsten *.avi aufräumen ?
Warum fragst du das? Probiere es doch einfach aus. Und es wäre auch hilfreich, wenn du uns deinen Code zeigen würdest.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.124 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Tmediaplayer xe 2

  Alt 6. Mai 2012, 17:33
anbei der code .... ein File OK, dass ganze in einer Schleife -> ACCESS VIOLATION

Delphi-Quellcode:


unit SimpleMovieplayer;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.ExtCtrls, Vcl.MPlayer,
  Vcl.StdCtrls, Vcl.Buttons;

type
  TMediaPlayerForm = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    MediaPLayerStatusBar: TStatusBar;
    MediaPlayer1: TMediaPlayer;
    BitBtn1: TBitBtn;
    PlayBitBtn: TBitBtn;
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure BitBtn1Click(Sender: TObject);
    procedure PlayBitBtnClick(Sender: TObject);
  private
    procedure PlayFile(s: string);
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    playList: TStringList;

  end;

var
  MediaPlayerForm: TMediaPlayerForm;

implementation

{$R *.dfm}

uses UnitSelectAVIFiles;

procedure TMediaPlayerForm.BitBtn1Click(Sender: TObject);
begin
  SelectMediaFilesForm.playList := playList;
  SelectMediaFilesForm.Showmodal;
  if SelectMediaFilesForm.ModalResult = mrOK then
  begin
    playList := SelectMediaFilesForm.playList;
  end;

end;

procedure TMediaPlayerForm.PlayBitBtnClick(Sender: TObject);
var
  i: integer;
begin
  for i := 0 to playList.Count - 1 do
  begin
    MediaPLayerStatusBar.SimpleText := IntToStr(i) + ' now playing mediafile ->'
      + playList[i];
    PlayFile(playList[i]);
  end;
end;

procedure TMediaPlayerForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  playList.Free;
end;

procedure TMediaPlayerForm.FormCreate(Sender: TObject);
begin
  playList := TStringList.Create;

end;

procedure TMediaPlayerForm.PlayFile(s: string);
begin
  if (FileExists(s)) then
  begin
    MediaPlayer1.Display := Panel1;
    MediaPlayer1.FileName := s;
    MediaPlayer1.Wait := true;
    MediaPlayer1.Open;
    MediaPlayer1.play;
  end;
end;

end.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Tmediaplayer xe 2

  Alt 6. Mai 2012, 17:38
Suche hilft: Bei Google suchendelphi tmediaplayer playlist
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.124 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Tmediaplayer xe 2

  Alt 7. Mai 2012, 15:14
ich kann alle Videos mit IRVANVIEW anschauen, alle Videos liegen im *.avi Format vor. (Die Bildgröße und Codierung sind jedoch nicht immer gleich) TMediaPlayer kann einige Dateien nicht öffnen AV " THERE IS NO DRIVER INSTALLED ON YOUR SYSTEM". Ich hättet erwartet von der MediaPlayer von IRVANVIEW mein Files abspielen kann, dann sollte dies doch auch der TMediaplayer von DELPHI heraus schaffen? Wenn IRVANVIEW einen DRIVER findet sollte TMEDIAPLAYER in auch finden könenn
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.757 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Tmediaplayer xe 2

  Alt 7. Mai 2012, 15:22
Hallo,

der TMediaplayer kapselt den mplayer von Windows.
Kann dieser die Dateien nicht abspielen - kann das TMediaplayer auch nicht.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#7

AW: Tmediaplayer xe 2

  Alt 7. Mai 2012, 22:30
ich kann alle Videos mit IRVANVIEW anschauen, alle Videos liegen im *.avi Format vor. (Die Bildgröße und Codierung sind jedoch nicht immer gleich) TMediaPlayer kann einige Dateien nicht öffnen AV " THERE IS NO DRIVER INSTALLED ON YOUR SYSTEM". Ich hättet erwartet von der MediaPlayer von IRVANVIEW mein Files abspielen kann, dann sollte dies doch auch der TMediaplayer von DELPHI heraus schaffen? Wenn IRVANVIEW einen DRIVER findet sollte TMEDIAPLAYER in auch finden könenn
Irfanview
AVI ist an und für sich kein "Format", da es lediglich einen Container für diverse Formate beschreibt, ähnlich wie RIFF WAVE. In einem AVI können also Videos als MPEG2, DivX, Cinepak, h.264, etc. etc. stecken, die meist auch alle je ihren eigenen Codec brauchen, und ein Codec auch ggf. je nach weiterem Subformat wiederum neu/anders initialisiert werden muss. Dass alles AVI sei, hilft daher kein Stück weiter.
Ich vermute einfach, dass der Mediaplayer in Delphi bei einem Dateiwechsel nicht auch automatisch eine Neuinitialisierung des zu verwendenden Codecs veranlasst. Ich hab grad kein Delphi zur Hand, aber TMediaplayer bietet vermutlich irgend eine Methode, die dazu fürhren kann. Sei es ein Close() oder was auch immer. Einfach mal in der Codevervollständigung scrollen und zu wahrscheinlichen Kandidaten die Hilfe starten und auch mal einfach testen. Das ist zumindest meine übliche Methode wenn ich ein bestimmtes Verhalten suche, was meist ganz gut klappt.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Andreas L.

Registriert seit: 23. Mai 2011
Ort: Furth im Wald
308 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Tmediaplayer xe 2

  Alt 8. Mai 2012, 07:26
muss ich TMediaPlayer vorm laden des nächsten *.avi aufräumen ?
Warum fragst du das? Probiere es doch einfach aus.
@bernhard_LA: Hast du das ausprobiert? Könnte die Lösung sein.

Delphi-Quellcode:
procedure TMediaPlayerForm.PlayFile(s: string);
begin
  if (FileExists(s)) then
  begin

    // Player "löschen"
    if Assigned(MediaPlayer1) then
      FreeAndNil(MediaPlayer1);

    // Neuen Player erzeugen
    MediaPlayer1 := TMediaPlayer.Create(Self);
    MediaPlayer1.Parent := Self;

    // wie gewohnt benutzen
    MediaPlayer1.Display := Panel1;
    MediaPlayer1.FileName := s;
    MediaPlayer1.Wait := true;
    MediaPlayer1.Open;
    MediaPlayer1.play;
  end;
end;
oder

Delphi-Quellcode:
procedure TMediaPlayerForm.PlayFile(s: string);
begin
  if (FileExists(s)) then
  begin

    MediaPlayer1 := TMediaPlayer.Create(Self);
    try
      MediaPlayer1.Parent := Self;

      MediaPlayer1.Display := Panel1;
      MediaPlayer1.FileName := s;
      MediaPlayer1.Wait := true;
      MediaPlayer1.Open;
      MediaPlayer1.play;
   finally
     FreeAndNil(MediaPlayer1);
  end;
end;
Vielleicht genügt aber auch schon die Methode: http://docwiki.embarcadero.com/Libra...iaPlayer.Close
Andreas Lauß
Blog

Geändert von Andreas L. ( 8. Mai 2012 um 07:34 Uhr)
  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 15: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