Midijo repository: https://github.com/KaixoCode/Midijo
.. toctree:: :maxdepth: 10 :caption: Contents:
.. doxygenclass:: Midijo::Midi :members:
.. doxygenclass:: Midijo::MidiIn :members:
.. doxygenclass:: Midijo::MidiOut :members:
.. doxygenstruct:: Midijo::Event :members:
.. doxygenstruct:: Midijo::NoteOn :members:
.. doxygenstruct:: Midijo::NoteOff :members:
.. doxygenstruct:: Midijo::Aftertouch :members:
.. doxygenstruct:: Midijo::CC :members:
.. doxygenstruct:: Midijo::ProgramChange :members:
.. doxygenstruct:: Midijo::ChannelAftertouch :members:
.. doxygenstruct:: Midijo::PitchBend :members:
.. doxygenstruct:: Midijo::MidiParameters :members:
.. doxygenstruct:: Midijo::DeviceInfo :members:
.. doxygenenum:: Midijo::Api :outline:
.. doxygenenum:: Midijo::Error :outline:
#include "Midijo/Midijo.hpp"
using namespace Midijo;
int main()
{
MidiIn midi;
// Register a callback for any event type.
midi.Callback([](const Event& e)
{
std::cout <<
(int)e.byte1 << ", " << (int)e.byte2 << ", " <<
(int)e.byte3 << ", " << (int)e.byte4 << '\n';
});
// Register a callback for a specific event type.
midi.Callback([](const NoteOn& e)
{
std::cout << e.Note() << ", " << e.Velocity() << '\n';
});
// Open device with id 0 and start.
midi.Open({.device = 0 });
midi.Start();
// Receive events for 10 seconds.
std::this_thread::sleep_for(std::chrono::seconds(10));
// Close the device.
midi.Close();
}