Jump to content
Sign in to follow this  
ThomasL

EVR DXVA Select Plugin

Recommended Posts

alfonxs
Hast du dich schon mal gefragt wofür die Funktion Check Output Rect 1:1 da ist ?

Macht Sinn bei Vollbild, im Fenster ehr nicht.

 

Weder Check Output Rect noch Fenster/Vollbild macht einen Unterschied. Das seltsame Zoomen/Stretchen tritt bei aktiviertem Plugin immer auf, unabhängig ob Check Output Rect aktiviert ist oder nicht.

Share this post


Link to post
ccdmas
Weder Check Output Rect noch Fenster/Vollbild macht einen Unterschied. Das seltsame Zoomen/Stretchen tritt bei aktiviertem Plugin immer auf, unabhängig ob Check Output Rect aktiviert ist oder nicht.

 

Ich kann das zumindest mit der vorletzten Version soweit bestätigen, ich werd' heute Abend mal versuchen daran zu denken, die neue zu probieren.

 

Bei mir ist es präzise so, dass nach dem EInschlten, oder einem Senderwechsel, zuerst (solange das mini-osd noch zu sehen ist), die im Plugin voreingestellte Zoomstufe (z.B. 1) aktiv ist. Währendessen ruckelt allerdings das Bild sehr stark. Kurz (vielleicht 0,1-0,3s) nachdem das mini-osd verschwindet, ändert sich die Zoomstufe zurück auf "0", das bild schrumpft also zusammen. Im gleichen Moment hört auch das Ruckeln auf.

 

Allerdings kann ich *danach* per Fernbedienung den Zoom beliebig und einwandfrei verändern, solange ich den Sender nicht wechsle. Beim nächsten Senderwechsel passiert wieder das gleiche.

 

Ergebnisse mit der neuen Version des Plugins poste ich später.

 

CU,

Massimo

Share this post


Link to post
ThomasL

Ich habe den Fehler gefunden.

Es gibt jetzt eine Neue Version 0.6

 

Das Check Outputrect wurde wohl deaktiviert wenn die Checkbox ausgeschaltet wurde, aber sobald der Graph neu aufgebaut wurde wieder eingeschaltet. Der Fehler hat sich ab irgendeiner Version eingeschlichen(In der beta0.1 arbeitete das Check Outputrect unabhänigt vom Aktiv),

genau dieses Abschalten bei nicht Aktiv hat es auch wieder eingeschaltet.

Share this post


Link to post
ThomasL
...

Im gleichen Moment hört auch das Ruckeln auf.

 

Komisch, mal im Auge behalten ob das irgendeinen zusammenhang hat.

Steht aber nichts besonderes im Code.

 

procedure TFSettings.Timer2Timer(Sender: TObject);
var
 NRect : TMFVideoNormalizedRect; 
 Rect  : TRect;
begin
try
if Assigned(FDisplayControl) then FDisplayControl.GetVideoPosition(NRect,Rect)else exit;
if NRect.left   < 0.05 then NRect.left   := 0;
if NRect.top	< 0.05 then NRect.top	:= 0;
if NRect.right  > 0.95 then NRect.right  := 1;
if NRect.bottom > 0.95 then NRect.bottom := 1;
FDisplayControl.SetVideoPosition(@NRect, @Rect);

if Assigned(FMixerControl) then FMixerControl.GetStreamOutputRect(0,NRect)else exit;
if NRect.left   < 0.05 then NRect.left   := 0;
if NRect.top	< 0.05 then NRect.top	:= 0;
if NRect.right  > 0.95 then NRect.right  := 1;
if NRect.bottom > 0.95 then NRect.bottom := 1;
FMixerControl.SetStreamOutputRect(0,@NRect);

except
//
end;
end;

Share this post


Link to post
alfonxs
Ich habe den Fehler gefunden.

Es gibt jetzt eine Neue Version 0.6

 

