AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein C++ C++ Delphi Übersetzung 3DYDYoutube Filter
Thema durchsuchen
Ansicht
Themen-Optionen

C++ Delphi Übersetzung 3DYDYoutube Filter

Ein Thema von EWeiss · begonnen am 2. Okt 2018 · letzter Beitrag vom 20. Nov 2020
 
venice2
(Gast)

n/a Beiträge
 
#40

AW: C++ Delphi Übersetzung 3DYDYoutube Filter

  Alt 20. Nov 2020, 18:26
Habe dir angeboten den Quelltext zu schicken wenn du ihn nicht anforderst dann kann ich leider auch nichts machen.

Zitat:
Hat da schon mal jemnd angefragt, was was genau wie wo bewirkt und wa wann wo veranlasst ?
Jemand schon mal nachgefragt ?
Jo und auf Grund dessen meine Funktionen geschrieben.
Bsp.

IAMMediaContent
Delphi-Quellcode:
function TEVMRPlayer.GetYoutubeFilterDescription(var Description: string): HRESULT;
var
   MediaContent: IAMMediaContent;
   pwcDescription: PWideChar;
begin

   Result := E_FAIL;

   if not Assigned(srcFilter) then
     exit;

   if IsUrl then
   begin
     if Assigned(DYDYoutubeFilter) then
     begin
       srcFilter.QueryInterface(IID_IAMMediaContent, MediaContent);
       Result := MediaContent.get_Description(pwcDescription);
       if not SUCCEEDED(Result) then
         ReportError('YoutubeFilterTitle fails', Result)
       else
         begin
           Description := pwcDescription;
           SysFreeString(pwcDescription);
         end;
     end;
   end;

end;
prop page.
Delphi-Quellcode:
procedure TEVMRPlayer.Show_YoutubeFilterPropertyPage(ParentHandle: HWND);
var
  hr: HRESULT;
  PropertyPage: ISpecifyPropertyPages;
  FilterInfo: FILTER_INFO;
  pFilterUnk: IUnknown;
  caGUID: CAUUID;
begin

  if not IsRegisteredFilter(CLSID_LegacyAmFilterCategory, CLSID_3DYDYoutubeSource) then
    Exit;

  if not Assigned(DYDYoutubeFilter) then
    Exit;

  hr := DYDYoutubeFilter.QueryInterface(IID_ISpecifyPropertyPages, PropertyPage);
  if (SUCCEEDED(hr)) then
  begin
    // Get the name of filter and pointer to IUnknown.
    DYDYoutubeFilter.QueryFilterInfo(FilterInfo);
    DYDYoutubeFilter.QueryInterface(IID_IUnknown, pFilterUnk);

    // Get configuration page.
    PropertyPage.GetPages(caGUID);
{$IFDEF CPUX64}
    MyOleCreatePropertyFrame(
{$ELSE}
    OleCreatePropertyFrame(
{$ENDIF}
      ParentHandle, 0, 0, FilterInfo.achName, 1, @pFilterUnk,
        caGUID.cElems, caGUID.pElems, 0, 0, nil);

    // Clean up
    pFilterUnk := nil;
    FilterInfo.pGraph := nil;
    CoTaskMemFree(caGUID.pElems);
  end;
end;

exports..
Delphi-Quellcode:
  KVideo_ShowYoutubeFilterConfig: function(Index: Integer; ParentHandle:HWND): HRESULT; stdcall;
  // Shows the YoutubeFilter Config window
  // ( parameter )
  // - Index : Instance Count of KVideoPlayer

  KVideo_YoutubeFilterState: procedure(Index: Integer; out Registered, Loaded: BOOL); stdcall;
  // Checks if YoutubeFilter is ready to service
  // YoutubeFilter is used to play files from YouTube
  // * note) The configuration window to change YoutubeFilter's properties is shown only
  // when YoutubeFilter is registered at system.
  // ( parameter )
  // - Index : Instance Count of KVideoPlayer
  // - Registered : true if YoutubeFilter is registered at system, else false
  // - Loaded : true if YoutubeFilter is loaded, else false

  KVideo_GetYoutubeFilterTitle: function(Index: Integer; var Title: PWideChar): HRESULT; stdcall;
  // Get Media Title
  // ( parameter )
  // - Index : Instance Count of KVideoPlayer
  // - Title : if Available

  KVideo_GetYoutubeFilterSupportedSites: function(Index: Integer; var Sites: string;
    Count: Integer): HRESULT; stdcall;
  // Get Supported Sites
  // ( parameter )
  // - Index : Instance Count of KVideoPlayer
  // - Sites : which supported
  // - Count : Index from KVideo_GetYoutubeFilterSupportedSitesCount
  // ( result )
  // - 0 on success, else fails

  KVideo_GetYoutubeFilterSupportedSitesCount: function(Index: Integer;
    var Count: Integer): HRESULT; stdcall;
  // Get Supported Sites count
  // ( parameter )
  // - Index : Instance Count of KVideoPlayer
  // - Count : of Supported Sites
  // ( result )
  // - 0 on success, else fails
und, und, und...

Zitat:
Wenn ich in meinem Proggie nun den LAV durch den YT-Filter ersetze (nur die CLSID ändern), dann kommt der Fehler Interface not found schon bei LOAD(URL).
Du meinst mit 3DYDYouTube ersetzt?
Wenn ja warum?
Die Filter arbeiten doch zusammen.

https://www.gitmemory.com/issue/ytdl...2258/568124272
http://trac.lliurex.net/xenial/brows...oo.py?rev=8788

Bei Google suchenusing Zattoo with youtube-dl

Geändert von venice2 (20. Nov 2020 um 19:20 Uhr)
  Mit Zitat antworten Zitat
 


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 06:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz