Torrent, multimédia
Feladat: a hálóban levő TV-n nézni a másik szobában a málna által letorrentezett filmet
Választott megoldás: Transmission torrent kliens, minidlna DLNA-server
Hogyan működik
1) letöltöm az első oldalon már linkelt torrent file-t tetszőleges gépen
2) megnyitom a málnán futó Transmission oldalát egy böngészőben
3) a letöltött torrent file-t feltöltöm a böngészőn keresztül (alternatív megoldásként le sem töltöm a torrent file-t, hanem ugyanitt közvetlenül a linket adom meg rá)
4) a TV-n kiválasztom forrásként a málnán futó DLNA servert, majd azon a filmet, elindítom, nézem, örülök. A film csak akkor jelenik meg a listában ha a letöltés befejeződött, tehát nem kell attól tartani hogy a közepénél leáll a nem teljesen letöltött film.
5) ha megnéztem a filmet és a letöltött adatmennyiség többszörösét visszaosztottam, akkor:
5a) ha annyira tetszett a kövér nyúl hogy meg akarom tartani helyileg is a filmet, hogy bármikor megnézhessem, akkor a Transmission felületén eltávolítom a torrentet, majd bejelentkezek ssh-n, és a filmet átmozgatom a "megtartott filmek" könyvtárába
5b) a Transmission webes felületén törlöm a torrentet
Megvalósítás
Csomagok felrakása és a daemonok engedélyezése:
pacman -S transmission-cli minidlna
systemctl enable transmission
systemctl enable minidlna
Hirdetés
A Transmissiont elindítva létrehozza a config file-ját, amit aztán módosítani kell az igényeknek megfelelően, ehhez viszont előtte le is kell állítani különben felülírja a változtatásokat (illetve menet közben is rá lehet venni a config újraolvasására, de ne bonyolítsuk...)
systemctl start transmission
systemctl stop transmission
A /var/lib/transmission/.config/transmission-daemon/settings.json file kell nekünk, itt a legegyszerűbb megoldás egy házi hálózatnál minden ip-címet engedélyezni az "rpc-whitelist" sor módosításával:
"rpc-whitelist": "*.*.*.*",
Ezzel bármelyik, ugyanazon a hálózaton levő gépről elérjük a torrent klienst.
Be kell állítani a letöltési könyvtárat is, amit persze már létrehoztunk kézzel a HDD-n:
"download-dir": "/mnt/store/Download",
Ahhoz hogy a letöltött Big Buck Bunnyt meg is lehessen nézni a TV-n vagy bármilyen, DLNA-t kezelni képes lejátszón (például wc-n üldögélve telefonon :D) be kell állítani a DLNA servert is, mégpedig a /etc/minidlna.conf szerkesztésével. A legfontosabb megmondani neki hogy hol találja a letöltött file-okat:
media_dir=/mnt/store/Download
Ha alapból nem úgy van, mindenképp javasolt a user= kezdetű sort is kikommentelni (egy # karaktert biggyesztve a sor elé), ellenkező esetben jogosultsági problémákat tapasztaltam az inotify-nál, így pedig nem fogja észrevenni ha befejeződik egy letöltés.
Érdemes lehet még a notify_intervalt rövidebbre venni és a friendly_name-et átírni ízlés szerint.
A végére azért indítsuk is el őket:
systemctl start transmission
systemctl start minidlna
Fejlesztési lehetőségek
1) Hasznos lenne ha a TV-n külön DLNA serverként látnám a frissen letöltött, és a "későbbre eltett" filmeket is.
2) Feliratos filmnél ha a letöltött csomagban nincs benne, jelenleg megkeresem számítógépről a megfelelő feliratfile-t, majd azt vagy letöltöm a málnán ssh-n belépve, vagy a számítógépen letöltve ftp-n felmásolom. Ez elég kényelmetlen, elképzelhető hogy csinálok erre is valami könnyen kezelhető megoldást.
A Raspberry korlátai miatt "fullra kihajtva" megjelenhetnek problémák, ez konkrétan annyit jelent hogy 1080p film DLNA-n keresztül lejátszva már szaggat HA ezzel egyidőben erős hálózati/HDD tevékenységet is végez a szerkezet. A 720p még így is problémamentes, illetve normális terhelés mellett az 1080p is tökéletesen működik.
A cikk még nem ért véget, kérlek, lapozz!