Nykyinen versio |
Oma tekstisi |
Rivi 1: |
Rivi 1: |
| {{DISPLAYTITLE:{{lcfirst:{{PAGENAME}}}}}}
| | {{ Ohjelma | nimi=RTMPDump-YLE | kuva= | kuvateksti= | lisenssi=[[GPL]]v.2 | käyttöliittymä=teksti | kotisivu=[http://users.tkk.fi/~aajanki/rtmpdump-yle/index.html]}} |
| {{ Ohjelma | | [[Kuva:Yle-dl.png|right|200px|thumb|RTMPDump-YLE käytössä.]] |
| | 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.
| | RTMPDump-YLE eli yle-dl on [[komentorivi]]ohjelma video- ja äänitiedostojen lataamiseen [[YLE Areena ja Elävä arkisto|YLE Areenasta]] kovalevylle. TV- ja radio-ohjelmien lisäksi ohjelmalla voi ladata Areenan nettiradioita sekä suoria lähetyksiä. |
|
| |
|
| ==Asennus lähdekoodeista==
| | RTMPDump-YLE perustuu Andrej Stepanchukin RTMPDump-ohjelmaan, joka puolestaan perustuu Team Boxeen RTMPDumper-ohjelmakoodeihin. JSON-viestien jäsentämiseen käytetään json-c-[[kirjasto]]a. |
|
| |
|
| ===Riippuvuudet===
| | YLEn ohjelmien lataaminen on sallittua vain omaan käyttöön. |
|
| |
|
| * Python 3.6+
| | ==Asennus lähdekoodeista== |
| * pip
| | Ohjelman [[lähdekoodi]]paketin voi ladata sen [http://users.tkk.fi/~aajanki/rtmpdump-yle/index.html kotisivuilta]. Ladattu lähdekoodi täytyy tämän jälkeen [[kääntäminen|kääntää]]. |
| * 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===
| | Kääntämistä varten tarvitaan [[OpenSSL]]:n kehitystiedostot, jotka yleensä löytyvät [[paketinhallintajärjestelmä|paketinhallinnasta]] nimellä <tt>openssl-devel</tt> tai <tt>libssl-dev</tt> sekä libxml2:n kehitystiedostot, jotka yleensä löytyvät nimellä <tt>libxml2-devel</tt> tai <tt>libxml2-dev</tt>. |
| 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 make joka kääntää ohjelman ja make install asentaa ohjelman. | | Tämän jälkeen siirrytään paketista purettuun hakemistoon komennon [[cd]] avulla ja annetaan komennot |
| | | ./configure |
| | [[make]] |
| [[sudo]] make install | | [[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 ([[sudo]]n käyttöön ei ole oikeuksia), voi sen yrittää antaa muodossa | | Mikäli viimeinen komento tuottaa virheilmoituksen ([[sudo]]n käyttöön ei ole oikeuksia), voi sen yrittää antaa muodossa |
Rivi 66: |
Rivi 25: |
|
| |
|
| 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]]. | | 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ö== |
| 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:
| | 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 https://areena.yle.fi/1-444655 | | yle-dl http://areena.yle.fi/video/261405 |
|
| |
|
| [[Valitsin]] <tt>-o</tt> määrittelee kohdetiedoston nimen. | | [[Valitsin]] <tt>-o</tt> määrittelee kohdetiedoston nimen. |
| yle-dl https://areena.yle.fi/1-444655 -o /polku/hakemistoon/video.mkv | | yle-dl http://areena.yle.fi/video/261405 -o /polku/hakemistoon/video.mp4 |
| | |
| Videon voi putkittaa suoraan [[mpv]]n seuraavasti:
| |
|
| |
| yle-dl https://areena.yle.fi/1-444655 -o - | mpv -
| |
|
| |
|
| Muita valitsimia: | | Muita valitsimia: |
| <pre>
| | *'''--resume''' - jatkaa aikaisemmin keskeytynyttä latausta |
| optional arguments:
| | *'''-o''' - kohdetiedosto |
| -h, --help näyttää tämän pikaohjeen
| | *'''--help''' - pikaohje |
| -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:
| | == Radio-ohjelmat mp3-muodossa == |
| --audiolang LANG Valitse suoratoiston äänen kieli, "fin" tai "swe"
| | Pelkkää ääntä sisältävät ohjelmat (eli radio-ohjelmat) lähetetään [[mp3]]-muodossa, mutta ne on "kääritty" Flashiin, eikä ladattuja tiedostoja siksi voi soittaa kaikilla [[mp3-soitin|mp3-soittimilla]]. Flash-kerroksen saa kuorittua pois (ilman mitään vaikutusta äänenlaatuun) [[ffmpeg]]-nimisellä ohjelmalla, käyttäen seuraavaa komentoa: |
| --sublang LANG Lataa tekstitykset, jos LANG on "all" (oletus) tai ei lataa tekstityksiä LANG ollessa "none".
| | ffmpeg -i tiedosto.fla -acodec copy tiedosto.mp3 |
| --hardsubs Polttaa tekstitykset kuvaan jos mahdollista
| | Vastaavasti [[MPlayer]]-nimisellä ohjelmalla, seuraavalla komennolla: |
| --latestepisode Lataa sarjan viimeisimmän jakson
| | mplayer -dumpaudio tiedosto.fla -dumpfile tiedosto.mp3 |
| --maxbitrate RATE Enimmäisbittivirta suoratoiston lataamiseen, kokonaisluku kt/s tai "best" tai "worst".
| | Korvaa <tt>tiedosto.fla</tt> yle-dl:n tallentaman tiedoston nimellä ja <tt>tiedosto.mp3</tt> haluamallasi mp3-tiedoston nimellä. |
| --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
| |
| </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]] | | *[[Youtube-dl]] |
| *[[Metacafe-dl]]
| |
| *[[nicovideo-dl]]
| |
|
| |
|
| ==Aiheesta muualla== | | ==Aiheesta muualla== |
| * [https://login.yle.fi/ Yle Passin] rekisteröityminen | | * [http://aur.archlinux.org/packages.php?ID=29792 archlinux] RTMPDump-YLE |
| | |
|
| |
|
| [[Luokka:Multimedia]] | | [[Luokka:Multimedia]] |
| [[Luokka:Suomi]]
| |
| [[Luokka:Komentorivin erikoisohjelmat]] | | [[Luokka:Komentorivin erikoisohjelmat]] |
| [[Luokka:Verkkopalvelut]]
| |