diff options
author | Alexis Ballier <aballier@gentoo.org> | 2016-02-15 15:50:19 +0100 |
---|---|---|
committer | Alexis Ballier <aballier@gentoo.org> | 2016-02-15 15:51:19 +0100 |
commit | 4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785 (patch) | |
tree | 2a48c47b90f98cb86b59e6ec465fd536344a5c2e /sci-libs/ViSP | |
parent | 114f07ce956fb1868361595a0c0ad3b35255eb93 (diff) | |
download | gentoo-4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785.tar.gz gentoo-4b87a5769cd1d0b3d8d1dbf637d6a0d32d40e785.tar.xz |
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/ViSP')
-rw-r--r-- | sci-libs/ViSP/ViSP-3.0.0.ebuild | 2 | ||||
-rw-r--r-- | sci-libs/ViSP/files/ViSP-3.0.0-ffmpeg3.patch | 78 |
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 0f25727c2d9..da5a12e5673 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 00000000000..8fd3c8b1edb --- /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; + |