نسخه 2.6.1 Cortex اکنون با BCI-OSC منتشر شده است

نویسنده

به‌روزرسانی در

۱۸ بهمن ۱۴۰۲

نسخه 2.6.1 Cortex اکنون با BCI-OSC منتشر شده است

نویسنده

به‌روزرسانی در

۱۸ بهمن ۱۴۰۲

نسخه 2.6.1 Cortex اکنون با BCI-OSC منتشر شده است

نویسنده

به‌روزرسانی در

۱۸ بهمن ۱۴۰۲

BCI - OSC، Open Sound Control (OSC)، یک پروتکل ارتباطی جهانی است که برای شبکه‌سازی مدرن بهینه شده تا اتصال بین رایانه‌ها و دیگر دستگاه‌های چندرسانه‌ای را ممکن کند.


Emotiv’s BCI-OSC به Emotiv Brainwear® و Virtual Brainwear® امکان می‌دهد با طیف گسترده‌تری از سخت‌افزارها و برنامه‌های نرم‌افزاری سازگار با OSC ارتباط برقرار کنند. OSC به شما امکان می‌دهد فرمان‌های ذهنی، حالات چهره یا شاخص‌های عملکرد را به یک دستگاه خارجیِ متصل به شبکه ارسال کنید. مثال زیر مراحل اتصال Emotiv’s BCI-OSC به Max MSP، یک زبان برنامه‌نویسی بصری برای موسیقی و چندرسانه‌ای، را توضیح می‌دهد.


مرحله 1: BCI را باز کنید

مرحله 2: یک پروفایل را انتخاب کنید و به یک هدست (مجازی یا واقعی) متصل شوید

مرحله 3: زبانه BCI-OSC را باز کنید و تنظیم کنید: حالت ارسال: Unicast to Self IP: 127.0.0.1 Port: 8000 جریان‌های داده: گزینه‌هایی را که می‌خواهید استفاده کنید انتخاب کنید

مرحله 4: روی Start کلیک کنید

مرحله 5: Max MSP را باز کنید، به File > Package Manager بروید و CNMAT Externals را نصب کنید

مرحله 6: به https://github.com/Emotiv/opensoundcontrol/tree/develop بروید (برای دسترسی نیاز به مجوز دارید) و جدول مربوط به OSC Address Patterns را بررسی کنید (تصویر زیر را ببینید)

مرحله 7: گره‌های زیر را ایجاد (بازسازی) کنید و OSC-route را مطابق هر OSC Patternی که می‌خواهید آدرس‌دهی کنید تغییر دهید (در تصویر نمونه، حالات چهره/لبخند) - برای آدرس‌ها جدول مرحله قبل را بررسی کنید.

مرحله 8: Processing را باز کنید و به Sketch > Import Library… > Add Library بروید، oscP5 را جست‌وجو و نصب کنید

مرحله 9: یک File جدید باز کنید.

مرحله 10: oscP5 را به کد وارد کنید و یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید. نمونه کد (در Processing کپی و جای‌گذاری کنید):

import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود

float importedValue = 0;
float radius;

void setup() {
size(1200,1000); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);
}

void draw() {
background (0); // مقدار واردشده را مقیاس دهید
radius = importedValue * 1000; // دایره را در موقعیت برداری نمایش دهید
stroke(255);
strokeWeight(2);
fill(255);
ellipse(500,500, radius, radius);
println(radius);
}

void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}

مرحله 11: روی دکمه Play کلیک کنید و تغییر گرافیک را مطابق با Smile تماشا کنید. importedValue با شعاع دایره مرتبط است.

مرحله 12: هر کد نمونه‌ای را در File > Examples… باز کنید

مرحله 13: importedValue را با هر متغیر float از هر کتابخانه‌ای مرتبط کنید تا با آن آزمایش کنید. مطمئن شوید که:

oscP5 را import کنید:
import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود
r

importedValue را مقداردهی اولیه کنید (پیش از void setup);
float importedValue = 0;

oscP5 را مقداردهی اولیه کنید (آن را داخل void setup قرار دهید); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);


رویداد را با متغیر importedValue مرتبط کنید (آن را پس از void draw قرار دهید);
void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}


