Κατέβασμα υποτίτλων από YouTube και μετατροπή σε .srt

Υπάρχει η δυνατότητα να κατεβάσεις (από γραμμή εντολών) βίντεο ή ταινίες από YouTube, κατεβάζοντας τους υπότιτλους σε ξεχωριστό αρχείο. Το πρόβλημα είναι ότι το αρχείο είναι μορφής “.vtt”, το οποίο δεν αναγνωρίζεται από μερικά προγράμματα αναπαραγωγής βίντεο. Γι’ αυτό θα μετατρέψουμε το αρχείο “vtt” σε αρχείο “srt”, το οποίο αναγνωρίζεται ευκολότερα, με την βοήθεια δυο προγραμμάτων: yt-dlp και ffmpeg.

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

yt-dlp "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

Στην συνέχεια, για να βρούμε τους υπότιτλους που θέλουμε, γράφουμε την εντολή:

yt-dlp --list-subs "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

Αυτή η εντολή θα μας βγάλει ένα αποτέλεσμα σαν αυτό:
image

Για να κατεβάσουμε υπότιτλους στα αγγλικά, χρησιμοποιούμε την εντολή :

yt-dlp --sub-lang en --write-sub --skip-download https://www.youtube.com/watch?v=dQw4w9WgXcQ

Σημείωση 1: αν το βίντεο δεν έχει καθόλου υπότιτλους (όπως το παραπάνω παράδειγμα), μπορούμε να κατεβάσουμε τους αυτόματα δημιουργημένους υπότιτλους με την εξής εντολή:

yt-dlp --write-auto-sub --skip-download "https://www.youtube.com/watch?v=dQw4w9WgXcQ"

Σημείωση 2: αν θέλουμε να κατεβάσουμε το βίντεο ταυτόχρονα με τους υπότιτλους απλά δεν βάζουμε την παράμετρο --skip-download

Τέλος, για να μετατρέψουμε τους υπότιτλους από vtt σε srt γράφουμε την εντολή:

ffmpeg -i "subtitles.vtt" -c:s subrip "subtitles.srt"

Και αυτό ήταν! Έχουμε πλέον τους υπότιτλους σε μορφή srt.

14 «Μου αρέσει»

Πολύ ωραίος, απλώς και αναλυτικός!

Απλά δεν μας έχεις πει τι είναι και που θα βρούμε το yt-dlp.


Εγώ εδώ και χρόνια χρησιμοποιώ το GitHub - ytdl-org/youtube-dl: Command-line program to download videos from YouTube.com and other video sites .

Εσύ όμως αναφέρεσαι στο fork του : GitHub - yt-dlp/yt-dlp: A youtube-dl fork with additional features and fixes ;

yt-dlp μπορείς να το κατεβάσεις ακόμα και με pip, αλλά νομίζω σε όλα τα distro είναι πακεταρισμένο

1 «Μου αρέσει»

Κι ό,τι ήθελα να ανοίξω νήμα γιατί έχω απογοητευτεί αυτές τις μέρες. Δεν κατεβαίνει κανένα βίντεο ούτε με youtube-dl ούτε με yt-dlp. Η ubuntu 22.04 το έχει το dlp.

$ yt-dlp "https://www.youtube.com/watch?v=abfQQ1hzN9M"
[youtube] abfQQ1hzN9M: Downloading webpage
[youtube] abfQQ1hzN9M: Downloading android player API JSON
ERROR: [youtube] abfQQ1hzN9M: Unable to extract uploader id; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Έχω και αυτό το πρόσθετο του firefox Video DownloadHelper – Λήψη επέκτασης για το 🦊 Firefox (el) και για πολλά χρόνια κατέβαζα ότι βίντεο ήθελα. Τώρα δεν κατεβάζει κανένα. Τι έχει γίνει;

Μόλις το κατέβασα με την έκδοση 2023.03.04, δοκίμασε έτσι :

yt-dlp --extract-audio --audio-format mp3 https://www.youtube.com/watch?v=abfQQ1hzN9M
1 «Μου αρέσει»

Συγνώμη για την αργοπορία στην απάντηση, δεν είχα δει ότι είχε απαντήσεις το άρθρο μου.

Όπως είπε και ο ThanosApollo, εγώ το έχω εγκαταστήσει με pip. Το δοκίμασα μόλις τώρα και δουλεύει ακόμα μια χαρά. Έχω την έκδοση 2023.02.17
Είμαι σε Manjaro και βλέπω ότι υπάρχει και στα αποθετήρια του Arch, φαντάζομαι υπάρχει και σε άλλες διανομές, αλλά δεν ξέρω πόσο πρόσφατες είναι.

Από τα δυο λινκ που πόσταρες, ναι χρησιμοποιώ το δεύτερο (GitHub - yt-dlp/yt-dlp: A youtube-dl fork with additional features and fixes)

1 «Μου αρέσει»

Ποια έκδοση έχεις; Εγώ με 2023.02.17 εγκατεστημένο με pip κατεβάζω απρόσκοπτα (ακόμα).