CircuitPython的BLE MIDI服务

adafruit-circuitpython-ble-midi的Python项目详细描述


简介

Documentation StatusDiscordBuild StatusCode Style: Black

CircuitPython的BLE MIDI服务

依赖关系

此驱动程序依赖于:

请确保CircuitPython文件系统上的所有依赖项都可用。 下载很容易实现 the Adafruit library and driver bundle。在

从PyPI安装

注意

这个库在PyPI上还不可用。包括安装文档 作为标准元素。请继续关注PyPI的可用性!在

在支持的GNU/Linux系统上,比如Raspberry Pi,可以在本地安装驱动程序from PyPI。要为当前用户安装:

pip3 install adafruit-circuitpython-ble-midi

要在系统范围内安装(在某些情况下可能需要这样做):

^{pr2}$

要在当前项目的虚拟环境中安装:

mkdir project-name &&cd project-name
python3 -m venv .env
source .env/bin/activate
pip3 install adafruit-circuitpython-ble-midi

使用示例

"""
This example sends MIDI out. It sends NoteOn and then NoteOff with a random pitch bend.
"""importtimeimportrandomimportadafruit_blefromadafruit_ble.advertising.standardimportProvideServicesAdvertisementimportadafruit_ble_midiimportadafruit_midifromadafruit_midi.control_changeimportControlChangefromadafruit_midi.note_offimportNoteOfffromadafruit_midi.note_onimportNoteOnfromadafruit_midi.pitch_bendimportPitchBend# Use default HID descriptormidi_service=adafruit_ble_midi.MIDIService()advertisement=ProvideServicesAdvertisement(midi_service)# advertisement.appearance = 961ble=adafruit_ble.BLERadio()ifble.connected:forcinble.connections:c.disconnect()midi=adafruit_midi.MIDI(midi_out=midi_service,out_channel=0)print("advertising")ble.start_advertising(advertisement)whileTrue:print("Waiting for connection")whilenotble.connected:passprint("Connected")whileble.connected:midi.send(NoteOn(44,120))# G sharp 2nd octavetime.sleep(0.25)a_pitch_bend=PitchBend(random.randint(0,16383))midi.send(a_pitch_bend)time.sleep(0.25)# note how a list of messages can be usedmidi.send([NoteOff("G#2",120),ControlChange(3,44)])time.sleep(0.5)print("Disconnected")print()ble.start_advertising(advertisement)

贡献

欢迎投稿!请阅读我们的Code of Conduct 在帮助这个项目之前保持欢迎。在

文件

有关构建库文档的信息,请查看this guide。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java静态对象初始化   java请求的资源上不存在“Accesscontrolalloworigin”头。起源http://localhost:4200因此不允许访问   java i无法通过executor的submit方法处理列表的所有记录   javadoc中的java文档逻辑   java如何使RCPPlugin独立   java使用cobertura插件跳过*测试*   验证Java处理多个可能未知的日期/时间格式   java将JPanel添加到JFrame   BB 7.0中的黑莓Java标签   java动态地向注释处理环境添加类型   java如何将头信息作为键值对传递给使用jersey的rest服务   java使用ImageJ调整图像大小并裁剪图像   为什么Java8的ToIntFunction<t>不扩展函数<t,Integer>   java无法向Jackson ObjectMapper类注册模块   解析如何将此jsonarray解析为字符串或数组java   如何从Java调用具有数值参数的Scala方法   类如何从ColdFusion实现Java接口?   java如何让线程只添加到一个带有同步