پیدا کردن یک قطعه آهنگ با شنیدن بخشی از آن، نیاز به نمایه‌سازی مجموعه آهنگ‌ها دارد، درست مثل جستجوی واژه‌ها.

۱. مقدمه:

گاهی در بین راه یا در رستوران , در تاکسی آهنگی را می شنویم که جذبمان می کند . اما نه می توانیم خواننده ی آن و نه متن آن را تشخیص بدهیم.
برای رفع این مشکل application هایی مانند shazam , google sound search وجود دارد که با پخش موزیک برای آن , مشخصات موزیک مربوطه را پیدا
می کند.

Shazam Entertainment Ltd:
یک شرکت توسعه نرم افزار بریتانیا است که
برنامه ای را ایجاد می کند که می تواند موسیقی، فیلم، تبلیغات و برنامه های
تلویزیونی را براساس نمونه ای کوتاه و با استفاده از میکروفون در دستگاه شناسایی
کند. این نرم افزار برای ویندوز، macOS و گوشی های هوشمند در دسترس است

Google sound search :
برنامه ای برای دستگاهای اندرویدی است که به صورت widget قابل استفاده است که پخش موزیک
برای آن , نام و خواننده ی موزیک مربوطه
را به کاربر اعلام می کند.

این application ها علاوه بر تطبیق دادن صدا با آهنگ مربوطه , می بایست noise را از صدای پخش شده نیز بگیرد .
در این نوع application ها کار اصلی تبدیل سیگنال پیوسته به گسسته است که امروزه کارت صدای کامپیوتر ها این کار را انجام می دهند.

۲. کارهای مرتبط:

در این برنامه ها کار اصلی تبدیل سیگنال دیجیتال به آنالوگ است.
فررض کنید سیگنال زیر به عنوان ورودی به برنامه داده می شود.


کامپیوتر سیگنال ورودی را در هر مدت زمان مشخص 1 بار که به آن sample rate گفته می شود از ورودی می خواند و ذخیره می کند.که به آن sample ' گفته می شود.
ب طور مثال اگر sample rate 1 باشد , شکل سیگنال به صورت زیر خواهد شد.
توضیح تصویر

اصولا sample rate می بایست 2 برابر بیشترین فرکانس صورت باشد (44,100khz)

2.1. Time-Domain and Frequency-Domain:

دامنه ی ما می تواند زمان یا فرکانس باشد. الگوریتم اجرای این برنامه نیاز به دامنه ی فرکانسی دارد. از این رو باید دامنه را فرکانسی کنیم

توضیح تصویر

برای این کار از تبدیل فوریه گسسته استفاده می کنیم .
توضیح تصویر

حال هر کدام از sample هارا دسته بندی می کنیم. هر چند sample یک data chunck است .
برنامه با استفده از این data chunck ها موزیک را سرچ می کند.

۳. آزمایش‌ها

۴. کارهای آینده

۵. مراجع

https://www.bbc.co.uk/education/guides/zpfdwmn/revision/3
https://www.toptal.com/algorithms/shazam-it-music-processing-fingerprinting-and-recognition
https://en.wikipedia.org/wiki/Time_domain
https://en.wikipedia.org/wiki/Sampling_%28signal_processing%29

??? ????? ???????? ?????? ??? ???????? ???????

۶. پیوندهای مفید

توضیح تصویر

  1. مفهوم نمایه سازی

  2. Audio Fingerprinting with Python and Numpy

  3. Echoprint

  4. Pydub(python library)

  5. MySQL on Ubuntu

  6. Duplicate songs detector via audio fingerprinting

محمد حسن سوهان آجینی

سلام
بخش مقدمه قابل قبول است. هر چند جا برای توضیح بیشتر وجود داشت.
در بخش کارهای مرتبط رعایت چند مورد باید رعایت شود:
۱- زیرنویس مناسبی برای عکس‌ها تهیه شود. در حال حاضر هیچ توضیح مناسبی برای تصاویر وجود ندارد.
۲- هیچ یک از مراجع مورد استفاده‌ی شما، مرجع قابل استنادی نیستند! در واقع می‌بایست آنها را در بخش پیوندهای مفید می‌آوردید.
۳- طبق مورد ۲، شما از هیچ مرجعی برای نوشتن متن استفاده نکرده‌اید.
۴- موارد ذکرشده در بخش «کارهای مرتبط»، تنها شامل پیش‌پردازش اولیه‌ی سیگنال است. اما هیچ کار مربوط به پیدا کردن اثر انگشتی را ذکر نکردید.