Das Check Outputrect wurde wohl deaktiviert wenn die Checkbox ausgeschaltet wurde, aber sobald der Graph neu aufgebaut wurde wieder eingeschaltet. Der Fehler hat sich ab irgendeiner Version eingeschlichen(In der beta0.1 arbeitete das Check Outputrect unabhänigt vom Aktiv),

genau dieses Abschalten bei nicht Aktiv hat es auch wieder eingeschaltet.

Das wars! Funktioniert jetzt einwandfrei!

 

Noch eine Frage: Kann das Plugin zwischen interlaced und progressive Content unterscheiden? Wenn ich z.B. ein 1080p Video abspiele, brauchts ja keinen Deinterlacer, hier wird aber trotzdem der eingestellte Deinterlacer für die jeweilige Auflösung verwendet. Du hast doch auch den 780g onboard, oder? Wie machst du das?

Share this post


Link to post
ccdmas
Das wars! Funktioniert jetzt einwandfrei!

 

Kann ich leider gar nicht bestätigen. Im Gegenteil, es ist bei mir schlimmer geworden mit der letzten Version (0.6). Der Zoom 1 funktioniert jetzt überhaupt nicht mehr, nicht mal mehr manuell. Wenn ich manuell (hab' ich mir auf die FB gelegt), auf Zoom 1 wechsle, schrumpft das Bild nach exakt 3 Sekunden auf Zoom 0 zurück.

Betätige ich die Zoom Taste dann nochmal, springt er auf Zoom 2, und bleibt da auch, erneutes Drücken geht auf Zoom 3. Das "zurückschrumpfen" passiert also konsequent nur bei Zoom 1, da allerdings immer.

 

Dito wenn ich im Plugin selber Zoom 1 anstatt default für die laufende Auflösung eintrage. Es schrumpft immernoch auf Zoom 0 Größe zurück, "merkt" sich aber intern Zoom 1, d.h der nächste Druck auf die Zoom Taste springt auf Zoom 2.

 

In der alten Version passierte das schrumpfen zwar auch, aber ich konnte wenigstens manuell auf Zoom 1 wechseln.

 

CU,

Massimo

Share this post


Link to post
ThomasL
Kann ich leider gar nicht bestätigen. Im Gegenteil, es ist bei mir schlimmer geworden mit der letzten Version (0.6). Der Zoom 1 funktioniert jetzt überhaupt nicht mehr, nicht mal mehr manuell. Wenn ich manuell (hab' ich mir auf die FB gelegt), auf Zoom 1 wechsle, schrumpft das Bild nach exakt 3 Sekunden auf Zoom 0 zurück.

 

Wer Zoomstufe 1 benutzen will (mit dem Minimum Zoom), sollte Check Outputrect ausschalten.

Share this post


Link to post
DaMickVanHalen

Hallo,

könnte man das Plugin in der Art anpassen, dass es bei Erkennung einer Bildschirmauflösung von 1080i automatisch in den Vollbildmodus schaltet und den wieder verlässt sobald man umschaltet? Alternativ fände ich auch eine konfigurierbare Sendergruppe gut, bei der der Vollbildmodus automatisch angeht. Außerdem wäre eine konfigurierbare Möglichkeit zum verlassen des Vollbildmodus schön. Ich finde "Return" zum Beispiel etwas unpraktisch.

 

 

Gruß

Edited by DaMickVanHalen

Share this post


Link to post
ThomasL

Einfach die Funktion auf die Fernbedienung legen, oder irgend eine andere Taste anlernen.

Der Tastencode für EVR Vollbild ist 55000

 

55000.th.png

Share this post


Link to post
DaMickVanHalen

Ist zwar nichts für die ganz faulen, aber das ist schonmal nicht schlecht. Damit kann ich das nun immerhin über meine Fernbedienung regeln. Danke! Kann man das event irgendwie in der Scripting Engine verwenden?

 

Wie sieht mit dem Verlassen des Vollbilds aus. "Return" finde ich unpraktisch, da ich mit dem Navigieren im OSD den Vollbild-Modus immer ausschalte. Zum Beispiel mal eben gerade im Mini-EPG schauen, wie der Film heißt, oder wann er endet. => Vollbildmodus beendet. Navigieren duch das EPG und sich die Beschreibung eines anderen Filmes anschauen. => Vollbildmodus beendet.

Share this post


Link to post
ThomasL

Wenn das EVR Vollbild Aktiv ist können keine Windows Fenster usw. angezeigt werden. Nur das OSD, was in den Renderer geleitet wird ist möglich.

 

Einige Seiten vom OSD werden an den Renderer geleitet, und einige als Windows Fenster angezeigt.

Bei den OSD Seiten, wo Windows Fenster verwendet werden wird das EVR Vollbild deaktiviert.

 

Wenn auf einer OSD Seite mit Windows Fenstern mit der Fernbedienung das EVR Vollbild eingeschaltet wird gibts Probleme.

 

Bei diesen Events wird das EVR Vollbild abgeschaltet

7,35,37,64,73,94,101,8000-9000,12323-12329,16383-16397:

 

Scripting Engine müsste gehen.

Das 55000 ist aber ein Toggle also nicht gescheit verwendbar.

Share this post


Link to post
DaMickVanHalen

Im Gegentum. ;-) 5500 lässt sich sehr schön verwenden. DVBViewer.SendCommand(55000) scheint genau das zu bewirken was ich möchte. Habe jetzt in meine channelchange.vbs folgendes eingtragen:

 

If AID = 405 Then
    DVBViewer.SendCommand(55000)
End If

 

Das ganze schaltet mir dann in den Vollbildmodus, wenn ich den Kanal 405 einschalte.

 

Bis gerade hatte ich gedacht, ich habe verstanden, was du mir oben sagen wolltest und zwar, dass nicht das drücken von "Return" den Vollbildmodus beendet sondern z.B. das einschalten des OSDMiniEPG (weil es als Fenster angzeigt wird?), weil es als Fenster angezeigt wird. Nachdem mein versuch oben funktioniert, habe ich es aber leider doch nicht verstanden. Mir wird nämlich nachdem mein Skript erfolgreich ausgeführt wurde und den Vollbildmodus eingeschaltet hat, das OSDMiniEPG ohne Probleme angezeigt.

Share this post


Link to post
Marokaner

Hallo,

also erst mal tolles Tool!

 

Da ich vor diesem Plugin eine Auflösung von 1366x768 und 60hz machen musste, kann ich nun endlich ohne großes

Umstellen 1280x720 und 50hz machen was ein wesentlich angenehmeres Bild auf meinem LCD Samsung 720p liefert.

Wenn ich nun während dieser Auflösung den DVBViewer in die Taskleiste setze (verkleinern) und z.B. ins Internet

gehe, erweißt sich diese Auflösung allerdings als Nachteil! Neben der dadurch schlechteren Bildqualität fehlt natürlich auch

ein Teil des Bildes an den Rändern.

 

Wäre es möglich das Plugin so zu ändern, dass sich die "alte Auflösung" wieder einstellt, sobald man den DVBViewer´

in die Taskleiste verkleinert ?

Share this post


Link to post
ter9999

This is a very good plugin, hope author can add an English thread in this forum!

Share this post


Link to post
ThomasL

Ich habe eine neue Verion hochgeladen, Version 0.7

 

 

Es wird jetzt auch der EVR Custom Video Renderer unterstützt.

 

Die Funktion Check Output Rect wurde entfernt.

 

EVR Vollbild geht nicht beim Custom Video Renderer.

 

Der Videoprocessor Mode wird nur noch gesetzt, wenn er noch nicht aktiviert wurde.

 

Die Auflösung wird auch nicht mehr auf default zurückgesetzt, wenn sie nicht umgeschaltet wurde.

Share this post


Link to post
DeJe

Also bei mir funktioniert das Plugin absolut überhaupt nicht.

 

a: zeigt es komplett falsche Auflösungen an und

b: scheint der Video Processor mode keinerlei wirkliche Auswirkungen zu haben.

 

z.B. ich schalte "Das Erste" ein, DVBViewer zeigt mir natürlich 720x576 (25fps), das Plugin ist aber der Meinung bei Erstellung des Graph eine Auflösung von 1181x1260 und aktuelle Auflösung von 1313x1050 zu haben.

 

Was soll das? :bye:

 

Windows 7 Pro, DVBViewer 4.2.1

Edited by DeJe

Share this post


Link to post
ThomasL

Welcher Codec wird verwendet?

Welche Hardware?

Es wird auf jeden Fall die Auflösung angezeigt die an den Renderer übergeben wird.

(Überprüfbar mit evrprop.dll)

 

Wenn die Auslöung dann nicht passt, wird die einstellung unter Sonstige verwendet.

 

PS.

Bei verwendung mit dem Custom Renderer(DVBViewer Beta) gibt es ein Problem das sich der DVBViewer nicht richtig beendet.

Share this post


Link to post
ThomasL

Ich habe eine neue Version hochgeladen, Version 0.8

 

Der Bug, das sich DVBViewer bei Verwendung vom Custom Renderer nicht richtig beendet wurde behoben.

Share this post


Link to post
DeJe

Thomas, vergiß meine Frage...kurzzeitig. ;)

