طقم توصيل الصوت JACK

JACK Audio Connection Kit (أو JACK اختصارًا ) عبارة عن واجهة برمجة تطبيقات (API) احترافية لخادم الصوت ، بالإضافة إلى تطبيقين خفيين (daemon ) لتوفير اتصالات فورية ومنخفضة التأخير لبيانات الصوت و MIDI بين التطبيقات. طُوِّر JACK بواسطة مجتمع من مطوري البرمجيات مفتوحة المصدر بقيادة بول ديفيس (الحائز على جائزة المصادر المفتوحة عام 2004 عن هذا العمل) [ 3 ] ، وقد شكّل عنصرًا أساسيًا في البنية التحتية والمعيار الفعلي لبرامج الصوت الاحترافية على نظام لينكس منذ إطلاقه عام 2002. الخادم برنامج مجاني ، مرخص بموجب رخصة GPL-2.0 أو أحدث ، بينما المكتبة مرخصة بموجب رخصة LGPL-2.1 أو أحدث . [ 2 ]

التطبيقات

تم توحيد واجهة برمجة تطبيقات JACK بالإجماع، وهناك تطبيقان متوافقان: jack1، وهو مُنفذ بلغة C عادية وكان في وضع الصيانة لفترة من الوقت، و jack2 (كان يُعرف سابقًا باسم jackdmp)، وهو إعادة تنفيذ بلغة C++ بقيادة ستيفان ليتز، والذي قدم قابلية التوسع متعددة المعالجات ودعم أنظمة التشغيل الأخرى غير لينكس. [ 4 ]

يمكن استخدام JACK مع ALSA و PortAudio و CoreAudio و FFADO و OSS كواجهات خلفية للأجهزة . بالإضافة إلى ذلك، يتوفر برنامج تشغيل وهمي (مفيد في حال عدم الرغبة في إخراج صوت، مثلاً للمعالجة دون اتصال بالإنترنت) وبرنامج تشغيل للصوت عبر UDP. يمكن تشغيل أحد التطبيقين أو كليهما على أنظمة Linux و macOS و Solaris و Windows و iOS و FreeBSD و OpenBSD و NetBSD .

تُطبّق PipeWire واجهة برمجة تطبيقات JACK أيضًا لضمان التوافق مع الإصدارات السابقة ، كبديل كامل وسهل الاستخدام لعملاء JACK، حيث تربط استدعاءات واجهة برمجة تطبيقات JACK باستدعاءات PipeWire المكافئة. [ 5 ] في حال استخدامها كبديل لـ ALSA وPulseAudio، فإنها تُوحّد خوادم الصوت وواجهات برمجة التطبيقات المختلفة الموجودة عادةً على الجهاز، وتُتيح تكاملًا أفضل بين البرامج المختلفة. كما تدّعي PipeWire إضافة عدد من الميزات ومعالجة عدد من القيود مقارنةً بـ JACK. [ 6 ] يُعدّ استخدام PipeWire كتطبيق افتراضي لـ JACK هو الإعداد الافتراضي في Fedora 34 والإصدارات الأحدث. [ 7 ]

جدولة منخفضة زمن الاستجابة

على غرار PulseAudio ، يُعدّ برنامج JACK daemon "برنامجًا صوتيًا"، أي أنه يقوم بمزج الصوت من التطبيقات عبر البرمجيات. ولذلك، يفترض أن يكون لديه حق الوصول الحصري إلى النظام الفرعي الصوتي لنواة النظام.

كانت متطلبات جدولة JACK لتحقيق زمن استجابة منخفض بما فيه الكفاية أحد الدوافع الرئيسية وراء جهود تحسين الأداء في الوقت الحقيقي لنواة لينكس من السلسلة 2.6، [ 8 ] [ 9 ] والتي كان أداء زمن الاستجابة الأولي فيها مخيبًا للآمال مقارنةً بالسلسلة الأقدم 2.4. [ 10 ] وقد تُوِّجت جهود ضبط الأداء في الوقت الحقيقي بالعديد من التحسينات على جدولة النواة الرئيسية، وإنشاء فرع -rt لإجراء تحسينات أكثر شمولًا في الإصدار 2.6.24، ولاحقًا في رقعة CONFIG_PREEMPT_RT . [ 11 ]

التطبيقات التي تدعم JACK

انظر أيضاً

مراجع

  1. "جاك" . ملخص التحليل . أوهلوه . مؤرشف من الأصل بتاريخ 2015-10-01 . تم الاسترجاع بتاريخ 2012-01-08 .
  2. 1 2 "مجموعة توصيل الصوت JACK - الترخيص" . مؤرشف من الأصل بتاريخ 2021-05-03 . تم الاطلاع عليه بتاريخ 2021-06-08 .
  3. "جوائز المصادر المفتوحة لعام 2004: بول ديفيس عن برنامج JACK" . techrepublic.com.com . تم الاطلاع عليه بتاريخ 24 مايو 2016 .
  4. ليتز، ستيفان؛ أرنودوف، نيدكو؛ موريه، رومان (2009). "ما الجديد في JACK2؟" (ملف PDF) . linuxaudio.org. مؤرشف (PDF) من الأصل في 4 مايو 2025. تم الاطلاع عليه في 30 يونيو 2026 .
  5. "JACK - Wiki - PipeWire/pipewire" . PipeWire على GitLab . تم الاطلاع عليه بتاريخ 11 فبراير 2021 .
  6. "الأسئلة الشائعة - ويكي - بايب واير/بايب واير" . بايب واير على جيت لاب . مؤرشف من الأصل في 22 أكتوبر 2020. تم الاطلاع عليه في 11 فبراير 2021 .
  7. لارابيل، مايكل. "فيدورا 34 تحصل على الموافقة لمحاولتها استخدام PipeWire افتراضيًا لتلبية احتياجات الصوت" . فورونيكس . فورونيكس ميديا. مؤرشف من الأصل في 28 يناير 2021. تم الاطلاع عليه في 11 فبراير 2021 .
  8. «الإعلان الأصلي عن رقعة استباقية طوعية لسلسلة نواة لينكس 2.6 من إعداد إنجو مولنار، 2004» . lkml.org. مؤرشف من الأصل في 15 يونيو 2011. تم الاطلاع عليه في 17 فبراير 2010 .
  9. "تحديد مصادر زمن الاستجابة باستخدام Ftrace، ورقة بحثية من تأليف ستيفن روستيدت من ورشة العمل الخاصة بالوقت الحقيقي لعام 2009" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 22 نوفمبر 2009. تم الاطلاع عليه بتاريخ 17 فبراير 2010 .
  10. "الصوت في الوقت الحقيقي مقابل الإصدار 2.6، ورقة بحثية من مؤتمر لينكس الصوتي 2006 بقلم لي ريفيل" (ملف PDF) . مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 10 نوفمبر 2020. تم الاطلاع عليه بتاريخ 17 فبراير 2010 .
  11. "ويكي لينكس في الوقت الحقيقي" . Kernel.org (أرشيف نواة لينكس). مؤرشف من الأصل في 6 فبراير 2012. تم الاطلاع عليه في 8 يونيو 2010 .