Jag kollade på Agenda i dag, vilket gjorde att jag missade den nya serien Äkta människor. Eftersom den handlar om robotar, vilket jag klischéartat nog gillar, ville jag inte missa den. Eftersom svtplay kör flash går serien inte heller att se på min smarta tv. I stället fick jag plocka i hop ett skript som tankar hem flv-filen åt mig och transkodar den till mpeg så att jag kan streama den med dlna till min tv. För att köra skriptet behöver du rtmpdump och vlc:
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Usage: $0 http://linktosvtpl.ay \"name of output file\""
exit 1
fi
link="$1" #first arg is link
output="$2" #Second args is filename
html=`wget -qO- "$link"`
stream=`echo "$html" | egrep -o http.*.flv | uniq | head -n 1`
input="$stream" #If that work it was a http link
if [ "$stream" == "" ]; then #else try rtmp
stream=`echo "$html" | egrep -o rtmp[^,]+ | sort -r | uniq | head -n 1`
rtmpdump -r "$stream" -o "$output.flv" #dump the stream
input="$output.flv" #set input to dump
fi
vlc -I dummy "$input" :sout="#transcode{vcodec=mp2v,vb=4096,acodec=mp2a,ab=192,scale=1,channels=2,deinterlace,audio-sync}:std{access=file, mux=ps,dst=$output}" vlc://quit #and transcode to mpg
if [ "$iput" =~ "http.*" ]; then #Do some clean up
:
else
rm "$input"
fi
exit 0There you have it folks. Skriptet kan sedan köras så här:
ripsvtplay.sh http://svtplay.se/v/2683398/akta_manniskor/del_1_av_10 "Äkta människor del 1.mpg"

