summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2016-02-15 15:50:19 +0100
committerAlexis Ballier <aballier@gentoo.org>2016-02-15 15:51:19 +0100
commit4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785 (patch)
tree2a48c47b90f98cb86b59e6ec465fd536344a5c2e /sci-libs
parentkde-apps/kdemultimedia-meta: Drop old (diff)
downloadgentoo-4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785.tar.gz
gentoo-4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785.tar.bz2
gentoo-4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785.zip
sci-libs/ViSP: fix build with ffmpeg3.
Package-Manager: portage-2.2.27 Signed-off-by: Alexis Ballier <aballier@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/ViSP/ViSP-3.0.0.ebuild2
-rw-r--r--sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch78
2 files changed, 79 insertions, 1 deletions
diff --git a/sci-libs/ViSP/ViSP-3.0.0.ebuild b/sci-libs/ViSP/ViSP-3.0.0.ebuild
index 0f25727c2d93..da5a12e5673e 100644
--- a/sci-libs/ViSP/ViSP-3.0.0.ebuild
+++ b/sci-libs/ViSP/ViSP-3.0.0.ebuild
@@ -53,7 +53,7 @@ REQUIRED_USE="
"
S="${WORKDIR}/visp-${PV}"
-PATCHES=( "${FILESDIR}/${P}-opencv.patch" )
+PATCHES=( "${FILESDIR}/${P}-opencv.patch" "${FILESDIR}/${P}-ffmpeg3.patch" )
src_configure() {
local mycmakeargs=(
diff --git a/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch b/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch
new file mode 100644
index 000000000000..8fd3c8b1edb3
--- /dev/null
+++ b/sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch
@@ -0,0 +1,78 @@
+Index: visp-3.0.0/modules/io/src/video/vpFFMPEG.cpp
+===================================================================
+--- visp-3.0.0.orig/modules/io/src/video/vpFFMPEG.cpp
++++ visp-3.0.0/modules/io/src/video/vpFFMPEG.cpp
+@@ -180,7 +180,7 @@ bool vpFFMPEG::openStream(const char *fi
+ if (pFrameRGB == NULL)
+ return false;
+
+- numBytes = avpicture_get_size (PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height);
++ numBytes = avpicture_get_size (AV_PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height);
+ }
+
+ else if (color_type == vpFFMPEG::GRAY_SCALED)
+@@ -194,7 +194,7 @@ bool vpFFMPEG::openStream(const char *fi
+ if (pFrameGRAY == NULL)
+ return false;
+
+- numBytes = avpicture_get_size (PIX_FMT_GRAY8,pCodecCtx->width,pCodecCtx->height);
++ numBytes = avpicture_get_size (AV_PIX_FMT_GRAY8,pCodecCtx->width,pCodecCtx->height);
+ }
+
+ /*
+@@ -211,10 +211,10 @@ bool vpFFMPEG::openStream(const char *fi
+ }
+
+ if (color_type == vpFFMPEG::COLORED)
+- avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height);
++ avpicture_fill((AVPicture *)pFrameRGB, buffer, AV_PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height);
+
+ else if (color_type == vpFFMPEG::GRAY_SCALED)
+- avpicture_fill((AVPicture *)pFrameGRAY, buffer, PIX_FMT_GRAY8, pCodecCtx->width, pCodecCtx->height);
++ avpicture_fill((AVPicture *)pFrameGRAY, buffer, AV_PIX_FMT_GRAY8, pCodecCtx->width, pCodecCtx->height);
+
+ streamWasOpen = true;
+
+@@ -231,10 +231,10 @@ bool vpFFMPEG::openStream(const char *fi
+ bool vpFFMPEG::initStream()
+ {
+ if (color_type == vpFFMPEG::COLORED)
+- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL);
++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_RGB24, SWS_BICUBIC, NULL, NULL, NULL);
+
+ else if (color_type == vpFFMPEG::GRAY_SCALED)
+- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,PIX_FMT_GRAY8, SWS_BICUBIC, NULL, NULL, NULL);
++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, pCodecCtx->pix_fmt, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_GRAY8, SWS_BICUBIC, NULL, NULL, NULL);
+
+ int ret = av_seek_frame(pFormatCtx, (int)videoStream, 0, AVSEEK_FLAG_ANY) ;
+ if (ret < 0 )
+@@ -703,7 +703,7 @@ bool vpFFMPEG::openEncoder(const char *f
+ pCodecCtx->time_base.den = framerate_encoder;
+ pCodecCtx->gop_size = 10; /* emit one intra frame every ten frames */
+ pCodecCtx->max_b_frames=1;
+- pCodecCtx->pix_fmt = PIX_FMT_YUV420P;
++ pCodecCtx->pix_fmt = AV_PIX_FMT_YUV420P;
+
+ /* open it */
+ #if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(53,35,0) // libavcodec 53.35.0
+@@ -726,15 +726,15 @@ bool vpFFMPEG::openEncoder(const char *f
+ outbuf_size = 100000;
+ outbuf = new uint8_t[outbuf_size];
+
+- numBytes = avpicture_get_size (PIX_FMT_YUV420P,pCodecCtx->width,pCodecCtx->height);
++ numBytes = avpicture_get_size (AV_PIX_FMT_YUV420P,pCodecCtx->width,pCodecCtx->height);
+ picture_buf = new uint8_t[numBytes];
+- avpicture_fill((AVPicture *)pFrame, picture_buf, PIX_FMT_YUV420P, pCodecCtx->width, pCodecCtx->height);
++ avpicture_fill((AVPicture *)pFrame, picture_buf, AV_PIX_FMT_YUV420P, pCodecCtx->width, pCodecCtx->height);
+
+- numBytes = avpicture_get_size (PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height);
++ numBytes = avpicture_get_size (AV_PIX_FMT_RGB24,pCodecCtx->width,pCodecCtx->height);
+ buffer = new uint8_t[numBytes];
+- avpicture_fill((AVPicture *)pFrameRGB, buffer, PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height);
++ avpicture_fill((AVPicture *)pFrameRGB, buffer, AV_PIX_FMT_RGB24, pCodecCtx->width, pCodecCtx->height);
+
+- img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, PIX_FMT_RGB24, pCodecCtx->width,pCodecCtx->height,PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL);
++ img_convert_ctx= sws_getContext(pCodecCtx->width, pCodecCtx->height, AV_PIX_FMT_RGB24, pCodecCtx->width,pCodecCtx->height,AV_PIX_FMT_YUV420P, SWS_BICUBIC, NULL, NULL, NULL);
+
+ encoderWasOpened = true;
+