Hi, I re-send this email for the last one is rejected by system. I am sorry if you guys received both.
I am optimizing video playback with overlay with V4L2 driver. The video content is a sub-region of codec output. Thus a memory copy is necessary. Is there plan to support for stride and discrete YUV planer in kernel? Such as below changes can help much for my usage case. --- a/include/linux/videodev2.h +++ b/include/linux/videodev2.h @@ -529,7 +529,20 @@ struct v4l2_buffer { __u32 offset; unsigned long userptr; } m; + /* UV/GB location is valid only in planer case */ + union { + __u32 offset_ug; + unsigned long userptr_ug; + } m_ug; + union { + __u32 offset_vb; + unsigned long userptr_vb; + } m_vb; __u32 length; + /* stride of YUV or RGB */ + __u32 stride_yr; + __u32 stride_ug; + __u32 stride_vb; __u32 input; __u32 reserved; }; If such change is acceptable for everyone, I may help on the implementation. Any comments are welcome. Jun N§²æìr¸yúèØb²X¬¶Ç§vØ^)Þº{.nÇ+·¥{±çbj)í æèw*jg¬±¨¶Ý¢j/êäz¹Þà2Þ¨èÚ&¢)ß¡«a¶Úþø®G«éh®æj:+v¨wèÙ¥