Open source ONVIF reference from idevicedesign. But you know about them already...
ONVIF does not provide an SDK at this time. Neither does it endorse any of the open source and commercial solutions that are available on the market. However, are aware that our members have leveraged these toolkits in their own ONVIF implementations.
What ONVIF does provide is an application programmers guide which is available here.
We are interested in hearing feedback from the market regarding this topic. Please comment below with any thoughts and views on the matter.
In this context I think of an ONVIF SDK and a 'reference implementation' as two slightly different things.
I'd propose that a reference implementation would be the camera-side software that implements that aspect of the API. It would be for those who make cameras to base their camera software on. A challenge would be the variety of underlying OS/hardware platforms it would need to target. What would be in it for ONVIF is faster/easier/more consistent proliferation of the standard. What would be in it for camera makers is faster time-to-market. Note that there would still be some divergence from the original (just as there would be today if you took some existing, 'unofficial' design and incorporated it in your camera). It would only be more uniform to some degree among those camera makers who chose to use it.
When you say "SDK" I think more of the the VMS/client side implementation. In this case it's not really a reference design but a suite of software tools and libraries one can use when targeting ONVIF devices. It could include example programs as well that could be used as a basis for further development--which might be what you're thinking of as a 'reference design' from the VMS side. But I suspect fewer VMS/NVR makers would base their implementations fully off this design. What's in it for ONVIF is potentially more consistent client/server side implementations. What's in it for (VMS) manufacturers is slightly faster time to market as well, but the vast majority of their software work is beyond this layer so it probably doesn't factor as much of an advantage as does a reference implementation for camera makers since it's not a full "implementation."
It all comes down to buy vs build decisions. We'll often 'build' even if there's a reference design available for free ('buy'). This because it might not be implemented in the technology stack we'd like to work in, or it might require more work to target our particular platform. It's not a given that just because ONVIF has a reference design everybody (or anybody) will use it. So I imagine the consortium needs to weigh the cost vs the benefit from their POV as well.
Well this recently released Client test tool must implement the C,G,S Profiles in order to test them. Maybe they can release the source code as well, if it's not already available...
Updated: not official but here's an open source'd implementation - ONVIF Camera Code Open Source'd (Vicon)