The media subsystem supports two types of camera devices:
- "traditional" media hardware, supported via standard V4L2 API, via device nodes, called devnode-based drivers. On those hardware, image processing happens at the camera. Those are meant to be used by customer-based devices.
- Media-controller based devices, supported by 3 sets of APIs: Media Controller, V4L2, and V4L2 subdevices. Those are meant to be used by SoC-based embedded devices. On those devices, image processing happens at the SoC.
- Devnode-based drivers are supported by "standard" media applications, but right now, media-controller based devices require a special design application.
Along with this speech, we'll cover both types of camera hardware and describe a recent effort of making both compatible with standard camera applications.