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
Antwort Antwort
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: C++ Delphi Übersetzung 3DYDYoutube Filter

  Alt 20. Nov 2020, 15:31
@ venice2
Du hast eine (private) Mail von TERWI. Keine PN !
  Mit Zitat antworten Zitat
Benutzerbild von TERWI
TERWI

Registriert seit: 29. Mär 2008
Ort: D-49626
381 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: C++ Delphi Übersetzung 3DYDYoutube Filter

  Alt 20. Nov 2020, 16:44
... aber nichtsdesdotrotz würde mich mal sehr interessieren, ob es noch mehr wissenswerte Info ausser diesen hier unter "https://ys.3dyd.com/developers/" gibt:
- IAMMediaContent (Win-Standard)
- IAMNetworkStatus (Win-Standard)
- IAMOpenProgress (Win-Standard)
- ISupportedSites (by Progger - bisher diskutiertes in "developers.zip")
- IPropertyBag, IPropertyBag2 (Win-Standard - Design by Progger)

Mittels dem bei der Installtion erzeugtem "configure.bat" hab ich mir mal die Prop-Pages angesehen ...
... wirklich schlau wird man da ohne die Beschreibung der Funktion durch Progger selbst wahrscheinlich nicht.
Ich jedenfalls nicht.

Hat da schon mal jemnd angefragt, was was genau wie wo bewirkt und wa wann wo veranlasst ?
Jemand schon mal nachgefragt ?
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#3

AW: C++ Delphi Übersetzung 3DYDYoutube Filter

  Alt 20. Nov 2020, 17: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 18:20 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 18:01 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-2025 by Thomas Breitkreuz