ما هو تنسيق ملف الصوت QOA؟ الميزات، الهندسة المعمارية، وكيفية فتحه
في هندسة الصوت الرقمية وتطوير الألعاب، كان موازنة حجم الملف، زمن تأخير التشغيل، واستهلاك وحدة المعالجة المركزية دائمًا تحديًا. تنسق الصيغ القياسية مثل MP3 وAAC وOgg Vorbis نسب ضغط عالية ولكنها تتطلب خطوط فك ترميز معقدة، حسابات عائمة ثقيلة، وبصمة ذاكرة كبيرة. على الطرف الآخر من الطيف، يوفر PCM غير المضغوط (.wav) تشغيلًا بلا تأخير على حساب استهلاك ضخم للقرص وتسليم أصول بطيء.
يُعالج تنسيق QOA (Quite OK Audio) هذه الفجوة. تم إنشاؤه بواسطة دومينيك سزابليوفسكي (مُنشئ تنسيق الصورة QOI المشهور)، QOA هو تنسيق صوتي مفتوح المصدر ومضغوط بفقدان، مُصمم لفك ترميز فائق السرعة، تعقيد بسيط، واستخدام ذاكرة متوقع.
ما هو ملف QOA؟
ملف بامتداد .qoa يخزن صوتًا رقميًا مضغوطًا باستخدام تنسيق Quite OK Audio. يعمل على بيانات الصوت ذات الترميز النبضي (PCM) بعمق 16 بت عبر معدلات العينة التي تتراوح من $1\text{ Hz}$ حتى $16,777,215\text{ Hz}$ ويدعم حتى 31 قناة صوتية.
على عكس الترميزات النفسية الصوتية التي تعتمد على تحويلات نطاق التردد (مثل تحويل جيب التمام المتقطع المعدل أو MDCT)، يعمل QOA بالكامل في نطاق الزمن. يضغط الصوت إلى نسبة ثابتة تبلغ بالضبط $3.2\text{ bits per sample}$، محققًا نسبة ضغط ثابتة $5:1$ على PCM الخطي الخام بعمق 16 بت.
للصوت القياسي بجودة CD (44.1 كيلوهرتز، ستيريو)، يحقق تدفق QOA معدل بت ثابت ودقيق قدره:
$$\text{Bitrate} = 44,100 \times 2 \times 3.2 = 282,240\text{ bits/s} \approx 278\text{ kbps}$$
الميزات التفصيلية لـ QOA
1. مواصفات وتنفيذ بسيط
تتطلب الترميزات الحديثة التقليدية مئات الصفحات من المواصفات التقنية وآلاف أسطر الشيفرة للتنفيذ. بالمقابل، يتناسب مواصفات تنسيق QOA بالكامل على ملف PDF بصفحة واحدة، وتحتوي التنفيذ المرجعي الرسمي (qoa.h) على نحو 400 سطر من شيفرة C القياسية.
2. توقع LMS في المجال الزمني
يتجنب QOA الخوارزميات التحويلية المكثفة حسابيًا. بدلاً من ذلك، يستخدم مرشح توقع تكيّفي للحد الأدنى لمربعات المتوسط (LMS) بأربعة أوزان تاريخية لكل قناة. من خلال تقدير قيم العينات المستقبلية وتسجيل الفروق المتبقية المُكمّدة فقط، يقدم QOA جودة صوتية إدراكية شفافة دون استهلاك كبير للمعالج.
3. فك تشفير سريع للغاية
نظرًا لأن QOA يعتمد بالكامل على الحساب الصحيح والعمليات الخفيفة، فإنه يفكّ الشيفرة بسرعة تصل إلى $3\times$ أسرع من Ogg Vorbis ويتفوق بشكل كبير على فكّ شفرة MP3 القياسي. بل يفكّ الشيفرة أسرع من Microsoft ADPCM، مما يجعله مثاليًا للأجهزة المدمجة منخفضة الطاقة، والميكروكنترولرات، ومحركات الألعاب في الوقت الحقيقي.
4. بنية مقسمة جاهزة للبث
تقسّم ملفات QOA إلى إطارات مستقلة تحتوي على ما يصل إلى $5,120$ عينة لكل قناة ($256$ شريحة من $20$ عينة). يحمل كل إطار أوزان مرشح LMS الخاصة به وتاريخه، مما يتيح البحث الفوري، واستعادة بدون أي عقوبة من الحزم المفقودة، وبثًا ديناميكيًا فوريًا دون الحاجة إلى فهرسة عالمية إلزامية.
الخصائص الرئيسية لـ QOA
| الخاصية | المواصفة / التفاصيل |
|---|---|
| امتداد الملف | .qoa |
| البايتات السحرية | qoaf (0x71, 0x6f, 0x61, 0x66) |
| المطور / المنشئ | Dominic Szablewski (PhobosLab) |
| نوع الضغط | فقدان (تنبؤ LMS في المجال الزمني) |
| نسبة الضغط | ثابت $5:1$ نسبة إلى PCM 16-بت |
| التخزين لكل عينة | بالضبط $3.2\text{ bits per sample}$ |
| معدل البت (44.1 كيلوهرتز، ستيريو) | $\approx 278\text{ kbps}$ ($282.24\text{ kbps}$ الحمولة) |
| نطاق معدل العينة | $1\text{ Hz}$ إلى $16,777,215\text{ Hz}$ ($24\text{-bit}$ غير موقّع) |
| القنوات المدعومة | $1$ إلى $31$ قنوات صوتية (Mono, Stereo, 5.1, 7.1, إلخ.) |
| الحمولة الزائدة للرأس | رأس ملف 8 بايت، رأس إطار 8 بايت |
| الترخيص | MIT (الكود المصدري) / CC0 (المواصفات والشعار) |
كيفية إنشاء وترميز ملفات QOA
ترميز الصوت إلى QOA سهل بفضل الثنائيات الجاهزة للمطورين وسلاسل الأدوات المجتمعية.
الطريقة 1: استخدام سطر الأوامر الرسمي qoaconv CLI
المشفّر الأساسي يتم توزيعه مباشرةً داخل مستودع المرجع الرسمي.
- استنسخ المستودع وابنِ الملف التنفيذي:
git clone https://github.com/phoboslab/qoa.git cd qoa make - حوّل ملف WAV غير مضغوط إلى QOA:
./qoaconv input.wav output.qoa - (اختياري) إذا تم التجميع مع
HAS_DRLIBS=true، يمكن لـqoaconvتحويل الملفات مباشرةً من.flacو.mp3أيضًا.
الطريقة 2: الترميز داخل المحرك (محرك Godot Engine)
بدءًا من Godot 4.3، يمكن لمطوري الألعاب استيراد ملفات .wav غير مضغوطة واختيار ضغط QOA مباشرةً من لوحة استيراد Godot. ينتج عن ذلك أصول ألعاب مدمجة تُفك تشفيرها أصليًا مع تأخير CPU ضئيل أثناء مشاهد اللعب المكثفة.
الطريقة 3: محولات الويب داخل المتصفح
تتيح عدة أدوات WebAssembly على الويب (مثل تلك المستضافة على qoaformat.org والعروض التجريبية المفتوحة المصدر ذات الصلة) للمستخدمين سحب وإفلات ملفات الصوت القياسية وتنزيل أصل .qoa مشفر محليًا دون تشغيل أوامر الطرفية.
كيفية فتح وتشغيل ملفات QOA
نظرًا لأن QOA هو تنسيق خفيف الوزن تم بناؤه أساسًا للتكامل أثناء التشغيل، قد تحتاج مشغلات الوسائط الاستهلاكية التقليدية إلى ملحقات أو بنى مخصصة.
- مشغل سطر الأوامر المخصص (
qoaplay): يقوم المستودع الرسمي بالتحويل إلىqoaplay، الذي يستخدم أنظمة الصوت الأصلية (ALSA على لينكس، CoreAudio على macOS، WASAPI على ويندوز) لتشغيل ملفات.qoaمباشرةً:./qoaplay audio.qoa - أطر وألعاب المحركات:
- Raylib: دعم أصلي عبر وحدة
raudio. - Godot Engine: دعم تشغيل أصلي كامل (Godot 4.3+).
- Raylib: دعم أصلي عبر وحدة
- مشغلات الوسائط والإضافات:
- Qmmp: مشغل وسائط متعددة متقدم مع وحدات فك تشفير QOA الأصلية.
- OpenCubicPlayer: متتبع كلاسيكي ومشغل ملفات صوتية يدعم تدفقات QOA.
- Audacious / foobar2000: مدعوم عبر إضافات إدخال مفتوحة المصدر من المجتمع.
- بيئة التطوير المتكاملة وأدوات المطورين:
- VS Code: تسمح إضافة QOA Preview للمطورين بمعاينة وتشغيل مقاطع صوتية
.qoaمباشرة داخل شجرة المصدر الخاصة بهم.
- VS Code: تسمح إضافة QOA Preview للمطورين بمعاينة وتشغيل مقاطع صوتية
الأسئلة المتكررة (FAQ)
ماذا يعني QOA؟
QOA تعني Quite OK Audio، وهو تنسيق صوتي ضائع سريع وبسيط ومفتوح المصدر.
هل صوت QOA بدون فقدان أم مضغوط بفقدان؟
QOA هو تنسيق ضغط صوتي ضائع، لكنه يحافظ على جودة صوت شبه شفافة لمعظم حالات الاستخدام العملية.
ما مقدار الضغط الذي يقدمه QOA؟
QOA يضغط الصوت غير المضغوط 16‑بت بنسبة ثابتة $5:1$ (بالضبط $3.2\text{ bits per sample}$).
هل يمكن لـ QOA استبدال MP3 أو AAC لبث الموسيقى العامة؟
لا، QOA يفضّل فك الترميز الفائق السرعة والخفيف الوزن على تحقيق أقصى توفير في النطاق الترددي، مما يجعله أكثر ملاءمة للألعاب والميكروكنترولرات وتطبيقات الكمون المنخفض مقارنةً ببث الويب عالي الكثافة.
هل يتطلب QOA رسوم ترخيص أو براءات اختراع؟
لا، QOA خالية تمامًا من البراءات ومُصدرة تحت رخصة MIT المتسامحة، بينما مواصفاتها وشعارها ينتميان إلى المجال العام (CC0).
روابط مرجعية & موارد رسمية
- الموقع الرسمي: https://qoaformat.org/
- المواصفة الرسمية (PDF): https://qoaformat.org/qoa-specification.pdf
- مستودع GitHub: https://github.com/phoboslab/qoa
- التحليل التقني المتعمق للمؤلف: مدونة PhobosLab - إعلان QOA ومعايير الأداء