AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi DSPack DVD abspielen
Thema durchsuchen
Ansicht
Themen-Optionen

DSPack DVD abspielen

Ein Thema von bluescreen25 · begonnen am 13. Mai 2007 · letzter Beitrag vom 13. Mai 2007
Antwort Antwort
bluescreen25

Registriert seit: 27. Nov 2005
Ort: Geldern
229 Beiträge
 
Delphi 7 Enterprise
 
#1

DSPack DVD abspielen

  Alt 13. Mai 2007, 09:56
Ich möchte gerne eine DVD mit Hilfe des DSPack abspielen.

In meinem Project verwende ich zum Testen den PlayCode des DSPack und bekomme folgende Fehlermeldung:

'Some basic error occurred in building the graph.'#13'Possibilities include the DVD Navigator filter or the video or audio renderer not instantiating,'#13'a trivial connection or pin enumeration failing, or none of the streams rendering.'

Die Übergabe von Filename funktioniert: Z:\VIDEO_TS\VIDEO_TS.IFO


Mit dem compilierten Demo DVDPlay in DSPack bekomme ich folgende Fehlermeldung:

'The video decoder doesn''t produce line 21 (closed captioning) data.'

Im Windows Media Player 10 klappt das Abspielen, habe den Intervideo XPack DVD Codec installiert.


der PlayCode aus dem DSPack:
Delphi-Quellcode:
procedure PlayDVD(FileName: WideString);
var
  Status : TAMDVDRenderStatus;
  DvdCmd: IDvdCmd;
  HR: HRESULT;
begin
  showmessage(FileName); //<-------------Filename zeigt sich korrekt !
  // Activate the filter Graph
  if not FilterGraph1.Active then
  begin
    FilterGraph1.Active := true;
    // Render DVD
    HR := FilterGraph1.RenderDvd(Status, FileName);

    if HR <> S_OK then
    begin
      case HR of
        HRESULT(E_INVALIDARG): Application.MessageBox('Invalid Argument.','Error', mb_ok);
        HRESULT(S_FALSE) : begin
                        if Status.hrVPEStatus <> 0 then Application.MessageBox(PChar(GetErrorString(Status.hrVPEStatus)), 'Error', mb_OK);
                        if Status.bDvdVolInvalid then Application.MessageBox('The specified DVD volume to be played does not exist.', 'Error', mb_OK);
                        if Status.bDvdVolUnknown then Application.MessageBox('No DVD volume is specified or isn''t found.', 'Error', mb_OK);
                        if Status.bNoLine21In then Application.MessageBox('The video decoder doesn''t produce line 21 (closed captioning) data.', 'Error', mb_OK);
                        if Status.bNoLine21Out then Application.MessageBox('The video decoder can''t be shown as closed captioning on video due to a problem with graph building.', 'Error', mb_OK);
                        if status.iNumStreamsFailed > 0 then Application.MessageBox('Can''t render one or more stream.', 'Error', mb_OK);
                      end;
        HRESULT(VFW_E_DVD_DECNOTENOUGH) : Application.MessageBox('There isn''t enough hardware or software decoders to decode all streams.','Error', mb_OK);
        HRESULT(VFW_E_DVD_RENDERFAIL) : Application.MessageBox('Some basic error occurred in building the graph.'#13'Possibilities include the DVD Navigator filter or the video or audio renderer not instantiating,'#13'a trivial connection or pin enumeration failing, or none of the streams rendering.','Error', mb_OK);
      end;
      FilterGraph1.ClearGraph;
      exit;
    end;
    FilterGraph1.Play;
    with FilterGraph1 as IDVDControl2 do
    begin
      SetOption(DVD_NotifyParentalLevelChange,false); //not notify us when parental level changes
      SetOption(DVD_HMSF_TimeCodeEvents, true); // use new HMSF timecode format
    end;
  end
  else
  begin
    FilterGraph1.Play;
    with FilterGraph1 as IDvdControl2 do PlayForwards(1.0,DVD_CMD_FLAG_None, DvdCmd);
  end;
end;
Jetzt habe ich gelesen, das wenn DSPack die Filter nicht automatisch verbinden kann, auf Grund von mehreren Filtern im Windows, das man ggf diese manuell verbinden soll, das ich aber als democode zum testen nicht finden konnte.



Kennt sich da jemand aus ?


Gruß,bluescreen25
...und ich dachte, Delphi ist ein Programmgenerator mit nur einem Button......tzzz
  Mit Zitat antworten Zitat
Benutzerbild von Mazel
Mazel

Registriert seit: 11. Nov 2005
Ort: Leipzig
831 Beiträge
 
#2

Re: DSPack DVD abspielen

  Alt 13. Mai 2007, 11:52
Kann es sein dass die IFO Probleme macht? Ich glaube bei meinem Player auch mal Probleme damit gehabt zu haben. Was macht er denn mit der VOB, auch nicht?
Marcel Jänicke
www.mj-software.net
  Mit Zitat antworten Zitat
bluescreen25

Registriert seit: 27. Nov 2005
Ort: Geldern
229 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: DSPack DVD abspielen

  Alt 13. Mai 2007, 12:17
Zitat von Mazel:
Kann es sein dass die IFO Probleme macht? Ich glaube bei meinem Player auch mal Probleme damit gehabt zu haben. Was macht er denn mit der VOB, auch nicht?
Hmm hatte es vergessen zu erwähnen, die vob geht auch nicht, dasselbe Problem.

Generell scheint im System ja der Codec da zu sein, im Win Mediaplayer gehts ja.
Das DSPack scheint hier in der Automatik, so nenne ich das mal, nicht dieses zu verbinden, deshalb gibt es dort ja eine manuelle Möglichkeit, die Filter zu listen und ggf zu verbinden, nur blicke ich überhaupt nicht durch.

Es soll ja auf jedem System später funktionieren. Ich weiss nicht, wie andere Player dies erledigen, wenn ggf mehrere Codecs vorliegen.

Noch ein Hinweis: Ich habe das DSPack dynamisch eingebunden, also nicht als VCL Kompo und Video ist soweit komplett in Funktion,nur die DVD "frisst" er nicht. Nur als Info, wenn jemand einen Tipp hat.

Dieses ist nur für das Problem an sich nicht relevant, da der Demo-DVD-Player auch nicht funzt, jedoch mit einer anderen Fehlermeldung, siehe Threadbegin.

Gruß, bluescreen25
...und ich dachte, Delphi ist ein Programmgenerator mit nur einem Button......tzzz
  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 18:42 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