Αποστολέας Θέμα: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel  (Αναγνώστηκε 3409 φορές)

Αποσυνδεδεμένος Din_OS

  • Σφήκα
  • ***
  • Μηνύματα: 318
  • Φύλο: Άντρας
  • All reality is virtual
    • I.D 3d graphics
Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« στις: Ιανουάριος 10, 2008, 00:38:56 πμ »
Έχει κανείς υπόψη του κάποιο προγραμμα που να κάνει compile τους υπότιτλους σε μια ταινία? Έχω το αρχείο των υποτίτλων σε μορφή srt και δεν ξέρω τι να το κάνω
« Τελευταία τροποποίηση: Φεβρουάριος 25, 2008, 17:13:53 μμ από baskin »
Dreaming lets you know that reality exists

Syros.gr administrator


anargi

  • Επισκέπτης
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #1 στις: Ιανουάριος 10, 2008, 06:49:13 πμ »
Αν κατάλαβα καλά ψάχνεις ένα πρόγραμμα που να φορτώνεις το αρχείο των υποτίτλων (.srt) μαζί με το αρχείο της ταινίας(avi...κτλ...) όπως π.χ το  media classic των windows.Ο vlc το κάνει αυτό.

Αποσυνδεδεμένος Din_OS

  • Σφήκα
  • ***
  • Μηνύματα: 318
  • Φύλο: Άντρας
  • All reality is virtual
    • I.D 3d graphics
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #2 στις: Ιανουάριος 10, 2008, 09:59:27 πμ »
To είδα ότι ο vlc το κάνει αυτό.. Απλά αναρωτιέμαι αν υπάρχει τρόπος να το σώσω μετά μονοκόμματο και να το γράψω σε dvd έτσι ωστε να μην χρειάζεται να το βλέπω μόνο από το pc μου..  :-\
Dreaming lets you know that reality exists

Syros.gr administrator


Αποσυνδεδεμένος petrogazz

  • Συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 281
  • Φύλο: Άντρας
  • Θα πάρω τα βουνά!
    • /home/PeTRogazZ - EnduroLinux Blog
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #3 στις: Ιανουάριος 10, 2008, 11:27:50 πμ »

Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #4 στις: Ιανουάριος 10, 2008, 12:08:20 μμ »
Μπορείς να το κάνεις με διάφορους τρόπους αλλά θα πρέπει να το ψάξεις μιας και δεν έχω ασχοληθεί ιδιαίτερα.

Αυτό που μπορώ να σου πώ είναι ότι γίνεται με σίγουρα με τα εξής :

1. mencoder  -> από κονσόλα ( κομμάτι του mplayer )
2. spumux     -> και από κονσόλα ( κομμάτι του DVDAuthor )
3. mplex        -> από κονσόλα ( κομμάτι των MJPegTools )
4. ffmpeg       -> από κονσόλα ( κομμάτι του εαυτού του :) )

Αν βρείς άκρη γράψε ένα tutorial και για εμάς :)

Αποσυνδεδεμένος divak

  • Μέλος ΑΔΚΥ
  • Κουνούπι
  • ******
  • Μηνύματα: 23
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #5 στις: Ιανουάριος 11, 2008, 00:40:23 πμ »
Ο vlc ότι παίζει το κάνει και capture. Και με τους υπότιτλους, αν έχω καταλάβει καλά.

Αλλά θέλει να ξέρεις και πέντε πράγματα από εικόνα και ήχο. 
« Τελευταία τροποποίηση: Ιανουάριος 11, 2008, 00:41:58 πμ από divak »

Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #6 στις: Φεβρουάριος 14, 2008, 17:28:28 μμ »
Πρόσφατα μου προέκυψε η ανάγκη για μετατροπή αρχείων βίντεο σε dvd οπότε το έψαξα λιγάκι παραπάνω και κατέληξα να φτιάξω ένα σκριπτάκι το οποίο μετατρέπει οποιονδήποτε τύπο βίντεο αρχείου μπορεί να τρέξει μέσω του mplayer σε dvd με υπότιτλους.

Για την μετατροπή χρησιμοποιώ :
mplayer, mencoder, dvdauthor, spumux, ffmpeg, iconv, και msttfcorefonts (ή απλά το  Arial.ttf font)

Απλά κατεβάστε το -> chmod +x any-to-dvd.sh -> και εκτελέστε το από κονσόλα ( ./any-to-dvd.sh ) για οδηγίες.

EDIT.

το αρχείο μεταφέρθηκε σε επόμενο post
« Τελευταία τροποποίηση: Φεβρουάριος 25, 2008, 18:17:00 μμ από mihpel »

