A zene- és videólejátszók használatánál felmerülhet az, hogy egy idő után vagy adott tartalom végére érve, a lejátszó kapcsolja ki a gépet. Az időzítés mindig izgalmas téma. Van ahol, az alkalmazásban is megoldott, és van ahol, nem.
Most megmutatom, én mit használok a VLC lejátszónál a tévézés alkalmával...
Parancssor
A parancssor a Media Player Remote Interfacing Specification D-Bus (MPRIS) szolgáltatásra épül. Más lejátszók is használják, de a VLC is támogatja.
sleep 7200 ; dbus-send --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Stop ; sleep 5 ; pkill vlc ; dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.PowerOff" boolean:true
A parancssor magyarázata
-- a kikapcsolásig tartó idő beállítása, mely itt 7200 másodperc, azaz két óra (változtasd az értéket arra, amit szeretnél)
sleep 7200
-- MPRIS utasítás: itt a lejátszás megállítása (Stop)
dbus-send session --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Stop
... a parancssorban
- a --dest=org.mpris.MediaPlayer2.vlc rész a VLC beállítása az MPRIS-nek,
- a org.mpris.MediaPlayer2.Player.Stop rész a beállított VLC lejátszás megállítása az MPRIS-nél az imént beállított lejátszónak ((VLC).
Az alkalmazásokra vonatkozó, részletes MPRIS beállítások és tevékenységek például itt találhatóak.
-- öt másodperc késleltetés. Hagyok időt az előző folyamatnak.
sleep 5
-- a VLC bezárása (pkill). Nem túl elegáns, de nem találtam mást.
pkill vlc
-- a rendszer kikapcsolása a D-Bus használatával
dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.PowerOff" boolean:true
A leírást vélhetően bővítem.
Frissítés
A pkill vlc parancssor helyett egy elegánsabb megoldás.
dbus-send session --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Quit
És ekkor a teljes parancssor így néz ki:
Megfigyelhető, hogy mikor szükséges a session (felhasználó), és mikor a system (rendszer) D-Bus kapcsoló.
sleep 7200 ; dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Stop ; sleep 5 ; dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Quit ; dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 "org.freedesktop.login1.Manager.PowerOff" boolean:true
A VLC Qt keretrendszerben készül, ebből következően a GTK+ -s D-Feet D-Bus nézegetőben nem látjuk, de a Qt D-Bus Viewer (D-Bus nézegető) alkalmazásban igen.
Qt D-Bus Viewer
A parancssor felépítésének logikája lekövethető a képről (a Quit kiemelve, de látszik a Stop elhelyezkedése is):
Az elemek a nézegetőkben csak az alkalmazások indítása után jelennek meg, vagyis az alkalmazáshoz kapcsolt D-Bus folyamat indítása után (Connected to D-Bus.).
Minderről a Kaffeine lejátszóról készített leírásban is írok, itt.
A Kaffeine egy fapados videó lejátszó, és frontend-je a VLC lejátszót használja backend-ként.
Forrás:
- MPRIS D-Bus Interface Specification
https://specifications.freedesktop.org/mpris-spec/latest/ - mpris-spec /spec/org.mpris.MediaPlayer2.Player.xml (innen lestem a helyes VLC leállítást)
https://gitlab.freedesktop.org/hadess/mpris-spec/-/blob/master/spec/org.mpris.MediaPlayer2.Player.xml - VLC - mpris Namespace Reference
https://fossies.org/dox/vlc-3.0.16/namespacempris.html - MPRIS (Arch Wiki)
https://wiki.archlinux.org/title/MPRIS - PlayerCTL alkalmazás (másik megoldás lehet)
altdesktop / playerctl - Shutting down or rebooting over DBus programmatically from a non-root user
https://fhackts.wordpress.com/2019/08/08/shutting-down-or-rebooting-over-dbus-programmatically-from-a-non-root-user/ - python - DbusExamples
https://wiki.python.org/moin/DbusExamples - How to turn off a Linux system without root or sudo
https://tojaj.com/how-to-turn-off-a-linux-system-without-root-or-sudo/
Enjoy :-)
Az első parancssoros megoldás a systemctl poweroff parancssorral:
sleep 7200 ; dbus-send --session --type=method_call --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Stop ; sleep 5 ; pkill vlc ; systemctl poweroff
Hozzászólások
Esetleg használhatod még az
Beküldte unisz -
Értékelés:
Esetleg használhatod még az at parancsot is.
Akár fájlból is feltölthető a -f kapcsolóval.
Esetleg használhatod még az at alkalmazást
Beküldte kimarite -
Értékelés:
vagy
Példa:
További példák, érdekességek itt. (*)
Az at most nem jutott eszembe, viszont könnyebbség, hogy nem visszafelé kell számolni és úgy egyáltalán „számolgatni”, hanem adunk egy bizonyos időpontot.
A helyzet, hogy egy-egy tévéadás végén a szolgáltató nem ad olyan jelet, amit a Linux rendszer értelmezhetne, ezért „ilyen” az időzítés. A parancssorban fontos, hogy először megállítsam a lejátszást, és csak azután zárjam be a lejátszót: működő alkalmazást csak úgy nem zárok be. A műsorújság nem fájlból megy, hanem online kéri le a VLC.
Öröm megtapasztalni újra, és újra, hogy Linux rendszeren több lehetőségünk is van egy feladat megoldására.
Esetleg használhatod még az at alkalmazást
Beküldte 444tibi -
Értékelés:
Faék egyszerűen pár kattintással beállítok 1 órát, 2 órát, akár 1óra 27 percet és ok. Megjegyzik, jellemző nálam az 1 óra így 2 kattintással már fut is az időzített kikapcsolás.
Igaz nem állítja le se a médiaplayeremet se a tv szoftveremet de mivel itt is és a parancssorosba amit közreadtál, egyformán kill történik ezért szerintem mindegy hogy leállt a lejátszás vagy sem, legyilkolja a programot.
Winen 10 éve az AutoShutdown portable, Linuxokon meg a KShutdown. KDE alatt van még egy pilótavizsgás időzítő is de az nekem már magas, az tud parancsot futtatni, kávét főzni, talán még fel is porszívózik de azt nem használom, bonyolult.
Fel lehet venni a sokoldalúság és több irányból megközelítés közé a KShutdown szoftvert is.
https://mega.nz/file/QgJlSIgZ#fA-f7ib8MRT8BQBkICt0iuKvfzHZ5etKnVc_GP6m7i8
KShutdown | KDE
Beküldte kimarite -
Értékelés:
Szerinted :). Szerintem nem, mert nem mindegy, hogy a lemezről éppen olvas és az átmeneti tárba ír a rendszer egy videót például. Nekem sérült így meg zenefájlom.
Továbbá, a leírásban nem is nagyon van elrejtve a lejátszók többféle vezérelhetőségének gyakorlata, de a részletekről bővebben még nem írtam. Igaz, te például nem kérdezted, elsiklottál efelett. :)
Winen 10 éve az AutoShutdown portable, Linuxokon meg a KShutdown.
KDE alatt van még egy pilótavizsgás időzítő is de az nekem már magas, az tud parancsot futtatni, kávét főzni, talán még fel is porszívózik de azt nem használom, bonyolult.
Hosszú mondatok ismét, ami nem baj, de: mi a neve ennek a pilótavizsgás alkalmazásnak?
Fel lehet venni a sokoldalúság és több irányból megközelítés közé a KShutdown szoftvert is.
Kikapcsolás, újraindítás, kijelentkezés. Visszaszámláló mutatása: ilyet én is tudok, de nem volt cél (a linkelt oldalon van ilyen is). Pontos időben: az at tudja, de tulajdonképpen sleep is, csak számolni kell - én saccperkábéra teszem, amikor már biztosan alszom ;).
Röviden: gagyi a köbön, persze, grafikus körettel, azaz semmi különleges. :))
Az AutoShutdown portable alkalmazást (Windows) nem ismerem. De már elnézést, ha összefoglalót írok a témáról. Windows rendszerre boldog, boldogtalan alkalmazásokat ír, melyek lényege:
KShutdown |
Beküldte 444tibi -
Értékelés:
Erre nem gondoltam, 10 éve így alszok el hogy megy egy videó vagy a tv tunerrel nézem a műsort.
Lejátszásnál csak olvasás történik, nem tudom hogyan sérülhet meg.
De betetted a bogarat a fülembe.
"mi a neve ennek a pilótavizsgás alkalmazásnak?"
Pontosan nem tudom mert évekkel ezelőtt töröltem, amiket az életbe nem fogok használni azokat el szoktam távolítani minden rendszeremen. KdeTimer, ktimer, így emlékezetből de lehet tévedek.
Annyira emlékszek hogy feladatokat lehetett benne létrehozni, akár tucatnyit is és mindegyiket másodpercre paraméterezni hogy mit hajtson végre. Nekem bonyolult volt.
"Az AutoShutdown portable alkalmazást (Windows) nem ismerem. De már elnézést, ha összefoglalót írok a témáról. Windows rendszerre boldog, boldogtalan alkalmazásokat ír, melyek lényege:
Ez egy 2010-es azaz 12 éves portable időzítő. Ha akkoriban már bele tudtak tenni keyloggert, reklámot bármit 560kB méretbe akkor én 12 éve egy trójait használok a pc kikapcsolására. Nem tartom valószínűnek mert még a netre se akart 12 év alatt egyszer se kimenni, azt jelezte volna a tűzfal.
Arra amire a neve utal, Auto Shutdown, beállított idő után lelövi a gépet, tökéletesen alkalmas.
Mint ahogy a KShutdown is.
Ma is a Kshutdown fogja kikapcsolni a gépemet, van egy olyan érzésem.
Vagy kipróbálom a Te parancsodat.
Olyankor mi van ha a böngészőben YT vagy Indavideó filmre alszok el, akkor azt hogyan zárom be szabályosan, vagy az más tészta, azt lehet gyilkolászni?
Vagy, én nem mediaplayerbe, a VLC-be hanem a Kaffeine DVB tv szoftverre alszok el. Annak sem baj a kill?
KShutdown | ...
Beküldte kimarite -
Értékelés:
KShutdown |
Beküldte T.István -
Értékelés:
Arra amire a neve utal, Auto Shutdown, beállított idő után lelövi a gépet, tökéletesen alkalmas.
Meg a Windwos saját beépített ütemezője is tudja, minek külön program oda:? Ez utóbbit meg be lehet állítani minden napra, vagy akár egyéb ismétlődő időszakokra is.
KShutdown |
Beküldte 444tibi -
Értékelés:
Igy meg 2 kattintas es 1 ora mulva kikapcsol a gep. Ha esetleg felorat vagy masfelet akrok beallitani akkor az meg nehany kattintas. Ennel egyszerubbet nem tudok elkepzelni.
A pkill vlc parancssor helyett egy elegánsabb megoldás.
Beküldte kimarite -
Értékelés:
A leírás frissítve a fenti tekintetben.
Új leírás a témakörben:
Időzített Kaffeine kikapcsolás és a rendszer leállítása
A pkill vlc parancssor helyett egy elegánsabb megoldás.
Beküldte 444tibi -
Értékelés:
A pkill vlc parancssor helyett egy elegánsabb megoldás.
Beküldte kimarite -
Értékelés:
Minderről a Kaffeine lejátszóról készített leírásban is írok, itt.
a hozzászólás ennek előtte írtam.
Mert a D-Bus kifejezést betettem a címbe később, hogy az lényegre törőbb legyen.
Örülök, hogy figyelsz te is. Kösz. :-)
( a felhasználó létezik amúgy ;),persze, semmi köze a leíráshoz )