270 likes | 588 Views
مبانی صدای دیجیتال قسمت دوم روشهای کد کردن صوت. استاد درس: علی بهلولی. روشهای کد کردن صوت. کدینگ PCM. ساده ترین تکنیک برای تولید سیگنال دیجیتال از سیگنال آنالوگ استفاده از همان تکنیک گسسته کردن در محور زمان و کوانتیزه کردن. شکل a ) سیگنال آنالوگ اصلی شکل b ) سیگنال دیکدشده پله ای
E N D
مبانی صدای دیجیتالقسمت دومروشهای کد کردن صوت استاد درس: علی بهلولی دانشگاه اصفهان - درس سیستمهای چند رسانهای
روشهای کد کردن صوت دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ PCM • ساده ترین تکنیک برای تولید سیگنال دیجیتال از سیگنال آنالوگ • استفاده از همان تکنیک گسسته کردن در محور زمان و کوانتیزه کردن شکل a) سیگنال آنالوگ اصلی شکل b) سیگنال دیکدشده پله ای شکل c) سیگنال بازیافت شده با استفاده از فیلتر پایین گذر دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ PCM حذف فرکانسهای کمتر از 20 هرتز و بزرگتر از 4 کیلو هرتز دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ PCM این دو بلاک با همدیگر باعث کوانتیزه کردن غیر یکنواخت سیگنال می شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ PCM تبدیل دیجیتال به آنالوگ دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ PCM عکس تابع یکنواخت ساز دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ PCM حذف فرکانسهای بالاتر از 4 کیلوهرتز که به خاطر کوانتیزاسیون ایجاد شده است دانشگاه اصفهان - درس سیستمهای چند رسانهای
فایلهای WAV • فایلهای WAV در ویندوز بر مبنای کدینگ PCM می باشند • این فایل از یک هدر حاوی فرکانس نمونه برداری، تعداد بیتها به ازای هر سمبل و تعداد نمونه ها و نوع mono یا Stereo می باشد • با استفاده از دستورات مطلب براحتی می توان فایلهای WAV را خواند، تغییرات اعمال کرد و ذخیره یا پخش کرد دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ تفاضلی • کدینگ PCM حافظه زیادی مصرف می کند • معمولا از تفاضل برای کد کردن استفاده می شود تا اعداد کوچکتر شوند و تعداد بیت کمتری برای ذخیره سازی نیاز داشته باشند • چون نمونه ها در محور زمان به نحوی با یکدیگر رابطه دارند بنابراین تفاضل باعث فشرده شدن هیستوگرام حول مقدار صفر می گردد • به عنوان مثال در صورتی که سیگنال به صورت تابع رمپ باشد آنگاه هیستوگرام تفاضلی آن به صورت یک ضربه می شود • بنابراین تعداد بیتهای تخصیصی به هر کد کاهش می یابد دانشگاه اصفهان - درس سیستمهای چند رسانهای
Lossless Predictive Coding • در این روش مقدار بعدی سیگنال پیشبینی می شود و تفاضل آن با مقدار واقعی ارسال می شود • در ساده ترین حالت، مقدار پیشبینی را می توان برابر با مقدار قبلی سیگنال در نظر گرفت دانشگاه اصفهان - درس سیستمهای چند رسانهای
Lossless Predictive Coding • برای اینکه پیشبینی صحیحتر باشد و به مقدار واقعی نزدیکتر باشد می توان مقدار پیشبینی شده را تابعی از مقادیر قبلی سیگنال در نظر گرفت دانشگاه اصفهان - درس سیستمهای چند رسانهای
Lossless Predictive Coding دانشگاه اصفهان - درس سیستمهای چند رسانهای
Lossless Predictive Coding • وجود یک مشکل در ارسال e • اگر مقادیر سیگنال در بازه صفر تا 255 باشد آنگاه مقدار e در بازه 255- تا 255+ خواهد شد و به تعداد بیت بیشتری نیاز است • راه حل اول: استفاده از کدها با طول های متغیر (Variable Length Coding) • راه حل دوم: تعریف دو کد جدید و خاص به نامهای Shift-Up و Shift-Down • در این راه حل تعداد کدهای را محدود می کنیم مثلا بین 15- تا 16+، اگر مقدار e خارج از این بازه قرار گرفت، به تعداد کافی کدهای SU یا SD ارسال می کنیم • برای بازه فوق ، SU معادل با 32 و SD معادل با 32- است • مثلا برای ارسال عدد 100برای e، رشته SU ,SU ,SU ,4 ارسال می شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام Lossless Predictive Coding دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ DPCM • این روش مشابه روش قبلی است با این تفاوت که e کوانتیزه و سپس ارسال می شود • بنابراین الگوریتم DPCM از نوع Lossy است دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ DPCM • چرا در این روش برای محاسبه مقدار پیشبینی از مقادیر واقعی استفاده نمی شود؟ • به علت lossy بودن الگوریتم سمت گیرنده به مقادیر واقعی دسترسی ندارد بنابراین مقدار پیشبینی دو طرف با هم برابر نمی شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ DPCM دانشگاه اصفهان - درس سیستمهای چند رسانهای
مثالی از کدینگ DPCM دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ Delta Modulation • در این روش مقدار e یک بیتی در نظر گرفته می شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
مثال کدینگ Delta Modulation • با فرضk=4 و آنگاه: اگر تغییرات سیگنال اصلی شدید باشد آنگاه امکان دنبال کردن آن وجود ندارد دانشگاه اصفهان - درس سیستمهای چند رسانهای
بهبود کدینگ Delta Modulation • اگر مقدار K به صورت وفقی تعیین شود آنگاه این مشکل تا حدودی قابل حل است دانشگاه اصفهان - درس سیستمهای چند رسانهای
کدینگ Adaptive DPCM • این روش کدینگ مشابه DPCM است با این تفاوت که دو قسمت به صورت وفقی عمل می کنند: • قسمت پیش بینی کننده • کوانتیزه کردن خطا • در این روش اگر از سیگنال ورودی برای تغییر وفقی دو پارامتر فوق استفاده شود اصطلاحا Forward Adaptive Quantization گفته می شود و اگر از خروجی کوانتایز شده استفاده گردد اصطلاحا Backward Adaptive Quantization گفته می شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
بلاک دیاگرام کدینگ ADPCM دانشگاه اصفهان - درس سیستمهای چند رسانهای