Ero sivun ”Yle-dl” versioiden välillä
(Viimeisimmän version riippuvuudet) |
|||
(15 välissä olevaa versiota 3 käyttäjän tekeminä ei näytetä) | |||
Rivi 1: | Rivi 1: | ||
{{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | {{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}} | ||
{{ Ohjelma | {{ Ohjelma | ||
| nimi=yle-dl | | nimi = yle-dl | ||
| kuva= | | kuva = | ||
| kuvateksti= | | kuvateksti = | ||
| lisenssi=[[GPLv3]] | | lisenssi = [[GPLv3]] | ||
| käyttöliittymä=teksti | | käyttöliittymä = teksti | ||
| kotisivu=[https://aajanki.github.io/yle-dl/ aajanki.github.io/yle-dl] | | 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: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. | |||
'''yle-dl''' | |||
Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön. | Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön. | ||
Rivi 23: | Rivi 19: | ||
===Riippuvuudet=== | ===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 sekä päivitys=== | ===Asennus sekä päivitys=== | ||
Ohjelman voi asentaa myös ''[[pip]]''in avulla. Se löytyy myös [[AUR]]:sta. | Ohjelman voi asentaa myös ''[[pip]]''in avulla. Se löytyy myös [[AUR]]:sta Ja [[Ubuntu]]sta. | ||
Vaaditut kirjastot ja ohjelmat: | Vaaditut kirjastot ja ohjelmat: | ||
python ( | python (3.6 tai uudempi), python-pip, ffmpeg | ||
{{oikeudet}} | {{oikeudet}} | ||
Rivi 49: | Rivi 38: | ||
====Asennus lähdekoodeista==== | ====Asennus lähdekoodeista==== | ||
Ohjelman [[lähdekoodi]]paketin voi ladata sen [ | 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>. | 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>. | ||
Rivi 88: | Rivi 77: | ||
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 [[ | Videon voi putkittaa suoraan [[mpv]]n seuraavasti: | ||
yle-dl | yle-dl https://areena.yle.fi/1-444655 -o - | mpv - | ||
Muita valitsimia: | Muita valitsimia: | ||
Rivi 149: | Rivi 138: | ||
== Tiedostomuotojen muunnokset == | == 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. | |||
Tässä kuvatut muunnokset ovat häviöttömiä, eli niillä ei ole mitään vaikutusta videon ja äänen laatuun. | 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 === | === Videotallenteet MP4-muotoon === | ||
[[ffmpeg]] on kätevä komentorivityökalu, joka osaa mm. lukea | [[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. | [[ffmpeg]] -i tiedosto.mkv -vcodec copy -acodec copy tiedosto.mp4 | ||
Korvaa <tt>tiedosto. | 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 === | === Äänitallenteet MP3-muotoon === | ||
Vaikka MKV-tiedostoissa ääniraita on yleensä AAC-koodattu, MP3-ääniraidan voi kopioida ulos säiliöstä [[ffmpeg]]illä: | |||
[[ffmpeg]] -i tiedosto. | [[ffmpeg]] -i tiedosto.mkv -vn -c:a libmp3lame tiedosto.mp3 | ||
=== Tiedoston sisällön tutkiminen === | === Tiedoston sisällön tutkiminen === | ||
Rivi 174: | Rivi 160: | ||
Jos et ole varma mediatiedoston säiliömuodosta ja sen sisältämien video- ja ääniraitojen formaateista, voit tutkia tiedostoa [[ffmpeg]]illä: | 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. | [[ffmpeg]] -i tiedosto.mkv | ||
Se kertoo Areenasta ladatusta videosta seuraavaa: | Se kertoo Areenasta ladatusta videosta seuraavaa: | ||
Input #0, <b> | |||
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== | ==Jakelukohtainen asennus== | ||
Rivi 199: | Rivi 187: | ||
===Arch Linux sekä siihen pohjautuvat=== | ===Arch Linux sekä siihen pohjautuvat=== | ||
[[AUR]] löytyy kolme vaihtoehtoa, joista yle-dl on paras vaihtoehto | [[AUR]] löytyy kolme vaihtoehtoa, joista pelkkä yle-dl on paras vaihtoehto. | ||
yay -S yle-dl | yay -S {{AUR|yle-dl}} | ||
===Fedora, RHEL, CentOS=== | ===Fedora, RHEL, CentOS=== | ||
Rivi 215: | Rivi 203: | ||
==Aiheesta muualla== | ==Aiheesta muualla== | ||
* [https://login.yle.fi/ Yle Passin] rekisteröityminen | * [https://login.yle.fi/ Yle Passin] rekisteröityminen | ||
Nykyinen versio 14. maaliskuuta 2022 kello 22.21
yle-dl | |
---|---|
Käyttöliittymä | teksti |
Lisenssi | GPLv3 |
Kotisivu | aajanki.github.io/yle-dl |
Lähdekoodi | github.com/aajanki/yle-dl |
yle-dl on komentoriviohjelma video- ja äänitiedostojen lataamiseen Yle Areenasta ja Elävästä arkistosta. TV- ja radio-ohjelmien lisäksi yle-dl voi ladata Areenan nettiradioita ja suoria lähetyksiä. Se toimii Linuxilla, Windowsilla ja macOS:lle.
Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön.
Asennus lähdekoodeista[muokkaa]
Riippuvuudet[muokkaa]
- 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 sekä päivitys[muokkaa]
Ohjelman voi asentaa myös pipin avulla. Se löytyy myös AUR:sta Ja Ubuntusta.
Vaaditut kirjastot ja ohjelmat: python (3.6 tai uudempi), python-pip, ffmpeg
# pip3 install --user --upgrade yle-dl
Asennus lähdekoodeista[muokkaa]
Ohjelman lähdekoodipaketin voi ladata sen kotisivuilta. Ladattu lähdekoodi täytyy tämän jälkeen kääntää.
Debianissa ja Ubuntussa käännöstyökalut ja tarvittavat kirjastot löytyvät paketeista build-essential, libssl-dev, libjson0-dev ja python-dev.
Ensin puretaan paketti komennolla
tar xf paketinnimi
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
Asennus Debian unstable (toukokuu 2016) ja Ubuntu 16.04
sudo apt-get install rtmpdump python python-crypto php-cli php-curl php-mcrypt php-xml php-bcmath sudo phpenmod mcrypt
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 (sudon käyttöön ei ole oikeuksia), voi sen yrittää antaa muodossa
su -c "make install"
Jos make-komento antaa virheilmoituksen "/bin/sh: g++: not found" (tai vastaavan) puuttuu järjestelmästä kääntämiseen tarvittavia työkaluja. Yleensä ne saa asennettua asentamalla asentamalla (ainakin) paketit make ja gcc-c++ (tai jos sitä ei löydy, niin paketin g++ tai gcc). Debian-pohjaisissa jakeluissa (mm. Ubuntu) niiden asennus onnistuu myös asentamalla paketti build-essential. 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ö[muokkaa]
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]
Esimerkiksi:
yle-dl https://areena.yle.fi/1-444655
Valitsin -o määrittelee kohdetiedoston nimen.
yle-dl https://areena.yle.fi/1-444655 -o /polku/hakemistoon/video.mkv
Videon voi putkittaa suoraan mpvn seuraavasti:
yle-dl https://areena.yle.fi/1-444655 -o - | mpv -
Muita valitsimia:
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ä 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
Tiedostomuotojen muunnokset[muokkaa]
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[muokkaa]
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 tiedosto.mkv yle-dl:n tallentaman tiedoston nimellä ja tiedosto.mp4 haluamallasi mp4-tiedoston nimellä. Voit käyttää myös tiedoston koko polkua: /polku/hakemistoon/tiedosto.mkv
Äänitallenteet MP3-muotoon[muokkaa]
Vaikka MKV-tiedostoissa ääniraita on yleensä AAC-koodattu, MP3-ääniraidan voi kopioida ulos säiliöstä ffmpegillä:
ffmpeg -i tiedosto.mkv -vn -c:a libmp3lame tiedosto.mp3
Tiedoston sisällön tutkiminen[muokkaa]
Jos et ole varma mediatiedoston säiliömuodosta ja sen sisältämien video- ja ääniraitojen formaateista, voit tutkia tiedostoa ffmpegillä:
ffmpeg -i tiedosto.mkv
Se kertoo Areenasta ladatusta videosta seuraavaa:
Input #0, matroska,webm, 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: h264 (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: aac (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[muokkaa]
Arch Linux sekä siihen pohjautuvat[muokkaa]
AUR löytyy kolme vaihtoehtoa, joista pelkkä yle-dl on paras vaihtoehto.
yay -S yle-dlAUR
Fedora, RHEL, CentOS[muokkaa]
yle-dl on saatavilla RPM Fusionista Fedoralle ja Red Hat Enterprise Linuxille ja sen kanssa yhteensopiville jakeluille, kuten CentOSille.
Jos RPM Fusion on otettu käyttöön, yle-dl:n asentaminen onnistuu komennolla
su -c "yum install yle-dl"
Katso myös[muokkaa]
Aiheesta muualla[muokkaa]
- Yle Passin rekisteröityminen