Cortex 2.6.1 جدید نیز به‌روزرسانی‌ها و بهبودهای فراوان دیگری دارد که منتظرند آن‌ها را کشف کنید!

BCI - OSC، Open Sound Control (OSC)، یک پروتکل ارتباطی جهانی است که برای شبکه‌سازی مدرن بهینه شده تا اتصال بین رایانه‌ها و دیگر دستگاه‌های چندرسانه‌ای را ممکن کند.


Emotiv’s BCI-OSC به Emotiv Brainwear® و Virtual Brainwear® امکان می‌دهد با طیف گسترده‌تری از سخت‌افزارها و برنامه‌های نرم‌افزاری سازگار با OSC ارتباط برقرار کنند. OSC به شما امکان می‌دهد فرمان‌های ذهنی، حالات چهره یا شاخص‌های عملکرد را به یک دستگاه خارجیِ متصل به شبکه ارسال کنید. مثال زیر مراحل اتصال Emotiv’s BCI-OSC به Max MSP، یک زبان برنامه‌نویسی بصری برای موسیقی و چندرسانه‌ای، را توضیح می‌دهد.


مرحله 1: BCI را باز کنید

مرحله 2: یک پروفایل را انتخاب کنید و به یک هدست (مجازی یا واقعی) متصل شوید

مرحله 3: زبانه BCI-OSC را باز کنید و تنظیم کنید: حالت ارسال: Unicast to Self IP: 127.0.0.1 Port: 8000 جریان‌های داده: گزینه‌هایی را که می‌خواهید استفاده کنید انتخاب کنید

مرحله 4: روی Start کلیک کنید

مرحله 5: Max MSP را باز کنید، به File > Package Manager بروید و CNMAT Externals را نصب کنید

مرحله 6: به https://github.com/Emotiv/opensoundcontrol/tree/develop بروید (برای دسترسی نیاز به مجوز دارید) و جدول مربوط به OSC Address Patterns را بررسی کنید (تصویر زیر را ببینید)

مرحله 7: گره‌های زیر را ایجاد (بازسازی) کنید و OSC-route را مطابق هر OSC Patternی که می‌خواهید آدرس‌دهی کنید تغییر دهید (در تصویر نمونه، حالات چهره/لبخند) - برای آدرس‌ها جدول مرحله قبل را بررسی کنید.

مرحله 8: Processing را باز کنید و به Sketch > Import Library… > Add Library بروید، oscP5 را جست‌وجو و نصب کنید

مرحله 9: یک File جدید باز کنید.

مرحله 10: oscP5 را به کد وارد کنید و یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید. نمونه کد (در Processing کپی و جای‌گذاری کنید):

import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود

float importedValue = 0;
float radius;

void setup() {
size(1200,1000); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);
}

void draw() {
background (0); // مقدار واردشده را مقیاس دهید
radius = importedValue * 1000; // دایره را در موقعیت برداری نمایش دهید
stroke(255);
strokeWeight(2);
fill(255);
ellipse(500,500, radius, radius);
println(radius);
}

void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}

مرحله 11: روی دکمه Play کلیک کنید و تغییر گرافیک را مطابق با Smile تماشا کنید. importedValue با شعاع دایره مرتبط است.

مرحله 12: هر کد نمونه‌ای را در File > Examples… باز کنید

مرحله 13: importedValue را با هر متغیر float از هر کتابخانه‌ای مرتبط کنید تا با آن آزمایش کنید. مطمئن شوید که:

oscP5 را import کنید:
import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود
r

importedValue را مقداردهی اولیه کنید (پیش از void setup);
float importedValue = 0;

oscP5 را مقداردهی اولیه کنید (آن را داخل void setup قرار دهید); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);


رویداد را با متغیر importedValue مرتبط کنید (آن را پس از void draw قرار دهید);
void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}


Cortex 2.6.1 جدید نیز به‌روزرسانی‌ها و بهبودهای فراوان دیگری دارد که منتظرند آن‌ها را کشف کنید!

