كيفية إنشاء مشغل UrbanDenoiser فريد مع تعويض الضوضاء المحيطة

في هذه المقالة ، أود أن أتحدث عن عملية إنشاء مشغل وسائط UrbanDenoiser Player. بالإضافة إلى جميع "السحر والجمال" (التي من الأفضل قراءتها على الموقع الرسمي الذي يحمل نفس الاسم ) ، فإن اللاعب لديه أوضاع تشغيل مبتكرة:

  • Denoiser - زيادة وضوح الإشارة الصوتية على الرغم من الضوضاء الخارجية ؛
  • الضوضاء المحيطة - الاستماع المتزامن لمحتوى الوسائط وأصوات المساحة المحيطة ؛
  • طبيعي - حيث يقوم اللاعب بتكييف إشارة الخرج ليس فقط لاستجابة التردد لسماعات رأس معينة ، ولكن أيضًا للخصائص الشخصية لسمع المستخدم.

صورة

إصدار iPhone

بطبيعة الحال ، لم تكن هذه القدرات ممكنة لولا خوارزمية مبتكرة لمعالجة الإشارات. سيتم مناقشة إنشائه.

من السماعات إلى مشغلات الوسائط


في أوائل عام 2014 ، عمل فريق تطوير ودود على إصدار تطبيق Petralex للسمع ، الذي ينفذ مساعدات سمعية رقمية تعتمد على الهاتف الذكي / الجهاز اللوحي. في البداية ، تم توجيه الطلب إلى الأشخاص الذين أجبروا (ولكن خجولين) على ارتداء السمع. بعد كل شيء ، لن يتم قبول سماعة الهاتف الذكي للمساعدة السمعية من قبل أي شخص. بالإضافة إلى ذلك ، يحتوي الهاتف الذكي / الجهاز اللوحي على جميع الأجهزة (مثل السمع الحقيقي - والمكلفة للغاية! - السمع الرقمي). إنها ليست سوى مسألة "برمجيات" ، قادرة على معالجة الإشارة الصوتية في الوقت الحقيقي وفقًا للرسم الصوتي الشخصي للمستخدم (الذي يميز ضعف السمع) ، والذي يعد إزالته أيضًا مسألة "برمجيات".

لذلك ، في أهم فترة من الانتهاء من العمل في Petralex ، ركب شخصان من فريق التطوير ، بعد يوم عمل شاق ، مترو الأنفاق. وأعطى أحدهم سماعة الأذن - للاستماع إلى أغنية ذات محتوى مضحك. صحيح ، بسبب الضجيج (الذي سافر في مترو الأنفاق ، يعرف!) ، لم يصرح صديق بكلمة واحدة! وعلى وجه السرعة ، اقترح الفكرة: تحليل الضوضاء المحيطة ومعالجة الإشارة المفيدة بطريقة تزيد من وضوحها (على الرغم من الضوضاء الخارجية!).

فكرة الأصدقاء مستوحاة. انضم علماء الرياضيات إلى المناقشة لإنشاء خوارزمية معالجة الإشارة المطلوبة (باستخدام ، من بين أمور أخرى ، الخبرة المكتسبة مع Petralex).

معركة الخوارزمية


كانت المشكلة الرئيسية هي انحراف المهمة - لم يتم العثور على أي منشورات حول هذا الموضوع! في اللحظة الأولى ، لم يعرف المطورون عن نظائرها المتاحة على الإطلاق. ربما لهذا السبب قاموا بحل المشكلة بطريقة أكثر أصالة. وتعلمنا عن حلول مماثلة (استنادًا إلى مواد من مؤتمرات غربية) بالفعل في وقت تقديم براءة اختراعنا الخاصة.
لكن ذلك كان لاحقًا. في البداية ، كانت خوارزمية معالجة الإشارة لا تزال خامًا جدًا. لم تتم مناقشة أي وقت حقيقي على الإطلاق. ومع ذلك ، هذا أمر طبيعي لتصحيح الأخطاء الأولية - كان الهدف هو جعل وحدة البرامج تعمل من حيث المبدأ من أجل الحصول على النتيجة المرجوة.

دفقة urbandenoiser

ظهر أول نموذج أولي للتطبيق ، جاهز للتثبيت على الهاتف ، بعد خمسة أشهر من ظهور الفكرة نفسها - في يونيو 2014. وعلى الفور تم الكشف عن عيوبها - تحولت خوارزمية معالجة الإشارات الرياضية إلى "ثقيلة" للغاية!
في الواقع ، فإن المشكلة الرئيسية عند معالجة الصوت في الوقت الحقيقي هي الحاجة إلى خوارزمية بسيطة وفعالة. حتى يتوفر للهاتف المحمول الوقت لمعالجة دفق بيانات سريع نوعًا ما (44.1 كيلوهرتز في حالتنا). عادةً ما تقتصر معالجة الكلام على 8 أو 16 كيلوهرتز. ولكن بما أن الموسيقى تتم معالجتها أيضًا في تطبيقنا ، فيجب أن يكون التردد أعلى.

, iPhone 4. . 55% 35% iPhone 5. ( CPU, « Android»).

«»


