Προς το περιεχόμενο

DXVA video acceleration: Δουλεύει ή όχι;


Delta²

Προτεινόμενες αναρτήσεις

Δημοσ.

Δεν νομίζω να είναι εύκολη η απάντηση χωρίς να ξέρει κανείς για ποιά κάρτα πρόκειται και ποιό λογισμικό ακριβώς χρησιμοποιείται σε κάθε δεδομένη περίπτωση. Κατ'αρχήν το Pure Video στην NV δεν είναι δωρεάν και υπάρχει τόσο PureVideo όσο και PureVideoHD:

 

 

 

http://www.nvidia.com/page/purevideo_HD.html

http://www.nvidia.com/page/purevideo.html

 

 

 

Στις D3D10 GPU δεν υπάρχει περίπτωση να πρόκειται για παλιό hardware ακόμα κι αν πρόκειται για IGP. Eίναι περισσότερο θέμα λογισμικού (πως ακριβώς έχει γραφτεί μια εφαρμογή αναπαραγωγής και πως μπορεί να υποστηριχθεί για GPU processing από το λογισμικό του κατασκευαστή GPU) παρά οτιδήποτε άλλο. Το καλό με το CUDA είναι ότι το κατεβάζεις μαζί με τους πιο πρόσφατους οδηγούς και είναι δωρεάν. ΄Οσοι θέλουν κάτι σε PureVideo/PureVideoHD κανονικά θα πρέπει να πληρώσουν για την εφαρμογή, εκτός αν ο χρήστης ψάχνει σε διόλου νόμιμα μονοπάτια και ο νοών νοήτω ;)

 

Σε αμφότερες περιπτώσεις αν δεν υπάρχει προσαρμογή εκ μέρους το λογισμικού αναπαραγωγής να υποστηρίξει CUDA, PureVideo, AViVo ή οτιδήποτε άλλο σχετικό ο φόρτος αναγκαστικά θα πάει στον επεξεργαστή.

Στα links που έδωσες ισχυρίζεται ότι το Purevideo HD υποστηρίζεται από 8x00 nvidia gpus, αλλά δυσκολεύομαι να το πιστέψω (ενδεχομένως να μην υποστηρίζονται για παράδειγμα όλα τα βήματα της αλυσίδας που δείχνονται και στην εικόνα που έδωσες), γιατί και σε αυτό το forum κάποιοι με 9x00 είχαν σοβαρά προβλήματα. Τώρα θα μου πεις δεν χρησιμοποιούσαν λογισμικό που να εκμεταλλεύεται το Purevideo HD engine αλλά εντάξει άμα είναι να υπάρχει κάτι στην κάρτα γραφικών που να μην χρησιμοποιείται επειδή το λογισμικό είναι ακριβό η δυσεύρετο ,ή το δίνουμε μόνο με το bundle της high end κάρτας , ε τότε είναι στην ουσία σαν να μην υπάρχει.

 

Να προσθέσω και κάτι άλλο που εντάξει οι πιο πολλοί θα πούν ότι ειναι παρανοικό, αλλά όχι ότι δε μπορεί να γίνει: Όπως οι mainstream GPU είναι στην πλειονότητα τους high end που δεν "τυπώθηκαν" σωστά τα τρανζίστορ/κυκλώματα τους και κάποια shader cores έχουν γίνει disable, γιατί να μην υπάρχουν mainstream GPU που το video engine να έχει γίνει disable (για τον ίδιο λόγο) ?

  • Απαντ. 32
  • Δημ.
  • Τελ. απάντηση
Δημοσ.
Στα links που έδωσες ισχυρίζεται ότι το Purevideo HD υποστηρίζεται από 8x00 nvidia gpus, αλλά δυσκολεύομαι να το πιστέψω (ενδεχομένως να μην υποστηρίζονται για παράδειγμα όλα τα βήματα της αλυσίδας που δείχνονται και στην εικόνα που έδωσες), γιατί και σε αυτό το forum κάποιοι με 9x00 είχαν σοβαρά προβλήματα.

 

Δεν μπορώ να ξέρω ο καθένας με τι λογισμικό (από λειτουργικό, οδηγούς, λογισμικό αναπαραγωγής) χρησιμοποιεί ο καθένας για να σου πω αν δουλεύει (και πόσο μάλλον τι ακριβώς) ή όχι και γιατί.

 

http://www.nvidia.com/object/IO_43029.html

 

