Implementing OSC in C++

I have developed a camera based motion detectori in C++ under Windows.
First version of the app sent data to its clients via MIDI.
Current version does the same using a proprietary protocol via TCP.
Now I want to move to UDP, and OSC seems a good opportunity to use an open protocolo, instead of implementing another proprietary protocol.
I have two questions:
- Where should start from? Is there an useful online source?
- I'll need to monitor the data sent by my app in OSC form, of course: which readymade application should I try?
Tanks for your attention