أثبت اختبار اللاعب باستخدام الخوارزمية المحدثة أنه رائع. كان الوضع الأول (يسمى Denoiser) جاهزًا. ومع ذلك ، اجتمعت صعوبات أخرى مرة أخرى. على سبيل المثال ، ما هي درجة سرعة استجابة الخوارزمية للتغيرات في الضوضاء المحيطة التي يجب اختيارها؟ إذا جعلت الخوارزمية "حساسة للغاية" ، فإن صوت المشغل سيتغير بسرعة - عند تغيير بيئة الضوضاء الخارجية. من ناحية ، هذا جيد - إذا نشأت الضوضاء بشكل حاد وظلت دون تغيير لفترة طويلة. ولكن بالنسبة للضوضاء "المفاجئة" (مثل طرق الطرق ، والضربات الحادة ، وعمومًا أي "اضطرابات" فردية) ، فإن الحساسية العالية للاعب ليست مناسبة. من ناحية أخرى ، فإن رد الفعل البطيء جدًا سيئ أيضًا - سيتعين على المستمع الانتظار لفترة طويلة حتى تتكيف خوارزمية اللاعب مع الوضع الجديد.المتوسط ​​الذهبي في إعدادات الخوارزمية ، كان على المطورين أن يختاروا يدويًا - عن طريق التجربة والخطأ.

صورة

كانت هناك مشكلة أخرى هي الحاجة إلى مراعاة تفاصيل معدات معينة (أي مستوى الضوضاء الداخلي لميكروفون سماعة الرأس). يجب ألا تتفاعل خوارزمية المعالجة مع هذا الضجيج على الإطلاق! ومع ذلك ، فإن المشكلة تكمن في أن لكل هاتف مستوى ضوضاء "فردي" خاص به. كل هذا يجب أن يؤخذ في الاعتبار بطريقة أو بأخرى في النسخة النهائية من التطبيق. من الجيد أن نظام الصوت في iPhone يتميز بمستوى ضوضاء منخفض إلى حد ما.

في هذه المرحلة من التطوير ، قرروا اعتبار مستوى الضجيج الخاص بهم لجميع أجهزة "التفاح" كما هو. على الرغم من أنه في المستقبل (والآن يستمر هذا العمل) ، فإن المهمة هي "تعليم" اللاعب على عدم الرد على صوت المستخدم ، والذي يتم تسجيله أيضًا بواسطة ميكروفون الهاتف - إلى جانب الضوضاء الخارجية.

على هذا ، تم الانتهاء من خوارزمية معالجة الصوت الرياضية. بالإضافة إلى وضع Denoiser ("لا ضجيج") ، توصل المطورون إلى وظائف الاستماع إلى الموسيقى والأصوات المحيطة في نفس الوقت (على سبيل المثال ، في مترو الأنفاق - من المفيد سماع أسماء المحطات المرسلة).

ولكن أصبح الوضع الطبيعي ("السبر الطبيعي") فخرًا خاصًا بالمطورين. في هذا الوضع ، يتم تحقيق تجانس التشوهات التي يتم إدخالها في الإشارة الصوتية بواسطة أجهزة جهاز إعادة الإنتاج ، بالإضافة إلى الخصائص الفردية لسمع المستخدم (باستثناء حالات ضعف السمع الواضح).

صورة صورة

يتم تحقيق التأثير الطبيعي أيضًا بفضل الخوارزمية الرياضية "الماكرة" لمعالجة الإشارة الصوتية. جوهرها هو تقييم الاستجابة الترددية لجهاز إعادة الإنتاج نسبة إلى العتبة الشخصية للسمع في صمت (لكل مستخدم هذه العتبة مختلفة) - وإدخال عامل التصحيح. من الناحية العملية ، هذا يعني أنه بعد قضاء دقيقتين في إعداد المشغل (باستخدام الإجراء المضمن لتحديد عتبة السمع) ، يمكنك الاستمتاع بالألوان الحية للموسيقى. وتشعر بنفسك في قاعة حفلات حقيقية!

المزيد من ألوان قوس قزح و ...


تم تصحيح الخوارزمية الرياضية للاعب. ولكن لتحويله إلى تطبيق محمول كامل ، كان مطلوبًا واجهة سهلة الاستخدام. وعادت الصعوبات للظهور. تعذب المطورون لفترة طويلة جدًا من خلال مزامنة رسم الرسوم المتحركة (على وجه الخصوص ، Spectrum - بحيث لا "يشن" ويتزامن مع تحديثات شاشة الهاتف المحمول). لم يتم تعريف فئة CADisplayLink بشكل صريح في أي مكان. هذا ، بالطبع ، هناك وثائق. ولكن حاول أن تجد تعليمات محددة بأن "هذا مهم جدا وضروري"!

«» . iOS ( ) . , . , , ( AudioGraph , – ). , ( «Hello world», , , ..). !

صورة

فيما يلي لمحة تاريخية عن إنشاء UrbanDenoiser Player - أول لاعب في العالم يتميز بأنماط تشغيل فريدة. نتيجة شهور عديدة من العمل من قبل فريق ودود من المتخصصين متاحة الآن للجميع - يتم توزيع اللاعب بحرية!

ملاحظة: من آخر الأخبار - أصبح تطبيق UrbanDenoiser Player هو الفائز بكأس المطورين الأوروبيين الذي أقامته Microsoft ، في فئة B2C http://appcup.eu

شكرًا لك على اهتمامك !

All Articles