Online video streaming με MPV , youtube-dl και Firefox


Παρακάτω θα δείξω τον τρόπο με τον οποίο πλέον κάνω (Internet) Video Streaming. Παλιότερα είχα δημοσιεύσει ένα άρθρο για MPV και Youtube-dl για 32bit υπολογιστές, από τότε όμως χρησιμοποιώ αυτή τη μέθοδο παντού.
Σε μερικούς ίσως φανεί περίεργος, σε άλλους ενδιαφέρον λόγω κάποιων πλεονεκτημάτων. Το θέμα μας όμως δεν είναι αυτό, αλλά να δείξουμε άλλον έναν εναλλακτικό τρόπο Video Streaming σε Linux.

Ο MPV είναι πλέον γνωστός Media Player. Τον χρησιμοποιούν ακόμη και σε Windows ως εναλλακτικό και ελαφρύτερο του δημοφιλούς Media Player Classic. Επικεντρώνεται στην αναπαραγωγή βίντεο χωρίς κουμπάκια, μενού, υπομενού …κλπ. Λιτός, απλός και αποτελεσματικός. KISS.

To Youtube-dl είναι ένα πρόγραμμα το οποίο ξεκίνησε ως youtube downloader, πλέον όμως μπορείς να κατεβάσεις από σχεδόν οποιαδήποτε σελίδα φιλοξενεί αρχεία βίντεο και ήχου. Σχετικά, διαβάστε σε πρόσφατη δημοσίευση του Cerebrux.

Ο Firefox είναι … ο Firefox. Υπάρχει όμως ένα ενδιαφέρον πρόσθετο που θα δούμε παρακάτω.

Εγκατάσταση MPV media player σε Ubuntu

Ανοίγουμε ένα τερματικό και δίνουμε τις παρακάτω εντολές μια-μια.

sudo add-apt-repository ppa:mc3man/mpv-tests
sudo apt update
sudo apt install mpv

Το παραπάνω αποθετήριο (PPA) προτείνεται στην Official σελίδα του MPV.

Εγκατάσταση Youtube-dl

Εδώ θα προτείνω τη λήψη του αρχείου από την Official σελίδα και όχι μέσω κάποιου PPA. Το θετικό είναι ότι θα έχετε πάντα την τελευταία έκδοση του youtube-dl όπως αυτή παρέχεται από τον developer του, το αρνητικό είναι ότι πρέπει να το κάνετε αναβάθμιση μόνοι σας.

sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
sudo chmod a+rx /usr/local/bin/youtube-dl

Για αναβάθμιση, δίνετε περιοδικά (πχ μια φορά την εβδομάδα)

sudo youtube-dl -U

Θέλετε να αυτοματοποιήσετε την αναβάθμιση; μα φυσικά μπορείτε μέσω cron ή systemd.timer.
Ας δούμε ένα cronjob.
Μέσα στο /etc/cron.weekly/ προσθέστε το παρακάτω script με όνομα youtube-dl-update.

#!/bin/bash
LOG=/var/log/youtube-dl-updater.log
/usr/local/bin/youtube-dl -U >> $LOG

Δώστε του δικαιώματα εκτέλεσης με

sudo chmod 755 /etc/cron.weekly/youtube-dl-update

Έτσι, μια φορά την εβδομάδα, θα ελέγχει για αναβάθμιση και αν υπάρχει θα την κάνει εγκατάσταση. Το τι έχει κάνει το script θα μπορείτε να το βλέπετε στο /var/log/youtube-dl-updater.log.

Ακόμη και με τα δυο παραπάνω προγράμματα θα μπορείτε να κάνετε video streaming, αλλά αυτό θα πρέπει να γίνεται χειροκίνητα δηλαδή θα πρέπει να κάνετε αντιγραφή του συνδέσμου και επικόλληση σε ένα τερματικό με πρόθεμα το mpv.
Για τον λόγο αυτό, προτείνω το παρακάτω.

Πρόσθετο Send to MPV player στον Firefox

Εδώ έρχεται να κάνει τη διαδικασία λίγο πιο εύκολη ένα πρόσθετο (addon) στον Firefox ονόματι Send to MPV player. Ψάξτε στον Add-on Manager, βρείτε το και κάντε το εγκατάσταση.

Αφού το κάνετε εγκατάσταση, θα δείτε το κουμπάκι στον Firefox που έχει το εικονίδιο του MPV. Πλέον το μόνο που μένει, είναι να αντιγράφετε κάποιο σύνδεσμο Video streaming και έπειτα πατάτε αυτό το κουμπάκι και περιμένετε λίγο, μέχρι να γεμίσει η cache και ξεκινάει το streaming.
Δεν είναι ανάγκη να ανοίξετε το σύνδεσμο, μπορείτε και με δεξί κλικ και «Copy Link Location».

Extra βήμα για το πρόσθετο

Για να λειτουργήσει σωστά το πρόσθετο χρειάζεται το NODE.js. Υπάρχει μια portable version την οποία μπορούμε να κάνουμε εγκατάσταση, είναι open source και δε χρειάζεται καν δικαιώματα διαχειριστή.

Με τις παρακάτω εντολές σε ένα τερματικό:

cd Downloads
 wget https://github.com/belaviyo/native-client/releases/download/0.2.7/linux.zip
 unzip linux.zip
 ./install.sh

Αν όλα πάνε καλά θα πρέπει να σας επιστρέψει στο τέλος
Application is ready to use

