منصوبے کے بارے میں
Audioserve ایک ذاتی آڈیو سرور ہے جو Rust میں لکھا گیا ہے اور ڈائریکٹری ڈھانچے سے براہ راست آڈیو فائلیں پیش کرتا ہے۔ یہ بنیادی طور پر آڈیو بکس کے لیے ہے، حالانکہ کوئی بھی منظم فولڈر مجموعہ کام کرتا ہے۔ ڈیزائن سادگی اور کم سے کم انداز پر زور دیتا ہے۔
میڈیا لائبریری: Audioserve آڈیو ٹیگز پر انحصار کرنے کے بجائے فائل سسٹم کو براؤز کرتا ہے، لہذا آپ جو فولڈر ڈھانچہ بناتے ہیں وہی نظر آتا ہے۔ تجویز کردہ ترتیبات میں مصنف/کتاب یا مصنف/سیریز/کتاب شامل ہیں۔ فائلیں قدرتی طور پر ترتیب دی جا سکتی ہیں، لہذا عددی پیڈنگ اختیاری ہے۔ فولڈرز میں رکھی گئی کور تصاویر اور تفصیل فائلیں ڈسپلے کے لیے استعمال ہوتی ہیں، اور تلاش فولڈر کے ناموں کا احاطہ کرتی ہے۔ متعدد مجموعے الگ الگ کمانڈ لائن دلائل کے طور پر دیے جا سکتے ہیں۔
کیشنگ: مجموعہ ڈیٹا ایک ایمبیڈڈ کی-ویلیو ڈیٹا بیس (sled) میں کیش کیا جاتا ہے، جو بہت ساری فائلوں والے فولڈرز کی تلاش اور لوڈنگ کو تیز کرتا ہے۔ بڑے مجموعوں کے لیے پہلا اسکین وقت لے سکتا ہے۔ تبدیلیاں ڈیفالٹ طور پر inotify کے ذریعے دیکھی جاتی ہیں، اور سگنل یا --force-cache-update دلیل کے ساتھ مکمل دوبارہ اسکین مجبور کیا جا سکتا ہے۔ انفرادی مجموعے :no-cache کے ساتھ آپٹ آؤٹ کر سکتے ہیں، جس کی قیمت سست تلاش اور کوئی پوزیشن شیئرنگ نہیں۔
سنگل فائل آڈیو بکس: .m4b اور اسی طرح کی فائلیں جن میں باب میٹا ڈیٹا ہوتا ہے، ورچوئل باب فائلوں پر مشتمل فولڈرز کے طور پر پیش کی جاتی ہیں۔ بابات دورانیے سے بھی بنائے جا سکتے ہیں یا .chapters CSV فائل کے ذریعے فراہم کیے جا سکتے ہیں۔ CD ذیلی فولڈرز اختیاری طور پر پیرنٹ فولڈر میں ضم کیے جا سکتے ہیں۔
پلے بیک پوزیشنز: ایک ہی ڈیوائس گروپ کے کلائنٹ WebSocket کنکشن پر پلے بیک پوزیشنز شیئر کر سکتے ہیں، جس سے دوسرے ڈیوائس پر جاری رکھنا ممکن ہوتا ہے۔ پوزیشنوں کا بیک اپ JSON میں لیا جا سکتا ہے اور بحال کیا جا سکتا ہے۔ مکمل شدہ فولڈرز آخری سننے کی پوزیشن کی بنیاد پر نشان زد ہوتے ہیں۔
سیکیورٹی: رسائی ایک مشترکہ راز سے کنٹرول ہوتی ہے؛ کوئی نامزد صارفین نہیں ہیں۔ راز نمکین ہیش کے طور پر بھیجا جاتا ہے، اور سرور بعد کی درخواستوں کے لیے ٹوکن جاری کرتا ہے۔ TLS براہ راست یا ریورس پراکسی کے ذریعے تعاون یافتہ ہے، اور ریٹ لمیٹنگ دستیاب ہے۔ API میں پوشیدہ فائلیں بلاک ہیں۔
ٹرانس کوڈنگ اور کارکردگی: Audioserve آڈیو کو کم بٹ ریٹ پر ٹرانس کوڈ کر سکتا ہے، اختیاری ٹرانس کوڈنگ کیش کے ساتھ۔ یہ رسپانس کمپریشن اور HTTP/2 کو سپورٹ کرتا ہے۔
کلائنٹ اور API: ایک جدید PWA ویب کلائنٹ (TypeScript/Svelte) شامل ہے، اس کے ساتھ ایک پرانا ویب کلائنٹ اور ایک Android کلائنٹ بھی ہے۔ ایک دستاویزی HTTP API حسب ضرورت کلائنٹس کی اجازت دیتا ہے۔
انسٹالیشن: اختیارات میں Docker امیجز، جامد Linux بلڈز، مقامی بلڈز، اور اختیاری خصوصیات جیسے collation، tags-encoding، shared-positions، transcoding-cache، اور behind-proxy کے ساتھ کمپائلیشن شامل ہیں۔
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.