Τώρα θα μου πεις δεν χρησιμοποιούσαν λογισμικό που να εκμεταλλεύεται το Purevideo HD engine αλλά εντάξει άμα είναι να υπάρχει κάτι στην κάρτα γραφικών που να μην χρησιμοποιείται επειδή το λογισμικό είναι ακριβό η δυσεύρετο ,ή το δίνουμε μόνο με το bundle της high end κάρτας , ε τότε είναι στην ουσία σαν να μην υπάρχει.

 

Q. Do I need the PureVideo Decoder to play movies with PureVideo?

No. Any compatible third-party software movie player can use the PureVideo technology on the GPU. For Blu-ray and HD DVD playback, you need a PureVideo HD compliant movie player from vendors like CyberLink, Intervideo and Arcsoft.

 

http://www.nvidia.com/object/purevideo_hd_faq.html

 

Δεν θα το πληρώσεις το PowerDVD Ultra (9.0) για παράδειγμα από την άλλη;

 

Να προσθέσω και κάτι άλλο που εντάξει οι πιο πολλοί θα πούν ότι ειναι παρανοικό, αλλά όχι ότι δε μπορεί να γίνει: Όπως οι mainstream GPU είναι στην πλειονότητα τους high end που δεν "τυπώθηκαν" σωστά τα τρανζίστορ/κυκλώματα τους και κάποια shader cores έχουν γίνει disable, γιατί να μην υπάρχουν mainstream GPU που το video engine να έχει γίνει disable (για τον ίδιο λόγο) ?

 

Εξαρτάται βέβαια τι εννοείς με mainstream GPU αλλά αν εννοείς κάτι σαν την 9600 που είναι πραγματική mainstream GPU τότε δεν είναι σε καμία περίπτωση μια 9800 με απενεργοποιημένες μονάδες αλλά ένα chip που φτιάχτηκε από την αρχή για 64SPs.

 

Oτιδήποτε συνδέεται με multimedia θα ήταν το τελευταίο και εντελώς παράλογο να απενεργοποιούσε ένας οποιοσδήποτε κατασκευαστής. Αν δεν έχει ακόμα και μια ενσωματωμένη μονάδα (IGP) τις καλύτερες δυνατές δυνατότητες multimedia τότε για τί ακριβώς θα την πουλήσει; Για τις σχεδόν άχρηστες δυνατότητές της για παιχνίδια ή για επεξεργασία office;

 

Κάτι σε 9400: http://www.nvidia.com/object/product_geforce_9400_mgpu_us.html

Δημοσ.
Δεν είμαι σίγουρος αλλά διαβάζοντας διάφορα μυνήματα σχετικά με το θέμα μου δημιουργήθηκε η εντύπωση ότι κυρίως οι χρήστες με mainstream κάρτες έχουν πρόβλημα με το CPU utilization κατά το video encode/decode (για παράδειγμα 60% cpu utilization πάει σε 20% όταν χρησιμοποιείται cuda, αυτό κατα πάσα πιθανότητα σημαίνει ότι το hardware decode δεν είναι τόσο αποτελεσματικό).

 

Επειδή συνεχίζω να μην καταλαβαίνω ποιά είναι η απορία/ερώτηση/σκεπτικισμός σου σχετικά με το θέμα σε ρωτάω για να ξεκαθαρίσω τι εννοείς στο quoted ποστ σου: Οι χρήστες με 60% utilization εννοείς πως κάνουν χρήση Hardware Acceleration (όχι CUDA)?

Επισκέπτης
Δημοσ.
Επειδή συνεχίζω να μην καταλαβαίνω ποιά είναι η απορία/ερώτηση/σκεπτικισμός σου σχετικά με το θέμα σε ρωτάω για να ξεκαθαρίσω τι εννοείς στο quoted ποστ σου: Οι χρήστες με 60% utilization εννοείς πως κάνουν χρήση Hardware Acceleration (όχι CUDA)?

 

Ναι αυτο εννοωει

Δημοσ.

Αν δεν κάτσει κάποιος να αναφέρει αναλύτικα τι hardware & software χρησιμοποίησε και περισσότερα στοιχεία για το τι ακριβώς συμβαίνει θα συνεχίσουμε να μιλάμε με αόριστες συνισταμένες.

Δημοσ.
Στα links που έδωσες ισχυρίζεται ότι το Purevideo HD υποστηρίζεται από 8x00 nvidia gpus, αλλά δυσκολεύομαι να το πιστέψω (ενδεχομένως να μην υποστηρίζονται για παράδειγμα όλα τα βήματα της αλυσίδας που δείχνονται και στην εικόνα που έδωσες), γιατί και σε αυτό το forum κάποιοι με 9x00 είχαν σοβαρά προβλήματα.

 

