The driver assumes multiple opens should not be allowed. A driver can work around this but not cleanly.
The existing API poorly reflects compression capable devices. There are plans afoot to merge V4L, V4L2 and some other ideas into a better interface.