فشرده سازی صوت

کوانتیزه کردن
• خطی
– فواصل ثابت
– مستقل از دامنه
• غیر خطی
– فواصل متغیر
– افزایش فواصل در دامنه های بالا
– نگاشت لگاریتمی
مدولاسیون داده
• به جای کد کردن دامنه واقعی فقط افزایش یا کاهش را به کمک یک بیت کد کنیم

PCM Differential
• Differential PCM = DPCM
• تفاضل دامنه فعلی با دامنه قبلی توسط بیت های کمتر
• ADPCM
• Adaptive Differential PCM
– بخش های ساکت بیت کمتر
– بخش های شلوغ بیت بیشتر
فشرده سازی به روش Psycho-Acoustic
• حذف بخش های غیر قابل شنود
• تاثیرات ماسکها
– یک سیگنال با دامنه زیاد سیگنالهای کم دامنه مجاور خود را ماسک میکند

MPEG AUDIO
• فشرده سازی:
– ۳۲ ، ۶۴ ، ۹۶ ، ۱۲۸ یا ۱۹۲ کیلو بیت درثانیه
• کانالها:
– تک باند (mono )
– دو باند مستقل
– استریو مشترک Joint Stereo
MPEG AUDIO
• نرخ نمونه برداری :
– ۳۲Khz
– ۴۴٫۱ Khz
– ۴۸ Khz
• هر نمونه به صورت ۱۶ بیتی
• حداکثر تاخیر در گدگذاری و کدگشایی : ۸۰ میلی ثانیه
• استفاده از Psycho –acoustic در کوانتیزه کردن

کدگذار و کدگشای MPEG

تاریخچه MP3
• Fraunhofer Institut
– موسسه تحقیقاتی ( کشور آلمان )
– بکارگیری خواص شنوایی انسان برای فشرده سازی صوت
• استاندارد –ISO
• حداکثر ضریب فشرده سازی برابر با ۱۲
• ISO کلیات را بیان کرده
• جزئیات وابسته به نحوه پیاده سازی

لایه های صوت در MPEG
• Frame ها
• شامل ۳۸۴ نمونه
• این نمونه های مربوط به ۳۲ Sub-Band هستند
• برای هر sub-band 12 مقدار ذخیره میشود

لایه های صوت در MPEG
• لایه ۱: ماسک کردن فرکانس
– استفاده از فیلتر DCT
– بررسی فقط یک فریم
• لایه ۲ : ماسک موقتی
– سه فریم ( قبلی ، فعلی ، بعدی )
– شبیه سازی شنوایی انسان
لایه های صوت در MPEG
• لایه ۳ : ماسک غیرخطی :
– فرکانس ها به باندهایی باپهنای متفاوت تقسیم میشوند
– کانالهای استریو به صورت تفاضلی کدگذاری میشوند
– فشرده سازی ضرایب به روش هافمن
لایه ۱
• تاثیرات Psycho- Acoustic
• حساسیت گوش انسان

لایه ۱
• تاثیرات ماسک فرکانس
– یک سیگنال با فرکانس ۱KHz (فرکانس ماسک ) تولید میکنیم سپس سیگنالی با فرکانس نزدیک به آن مثلا ۱٫۱KHz و با شدت کم تولید میکنیم دامنه این فرکانس را به تدریج افزایش میدهیم تا شنیده شود

لایه ۱
• فشرده سازی
• سیگنال اصلی به ۳۲ باند اصلی تقسیم میشود Critical Band
• برای هر باند رویه ماسک تعریف میشود که نشان میدهد کدام سطح از سیگنال می تواند توسط باندهای مجاور ماسک شود .

لایه ۱
• الگوریتم :
۱٫ محاسبه انرژی در هر باند
۲٫ اگر انرژی آن کمتر از انرژی باند مجاور است آن را کدگذاری نکن
۳٫ درغیراینصورت باند را کدگذاری کن
۴٫ ضرایب را کوانتیزه کن
۵٫ فاکتور کوانتیزه را به گونه ای انتخاب کن که خطای آن کمتراز فاکتور ماسک باشد ( هر بیت کوانتیزه معادل ۶db است)
مثال
• سطوح مربوط به ۱۶ باند ازبین ۳۲ باند اول

لایه ۲ – فشرده سازی
• تاثیرات Psycho-Acoustic
– Temporal Masking : یک صدای قوی که ناگهان قطع میشود
– آزمایش :یک سیگنال قوی مثلا ۶۰db با فرکانس ۱kHz پخش میشود همراه با آن یک سیگنال ضعیف ۴۰db با فرکانس ۱٫۱KHz پخش میکنیم ( این سیگنال ماسک میشود)
– با قطع سیگنال تست برای مدت زمان مشخضی سیگنال ضعیف نیز شنیده نمیشود

لایه ۲ – فشرده سازی
• آزمایش بالا را با فرکانسهای مختلف تکرار میکنیم

لایه۲- فشرده سازی
• مشابه با لایه ۱ از این امکان برای ماسک فریم های مجاور استفاده میکنیم
• برای سادگی کار فرش میکنیم که این ماسک فقط میتواند بردی به اندازه یک فریم داشته باشد
لایه ۳ – تاثیرات psycho- Acoustic
• دقت تشخیص شنوایی انسان با افزایش فرکانس کاهش می یابد
• در لایه ۱و ۲ طیف فرکانسی به ۳۲ فریم با اندازه های یکسان تقسیم شد
• در لایه سوم فرکانس ها به روش غیرخطی تقسیم میشوند
• به گونه ای که میزان خطای شنوایی در همه باند ها یکسان باشد
لایه ۳
• Bark
• برگرفته از نام Barkhausen
• یک Bark برایر با عرض یک باند حیاتی Critical Band است

لایه ۳ – آستانده های موجود در باندهای حیاتی

لایه ۳
• این لایه به سیستم شنوایی انسان نزدیکتراست چراکه از Bark ها برای تقسیم بندی فرکانس استفاده میکند