Μήπως όσοι είχαν προβλήματα δεν χρησιμοποιούσαν το κατάλληλο software; Πιο πάνω ανέφερα τον MPC-HC. Είναι εντελώς δωρεάν και διαθέτει internal video decoders:

 

post-4351-129062990708_thumb.png

 

που ενεργοποιούνται αυτόματα όταν ανιχνευθεί συνδυασμός GPU+drivers που υποστηρίζει DXVA offloading του video stream που αναπαράγεται τη δεδομένη στιγμή. Έβαλα πιο πάνω και screenshots που δείχνουν κατά το playback πότε έχουν ενεργοποιηθεί και πότε όχι (οπότε γίνεται fallback στην non-DXVA εκδοχή).

 

 

Και για να διευκολύνω λίγο σε αυτό που γράφει ο Ailuros ακριβώς από πάνω: Όποιος θέλει ένα αρκετά απαιτητικό σε επεξεργαστική ισχύ και DXVA-compliant clip για να κάνει τις δικές του δοκιμές και συγκρίσεις CPU utilization (μία με ενεργό και μία με ανενεργό τον H.264-DXVA decoder του MPC-HC), μπορεί να δοκιμάσει με το παρακάτω κλιπάκι που είχα κωδικοποιήσει πριν λίγο καιρό:

 

>http://www.mediafire.com/?sharekey=283d8a80bb3a610891b20cc0d07ba4d2a36a5c528a566b2b

 

Το ιστορικό και το σκεπτικό της δημιουργίας του μέσα στο spoiler που ακολουθεί:

 

 

