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

Auto-subber bash script


mandos

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

Δημοσ. (επεξεργασμένο)

GITHUB LINK: https://github.com/bserem/cli-subber

είμαι σίγουρος ότι κάποιος μπορεί να το κάνει καλύτερο

 

Με αφορμή αυτό http://www.insomnia.gr/topic/121778-λίστα-προγραμμάτων-για-linux/page-46#entry52803255

και τα 10-15 replies που ακολούθησαν έκατσα να φτιάξω ένα script για bash που να βρίσκει και να μετατρέπει τους υπότίτλους μέσω command line.

 

Δεν είναι καμιά επιφοίτηση, χρησιμοποιεί το subdownloader και την enca για το encoding.

 

Είναι work in progress, αλλά το δίνω από τώρα μήπως και ενδιαφέρει κανέναν.



#!/bin/bash
DEFAULT_LANG="el"

if [ -z "$1" ]
  then SUBLANG_VAL=$DEFAULT_LANG
  else SUBLANG_VAL=$1
fi

echo "Language is set to $SUBLANG_VAL"

cwd=$(pwd)
for vid in "$cwd"/*.mkv "$cwd"/*.mp4 "$cwd"/*.avi;
do
  [ -e "$vid" ] || continue
  subdownloader -ci -l $SUBLANG_VAL --rename-subs --video="$vid"
done

for sub in "$cwd"/*.srt "$cwd"/*.sub;
do
  [ -e "$sub" ] || continue
  subenc=$(enca -L none -i "$sub")
  if [ "$subenc" != "UTF-8" ]
  then
    echo "Changing encoding of subtitle"
    iconv -f CP1253 -t utf-8 -o tempsub "$sub"
    mv tempsub "$sub"
  else
    echo "This subtitle is properly encoded"
  fi
done
  • τρέχει στο φάκελο των video (από όπου και αν είναι το εκτελέσιμο
  • είναι πάντα σε interactive mode, έκατσα μισή ώρα και δεν μπορεσα να το κάνω κατ' επιλογή
  • αν ο χρήστης δωσει "el", "en", "de" τότε κατεβάζει τη σχετική γλώσσα, αν δεν δώσει τίποτα τότε κατεβάζει τα ελληνικά που είναι default

για την ώρα είναι optimized για ελληνικά... :)

Επεξ/σία από mandos
  • Like 5
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δεν εχω να προτεινω καποια προσθηκη κλπ, απλα παρατηρησα ενα μικροπροβλημα στον τροπο που σκεφτεται το subdownloader.

 

$ dlsubs 
Enter your video(s) directory [/mnt/Public/Streaming]: 
[11:03] INFO::subdownloader.cli.main # Scanning /mnt/Public/Streaming ...
[11:03] INFO::metadata # unhandled base atom iods
[11:03] INFO::metadata # parsing mdat
[11:03] INFO::metadata # end of mdat
[11:03] INFO::metadata # unhandled base atom iods
[11:03] INFO::metadata # parsing mdat
[11:03] INFO::metadata # end of mdat
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]100% Time: 00:00:00
[11:03] INFO::subdownloader.cli.main # Videos found: 1 Subtitles found: 0
[11:03] INFO::subdownloader.cli.main # Looks like some of your videos might need subtitles 
[11:03] INFO::subdownloader.cli.main # Starting subtitle search, please wait...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]100% Time: 00:00:00
[11:03] INFO::subdownloader.SDService.SDService # No subtitles were found on Opensubtitles.com
[11:03] INFO::subdownloader.cli.filter # No subtitle was downloaded "The.Big.Bang.Theory.S07E10.HDTV.x264-LOL.mp4". Maybe you already have it?
Δηλαδη, ψαχνει για το ονομα της ταινιας βασισμενο στο φακελο μεσα στον οποιο τρεχει?!

 

Για οποιον δεν ξερει, το dlsubs ειναι ενα alias μου που τρεχει ενα σκετο "subdownloader -cil el --replace".

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

το έχω στο github εδώ:

https://github.com/bserem/cli-subber

 

feel free να του βγάλετε τα μάτια

 

@jim_p δεν σε πιάνω, εγώ το τρέχω σε ένα φάκελο που λέγεται "nosubs" και ότι βρίσκει το βάζω σε ένα φάκελο "yessubs", όσο έκανα την "ανάπτυξη" για να κάνω δοκιμές. Παρατήρησα ότι μπερδεύει κάποια πράγματα και ότι έχει απαίσιο output, αλλά όχι ότι προσέχει το folder name.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Το παραπανω θεμα με το bbt ισως να εγινε επειδη δεν υπηρχε υποτιτλος στα ελληνικα για το συγκεκριμενο επεισοδιο, οποτε δεν βρηκε τιποτα, οποτε... εκανε μια τρυπα στο νερο.

 

Για το insidious 2 που κατεβασα σημερα ομως γιατι δεν βρισκει?

$ dlsubs 
Enter your video(s) directory [/mnt/Private/Movies/Insidious Chapter 2 (2013)]: 
[17:35] INFO::subdownloader.cli.main # Scanning /mnt/Private/Movies/Insidious Chapter 2 (2013) ...
[17:35] INFO::metadata # unhandled base atom iods
[17:35] INFO::metadata # parsing mdat
[17:35] INFO::metadata # end of mdat
[17:35] INFO::metadata # unhandled base atom iods
[17:35] INFO::metadata # parsing mdat
[17:35] INFO::metadata # end of mdat
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]100% Time: 00:00:00
[17:35] INFO::subdownloader.cli.main # Videos found: 1 Subtitles found: 0
[17:35] INFO::subdownloader.cli.main # Looks like some of your videos might need subtitles 
[17:35] INFO::subdownloader.cli.main # Starting subtitle search, please wait...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>]100% Time: 00:00:00
[17:36] INFO::subdownloader.SDService.SDService # No subtitles were found on Opensubtitles.com
[17:36] INFO::subdownloader.cli.filter # No subtitle was downloaded "Insidious.Chapter.2.2013.720p.BluRay.x264.YIFY.mp4". Maybe you already have it?
Στο opensubtitles εχει τρεις!

http://www.opensubtitles.org/en/search/sublanguageid-ell/idmovie-155584

Και το xbmc τους κατεβαζει κανονικα!

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

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

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

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

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

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

Σύνδεση

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

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