Το αρχείο δεν είναι χαλασμένο, διαβάστηκε λάθος
Στο αρχείο υποτίτλων αποθηκεύονται bytes. Για να γίνουν τα bytes χαρακτήρες, πρέπει να ξέρουμε με ποια κωδικοποίηση γράφτηκαν — αν αυτή η επιλογή πάει στραβά, το αποτέλεσμα είναι χαλασμένο κείμενο. Από το αρχείο δεν λείπει ούτε ένα byte: διάβασμα με άλλη κωδικοποίηση και οι χαρακτήρες επιστρέφουν.
Άρα το χαλασμένο κείμενο έχει δύο δουλειές: να αναγνωριστεί με ποια κωδικοποίηση γράφτηκε και να αποθηκευτεί σε κωδικοποίηση που αναγνωρίζει ο player. Η πρώτη γίνεται με δοκιμαστικό διάβασμα και βαθμολογία, η δεύτερη με αποθήκευση. Λύνουν διαφορετικό πρόβλημα.
Πέντε μορφές, πέντε αιτίες
Το χαλασμένο κείμενο δεν προκύπτει τυχαία — η μορφή του φανερώνει απευθείας την αιτία:
- Γράμματα με τόνους σε σειρές (`ä½ å¥½`): τα κινέζικα του UTF-8 διαβάστηκαν ως μονοψήφια κωδικοποίηση — στο UTF-8 τα κινέζικα είναι τρία bytes ανά χαρακτήρα, οπότε το μονοψήφιο διάβασμα παίρνει κάθε byte σαν ξεχωριστό γράμμα
- Κινεζικοί χαρακτήρες σε σειρές χωρίς ούτε έναν συνηθισμένο (`浣犲ソ`): το UTF-8 διαβάστηκε ως GBK — τα bytes ξαναζευγαρώθηκαν ανά δύο και βγήκαν σπάνιοι χαρακτήρες
- Σύμβολα νομισμάτων και μαθηματικά σύμβολα: τα bytes έπεσαν στην περιοχή συμβόλων, συνηθισμένο όταν το αρχείο διαβάζεται ως Mac Roman ή Latin-1
- Χαρακτήρες ελέγχου μέσα στο κείμενο: τα bytes έπεσαν στην αόρατη περιοχή ελέγχου και εμφανίζονται ως κενά ή τετράγωνα
- Τετράγωνο ερωτηματικό `�`: αυτός είναι χαρακτήρας αντικατάστασης, όχι χαλασμένο κείμενο — σημαίνει ότι εδώ υπήρχε ένας χαρακτήρας που χάθηκε ήδη στο διάβασμα

Γιατί ο χαρακτήρας αντικατάστασης δεν διορθώνεται
Ο χαρακτήρας αντικατάστασης είναι η κρίσιμη γραμμή. Όταν εμφανίζεται το `�`, τα bytes χάθηκαν σε κάποιο προηγούμενο βήμα (συνήθως ένα πρόγραμμα το διάβασε και το ξανάσωσε), και για το κομμάτι που χάθηκε δεν υπάρχει καμία καταγραφή. Τότε η αναδρομική επαγωγή δεν έχει βάση — κανείς δεν το φέρνει πίσω.
Γι' αυτό η σελίδα επιδιόρθωσης χειρίζεται δύο περιπτώσεις διαφορετικά: όταν στέλνετε αρχείο τα πρωτότυπα bytes υπάρχουν και μπορούν να δοκιμαστούν όλες οι κωδικοποιήσεις· αν στο επικολλημένο περιεχόμενο υπάρχει ήδη χαρακτήρας αντικατάστασης, λέγεται καθαρά ότι δεν διορθώνεται και ζητείται το πρωτότυπο αρχείο.
Υπάρχει και η αντίστροφη περίπτωση: το περιεχόμενο διαβάζεται απολύτως κανονικά, αλλά στον player φαίνεται ακόμη χαλασμένο. Δεν φταίει το αρχείο, αλλά το ότι ο player διάλεξε λάθος κωδικοποίηση. Η αλλαγή του αρχείου δεν βοηθά — αποθηκεύστε αντίγραφο ως UTF-8 με BOM ή GBK και δώστε το.

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

Μόνο η σωστή κωδικοποίηση ολοκληρώνει τη δουλειά
Το διορθωμένο κείμενο πρέπει να αποθηκευτεί σε κωδικοποίηση που αναγνωρίζει ο player. Οι players των Windows αναγνωρίζουν συχνά την κωδικοποίηση από το BOM, οπότε το UTF-8 με BOM είναι το πιο απλό· παλιές συσκευές και κινεζικοί players αναγνωρίζουν το GBK. Επιλογές: UTF-8, UTF-8 (με BOM), GBK, Big5, Shift_JIS, EUC-KR· αν δεν χωράει, προτείνεται άλλη.

Σχετικά εργαλεία και οδηγοί
Η πλήρης διαδικασία στη σελίδα Πώς να χρησιμοποιείτε την επιδιόρθωση χαλασμένων χαρακτήρων· τι περιέχει πραγματικά ένα αρχείο SRT στη σελίδα Τι περιέχει ένα αρχείο SRT· αν η κωδικοποίηση είναι εντάξει αλλά το περιεχόμενο βρώμικο (υδατογραφήματα, διαφημίσεις, σημειώσεις για κωφούς) χρησιμοποιήστε Καθαρισμός υποτίτλων.