Καλησπέρα παιδιά. Από την αρχή που παρακολουθώ αυτό το thread' date=' έβρισκα πολύ ενοχλητικό το γεγονός ότι δεν κυκλοφορούν ευρέως στο Διαδίκτυο [b']νόμιμα[/b] downloads από movie clips υψηλών απαιτήσεων κατά το decoding, για να κάνουμε τις μετρήσεις/συγκρίσεις μας. Από τα clips για τα οποία δόθηκαν πιο πάνω links, άλλα είναι σε MOV container, άλλα είναι μόνο 720p, άλλα δεν έχουν κωδικοποιηθεί με CABAC, άλλα έχουν πολύ χαμηλά bitrates και γενικά συνδυασμοί των παραπάνω. Γι' αυτόν το λόγο αποπειράθηκα να φτιάξω μόνος μου μερικά κλιπάκια βασισμένα σε free υλικό, όσο πιο κοντά στα Blu-ray specifications και όσο πιο CPU-intensive γίνεται, για να τα μοιραστώ μαζί σας!

 

 

Για αρχή, σας έχω ένα δείγμα 32sec από την ταινία-animation Elephants Dream. Σύμφωνα με το επίσημο site της ταινίας:

 

Κατέβασα λοιπόν την 1080p AVI εκδοχή της ταινίας (10min53sec - 813MB), επέλεξα το κομμάτι της που μου φάνηκε ότι έχει τις πιο δύσκολες σκηνές και επανακωδικοποίησα με τη βοήθεια του MeGUI το video stream σε x264 - χωρίς κανένα resize εννοείται - με το profile DXVA-HD-HQ. Το profile πειράχθηκε ώστε να ανεβεί το average bitrate στα 30000Kbps. Το audio stream έμεινε στο original AC3, από τη μία γιατί δεν υπάρχει εντελώς δωρεάν toolchain για DTS ή TrueHD encoding και από την άλλη γιατί το AC3 είναι μέσα στα mandatory Blu-ray specifications και συναντάται ακόμη σε αρκετές ταινίες. Περιττό να σας πω ότι κατά το video encoding, ο επεξεργαστής μου σερνόταν κατάχαμα, εκλιπαρόντας για έλεος! :lol: Μιλάμε για ταχύτητες της τάξεως των ~5.2FPS στο πρώτο pass και ~1.1FPS στο δεύτερο!

 

 

Τα δύο streams πολυπλέχθηκαν στο κατεξοχήν Blu-ray container (M2TS) με το πρόγραμμα tsMuxeR. Με το ίδιο πρόγραμμα επίσης μπορείτε να παράγετε BDMV folder structure για κάψιμο σε δισκάκι. Στο spoiler που ακολουθεί βρίσκεται ένα text report του MediaInfo με τα χαρακτηριστικά του M2TS αρχείου:

 

 

>General
ID                        : 1
Complete name             : C:\Temp\ElephantsDreamHDClip1.m2ts
Format                    : BDAV
Format/Info               : BluRay Video
File size                 : 121 MiB
Duration                  : 32s 73ms
Overall bit rate          : 31.6 Mbps
Maximum Overall bit rate  : 35.5 Mbps

Video
ID                        : 4113 (0x1011)
Menu ID                   : 1 (0x1)
Format                    : AVC
Format/Info               : Advanced Video Codec
Format profile            : [email protected]
Format settings, CABAC    : Yes
Format settings, ReFrames : 4 frames
Duration                  : 32s 83ms
Bit rate                  : 29.9 Mbps
Nominal bit rate          : 30.0 Mbps
Width                     : 1 920 pixels
Height                    : 1 080 pixels
Display aspect ratio      : 16/9
Frame rate                : 24.000 fps
Resolution                : 24 bits
Colorimetry               : 4:2:0
Scan type                 : Progressive
Bits/(Pixel*Frame)        : 0.603
Writing library           : x264 core 65 r1046M 71d34b4
Encoding settings         : cabac=1 / ref=4 / deblock=1:-1:-1 / analyse=0x3:0x113 / me=umh / subme=7 / psy_rd=1.0:0.0 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=2 / 8x8dct=1 / cqm=0 / deadzone=21,11 / chroma_qp_offset=-2 / threads=3 / nr=0 / decimate=1 / mbaff=0 / bframes=3 / b_pyramid=0 / b_adapt=2 / b_bias=0 / direct=3 / wpredb=1 / keyint=250 / keyint_min=25 / scenecut=40(pre) / rc=2pass / bitrate=30000 / ratetol=1.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=50000 / vbv_bufsize=50000 / ip_ratio=1.40 / pb_ratio=1.30 / aq=1:1.0
Language                  : English

Audio
ID                        : 4352 (0x1100)
Menu ID                   : 1 (0x1)
Format                    : AC-3
Format/Info               : Audio Coding 3
Duration                  : 32s 73ms
Bit rate mode             : Constant
Bit rate                  : 448 Kbps
Channel(s)                : 6 channels
Channel positions         : Front: L C R, Surround: L R, LFE
Sampling rate             : 48.0 KHz
Language                  : English

 

 

 

Το αρχείο είναι DXVA-compliant και παίζει με acceleration στον MPC-HC, με τους τελευταίους (178.24) GeForce drivers να οδηγούν μία onboard nVIDIA 8300. Απ' ο,τι είδα στα γρήγορα, η ενεργοποίηση DXVA acceleration στον MPC-HC κάνει τεράστια διαφορά, τουλάχιστον στο τωρινό setup μου. Χωρίς acceleration, το αρχείο παίζει με μεγάλο CPU usage και στα πολύ απαιτητικά σημεία (π.χ. 14sec-18sec) με ελαφρό stuttering.

 

 

Λόγω περιορισμού 100MB/file του MediaFire όπου host-άρω τα αρχεία μου, το M2TS έχει σπάσει με 7-Zip σε 2 ZIP περίπου ισομεγέθη (61 και 59MB). Μπορείτε να τα κατεβάσετε από αυτό το link.

 

 

Δημοσ.
Αν δεν κάτσει κάποιος να αναφέρει αναλύτικα τι hardware & software χρησιμοποίησε και περισσότερα στοιχεία για το τι ακριβώς συμβαίνει θα συνεχίσουμε να μιλάμε με αόριστες συνισταμένες.

 

Αυτό. Ο τελικός χρήστης σα μονάδα δεν ήταν ποτέ αξιόπιστη συνισταμένη του τι πάει καλά.

Δημοσ.

όντως μπορεί όλα τα βήματα τις αλυσίδας στο γράφημα να μην υποστηρίζονται πλήρως. οποτε μιλάμε για partial DXVA. και τότε η CPU μπορεί να φτάνει στα κίτρινα (ας πούμε). το έχω δει αυτό σε IGP G31 και IGP 945 με ίδια CPU, το mpc-hc έγραφε "not using DXVA" αλλα εμφανής η διαφορα στη CPU.

δείτε όμως περισσότερα στα παρακάτω links

 

http://nunnally.ahmygoddess.net/watching-h264-videos-using-dxva/

http://www.missingremote.com/index.php?option=com_content&task=view&id=2564&Itemid=230&limit=1&limitstart=1

Δημοσ.
όντως μπορεί όλα τα βήματα τις αλυσίδας στο γράφημα να μην υποστηρίζονται πλήρως. οποτε μιλάμε για partial DXVA. και τότε η CPU μπορεί να φτάνει στα κίτρινα (ας πούμε). το έχω δει αυτό σε IGP G31 και IGP 945 με ίδια CPU, το mpc-hc έγραφε "not using DXVA" αλλα εμφανής η διαφορα στη CPU.

δείτε όμως περισσότερα στα παρακάτω links

 

http://nunnally.ahmygoddess.net/watching-h264-videos-using-dxva/

http://www.missingremote.com/index.php?option=com_content&task=view&id=2564&Itemid=230&limit=1&limitstart=1

 

Δεν το βλέπω αυτό στα links ίσως μου διέφυγε, κάνε απ' ευθείας παράθεση pls

Δημοσ.
Αυτό. Ο τελικός χρήστης σα μονάδα δεν ήταν ποτέ αξιόπιστη συνισταμένη του τι πάει καλά.

 

Tο ανέφερα κάτω από το σκεπτικό αν μπορεί να βοηθήσει ένας εξ υμών, να σηκώσει κάποιος που τον ενδιαφέρει το χεράκι του και να μας πει τι ακριβώς έχει κάνει και με τι.

 

Τώρα το αν το ουσιαστικό πρόβλημα βρίσκεται μεταξύ πληκτρολογίου και καρέκλας ούτε αυτό μπορώ να το ξέρω με αοριστίες ;)

