320 likes | 571 Views
مبانی صدای دیجیتال قسمت سوم واسط MIDI. استاد درس: علی بهلولی. Musical Instrument Digital Interface MIDI (رابط رقمي ابزار موسيقي). تفاوت موزیک و صوت. موزیک برخلاف صوت از ترکیب چندین نت سینوسی محدود ایجاد شده است طیف فرکانسی موزیک خیلی محدودتر از طیف فرکانسی صوت است
E N D
مبانی صدای دیجیتالقسمت سومواسط MIDI استاد درس: علی بهلولی دانشگاه اصفهان - درس سیستمهای چند رسانهای
Musical Instrument Digital Interface MIDI (رابط رقمي ابزار موسيقي) دانشگاه اصفهان - درس سیستمهای چند رسانهای
تفاوت موزیک و صوت • موزیک برخلاف صوت از ترکیب چندین نت سینوسی محدود ایجاد شده است • طیف فرکانسی موزیک خیلی محدودتر از طیف فرکانسی صوت است • در صورت استفاده از روش کدینگ PCM موزیک و صوت به صورت یکسان برخورد می شود و حجم فایل حاصل یکسان می شود. نمونه ای از یک سیگنال صوتی نمونه ای از یک سیگنال موزیک دانشگاه اصفهان - درس سیستمهای چند رسانهای
روشی دیگر برای ذخیره موزیک • آیا راه حل دیگری برای ذخیره موزیک وجود دارد تا از خصوصیت ذکر شده استفاده گردد؟ • بهتر است به جای ذخیره نمونه های تشکیل دهنده سیگنال موزیک از نتهای تشکیل دهنده آن استخراج و خصوصیات آن نتها ذخیره گردد. • دستگاه های تولید موزیک نظیر سنتور و پیانو همین نتها را ایجاد می کنند • در کارتهای صوتی اولیه نیز امکان ایجاد نتها در کارت فراهم آورده شده بود • در صورت استفاده از این روش حجم فایلهای موزیک خیلی خیلی کاهش می یابد • امکان ذخیره چند دقیقه موزیک در یک فایل 2 یا 3 کیلو بایتی بوجود می آید دانشگاه اصفهان - درس سیستمهای چند رسانهای
MIDI (رابط رقمي ابزار موسيقي) استفاده از امکانات کارتهای صوتی برای تولید موزیک← نیاز به یک زبان اسکریپت ساده و پیکر بندی سخت افزار دارد که اصطلاحا MIDI نامیده می شود • مقدمه MIDI • MIDI یک زبان اسکریپتی است–این زبان، رویدادهایی(Events) را که برای تولید صدا هستند را کد می کند. برای مثال: یک MIDI ممکن است شامل مقادیر فرکانس یک نت، مدت و دامنه آن باشد. • MIDI توسط صنعت موزیک الکترونیک برای کنترل و ارتباط ابزارهای تولید کننده موزیک نیز می باشد دانشگاه اصفهان - درس سیستمهای چند رسانهای
مقدمه MIDI • (c) استاندارد MIDI توسط اکثر سنتز کننده ها(ابزار تولید صدا)پشتیبانی می شود، بنابراین صداها بر روی یک سنتزکننده ایجاد و در سایر ترکیب کننده ها قابل پخش و دستکاری می باشد • (d) رایانه ها باید واسط مخصوص MIDI داشته باشند ، اما واسط MIDI دراغلب کارت های صدا جا داده می شود. همچنین کارت صدا باید تبدیل کننده D/A وA/D داشته باشند. دانشگاه اصفهان - درس سیستمهای چند رسانهای
مفاهیم MIDI • در این استاندارد ابزار پشتیبانی کننده MIDI به یکدیگر متصل می شوند و هر کدام دارای یک شماره کانال (آدرس) می باشند • پیامهایی بین این دستگاه ها رد و بدل می شود که با توجه به آدرس موجود در هر پیام مشخص می شود مقصد پیام کجاست • چهار بیت کم ارزش هر پیام شماره کانال می باشد بنابراین امکان اتصال 16 دستگاه به یکدیگر وجود دارد • معمولا هر کانال با یک وسیله موسیقی خاص متناظر می شود : مثلا کانال 1 پیانو است، کانال 10، درام و غیره. • با این حال ، هر شخص می تواند در صورت تمایل نیمی از کانال مورد نظر را به وسیله دیگری اختصاص داده یا هر کانالی را به وسیله مورد نظر مرتبط نماید. دانشگاه اصفهان - درس سیستمهای چند رسانهای
مفاهیم MIDI • پیام های سیستمی • چندین نوع پیام وجود دارد مثلا پیام های عمومی برای همه وسایلی که tuning یا timing کانال را تعیین می کنند. • اگر 4 بیت اول همه 1 باشند، پیام به عنوان یک پیام عمومی(System Common) تفسیر می شود. • ابزار موزیکال به صورت سریال به یکدیگر متصل شده اند و روشی که آنها برای پاسخ دهی به پیام های MIDI استفاده می کنند، اینست که به سادگی سایر درخواست های کانال های دیگر را برای اجرا رد کرده تا تنها در کانال مربوطه اجرا شود. • ممکن است چندین پیام برای یک کانال باشد، در این صورت دستگاه مربوطه باید امکان تولید چندین نت به صورت همزمان را داشته باشد. دانشگاه اصفهان - درس سیستمهای چند رسانهای
مفاهیم MIDI • هر پیام در MIDI از یک یا دو یا سه بایت تشکیل شده است. • این بایتها یا حاوی اطلاعات وضعیت هستند یا حاوی دیتا • • مقدار بایت وضعیت MIDI بین 128 و 255 است(بیت پر ارزش عدد هشت بیتی مربوطه، یک است) و هر بایت دیتا بین 0 و 127 است است(بیت پر ارزش عدد هشت بیتی مربوطه، صفر است). • در واقع برای ارسال یک بایت، از یک بیت شروع و یک بیت پایان نیز استفاده می شود که مجموعا 10 بیت می شود. • یک پیام MIDI: این پیام، سه بایتی است. و فرمان شروع یک نت را صادر کرده است • بایت اول از نوع وضعیت است و دو بایت بعدی از نوع دیتا • {فرمان فعال شدن نت، شماره نت ، دامنه نت} دانشگاه اصفهان - درس سیستمهای چند رسانهای
مفاهیم MIDI • • یک وسیله MIDI اغلب توانایی برنامه ریزی دارد، و همچنین میتواند دامنه نت را در محور زمان، تغییر داد. • در شکل مدلی از پاسخ به وسیله دیجیتالی به پیغام Note On را نشان میدهد : • موسیقی بر حسب زمان noteمراحل دامنه دانشگاه اصفهان - درس سیستمهای چند رسانهای
سخت افزار MIDI • سخت افزار MIDI شامل یک ارتباط سریال با سرعت 31.25 کیلوبیت بر ثانیه است. معمولا، ابزارهایی که از MIDI پشتبیانی می کنند یا ورودی هستند یا خروجی، نه هر دو باهم. • ابزار تولید کننده MIDI قدیمی دانشگاه اصفهان - درس سیستمهای چند رسانهای
سخت افزار MIDI • پورت های MIDI فیزیکی شامل کانکتورهای 5-pin است که از سه پایه آن استفاده شده است. 2 تا برای IN وOUT ، و همچنین یک پایه برای THRU • در پورتهای بازی 15 پایه روی کارتهای صوتی نیز سه پایه فوق وجود دارند • ارتباطاتMIDI یکطرفه(Half-Duplex) است. • MIDI IN ،پایهای است که وسیله دریافت کننده همه داده های MIDI است. • MIDI OUT پایه ای است که وسیله انتقال همه ی داده های MIDI که توسط خود دستگاه تولید می شود. • MIDI THRU پایه ای است که وسیله بازتاب کننده (Echo)ی داده هایی است که از MIDI INدریافت میشود. توجه کنید که فقط داده MIDI IN است که توسط MIDI THRU بازتاب می شود– همه داده هایی که به وسیله خودشان فرستاده می شوند به واسطه MIDI OUTتولید شده است. دانشگاه اصفهان - درس سیستمهای چند رسانهای
سخت افزار MIDI نحوه اتصال چندین دستگاه پشتیبانی کننده از MIDI دانشگاه اصفهان - درس سیستمهای چند رسانهای
ساختار پیام MIDI •پیام های MIDI به دو نوع دسته بندی می شوند: پیام های کانال و پیام های سیستم شکل 6.12.طبقه بندی پیغام MIDI دانشگاه اصفهان - درس سیستمهای چند رسانهای
انواع پیامها در MIDI • پیام های کانال: این پیامها حداکثر 3 بایتی هستند • اولین بایت، بایت وضعیت است (یا بایت Opcode) ; با ارزش ترین بیت 1 است • 4 بیت کم ارزش این بایت مشخص می کند پیام مربوط به کدام دستگاه است • 3 بیت باقیمانده ، نوع پیام را مشخص می کند. • بسته به نوع فرمان که در 3 بیت بایت اول مشخص شده است ممکن است صفر یا یک یا دو بایت از نوع داده در ادامه پیام ارسال شود(پارامترهای فرمان) • انواع پیام های کانال (پیامهای صدا) • این نوع از پیام کانال برای کنترل صدا استفاده می شود. مثلا اینکه نت خاصی اجرا یا خاموش گردد • همچنین از پیام های صدا برای کنترل کردن پارامترهای نت استفاده می شوند دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیام های کانال: Voice Msg Voice Msg دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیام های کانال: Mode Msg • پیام ها حالت کانال(Mode Message) • پیام های حالت زیر مجموعه ای از پیام Control Change می باشد که در قسمت Voice Msgدر جدول قبل گفته شد ---> این فرمانها 3 بایتی هستند که بایت اول آن &HBn است و دو بایت بعدی انواع پیامهای Mode Msg را مشخص می کنند • پیام های Channel mode تعیین می کنند که دستگاهها،چگونه پیامهای MIDI voice پردازش کنند: به همه پیغام ها پاسخ میدهد ، فقط به کانال صحیح پاسخ میدهد نه به همه ، و یا به محل کنترل سند منتقل میشود . دانشگاه اصفهان - درس سیستمهای چند رسانهای
Mode Messages • پیام های حالتMIDI دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیامهای سیستم • . B پیغام های سیستم : • پیغام های سیستم شماره کانال ویژه ای را ندارند ومربوط به شماره کانال خاصی نیستند ، مثل سیگنال زمان بندی برای همگام سازی، قرار دادن اطلاعات در رشته قبل از مرحله ضبط MIDI ، و سایر جزئیات و اطلاعات تصب برای دستگاه مقصد. • Opcode ها برای همه پیام های سیستم با &HF شروع میشوند. • پیام های سیستم براساس استفاده شان به سه دسته تقسیم می شوند: دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیامهای سیستم • پیام های دستور سیستم : که مربوط به زمان بندی یا موقعیت هستند. • پیام های عمومی سیستم MIDI • )System Common Message( دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیامهای سیستم • پیام های بلادرنگ سیستم : برای سنکرون کردن دستگاه ها • جدول 6.6 : پیام های Real-Time سیستم MIDI دانشگاه اصفهان - درس سیستمهای چند رسانهای
پیامهای سیستم • پیغام انحصاری سیستم(System Exclusive Massage) : شامل استانداردهایی MIDI میشود که به وسیله تولیدکنندگان توسعه داده می شوند: • بعد از کد اصلی ، یک جریانی از پیغام های خاص می تواند گذاشته شود که برای تولید خودشان بکار برده می شود . دانشگاه اصفهان - درس سیستمهای چند رسانهای
فایلهای MIDI • فایل MIDI از کنار هم قرار گرفتن فرمانهای MIDI در کنار هم تشکیل شده است • تمامی فرمانهایی که در فایلهایی که برای پخش موسیقی در کامپیوتر یا موبایلها استفاده می شوند، دارای یک شماره کانال می باشند • هر فرمان به صورت یک رکورد در فایل MIDI ذخیره می شود که دارای 8 فیلد است: • شماره تراک، شماره کانال، شماره نت، دامنه، زمان شروع، زمان پایان، شماره روشن شدن و شماره خاموش شدن دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • در مطلب تابعی به صورت استاندارد برای پردازش فایلهای MIDI وجود ندارد • کتابخانه ای توسط افراد مختلف برای اینکار نوشته شده است که می توان از سایت درس دانلود شود • در ادامه یکی از این کتابخانه ها توضیح داده می شود دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • خواندن فایل و لود کردن آن دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • آنالیز کردن و دیدن اطلاعات فایل دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • تجزیه و تحلیل محتویات فایل و دیدن 5 رکورد اول فایل دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • ساخت یک فایل MIDI دانشگاه اصفهان - درس سیستمهای چند رسانهای
پردازش فایلهای MIDI در مطلب • تبدیل فایل MIDI به WAV دانشگاه اصفهان - درس سیستمهای چند رسانهای
پایان دانشگاه اصفهان - درس سیستمهای چند رسانهای