BCI - OSC، Open Sound Control (OSC)، یک پروتکل ارتباطی جهانی است که برای شبکه‌سازی مدرن بهینه شده تا اتصال بین رایانه‌ها و دیگر دستگاه‌های چندرسانه‌ای را ممکن کند.


Emotiv’s BCI-OSC به Emotiv Brainwear® و Virtual Brainwear® امکان می‌دهد با طیف گسترده‌تری از سخت‌افزارها و برنامه‌های نرم‌افزاری سازگار با OSC ارتباط برقرار کنند. OSC به شما امکان می‌دهد فرمان‌های ذهنی، حالات چهره یا شاخص‌های عملکرد را به یک دستگاه خارجیِ متصل به شبکه ارسال کنید. مثال زیر مراحل اتصال Emotiv’s BCI-OSC به Max MSP، یک زبان برنامه‌نویسی بصری برای موسیقی و چندرسانه‌ای، را توضیح می‌دهد.


مرحله 1: BCI را باز کنید

مرحله 2: یک پروفایل را انتخاب کنید و به یک هدست (مجازی یا واقعی) متصل شوید

مرحله 3: زبانه BCI-OSC را باز کنید و تنظیم کنید: حالت ارسال: Unicast to Self IP: 127.0.0.1 Port: 8000 جریان‌های داده: گزینه‌هایی را که می‌خواهید استفاده کنید انتخاب کنید

مرحله 4: روی Start کلیک کنید

مرحله 5: Max MSP را باز کنید، به File > Package Manager بروید و CNMAT Externals را نصب کنید

مرحله 6: به https://github.com/Emotiv/opensoundcontrol/tree/develop بروید (برای دسترسی نیاز به مجوز دارید) و جدول مربوط به OSC Address Patterns را بررسی کنید (تصویر زیر را ببینید)

مرحله 7: گره‌های زیر را ایجاد (بازسازی) کنید و OSC-route را مطابق هر OSC Patternی که می‌خواهید آدرس‌دهی کنید تغییر دهید (در تصویر نمونه، حالات چهره/لبخند) - برای آدرس‌ها جدول مرحله قبل را بررسی کنید.

مرحله 8: Processing را باز کنید و به Sketch > Import Library… > Add Library بروید، oscP5 را جست‌وجو و نصب کنید

مرحله 9: یک File جدید باز کنید.

مرحله 10: oscP5 را به کد وارد کنید و یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید. نمونه کد (در Processing کپی و جای‌گذاری کنید):

import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود

float importedValue = 0;
float radius;

void setup() {
size(1200,1000); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);
}

void draw() {
background (0); // مقدار واردشده را مقیاس دهید
radius = importedValue * 1000; // دایره را در موقعیت برداری نمایش دهید
stroke(255);
strokeWeight(2);
fill(255);
ellipse(500,500, radius, radius);
println(radius);
}

void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}

مرحله 11: روی دکمه Play کلیک کنید و تغییر گرافیک را مطابق با Smile تماشا کنید. importedValue با شعاع دایره مرتبط است.

مرحله 12: هر کد نمونه‌ای را در File > Examples… باز کنید

مرحله 13: importedValue را با هر متغیر float از هر کتابخانه‌ای مرتبط کنید تا با آن آزمایش کنید. مطمئن شوید که:

oscP5 را import کنید:
import oscP5.; // دریافت OSC توسط oscP5
oscP5; // این مقدار توسط گرداننده رویداد OSC تنظیم می‌شود
r

importedValue را مقداردهی اولیه کنید (پیش از void setup);
float importedValue = 0;

oscP5 را مقداردهی اولیه کنید (آن را داخل void setup قرار دهید); // یک نمونه را که به پورت 12000 گوش می‌دهد مقداردهی اولیه کنید
oscP5 = new OscP5(this,8500);


رویداد را با متغیر importedValue مرتبط کنید (آن را پس از void draw قرار دهید);
void oscEvent(OscMessage theOscMessage) {
float value = theOscMessage.get(0).floatValue(); importedValue = value;
}


Cortex 2.6.1 جدید نیز به‌روزرسانی‌ها و بهبودهای فراوان دیگری دارد که منتظرند آن‌ها را کشف کنید!