نظام صوتي مفتوح

نظام الصوت المفتوح (OSS) هو واجهة لإنشاء الصوت وتسجيله في أنظمة التشغيل يونكس والأنظمة الشبيهة بيونكس . يعتمد هذا النظام على استدعاءات نظام أجهزة يونكس القياسية (مثل POSIX read و write و ioctl ، إلخ). يشير المصطلح أحيانًا إلى البرنامج الموجود في نواة يونكس الذي يوفر واجهة OSS؛ ويمكن اعتباره برنامج تشغيل جهاز (أو مجموعة برامج تشغيل أجهزة) لأجهزة التحكم بالصوت . يهدف نظام OSS إلى تمكين كتابة تطبيقات صوتية مستقلة عن أجهزة الصوت المستخدمة.

تم إنشاء البرمجيات مفتوحة المصدر بواسطة هانو سافولاينن ويتم توزيعها بموجب أربعة خيارات ترخيص ، ثلاثة منها تراخيص برمجيات حرة ، مما يجعل البرمجيات مفتوحة المصدر برمجيات حرة . [ 3 ]

واجهة برمجة التطبيقات (API)

صُممت واجهة برمجة التطبيقات (API) لاستخدام إطار عمل يونكس التقليدي، الذي يتضمن الدوال open() وread() وwrite() وioctl()، عبر ملفات الأجهزة . على سبيل المثال، الجهاز الافتراضي لإدخال وإخراج الصوت هو /dev/dsp . أمثلة باستخدام سطر الأوامر:

cat /dev/random > /dev/dsp # تشغيل ضوضاء بيضاء عبر مكبر الصوت cat /dev/dsp > aa # يقرأ البيانات من الميكروفون وينسخها إلى الملف aa

يُطبّق نظام OSS واجهة /dev/audio . ويُمكن الوصول إلى تفاصيل أجهزة الصوت الفردية عبر الدليل /dev/oss . كما يدعم OSS تقنية MIDI في /dev/sequencer و /dev/music (كلاهما قديم) و /dev/mini . [ 4 ] [ 5 ]

في نظام لينكس، يستطيع نظام OSS4 أيضاً محاكاة نظام ALSA ، وهو بديله مفتوح المصدر. [ 6 ]

تاريخ

كان نظام OSS في الأصل يُعرف باسم "VoxWare"، وهو برنامج تشغيل صوت لنواة لينكس من تطوير هانو سافولاينن. وقد أتاح سافولاينن الكود بموجب تراخيص برمجيات حرة ، رخصة GPL لنظام لينكس ورخصة BSD لتوزيعات BSD. بين نوفمبر 1993 (وإصدار لينكس 1.00) [ 7 ] و1997، كان OSS الخيار الوحيد لنظام الصوت في FreeBSD ولينكس. تغير هذا الوضع عندما كتب لويجي ريزو برنامج تشغيل "pcm" جديدًا لنظام FreeBSD في عام 1997، وعندما بدأ ياروسلاف كيسيلا مشروع Advanced Linux Sound Architecture في عام 1998. [ 8 ]

في عام ٢٠٠٢، تعاقدت شركة فور فرونت تكنولوجيز مع سافولاينن ، وجعلت نظام التشغيل OSS 4 القادم، الذي يتضمن دعمًا لأجهزة الصوت الحديثة وتحسينات، نظامًا احتكاريًا . ردًا على ذلك، تخلى مجتمع لينكس عن تطبيق OSS/free المضمن في النواة، وتحولت جهود التطوير إلى بنية الصوت المتقدمة للينكس (ALSA) البديلة. في ذلك الوقت، كان نظام FreeBSD قد تحول إلى مشروع "newpcm" الذي بدأ في عام ١٩٩٩، ولم يتأثر بذلك. [ ٨ ]

في يوليو 2007، أصدرت شركة فور فرونت تكنولوجيز شفرة المصدر لبرمجيات مفتوحة المصدر بموجب ترخيص CDDL-1.0 لنظام أوبن سولاريس ، وترخيص GPL-2.0 فقط لنظام لينكس . وظلت برامج تشغيل بعض بطاقات الصوت مغلقة المصدر ولم تُضمّن في الإصدار. [ 3 ] وفي يناير 2008، أصدرت فور فرونت تكنولوجيز شفرة المصدر لنظام فري بي إس دي (وأنظمة بي إس دي الأخرى ) بموجب ترخيص BSD-2-Clause . [ 9 ]

