Ero sivun ”Yle-dl” versioiden välillä
Siirry navigaatioon
Siirry hakuun
Viimeisimmän version riippuvuudet
(Viimeisimmän version riippuvuudet) |
|||
(94 välissä olevaa versiota 32 käyttäjän tekeminä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
{{ Ohjelma | nimi= | {{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | ||
[[Kuva:Yle-dl.png|right|200px|thumb| | {{ Ohjelma | ||
| nimi = yle-dl | |||
| kuva = | |||
| kuvateksti = | |||
| lisenssi = [[GPLv3]] | |||
| käyttöliittymä = teksti | |||
| kotisivu = [https://aajanki.github.io/yle-dl/ aajanki.github.io/yle-dl] | |||
| lähdekoodi = [https://github.com/aajanki/yle-dl github.com/aajanki/yle-dl] | |||
}} | |||
[[Kuva:Yle-dl.png|right|200px|thumb|yle-dl käytössä.]] | |||
[[Kuva:Rtmpdump-yle.png|right|200px|thumb|Ohjetekstiä.]] | [[Kuva:Rtmpdump-yle.png|right|200px|thumb|Ohjetekstiä.]] | ||
'''yle-dl''' on [[komentorivi]]ohjelma video- ja äänitiedostojen lataamiseen [[Yle Areena ja Elävä arkisto|Yle Areenasta ja Elävästä arkistosta]]. TV- ja radio-ohjelmien lisäksi yle-dl voi ladata [https://areena.yle.fi/audio/kanavat Areenan nettiradioita] ja [https://areena.yle.fi/tv/suorat suoria lähetyksiä]. Se toimii Linuxilla, Windowsilla ja macOS:lle. | |||
Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön. | |||
==Asennus lähdekoodeista== | |||
===Riippuvuudet=== | |||
* Python 3.6+ | |||
* pip | |||
* ffmpeg (tekstitys toimii vain ffmpegin versiolla 4.1 tai sitä uudemmilla) | |||
* setuptools (jos asennat lähdekoodeista) | |||
Joidenkin harvojen ohjelmien lataamiseen tarvitaan lisäksi: | |||
* wget | |||
==Asennus lähdekoodeista== | ===Asennus sekä päivitys=== | ||
Ohjelman [[lähdekoodi]]paketin voi ladata sen [ | Ohjelman voi asentaa myös ''[[pip]]''in avulla. Se löytyy myös [[AUR]]:sta Ja [[Ubuntu]]sta. | ||
Vaaditut kirjastot ja ohjelmat: | |||
python (3.6 tai uudempi), python-pip, ffmpeg | |||
{{oikeudet}} | |||
# pip3 install --user --upgrade yle-dl | |||
====Asennus lähdekoodeista==== | |||
Ohjelman [[lähdekoodi]]paketin voi ladata sen [https://aajanki.github.io/yle-dl/ kotisivuilta]. Ladattu lähdekoodi täytyy tämän jälkeen [[kääntäminen|kääntää]]. | |||
Debianissa ja Ubuntussa käännöstyökalut ja tarvittavat kirjastot löytyvät paketeista <tt>build-essential</tt>, <tt>libssl-dev</tt>, <tt>libjson0-dev</tt> ja <tt>python-dev</tt>. | |||
Ensin puretaan paketti komennolla | Ensin puretaan paketti komennolla | ||
[[tar]] xf ''paketinnimi'' | [[tar]] xf ''paketinnimi'' | ||
Tämän jälkeen siirrytään paketista purettuun hakemistoon komennon [[cd]] avulla ja annetaan komennot | Tämän jälkeen siirrytään paketista purettuun hakemistoon komennon [[cd]] avulla ja annetaan komennot make joka kääntää ohjelman ja make install asentaa ohjelman. | ||
[[sudo]] make install | [[sudo]] make install | ||
Asennus Debian unstable (toukokuu 2016) ja Ubuntu 16.04 | |||
sudo apt-get install | sudo apt-get install rtmpdump python python-crypto php-cli php-curl php-mcrypt php-xml php-bcmath | ||
sudo phpenmod mcrypt | |||
Mikäli | sudo make install | ||
Asennus Debian 8 ja Ubuntu 15.10 ja niitä vanhemmissa versioissa. | |||
sudo apt-get install rtmpdump python python-crypto php5-cli php5-curl php5-mcrypt | |||
sudo php5enmod mcrypt | |||
sudo make install | |||
Mikäli viimeinen komento tuottaa virheilmoituksen ([[sudo]]n käyttöön ei ole oikeuksia), voi sen yrittää antaa muodossa | |||
[[su]] -c "make install" | [[su]] -c "make install" | ||
Jos <tt>make</tt>-komento antaa virheilmoituksen <tt>"/bin/sh: g++: not found"</tt> (tai vastaavan) puuttuu järjestelmästä kääntämiseen tarvittavia työkaluja. Yleensä ne saa asennettua asentamalla [[ohjelmien asentaminen|asentamalla]] (ainakin) paketit <tt>[[make]]</tt> ja <tt>[[gcc|gcc-c++]]</tt> (tai jos sitä ei löydy, niin paketin <tt>g++</tt> tai <tt>gcc</tt>). [[Debian]]-pohjaisissa jakeluissa (mm. [[Ubuntu]]) niiden asennus onnistuu myös asentamalla paketti <tt>build-essential</tt>. Lisätietoja löytyy artikkelista [[Kääntäminen]]. | |||
Asennuksen voi tehdä myös käyttäen [[Checkinstall]]-ohjelmaa, joka on tarkoitettu helpottamaan suoraan lähdekoodista asennettujen ohjelmapakettien poistamista sekä estämään paketinhallintajärjestelmän sotkeutuminen asennettaessa ohjelmia sen ulkopuolelta. | |||
make | |||
checkinstall | |||
==Käyttö== | ==Käyttö== | ||
Ohjelman käyttö onnistuu seuraavan tyyppisellä komennolla: | yle-dl on apuskripti, joka hakee videon tiedot Ylen sivuilta ja huolehtii rtmpdump-ylen käynnistämisestä oikeilla parametreilla. Ohjelman käyttö onnistuu seuraavan tyyppisellä komennolla: | ||
yle-dl yle_video_sivun_osoite [rtmpdump-valitsimet] | yle-dl yle_video_sivun_osoite [rtmpdump-valitsimet] | ||
Esimerkiksi: | Esimerkiksi: | ||
yle-dl | yle-dl https://areena.yle.fi/1-444655 | ||
[[Valitsin]] <tt>-o</tt> määrittelee kohdetiedoston nimen. | [[Valitsin]] <tt>-o</tt> määrittelee kohdetiedoston nimen. | ||
yle-dl | yle-dl https://areena.yle.fi/1-444655 -o /polku/hakemistoon/video.mkv | ||
Videon voi putkittaa suoraan [[mpv]]n seuraavasti: | |||
yle-dl https://areena.yle.fi/1-444655 -o - | mpv - | |||
Muita valitsimia: | Muita valitsimia: | ||
<pre> | |||
optional arguments: | |||
-h, --help näyttää tämän pikaohjeen | |||
-V, --verbose, --debug | |||
Näyttää laajennetun virheenjäljityksen | |||
-c FILENAME, --config FILENAME | |||
asetustiedoston polku | |||
Input and output: | |||
url Areenan, Elävän Arkiston tai Yle uutissivuston osoite | |||
-i FILENAME Lukee URLit nimetystä tiedostosta, yksi URL per rivi | |||
-o FILENAME Tallentaa suoratoiston nimettyyn tiedostoon | |||
--output-template TEMPLATE | |||
Malline tiedoston nimen luomiselle kun ei käytetä -o-kytkintä. Malline tukee seuraavia korvikkeita: | |||
${title} korvataan jakson nimellä, ${series} sarjan nimellä, ${episode} on kauden numero ja | |||
jaksonumero "S02E12", ${timestamp} on suoratoiston julkaisuaika "2018-12-01T18:30", ${date} on suoratoiston | |||
julkaisu päivämäärä "2018-12-01", $$ on pakomerkki se korvataan kirjaimellisesti "$". Kaikki muu näkyy | |||
kuten ovat. | |||
--pipe Putkittaa suoratoiston stdout esimerkiksi mediatoistimelle. Esim. "yle-dl --pipe URL | vlc -" | |||
--destdir DIR Tallentaa tiedostot DIR-sijaintiin | |||
--showurl Tulostaa URL, muttei lataa | |||
--showtitle Tulostaa suoratoiston otsikon, muttei lataa | |||
--showepisodepage Tulostaa verkkosivun jokaiselle jaksolle | |||
--showmetadata Tulostaa metatiedot saatavissa olevista suoratoistoista | |||
--vfat Tekee Windows-yhteensopivat tiedostonimet | |||
--resume Jatkaa aikaisemmin keskeytynyttä latausta | |||
--ratelimit BR Enimmäiskaistan käyttö, kokonaisluku kt/s | |||
--proxy URI HTTP(S)-välityspalvelin jota käytetään. Esimerkiksi: --proxy localhost:8118 | |||
--postprocess CMD Suorittaa komennon CMD onnistuneen latauksen jälkeen. CMD is called with two arguments: video, subtitle | |||
Stream type and quality: | |||
--audiolang LANG Valitse suoratoiston äänen kieli, "fin" tai "swe" | |||
--sublang LANG Lataa tekstitykset, jos LANG on "all" (oletus) tai ei lataa tekstityksiä LANG ollessa "none". | |||
--hardsubs Polttaa tekstitykset kuvaan jos mahdollista | |||
--latestepisode Lataa sarjan viimeisimmän jakson | |||
--maxbitrate RATE Enimmäisbittivirta suoratoiston lataamiseen, kokonaisluku kt/s tai "best" tai "worst". | |||
--resolution RES Enimmäispystyresoluutio pikseleissä, oletus: korkein mahdollinen resoluutio | |||
--duration S Tallentaa ainostaan ensimmäiset S sekunnit suoratoistosta | |||
--preferformat F Haluttu videoformaatti: mkv (oletus) tai mp4. Käytössä vain kun ladataan ffmpeg:llä | |||
Korvaa | Downloader backends: | ||
--backend BE Lataajia, joita yritetään kunnes yksi niistä onnistuu (pilkulla eroteltu lista). Mahdollisia arvoja: "wget", | |||
"ffmpeg", "adobehdsphp" = AdobeHDS.php, "youtubedl" = youtube-dl, "rtmpdump" | |||
--rtmpdump PATH Asettaa polun rtmpdump binääriin | |||
--ffmpeg PATH Asettaa polun ffmpeg binääriin | |||
--ffprobe PATH Asettaa polun ffprobe binääriin | |||
--adobehds CMD Asettaa komennon AdobeHDS.php suorittamiseen | |||
--wget PATH Asettaa polun wget binääriin | |||
</pre> | |||
== Tiedostomuotojen muunnokset == | |||
Oletuksena yle-dl pyrkii tallentamaan MKV-säiliömuodossa. (.mkv-pääte). MKV:n sisällä on kuitenkin H.264-videoraita ja AAC-ääniraita, joita useimmat soittimet osaavat purkaa. Pelkkää ääntä sisältävissä radiotallenteissa (.mp3-pääte) on MP3-ääniraita. | |||
Jos jostain syystä tarve tulee muuntaa MKV vaikkapa MP4-muotoon, alla on ohjeet. Tässä kuvatut muunnokset ovat häviöttömiä, eli niillä ei ole mitään vaikutusta videon ja äänen laatuun. | |||
=== Videotallenteet MP4-muotoon === | |||
[[ffmpeg]] on kätevä komentorivityökalu, joka osaa mm. lukea MKV-säiliön sisällön ja siirtää sen sellaisenaan MP4-säiliöön: | |||
[[ffmpeg]] -i tiedosto.mkv -vcodec copy -acodec copy tiedosto.mp4 | |||
Korvaa <tt>tiedosto.mkv</tt> yle-dl:n tallentaman tiedoston nimellä ja <tt>tiedosto.mp4</tt> haluamallasi mp4-tiedoston nimellä. Voit käyttää myös tiedoston koko polkua: <tt>/polku/hakemistoon/tiedosto.mkv</tt> | |||
=== Äänitallenteet MP3-muotoon === | |||
Vaikka MKV-tiedostoissa ääniraita on yleensä AAC-koodattu, MP3-ääniraidan voi kopioida ulos säiliöstä [[ffmpeg]]illä: | |||
[[ffmpeg]] -i tiedosto.mkv -vn -c:a libmp3lame tiedosto.mp3 | |||
=== Tiedoston sisällön tutkiminen === | |||
Jos et ole varma mediatiedoston säiliömuodosta ja sen sisältämien video- ja ääniraitojen formaateista, voit tutkia tiedostoa [[ffmpeg]]illä: | |||
[[ffmpeg]] -i tiedosto.mkv | |||
Se kertoo Areenasta ladatusta videosta seuraavaa: | |||
Input #0, <b>matroska</b>,<b>webm</b>, from 'Uusi Päivä: Rahan puutteessa on moni köyhtynyt: S2011E143-2019-02-15T00:01.mkv': | |||
Metadata: | |||
ENCODER : Lavf58.20.100 | |||
Duration: 00:27:47.18, start: 0.000000, bitrate: 4036 kb/s | |||
Stream #0:0: Video: <b>h264</b> (High), yuv420p(progressive), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn, 50 tbc (default) | |||
Metadata: | |||
VARIANT_BITRATE : 4243601 | |||
DURATION : 00:27:47.181000000 | |||
Stream #0:1: Audio: <b>aac</b> (LC), 44100 Hz, stereo, fltp (default) | |||
Metadata: | |||
VARIANT_BITRATE : 4243601 | |||
DURATION : 00:27:47.161000000 | |||
Stream #0:2(fi): Subtitle: webvtt (default) | |||
Metadata: | |||
VARIANT_BITRATE : 4243601 | |||
COMMENT : ohjelmatekstitys | |||
DURATION : 00:27:37.920000000 | |||
At least one output file must be specified | |||
==Jakelukohtainen asennus== | |||
===Arch Linux sekä siihen pohjautuvat=== | |||
[[AUR]] löytyy kolme vaihtoehtoa, joista pelkkä yle-dl on paras vaihtoehto. | |||
yay -S {{AUR|yle-dl}} | |||
===Fedora, RHEL, CentOS=== | |||
yle-dl on saatavilla [[RPM Fusion]]ista [[Fedora]]lle ja [[Red Hat Enterprise Linux]]ille ja sen kanssa yhteensopiville jakeluille, kuten [[CentOS]]ille. | |||
Jos [[RPM Fusion#Fedoran_vakaat_versiot|RPM Fusion on otettu käyttöön]], yle-dl:n asentaminen onnistuu komennolla | |||
[[su]] -c "yum install yle-dl" | |||
==Katso myös== | ==Katso myös== | ||
*[[ | *[[youtube-dl]] | ||
*[[Metacafe-dl]] | |||
*[[nicovideo-dl]] | |||
==Aiheesta muualla== | |||
* [https://login.yle.fi/ Yle Passin] rekisteröityminen | |||
[[Luokka:Multimedia]] | [[Luokka:Multimedia]] | ||
[[Luokka:Suomi]] | |||
[[Luokka:Komentorivin erikoisohjelmat]] | [[Luokka:Komentorivin erikoisohjelmat]] | ||
[[Luokka:Verkkopalvelut]] |