Συνδεθείτε, για να ελέγξετε τα προσωπικά σας μηνύματα
Συνδεθείτε, για να ελέγξετε τα προσωπικά σας μηνύματα
AnimeClipse Αρχική σελίδα » Τεχνική Υποστήριξη

Aspect Ratio
Προβολή προηγούμενου Θέματος :: Προβολή επόμενου Θέματος  
Συγγραφέας Μήνυμα


Ένταξη: 15 Ιούλ 2007
Δημοσιεύσεις: 93


Δημοσίευση Δημοσιεύθηκε: Κυρ Ιαν 20, 2008 4:23 pm
Τίτλος: Aspect Ratio
Απάντηση με παράθεση αυτού του μηνύματος

Έχω διαβάσει κάθε guide και post στο internet που αφορούν το aspect ratio. Δεν έχω καταλάβει ΤΙΠΟΤΑ! Ίσως να είμαι μπουμπούνας, αλλά δεν βγάζω άκρη. Στο θέμα τώρα. Λοιπόν, προσπαθώ να κάνω από dvd pal αναμορφικό 16:9 με aspect ratio 1:77:1, ένα αρχείo mkv με βίντεο x264 χρησιμοποιώντας το staxrip. Κάνει crop τις μαύρες μπάρες και ύστερα από test μου βγάζει κάδρο 1024x480. Του βάζω να κάνει resize σε 720x304, βάζω το τελικό μέγεθος και το aspect ratio τελικά γίνετε 2:36! (Βασικά ό,τι dvd κάνω χρησιμοποιώ 720x304 και βγαίνει πάντα aspect ratio 2:36) Άντε αν το dvd έχει 2:35 εντάξει. Αλλά αν το dvd έχει 1:77:1, 1:87:1, τι κάνω; Δε ξέρω αν σας μπέρδεψα, αλλά θα ήθελα μια βοήθεια για το aspect ratio και τα διάφορα κάδρα για 16:9 ύστερα από resize.
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος


Ένταξη: 04 Μάρ 2006
Δημοσιεύσεις: 2744
Τοποθεσία: Θεσσαλονίκη





















Δημοσίευση Δημοσιεύθηκε: Κυρ Ιαν 20, 2008 5:48 pm
Τίτλος:
Απάντηση με παράθεση αυτού του μηνύματος

Βασικά υπάρχει μεγάλο μπέρδεμα όσον αφορά το aspect ratio. Θα προσπαθήσω να εξηγήσω τις βασικές έννοιες όσο πιο απλά γίνεται :

aspect ratio = frame_width / frame_height

Δεν είναι τίποτα παραπάνω και τίποτα λιγότερο. Απλά αυτή η πράξη. Επειδή όμως υπάρχουν τα καταραμένα black borders, η έννοια αυτή χάνει λίγο το νόημά της. Ας εξηγηθώ. Αν έχουμε ένα frame με διαστάσεις 720x568 που έχει 16:9 flag anamorphic, σημαίνει ότι στην αναπαραγωγή θα γίνει resize το width του έτσι ώστε να ισχύει :

new_width / 568 = 16 / 9 =>
new_width= (16 * 568) /9 = 1010 ~> 1008

Πως προκύπτει το 1008; Προκύπτει επειδή θέλουμε οι διαστάσεις να είναι mod16, δηλαδή να διαιρούνται ακριβώς με το 16. (1008 / 16 = 63 ενώ 1010 / 16 = 63,125).

Αν προσέξεις όμως, 720 / 568 = 1,268 και 1008 / 568 ~= 16 / 9 . ʼρα που κολλάνε τα 1,77 και 1,87 aspect ratio που αναφέρονται στα δισκάκια DVD; Ουσιαστικά είναι τα aspect ratio του true video frame, δηλαδή το aspect ratio που προκύπτει από τις διαστάσεις του ωφέλιμου βίντεο του κάδρου, δηλαδή το κάδρο που προκύπτει μετά το cropping. Είναι λίγο περίεργο όλο αυτό αλλά δυστυχώς έτσι έχουν τα πράματα. Εγώ μπορώ να σου δώσω έναν αλγόριθμο για μετατροπές resize, στο σπίτι έχω και ένα πρόγραμμα που έφτιαξα για τη συγκεκριμένη δουλειά, αλλά στο ιντερνετ καφέ εδώ στην Αλεξανδρούπολη δεν το έχω δυστυχώς.

