从交互设计到硬件创业 Interaction Design & Hardware Startup
January 4th, 2011

鲸男 iPhone App 制做简易指北 – 9, OSC Message 的发送和接收 (待续)

Processing 和 openFrameworks 这两个开源创意程序工具,分别为 Android 和 iPhone 平台提供了较完善的支持,无论我们的程序内容是涉及音频,字体,图形图像;或是数学运算,物理模拟;而其对数据的外部发送和内部接收的支持,更是带来更多的实验可能:如借助无线互联网络与支持 OSC 通讯协议的外部设备和软件协同工作。

发送 OSC Message 的 App 在 App Store 里可以找到很多,它们提供了多种操作元素:按键,滑杆,加速计等,因为 OSC 是一种被广泛应用的通讯协议,所以遵守其协议的硬件 (Arduino, Android, 电子乐器等) 和软件 (Processing, OF, PD, Max/Msp 等) 都可以接收到其发送的讯息。而此时,运行发送 OSC 讯息 App 的手持设备 (iOS, Android 等) 充当了操控器的角色。

同时,手持设备也能够接收由外部设备或软件采集到的数据,并使用此类数据进行实验,这会像使用 Arduino 和电脑内创作软件协同工作一样带来很多乐趣和可能。这次我们会制做一个 App 原型,它运行在 iPhone 或任何 iOS 设备内,读取触摸位置信息并使用 OSC 协议通过无线网络发送给电脑里的程序,同时也能够接收由电脑程序发送来的 OSC 信息。

OSC Message exchange

待续。。。

by Whale | Posted in iOS, iPhone, openFrameworks, OSC | No Comments » |
December 26th, 2010

鲸男 iPhone App 制做简易指北 – 8, OSC 与数据交换

如上篇所述,iPhone 是一个拥有多重输入,输出,数据运算,数据交换功能的设备;其输入,输出,数据运算的能力还可以用来和其它工具协同工作,组成不同用途的系统;常见的有使用触摸屏,三轴传感器做为其它电子设备的控制器,其原理是把相关数据信息传递给外部电子设备并控制其运作,而数据信息的传递需要借助 iPhone 的数据交换功能,比如其能够通过 WiFi 无线接入互联网并与互联网中的其它设备,软件沟通。

单单的互联网接入并不能让数据得以在不同设备及不同软件内顺畅流通,它们需要借助一个共同遵守的数据交换协议 (Protocol) 才能沟通,比如 OSC (Open Sound Control)协议,顾名思义,协议是大家都要遵守的标准,有了这个标准不同设备和软件才有交流的可能。而 OSC 协议有一个独特的地方,使用 OSC 传输的数据会由两部分构成,如下图所示, 一部分是 OSC Message,我们可以用它定义数据发出的设备类型和其它属性,为什么这么做?也许是为了便于我们阅读理解和管理,想想看一眼就知道这数据是从哪发来的,例如下图第一行的前半段,说这数据是从 iPhone 的三轴传感器发出的;第二部分是 OSC Arguments,它用来发送数据本身,既下图第一行的后半段,显示发送的是三轴传感器的 x 轴数据o.55。OSC Arguments 发送的数据类型可以是整数,可以是有小数点的,也可以是字符串,比如“哎呦,今天可腰酸背疼”。
Read the rest of this entry »

by Whale | Posted in iPhone, Nonn, openFrameworks, OSC | 2 Comments » |
November 1st, 2010

从 OSC 到 Processing – 1, TouchOSC的基本说明 (更新中)

OSC (Open Sound Control) 是一种广泛应用于电脑,电子乐器及其它多媒体电子设备间的数据传输技术。在20世纪90年代由Center for New Music and Audio Technologies (UC-Berkeley) 研究中心的 Adrian Freed 和 Matt Wright 主持开发,用来满足音乐家在操作电子乐器时诸如大量数据实时传输之类的需求。这里有篇详细的历史介绍:An Introduction To OSC By Dave Phillips

由于OSC的开放,高数据量低延时等特性,它也日渐被用于非音乐设备间的通讯。例如今天要介绍的iPhone和Processing的数据传输。

待续。。。。。

by Whale | Posted in OSC, Processing.org | No Comments » |













Powered by Wordpress using the theme bbv1