Ich konnte es lösen, man sollte seine eigenen Beiträge lesen (Seite 2). ;)

 

Es wäre aber trotzdem klasse wenn die Auflösungserkennung auch mit anderen Skins sauber funktionieren würde. Vielleicht kannst du da mal einen Blick drauf werfen, was da überhaupt schief geht. Mit dem originalen Skin funktioniert es ja einwandfrei.

Share this post


Link to post
ThomasL

Mit welchem Skin geht es denn nicht?

 

Bei mir geht concinnity 3d & Default.

 

Die Auflösung kommt aus dem Renderer, wenn die sich durch einen anderen Skin ändert, müsste das Bild sich ja auch minimal verschlechtern?

Share this post


Link to post
DeJe

Ich kann das hier mit Concinnity-v2-P nachvollziehen.

 

z.B. ARD HD sendet in 1280 und wird mit dem originalen OSD Skin auch so erkannt und DXVA entsprechend eingestellt. Dann schalte ich um auf Concinnity und dein Plugin wählt "Sonstige".

Share this post


Link to post
Dauni30

Hallo

 

Hoffe ich bin hier nicht falsch mit meinem Problemchen

 

Hoffe es kann mich jemand unterstützen.

 

Bei Sky Sport HD wenn z.B. Fußball oder Tennis kommt bekomme ich keine Einstellung hin

