| QMIDIARP(1) | General Commands Manual | QMIDIARP(1) |
نام (NAME)
qmidiarp - آرپژاتور و LFO برای MIDI
خلاصه دستور (SYNOPSIS)
qmidiarp [OPTION] [file]
qmidiarp { --help | --version }
توضیحات (DESCRIPTION)
برنامهٔ QMidiArp یک آرپژاتور پیشرفتهٔ MIDI، ترتیبسنج گامی (step sequencer) برنامهپذیر و LFO است. این ابزار با هر دو سیستم صوتی JACK MIDI یا ALSA MIDI کار میکند و میتواند هر تعداد ماژول آرپژاتور یا LFO را بهصورت موازی اجرا کند. ماژولهای آرپژاتور بر اساس نتهای ارسالشده به پورت ورودیشان توالیهایی تولید میکنند؛ این پورت معمولاً به یک صفحهکلید (keyboard) یا ترتیبسنج دیگر متصل است. ماژولهای ترتیبسنج گامی امکان ساخت توالیهای ساده، خطی، تکصدایی (monophonic) و بهطور سراسری قابل انتقال (transposable) را مشابه با نخستین ترتیبسنجهای آنالوگ فراهم میکنند. LFOهای MIDI دادههای کنترلر MIDI را با شکلموج، تفکیکپذیری زمانی، دامنه و مدتزمان قابل تنظیم بهطور مستقل تولید میکنند. برای هر ماژول، یک فیلتر نت ورودی در دسترس است و پورت و کانال خروجی میتوانند بهصورت جداگانه تنظیم شوند. از آنجا که ماژولها از یک صف ترتیبسنج مشترک استفاده میکنند، بهطور خودکار با یکدیگر همگام (sync) هستند. QMidiArp با تفکیکپذیری زمانی داخلی ۱۹۲ تیک در هر ضرب کار میکند. صف میتواند با یک ساعت بیدرنگ (realtime clock) ورودی MIDI یا به عنوان یک کلاینت JACK transport همگامسازی شود. بیشتر مؤلفههای کنترلی مهم از طریق کنترلر MIDI و به واسطهٔ زیرساخت MIDI-learn قابل دسترسی هستند. برنامهٔ QMidiArp همچنین ابزاری برای گزارشگیری دارد که تاریخچهٔ رخدادهای ورودی MIDI را با رنگهای مختلف بر اساس نوع آنها نمایش میدهد. برنامهٔ QMidiArp بر پایهٔ جعبهابزار گرافیکی Qt4 ساخته شده است.
عملکرد عمومی (General Operation)
هنگامی که هیچ گزینه خط فرمانی مشخص نشود، QMidiArp به عنوان یک کلاینت JACK MIDI با یک پورت ورودی و دو پورت خروجی اجرا میشود. برای راهاندازی QMidiArp به عنوان یک کلاینت ALSA، از گزینهٔ -a استفاده کنید. یک ماژول جدید آرپژاتور یا LFO را میتوان با کلیک بر روی یکی از دکمههای Add Arp..., Add LFO... یا Add Step Sequencer... ایجاد کرد، که زبانهای جدید شامل ماژول انتخابشده را در ناحیهٔ اصلی نمایش میدهد. ماژولها را میتوان با دکمهها یا عملکردهای منوی متناظر تغییر نام داد یا حذف کرد. همچنین ماژولها میتوانند از پنجرهٔ اصلی جدا شوند تا امکان مشاهده و کنترل موازی آنها فراهم شود. با کلیک بر روی آیکون سمت چپ نوار عنوان هر ماژول، میتوان آنها را دوباره به پنجرهٔ اصلی بازگرداند. همچنین در صورتی که پنجرهٔ اصلی پیش از الصاق دوبارهٔ یک ماژول به اندازهٔ کافی کشیده شود، میتوان ماژولها را در همان پنجره کنار یکدیگر چیدمان کرد. کل پیکربندی شامل تمام آرپها، توالیها و LFOهای نوار زبانهها به همراه پارامترهای تعیینشده در پنجرهٔ Settings میتواند در قالب یک فایل XML اختصاصی QMidiArp (با پسوند .qmax) ذخیره یا بارگذاری شود. مقدار tempo (تمپو یا ضربآهنگ) صف میتواند بر حسب ضرب در دقیقه (BPM) تنظیم شود و روی تمام ماژولها تأثیر میگذارد. صف از طریق دکمهٔ فلش آبیرنگ شروع و متوقف میشود.
عملکرد ساعت MIDI (تنها در ALSA MIDI)
در حالت ALSA، برنامهٔ QMidiArp با استفاده از ساعت و تمپوی داخلی خود اجرا میشود، اما بهصورت اختیاری میتواند از رخدادهای ورودی ساعت MIDI به عنوان منبع ساعت و کنترل شروع/توقف استفاده کند. اگر دکمهٔ ساعت MIDI واقع در سمت راست کادر تمپو فشرده شود، صف در حال اجرای ALSA متوقف شده و QMidiArp منتظر دریافت رخداد "MIDI Clock Start" از یک منبع خارجی متصل به ورودی MIDI برنامه خواهد ماند. با دریافت این رخداد، صف با استفاده از رخدادهای ساعت بیدرنگ MIDI به عنوان منبع ساعت شروع به کار میکند. QMidiArp زمانی در بهترین حالت هماهنگی با ساعت MIDI ورودی باقی میماند که مقدار تمپوی داخلی آن (به بالا مراجعه کنید) تقریباً با ساعت ورودی مطابقت داشته باشد. با این وجود، تمپوی ساعت MIDI در حین اجرای صف اندازهگیری میشود؛ بنابراین چنانچه تمپوی ساعت MIDI و تمپوی QMidiArp متفاوت باشند، همگامسازی از دومین شروع صف پایدار خواهد شد. صف با دریافت رخداد MIDI Clock Stop متوقف میشود. در طول کار با ساعت MIDI، عملکردهای شروع و توقف ساعت داخلی خود QMidiArp و همچنین افزودن یا بارگذاری پیکربندیهای جدید غیرفعال میشوند. با برداشتن تیک دکمهٔ ساعت MIDI، این امکانات دوباره فعال خواهند شد..SS "عملکرد کلاینت ترنسپورت جک (JACK Transport Client Operation)" هنگامی که دکمهٔ Jack Transport Connect فشرده شود، QMidiArp تلاش میکند به یک کارساز Jack در حال اجرا متصل شده و سپس به عنوان یک کلاینت Jack Transport عمل کند؛ یعنی ضربآهنگ (tempo) خود را تنظیم کرده و با مستر در حال اجرای Jack Transport همگام باقی بماند. توجه داشته باشید که هر زمان ترنسپورت Jack شروع به کار کند، صرفنظر از موقعیت Jack Transport، برنامهٔ QMidiArp صف خود را از صفر بازنشانی خواهد کرد. این موضوع در مورد صفهای تکرارشوندهٔ (looping) ترنسپورت Jack نیز صدق میکند. چنانچه QMidiArp به دلیل خاموش شدن احتمالی Jack از آن قطع شود، یا اگر Jack در زمان اتصال در دسترس نباشد، دکمهٔ Jack بهطور خودکار رها خواهد شد.
نکته: وضعیت دکمههای MIDI Clock و Jack Transport همراه با فایل نشست QMidiArp ذخیره میشوند و با بارگذاری فایل نشست جدید، فعال یا غیرفعال خواهند شد.
ماژولهای آرپژیویتور (Arpeggiator Modules)
آرپژیویتورهای QMidiArp میتوانند الگوهای پیچیدهای مشتق از نتهای نواختهشده روی صفحهکلید MIDI تولید کنند. ماژولهای آرپژیویتور QMidiArp از آرپژیویتور سختافزاری MAP1 اثر Rudi Linhard الهام گرفته شدهاند.
پانلهای ورودی و خروجی (Input and Output panels)
هر آرپژیویتور دارای یک پانل Input (ورودی) و یک پانل Output (خروجی) است. پانل Input محدودهٔ نتها و کانال MIDI اختصاصیافته به آرپژیویتور را تعیین میکند. نتهایی که از این فیلتر ورودی عبور کنند، بر اساس زیروبمی (pitch) مرتب شده و به بافر داخلی نتهای آرپژیویتور افزوده میشوند. نتهای ورودی که با هیچ فیلتری مطابقت ندارند، یا نادیده گرفته میشوند یا به یک پورت MIDI قابل انتخاب فرستاده میشوند (به Settings مراجعه کنید). پانل Output شامل تنظیمات مربوط به MIDI channel و output port است که نتهای آرپژیویتور به آن فرستاده خواهند شد.
الگوهای آرپژیویتور (Arpeggiator Patterns)
الگوهای آرپژیو را میتوان در پانل Pattern انتخاب و ویرایش کرد. Pattern presets (پیشتنظیمهای الگو) از یک جعبهٔ کشویی (combo box) قابل انتخاب هستند. الگوی فعال کنونی به شکل یک صفحهٔ پیانو رول (piano roll) نمایش داده میشود که نتهای پایه را به صورت خطوط نواری نشان میدهد. مقیاس محور y در پنجرهٔ گرافیکی متناظر با نمایهٔ نتها در الگو است. تغییرات اکتاو (به Editing patterns مراجعه کنید) به شکل خطوط افقی اضافی نمایش داده میشوند. نتهایی که در نهایت ارسال میشوند، به نتهای ورودی دریافتشده توسط آرپژیویتور بستگی دارند. نتهای دریافتی به ترتیب صعودی به نتهای تعریفشده در الگو نسبت داده میشوند. به عنوان مثال، یک نوار منفرد در پایین نمایشگر آرپژیویتور (پیشتنظیمهای "simple") بدین معناست که در اولین دور اجرای الگو، بمترین نت نواختهشده روی صفحهکلید پخش میشود. اگر یک آکورد روی صفحهکلید نواخته شود و تنها یک نت در الگو موجود باشد، در دور اول اجرای الگو تنها بمترین نت فشردهشده به خروجی فرستاده میشود. برای تکرارهای بعدی الگو، از «حالت تکرار» برگزیده برای تعیین نتهای بعدی استفاده میشود. اگر الگو شامل نوارهای نت رویهمچیدهشده باشد (حالت آکورد یا chord mode)، آکوردهای نواختهشده روی صفحهکلید نیز به صورت آکورد با چندصدایی (polyphony) تا سقف تعداد نتهای تعریفشده در آن دسته به خروجی فرستاده میشوند.
حالت تکرار (Repeat Mode)
این تنظیم، رفتار آرپژیو را در چند تکرار از الگو هنگامی که تعداد نتهای فشردهشده روی صفحهکلید بیشتر از تعداد نتهای موجود در الگو باشد، تعیین میکند. هنگامی که Repeat Mode روی "Up" باشد، در هر تکرار، نت زیرتر بعدی نواختهشده روی صفحهکلید پخش میشود. با "Down"، نت بمتر بعدی پخش خواهد شد. با وجود تنها یک نت در الگوی آرپژیویتور، این قابلیت آرپژیوهای خطی کلاسیک ایجاد میکند. بدین ترتیب حتی الگوهای ساده مانند "01" (یا حتی "0") یک آرپژیو کامل تولید خواهند کرد. هنگامی که "Static" انتخاب شود، این حالت آرپژیو کلاسیک غیرفعال شده و نتهای خروجی ثابت باقی میمانند.
حالت راهاندازی (Trigger mode)
آرپژیویتورهای QMidiArp میتوانند در سه حالت اجرا شوند. حالت "No trigger" باعث میشود آرپژیویتور به طور پیوسته و هماهنگ با منبع کلاک داخلی یا خارجی اجرا شود. حتی در صورت نواخته شدن نتهای جدید، آنها به صورت میزانشده (کوانتایزشده) در صفِ در حال اجرا پخش خواهند شد. حالت "Kbd restart" موجب بازنشانی موقعیت نشانگر پخش با رسیدن نت خروجی بعدی میشود، اما الگوی خروجی همچنان نسبت به صف میزانشده باقی میماند. هنگامی که "Kbd trigger" انتخاب شود، هر نت جدیدی که به صورت استاکاتو نواخته شود، الگو را با زمانبندی همان نت نواختهشده راهاندازی (تریگر) میکند.
ویرایش الگوهای آرپژیویتور (Editing Arp patterns)
الگوهای آرپژیو توسط یک دنبالهٔ متنی شامل خود نتها به صورت اعداد، به همراه تغییرات کنترلی برای آکورد، ضربآهنگ، شدت ضربه (velocity) و تغییرات اکتاو تعریف میشوند. هنگامی که دکمهٔ Edit pattern در پانل الگو کلیک شود، پیشتنظیم الگوی جاری به صورت یک سطر ورودی متن ظاهر میشود. الگوی ویرایششده را میتوان با کلیک روی دکمهٔ Store pattern در فهرست پیشتنظیمها ذخیره کرد. الگوی فعال جاری را میتوان با کلیک روی دکمهٔ Remove pattern از فهرست پیشتنظیمها حذف کرد. تمامی الگوهای پیشتنظیم، هنگام ذخیره یا حذف الگو، بلافاصله در فایل منبع .qmidiarprc ذخیره میشوند و فهرست جدید الگوها برای سایر آرپژیویتورها در نوار زبانهها در دسترس قرار میگیرد. پیشتنظیمهای الگو با هر بار شروع برنامه بهطور خودکار بارگذاری میشوند.
دستور زبان متن الگو به شرح زیر است:
0..9 :
نمایههای
نت
+ : یک اکتاو
بالاتر
- : یک اکتاو
پایینتر
= : بازنشانی
به اکتاو
استاندارد
> : دو برابر
کردن
ضربآهنگ
< : نصف کردن
ضربآهنگ
. : بازنشانی
به
ضربآهنگ
استاندارد
( ) : آکورد،
شروع..پایان،
برای نمونه
(012) آکوردی از
سه نت بمتر
موجود در
بافر خواهد
بود
/ : افزایش
بلندی صدا
به میزان
۲۰٪
\ : کاهش بلندی
صدا به
میزان ۲۰٪
d : دو برابر
کردن طول نت
h : نصف کردن
طول نت
p : مکث (سکوت)
هر نشانهای تا رسیدن به انتهای الگو معتبر است. برای نمونه نشانهٔ > ضربآهنگ را برای تمامی نتهای بعدی الگو دو برابر خواهد کرد. هنگامی که حلقه به ابتدای الگو بازمیگردد، ضربآهنگ به مقدار اولیهٔ خود، یعنی نت سیاه، بازنشانی میشود.
تصادفیسازی (Random)
زمانبندی، شدت ضربه (velocity) و طول نتهای خروجی را میتوان با استفاده از لغزندههای موجود در پانل Random تصادفیسازی کرد. از این تنظیمات میتوان برای کاستن از حس مکانیکی صدای آرپژیویتور بهره برد، اما در صورت تنظیم روی مقادیر بالاتر، آکسانها و تاکیدهای جذابی به الگوها اضافه میکنند.
پوش (Envelope)
برنامهٔ QMidiArp میتواند شدت ضربهٔ (velocity) آرپژیوها را با یک تابع پوش (انولوپ) تعریفشده توسط زمان Attack (حمله) و زمان Release (رهاسازی) مدوله کند. اگر زمان حمله تنظیم شود، شدت ضربهٔ نتهای خروجی در طول زمان حمله (تعریفشده به ثانیه) افزایش مییابد. اگر زمان رهاسازی تنظیم شود، با رها شدن نتها از صفحهکلید، پخش آنها در حین کاهش خطی شدت ضربهشان تا پایان زمان رهاسازی ادامه مییابد. تابع پوش تنها زمانی کارآمد است که صدای کنترلشده توسط آرپژیویتور به شدت ضربه حساس باشد. این قابلیت بهترین عملکرد را با الگوهای بسیار چندصدایی (پلیفونیک) نظیر "Chord Oct 16 A" نشان میدهد.
گروو (Groove)
لغزندههای Groove انتقال خطی زمانبندی، طول و شدت ضربه را در هر ضرب از الگوی خروجی کنترل میکنند. این قابلیت برای ایجاد زمانبندی سوئینگی (swing) و آکسان کاربرد دارد. تنظیمات Groove به طور همزمان روی تمام آرپژیویتورها اعمال میشود..SS "ماژولهای LFO (LFO Modules)" همگام با آرپها (arps)، برنامهٔ QMidiArp میتواند دادههای کنترلکنندهٔ MIDI را در قالب یک نوسانساز بسامد پایین (LFO) به خروجی تعیینشده ارسال کند. دادههای LFO شامل رویدادهای کنترلکنندهای هستند که با صف آرپژیاتور همگام هستند. صف باید در وضعیت در حال اجرا (running) باشد تا LFO فعال شود. هر ماژول LFO دارای یک پنل waveform برای تعیین شکل دادههای خروجی و یک پنل output برای تعیین کانال MIDI، درگاه ALSA و شماره کنترلکنندهای است که باید تولید شود. شکلموج در حال حاضر میتواند روی Sine، Saw Up، Saw Down، Triangle، Square و Custom تنظیم شود. مقدار frequency (بسامد) LFO میتواند در مضارب و مقسومهای tempo آرپ تنظیم شود، بهگونهای که بسامد ۱ یک موج کامل در هر ضرب تولید میکند. اگر بسامدهای کمتر از ۱ انتخاب شوند، طول wavetable باید متناسب با آن تنظیم شود تا یک موج کامل ایجاد گردد. وضوح زمانی ( resolution ) LFO تعداد رویدادهای تولیدشده در هر ضرب را مشخص میکند و میتواند تا ۱۹۲ رویداد در هر ضرب تنظیم شود. مقادیر Amplitude و offset شکلموج را میتوان از ۰ تا ۱۲۷ تنظیم کرد. مقادیر پایین resolution منجر به تغییرات ریتمیک و گسستهٔ کنترلکننده بهصورت محسوس میشوند، در حالی که مقادیر تفکیکپذیری بالاتر منجر به امواج پیوستهتر میگردند.
بیصدا کردن تکتک نقاط موج
نقاط منفرد موج را میتوان با کلیک روی مکان متناظر در نمایشگر موج با کلید راست موشواره بیصدا/باصدا کرد. یک نقطهٔ موج بیصداشده با رنگ تیرهتری نمایش داده میشود.
شکلموجهای سفارشی (Custom Waveforms)
هنگامی که Custom انتخاب شده باشد، شکلموج را میتوان با کلید چپ موشواره در نمایشگر شکلموج رسم کرد. یک شکلموج محاسبهشده هر بار که با موشواره تغییر یابد، در شکلموج سفارشی رونوشت میشود. این کار شکلموج سفارشی پیشین را با شکلموج در حال نمایش بازنویسی میکند. مانند تمامی عملیات LFO، رسم و بیصدا کردن میتواند در حین اجرای صف انجام شود و تغییرات بلافاصله اعمال میشوند.
جهت پخش و حلقهسازی (Play direction and looping)
حالت پخش میتواند بین گزینههای زیر تغییر کند:
->_> : رو به جلو
و تکرار در
حلقه (Forward and Loop)
<_<- : رو به عقب
و تکرار در
حلقه (Backward and Loop)
->_< : رو به جلو
و جهش
رفتوبرگشتی
(Forward and Bounce)
>_<- : رو به عقب
و جهش
رفتوبرگشتی
(Backward and Bounce)
->_| : رو به جلو،
تکباره (Forward Single
shot)
|_<- : رو به عقب،
تکباره (Backward Single
shot)
تنظیمات جهت و حلقه هنگام تغییر در حین اجرا بلافاصله اعمال میشوند.
ضبط (Recording)
هنگامی که دکمهٔ Record فشرده شود، LFO دادههای کنترلکنندهٔ ورودی را بر اساس انتخاب صورتگرفته در پنل Input ضبط میکند. توجه داشته باشید که خود دکمهٔ Record میتواند به یک کنترلکنندهٔ تغییر وضعیت (toggle) در MIDI منتسب شود تا پیادهسازی مناسبی از یک نمونهبردار (sampler) و حلقهساز (looper) حرکات کنترلکننده ارائه دهد.
پنل ورودی LFO (LFO Input panel)
پنل ورودی شامل تنظیماتی دربارهٔ این است که کدام MIDI CC باید ضبط شود و اینکه LFO در واکنش به رویدادهای نت دریافتشده در ورودی چگونه عمل کند. مانند آرپژیاتورها، LFO میتواند با نتهای نواختهشده روی صفحهکلید بازنشانی یا دوباره راهاندازی (re-trigger) شود، و خروجی موج میتواند هنگام دریافت رویدادهای Note Off روی Channel ورودی متوقف شود یا خیر.
پنل خروجی LFO (LFO Output panel)
پنل خروجی LFO شامل تنظیمات port ، channel و شمارهٔ controller دادههای LFO تولیدشده توسط هر زبانهٔ LFO است. شما همچنین میتوانید هر موج LFO را mute (بیصدا) کنید..SS "ماژولهای توالیسنج گام (Step Sequencer Modules)" با کلیک بر روی Add Step Sequencer... در نوار ابزار کنترلی، یک ماژول جدید Seq میتواند به نوار زبانه افزوده شود. هر یک از این ماژولها یک توالی ساده خطی (تکصدایی یا monophonic) شبیه به نخستین توالیسنجهای سختافزاری آنالوگ تولید میکنند. ماژولهای Seq در حین اجرا نیز به شیوهای مشابه با توالیسنجهای گام آنالوگ قابل کنترل هستند.
برنامهریزی یک توالی
همانند ماژولهای LFO در QMidiArp، توالیسنج گام را میتوان با تنظیم نتها از طریق کلیک چپ ماوس روی صفحه نمایش توالی برنامهریزی کرد. محدوده اکتاو روی ۴ ثابت است. اگر ترانسپوز سراسری روی ۰ تنظیم شده باشد، بمترین نت C2 خواهد بود. نتها را میتوان با کلیک راست ماوس بیصدا کرد. طول ( length ) توالی میتواند بین ۱ تا ۸ ضرب تنظیم شود، و تفکیکپذیری زمانی ( resolution ) میتواند مقادیری بین ۱ تا ۱۶ در هر ضرب داشته باشد. تفکیکپذیری ۴ به این معنی است که در هر ضرب ۴ نت خروجی داده میشود، یعنی نتهای یکشانزدهم (دولاچنگ). توالی را همچنین میتوان با استفاده از تابع Record برنامهریزی کرد. با فشرده شدن دکمهٔ Record نتهای دریافتشده روی درگاه ورودی، گامبهگام با شروع از آخرین نت اصلاحشده ضبط خواهند شد. برنامهریزی را میتوان به صورت زنده و در حین اجرای صف توالیسنج نیز انجام داد.
کنترل سراسری توالی
لغزندههایی برای تنظیم سراسریِ velocity (بلندی صدا)، note length (طول نت) و transpose (انتقال گام) توالی بر حسب نیمپرده وجود دارد.
پانلهای ورودی و خروجی Seq
پانل Input در Seq مشخص میکند که با نتهای ورودی روی Channel (کانال) MIDI تنظیمشده در کادر کانال چگونه رفتار شود. اگر Note علامت زده شود، توالی به صورت سراسری با نت ورودی به عنوان مقدار انتقال، ترانسپوز میشود. اگر علاوه بر آن Velocity نیز علامت بخورد، توالی، نتها را با همان شدتی که در ورودیاش دریافت کرده است خروجی میدهد. پانل Input همچنین مشخص میکند که توالی هنگام دریافت نتهای ورودی چگونه رفتار کند. این توالی میتواند همانند ماژولهای LFO با زمانبندی نتهای دریافتشده بازآغاز (restart)، راهاندازی (trigger) یا متوقف (stop) شود.
پانل Output در Seq معادل پانلهای ماژولهای arpeggiator و LFO است.
توجه داشته باشید که تأکیدها (accents) در یک الگو را میتوان با اجرای موازی ماژولهای LFO با ماژول Seq، و با ارسال به همان کانال و درگاه ماژول Seq تولید کرد.
تنظیمات (Settings)
پنجره Settings امکان پیکربندی این را میدهد که آیا رویدادهای ورودی که با فیلتر ورودی هیچ ماژولی مطابقت ندارند بازفرستاده (forward) شوند یا خیر، و به کدام درگاه فرستاده شوند (رویدادهای unmatched ). همچنین امکان تعیین اینکه آیا رویدادهای کنترلکننده ورودی برای بیصدا کردن و کنترل جداگانه ماژولها شناسایی شوند یا خیر را فراهم میکند. در صورت فعال بودن این گزینه، QMidiArp رویدادهای کنترلی MIDI را که میتوان به پارامترهای مختلف نسبت داد شناسایی خواهد کرد (ببینید MIDI Control ). با انتخاب گزینهٔ compact module style تمام ماژولهای جدید ایجادشده با عناصر کوچکتر رابط گرافیکی نمایش داده میشوند تا در صورت توزیع به عنوان پنجرههای جداگانه در میزکار، در مصرف فضا صرفهجویی شود.
تمام تنظیمات در این پنجره، همراه با دادههای ماژول در فایل نشست qmax ذخیره میشوند..SS کنترل MIDI اگر گزینه Modules controllable by MIDI CC در پنجره گفتگوی Settings علامت زده شده باشد، QMidiArp از رویدادهای کنترل MIDI پشتیبانی میکند.
MIDI Learn
کنترلرها را میتوان با کلیکراست روی لغزندهها یا کادر تأیید بیصدا (mute) در هر ماژول و انتخاب MIDI Learn اختصاص داد. سپس QMidiArp منتظر رویدادهای کنترل MIDI میماند، و حرکت دادن یک کنترلر MIDI متصل به ورودی QMidiArp، این کنترلر را به عنصر کنترلی مربوطه منتسب خواهد کرد. افزودن چند کنترلر MIDI به یک عنصر امکانپذیر است. اگر MIDI Forget انتخاب شود، تمام کنترلرهای آن عنصر حذف میشوند. اگر Cancel MIDI learning انتخاب شود، فرآیند یادگیری متوقف خواهد شد.
توجه داشته باشید که بهطور پیشفرض، کنترلرهای mute به صورت کلید دوحالته (toggle) تفسیر میشوند؛ به این معنی که با دریافت مقدار 127 از کنترلر منتسبشده، وضعیت بیصدا تغییر میکند.
Control Editor
ویرایشگر Control Editor از منوی View قابل دسترسی است. کنترلها را میتوان بر اساس شماره کنترل MIDI، کانال، و مقادیر حداقل و حداکثری که به عنصر کنترلی ارسال میشوند ویرایش کرد. کنترلرهای mute رفتار ویژهای دارند. اگر مقادیر حداقل و حداکثر برابر باشند، کنترلر پس از دریافت مقدار تنظیمشده مانند یک کلید دوحالته عمل میکند. اگر مقدار حداقل متفاوت از حداکثر باشد، ماژول مربوطه با دریافت مقدار حداقل بیصدا (mute) و با دریافت مقدار حداکثر صدادار (unmute) خواهد شد.
در صورت فشردن Remove سطر انتخابشده کنونی حذف خواهد شد؛ فشردن Revert تنظیمات فعلی کنترلر را دوباره بارگذاری میکند. فشردن Cancel بدون اِعمال تغییرات از ویرایشگر کنترل خارج میشود، و تنها در صورتی که OK فشرده شود، فهرست کنترل ویرایششده فعال خواهد شد.
ذخیرهسازی سراسری (Global Storage)
یک پنجره لنگرگاهی (dock) دیگر برای ذخیره و بازیابی همزمان بیشتر پارامترهای تمام ماژولها در دسترس است. در این پنجره، هر ماژول و محلهای ذخیره آن به صورت یک ستون نمایش داده میشوند که ستون اول نمایانگر کلیدها برای تمام ماژولها بهطور سراسری است. هنگامی که روی دکمه کوچک Store در سمت چپ کلیک شود، تمام ماژولها پارامترهای خود را در مکانی که با سطر کنونی مشخص شده ذخیره میکنند و مکان ذخیرهسازی در دسترس بعدی نمایان میشود. محلهای ذخیره ماژول را میتوان با کلیک روی دکمههای هر ماژول بهطور جداگانه یا بهطور سراسری (دکمههای شمارهدار در ستون اول) فراخوانی کرد. مکانهای ذخیرهسازی را میتوان با کلیک مجدد روی دکمه «پیکان» در پایین فهرست حذف کرد. هنگامی که ماژول جدیدی در زمانی افزوده شود که مکانهای ذخیرهسازی از قبل برای ماژولهای دیگر وجود دارند، مکانهای ذخیرهسازی برای ماژول جدید خالی خواهند بود و میتوان با استفاده دوباره از Store در این مکان، آنها را پر کرد.
هنگامی که QMidiArp در حال اجرا است، رفتار تعویض به گزینه انتخابشده در جعبههای کشویی (comboboxes) ردیف اول پنجره بستگی خواهد داشت.
گزینه End of باعث میشود که تعویض پارامترها زمانی رخ دهد که ماژول موجود در جعبه کشویی دوم به پایان الگوی خود برسد. هنگامی که تعویضها به صورت جداگانه انجام میشوند، ماژول موجود در ستونِ ماژول کلیکشده زمان تعویض را تعیین میکند.
گزینه After تعویض پارامترها را پس از کلیک روی دکمه بازیابی، در پایان تعداد ضربهای (beats) انتخابشده در جعبه کشویی دوم انجام خواهد داد.
این تعویض را میتوان با کنترلر MIDI اختصاصیافته توسط منوی زمینه MIDI Learn دکمه بالای هر ستون انجام داد. توجه داشته باشید که این مقدار کنترلر است که با مکان ذخیرهسازی مطابقت دارد، و شاید بخواهید محدوده کنترلرها را متناسب با نیاز خود با استفاده از MIDI Control Editor تنظیم کنید. با گرداننده Global Storage برنامه QMidiArp میتواند به عنوان یک ابزار ترتیبسنج (sequencer) زنده ساده اما کاربردی عمل کند. دکمه Global Storage در منوی View و در نوار ابزار اصلی، وضعیت نمایش پنجره Global Storage را تغییر میدهد..SS "گزارش رویدادها (Event Log)" بخش Event Log رویدادهای ورودی MIDI را نمایش میدهد. این بخش بهطور پیشفرض در ناحیهٔ پایینی نمایش داده میشود، اما در صورت عدم نیاز میتواند پنهان شود یا بهصورت یک پنجرهٔ شناور در بالاترین سطح روی میزکار تنظیم گردد. ثبت رویدادها را همچنین میتوان بهطور کلی یا فقط برای رویدادهای MIDI Clock غیرفعال کرد.
فایلهای نمونه (Example Files)
در حال حاضر سه آرپژ نمایشی وجود دارد. آرپژ demo.qma برای استفاده با انواع صداهای زیر در نظر گرفته شده بود: Ch 1: Marimba، Ch 2: Celesta، Ch 3: Acoustic Bass، اما در صورت استفاده از تنظیمات سایر سازها نیز میتوانید به نتایج جالبی دست یابید.
پیکربندی demo_seqlfo.qmax استفاده از ماژولهای جدید sequencer و LFO را به هنگام اجرای همزمان و موازی نشان میدهد. خروجیهای sequencer باید به سمت صداهای کوبهای سینتیسایزر هدایت شوند. دادههای LFO برای اعمال روی filter cutoff در نظر گرفته شدهاند که از کنترلر استاندارد CC#74 بهره میبرد. نرمافزار ZynAddSubFX اثر Paul Nasca به این کنترلرهای filter cutoff واکنش نشان میدهد. پیشتنظیمهای "Bass 1" و "Plucked 3" از این سینتیسایزر بهخوبی با این فایل نمایشی کار میکنند.
گزینهها (OPTIONS)
- --portCount <num>
- تعداد درگاههای خروجی ALSA دردسترس را روی <num> تنظیم میکند. مقدار پیشفرض ۲ است.
- --help
- چاپ گزینههای ممکن خط فرمان و خروج.
- --version
- چاپ اطلاعات نسخه و خروج.
- --alsa
- استفاده از backend مربوط به ALSA MIDI
- --jack
- استفاده از backend مربوط به JACK MIDI (پیشفرض)
- file
- نام یک فایل XML معتبر مربوط به QMidiArp (.qmax) برای بارگذاری در هنگام شروع.
فایلها (FILES)
*.qmax
مثالها (EXAMPLES)
فایلهای نمونهٔ QMidiArp را میتوان در /usr/share/qmidiarp یا در /usr/local/share/qmidiarp یافت.
نکات (NOTES)
خطاها و هشدارها در stderr(3) نوشته میشوند.
پشتیبانی (SUPPORT)
qmidiarp-devel@lists.sourceforge.net
نویسندگان (AUTHORS)
Frank Kober، Nedko Arnaudov، Guido Scholz و Matthias Nagorni. این صفحهٔ راهنما توسط Frank Kober <emuse@users.sourceforge.net> نوشته شده است.
| 2011-11-07 |