Αποσυνδεδεμένος baskin

  • Διαχειριστής
  • Μπάμπουρας
  • *****
  • Μηνύματα: 1753
  • Φύλο: Άντρας
  • VoIP 5281010005
    • Στο Επισκοπείον
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #7 στις: Φεβρουάριος 24, 2008, 23:27:26 μμ »
Σε opensuse 10.3 με εγκατεστημένα τα msttfcorefonts μου γκρινιάζει πάντα ότι δεν τα βρίσκει και πρέπει να κάνω disable τους subtitles (δεν μου έχουν χρειαστεί  ακόμη, αλλά το αναφέρω).

Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία
« Απάντηση #8 στις: Φεβρουάριος 25, 2008, 15:27:00 μμ »
Από ότι βλέπω στο opensuse υπάρχει to "arial.ttf" με πεζό "a" και το search που κάνω απο το script είναι case sensitive για "Arial.ttf" με κεφαλαίο "A".
Το θεωρώ bug του script και το διόρθωσα με case insensitive search. Δοκίμασε να μου πείς.

Επίσης στο καινούργιο script που ανεβάζω έχω προσθέσει την δυνατότητα χρήσης gui μέσω Zenity (interactive popups) και απεικόνιση της προόδου μέσω xterm. Για την ενεργοποίηση του προσθέστε τον διακόπτη "-g" απο κονσόλα ή φτιάχνοντας μια συντόμευση.

πχ " any-to-dvd.sh -g"

Προσωπικά έχω αντιγράψει το script μέσα στο directory "/usr/local/bin" και έχω φτiάξει μια συντόμευση στο μενού εφαρμογών με entry σκέτο " any-to-dvd.sh -g"

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

Στο μέλλον ίσως προσθέσω δυνατότητα πολλαπλών ταινιών ή-και υποτίτλων.

EDIT
minor bug fix (font related)

EDIT2

το αρχείο μεταφέρθηκε σε επόμενο post
« Τελευταία τροποποίηση: Φεβρουάριος 26, 2008, 00:32:28 πμ από mihpel »

Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #9 στις: Φεβρουάριος 26, 2008, 00:31:04 πμ »
Καθάρισα λίγο τον κώδικα και άλλαξα τον μηχανισμό εκτέλεσης και ελέγχου διεργασιών για το κομμάτι του γραφικού.

Αν δεν βρεθεί κάποιο bug στην παρούσα φάση η επόμενη έκδοση θα πάρει λίγο χρόνο  ::) .

EDIT:

το αρχείο μεταφέρθηκε σε επόμενο post
« Τελευταία τροποποίηση: Μάρτιος 01, 2008, 21:20:31 μμ από mihpel »

Αποσυνδεδεμένος baskin

  • Διαχειριστής
  • Μπάμπουρας
  • *****
  • Μηνύματα: 1753
  • Φύλο: Άντρας
  • VoIP 5281010005
    • Στο Επισκοπείον
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #10 στις: Μάρτιος 01, 2008, 18:29:35 μμ »
Η τελευταία έκδοση δεν εκτελείτε καθόλου στο σύστημα μου (opensuse 10.3 x86_64).

Έχω διαφορετικά μηνύματα σφάλματος αναλόγως πως το εκτελέσω (πάντα από κονσόλα)

Κώδικας: [Επιλογή]
strzol@teras:~/Desktop>./any-to-dvd.sh
bash: ./any-to-dvd.sh: /bin/bash^M: bad interpreter: No such file or directory

ή

Κώδικας: [Επιλογή]
strzol@teras:~/Desktop>sh any-to-dvd.sh
'ny-to-dvd.sh: line 7: syntax error near unexpected token `{
'ny-to-dvd.sh: line 7: `function usage() {

Το παλιό version μου λειτουργεί κανονικά.


Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #11 στις: Μάρτιος 01, 2008, 21:17:36 μμ »
Η τελευταία έκδοση δεν εκτελείτε καθόλου στο σύστημα μου (opensuse 10.3 x86_64).

Έχω διαφορετικά μηνύματα σφάλματος αναλόγως πως το εκτελέσω (πάντα από κονσόλα)

Κώδικας: [Επιλογή]
strzol@teras:~/Desktop>./any-to-dvd.sh
bash: ./any-to-dvd.sh: /bin/bash^M: bad interpreter: No such file or directory

ή

Κώδικας: [Επιλογή]
strzol@teras:~/Desktop>sh any-to-dvd.sh
'ny-to-dvd.sh: line 7: syntax error near unexpected token `{
'ny-to-dvd.sh: line 7: `function usage() {

Το παλιό version μου λειτουργεί κανονικά.



Η μαγεία των Windows.....

Το τελευταίο αρχείο το έκανα upload από windows και σαν σωστό λειτουργικό θεώρησε ότι έπρεπε να αλλάξει όλα τα (LF) σε (CR/LF) μέσα στο αρχείο... !
Τι να πώ.....

εκτέλεσε