Das ich ein „geniales“ Bild bekomme.

Entweder ist es komplett verwaschen oder bei Bewegungen der Spieler sind diese extrem verwaschen oder die Zeilen sind verschoben (wie kann ich das beschreiben?)

Ich habe so viele Einstellungen getestet aber irgendwie hilft nix, bzw ich weis halt nicht wo ich ansetzen soll und eine andere Gute Einstellung nicht wieder aufhebe u.s.w.

Das Plugin habe ich auch getestet aber mit was und wie eingestellt ist es am besten?

Ich nutze die Auflösung 1920*1080*25p auf dem Benq W6000

CoreAVC 1,9,5 ist auch inst aber da ist der glaube es nennt sich Zeilensprung(Verschiebung)

Am stärksten bei Bewegungen, Und Kameraschwenks sind im Algemeinen bisher sehr wie soll ich schreiben schmierend.

 

Andere HD Sender Anixe HD u.s.w. ist echt ob also Filme halt.

 

 

Hat mir jemand einen Tipp ?

 

Danke Dauni30

Share this post


Link to post
ThomasL

Bei CoreAVC arbeitet die Hardwarebeschleuniging nur bei Nvidia(Cuda), somit wird alles von der CPU gemacht.

 

Installiere mal einen Codec von Cyberlink (die Originale aktuelle geht ja Leider nicht mehr)

zb. h ttp://[Link entfernt, das du auf die Seite nicht verlinkten kannst ist kein versehen] (Leerzeichen Wegmachen)

 

