H.264 GPU Videobeschleunigung Links (auch kostenlose Tools)
Letzte Antwort: in Komplettsysteme, Barebones & Co.
Ich hab ein paar nette, aktuelle Links zum Thema GPU Videobeschleunigung gefunden. Die möchte ich Euch nicht vorenthalten.
Zum einen eine Übersicht, welche GPU eigentlich was beschleunigen kann:
http://www.missingremote.com/index.php?option=com_conte...
Hier gibt es beispielsweise filigrane Unterschiede, ob in einem Board+GPU ein Athlon64 oder ein Phenom steckt (!)
Zum anderen hat das kostenlose MPC-HT eine integrierte DXVA Beschleunigung für H.264:
http://ranpha.wordpress.com/page-1/
Ich kannte bisher nur die kommerziellen Tools von Cyberlink
http://www.cyberlink.com/multi/products/main_1_ENU.html
http://www.cyberlink.com/multi/cyberstore/order_77_ENU....
sowie ArcSoft
http://www.arcsoft.com/products/totalmediatheatre/
EDIT: Im Gegensatz zu Cyberlink und Arcsoft funktioniert die H.264 Beschleunigung von MPC-HT NUR bei voller H.264 Pipeline. Also bei ATI mit UVD ab HD2400, HD2600, aber NICHT HD2900, jedoch wieder HD3x00, HD4x00. Bei GeForce ab 8x00:
http://forum.doom9.org/showthread.php?p=1173147#post117...
Wenn's da noch mehr gibt, würde mich das interessieren. Denn MPC-HT ist kein DirectShow Filter - ist wohl vom FFMpeg abgeleitet und die entsprechenden Funktionen via DXVA (wohl 1.0) auf GPU ausgelagert. FFDShhow (auch von FFMpeg abgeleitet) hat soweit mir bekannt keine DXVA 1.0/2.0 Beschleunigung.
Last but not least: Wenn's beim H.264 abspielen via GPU hapert, dann liegt das möglicherweise auch am Material. Manche Schlaumeier haben mit Level 5.1 kodiert und der Cyberlink beispielsweise will wohl Level 4.1. Man kann in dem File aber notfalls direkt im File einfach die Kennung umstellen. Das genügt:
http://www.avsforum.com/avs-vb/showthread.php?t=972503
Zum einen eine Übersicht, welche GPU eigentlich was beschleunigen kann:
http://www.missingremote.com/index.php?option=com_conte...
Hier gibt es beispielsweise filigrane Unterschiede, ob in einem Board+GPU ein Athlon64 oder ein Phenom steckt (!)
Zum anderen hat das kostenlose MPC-HT eine integrierte DXVA Beschleunigung für H.264:
http://ranpha.wordpress.com/page-1/
Ich kannte bisher nur die kommerziellen Tools von Cyberlink
http://www.cyberlink.com/multi/products/main_1_ENU.html
http://www.cyberlink.com/multi/cyberstore/order_77_ENU....
sowie ArcSoft
http://www.arcsoft.com/products/totalmediatheatre/
EDIT: Im Gegensatz zu Cyberlink und Arcsoft funktioniert die H.264 Beschleunigung von MPC-HT NUR bei voller H.264 Pipeline. Also bei ATI mit UVD ab HD2400, HD2600, aber NICHT HD2900, jedoch wieder HD3x00, HD4x00. Bei GeForce ab 8x00:
http://forum.doom9.org/showthread.php?p=1173147#post117...
Wenn's da noch mehr gibt, würde mich das interessieren. Denn MPC-HT ist kein DirectShow Filter - ist wohl vom FFMpeg abgeleitet und die entsprechenden Funktionen via DXVA (wohl 1.0) auf GPU ausgelagert. FFDShhow (auch von FFMpeg abgeleitet) hat soweit mir bekannt keine DXVA 1.0/2.0 Beschleunigung.
Last but not least: Wenn's beim H.264 abspielen via GPU hapert, dann liegt das möglicherweise auch am Material. Manche Schlaumeier haben mit Level 5.1 kodiert und der Cyberlink beispielsweise will wohl Level 4.1. Man kann in dem File aber notfalls direkt im File einfach die Kennung umstellen. Das genügt:
http://www.avsforum.com/avs-vb/showthread.php?t=972503
Werbung stört? Dann Mitgliedskonto eröffnen
interessanter thread.
auch ein paar infos von mir:
http://www.avsforum.com/avs-vb/showpost.php?p=11659897&...
hier gibt es reg tweaks für verschiedene ati Karten und das tool dxva checker.
im übrigen:
dxva 1.0 läuft über overlay und die vmr renderer ist für die hardware decodierung unter win xp
dxva 2.0 ist über den evr realsisiert und eben für vista! unter vista ist jede hardware beschleunigung mit anderen renderern so ohne weiteres nicht möglich (imho benutzt power dvd auch da eine art overlay - aber nichts genaues weiss man nicht
)
die möglichkeit ein advanced hd deinterlacing durchzuführen ist ein schwieriges thema.
der dxva checker zeigt bei meiner hd 2600pro z.b. an, dass nur bei sd quellen ein va deinterlacing möglich ist!
auch beim 780G chipsatz soll das ganze trotz phenom nicht 100% funktionieren.
wäre aber interessant dazu noch ein paar meinungen zu hören!
so ganz einfach ist das ja auch nicht zu sehen, da beispielweise bei filmen ein einfaches weave deinterlacing schon zum optimalen ergebnis führen kann.
auch ein paar infos von mir:
http://www.avsforum.com/avs-vb/showpost.php?p=11659897&...
hier gibt es reg tweaks für verschiedene ati Karten und das tool dxva checker.
im übrigen:
dxva 1.0 läuft über overlay und die vmr renderer ist für die hardware decodierung unter win xp
dxva 2.0 ist über den evr realsisiert und eben für vista! unter vista ist jede hardware beschleunigung mit anderen renderern so ohne weiteres nicht möglich (imho benutzt power dvd auch da eine art overlay - aber nichts genaues weiss man nicht
) die möglichkeit ein advanced hd deinterlacing durchzuführen ist ein schwieriges thema.
der dxva checker zeigt bei meiner hd 2600pro z.b. an, dass nur bei sd quellen ein va deinterlacing möglich ist!
auch beim 780G chipsatz soll das ganze trotz phenom nicht 100% funktionieren.
wäre aber interessant dazu noch ein paar meinungen zu hören!
so ganz einfach ist das ja auch nicht zu sehen, da beispielweise bei filmen ein einfaches weave deinterlacing schon zum optimalen ergebnis führen kann.
nuts sagte:
im übrigen:
dxva 1.0 läuft über overlay und die vmr renderer ist für die hardware decodierung unter win xp
dxva 2.0 ist über den evr realsisiert und eben für vista! unter vista ist jede hardware beschleunigung mit anderen renderern so ohne weiteres nicht möglich (imho benutzt power dvd auch da eine art overlay - aber nichts genaues weiss man nicht
) Mir gefällt die Sprechweise nicht, wie Du das schreibst.
Video Dekodierung kann man als eine Pipeline mit verschiedenen Dekodierungsstufen verstehen. Wenn man's aufmalt kommen noch Feedbacks dazu, da B-Frames auf I/P Frames referenzieren. Das ändert das Problem aber nicht grundsätzlich, so dass man die Vorgänge ruhig an einer linearen Pipeline erläutern kann.
DXVA ist eine API zur (GPU-)Hardwarebeschleunigten Dekodierung. Diese API kann ein Decoder Filter verwenden, um einige Operationen iDCT, MoComp, PostProcessing zu beschleunigen. Man kann sich vorstellen, das in jeder Pipeline Stufe, nun entweder ein CPU-Software Fallback vom Decoder ausgeführt wird oder die Streamdaten in Pakete unterteilt, in ein definiertes Format gebracht und der GPU gesendet werden.
Der Video Renderer ist die letzte Stufe dieser Pipeline und erledigt nur noch Farbraumkonvertierung, Skalierung, ggf. Deinterlacing.
Genaugenommen hat DXVA nichts mit den Renderern zu tun. Die teilen keinen Code und insbesondere ist DXVA nicht über einen Renderer implementiert. Es gibt jedoch einige Einschränkungen, die allein aus der Tatsache resultieren wie Microsoft DXVA implementiert hat:
1. DXVA benötigt unter XP zwingend einen der Renderer Overlay Mixer, VMR-7, VMR-9. Hintergrund ist, dass die API für DXVA nur über den Renderer aus Programmiersicht zugänglich ist.
2. DXVA 2.0 gibt's nicht unter XP (so wie's DirectX 10 nicht für XP gibt - technisch wär' das natürlich möglich)
3. Vista kann DXVA auch ganz ohne Renderer betreiben. Das ist anders als XP. Man muss auf die API nicht "hintenrum" über einen Renderer zugreifen.
4. Wenn man DXVA 2.0 an einen Renderer koppelt so muss dies unter Vista der EVR Renderer sein.
Okay, brauch' aber nicht länger mit so Details langweilen.
nuts sagte:
die möglichkeit ein advanced hd deinterlacing durchzuführen ist ein schwieriges thema.
[...]
so ganz einfach ist das ja auch nicht so sehen, da beispielweise bei filmen ein einfaches weave deinterlacing schon zum optimalen ergebnis führen kann.
Technisch schon einfach: Die vorderen Stufen wissen, weil's im Bitstrom kodiert ist, ob ein Weave oder Bob Deinterlacing gefordert ist. Und das teilen sie dem Renderer mit. Je nach Programm kann man das auch manuell einstellen (z.B. in MPC-HT).
Ich bin aber verblüfft, dass so manche Treiber das nicht können. Deinterlacining in der GPU ist super simpel zu implementieren. Je nachdem wie man's macht kostet das noch nichtmal Takte in der GPU. Hier braucht man nur Adressregister zum Beginn jeder Zeile zu tauschen.
auf die punkte 1. und 4. wollte ich hinaus (die relevanz von punkt 3. ist mir auch nicht klar).
die deinterlaicng geschichte verstehe ich jetzt wieder nicht (ist aber ja auch kein deinterlacing thread).
bob deinterlacing wird eigentlich nie "gefordert".
am besten ists ich gebe selbst im treiber vor was gemacht werden soll.
die untechnische, praktische erfahrung der letzten chip generationen hat gezeigt, dass für das doch aufwendige adaptive (in welcher form auch immer) deinterlacing von 1080i quellen, eine gewisse rechenleistung (+speicherbandbreite?) nötig ist.
hd 3650, hd 3850er und hd 4850 sind wohl noch am unproblematischsten!
die deinterlaicng geschichte verstehe ich jetzt wieder nicht (ist aber ja auch kein deinterlacing thread).
bob deinterlacing wird eigentlich nie "gefordert".
am besten ists ich gebe selbst im treiber vor was gemacht werden soll.
die untechnische, praktische erfahrung der letzten chip generationen hat gezeigt, dass für das doch aufwendige adaptive (in welcher form auch immer) deinterlacing von 1080i quellen, eine gewisse rechenleistung (+speicherbandbreite?) nötig ist.
hd 3650, hd 3850er und hd 4850 sind wohl noch am unproblematischsten!
nuts sagte:
(die relevanz von punkt 3. ist mir auch nicht klar).Zumindest theoretisch kann man damit ganz nett Transcoden. Also BluRay runterrechnen. Auf der GPU decoden und dann x264 oder gleich weiter auf der GPU mit http://www.badaboomit.com/ encoden. Ist aber im Moment eher noch theoretischer Natur - gibt glaub' ich noch kaum eine Anwendung, die das so macht. Möglicherweise geht's aber mit Avisynth und DirectShowSource() schon. Hab' nicht probiert, wenn man dort versucht einen hardwarebeschleunigten Filter zu verwenden.
nuts sagte:
die deinterlaicng geschichte verstehe ich jetzt wieder nicht (ist aber ja auch kein deinterlacing thread). bob deinterlacing wird eigentlich nie "gefordert". am besten ists ich gebe selbst im treiber vor was gemacht werden soll.Ideal wäre man müsste sich um soetwas überhaupt nicht kümmern und jeder Player würde selbst das richtige machen. Was das richtige ist, hängt ab von dem Quellmaterial, den Fähigkeiten der Grafikkarte und vielleicht sogar davon ob ein Gerät auf Akku läuft. Klappt aber irgendwie nicht richtig.
Wenn man dem Player etwas vorgeben muss, dann ist das nur die zweitbeste Lösung. Aber auch mit der zweitbesten Lösung kann ich leben. Allerdings muss man im Moment trotzdem noch sehr viel Zusatzwissen haben, um ein gutes Ergebnis zu bekommen.
nuts sagte:
die untechnische, praktische erfahrung der letzten chip generationen hat gezeigt, dass für das doch aufwendige adaptive (in welcher form auch immer) deinterlacing von 1080i quellen, eine gewisse rechenleistung (+speicherbandbreite?) nötig ist. hd 3650, hd 3850er und hd 4850 sind wohl noch am unproblematischsten!Was meintest du hier mit adaptiv? Adaptives Deinterlacing:
http://www.100fps.com/
Oder war damit gemeint, dass sich der Player auf das richtige Deinterlacing automatisch adaptiert?
ich meine z.b. ein bewegungs adaptives deinterlacing für video quellen.
dabei werden aus mindestens 3 besser jedoch aus 4 oder 5 fields ein frame gebildet.
eben an die bewegung angepasst (adaptiert).
eigentlich bräuchte man diesen deinterlacing typ und einen für film quellen, der die fields eben nicht auf bewegung sondern auf unregelmäßige kadenezen (und sicherlich noch ein paar andere feinheiten) prüft und sich dementsprechend anpasst!
am besten wäre es natürlich wenn man sich darum überhaupt nicht kümmern müsste
aber zwischen 2 hochwertigen methoden für video und film zu wählen könnte ich noch verkraften
stell mir das halt auch schwierig vor bei normalem sdtv automatisch zwischen video und film zu unterscheiden.
genau diese hochwertigen methoden bleiben wohl den kleineren grakachips zumindest bei 1080i verwehrt.
ob das jetzt reine treiber probleme sind oder ob es an der rechenleistung/speicherbandbreite liegt? gute frage .. ich hoffe es sind die treiber und befürchte es ist doch die rechenleistung/speicherbandbreite.
wenn ich (hd 2600) zum beispiel im ati ccc automatisches deinterlacing auswähle springt der slider bei einer 1080i quelle sofort auf bob um.
obwohl im power dvd decoder fest vector adaptives deinterlaicng ausgewählt ist.
wie sieht denn deine konfig. aus? alles rein über software (decoder ohne dxva + avisynth) und viel CPU power?
dabei werden aus mindestens 3 besser jedoch aus 4 oder 5 fields ein frame gebildet.
eben an die bewegung angepasst (adaptiert).
eigentlich bräuchte man diesen deinterlacing typ und einen für film quellen, der die fields eben nicht auf bewegung sondern auf unregelmäßige kadenezen (und sicherlich noch ein paar andere feinheiten) prüft und sich dementsprechend anpasst!
am besten wäre es natürlich wenn man sich darum überhaupt nicht kümmern müsste
aber zwischen 2 hochwertigen methoden für video und film zu wählen könnte ich noch verkraften
stell mir das halt auch schwierig vor bei normalem sdtv automatisch zwischen video und film zu unterscheiden.
genau diese hochwertigen methoden bleiben wohl den kleineren grakachips zumindest bei 1080i verwehrt.
ob das jetzt reine treiber probleme sind oder ob es an der rechenleistung/speicherbandbreite liegt? gute frage .. ich hoffe es sind die treiber und befürchte es ist doch die rechenleistung/speicherbandbreite.
wenn ich (hd 2600) zum beispiel im ati ccc automatisches deinterlacing auswähle springt der slider bei einer 1080i quelle sofort auf bob um.
obwohl im power dvd decoder fest vector adaptives deinterlaicng ausgewählt ist.
wie sieht denn deine konfig. aus? alles rein über software (decoder ohne dxva + avisynth) und viel CPU power?
Hi Hallo,
ich hoffe es kann mir hier von euch jemand weiterhelfen.
Und zwar haben wir hier einen noch etwas älteren Rechner stehen, der auf einem Plasma in einem Lokal entsprechenden WerbeContent liefert. Vor kurzem ist der Plasma eingegangen und jetzt hängt da ein
neuer FullHD LCD.
Der Rechner hat eine Athlon 3000+ CPU, 1.5GB RAM, Win XP SP3 und seit letzter Woche eine HD3650 512MB AGP Grafikkarte. Die alte Grafikkarte schaffte 1920x1080 nicht wirklich gut.
Ok, nun ist es so, das ich hier gerne die Hardwarebeschleunigung der Grafikkarte verwenden/aktivieren möchte. Es ist allerdings so, das die spezielle Software welche die Anzeige auf dem Plasma/LCD generiert für die Videodarstellung die Routinen den Windows Media Players verwendet. Also alles was man im WMP abspielen kann, das kann die Software auch darstellen.
Nun habe ich hier eine 11GB Aquarium Datei im m2ts Format (H.264/AVC codiert). Und diese soll mit der Hardwarebeschleunigung der Grafikkarte dargestellt werden, da dies ein Athlon 3000+ ohnehin nie schaffen würde.
Mei eigentliches Problem ist, das es im Netz so viele verschiedene Artikel und Meldungen gibt das ich mich einfach nicht mehr auskenne.
Fakt ist, das ich irgendeinen Codec brauche um H.264 Files überhaupt abspielen zu können, der von Cyberlink kann dann (was ich gelesen habe) eben auch die Hardwarebeschleunigung verwenden.
Was aber wichtig ist, es muß quasi dann mit dem einfachen Windows Media Player funktionieren, kein externen Abspielprogramm, da die spezielle AnzeigeSoftware wie gesagt auf die Routinen vom WMP aufsetzt.
Jemand von euch einen Tipp oder eine Erklärung wie ich das am besten zum Laufen bringe?
Möchte jetzt ungern um 35,- den Cyberlink Codec kaufen wenns dann eh nicht funktioniert aus welchen Gründen auch immer.
Vielen Dank.
Ciao
Martin
ich hoffe es kann mir hier von euch jemand weiterhelfen.
Und zwar haben wir hier einen noch etwas älteren Rechner stehen, der auf einem Plasma in einem Lokal entsprechenden WerbeContent liefert. Vor kurzem ist der Plasma eingegangen und jetzt hängt da ein
neuer FullHD LCD.
Der Rechner hat eine Athlon 3000+ CPU, 1.5GB RAM, Win XP SP3 und seit letzter Woche eine HD3650 512MB AGP Grafikkarte. Die alte Grafikkarte schaffte 1920x1080 nicht wirklich gut.
Ok, nun ist es so, das ich hier gerne die Hardwarebeschleunigung der Grafikkarte verwenden/aktivieren möchte. Es ist allerdings so, das die spezielle Software welche die Anzeige auf dem Plasma/LCD generiert für die Videodarstellung die Routinen den Windows Media Players verwendet. Also alles was man im WMP abspielen kann, das kann die Software auch darstellen.
Nun habe ich hier eine 11GB Aquarium Datei im m2ts Format (H.264/AVC codiert). Und diese soll mit der Hardwarebeschleunigung der Grafikkarte dargestellt werden, da dies ein Athlon 3000+ ohnehin nie schaffen würde.
Mei eigentliches Problem ist, das es im Netz so viele verschiedene Artikel und Meldungen gibt das ich mich einfach nicht mehr auskenne.
Fakt ist, das ich irgendeinen Codec brauche um H.264 Files überhaupt abspielen zu können, der von Cyberlink kann dann (was ich gelesen habe) eben auch die Hardwarebeschleunigung verwenden.
Was aber wichtig ist, es muß quasi dann mit dem einfachen Windows Media Player funktionieren, kein externen Abspielprogramm, da die spezielle AnzeigeSoftware wie gesagt auf die Routinen vom WMP aufsetzt.
Jemand von euch einen Tipp oder eine Erklärung wie ich das am besten zum Laufen bringe?
Möchte jetzt ungern um 35,- den Cyberlink Codec kaufen wenns dann eh nicht funktioniert aus welchen Gründen auch immer.
Vielen Dank.
Ciao
Martin
machtl sagte:
dass die spezielle Software welche die Anzeige auf dem Plasma/LCD generiert für die Videodarstellung die Routinen den Windows Media Players verwendet. Also alles was man im WMP abspielen kann, das kann die Software auch darstellen.machtl sagte:
Nun habe ich hier eine 11GB Aquarium Datei im m2ts Format (H.264/AVC codiert). Und diese soll mit der Hardwarebeschleunigung der Grafikkarte dargestellt werden, da dies ein Athlon 3000+ ohnehin nie schaffen würde.http://haali.cs.msu.ru/mkv/
sowie H.264/MPEG4-AVC. Letzterer soll dann die GPU-Beschleunigung nutzen. Hier gibt's (noch) nichts kostenloses. Entweder Cyberlink PowerDVD, der bringt einen entsprechenden GPU Filter mit. Ebenso vermutlich Corel WinDVD 9 sowie ArcSoft TotalMedia Theatre. Bei letzteren beiden bin ich mir nicht 100% sicher - hab's nicht getestet.
Ob deine GPU überhaupt das Ding abspielt kannst mit den DXVA Funktionen vom MPC-HC (Media Player Classic Home Cinema) überprüfen. Die Links dazu findest Du hier im Thread. Wenn es damit ruckelfrei u. ohne Artefakte abspielt ist anzunehmen, dass es auch der CyberLink PowerDVD Codec tut.
machtl sagte:
Jemand von euch einen Tipp oder eine Erklärung wie ich das am besten zum Laufen bringeDie DXVA MPEG-2 Direct Show Filter funktionieren zuverlässiger als das ATI Zeugs auf AGP Bus. Aber probier's aus. Wenn Dir der Ton fehlt, installier' folgendes:
http://ac3filter.net/projects/ac3filter
Werbung stört? Dann Mitgliedskonto eröffnen