Κώδικας: [Επιλογή]
cat any-to-dvd.sh | sed 's/.$//' > any-to-dvd-1.sh
και θα δημιουργηθεί το αρχείο "any-to-dvd-1.sh" το οποίο θα σου δουλεύει κανονικά.

Με την ευκαιρία ανεβάζω και την τελευταία stable έκδοση με πιο μαζεμένο gui και ένα bugfix που αφορούσε την αδυναμία ελέγχου του mencoder αν το script εκτελούνταν με gui και το επιλεγμένο αρχείο για μετατροπή εμπεριείχε ειδικούς χαρακτήρες.
« Τελευταία τροποποίηση: Μάρτιος 01, 2008, 21:28:59 μμ από mihpel »

anargi

  • Επισκέπτης
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #12 στις: Μάρτιος 03, 2008, 15:16:52 μμ »
Αντιμετωπίζω και εγώ ένα πρόβλημα με ένα αρχείο ταινίας το οποίο δεν ξέρω αν πρέπει να γράψω εδώ η να ανοίξω κανούριο θέμα.Λοιπόν έχω ένα αρχείο ταινίας το οποίο είναι avi και άλλο ένα το οποίο είναι οι υπότιτλοι srt.Τα φορτώνω και τα 2 από τον vlc αλλά οι υπότιτλοι δεν εμφανίζονται μόλις ξεκινήσει η ταινία.Όταν ανοίγω το srt μέ ένα editor από opensuse οι υπότιτλοι είναι όλοι με ερωτηματικά από windows βγαίνου κανονικά ελληνικά δηλ.Σε windows που το δοκίμασα παίζει κανονικά η ταινία από opensuse παίζει αλλά δεν εμφανίζονται οι υπότιτλοι εν ολίγης.Το encoding στο vlc είναι default.Δοκίμασα να το αλάξω αλλά τα ίδια.Καμία ιδέα το τι μπορεί να θέλει?

Αποσυνδεδεμένος mihpel

  • Γενικός συντονιστής
  • Μύγα
  • *****
  • Μηνύματα: 197
  • Φύλο: Άντρας
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #13 στις: Μάρτιος 03, 2008, 17:14:50 μμ »
Το πρόβλημά σου είναι ότι το αρχείο srt είναι κωδικοποιημένο σε Windows 1252 ή ISO-8859-7.
Για να προβληθεί σωστά από linux πρέπει ή να αλλάξεις τις ρυθμίσεις στον player που χρησιμοποιείς ώστε να διαβάζει σωστά το αρχείο ή να αλλάξεις την κωδικοποίηση του αρχείου.

Προσωπικά το συγκεκριμένο "πρόβλημα" το αντιμετωπίζω με μετατροπή του αρχείου σε UTF-8.

εκτέλεσε
Κώδικας: [Επιλογή]
file -b /home/expamle/αρχείο.srt
και αν μέσα στην γραμμή που θα παραχθεί υπάρχει η δήλωση "ISO-8859"

εκτέλεσε ( για Ελληνικούς υπότιτλους )
Κώδικας: [Επιλογή]
iconv -f ISO8859-7 -t UTF8 /home/expamle/αρχείο.srt -o /home/expamle/αρχείο.srt.utf8
Αν είναι αγγλικοί οι υπότιτλοι άλλαξε το "ISO8859-7" σε "ISO8859-1" στην παραπάνω εντολή.

Αν το αποτέλεσμα της
Κώδικας: [Επιλογή]
file -b /home/expamle/αρχείο.srtδεν είναι "ISO-8859" ή η γλώσσα δεν είναι ούτε Ελληνικά ούτε Αγγλικά, γράψε τι είναι να το δούμε.
« Τελευταία τροποποίηση: Μάρτιος 04, 2008, 09:45:06 πμ από mihpel »

Αποσυνδεδεμένος baskin

  • Διαχειριστής
  • Μπάμπουρας
  • *****
  • Μηνύματα: 1753
  • Φύλο: Άντρας
  • VoIP 5281010005
    • Στο Επισκοπείον
Απ: Πρόγραμμα προσαρμογής subs σε ταινία - any-to-dvd script by mihpel
« Απάντηση #14 στις: Μάρτιος 05, 2008, 16:34:34 μμ »
Έχω ένα .srt αρχείο το οποίο μου δίνει τα παρακάτω:

Κώδικας: [Επιλογή]
strzol@teras:~/Lost/Season 1/Episode 07> file -b Lost\ -\ s01e07\ -\ The\ Moth.srt
Non-ISO extended-ASCII text, with CRLF line terminators

Τι κάνουμε σε αυτήν την περίπτωση;

Εννοείται ότι το script γκρινιάζει ότι δεν είναι ISO ή UTF και δεν ενσωματώνει τους υπότιτλους.

Επισυνάπτω και το srt για δοκιμές.