حالة التبني

شفرة

يُستخدم نظام OSS4 حاليًا في الغالب كبرنامج مستقل، غير مُدمج في شفرة مصدر نواة النظام. ويُستثنى من ذلك نظاما Solaris و OpenSolaris ، اللذان يستخدمان نسخة مُعدّلة من OSS4 تُسمى Boomer. تجمع هذه النسخة بين إطار عمل OSS4 (الصوت والخلاط) وواجهة برمجة التطبيقات SADA ( /dev/audio ) السابقة من Sun. [ 10 ]

على الرغم من أن توزيعات لينكس مثل أوبونتو أتاحت برنامج OSS4 كحزمة برمجية بعد أن أصبح برنامجًا مجانيًا، إلا أنها اختارت تجاهل أي أخطاء تم الإبلاغ عنها بخصوص هذه الحزم. [ 11 ]

واجهة برمجة التطبيقات (API)

لا تزال واجهة برمجة التطبيقات مفتوحة المصدر (OSS API) مؤثرة رغم غموض المكتبة الأصلية. وتصفها وثائق NetBSD بأنها "واجهة برمجة التطبيقات المفضلة في FreeBSD وSolaris". [ 12 ]

يحتوي نظام FreeBSD على تطبيق مُطوَّر بشكل مستقل لواجهة برمجة تطبيقات المصادر المفتوحة (OSS API)، والذي يتضمن، من بين أمور أخرى، إعادة التشكيل داخل النواة، والمزج (قنوات افتراضية)، ومعادل الصوت، والصوت المحيطي، والتحكم المستقل في مستوى الصوت لكل تطبيق. كما يدعم وضع البت المثالي. [ 13 ] وقد تطور تدريجيًا من بديل "newpcm" الذي كُتب عام 1999، ولحق بواجهة برمجة تطبيقات المصادر المفتوحة 4 (OSS4 API) حوالي عام 2005. [ 8 ]

يدعم نظام NetBSD وضع التوافق مع واجهة برمجة التطبيقات مفتوحة المصدر (OSS API)، وذلك بتوفير soundcard.hملف الرأس والمكتبة libossaudio، اللذين يعملان داخليًا باستخدام واجهة الصوت الأصلية الشبيهة بواجهة Sun. وقد ظهر هذا الاستبدال لأول مرة في الإصدار 1.3 من NetBSD عام 1998. [ 12 ]

كما ذُكر سابقًا، انتقل نظام لينكس إلى بنية الصوت المتقدمة لنظام لينكس ( ALSA) منذ عام 2003 (نواة 2.6). توفر ALSA وضع محاكاة اختياريًا ضمن النواة لأنظمة مفتوحة المصدر، يظهر للبرامج كما لو كان نظامًا مفتوح المصدر. [ 14 ] كما تحتوي ALSA على برنامج aoss في مساحة المستخدم، يعمل عن طريق اعتراض استدعاءات النظام الموجهة إلى ملفات أجهزة أنظمة مفتوحة المصدر. [ 15 ]

OSS/3D

OSS/3D هو إضافة لمشغلات الموسيقى، تعمل كمحرك لمعالجة الصوت. تشمل المشغلات المدعومة: Winamp ، و Windows Media Player (الإصدار 9 أو أحدث)، وmusicmatch، وSonique ، و Foobar2000 ، وJetAudio ، وXMMS . وهو متوفر لأنظمة Windows وLinux. وعلى عكس OSS، فهو برنامج تجريبي .

تم تغيير اسم 4Front OSS3D لاحقًا إلى Joesoft Hear. [ 16 ]

نقد

تعرض كل من البرمجيات مفتوحة المصدر (OSS) كواجهة برمجة تطبيقات (API) وكبرمجيات، لانتقادات من بعض المطورين، مثل بول ديفيس (من JACK Audio Connection Kit ) ولينارت بوتيرينغ (من PulseAudio المنافسة ). [ 17 ] [ 18 ]

