public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* Way to request a time discontinuity in a V4L2 encoder device
@ 2012-10-31 13:21 Alain VOLMAT
  2012-11-04 11:54 ` Laurent Pinchart
  0 siblings, 1 reply; 8+ messages in thread
From: Alain VOLMAT @ 2012-10-31 13:21 UTC (permalink / raw)
  To: linux-media

Hi all,

We have developed a V4L2 mem2mem driver for an H264 encoder running on an IP of one of our SoC and would like to have one more v4l2_buffer flag value for that.

In the context of this driver, we discovered that the current V4L2 encode API is missing the feature to mention to the IP that a time discontinuity has to be created.
Time discontinuity must be triggered when there is a discontinuity in the stream to be encoded, which would for example happen when there is a seek in the data to be encoded. In such case, it means that the IP should reset its bitrate allocation algorithm.

Considering that this information should be triggered on a frame basis, the idea is to have it passed via the flags member of v4l2_buffer, with a new flag V4L2_BUF_FLAG_ENCODE_TIME_DISCONTINUITY.

The usage for this flag value are:
* Queuing a "to be encoded" v4l2_buffer with flags & V4L2_BUF_FLAG_ENCODE_TIME_DISCONTINUITY informs the driver/IP that a time discontinuity (reset in the bitrate allocation algorithm) should be performed before encoding this frame.
* The flags bit should be then propagated until the dequeue to let the application know when a buffer is the first one after a time discontinuity.

Few words about the driver itself, it is available in the following context.
1. STLinux kernel (www.stlinux.com) rather than vanilla kernel since the board support is only available there for now
2. Multicom (http://www.st.com/internet/com/TECHNICAL_RESOURCES/TECHNICAL_LITERATURE/USER_MANUAL/CD18182595.pdf) based V4L2 driver. Multicom is an ST layer to allow to send and serialize commands to our various IP.

Regards,

Alain

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-11-12 21:55 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-31 13:21 Way to request a time discontinuity in a V4L2 encoder device Alain VOLMAT
2012-11-04 11:54 ` Laurent Pinchart
2012-11-05 10:45   ` Alain VOLMAT
2012-11-05 20:47     ` Sylwester Nawrocki
2012-11-08  9:49       ` Laurent Pinchart
2012-11-11  8:51       ` Sakari Ailus
2012-11-12 11:18         ` Laurent Pinchart
2012-11-12 21:55           ` Sakari Ailus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox