简介
redux-midi
是基于 redux
的 midi 控制库,能够帮助开发者更方便地处理与 MIDI 控制器的交互。它提供了一种可扩展的、简洁的 API,使得开发者能够更容易地实现 MIDI 控制的功能,同时支持故障排除和调试。
安装
在开始使用之前,请确保已安装 redux
和 redux-thunk
,然后在项目中运行以下命令来安装 redux-midi
:
npm install redux-midi
用法
创建 midiReducer
-- -------------------- ---- ------- ------ --------------- ---- ------------ ----- ------------ - - ------- ----- ------- --- -------- -- - ----- ------- - --------------------------- - ---------------------- ------- ------- -- -- --------- ------- ---------------------- ------- ---------------------- -------- ---------------------- -- --- ------ ------- --------展开代码
createReducer
函数接受两个参数:初始状态和一个 action 处理函数的映射对象。在上述示例中,只有一个 action 处理函数 MIDI_DEVICE_CONNECTED
。
创建 midiMiddleware
import {createMidiMiddleware} from 'redux-midi' const midiMiddleware = createMidiMiddleware();
使用 createMidiMiddleware
函数创建中间件即可。
初始化 MIDI 连接
-- -------------------- ---- ------- ------ --------------- ------------------- ---- ------------ ----- ----------- - --------- -- - --------------------- ---- --------- --------- -- ----- ----------------- - -------- ------- -------- -- - ----------------- ----- --------- ------- ------- --------- -- ----------------------------------------- --------------------展开代码
connectToMidi
函数接受两个回调函数作为参数,一个用于处理 MIDI 输入,一个用于处理 MIDI 状态更改。当连接到 MIDI 设备时,将自动注册这两个回调函数,并在 MIDI 状态更改时调用 onMidiStateChange
函数。
发送 MIDI 消息
import {sendMidiMessage} from 'redux-midi' const onButtonPressed = () => { const message = [0x90, 60, 127]; // MIDI Note On message for note 60 with velocity 127 store.dispatch(sendMidiMessage(message)); };
使用 sendMidiMessage
函数可以向 MIDI 设备发送消息。
断开 MIDI 连接
import {connectToMidi, disconnectFromMidi} from 'redux-midi' store.dispatch(disconnectFromMidi());
使用 disconnectFromMidi
函数即可断开 MIDI 连接。
示例代码
完整示例代码如下:
-- -------------------- ---- ------- ------ ------------- ---------------- ---- ------- ------ ---------------------- -------------- ------------------- ---------------- ---- ------------ ----- ------------ - - ------- ----- ------- --- -------- -- - ----- ------- - --------------------------- - ---------------------- ------- ------- -- -- --------- ------- ---------------------- ------- ---------------------- -------- ---------------------- -- --- ----- -------------- - ----------------------- ----- ----- - -------------------- --------------------------------- ----- ----------- - --------- -- - --------------------- ---- --------- --------- -- ----- ----------------- - -------- ------- -------- -- - ----------------- ----- --------- ------- ------- --------- -- ----------------------------------------- -------------------- ----- --------------- - -- -- - ----- ------- - ------ --- ----- -- ---- ---- -- ------- --- ---- -- ---- -------- --- ----------------------------------------- -- ----- ------------------------- - -- -- - ------------------------------------- --展开代码
总结
redux-midi
是一款十分优秀的 midi 控制库,具有非常方便、可扩展和简单的 API,能够帮助开发者更加轻松地与 MIDI 控制器进行交互。同时,我们还介绍了它的基本使用方法,并提供了详细的示例代码。通过本文的介绍,相信大家已经能够轻松上手 redux-midi
了。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60067008e361a36e0bce8b4f