Ruutu – vanha ohje

Ruutu.fi nettisivulta voi katsoa telkkarissa nähtyjä Nelosen ohjelmia, ja ohjelmia voi ladata myös omalle koneelle esimerkiksi youtube-dl ohjelman avulla.

Jostain syystä kaikki videot eivät lataudu youtube-dl:llä, mutta silloin voi käyttää avconv komentoa.

Videoiden lataaminen sinänsä on helppoa, mutta oikean latausosoitteen löytäminen voi olla vaikeaa. Onneksi latauslinkki löytyy youtube-dl komennon avulla:

youtube-dl "videon url tähän" > ruutu-osoite.txt 2>&1

Esimerkki:

youtube-dl https://www.ruutu.fi/video/3201202 > ruutu-osoite.txt 2>&1

Tästä saa pelkän osoitteen komennolla:

sed -i 's/: could not find codec parameters//g' ruutu-osoite.txt && sed -i '$ d' ruutu-osoite.txt && grep http://nelonenmedia-ondemand ruutu-osoite.txt > latauslinkki

Nyt kun oikea latauslinkki on tiedossa, videon voi ladata komenolla:

avconv -y -i "latauslinkki tähän" -c copy "video.mp4"

Vielä helpompaa, jos tekee scriptin, jonka sisältä on:

#! /bin/bash
TIMESTAMP=$(date)
LINKKI=$(cat latauslinkki)
avconv -y -i $LINKKI -c copy "video-$TIMESTAMP.mp4"

Koko prosessi yhdellä scritillä menee seuraavasti kun myös zenity, xsel ja xterm paketit ovat asennettuna. Jos lataaja ei toimi Mint 18:ssa, niin poista libav-tools.


apt remove libav-tools

Vaihtoehtoinen tapa on poistaa 64-bittinen ffmpeg ja asentaa 32-bittinen ffmpeg.

apt purge ffmpeg
apt remove libav-tools
apt install ffmpeg:i386 ubuntu-restricted-extras

#!/bin/bash
TIMESTAMP=$(date)
LINKKI=$(cat latauslinkki)
inputStr=$(zenity --entry --title="RUUTU lataaja" --text="Laita videon osoite allaolevaan laatikkoon:")
linkki1=$(youtube-dl $inputStr > osoite.txt 2>&1 && echo "osoite löydetty" && egrep -w 'http://nelonenmedia-ondemand.akamaized.net|m3u8' osoite.txt)
linkki2=$(egrep -w 'http://nelonenmedia-ondemand.akamaized.net|m3u8' osoite.txt > osoite2.txt && sed --in-place '/information/d' osoite2.txt && sed -i 's/: could not find codec parameters//g' osoite2.txt)
cat osoite2.txt > latauslinkki
zenity --info --text="Laittamasi osoite = $inputStr"
sleep 5 && xterm -e avconv -y -i $LINKKI -c copy "video-$TIMESTAMP.mp4" && zenity --info --text "Video ladattu!" && rm latauslinkki osoite.txt osoite2.txt && xdg-open $PWD
exit 0

RUUTULATAAJA tekstitiedostona