Muokkaus 25.8.2025: Nyt jostain syystä suurimmalla osalta kanavista hyvin toimivat m3u8 lähetysmuodot on rikottu, joten ainakin väliaikaisena viritelmänä on käyttää Chromium selainta web-app modena kanavien videoiden toistoon. Scripti vaatii siis Chromium selaimen ja yad ohjelma asennettuna.
#!/bin/bash
##
## RJP 4.1.2024
## Scripti, jolla voit katsoa eri werkossa olevia TV-kanavia
## 6.1.2024 lisätty National Geographic
## 12.1.2024 Nelonen lisätty
## 28.1.2024 Uusi ulkoasu
## paketit yad ja mpv tulee olla asennettuna
## 2.2.2024 Koska tekstitykset eivät toimi YLE:n kanavilla IPTV:ssä, niin sitä varten on lisätty suomalaisella selostuksella (dubbauksella) varustetut YLE:n kanavat.
# 17.2.2024 Kaikki kanavat näyttävät toimivan jälleen, eli ilmeisesti vika oli jollain palvelimella, joka tarjosi tvkaistan kanavapaketteja?
##
## Hyvin toimivat m3u8 lähetysmuodot on rikottu monelta kanavalta, joten tällä voi katsoa netti-TV:itä jos Chromium selain on asennettu
##
YLE_TV=$(echo "https://areena.yle.fi/suorat")
TV3=$(echo "https://www.tvkaista.org/mtv3/suora")
TV4=$(echo "https://www.tvkaista.org/nelonen/suora")
TV5=$(echo "https://www.tvkaista.org/tv5/suora")
TV6=$(echo "https://www.tvkaista.org/kutonen/suora")
AVA=$(echo "https://www.tvkaista.org/ava/suora")
FRII=$(echo "https://www.tvkaista.org/frii/suora")
NG=$(echo "https://www.tvkaista.org/national-geographic/suora")
STAR=$(echo "https://www.tvkaista.org/star-channel/suora")
EVEO=$(echo "https://www.tvkaista.org/tapahtumatv-eveo/suora")
SUB=$(echo "https://www.tvkaista.org/sub/suora")
LIV=$(echo "https://www.tvkaista.org/liv/suora")
TLC=$(echo "https://www.tvkaista.org/tlc/suora")
ALFA=$(echo "https://www.permanto.fi/embed/livetv")
EVEO=$(echo "https://www.tvkaista.org/tapahtumatv-eveo/suora")
HERO=$(echo "https://www.ruutu.fi/channel/20")
JIM=$(echo "https://www.tvkaista.org/jim/suora")
JIM=$(echo "https://www.tvkaista.org/jim/suora")
yad --form --columns=5 --width=500 --center --title="Jonkinlainen netti-TV tämäkin" --text="VALITSE KANAVA, JOTA HALUAT KATSOA TAI KUUNNELLA:" \
\
--field="YLE TV1 TV2 ja TEEMA ":fbtn "chromium --app="$YLE_TV" "$@" &" \
--field="Nelonen":fbtn "chromium --app="$TV4" "$@" &" \
--field="AVA":fbtn "chromium --app="$AVA" "$@" & " \
--field="Frii":fbtn "chromium --app="$FRII" "$@" & " \
--field="Kutonen":fbtn "chromium --app="$TV6" "$@" &" \
--field="MTV3":fbtn "chromium --app="$TV3" "$@" & " \
--field="Sub":fbtn "chromium --app="$SUB" "$@" & " \
--field="TLC":fbtn "chromium --app="$TLC" "$@" & " \
--field="TV5":fbtn "chromium --app="$TV5" "$@" &" \
--field="National Geographic":fbtn "chromium --app="$NG" "$@"" \
--field="ALFA TV":fbtn "chromium --app="$ALFA" "$@" &" \
--field="EVEO":fbtn "chromium --app="$EVEO" "$@" &" \
--field="HERO":fbtn "chromium --app="$HERO" "$@" &" \
--field="JIM":fbtn "chromium --app="$JIM" "$@" &" \
--field="Radio 1":fbtn "mpv https://yleradiolive.akamaized.net/hls/live/2027672/in-YleRadio1/master.m3u8" \
--field="Yle X":fbtn "mpv https://yleradiolive.akamaized.net/hls/live/2027674/in-YleX/master.m3u8 &" \
--field="Radio Suomi":fbtn "mpv https://yleradiolive.akamaized.net/hls/live/2027675/in-YleRS/master.m3u8 &" \
--field="YLE Klassinen":fbtn "mpv https://yleradiolive.akamaized.net/hls/live/2027676/in-YleKlassinen/master.m3u8 &" \
--field="LOPETA RADION KUUNTELU":fbtn "killall mpv" \
--field="YLE TV1 suomeksi dubattuna":fbtn "bash -c 'mpv https://yletv.akamaized.net/hls/live/622365/yletv1fin/yletv_video270p.m3u8 & mpv https://yletv.akamaized.net/hls/live/622365/yletv1fin/yletv_audio3.m3u8; exec bash' &" \
--field="YLE TV2 suomeksi dubattuna":fbtn "bash -c 'mpv https://yletv.akamaized.net/hls/live/622366/yletv2fin/yletv_video270p.m3u8 & mpv https://yletv.akamaized.net/hls/live/622366/yletv2fin/yletv_audio3.m3u8; exec bash' &" \
--field="YLE Teema suomeksi dubattuna":fbtn "bash -c 'mpv https://yletv.akamaized.net/hls/live/622367/yletvteemafemfin/yletv_video270p.m3u8 & mpv https://yletv.akamaized.net/hls/live/622367/yletvteemafemfin/yletv_audio3.m3u8; exec bash' &" \
--field="LOPETA ÄÄNI ja VIDEO":fbtn "killall mpv" \
--button=LOPETA:1
=================================================================
Muokkaus 13.3.2025: Suurin osa kanavista on ottanut käyttöön melkein päivittäin vaihtuvan atob-osoitteen, jonka seurauksena ohjelmaan on täytynyt lisätä atob-osoitteen purku.
IPTV-FI on ohjelma tai scripti, jonka avulla voi katsoa ja kuuneella suomalaisia verkossa olevia TV- ja radiokanavia. Jos ohjelman suorittaa pelkkänä scritinä, niin silloin paketit yad, yt-dlp, mpv ja ffmpeg pitää olla asennettuna.
Koska streamin puskurointi ja atob-osoitteen purkaminen vie aikaa, niin sen seurauksena joidenkin videoiden käynnistys on hidasta.
IPTV-FI-deb-paketti-ja-scripti.zip
IPTV-FI-rpm-paketti-ja-scripti.zip
IPTV2-FI on Intelin näytönohjaimelle tehty versio, joka kuormittaa vähemmän prosessoria (--vo=xv --hwdec=vaapi
).
IPTV2-FI-deb-paketti-ja-scripti.zip
IPTV2-FI-rpm-paketti-ja-scripti.zip
Koodi:
#!/bin/bash
##
## RJP 12.3.2025
## Scripti, jolla voit katsoa ja kuunnella eri verkossa olevia TV-kanavia
## 16.3.2025 Typos corrected and --vo=gpu --hwdec=vaapi setting set for better function for MPV
mkdir -p $HOME/.config/netti-TV/vanhat && \
cd $HOME/.config/netti-TV && \
ls -l | awk '{print $6,$7,$8,$9}' && \
stat -c %y $HOME/.config/netti-TV | cut -d" " -f1 > vanha && \
date "+%Y-%m-%d" > nykyinen && \
pwd && \
if [[ $(cat vanha) == $(cat nykyinen) ]]
then
echo "toimivia linkkejä"
else
mkdir -p vanhat && mv *.txt vanhat
fi
LAATU=$(echo "--vo=gpu --hwdec=vaapi")
#TV1=
#TV2=
#TEEMA=
TV3=$(echo "https://www.tvkaista.org/mtv3/suora")
TV4=$(echo "https://www.tvkaista.org/nelonen/suora")
TV5=$(echo "https://www.tvkaista.org/tv5/suora")
TV6=$(echo "https://www.tvkaista.org/kutonen/suora")
AVA=$(echo "https://www.tvkaista.org/ava/suora")
FRII=$(echo "https://www.tvkaista.org/frii/suora")
NG=$(echo "https://www.tvkaista.org/national-geographic/suora")
STAR=$(echo "https://www.tvkaista.org/star-channel/suora")
EVEO=$(echo "https://www.tvkaista.org/tapahtumatv-eveo/suora")
SUB=$(echo "https://www.tvkaista.org/sub/suora")
##exec "$BASH" "$0" "$@"
#AIKA=$(date +"%Y-%m-%d-%M-%S")
yad --form --columns=5 --width=500 --text-align=center --title=$"IPTV FI" --text="
VALITSE KANAVA, JOTA HALUAT KATSOA TAI KUUNNELLA. JOTKIN KANAVAT LATAUTUVAT HITAASTI, KOSKA OSOITTEIDEN PURKAMINEN JA VIDEON PUSKUROINTI VIE AIKAA! JOS KANAVALLA EI OLE STREAMIA, NIIN SILLOIN EI TIETENKÄÄN OLE VIDEOA TOISTETTAVAKSI (ESIMERKIKSI YÖLLÄ).
" \
\
--field="YLE TV1":fbtn "mpv $LAATU https://yletv.akamaized.net/hls/live/622365/yletv1fin/index.m3u8 & " \
--field="YLE TV2":fbtn "mpv $LAATU https://yletv.akamaized.net/hls/live/622366/yletv2fin/index.m3u8 & " \
--field="YLE TEEMA":fbtn "mpv $LAATU https://yletv.akamaized.net/hls/live/622367/yletvteemafemfin/index.m3u8 &" \
--field="MTV3":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/TV3.txt ]; then yt-dlp --get-url $TV3 > $HOME/.config/netti-TV/TV3.txt && mpv $TV3 $LAATU $(cat $HOME/.config/netti-TV/TV3.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/TV3.txt); fi; exec bash' &" \
--field="Nelonen":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/TV4.txt ]; then yt-dlp --get-url $TV4 > $HOME/.config/netti-TV/TV4.txt
mpv $TV4 $LAATU $(cat $HOME/.config/netti-TV/TV4.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/TV4.txt); fi; exec bash' &" \
--field="Kutonen":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/TV6.txt ]; then yt-dlp --get-url $TV6 > $HOME/.config/netti-TV/TV6.txt && mpv $TV6 $LAATU $(cat $HOME/.config/netti-TV/TV6.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/TV6.txt); fi; exec bash' &" \
--field="Sub":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/SUB.txt ]; then yt-dlp --get-url $SUB > $HOME/.config/netti-TV/SUB.txt && mpv $SUB $LAATU $(cat $HOME/.config/netti-TV/SUB.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/SUB.txt); fi; exec bash' &" \
--field="TV5":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/TV5.txt ];then yt-dlp --get-url $TV5 > $HOME/.config/netti-TV/TV5.txt && mpv $TV5 $LAATU $(cat $HOME/.config/netti-TV/TV5.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/TV5.txt); fi; exec bash' &" \
--field="National Geographic":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/NG.txt ]; then yt-dlp --get-url $NG > $HOME/.config/netti-TV/NG.txt && mpv $NG $LAATU $(cat $HOME/.config/netti-TV/NG.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/NG.txt); fi; exec bash' &" \
--field="AVA":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/AVA.txt ]; then yt-dlp --get-url $AVA > $HOME/.config/netti-TV/AVA.txt && mpv $AVA $LAATU $(cat $HOME/.config/netti-TV/AVA.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/AVA.txt); fi; exec bash' &" \
--field="FRII":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/FRII.txt ]; then yt-dlp --get-url $FRII > $HOME/.config/netti-TV/FRII.txt && mpv $FRII $LAATU $(cat $HOME/.config/netti-TV/FRII.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/FRII.txt); fi; exec bash' &" \
--field="Star":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/STAR.txt ]; then yt-dlp --get-url $STAR > $HOME/.config/netti-TV/STAR.txt && mpv $STAR $LAATU $(cat $HOME/.config/netti-TV/STAR.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/STAR.txt); fi; exec bash' &" \
--field="EVEO":fbtn "bash -c 'if [ ! -f $HOME/.config/netti-TV/EVEO.txt ]; then yt-dlp --get-url $EVEO > $HOME/.config/netti-TV/EVEO.txt && mpv $EVEO $LAATU $(cat $HOME/.config/netti-TV/EVEO.txt);else mpv $LAATU $(cat $HOME/.config/netti-TV/EVEO.txt); fi; exec bash' &" \
--field="Radio 1":fbtn "mpv $LAATU https://yleradiolive.akamaized.net/hls/live/2027672/in-YleRadio1/master.m3u8" \
--field="Yle X":fbtn "mpv $LAATU https://yleradiolive.akamaized.net/hls/live/2027674/in-YleX/master.m3u8 &" \
--field="Radio Suomi":fbtn "mpv $LAATU https://yleradiolive.akamaized.net/hls/live/2027675/in-YleRS/master.m3u8 &" \
--field="YLE Klassinen":fbtn "mpv $LAATU https://yleradiolive.akamaized.net/hls/live/2027676/in-YleKlassinen/master.m3u8 &" \
--field="LOPETA RADION KUUNTELU":fbtn "killall mpv" \
--field="YLE TV1 suomeksi dubattuna":fbtn "bash -c 'mpv $LAATU https://yletv.akamaized.net/hls/live/622365/yletv1fin/yletv_video270p.m3u8 & mpv $LAATU https://yletv.akamaized.net/hls/live/622365/yletv1fin/yletv_audio3.m3u8; exec bash' &" \
--field="YLE TV2 suomeksi dubattuna":fbtn "bash -c 'mpv $LAATU https://yletv.akamaized.net/hls/live/622366/yletv2fin/yletv_video270p.m3u8 & mpv $LAATU https://yletv.akamaized.net/hls/live/622366/yletv2fin/yletv_audio3.m3u8; exec bash' &" \
--field="YLE Teema suomeksi dubattuna":fbtn "bash -c 'mpv $LAATU https://yletv.akamaized.net/hls/live/622367/yletvteemafemfin/yletv_video270p.m3u8 & mpv $LAATU https://yletv.akamaized.net/hls/live/622367/yletvteemafemfin/yletv_audio3.m3u8; exec bash' &" \
--field="LOPETA ÄÄNI ja VIDEO":fbtn "killall mpv" \
--field="Virkistä kanavatiedostot":fbtn "bash -c 'cd $HOME/.config/netti-TV && mv *.txt vanhat ; exec bash' " \
--field="Avaa uusi ikkuna (jos video ei käynnisty)":fbtn "bash -c 'exec $0; exec bash' & " \
--button=EXIT:1
Lue myös: https://puolanka.info/goto/antix-tv-automaattinen-kanavahaku-scripti/