[FFmpeg-cvslog] avcodec/v4l2_m2m: Simplify capture buffer init check
Andriy Gelman
git at videolan.org
Sat Feb 1 23:42:23 EET 2020
ffmpeg | branch: master | Andriy Gelman <andriy.gelman at gmail.com> | Sun Jan 12 23:11:27 2020 -0500| [4c1a3e91665c102136ded4a78310166e9eb99604] | committer: Mark Thompson
avcodec/v4l2_m2m: Simplify capture buffer init check
Before this commit s->avctx == NULL was used to infer that an encoder is
being initialzed. Code readability has been improved by directly using
!av_codec_is_decoder() instead.
Signed-off-by: Andriy Gelman <andriy.gelman at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4c1a3e91665c102136ded4a78310166e9eb99604
---
libavcodec/v4l2_m2m.c | 4 ++--
libavcodec/v4l2_m2m_enc.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/libavcodec/v4l2_m2m.c b/libavcodec/v4l2_m2m.c
index 1112d71ead..b5a9fd1034 100644
--- a/libavcodec/v4l2_m2m.c
+++ b/libavcodec/v4l2_m2m.c
@@ -176,7 +176,7 @@ static int v4l2_configure_contexts(V4L2m2mContext* s)
}
/* decoder's buffers need to be updated at a later stage */
- if (!s->avctx || !av_codec_is_decoder(s->avctx->codec)) {
+ if (s->avctx && !av_codec_is_decoder(s->avctx->codec)) {
ret = ff_v4l2_context_init(&s->capture);
if (ret) {
av_log(log_ctx, AV_LOG_ERROR, "no v4l2 capture context's buffers\n");
@@ -307,7 +307,7 @@ int ff_v4l2_m2m_codec_full_reinit(V4L2m2mContext *s)
}
/* decoder's buffers need to be updated at a later stage */
- if (!s->avctx || !av_codec_is_decoder(s->avctx->codec)) {
+ if (s->avctx && !av_codec_is_decoder(s->avctx->codec)) {
ret = ff_v4l2_context_init(&s->capture);
if (ret) {
av_log(log_ctx, AV_LOG_ERROR, "no v4l2 capture context's buffers\n");
diff --git a/libavcodec/v4l2_m2m_enc.c b/libavcodec/v4l2_m2m_enc.c
index 8059e3bb48..98b9dfc2c0 100644
--- a/libavcodec/v4l2_m2m_enc.c
+++ b/libavcodec/v4l2_m2m_enc.c
@@ -312,12 +312,12 @@ static av_cold int v4l2_encode_init(AVCodecContext *avctx)
capture->av_codec_id = avctx->codec_id;
capture->av_pix_fmt = AV_PIX_FMT_NONE;
+ s->avctx = avctx;
ret = ff_v4l2_m2m_codec_init(priv);
if (ret) {
av_log(avctx, AV_LOG_ERROR, "can't configure encoder\n");
return ret;
}
- s->avctx = avctx;
if (V4L2_TYPE_IS_MULTIPLANAR(output->type))
v4l2_fmt_output = output->format.fmt.pix_mp.pixelformat;
More information about the ffmpeg-cvslog
mailing list