Drumstick ALSA的C++封装库

程序名称:Drumstick

授权协议: GPL

操作系统: Linux

开发语言: C/C++

Drumstick 介绍

Drumstick 是一个ALSA的音序器 (MIDI 接口)的C++封装库

示例代码:

#include <QApplication>  
#include <drumstick.h>

int main(int argc, char **argv) {  
    QApplication app(argc, argv, false);

    // create a client object on the heap  
    drumstick::MidiClient *client = new drumstick::MidiClient;  
    client->open();  
    client->setClientName( "MyClient" );

    // create the port  
    drumstick::MidiPort *port = client->createPort();  
    port->setPortName( "MyPort" );  
    port->setCapability( SND_SEQ_PORT_CAP_READ | SND_SEQ_PORT_CAP_SUBS_READ );  
    port->setPortType( SND_SEQ_PORT_TYPE_MIDI_GENERIC );  
    // subscribe the port to some other client:port  
    port->subscribeTo( "20:0" ); // or "name:port", like in "KMidimon:0"

    // create an event object on the stack, to send a note on message  
    drumstick::NoteOnEvent ev( 0, 66, 100 ); // (channel, note number, velocity)  
    ev.setSource( port->getPortId() );  
    ev.setSubscribers();   // deliver to all the connected ports  
    ev.setDirect();        // not scheduled, deliver immediately  
    client->output( &ev ); // or outputDirect() if you prefer not buffered  
    client->drainOutput(); // flush the buffer

    // close and clean  
    client->close();  
    delete client;  
    return 0;  
}

Drumstick 官网

http://drumstick.sourceforge.net/

相关编程语言

BlazeDS 是一个基于服务器的Java 远程控制(remoting...
OVal 是一个可扩展的Java对象数据验证框架,验证的规...
Volta 是一套开发工具,专为开发分布式、实时系统应...
OpenDDS 是一个开源的 C++ 实现的 对象管理组织 OMG...
JADE (Java Agent DEvelopment Framework) 是一个完...
FastMM ,在D2006和2007中已代替了原来的内存管理器。