Background: I built an RTMP MIP driver that currently works like the Universal 16 Driver, meaning a single driver instance can represent multiple cameras.
Right now, I’ve hardcoded a single MAC address, which effectively limits me to having only one of these devices.
I’ve noticed the same behavior with the Universal Driver (1 Channel): you can only add it once as well.
I’m wondering if there’s any workaround. The MAC is read at runtime (for example, when the device starts) right ?. If I generate random MAC addresses, the device would end up with a new MAC each time FetchProductInformation() is called. If i change the hardcoded MAC, admin client shows an invalid license for the device so it must be readed at runtime what made totally sense, otherwise you would be able to swap devices.
Here my code
Any feedback would be greatly appreciated, because I want to build single-channel drivers that users can add multiple times.
I got a helpful tip that using a different port when adding a Universal Driver makes it possible to add multiple instances. Based on that, I can hash the URL (hostname + port) to deterministically compute a virtual MAC address.