Αρχικά δεδομένα:
i) original video dimensions (frame_width, frame_height)
ii) crop values (x1, x2, y1, y2)
iii) aspect ratio flag (16/9, 4/3)
iv) desired new width

Υπολογισμοί :

Κώδικας:

1) True_width = original_width - (x1 + x2)

2) (True_width + x1 + x2) / (new_height + y1 + y2) = aspect_ratio_flag =>

=> New_height= ((true_width + x1 + x2) / aspect_ratio_flag) - (y1 + y2)

3) New_aspect_ratio = true_width / new_height

4) desired_width / calc_height = new_aspect_ratio =>

=> calc_height = desired_width / new_aspect_ratio

5) final_calc_height = closest_mod16(calc_height)

6) final_dimensions = desired_width x final_calc_height


Με τους παραπάνω υπολογισμούς βρίσκεις το τελικό height με βάση το επιθυμητό width. Όμως αυτό δεν ισχύει αν θέλεις να κάνεις ένα anamorphic encoding. Ισχύει όμως για όλες τις πηγές, anamorphic ή μη. Αν θέλεις να κάνεις anamorphic encode (μόνο με mkv container γίνεται αυτό απότι θυμάμαι), τότε τα πράματα είναι κάπως πιο απλά, καθώς κάνεις απλά crop, βρίσκεις τα closest mod16 των διαστάσεων που προκύπτουν, και στη συνέχεια δίνεις το aspect ratio στα αντίστοιχα flags του matroska container στον muxer που χρησιμοποιείς. Κάποιοι υπολογισμοί πάλι...

Κώδικας:

1) True_height = original_height - (y1 + y2)

2) (new_width + x1 + x2) / (true_height + y1 + y2) = aspect_ratio_flag =>

=> New_width= (aspect_ratio_flag / (true_height +y1 + y2)) – (x1 + x2)

3) New_aspect_ratio = new_width / true_height

4) calc_width / true_height = new_aspect_ratio =>

=> calc_width = new_aspect_ratio / true_height

5) final_dimensions = calc_width x true_height


Τις παραπάνω διαστάσεις που προκύπτουν, τις βάζεις στα flag του matroska container και δε χρειάζονται να είναι mod16, σε αντίθεση με τις διαστάσεις του frame που θα κάνεις encode.

Ελπίζω να βοήθησα, αν και μάλλον σε μπέρδεψα, αλλά πίστεψέ με, μετά από καιρό σίγουρα θα καταλάβεις τους υπολογισμούς αυτούς! Wink

Υ.Γ.
Ξέχασα να αναφέρω ότι κάνοντας αυτούς τους υπολογισμούς, ουσιαστικά αδιαφορείς για τα περίεργα aspect ratio που αναγράφονται πάνω στα DVD, αφού ξαναυπολογίζεις μόνος σου και μάλιστα με μεγαλύτερη ακρίβεια, αυτά τα aspect ratio!
_________________
Διαβάστε τους Κανόνες του Forum! Τα greeklish απαγορεύονται!
Διαβάστε το Playback FAQ
Feeling... nauseous already? Wait to see my anime list first...

And remember, fansubbing is NOT serious business...
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος Επίσκεψη στην ιστοσελίδα του συγγραφέα Διεύθυνση AIM Yahoo Messenger MSN Messenger


Ένταξη: 04 Μάρ 2006
Δημοσιεύσεις: 2744
Τοποθεσία: Θεσσαλονίκη





















Δημοσίευση Δημοσιεύθηκε: Κυρ Ιαν 27, 2008 12:26 pm
Τίτλος:
Απάντηση με παράθεση αυτού του μηνύματος

Επειδή όλοι αυτοί οι υπολογισμοί που αναφέρω στο παραπάνω ποστ είναι αρκετά πολύπλοκοι και απαιτούν την πλήρη κατανόηση του αντικειμένου, και επειδή το προγραμματάκι που είχα φτιάξει το έχω σπίτι, έφτιαξα ένα καινούριο σε C# στο στρατό και το δίνω εδώ, οπότε όσοι πιστοί μπορείτε να το κατεβάσετε και να το δοκιμάσετε!

http://www.sendspace.com/file/3yy8ca

Όποιες απορίες, ας γίνουν ποστ εδώ για να είναι σε κοινή θέα! Enjoy!

ΕΔΙΤ:
Για να τρέξει το πρόγραμμα, απαιτείται η ύπαρξη του .NET runtime 2.0 το οποίο μπορείτε να βρείτε εδώ :

