| PLAYERCTL(1) | General Commands Manual | PLAYERCTL(1) |
نام (NAME)
playerctl —
کنترل
پخشکنندههای
چندرسانهای
از طریق MPRIS
خلاصه دستور (SYNOPSIS)
playerctl [-aFhlV]
[-f FORMAT]
[-i NAME]
[-p NAME]
command
توضیحات (DESCRIPTION)
ابزار
playerctl
پخشکنندههای
چندرسانهای
دارای
قابلیت MPRIS را
کنترل
میکند.
علاوه بر
ارائهٔ
امکان
کنترل پخش،
مکث و توقف،
playerctl
همچنین از
رفتن به
قطعهٔ قبلی
و بعدی،
قابلیت
جستوجو به
جلو و عقب در
قطعه، و
کنترل
میزان صدا
پشتیبانی
میکند.
playerctl
همچنین از
نمایش
متاداده
(مانند
هنرمند،
عنوان،
آلبوم) برای
قطعهٔ
کنونی، و
نمایش
وضعیت
پخشکننده
پشتیبانی
میکند.
پخشکنندههایی
که میتوان
با استفاده
از playerctl
آنها را
کنترل کرد
شامل
audacious(1) ،
cmus(1) ،
mopidy(1) ،
mpd(1) ،
quodlibet(1) ،
rhythmbox(1) ،
vlc(1) و
xmms2(1)
میشوند. با
این حال، هر
پخشکنندهای
که مشخصات
واسط MPRIS را
پیادهسازی
کند، از
جمله
مرورگرهای
وب،
میتواند
با استفاده
از playerctl
کنترل شود.
همچنین Playerctl
به همراه یک
دیمِن به
نام playerctld
ارائه
میشود که
فعالیتهای
پخشکنندههای
چندرسانهای
را رهگیری
میکند.
هنگامی که
playerctld در حال
اجرا باشد،
دستورهای
playerctl بر روی
پخشکنندهای
با
جدیدترین
فعالیت عمل
خواهند کرد.
برای
راهاندازی
دیمِن،
دستور playerctld
daemon را اجرا
کنید.
گزینهها به شرح زیر هستند:
-a,--all-players- اعمال دستور بر روی تمام پخشکنندههای در دسترس.
-F,--follow- مسدود کردن فرایند و چاپ پرسوجوی بهروزشده هنگام تغییر آن.
-fFORMAT,--formatFORMAT- تنظیم خروجی دستور جاری به FORMAT. بخش Format Strings را ببینید.
-h,--help- چاپ این راهنما و سپس خروج.
-iNAME,--ignore-playerNAME- نادیده گرفتن پخشکنندهٔ مشخص NAME. میتوان چندین پخشکننده را در یک فهرستِ جداشده با ویرگول مشخص کرد.
-l,--list-all- فهرست کردن نامهای پخشکنندههای در حال اجرایی که قابل کنترل هستند.
-pNAME,--playerNAME- کنترل پخشکنندهٔ مشخص NAME. میتوان چندین پخشکننده را در یک فهرستِ جداشده با ویرگول مشخص کرد. پیشفرض بر روی اولین پخشکنندهٔ در دسترس است. نام "name" هم با "name" و هم با "name.{INSTANCE}" مطابقت دارد. علاوه بر این، نام "%any" با هر پخشکنندهای مطابقت دارد.
-s,--no-messages- بیصدا کردن برخی از پیامهای عیبیابی و خطا.
-V,--version- چاپ شماره نسخه و سپس خروج.
دستورها به شرح زیر هستند:
status- دریافت وضعیت جاری پخشکننده.
play- دستور به پخشکننده برای پخش.
pause- دستور به پخشکننده برای مکث.
play-pause- دستور به پخشکننده برای جابهجایی متناوب میان پخش و مکث.
stop- دستور به پخشکننده برای توقف.
next- دستور به پخشکننده برای رفتن به قطعهٔ بعدی.
previous- دستور به پخشکننده برای رفتن به قطعهٔ قبلی.
position[OFFSET[+|-]]- چاپ موقعیت قطعهٔ جاری بر حسب ثانیه. در صورت مشخص شدن OFFSET ، موقعیت به OFFSET ثانیه از آغاز قطعهٔ جاری تغییر مییابد. با افزودن آرگومان اختیاری [+|-] به انتهای آن، موقعیت به اندازهٔ OFFSET ثانیه نسبت به موقعیت جاری به جلو یا عقب جابهجا میشود.
volume[LEVEL[+|-]]- چاپ میزان صدای پخشکننده در مقیاس 0.0 (0%) تا 1.0 (100%). در صورت مشخص شدن LEVEL ، میزان صدای پخشکننده روی LEVEL تنظیم میشود. با افزودن آرگومان اختیاری [+|-] به انتهای آن، میزان صدای پخشکننده به اندازهٔ LEVEL افزایش یا کاهش مییابد.
metadata[KEY]- چاپ تمام مشخصههای متاداده برای قطعهٔ جاری که توسط پخشکنندهٔ کنونی تعیین شدهاند. اگر KEY مشخص شده باشد، تنها مقدار KEY چاپ میشود.
openURI- باز کردن URI در پخشکننده. URI میتواند نام یک فایل یا یک URL خارجی باشد.
shuffle[On|Off|Toggle]- چاپ وضعیت
پخش تصادفی
(shuffle)
پخشکننده.
در صورت
مشخص کردن
وضعیت،
وضعیت پخش
تصادفی روی
یکی از
مقادیر
On،OffیاToggleتنظیم میشود. loop[None|Track|Playlist]- چاپ وضعیت
تکرار (loop)
پخشکننده.
در صورت
مشخص کردن
وضعیت،
وضعیت
تکرار روی
None(غیرفعال کردن تکرار ،)Track(تکرار قطعهٔ جاری ،) یاPlaylist(تکرار فهرست پخش جاری) تنظیم میشود. خروجی دستورهایposition ،metadata ،statusوvolumeرا میتوان با استفاده از یک رشته قالببندی کنترل کرد. متغیرهای مقداردهیشده توسط این دستورها را میتوان با قرار دادن درون آکولاد در رشته قالب گنجاند: ‘{{var}}’. سپس این متغیرها در خروجی بسط خواهند یافت.هر دستور به متغیرهای زیر دسترسی دارد:
- playerName
- نام پخشکننده کنونی.
- position
- موقعیت زمانی قطعه کنونی، بر حسب میکروثانیه.
- status
- وضعیت پخشکننده کنونی.
- volume
- میزان صدای پخشکننده، مقیاسبندیشده از 0.0 (0%) تا 1.0 (100%).
هر یک از ویژگیهای فهرستشده در دستور
metadataنیز به عنوان متغیر مقداردهی میشوند. توصیه میشود این فهرست برای هر پخشکننده بررسی شود، زیرا ممکن است پخشکنندههای مختلف ویژگیهای یکسانی را تنظیم نکنند. برای مشاهده فهرستی از تمام ویژگیها در مشخصات MPRIS، به MPRIS v2 metadata guidelines مراجعه کنید. رایجترین ویژگیها به شرح زیرند:- album, xesam:album
- آلبوم قطعه کنونی.
- artist, xesam:artist
- هنرمند قطعه کنونی.
- title, xesam:title
- عنوان قطعه کنونی.
توابع کمکی نیز برای تبدیل متغیرهای بسطیافته به دیگر نمایشها در دسترس هستند. آنها به صورت ‘
{{’ فراخوانی میشوند. توابع کمکی به شرح زیر هستند:func(var)}}lc(str)- تبدیل رشته str به حروف کوچک.
uc(str)- تبدیل رشته str به حروف بزرگ.
markup_escape(str)- گریز دادن (escape) نویسههای XML در رشته str.
default(str1, str2)- چاپ str1 در صورت تنظیم بودن، وگرنه چاپ str2.
duration(time)- قالببندی
مجدد
برچسب
زمانی
میکروثانیهای
time به شکل
‘
hh:mm:ss’. تنها با position یا mpris:length قابل فراخوانی است. emoji(key)- تلاش برای تبدیل مقدار key به یک ایموجی متناظر. در حال حاضر برای status و volume پیادهسازی شده است.
trunc(str, len)- کوتاه کردن str تا حداکثر len نویسه، با افزودن علامت سهنقطه (…) در صورت لزوم.
زبان قالببندی همچنین قادر به انجام محاسبات پایهای ریاضی است.
ارجاع به توابع ناشناخته باعث خروج
playerctlهمراه با خطا خواهد شد. ارجاع به متغیرهای ناشناخته به رشتههای خالی بسط داده میشود. متنی که درون آکولاد قرار نگرفته باشد، عیناً چاپ خواهد شد..Sh "وضعیت خروج (EXIT STATUS)"
Theplayerctlutility exits 0 on success, and >0 if an error occurs.
مثالها (EXAMPLES)
نمایش نام پخشکننده، وضعیت پخش با حروف کوچک، و موقعیت زمانی و مدتزمان در قالبی خوانا برای انسان:
$ playerctl metadata --format '{{playerName}}: {{lc(status)}} '\
'{{duration(position)}}|{{duration(mpris:length)}}'
همچنین ببینید (SEE ALSO)
MPRIS v2 metadata guidelines, freedesktop.org, https://freedesktop.org/wiki/Specifications/mpris-spec/metadata, 18 سپتامبر 2013.
صفحه اصلی playerctl, مستندات API دستور playerctl, انقیادهای زبانی GObject introspection
نویسندگان (AUTHORS)
ابزار
playerctl توسط
Tony Crisci
<tony@dubstepdish.com>
نگهداری
میشود و
تحت مجوز GNU Lesser General
Public License 3.0 در دسترس
قرار گرفته
است.
این مرجع توسط Nick Morrott <knowledgejunkie@gmail.com> برای پروژه Debian GNU/Linux نوشته شده است. این راهنما بعداً توسط Stephen Gregoratto <dev@sgregoratto.me> بهروزرسانی و گسترش یافت.
| September 21, 2021 | Linux 6.12.113+deb13-amd64 |