Προσέξτε ότι, το πρόσθετο βρίσκεται ακόμη σε beta έκδοση, αυτή τη στιγμή στην έκδοση 0.2.7.
Επίσης, η έκδοση αυτή είναι πιθανό να αλλάξει στο μέλλον, πχ 0.2.8, 0.2.9 …κλπ. Οπότε, για τώρα είναι εντάξει η παραπάνω εντολή (wget), αργότερα δεν θα είναι όμως. Οπότε, επισκεφτείτε τη σελίδα για να κατεβάσετε τη τελευταία έκδοση.

Εναλλακτικά και όπως μοιράστηκε στα σχόλια μαζί μας ο @Kon

Μέχρι την έκδοση 57 για YouTube/Vimeo (ή κι αλλού) μπορεί να χρησιμοποιηθεί και το Watch with MPV που λειτουργεί χωρίς εξωτερική βοήθεια (node). Χρησιμοποιείται ανοίγοντας (μείον σχετικά με Send to Mpv) το βίντεο και κλικ στο εικονίδιο.
[1]: https://addons.mozilla.org/en-US/firefox/addon/watch-with-mpv/
[2]: https://github.com/antoniy/mpv-youtube-dl-binding

Τι κερδίζω με όλα τα παραπάνω;
Αναλόγως το site από το οποίο θέλετε να κάνετε stream, αποφεύγετε bannerακια, διαφημίσεις, καμιά 10αρια add-fly …κλπ. Επίσης αποφεύγετε τις ενσωματωμένες διαφημίσεις στα βίντεο του youtube. Έχω πετύχει να έχει βάλει ο άλλος διαφήμιση κάθε 5 λεπτά.
Δουλεύει και για όσους/ες χρησιμοποιούν noscript, οπότε εμμέσως αποφεύγετε και javascript. Γι’ αυτό έγραψα παραπάνω ότι δεν χρειάζεται να ανοίξετε το σύνδεσμο, το πρόσθετο λειτουργεί με ότι έχει αντιγραφεί στο clipboard ή ότι έχει αναγνωρίσει αυτόματα από το site στο οποίο βρίσκεστε.

MPV streaming tips
Όταν έχουμε κάνει εγκατάσταση το youtube-dl, τότε ο MPV πλέον το αναγνωρίζει αυτόματα και αποφεύγουμε κολλήματα. Δοκιμάζει όλες τις πιθανές μεθόδους streaming, δηλαδή με youtube-dl και χωρίς.
Μπορούμε να αυξήσουμε την cache για να αποφύγουμε τυχών κολλήματα, αυτό θα έχει ως αποτέλεσμα να αργήσει λίγο περισσότερο να ξεκινήσει το βίντεο αλλά να έχει περισσότερη cache και να «διαβάζει» καλύτερα.

Με τον αγαπημένο μας text editor δημιουργούμε και ανοίγουμε το αρχείο ~/.config/mpv/mpv.conf
και προσθέτουμε μέσα τα παρακάτω:

cache-default=153600 # 150MB cache για streaming
user-agent="Mozilla/5.0" # Βοηθάει σε κάποια sites. Προσποιείται ότι είναι web browser
cache-pause=no # απενεργοποιεί τη παύση αν ο player φτάσει σε συγκεκριμένο low cache level.
cache-secs=50.0 # Διάβασε 50 δευτερόλεπτα μπροστά. 
sub-codepage=greek # Για φόρτωση ελληνικών υποτίτλων από εξωτερικό αρχείο. Για να μη τα βγάζει ιερογλυφικά.

Το πρόσθετο του Firefox δεν υποστηρίζει ακόμη subtitles. Αν θέλετε να φορτώσετε υπότιτλους και έχετε βρει και κατεβάσει το αρχείο, τότε μπορείτε να το κάνετε από τερματικό. Για παράδειγμα:
mpv σύνδεσμος --sub-file=path-to-srt-file

Ο παραπάνω οδηγός υλοποιήθηκε με επιτυχία σε Xubuntu 17.10. Περιμένω να λειτουργήσει το ίδιο σωστά σε οποιαδήποτε άλλη υποστηριζόμενη έκδοση Ubuntu, ακόμη και σε derivatives και σε άλλες διανομές. Αυτό που θα διαφέρει θα είναι ο τρόπος εγκατάστασης κάποιων προγραμμάτων.


Until next time …
Thanks for reading!

Advertisements

3 thoughts on “Online video streaming με MPV , youtube-dl και Firefox

  1. Μέχρι την έκδοση 57 (οπότε και το πούλο τα legacy addons) για YouTube/Vimeo (ή κι αλλού) μπορεί να χρησιμοποιηθεί και το _Watch with MPV_ [mozilla:1][source:2] που λειτουργεί χωρίς εξωτερική βοήθεια (node). Χρησιμοποιείται ανοίγοντας (μείον σχετικά με _Send to Mpv_) το βίντεο και κλικ στο εικονίδιο.
    [1]: https://addons.mozilla.org/en-US/firefox/addon/watch-with-mpv/
    [2]: https://github.com/antoniy/mpv-youtube-dl-binding
    >Αν θέλετε να φορτώσετε υπότιτλους […] τερματικό.
    Ή κλασσικά με drag-n-drop του srt/ass αρχείου στο παράθυρο του mpv.

    1. Άσχετο. Kon μην βάζεις σε παρακαλώ *example.net στο email σου γιατί κάθε φορά πάει στα spam/trash αυτόματα και μπορεί να μου ξεφύγει κάποιο σχόλιό σου και δεν θέλω γιατί συνδράμεις σημαντικά με τα σχόλιά σου !! Βάλε κάτι άλλο 🙂

Σου άρεσε το άρθρο; Πες την άποψή σου... έστω και Ανώνυμα:

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s