| org.bluez.MediaEndpoint(5) | مدیریت سیستم لینوکس | org.bluez.MediaEndpoint(5) |
نام (NAME)
org.bluez.MediaEndpoint - رابط کاربری D-Bus برای نقطه انتهایی رسانه در BlueZ
رابط (INTERFACE)
- Service
- unique name (نقش Server) org.bluez (نقش Client)
- Interface
- org.bluez.MediaEndpoint1
- Object path
- freely definable (نقش Server) [variable prefix]/{hci0,hci1,...}/dev_{BDADDR}/sep# (نقش Client)
- Used by
- bluetoothctl-endpoint(1)
متدها (Methods)
void SetConfiguration(object transport, dict properties)
پیکربندی را برای انتقال (transport) تنظیم میکند.
- object transport
- شیء انتقال پیکربندیشده.
- dict properties
- ویژگیهای پیکربندیشده org.bluez.MediaTransport(5).
برای نقش کلاینت (client role)، پارامتر transport باید با یک شیء نقطه انتهایی سرور که پیکربندی خواهد شد مقداردهی شود و properties باید شامل ویژگیهای زیر باشد:
- array{byte} Capabilities [اجباری]
- ویژگی Capabilities را ببینید.
- array{byte} Metadata [فقط ISO]
- ویژگی Metadata را ببینید.
- dict QoS [فقط ISO]
- ویژگی QoS در org.bluez.MediaTransport(5) را ببینید.
- خطاهای ممکن برای نقاط انتهایی A2DP:
- org.bluez.Error.A2DP.InvalidCodecType
- org.bluez.Error.A2DP.NotSupportedCodecType
- org.bluez.Error.A2DP.InvalidSamplingFrequency
- org.bluez.Error.A2DP.NotSupportedSamplingFrequency
- org.bluez.Error.A2DP.InvalidChannelMode
- org.bluez.Error.A2DP.NotSupportedChannelMode
- org.bluez.Error.A2DP.InvalidSubbands
- org.bluez.Error.A2DP.NotSupportedSubbands
- org.bluez.Error.A2DP.InvalidAllocationMethod
- org.bluez.Error.A2DP.NotSupportedAllocationMethod
- org.bluez.Error.A2DP.InvalidMinimumBitpoolValue
- org.bluez.Error.A2DP.NotSupportedMinimumBitpoolValue
- org.bluez.Error.A2DP.InvalidMaximumBitpoolValue
- org.bluez.Error.A2DP.NotSupportedMaximumBitpoolValue
- org.bluez.Error.A2DP.InvalidLayer
- org.bluez.Error.A2DP.NotSupportedLayer
- org.bluez.Error.A2DP.NotSupportedCRC
- org.bluez.Error.A2DP.NotSupportedMPF
- org.bluez.Error.A2DP.NotSupportedVBR
- org.bluez.Error.A2DP.InvalidBitRate
- org.bluez.Error.A2DP.NotSupportedBitRate
- org.bluez.Error.A2DP.InvalidObjectType
- org.bluez.Error.A2DP.NotSupportedObjectType
- org.bluez.Error.A2DP.InvalidChannels
- org.bluez.Error.A2DP.NotSupportedChannels
- org.bluez.Error.A2DP.InvalidVersion
- org.bluez.Error.A2DP.NotSupportedVersion
- org.bluez.Error.A2DP.NotSupportedMaximumSUL
- org.bluez.Error.A2DP.InvalidBlockLength
- org.bluez.Error.A2DP.InvalidCPType
- org.bluez.Error.A2DP.InvalidCPFormat
- org.bluez.Error.A2DP.InvalidCodecParameter
- org.bluez.Error.A2DP.NotSupportedCodecParameter
- org.bluez.Error.A2DP.InvalidDRC
- org.bluez.Error.A2DP.NotSupportedDRC
مثالها:
- bluetoothctl
- > endpoint.config <endpoint> <local endpoint> [preset]
array{byte} SelectConfiguration(array{byte} capabilities)
پیکربندی ترجیحی را از بین قابلیتهای پشتیبانیشده انتخاب میکند.
پیکربندیای را برمیگرداند که میتواند برای راهاندازی یک transport استفاده شود؛ برای مقادیر ممکن به org.bluez.MediaTransport(5) مراجعه کنید.
توجه: نیازی به ذخیره موقت (کَش کردن) پیکربندی انتخابشده نیست، چرا که در صورت موفقیت، پیکربندی به عنوان پارامتر متد SetConfiguration بازگردانده میشود.
dict SelectProperties(dict capabilities)
پیکربندی BAP unicast را از بین قابلیتهای پشتیبانیشده انتخاب میکند:
برای مقادیر ممکن، به MediaEndpoint Properties مراجعه کنید.
پیکربندیای را برمیگرداند که میتواند برای راهاندازی یک transport استفاده شود:
برای مقادیر ممکن، به SetConfiguration مراجعه کنید.
توجه: نیازی به ذخیره موقت (کَش کردن) ویژگیهای انتخابشده نیست، چرا که در صورت موفقیت، پیکربندی به عنوان پارامتر متد SetConfiguration بازگردانده میشود.
void ClearConfiguration(object transport)
پیکربندی transport را پاک میکند.
نقش سرور (Server role): [فقط ISO]
جریانی را که با transport دادهشده مرتبط است میبندد. اگر مسیر دادهشده همان مسیر این نقطه انتهایی باشد، تمامی جریانهای آن بسته میشوند.
void Reconfigure(dict properties)
[فقط ISO]
یک نقطه انتهایی BAP unicast را دوباره پیکربندی میکند. این متد تمام جریانهای موجود در نقطه انتهایی را میبندد و جریان انتخاب پیکربندی را بازنشانی میکند، که برای نمونه موجب فراخوانی SelectProperties شده و به سرور صوتی اجازه میدهد پیکربندی را اصلاح کند.
آرگومانهای زیر در properties دریافت میشوند:
- boolean Defer [اختیاری]
- اگر مقدار True
باشد، نقطه
انتهایی را
برای
پیکربندی
مجدد
نشانهگذاری
میکند اما
آن را تا
زمانی که یک
عملیات
غیرمعوق
Reconfigure() بر روی
نقطهای
انتهایی از
همان
دستگاه
انجام شود
به تعویق
میاندازد.
استفاده از این گزینه هنگام پیکربندی مجدد جریانهای source و sink که هدف، ترکیب آنها در همان CIG و احتمالاً تشکیل یک CIS دوطرفه (bidirectional) است، ضروری خواهد بود.
void Release()
این متد زمانی فراخوانی میشود که bluetoothd(8) ثبت نقطه انتهایی را لغو کند.
نقطه انتهایی میتواند از آن برای انجام وظایف پاکسازی استفاده کند. نیازی به لغو ثبت نقطه انتهایی نیست، چرا که هنگام فراخوانی این متد، ثبت آن از پیش لغو شده است.
MediaEndpoint Properties
string UUID [readonly, optional]
شناسه UUID پروفایلی که این نقطه انتهایی برای آن است.
byte Codec [readonly, optional]
شماره تخصیصیافته کدک که نقطه انتهایی پیادهسازی میکند.
مقادیر باید با مشخصات پروفایلی که توسط UUID تعیین شده مطابقت داشته باشند.
uint32_t Vendor [readonly, Optional]
چندتایی شناسه شرکت (Company ID) و شناسه کدک (Codec ID) مختص فروشنده که نقطه انتهایی پیادهسازی میکند.
زمانی که کدک ویژه فروشنده (0xff) استفاده میشود، باید مقدار مناسبی برای آن تنظیم شود.
array{byte} Capabilities [readonly, optional]
داده باینری (blob) مربوط به Capabilities؛ این مقدار همانگونه که هست استفاده میشود، بنابراین اندازه و ترتیب بایتها باید مطابقت داشته باشد.
array{byte} Metadata [readonly, Optional]
داده باینری (blob) مربوط به Metadata؛ این مقدار همانگونه که هست استفاده میشود، بنابراین اندازه و ترتیب بایتها باید مطابقت داشته باشد.
object Device [readonly, optional]
شیء دستگاهی که این نقطه انتهایی به آن تعلق دارد.
bool DelayReporting [readonly, optional]
مشخص میکند آیا نقطه انتهایی از گزارش تأخیر (Delay Reporting) پشتیبانی میکند یا خیر.
uint32 Locations [readonly, optional, ISO only, experimental]
موقعیتهای پشتیبانیشده توسط نقطه انتهایی را مشخص میکند.
uint16 SupportedContext [readonly, optional, ISO only, experimental]
بافت صوتی پشتیبانیشده توسط نقطه انتهایی را مشخص میکند.
uint16 Context [readonly, optional, ISO only, experimental]
بافت صوتی موجود نقطه انتهایی را مشخص میکند.
dict QoS [readonly, optional, ISO only, experimental]
قابلیتهای QoS را مشخص میکند.
- byte Framing
- پشتیبانی
نقطه
انتهایی از
framing را مشخص
میکند.
مقادیر ممکن:
- 0x00
- از PDUهای فاقد چارچوب (Unframed PDUs) پشتیبانی میشود.
- 0x01
- از PDUهای فاقد چارچوب (Unframed PDUs) پشتیبانی نمیشود.
- byte PHY
- لایه
فیزیکی (PHY)
ترجیحی
نقطه
انتهایی را
مشخص
میکند.
مقادیر ممکن:
- byte Retransmissions
- تعداد بازترسلیهای ترجیحی نقطه انتهایی را مشخص میکند.
- uint16 MaximumLatency
- حداکثر تأخیر نقطه انتهایی را مشخص میکند.
- uint32 MinimumDelay
- حداقل تأخیر ارائه (presentation delay) نقطه انتهایی را مشخص میکند.
- uint32 MaximumDelay
- حداکثر تأخیر ارائه نقطه انتهایی را مشخص میکند.
- uint32 PreferredMinimumDelay
- حداقل تأخیر ارائه ترجیحی نقطه انتهایی را مشخص میکند.
- uint32 PreferredMaximumDelay
- حداکثر تأخیر ارائه ترجیحی نقطه انتهایی را مشخص میکند.
dict SupportedFeatures [readonly, ISO only, experimental]
دیکشنری نشاندهنده ویژگیهای پشتیبانیشده برای سرویسهای گوناگون. کلیدها، UUIDهای سرویس و مقادیر، آرایههایی از رشتهها هستند.
سرویسها:
- array{string} 00001855-0000-1000-8000-00805f9b34fb
- ویژگیهای TMAP. موارد ممکن:
- "cg"
- دروازه تماس (Call Gateway)
- "ct"
- پایانه تماس (Call Terminal)
- "ums"
- فرستنده رسانه تکپخشی (Unicast Media Sender)
- "umr"
- گیرنده رسانه تکپخشی (Unicast Media Receiver)
- "bms"
- فرستنده رسانه همگانی (Broadcast Media Sender)
- "bmr"
- گیرنده رسانه همگانی (Broadcast Media Receiver)
- array{string} 00001858-0000-1000-8000-00805f9b34fb
- ویژگیهای GMAP. موارد ممکن:
- "ugg"
- دروازه بازی تکپخشی (Unicast Game Gateway)
- "ugt"
- پایانه بازی تکپخشی (Unicast Game Terminal)
- "bgs"
- فرستنده بازی همگانی (Broadcast Game Sender)
- "bgr"
- گیرنده بازی همگانی (Broadcast Game Receiver)
- "ugg-multiplex"
- پشتیبانی از ویژگی UGG Multiplex
- "ugg-96kbps-source"
- پشتیبانی از ویژگی UGG 96 kbps Source
- "ugg-multisink"
- پشتیبانی از ویژگی UGG Multisink
- "ugt-source"
- پشتیبانی از ویژگی UGT Source
- "ugt-80kbps-source"
- پشتیبانی از ویژگی UGT 80 kbps Source
- "ugt-sink"
- پشتیبانی از ویژگی UGT Sink
- "ugt-64kbps-sink"
- پشتیبانی از ویژگی UGT 64 kbps Sink
- "ugt-multiplex"
- پشتیبانی از ویژگی UGT Multiplex
- "ugt-multisink"
- پشتیبانی از ویژگی UGT Multisink
- "ugt-multisource"
- پشتیبانی از ویژگی UGT Multisource
- "bgs-96kbps"
- پشتیبانی از ویژگی BGS 96 kbps
- "bgr-multisink"
- پشتیبانی از ویژگی BGR Multisink
- "bgr-multiplex"
- پشتیبانی از ویژگی BGR Multiplex
| سپتامبر 2023 | BlueZ |