انظر أيضاً

مراجع

  1. الإصدار 4.2 من البرمجيات مفتوحة المصدر، تم بناؤه عام 2019 ، مؤرشف من النسخة الأصلية بتاريخ 25 سبتمبر 2022 ، تم استرجاعه بتاريخ 10 مايو 2019
  2. "تسجيل تنزيل البرامج مفتوحة المصدر" .
  3. أصدرت شركة 1 2 4Front Technologies الشفرة المصدرية لنظام الصوت المفتوح المصدر ، بيان صحفي لنظام لينكس، مؤرشف من الأصل بتاريخ 25 يوليو 2011 ، تم استرجاعه بتاريخ 8 يناير 2012
  4. "مرجع واجهة برمجة تطبيقات OSS الإصدار 4.x - أساسيات واجهة برمجة تطبيقات OSS" . manuals.opensound.com . مؤرشف من الأصل بتاريخ 24-03-2023 . تم الاطلاع عليه بتاريخ 22-02-2023 .
  5. "دليل مبرمج نظام الصوت المفتوح (3.x)" (ملف PDF) . 2000. تم الاطلاع عليه بتاريخ 22 فبراير 2023 .
  6. "نصائح وحيل - نظام الصوت المفتوح" . ossnext.trueinstruments.com . مؤرشف من الأصل بتاريخ 29-12-2009 . تم الاطلاع عليه بتاريخ 31-12-2009 .
  7. "Linux 0.99 patchlevel 14 - Diff - 75bb5836a8a8c0ee44ffd60a51f357b9568f1381^! - pub/scm/linux/kernel/git/nico/archive - Git at Google" . kernel.googlesource.com . مؤرشف من الأصل بتاريخ 22-03-2024 . تم الاطلاع عليه بتاريخ 22-03-2024 .
  8. ١ ٢ ٣ "الصوت - ويكي FreeBSD" . wiki.freebsd.org . مؤرشف من الأصل بتاريخ ٢٠٢٣-٠٣-٢٩ . تم الاطلاع عليه بتاريخ ٢٠٢٣-٠٢-٢٢ .
  9. أصدرت شركة 4Front Technologies برنامجًا مفتوح المصدر لنظام FreeBSD بموجب ترخيص BSD ، opensound.com، مؤرشف من الأصل بتاريخ 25 سبتمبر 2010 ، تم الاطلاع عليه بتاريخ 8 يناير 2012
  10. مدونة هانو » بومر ، 4front-tech.com، مؤرشفة من الأصل بتاريخ 16-03-2012 ، تم الاطلاع عليها بتاريخ 08-01-2012 
  11. وثائق أوبونتو: OpenSound ، ubuntu.com ، تم الاطلاع عليها بتاريخ 2012-01-08
  12. 1 2 "ossaudio(3) - صفحات دليل NetBSD" . man.netbsd.org .
  13. صوت ، Freebsd.org، 13 يوليو 2009، مؤرشف من الأصل في 4 مارس 2016 ، تم استرجاعه في 8 يناير 2012
  14. محاكاة البرمجيات مفتوحة المصدر ، مؤرشفة من الأصل بتاريخ 2012-06-05 ، تم استرجاعها بتاريخ 2012-07-07
  15. "aoss(1) — صفحات دليل Arch" . man.archlinux.org . مؤرشف من الأصل بتاريخ 25-05-2022 . تم الاطلاع عليه بتاريخ 22-02-2023 .
  16. · مرجع منتج قديم ، Yohng.com ، تم الاطلاع عليه بتاريخ 2012-01-08
  17. "دليل استخدام واجهة برمجة تطبيقات الصوت ALSA" . مؤرشف من الأصل بتاريخ 11 سبتمبر 2013. تم الاطلاع عليه بتاريخ 17 سبتمبر 2013 .
  18. "مقابلة مع لينارت بوتيرينغ (LinuxFR.org) [ LWN.net ] " . lwn.net . مؤرشفة من الأصل بتاريخ 14 سبتمبر 2016. تم الاطلاع عليها بتاريخ 21 يوليو 2016 .