Под Гостеприимным Xerus я компилирую версию выпуска guvcview против последнего мерзавца FFmpeg. В последнем FFmpeg PIX_FMT_YUV420P
был заменен AV_PIX_FMT_YUV420P
и я подозреваю, что эта переменная должна быть заменена через guvcview источник.
Ошибка, которая повреждает компиляцию, является этим:
jpeg_decoder.c:1439:33: error: use of undeclared identifier 'PIX_FMT_YUV422P'; did you mean
'AV_PIX_FMT_YUV422P'?
codec_data->context->pix_fmt = PIX_FMT_YUV422P;
^~~~~~~~~~~~~~~
AV_PIX_FMT_YUV422P
Делает у кого-либо есть патч или даже некоторые sed
волшебство устранить эту проблему?
Ссылки:
Можно использовать guvcview-ffmpeg3.patch
от Дуги Linux:
--- a/gview_v4l2core/jpeg_decoder.c
+++ b/gview_v4l2core/jpeg_decoder.c
@@ -1436,7 +1436,7 @@
exit(-1);
}
- codec_data->context->pix_fmt = PIX_FMT_YUV422P;
+ codec_data->context->pix_fmt = AV_PIX_FMT_YUV422P;
codec_data->context->width = width;
codec_data->context->height = height;
//jpeg_ctx->context->dsp_mask = (FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE);
--- a/gview_v4l2core/uvc_h264.c
+++ b/gview_v4l2core/uvc_h264.c
@@ -970,7 +970,7 @@
}
h264_ctx->context->flags2 |= CODEC_FLAG2_FAST;
- h264_ctx->context->pix_fmt = PIX_FMT_YUV420P;
+ h264_ctx->context->pix_fmt = AV_PIX_FMT_YUV420P;
h264_ctx->context->width = width;
h264_ctx->context->height = height;
//h264_ctx->context->dsp_mask = (FF_MM_MMX | FF_MM_MMXEXT | FF_MM_SSE);