Muokataan sivua Yle-dl

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
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]
| lähdekoodi[https://github.com/aajanki/yle-dl https://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''' (aikaisemmalta nimeltään RTMPDump-YLE) 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 [http://areena.yle.fi/nettiradiot Areenan nettiradioita] ja [http://areena.yle.fi/live suoria lähetyksiä]. Se toimii Linuxilla, Windowsilla ja Mac OS X:llä.
 
yle-dl perustuu Andrej Stepanchukin [[RTMPDump]]-ohjelmaan, joka puolestaan perustuu Team Boxeen RTMPDumper-ohjelmakoodeihin. JSON-viestien jäsentämiseen käytetään json-c-[[kirjasto]]a.


Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön.
Ylen ohjelmien lataaminen on sallittua vain yksityiseen käyttöön.
Rivi 19: Rivi 23:
===Riippuvuudet===
===Riippuvuudet===


* Python 3.6+
* python (2.6 tai uudempi)
* pip
* pycrypto
* ffmpeg (tekstitys toimii vain ffmpegin versiolla 4.1 tai sitä uudemmilla)
* PHP-tulkki
* setuptools (jos asennat lähdekoodeista)
* PHP-laajennukset: bcmath, curl, mcrypt ja SimpleXML


Joidenkin harvojen ohjelmien lataamiseen tarvitaan lisäksi:
Areenan radio-ohjelmien lataamiseen tarvitaan lisäksi:


* wget
* rtmpdump (2.4 tai uudempi)


===Asennus sekä päivitys===
Ota PHP-laajennukset käyttöön lisäämällä seuraavanlaiset rivit oikeine
Ohjelman voi asentaa myös ''[[pip]]''in avulla. Se löytyy myös [[AUR]]:sta Ja [[Ubuntu]]sta.
polkuineen php.ini-tiedostoon
(https://secure.php.net/manual/en/configuration.file.php):


Vaaditut kirjastot ja ohjelmat:
extension=/polku/curl.so
python (3.6 tai uudempi), python-pip, ffmpeg
extension=/polku/mcrypt.so


{{oikeudet}}
===Asennus===
# pip3 install --user --upgrade yle-dl
Ohjelman [[lähdekoodi]]paketin voi ladata sen [http://aajanki.github.io/yle-dl/ kotisivuilta]. Ladattu lähdekoodi täytyy tämän jälkeen [[kääntäminen|kääntää]].  
 
====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>.
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 77: Rivi 79:


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.flv


Videon voi putkittaa suoraan [[mpv]]n seuraavasti:
Videon voi putkittaa suoraan [[Mplayer]]iin seuraavasti:
   
   
  yle-dl https://areena.yle.fi/1-444655 -o - | mpv -
  yle-dl http://areena.yle.fi/video/261405 -o - | mplayer -


Muita valitsimia:
Muita valitsimia:
<pre>
*'''--resume''' - jatkaa aikaisemmin keskeytynyttä latausta
optional arguments:
*'''-o''' - kohdetiedosto
  -h, --help            näyttää tämän pikaohjeen
*'''--ylePassi YLEPassi-eväste''' - eväste
  -V, --verbose, --debug
*'''--live''' - Suoran YleX lähetyksen lataaminen
                        Näyttää laajennetun virheenjäljityksen
*'''--help''' - pikaohje
  -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
</pre>


== 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.
Areenan video- ja äänitallenteet lähetetään FLV-säiliömuodossa, jota harva mediasoitin tukee suoraan. FLV:n sisällä on kuitenkin H.264-videoraita ja AAC-ääniraita, joita useimmat soittimet osaavat purkaa, kun säiliömuodon vain vaihtaa MP4:ksi. Pelkkää ääntä sisältävissä radiotallenteissa (.fla-pääte) on AAC:n sijaan MP3-ääniraita, joka toimii FLV:stä ulos purettuna sellaisenaan.


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.
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 MKV-säiliön sisällön ja siirtää sen sellaisenaan MP4-säiliöön:
[[ffmpeg]] on kätevä komentorivityökalu, joka osaa mm. lukea FLV-säiliön sisällön ja siirtää sen sellaisenaan MP4-säiliöön:


  [[ffmpeg]] -i tiedosto.mkv -vcodec copy -acodec copy tiedosto.mp4
  [[ffmpeg]] -i tiedosto.flv -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>
Korvaa <tt>tiedosto.flv</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.flv</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ä:
Olettaen että FLV tai FLA -tiedostossa on MP3-ääniraita, sen voi kopioida ulos säiliöstä [[ffmpeg]]illä:


  [[ffmpeg]] -i tiedosto.mkv -vn -c:a libmp3lame tiedosto.mp3
  [[ffmpeg]] -i tiedosto.fla -acodec copy tiedosto.mp3
 
Saman voi tehdä myös [[MPlayer]]-ohjelmalla:
[[mplayer]] -dumpaudio tiedosto.fla -dumpfile tiedosto.mp3


=== Tiedoston sisällön tutkiminen ===
=== Tiedoston sisällön tutkiminen ===
Rivi 160: Rivi 123:
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.mkv
  [[ffmpeg]] -i tiedosto.flv


Se kertoo Areenasta ladatusta videosta seuraavaa:
Se kertoo Areenasta ladatusta videosta seuraavaa:
 
  Input #0, <b>flv</b>, from 'Uusi päivä (S): Osa 143-2012-01-17-20:00:00.flv':
  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:
   Metadata:
    duration        : 1668
     ENCODER        : Lavf58.20.100
    moovPosition    : 28
  Duration: 00:27:47.18, start: 0.000000, bitrate: 4036 kb/s
    width          : 640
    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)
    height          : 360
    Metadata:
    videocodecid    : avc1
      VARIANT_BITRATE : 4243601
    audiocodecid   : mp4a
      DURATION        : 00:27:47.181000000
    avcprofile     : 77
    Stream #0:1: Audio: <b>aac</b> (LC), 44100 Hz, stereo, fltp (default)
    avclevel        : 30
    Metadata:
    aacaot          : 2
      VARIANT_BITRATE : 4243601
    videoframerate  : 25
      DURATION        : 00:27:47.161000000
    audiosamplerate : 48000
    Stream #0:2(fi): Subtitle: webvtt (default)
    audiochannels  : 2
    Metadata:
  Duration: 00:27:47.54, start: 0.000000, bitrate: N/A
      VARIANT_BITRATE : 4243601
    Stream #0.0: Video: <b>h264 (Main)</b>, yuv420p, 640x360 [PAR 1:1 DAR 16:9], 25 tbr, 1k tbn, 50 tbc
      COMMENT        : ohjelmatekstitys
    Stream #0.1: Audio: <b>aac</b>, 48000 Hz, stereo, s16
      DURATION        : 00:27:37.920000000
At least one output file must be specified


==Jakelukohtainen asennus==
==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===
===Fedora, RHEL, CentOS===
Rivi 203: Rivi 159:


==Aiheesta muualla==
==Aiheesta muualla==
* [http://aajanki.github.io/yle-dl/ yle-dl kotisivu]
* [https://aur.archlinux.org/packages/yle-dl/ Arch Linux AUR - yle-dl]
* [http://mandriva-fi.org/wiki/Yhteis%C3%B6n_tarjoamat_lataukset#RTMPDump-YLE Mandriva] yle-dl
* [https://login.yle.fi/ Yle Passin] rekisteröityminen
* [https://login.yle.fi/ Yle Passin] rekisteröityminen


Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetyt mallineet:

Tämä sivu kuuluu seuraavaan piilotettuun luokkaan:

Noudettu kohteesta ”https://www.linux.fi/wiki/Yle-dl