Bei der 4800 Ati gebrauchst du dieses Plugin nicht, weil die GPU genug Power für alle Deinterlacing Methoden hat.

(Immer höchste Einstellung oder Auto im CCC)

Share this post


Link to post
wikings1

hello i cant germany so i write in english

here in sweden our sd channels broadcast in 576i

and 1 hd channel in 720P and the rest hd channels in 1080i

 

can some one help me to get the best settings for this god program

regards wikings1

Share this post


Link to post
rastik

Hi,

lässt sich mit deinem Plugin auch die Frequenz des Videos auslesen bzw. unterscheiden (50/60hz) bzw. Progressiv/Interlaced Material unterscheiden?Falls nicht lässt sich das einbauen?Man könnte so nämlich passender die Displayauflösung ändern lassen.

 

MFG

Rasti

Share this post


Link to post
ThomasL

Die Frequenz habe ich so noch nicht zur Verfügung.

Die Com Schnittstelle zum DVBViewer wird im Plugin nicht benutzt.

Kennst du einen Sender mit 60Hz Sendet(Astra), oder geht es nur um Dateiwiedergabe.

 

Was ich schonmal angedacht habe, ist eine Unterscheidung 16/9 4/3.

Und einstellungen pro Sender einzeln speichern, damit wäre ein 60Hz Problem bei einzelnen Sendern auch gelöst.

Share this post


Link to post
rastik

Hi, danke für deine schnelle Antwort! Nein, einen 60hz Sender gibts hier im Europäischen Raum wohl nicht, aber mir gehts z.b. um Dateiwiedergabe von NTSC Material!Ebenso auch bezüglich der Unterscheidung ob das ganze Interlaced oder Progressiv ist!Die Problematik wäre bei LiveTV zwar mit einer senderabhängigen Konfiguration gelöst, allerdings halte ich das für einen sehr großen Konfigurationsaufwand!Zumal das wiederrum für aufgenommene Videos wieder nicht zutreffen würde!

Sowas wäre nämlich richtig klasse

 

Danke für deine Hilfe

 

MFG

Rasti

Share this post


Link to post
Tjod

Also das es in einem Land sowohl 50hz als auch 60hz Sender gibt hab ich bisher nur von China gehört.

 

Es gibt ja schon ein Plugin was in Abhängigkeit von der Frame Rate befehle absetzen kann, der Video frame rate switcher. Aber ob man die Auflösung damit einfach ändern kann weiß ich nicht.

Share this post


Link to post
craig_s

Hey, ThomasL

 

wenn du gerade in der Nähe bist schau doch mal hier ff vorbei, da steht dein Plugin auf einem Prüfstand der nicht ganz ohne ist :unsure:

 

Gruß craig

Edited by craig_s

Share this post


Link to post
rastik

@tjod, danke, nach sowas hab ich gesucht

 

MFG

Rasti

Share this post


Link to post
nuts

Hallo Thomas,

 

hinsichtlich dieses Threads: http://www.DVBViewer.info/forum/index.php?showtopic=39657 wollte ich mal fragen ob es möglich wäre über dein Plugin die Scalingmethode vorzugeben?

 

 

Gruß nuts

 

P.S. In MPC-HC ist das z.B. möglich falls du einen Ansatzpunkt suchst.

Share this post


Link to post
CiNcH

Die Resizer, die man in MPC auswählen kann, sind lediglich die, die der Custom Presenter in MPC implementiert.

 

Bezüglich Resizer kann man in Standard EVR glaub nicht wirklich was beeinflussen. In den DXVA2_VideoProcessorCaps wirst du schon gar nichts finden, da Resizing nicht im DXVA-Kontext ausgeführt wird.

 

Der DVBViewer Custom Presenter verwendet einen bilinearen Resizer über DirectX. Also auch nicht gerade das gelbe vom Ei. Das kannst du auch nicht umbiegen.

Edited by CiNcH

Share this post


Link to post
nuts