http://www.filehippo.com/download_dotnet_framework_2/
_________________
Διαβάστε τους Κανόνες του Forum! Τα greeklish απαγορεύονται!
Διαβάστε το Playback FAQ
Feeling... nauseous already? Wait to see my anime list first...

And remember, fansubbing is NOT serious business...
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος Επίσκεψη στην ιστοσελίδα του συγγραφέα Διεύθυνση AIM Yahoo Messenger MSN Messenger


Ένταξη: 15 Ιούλ 2007
Δημοσιεύσεις: 93


Δημοσίευση Δημοσιεύθηκε: Κυρ Ιαν 27, 2008 1:01 pm
Τίτλος:
Απάντηση με παράθεση αυτού του μηνύματος

Θα μπορούσες να δώσεις ένα παράδειγμα για το πρόγραμμα; Π.χ τι βάζουμε στο "crop values x1, x2, y1, y2", "select mode", "desired width" και τα υπόλοιπα;
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος


Ένταξη: 04 Μάρ 2006
Δημοσιεύσεις: 2744
Τοποθεσία: Θεσσαλονίκη





















Δημοσίευση Δημοσιεύθηκε: Κυρ Ιαν 27, 2008 1:10 pm
Τίτλος:
Απάντηση με παράθεση αυτού του μηνύματος

Είναι κάπως δύσκολο να δώσω οδηγίες γραπτώς αλλά θα προσπαθήσω (υπόψιν, υπάρχουν tooltips σε κάθε πεδίο για βοήθεια)

στα crop δίνουμε τις τιμες των πίξελ που θα κοπούν από το αρχικό καρέ βίντεο, όπου :

x1 πίξελ από την αριστερή μεριά του βίντεο
x2 πίξελ από τη δεξιά μεριά του βίντεο
y1 πίξελ από την πάνω μεριά του βίντεο
y2 πίξελ από την κάτω μεριά του βίντεο

στο Select mod δίνουμε το πολλαπλάσιο βάσει του οποίου θα πρέπει να είναι οι διαστάσεις. Αυτό το αφήνουμε στο 90% των περιπτώσεων στο εξ ορισμού 16

στο desired width βάζουμε το επιθυμητό width που θέλουμε να έχει το τελικό αρχείο.

Τα άλλα νομίζω είναι αυτονόητα, αν δεν καταλαβαίνετε, σημαίνει ότι δεν είστε ακόμα έτοιμοι για το πρώτο σας encode!Razz
_________________
Διαβάστε τους Κανόνες του Forum! Τα greeklish απαγορεύονται!
Διαβάστε το Playback FAQ
Feeling... nauseous already? Wait to see my anime list first...

And remember, fansubbing is NOT serious business...
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος Επίσκεψη στην ιστοσελίδα του συγγραφέα Διεύθυνση AIM Yahoo Messenger MSN Messenger


Ένταξη: 15 Μάι 2007
Δημοσιεύσεις: 751
Τοποθεσία: Solefald, Iceland





Δημοσίευση Δημοσιεύθηκε: Δευ Ιαν 28, 2008 11:34 am
Τίτλος:
Απάντηση με παράθεση αυτού του μηνύματος

Arigatou Gpower-sensei! Worthy
Επιστροφή στην κορυφή
Προβολή του προφίλ του συγγραφέα Αποστολή προσωπικού μηνύματος Επίσκεψη στην ιστοσελίδα του συγγραφέα
Προβολή όλων των Δημοσιεύσεων που έγιναν πριν από:   
Δημοσίευση νέου Θέματος     Απάντηση στο Θέμα     AnimeClipse Αρχική σελίδα » Τεχνική Υποστήριξη Όλες οι Ώρες είναι GMT + 2 Ώρες
Σελίδα 1 από 1

 
Μετάβαση στη:   
Δεν μπορείτε να δημοσιεύσετε νέο Θέμα σ' αυτήν την Ενότητα
Δεν μπορείτε να απαντήσετε στα Θέματα αυτής της Ενότητας
Δεν μπορείτε να επεξεργασθείτε τις δημοσιεύσεις σας σ' αυτήν την Ενότητα
Δεν μπορείτε να διαγράψετε τις δημοσιεύσεις σας σ' αυτήν την Ενότητα
Δεν έχετε δικαίωμα ψήφου στα δημοψηφίσματα αυτής της Ενότητας




Powered by phpBB © 2001, 2002 phpBB Group






MKPortal M1.1 Rc1 ©2003-2005 All rights reserved
Page generated in 0.01435 seconds with 5 queries