v4l2src: Add source-change / resolution-change support
Compare changes
Files
2- Nicolas Dufresne authored
This is a wrapper around ENUM_INPUT renamed for readability.
Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
The migration is almost done, at least the rest should happen in the background. There are still a few technical difference between the old cluster and the new ones, and they are summarized in this issue. Please pay attention to the TL:DR at the end of the comment.
This branch adds support for driver driven source changes along with DV_TIMING locking support. Effectively, drivers can emit SOURCE_CHANGE event, with the RESOLUTION_CHANGE flag in order to signal that something got changes at the input signal. In that situation, we need to reset (streamoff/on) as we may not get more data otherwise. While doing this, we now query for detected DV_TIMING (aka modes) and lock/set these. We also default to the link detected width/height/framerate.
As a bonus, v4l2src will now mimic decklinksrc when the signal is lost and recovered. A WARNING with RESSOURCE/READ will be emited when the signal is lost, and an INFO message again with RESSOURCE/READ for when it's recovered.
This has been tested with vivid test driver and an work in progress HDMI receiver driver.
This is a wrapper around ENUM_INPUT renamed for readability.