|
|
|
@ -322,13 +322,7 @@ static int v4l2_buffer_buf_to_swframe(AVFrame *frame, V4L2Buffer *avbuf) |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/******************************************************************************
|
|
|
|
|
* |
|
|
|
|
* V4L2Buffer interface |
|
|
|
|
* |
|
|
|
|
******************************************************************************/ |
|
|
|
|
|
|
|
|
|
int ff_v4l2_buffer_avframe_to_buf(const AVFrame *frame, V4L2Buffer *out) |
|
|
|
|
static int v4l2_buffer_swframe_to_buf(const AVFrame *frame, V4L2Buffer *out) |
|
|
|
|
{ |
|
|
|
|
int i, ret; |
|
|
|
|
struct v4l2_format fmt = out->context->format; |
|
|
|
@ -354,8 +348,6 @@ int ff_v4l2_buffer_avframe_to_buf(const AVFrame *frame, V4L2Buffer *out) |
|
|
|
|
is_planar_format = 1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
v4l2_set_pts(out, frame->pts); |
|
|
|
|
|
|
|
|
|
if (!is_planar_format) { |
|
|
|
|
const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(frame->format); |
|
|
|
|
int planes_nb = 0; |
|
|
|
@ -387,6 +379,19 @@ int ff_v4l2_buffer_avframe_to_buf(const AVFrame *frame, V4L2Buffer *out) |
|
|
|
|
return 0; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/******************************************************************************
|
|
|
|
|
* |
|
|
|
|
* V4L2Buffer interface |
|
|
|
|
* |
|
|
|
|
******************************************************************************/ |
|
|
|
|
|
|
|
|
|
int ff_v4l2_buffer_avframe_to_buf(const AVFrame *frame, V4L2Buffer *out) |
|
|
|
|
{ |
|
|
|
|
v4l2_set_pts(out, frame->pts); |
|
|
|
|
|
|
|
|
|
return v4l2_buffer_swframe_to_buf(frame, out); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
int ff_v4l2_buffer_buf_to_avframe(AVFrame *frame, V4L2Buffer *avbuf) |
|
|
|
|
{ |
|
|
|
|
V4L2m2mContext *s = buf_to_m2mctx(avbuf); |
|
|
|
|