Hm keine Ahnung, die Directx Methoden (bilinear, bicubic usw.) denkt sich doch der Customrenderer-Programmierer nicht selbst aus sondern sind quasi MS Vorgabe oder?

Schade wenn da nichts zu machen ist, denn mit einem Plugin könnte man das unproblematisch testen.

Share this post


Link to post
CiNcH
Hm keine Ahnung, die Directx Methoden (bilinear, bicubic usw.) denkt sich doch der Customrenderer-Programmierer nicht selbst aus sondern sind quasi MS Vorgabe oder?

Nearest Neighbour und Bilinear werden noch an das DirectX-System delegiert und sind somit "MS Vorgaben". Wie bereits gesagt verwendet Custom im DVBViewer da Bilinear. Die restlichen Resizer in MPC basieren aber, wie der Name schon sagt, auf internen Pixelshadern (PS). Algorithmen wie Bicubic, Lanczos, Splin usw. sind natürlich definiert. Aber jemand muss sie halt in Pixelshader-Code (LSHL) überführen. madVR hat eine schöne Sammlung davon, allerdings alles geschlossene Sourcen.

 

Wie EVR Standard skaliert, weiß ich nicht. Aber soweit ich weiß, gibt es da auch keine Wahlmöglichkeiten. Diesem Posting nach zu urteilen lässt EVR Standard aber einen besseren Algorithmus auf das Bild los.

 

Hier gibt es Infos zu den DirectX-Resizern. Anisotropische Filterung macht IMHO für Video keinen Sinn. Da geht es darum eine Textur optimal auf ein 3D-Objekt zu mappen. Steht ja auch da:

Solange Sie orthogonal auf eine Textur schauen, erhalten Sie mit dem linearen Filter die besten Ergebnisse. Wenn aber eine Textur auch in die tiefe des Raumes verläuft, kann es zu Verzerrungen kommen..

 

Bilinear ist halt die best mögliche DirectX-Methode für Video (würde ich zumindest sagen). Schaut euch zum Beispiel mal die Resize-Möglichkeiten in ffdshow durch und lasst einen Lanczos 2-tap auf das Bild los (e.g. progressive SD-Quelle wie DVD auf HD-Auflösung hochrechnen). Da sieht man dann schon, dass in Sachen Bildqualität mit dem Custom noch einiges drin wäre, wenn man auf DXVA nicht verzichten will und der Renderer zwangsweise das Resizing durchführen muss. Aber so ein Resizer in Pixelshader dürfte keine triviale Aufgabe sein.

Edited by CiNcH

Share this post


Link to post
CiNcH

Die MPC PS Resizer findet man übrigens hier.

Share this post


Link to post
nuts

Eben mit Lanczos (ffdshow) und MPC-HC bin ich derzeit auch am testen.

Gleiches Ergebnis: Da wäre noch einiges drin!

Der Verlust des Hardwaredeinterlacing wiegt aber bei LiveTV zu schwer, somit scheidet ffdshow aus.

 

Daher die Idee, dass man vielleicht den Customrenderer auf eine bessere Methode umbiegen kann.

Sollte schon die beste verwendet werden liegt der Ball wieder bei MS oder wir finden einen interessierten der sich mit LSHL auskennt.

Edited by nuts

Share this post


Link to post
CiNcH
Eben mit Lanczos (ffdshow) und MPC-HC bin ich derzeit auch am testen.

Gleiches Ergebnis: Da wäre noch einiges drin!

Der Verlust des Hardwaredeinterlacing wiegt aber bei LiveTV zu schwer, somit scheidet ffdshow aus.

Das ist exakt der Punkt.

 

Sollte schon die beste verwendet werden liegt der Ball wieder bei MS oder wir finden einen interessierten der sich mit LSHL auskennt.

LSHL für die MPC PS Resizer findet man hier. Das '_The_Value_Of_A_Is_Set_Here_' wird im Renderer-Code durch den Float-Wert ersetzt den man auch im UI sieht (0.60, 0.75 oder 1.00).

Edited by CiNcH

Share this post


Link to post

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...