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

MPC-HC DirectX HLSL shaders για 3d movies


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

Δημοσ.

Ενδιαφέρεται κανείς με εμπειρία σε DirectX HLSL shaders να επεκτείνει κάνα-δυο υπάρχοντες shaders ώστε να μετατρέπουν stereoscopic (h)sbs/(h)ou 3d movies σε anaglyph-debois red-cyan?

 

Έχω βρει για παράδειγμα τους παρακάτω prototype HLSL shaders για μετατροπή από hsbs 3d σε anaglyph red-cyan. Ο 1ος είναι τελείως straight-forward, ο 2ος χρησιμοποιεί lanczos2 (παρεμπιπτόντως, παρόλο που στα σχόλια λένε πως θέλουν full-screen input, στην πράξη θέλουν half-width input)...

 

 

  Εμφάνιση κρυμμένου περιεχομένου

 

Τους έχω δοκιμάσει με Media Player Classic Home Cinema (Enhanced Video Renderer - Custom Presenter) και λειτουργούν. Δεν τους έχω γράψει εγώ, τους έχω πάρει από το φορουμ του mpc-hc στο doom9.org. Το ιδανικό θα ήταν να χρησιμοποιηθεί ο dubois αλγόριθμος.

 

Ακόμα καλύτερα να υπάρχει ένας shader για κάθε anaglyph μορφή. Π.χ. υπάρχουν 4 μορφές red-cyan anaglyph: gray, half-colored, full-colored & dubois. Αν μιλάμε για πηγαία ταινία side-by-side 3d (που είναι και η πιο διαδεδομένη), τότε για τις 4 προαναφερθείσες anaglyph red-cyan μορφές για το output θα έχουμε συνολικά 8 shaders: 4 για fullscreen SBS πηγή και 4 για half-width SBS πηγή (HSBS). Και αν θέλουμε να το ψειρίσουμε ακόμα περισσότερο, τους διπλασιάζουμε σε πλήθος, ώστε ο καθένας τους να έχει και εκδοχή με swapped left/right εικόνες σε κάθε frame.

 

Όλα αυτά υποστηρίζονται ήδη από άλλους players (π.χ. potplayer, mpv, bino3d) αλλά όχι στον mpc-hc. Το screenshot που ακολουθεί σε spoiler δείχνει οπτικά αυτά που γράφω στην προηγούμενη παράγραφο (τα έχω μαρκάρει με πράσινο χρώμα):

 

  Εμφάνιση κρυμμένου περιεχομένου

 

Στον MPC-HC δεν υπάρχει εγγενής υποστήριξη (ή δεν την έχω βρει) οπότε η λύση είναι είτε με shaders, είτε με avisynth scripts, αλλά το avisynth serving τρώει πολύ cpu συγκριτικά με τους shaders (κι έχει και μανούρα να το συσχετίσεις με τον mpc-hc). Τους shaders απλά τους βάζεις σε έναν φάκελο (υπάρχει ήδη στο installation folder του mpc-hc, με διάφορους shaders), μετά φτιάχνεις συσχετίσεις μέσα από τον mpc-hc (Options->Playback->Shadders) και τέλος τους διαλέγεις on-the-fly την ώρα που παίζει η ταινία. Ακολουθεί σχετικό screenshot σε spoiler)...

 

  Εμφάνιση κρυμμένου περιεχομένου

 

Η αλήθεια είναι πως όλα αυτά τα κάνει κανείς μονάχα αν έχει χρόνο & διάθεση, και είναι fun του mpc-hc και θέλει να τον χρησιμοποιεί ως default player σε όσο το δυνατόν περισσότερες περιπτώσεις. Πάντως 4 shaders για (h)sbs -> redcyan & (h)sbs -> redcyan dubois θα κάλυπταν πολύ μεγάλη γκάμα σύγχρονων 3d ταινιών για όσους δεν έχουν 3d monitors και δεν έχουν πρόβλημα να δώσουν 3 ευρώ για ένα ζευγάρι red-cyan γυαλιών. Χώρια ότι η δημιουργία shaders και για (h)Top/Bottom πηγές θα ήταν trivial μετά. Ελπίζω να βρεθεί κάποιος με όρεξη, χρόνο και γνώσεις να φτιάξει έστω ένα redcyan dubois (γκουχ-γκουχ, πάπι ακούει; :P)

 

PS. Παρεμπιπτόντως, όσοι έχουν nvidia κάρτες, ενεργοποιώντας το 3d vision στους drivers μπορούν να παίξουν πολύ μεγάλη γκάμα παιχνιδιών σε anaglyph 3d. Το anaglyph 3d έχει μειονεκτήματα (κυρίως η απαλοιφή των χρωμάτων των φακών από την ταινία) αλλά είναι κυριολεκτικά τσάμπα για το wow-effect που προσφέρει.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...