OscPkt is a very minimalistic OSC library. What I wanted to achieve with this lib:
Other OSC libraries: liblo is the most well-known. This is a
feature-complete osc library, written in C and LGPL licensed.
Another well-known c++ OSC library is oscpack, BSD licensed,
not feature complete (no pattern matching), with portable udp transport,
but still a bit large for my taste (and it throws exceptions).
Here is the code, approximately 650 lines of boring c++, in a single header file: oscpkt/oscpkt.hh . It basically provides 3 classes: a class for reading/writing OSC messages, a packet reader for parsing incoming packets, and a packet writer for filling outgoing packets.
As a bonus, I also provide a header file for sending/receiving these packets over UDP: oscpkt/udp.hh. Very basic, but works on linux/macos/win32.
And finally a test file oscpkt/oscpkt_test.cc with a bit of fuzzing, and a very basic demo file oscpkt/oscpkt_demo.cc.
All these four files are gathered into a single, shiny, tar.gz archive (the only changes with respect to version 1.0 a a few compil fixes for mingw and warning fixes).