Δημοσ.
Tο ανέφερα κάτω από το σκεπτικό αν μπορεί να βοηθήσει ένας εξ υμών, να σηκώσει κάποιος που τον ενδιαφέρει το χεράκι του και να μας πει τι ακριβώς έχει κάνει και με τι.

 

Σε bitstream decoding (MPC-HC) έχω ~7-8% Μ.Ο. cpu utilization σε Nvidia 8400GS, 9600GT, ATI 4670. Mε CUDA (CoreAVC) ~20% σε 8400gs και 9600GT. Αυτό βοηθάει?

Δημοσ.
Σε bitstream decoding (MPC-HC) έχω ~7-8% Μ.Ο. cpu utilization σε Nvidia 8400GS, 9600GT, ATI 4670. Mε CUDA (CoreAVC) ~20% σε 8400gs και 9600GT. Αυτό βοηθάει?

 

Μα δεν μίλησα καν για σένα αλλά για όλους εκείνους που αναφέρει ο Delta2 ότι έχουν πρόβλημα.

Δημοσ.
Μα δεν μίλησα καν για σένα αλλά για όλους εκείνους που αναφέρει ο Delta2 ότι έχουν πρόβλημα.

 

Το ξέρω - κι εγώ στον Delta2 απαντώ αλλά πλαγίως :-)

Δημοσ.

Χμ, καλά ο καθένας βγάζει τα δικά του συμπεράσματα από μια συζήτηση. Δύσκολο να βγάλω κάτι έγκυρο εδω πέρα γιατί τελικοί χρήστες αναφέρουν ότι έχουν τελείως διαφορετικά αποτελέσματα με παρόμοιο hardware setup.

Τέλος πάντων, πιστεύω ότι σε κάποιες κάρτες γραφικών το DXVA είναι ψιλοαπάτη-υποστηρίζει δηλαδή μόνο συγκεκριμένα φορμάτ βίντεο.

 

Όχι δεν έχω 100% τεκμηρίωση σε αυτό που συμπέρανα αλλά θυμάμαι πολλά πράγματα από το παρελθόν που αν και οι κατασκευαστές έλεγαν ότι υποστηρίζονταν στο hardware, τελικά αποδυκνειόταν το αντίθετο. Για παράδειγμα θυμάμαι που έλεγε ότι το TNT2 Ultra υποστήριζε anisotropic filtering και bumpmapping. Απλώς ψέμμα (θυμάμαι δε όταν προσπαθούσα να ενεργοποιήσω το aniso με διάφορα tweaks, έπαιρνα φοβερά artifacts). Η απάτη και το ψέμμα είναι στοιχείο αυτού του κόσμου , σε τελική ανάλυση χωρίς κομπίνα και απάτη θα είμασταν ένα νηπιαγωγείο, ακόμα και εκεί τα μικρά κάνουν ζαβολιές έτσι δεν είναι (λολ).

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...