لاصه (Summary)

Keyboard In CHOP ورودی‌های ASCII را از کیبورد دریافت کرده و برای تعداد کلیدهای مشخص‌شده، کانال خروجی ایجاد می‌کند. این CHOP یک کانال تک‌فریم می‌سازد که نشان‌دهنده وضعیت فعلی هر کلید است.

کانال‌های کلیدها با مشخص کردن کلید شروع، تعداد کلیدها و ترتیب انتخاب آن‌ها ساخته می‌شوند. نام کانال‌های کلیدها یا بر اساس نام کلید تعیین می‌شوند یا بر اساس شماره کانال.

🔔 نکته:
Keyboard In CHOP تکرارهای سریع کاراکترها را مدیریت نمی‌کند و همچنین کانال برای تمام کلیدها خروجی نمی‌دهد.
روش بهتر:
یک Panel Execute DAT ایجاد کنید و پارامتر Panel را روی پنلی قرار دهید که باید کلیدهای کیبورد در آن کنترل شوند. سپس مقدار Panel Value را روی key تنظیم کنید. در این DAT، اگر در تابع onValueChange() کد print(panelValue) را وارد کنید، برای هر فشردن کلید یک خط چاپ خواهد شد.


پارامترها (Parameters)

🔑 صفحه Keys

  • Active (فعال‌بودن)

    • Off – خاموش: کیبورد مانیتور نمی‌شود.

    • On – روشن: ورودی‌های کیبورد مانیتور می‌شوند و CHOP هر فریم اجرا می‌شود.

    • While Playing – فقط وقتی تایم‌لاین در حال پخش است، رویدادهای کیبورد را دریافت می‌کند.

  • Keys (کلیدها)
    کلیدهایی که باید مانیتور شوند و کانال برایشان ساخته شود. کلیدهای معتبر: اعداد 0-9، حروف A-Z و کلیدهای عددی (Keypad).

  • Modifier Keys (کلیدهای ترکیبی)
    مشخص می‌کند که آیا کلیدهای Ctrl، Alt یا Shift باید همزمان نگه داشته شوند یا خیر.
    گزینه‌ها: Ignore، Ctrl، Alt، Shift، و ترکیب‌های چندگانه مثل Ctrl+Alt، Shift+Ctrl+Alt.

  • Channel Names (نام کانال‌ها)

    • by Key Name → نام‌گذاری بر اساس نام کلید (مثلاً kq برای Q).

    • by Channel Number → نام‌گذاری بر اساس شماره کانال (k1, k2, k3...).

  • Panels
    اگر مسیر یک Panel COMP مشخص شود، فقط رویدادهای کیبوردی که در همان پنل رخ دهند گزارش می‌شوند.


📊 صفحه Channel

  • Sample Rate (نرخ نمونه‌برداری): نرخ نمونه‌برداری کانال‌ها به واحد نمونه بر ثانیه.

  • Extend Left / Right (شرایط ادامه در چپ و راست):

    • Hold – نگه داشتن مقدار فعلی.

    • Slope – ادامه شیب مقادیر.

    • Cycle – تکرار چرخه‌ای.

    • Mirror – تکرار چرخه‌ای با آینه کردن.

    • Default – مقدار ثابت تعیین‌شده توسط کاربر.

  • Default Value: مقدار پیش‌فرض برای حالت Extend.


⚙️ صفحه Common

  • Time Slice – فعال‌سازی برش زمانی (Time Sliced).

  • Scope – تعیین کانال‌های تحت تأثیر.

  • Sample Rate Match – کنترل ناسازگاری نرخ نمونه‌برداری ورودی‌ها. (First, Max, Min, Error).

  • Export Method – روش اتصال خروجی CHOP به پارامترها:

    • DAT Table by Index

    • DAT Table by Name

    • Channel Name is Path:Parameter

  • Export Root – مسیر ریشه برای اکسپورت.

  • Export Table – DAT نگهدارنده اطلاعات اکسپورت.


ورودی‌ها (Operator Inputs)

  • Input 0: – هیچ ورودی‌ای لازم نیست.


کانال‌های Info (اطلاعات)

اطلاعات اضافه برای Keyboard In CHOP از طریق Info CHOP قابل دسترسی است.

Common CHOP Info Channels

  • start – شروع بازه CHOP بر اساس نمونه‌ها.

  • length – تعداد نمونه‌ها.

  • sample_rate – نرخ نمونه‌برداری (فریم بر ثانیه).

  • num_channels – تعداد کانال‌ها.

  • time_slice – فعال بودن Time Slice (۱ یا ۰).

  • export_sernum – تعداد دفعاتی که اتصالات اکسپورت به‌روزرسانی شده‌اند.

Common Operator Info Channels

  • total_cooks – تعداد دفعات اجرای اپراتور از شروع.

  • cook_time – مدت زمان آخرین اجرای cook (میلی‌ثانیه).

  • cook_frame – شماره فریم در تایم‌لاین کامپوننت هنگام آخرین cook.

  • cook_abs_frame – شماره فریم مطلق هنگام آخرین cook.

  • cook_start_time – زمان شروع cook (ms).

  • cook_end_time – زمان پایان cook (ms).

  • cooked_this_frame – اگر اپراتور در این فریم cook شده باشد (۱ یا ۰).

  • warnings – تعداد هشدارها.

  • errors – تعداد خطاها.