mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-26 09:46:09 +00:00
- Update to 3.5.1
- Fix build with recent ffmpeg - Reduce diff with graphics/osg PR: 209057 Submitted by: woodsb02@gmail.com
This commit is contained in:
parent
6a3078dbd1
commit
2c02e4c742
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=429620
@ -2,8 +2,7 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= osg
|
||||
PORTVERSION= 3.3.9
|
||||
PORTREVISION= 2
|
||||
PORTVERSION= 3.5.1
|
||||
CATEGORIES= graphics
|
||||
MASTER_SITES= http://trac.openscenegraph.org/downloads/developer_releases/ \
|
||||
http://mirror.amdmi3.ru/distfiles/
|
||||
@ -29,167 +28,121 @@ USE_XORG= x11
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
PLIST_SUB= OSG_VERSION=${PORTVERSION} \
|
||||
OSG_SHLIBVER=123 \
|
||||
OSG_SHLIBVER=141 \
|
||||
OPENTHREADS_VERSION=3.3.0 \
|
||||
OPENTHREADS_SHLIBVER=20
|
||||
|
||||
PORTSCOUT= limitw:1,odd
|
||||
|
||||
OPTIONS_DEFINE= CURL FFMPEG FREETYPE GDAL GIF GSTREAMER GTA INVENTOR \
|
||||
JASPER LIBLAS LUA NVTT OPENEXR PDF QT4 SDL \
|
||||
JASPER LIBLAS LUA NVTT OPENEXR PDF SDL \
|
||||
SVG VNC XINE XRANDR
|
||||
OPTIONS_DEFAULT=FREETYPE GIF FFMPEG XRANDR
|
||||
OPTIONS_RADIO= QT
|
||||
OPTIONS_RADIO_QT=QT4 QT5
|
||||
OPTIONS_DEFAULT=FFMPEG FREETYPE GIF XRANDR
|
||||
|
||||
LIBLAS_DESC= liblas support
|
||||
GDAL_DESC= GDAL support
|
||||
INVENTOR_DESC= SGI OpenInventor support
|
||||
GTA_DESC= GTA file format support
|
||||
VNC_DESC= LibVNCServer support
|
||||
SDL_DESC= Use SDL (joystick support in present3d)
|
||||
INVENTOR_DESC= SGI OpenInventor support
|
||||
LIBLAS_DESC= liblas support
|
||||
NVTT_DESC= Use NVidia texture tools
|
||||
LUA_DESC= Lua script engine support
|
||||
QT_DESC= QT toolkit support (optional)
|
||||
SDL_DESC= Use SDL (joystick support in present3d)
|
||||
VNC_DESC= LibVNCServer support
|
||||
|
||||
OPTIONS_SUB= yes
|
||||
|
||||
CURL_LIB_DEPENDS= libcurl.so:ftp/curl
|
||||
LIBLAS_LIB_DEPENDS= liblas.so:devel/liblas
|
||||
FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2
|
||||
GDAL_LIB_DEPENDS= libgdal.so:graphics/gdal
|
||||
GIF_LIB_DEPENDS= libgif.so:graphics/giflib
|
||||
GSTREAMER_USE= GNOME=glib20 GSTREAMER1=yes
|
||||
INVENTOR_LIB_DEPENDS= libInventor.so:graphics/inventor
|
||||
JASPER_LIB_DEPENDS= libjasper.so:graphics/jasper
|
||||
XINE_LIB_DEPENDS= libxine.so:multimedia/libxine
|
||||
GTA_LIB_DEPENDS= libgta.so:devel/libgta
|
||||
VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver
|
||||
OPENEXR_LIB_DEPENDS= libIlmImf.so:graphics/OpenEXR
|
||||
CURL_VARS= FORCE_REQUIRE+=CURL
|
||||
CURL_VARS_OFF= FORCE_IGNORE+=CURL
|
||||
FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg
|
||||
FFMPEG_BROKEN= does not build with ffmpeg 3.x
|
||||
SVG_LIB_DEPENDS= librsvg-2.so:graphics/librsvg2
|
||||
PDF_LIB_DEPENDS= libpoppler-glib.so:graphics/poppler-glib
|
||||
SDL_USE= SDL=sdl
|
||||
FFMPEG_VARS= FORCE_REQUIRE+=FFmpeg
|
||||
FFMPEG_VARS_OFF= FORCE_IGNORE+=FFmpeg
|
||||
FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2
|
||||
FREETYPE_VARS= FORCE_REQUIRE+=Freetype
|
||||
FREETYPE_VARS_OFF= FORCE_IGNORE+=Freetype
|
||||
GDAL_LIB_DEPENDS= libgdal.so:graphics/gdal
|
||||
GDAL_VARS= FORCE_REQUIRE+=GDAL
|
||||
GDAL_VARS_OFF= FORCE_IGNORE+=GDAL
|
||||
GIF_LIB_DEPENDS= libgif.so:graphics/giflib
|
||||
GIF_VARS= FORCE_REQUIRE+=GIFLIB
|
||||
GIF_VARS_OFF= FORCE_IGNORE+=GIFLIB
|
||||
GSTREAMER_USE= GNOME=glib20 GSTREAMER1=yes
|
||||
GSTREAMER_VARS= FORCE_REQUIRE+=GStreamer
|
||||
GSTREAMER_VARS_OFF= FORCE_IGNORE+=GStreamer
|
||||
GSTREAMER_BROKEN= fails when linking gstreamer plugin, with error cannot find -lgstreamer-1.0
|
||||
GTA_LIB_DEPENDS= libgta.so:devel/libgta
|
||||
GTA_VARS= FORCE_REQUIRE+=GTA
|
||||
GTA_VARS_OFF= FORCE_IGNORE+=GTA
|
||||
INVENTOR_LIB_DEPENDS= libInventor.so:graphics/inventor
|
||||
INVENTOR_VARS= FORCE_REQUIRE+=Inventor
|
||||
INVENTOR_VARS_OFF= FORCE_IGNORE+=Inventor
|
||||
JASPER_LIB_DEPENDS= libjasper.so:graphics/jasper
|
||||
JASPER_VARS= FORCE_REQUIRE+=Jasper
|
||||
JASPER_VARS_OFF= FORCE_IGNORE+=Jasper
|
||||
LIBLAS_LIB_DEPENDS= liblas.so:devel/liblas
|
||||
LIBLAS_VARS= FORCE_REQUIRE+=LIBLAS
|
||||
LIBLAS_VARS_OFF= FORCE_IGNORE+=LIBLAS
|
||||
LUA_USES= lua:52
|
||||
LUA_CMAKE_ON= -DOSG_USE_LOCAL_LUA_SOURCE:BOOL=OFF
|
||||
LUA_VARS= FORCE_IGNORE+=Lua51 FORCE_REQUIRE+=Lua52
|
||||
LUA_VARS_OFF= FORCE_IGNORE+="Lua51 Lua52"
|
||||
NVTT_LIB_DEPENDS= libnvtt.so:graphics/nvidia-texture-tools
|
||||
NVTT_VARS= FORCE_REQUIRE+=NVTT
|
||||
NVTT_VARS_OFF= FORCE_IGNORE+=NVTT
|
||||
OPENEXR_LIB_DEPENDS= libIlmImf.so:graphics/OpenEXR
|
||||
OPENEXR_VARS= FORCE_REQUIRE+=OpenEXR
|
||||
OPENEXR_VARS_OFF= FORCE_IGNORE+=OpenEXR
|
||||
PDF_LIB_DEPENDS= libpoppler-glib.so:graphics/poppler-glib
|
||||
PDF_USE= gnome=cairo
|
||||
PDF_VARS= FORCE_REQUIRE+=Poppler-glib
|
||||
PDF_VARS_OFF= FORCE_IGNORE+=Poppler-glib
|
||||
QT4_USE= qt4=corelib,gui,moc_build,opengl,qmake_build,rcc_build,uic_build
|
||||
QT4_CMAKE_ON= -DDESIRED_QT_VERSION=4
|
||||
QT4_VARS= FORCE_REQUIRE+=Qt4
|
||||
QT4_VARS_OFF= FORCE_IGNORE+=Qt4
|
||||
QT5_USE= qt5=buildtools_build,core,gui,opengl,qmake_build,webkit
|
||||
QT5_CMAKE_ON= -DDESIRED_QT_VERSION=5
|
||||
QT5_VARS= FORCE_REQUIRE+="Qt5Widgets Qt5WebKitWidgets"
|
||||
QT5_VARS_OFF= FORCE_IGNORE+="Qt5Widgets Qt5WebKitWidgets"
|
||||
SDL_USE= sdl=sdl
|
||||
SDL_VARS= FORCE_REQUIRE+=SDL
|
||||
SDL_VARS_OFF= FORCE_IGNORE+=SDL
|
||||
SVG_LIB_DEPENDS= librsvg-2.so:graphics/librsvg2
|
||||
SVG_USE= gnome=cairo
|
||||
SVG_VARS= FORCE_REQUIRE+=RSVG
|
||||
SVG_VARS_OFF= FORCE_IGNORE+=RSVG
|
||||
VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver
|
||||
VNC_VARS= FORCE_REQUIRE+=LibVNCServer
|
||||
VNC_VARS_OFF= FORCE_IGNORE+=LibVNCServer
|
||||
XINE_LIB_DEPENDS= libxine.so:multimedia/libxine
|
||||
XINE_VARS= FORCE_REQUIRE+=Xine
|
||||
XINE_VARS_OFF= FORCE_IGNORE+=Xine
|
||||
XRANDR_CMAKE_ON= -DOSGVIEWER_USE_XRANDR:BOOL=ON
|
||||
XRANDR_CMAKE_OFF= -DOSGVIEWER_USE_XRANDR:BOOL=OFF
|
||||
QT4_USE= QT4=corelib,gui,opengl,qmake_build,moc_build,uic_build,rcc_build
|
||||
QT4_CMAKE_ON= -DOSG_USE_QT=ON
|
||||
QT4_CMAKE_OFF= -DOSG_USE_QT=OFF
|
||||
LUA_USES= lua:52
|
||||
XRANDR_USE= xorg=xrandr
|
||||
|
||||
# GUI toolkits are only needed for building examples, which are not even installed
|
||||
FORCE_IGNORE= FLTK GLUT FOX Qt3 wxWidgets OpenAL GtkGl SDL2 # only for examples
|
||||
FORCE_IGNORE+= COLLADA Performer OurDCMTK XUL FBX # not in ports
|
||||
FORCE_IGNORE+= OpenVRML # ports version too old
|
||||
FORCE_IGNORE+= ITK # ports version doesn't build on 10.x
|
||||
FORCE_REQUIRE= Threads OpenGL X11 JPEG PNG TIFF ZLIB # common & lightweight
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
# GUI toolkits are only needed for building examples, which are not even installed
|
||||
FORCE_IGNORE= FLTK GLUT FOX Qt3 Qt5Widgets wxWidgets OpenAL GtkGl SDL2 # only for examples
|
||||
FORCE_IGNORE+= COLLADA Performer OurDCMTK XUL FBX # not in ports
|
||||
FORCE_IGNORE+= OpenVRML # ports version too old
|
||||
FORCE_IGNORE+= ITK # ports version doesn't build on 10.x
|
||||
FORCE_REQUIRE= Threads OpenGL X11 JPEG PNG TIFF ZLIB # common & lightweight
|
||||
.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1000000 && ${OSVERSION} < 1100000
|
||||
# workaround for make (?) problem leading to cflags
|
||||
# lost in osgjs
|
||||
USES+= gmake
|
||||
.endif
|
||||
|
||||
# options that affect FIND_PACKAGE
|
||||
.if ${PORT_OPTIONS:MCURL}
|
||||
FORCE_REQUIRE+= CURL
|
||||
.if ${PORT_OPTIONS:MQT4} || ${PORT_OPTIONS:MQT5}
|
||||
CMAKE_ARGS+= -DOSG_USE_QT:BOOL=ON
|
||||
PLIST_SUB+= QT=""
|
||||
.else
|
||||
FORCE_IGNORE+= CURL
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFREETYPE}
|
||||
FORCE_REQUIRE+= FreeType
|
||||
.else
|
||||
FORCE_IGNORE+= FreeType
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MGDAL}
|
||||
FORCE_REQUIRE+= GDAL
|
||||
.else
|
||||
FORCE_IGNORE+= GDAL
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MGIF}
|
||||
FORCE_REQUIRE+= GIFLIB
|
||||
.else
|
||||
FORCE_IGNORE+= GIFLIB
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MINVENTOR}
|
||||
FORCE_REQUIRE+= Inventor
|
||||
.else
|
||||
FORCE_IGNORE+= Inventor
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MJASPER}
|
||||
FORCE_REQUIRE+= Jasper
|
||||
.else
|
||||
FORCE_IGNORE+= Jasper
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MXINE}
|
||||
FORCE_REQUIRE+= Xine
|
||||
.else
|
||||
FORCE_IGNORE+= Xine
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MGTA}
|
||||
FORCE_REQUIRE+= GTA
|
||||
.else
|
||||
FORCE_IGNORE+= GTA
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MVNC}
|
||||
FORCE_REQUIRE+= LibVNCServer
|
||||
.else
|
||||
FORCE_IGNORE+= LibVNCServer
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MOPENEXR}
|
||||
FORCE_REQUIRE+= OpenEXR
|
||||
.else
|
||||
FORCE_IGNORE+= OpenEXR
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MFFMPEG}
|
||||
FORCE_REQUIRE+= FFmpeg
|
||||
.else
|
||||
FORCE_IGNORE+= FFmpeg
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSDL}
|
||||
FORCE_REQUIRE+= SDL
|
||||
.else
|
||||
FORCE_IGNORE+= SDL
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MNVTT}
|
||||
FORCE_REQUIRE+= NVTT
|
||||
.else
|
||||
FORCE_IGNORE+= NVTT
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MLUA}
|
||||
FORCE_REQUIRE+= Lua51
|
||||
.else
|
||||
FORCE_IGNORE+= Lua51
|
||||
.endif
|
||||
|
||||
# options that affect PKG_CHECK_MODULES
|
||||
.if ${PORT_OPTIONS:MSVG}
|
||||
FORCE_REQUIRE+= RSVG
|
||||
.else
|
||||
FORCE_IGNORE+= RSVG
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MPDF}
|
||||
FORCE_REQUIRE+= Poppler-glib
|
||||
.else
|
||||
FORCE_IGNORE+= Poppler-glib
|
||||
.endif
|
||||
|
||||
.if ${PORT_OPTIONS:MSVG} || ${PORT_OPTIONS:MPDF}
|
||||
USE_GNOME= cairo
|
||||
.endif
|
||||
|
||||
# other options
|
||||
.if ${PORT_OPTIONS:MXRANDR}
|
||||
USE_XORG+= xrandr
|
||||
CMAKE_ARGS+= -DOSG_USE_QT:BOOL=OFF
|
||||
PLIST_SUB+= QT="@comment "
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
|
@ -1,2 +1,3 @@
|
||||
SHA256 (OpenSceneGraph-3.3.9.zip) = 4e9cb3a30a9ee3ac43693f7afabb9c4a5417bd9e83d501cbb6643f75c3b7bfd3
|
||||
SIZE (OpenSceneGraph-3.3.9.zip) = 8335153
|
||||
TIMESTAMP = 1482850076
|
||||
SHA256 (OpenSceneGraph-3.5.1.zip) = c409e9095d77faab3db8fe2047d75e7ef348fd9f06ecd8b7629fceb8fe1d24e0
|
||||
SIZE (OpenSceneGraph-3.5.1.zip) = 8353019
|
||||
|
@ -0,0 +1,32 @@
|
||||
--- CMakeModules/FindGStreamer.cmake 2015-07-17 21:31:19.000000000 +0300
|
||||
+++ CMakeModules/FindGStreamer.cmake 2015-02-25 22:25:34.000000000 +0300
|
||||
@@ -83,18 +83,18 @@
|
||||
find_package(PkgConfig)
|
||||
|
||||
macro(FIND_GSTREAMER_COMPONENT _component_prefix _pkgconfig_name _header _library)
|
||||
- pkg_check_modules(${_component_prefix} QUIET ${_pkgconfig_name})
|
||||
+ pkg_check_modules(PC_${_component_prefix} QUIET ${_pkgconfig_name})
|
||||
|
||||
-# find_path(${_component_prefix}_INCLUDE_DIRS
|
||||
-# NAMES ${_header}
|
||||
-# HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
|
||||
-# PATH_SUFFIXES gstreamer-1.0
|
||||
-# )
|
||||
-
|
||||
-# find_library(${_component_prefix}_LIBRARIES
|
||||
-# NAMES ${_library}
|
||||
-# HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
|
||||
-# )
|
||||
+ find_path(${_component_prefix}_INCLUDE_DIRS
|
||||
+ NAMES ${_header}
|
||||
+ HINTS ${PC_${_component_prefix}_INCLUDE_DIRS} ${PC_${_component_prefix}_INCLUDEDIR}
|
||||
+ PATH_SUFFIXES gstreamer-1.0
|
||||
+ )
|
||||
+
|
||||
+ find_library(${_component_prefix}_LIBRARIES
|
||||
+ NAMES ${_library}
|
||||
+ HINTS ${PC_${_component_prefix}_LIBRARY_DIRS} ${PC_${_component_prefix}_LIBDIR}
|
||||
+ )
|
||||
endmacro()
|
||||
endif ()
|
||||
|
157
graphics/osg-devel/files/patch-ffmpeg3
Normal file
157
graphics/osg-devel/files/patch-ffmpeg3
Normal file
@ -0,0 +1,157 @@
|
||||
Description: Replace deprecated FFmpeg API
|
||||
Author: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
|
||||
Last-Update: <2015-11-02>
|
||||
|
||||
--- src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp.orig
|
||||
+++ src/osgPlugins/ffmpeg/FFmpegDecoderVideo.cpp
|
||||
@@ -71,7 +71,7 @@ void FFmpegDecoderVideo::open(AVStream *
|
||||
findAspectRatio();
|
||||
|
||||
// Find out whether we support Alpha channel
|
||||
- m_alpha_channel = (m_context->pix_fmt == PIX_FMT_YUVA420P);
|
||||
+ m_alpha_channel = (m_context->pix_fmt == AV_PIX_FMT_YUVA420P);
|
||||
|
||||
// Find out the framerate
|
||||
m_frame_rate = av_q2d(stream->avg_frame_rate);
|
||||
@@ -91,20 +91,19 @@ void FFmpegDecoderVideo::open(AVStream *
|
||||
throw std::runtime_error("avcodec_open() failed");
|
||||
|
||||
// Allocate video frame
|
||||
- m_frame.reset(avcodec_alloc_frame());
|
||||
+ m_frame.reset(av_frame_alloc());
|
||||
|
||||
// Allocate converted RGB frame
|
||||
- m_frame_rgba.reset(avcodec_alloc_frame());
|
||||
- m_buffer_rgba[0].resize(avpicture_get_size(PIX_FMT_RGB24, width(), height()));
|
||||
+ m_frame_rgba.reset(av_frame_alloc());
|
||||
+ m_buffer_rgba[0].resize(avpicture_get_size(AV_PIX_FMT_RGB24, width(), height()));
|
||||
m_buffer_rgba[1].resize(m_buffer_rgba[0].size());
|
||||
|
||||
// Assign appropriate parts of the buffer to image planes in m_frame_rgba
|
||||
- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[0])[0], PIX_FMT_RGB24, width(), height());
|
||||
+ avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[0])[0], AV_PIX_FMT_RGB24, width(), height());
|
||||
|
||||
// Override get_buffer()/release_buffer() from codec context in order to retrieve the PTS of each frame.
|
||||
m_context->opaque = this;
|
||||
- m_context->get_buffer = getBuffer;
|
||||
- m_context->release_buffer = releaseBuffer;
|
||||
+ m_context->get_buffer2 = getBuffer;
|
||||
}
|
||||
|
||||
|
||||
@@ -263,8 +262,8 @@ int FFmpegDecoderVideo::convert(AVPictur
|
||||
#ifdef USE_SWSCALE
|
||||
if (m_swscale_ctx==0)
|
||||
{
|
||||
- m_swscale_ctx = sws_getContext(src_width, src_height, (PixelFormat) src_pix_fmt,
|
||||
- src_width, src_height, (PixelFormat) dst_pix_fmt,
|
||||
+ m_swscale_ctx = sws_getContext(src_width, src_height, (AVPixelFormat) src_pix_fmt,
|
||||
+ src_width, src_height, (AVPixelFormat) dst_pix_fmt,
|
||||
/*SWS_BILINEAR*/ SWS_BICUBIC, NULL, NULL, NULL);
|
||||
}
|
||||
|
||||
@@ -311,14 +310,14 @@ void FFmpegDecoderVideo::publishFrame(co
|
||||
AVPicture * const dst = (AVPicture *) m_frame_rgba.get();
|
||||
|
||||
// Assign appropriate parts of the buffer to image planes in m_frame_rgba
|
||||
- avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[m_writeBuffer])[0], PIX_FMT_RGB24, width(), height());
|
||||
+ avpicture_fill((AVPicture *) (m_frame_rgba).get(), &(m_buffer_rgba[m_writeBuffer])[0], AV_PIX_FMT_RGB24, width(), height());
|
||||
|
||||
// Convert YUVA420p (i.e. YUV420p plus alpha channel) using our own routine
|
||||
|
||||
- if (m_context->pix_fmt == PIX_FMT_YUVA420P)
|
||||
+ if (m_context->pix_fmt == AV_PIX_FMT_YUVA420P)
|
||||
yuva420pToRgba(dst, src, width(), height());
|
||||
else
|
||||
- convert(dst, PIX_FMT_RGB24, src, m_context->pix_fmt, width(), height());
|
||||
+ convert(dst, AV_PIX_FMT_RGB24, src, m_context->pix_fmt, width(), height());
|
||||
|
||||
// Wait 'delay' seconds before publishing the picture.
|
||||
int i_delay = static_cast<int>(delay * 1000000 + 0.5);
|
||||
@@ -345,7 +344,7 @@ void FFmpegDecoderVideo::publishFrame(co
|
||||
|
||||
void FFmpegDecoderVideo::yuva420pToRgba(AVPicture * const dst, AVPicture * const src, int width, int height)
|
||||
{
|
||||
- convert(dst, PIX_FMT_RGB24, src, m_context->pix_fmt, width, height);
|
||||
+ convert(dst, AV_PIX_FMT_RGB24, src, m_context->pix_fmt, width, height);
|
||||
|
||||
const size_t bpp = 4;
|
||||
|
||||
@@ -363,31 +362,28 @@ void FFmpegDecoderVideo::yuva420pToRgba(
|
||||
}
|
||||
}
|
||||
|
||||
-
|
||||
-
|
||||
-int FFmpegDecoderVideo::getBuffer(AVCodecContext * const context, AVFrame * const picture)
|
||||
+int FFmpegDecoderVideo::getBuffer(AVCodecContext * const context, AVFrame * const picture, int flags)
|
||||
{
|
||||
+ AVBufferRef *ref;
|
||||
const FFmpegDecoderVideo * const this_ = reinterpret_cast<const FFmpegDecoderVideo*>(context->opaque);
|
||||
|
||||
- const int result = avcodec_default_get_buffer(context, picture);
|
||||
+ const int result = avcodec_default_get_buffer2(context, picture, flags);
|
||||
int64_t * p_pts = reinterpret_cast<int64_t*>( av_malloc(sizeof(int64_t)) );
|
||||
|
||||
*p_pts = this_->m_packet_pts;
|
||||
picture->opaque = p_pts;
|
||||
|
||||
+ ref = av_buffer_create((uint8_t *)picture->opaque, sizeof(int64_t), FFmpegDecoderVideo::freeBuffer, picture->buf[0], flags);
|
||||
+ picture->buf[0] = ref;
|
||||
+
|
||||
return result;
|
||||
}
|
||||
|
||||
-
|
||||
-
|
||||
-void FFmpegDecoderVideo::releaseBuffer(AVCodecContext * const context, AVFrame * const picture)
|
||||
+void FFmpegDecoderVideo::freeBuffer(void *opaque, uint8_t *data)
|
||||
{
|
||||
- if (picture != 0)
|
||||
- av_freep(&picture->opaque);
|
||||
-
|
||||
- avcodec_default_release_buffer(context, picture);
|
||||
+ AVBufferRef *ref = (AVBufferRef *)opaque;
|
||||
+ av_buffer_unref(&ref);
|
||||
+ av_free(data);
|
||||
}
|
||||
|
||||
-
|
||||
-
|
||||
} // namespace osgFFmpeg
|
||||
--- src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp.orig
|
||||
+++ src/osgPlugins/ffmpeg/FFmpegDecoderVideo.hpp
|
||||
@@ -94,8 +94,8 @@ private:
|
||||
int src_pix_fmt, int src_width, int src_height);
|
||||
|
||||
|
||||
- static int getBuffer(AVCodecContext * context, AVFrame * picture);
|
||||
- static void releaseBuffer(AVCodecContext * context, AVFrame * picture);
|
||||
+ static int getBuffer(AVCodecContext * context, AVFrame * picture, int flags);
|
||||
+ static void freeBuffer(void * opaque, uint8_t *data);
|
||||
|
||||
PacketQueue & m_packets;
|
||||
FFmpegClocks & m_clocks;
|
||||
--- src/osgPlugins/ffmpeg/FFmpegParameters.cpp.orig
|
||||
+++ src/osgPlugins/ffmpeg/FFmpegParameters.cpp
|
||||
@@ -19,7 +19,7 @@ extern "C"
|
||||
#include <libavutil/pixdesc.h>
|
||||
}
|
||||
|
||||
-inline PixelFormat osg_av_get_pix_fmt(const char *name) { return av_get_pix_fmt(name); }
|
||||
+inline AVPixelFormat osg_av_get_pix_fmt(const char *name) { return av_get_pix_fmt(name); }
|
||||
|
||||
|
||||
namespace osgFFmpeg {
|
||||
--- src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp.orig 2016-02-18 21:25:39.627923629 +0000
|
||||
+++ src/osgPlugins/ffmpeg/FFmpegDecoderAudio.cpp 2016-02-18 21:26:17.071140100 +0000
|
||||
@@ -227,8 +227,7 @@
|
||||
if (avcodec_open2(m_context, p_codec, NULL) < 0)
|
||||
throw std::runtime_error("avcodec_open() failed");
|
||||
|
||||
- m_context->get_buffer = avcodec_default_get_buffer;
|
||||
- m_context->release_buffer = avcodec_default_release_buffer;
|
||||
+ m_context->get_buffer2 = avcodec_default_get_buffer2;
|
||||
|
||||
}
|
||||
|
11
graphics/osg-devel/files/patch-include_osgViewer_View
Normal file
11
graphics/osg-devel/files/patch-include_osgViewer_View
Normal file
@ -0,0 +1,11 @@
|
||||
--- include/osgViewer/View.orig 2016-04-21 09:54:28.095530000 +0200
|
||||
+++ include/osgViewer/View 2016-04-21 09:55:04.918232000 +0200
|
||||
@@ -127,7 +127,7 @@
|
||||
/** Set the View's image pager.*/
|
||||
void setImagePager(osgDB::ImagePager* ip);
|
||||
|
||||
- template<class T> void setImagePager(const osg::ref_ptr<T>* ip) { setImagePager(ip.get()); }
|
||||
+ template<class T> void setImagePager(const osg::ref_ptr<T>& ip) { setImagePager(ip.get()); }
|
||||
|
||||
/** Get the View's image pager.*/
|
||||
osgDB::ImagePager* getImagePager();
|
@ -0,0 +1,28 @@
|
||||
--- src/osgPlugins/ffmpeg/CMakeLists.txt.orig 2015-01-07 14:14:55 UTC
|
||||
+++ src/osgPlugins/ffmpeg/CMakeLists.txt
|
||||
@@ -3,7 +3,7 @@ LINK_DIRECTORIES(${FFMPEG_LIBRARY_DIRS})
|
||||
|
||||
IF(FFMPEG_LIBSWSCALE_FOUND)
|
||||
|
||||
- INCLUDE_DIRECTORIES( ${FFMPEG_LIBSWSCALE_INCLUDE_DIRS} ${FFMPEG_LIBSWSCALE_INCLUDE_DIRS}/libswscale )
|
||||
+ INCLUDE_DIRECTORIES(SYSTEM ${FFMPEG_LIBSWSCALE_INCLUDE_DIRS} ${FFMPEG_LIBSWSCALE_INCLUDE_DIRS}/libswscale )
|
||||
|
||||
ADD_DEFINITIONS(-DUSE_SWSCALE)
|
||||
|
||||
@@ -12,14 +12,14 @@ IF(FFMPEG_LIBSWSCALE_FOUND)
|
||||
ENDIF()
|
||||
|
||||
IF(FFMPEG_LIBSWRESAMPLE_FOUND)
|
||||
- INCLUDE_DIRECTORIES( ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS} ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS}/libswresample )
|
||||
+ INCLUDE_DIRECTORIES(SYSTEM ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS} ${FFMPEG_LIBSWRESAMPLE_INCLUDE_DIRS}/libswresample )
|
||||
|
||||
ADD_DEFINITIONS(-DUSE_SWRESAMPLE)
|
||||
|
||||
SET(FFMPEG_LIBRARIES ${FFMPEG_LIBRARIES} ${FFMPEG_LIBSWRESAMPLE_LIBRARIES})
|
||||
ENDIF()
|
||||
IF(FFMPEG_LIBAVRESAMPLE_FOUND)
|
||||
- INCLUDE_DIRECTORIES( ${FFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS} ${FFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS}/libavresample )
|
||||
+ INCLUDE_DIRECTORIES(SYSTEM ${FFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS} ${FFMPEG_LIBAVRESAMPLE_INCLUDE_DIRS}/libavresample )
|
||||
|
||||
ADD_DEFINITIONS(-DUSE_AVRESAMPLE)
|
||||
|
@ -0,0 +1,8 @@
|
||||
--- ./src/osgPlugins/gdal/CMakeLists.txt.orig 2015-07-02 11:58:49 UTC
|
||||
+++ ./src/osgPlugins/gdal/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-INCLUDE_DIRECTORIES( ${GDAL_INCLUDE_DIR} )
|
||||
+INCLUDE_DIRECTORIES(SYSTEM ${GDAL_INCLUDE_DIR})
|
||||
|
||||
SET(TARGET_SRC
|
||||
ReaderWriterGDAL.cpp
|
@ -0,0 +1,8 @@
|
||||
--- src/osgPlugins/nvtt/CMakeLists.txt.orig 2011-04-19 11:40:22 UTC
|
||||
+++ src/osgPlugins/nvtt/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-INCLUDE_DIRECTORIES( ${NVTT_INCLUDE_DIR} )
|
||||
+INCLUDE_DIRECTORIES(SYSTEM ${NVTT_INCLUDE_DIR})
|
||||
|
||||
|
||||
SET(TARGET_SRC
|
@ -0,0 +1,8 @@
|
||||
--- ./src/osgPlugins/ogr/CMakeLists.txt.orig 2011-04-19 11:40:22 UTC
|
||||
+++ ./src/osgPlugins/ogr/CMakeLists.txt
|
||||
@@ -1,4 +1,4 @@
|
||||
-INCLUDE_DIRECTORIES( ${GDAL_INCLUDE_DIR} )
|
||||
+INCLUDE_DIRECTORIES(SYSTEM ${GDAL_INCLUDE_DIR})
|
||||
|
||||
SET(TARGET_SRC ReaderWriterOGR.cpp)
|
||||
|
@ -52,6 +52,7 @@ include/osg/ColorMaski
|
||||
include/osg/ColorMatrix
|
||||
include/osg/ComputeBoundsVisitor
|
||||
include/osg/Config
|
||||
include/osg/ContextData
|
||||
include/osg/ConvexPlanarOccluder
|
||||
include/osg/ConvexPlanarPolygon
|
||||
include/osg/CoordinateSystemNode
|
||||
@ -176,6 +177,7 @@ include/osg/TransferFunction
|
||||
include/osg/Transform
|
||||
include/osg/TriangleFunctor
|
||||
include/osg/TriangleIndexFunctor
|
||||
include/osg/Types
|
||||
include/osg/Uniform
|
||||
include/osg/UserDataContainer
|
||||
include/osg/ValueObject
|
||||
@ -421,13 +423,13 @@ include/osgPresentation/PropertyManager
|
||||
include/osgPresentation/SlideEventHandler
|
||||
include/osgPresentation/SlideShowConstructor
|
||||
include/osgPresentation/Timeout
|
||||
%%QT4%%include/osgQt/Export
|
||||
%%QT4%%include/osgQt/GraphicsWindowQt
|
||||
%%QT4%%include/osgQt/QFontImplementation
|
||||
%%QT4%%include/osgQt/QGraphicsViewAdapter
|
||||
%%QT4%%include/osgQt/QWebViewImage
|
||||
%%QT4%%include/osgQt/QWidgetImage
|
||||
%%QT4%%include/osgQt/Version
|
||||
%%QT%%include/osgQt/Export
|
||||
%%QT%%include/osgQt/GraphicsWindowQt
|
||||
%%QT%%include/osgQt/QFontImplementation
|
||||
%%QT%%include/osgQt/QGraphicsViewAdapter
|
||||
%%QT%%include/osgQt/QWebViewImage
|
||||
%%QT%%include/osgQt/QWidgetImage
|
||||
%%QT%%include/osgQt/Version
|
||||
include/osgShadow/ConvexPolyhedron
|
||||
include/osgShadow/DebugShadowMap
|
||||
include/osgShadow/Export
|
||||
@ -633,9 +635,9 @@ lib/libosgParticle.so.%%OSG_SHLIBVER%%
|
||||
lib/libosgPresentation.so
|
||||
lib/libosgPresentation.so.%%OSG_VERSION%%
|
||||
lib/libosgPresentation.so.%%OSG_SHLIBVER%%
|
||||
%%QT4%%lib/libosgQt.so
|
||||
%%QT4%%lib/libosgQt.so.%%OSG_VERSION%%
|
||||
%%QT4%%lib/libosgQt.so.%%OSG_SHLIBVER%%
|
||||
%%QT%%lib/libosgQt.so
|
||||
%%QT%%lib/libosgQt.so.%%OSG_VERSION%%
|
||||
%%QT%%lib/libosgQt.so.%%OSG_SHLIBVER%%
|
||||
lib/libosgShadow.so
|
||||
lib/libosgShadow.so.%%OSG_VERSION%%
|
||||
lib/libosgShadow.so.%%OSG_SHLIBVER%%
|
||||
@ -648,6 +650,9 @@ lib/libosgTerrain.so.%%OSG_SHLIBVER%%
|
||||
lib/libosgText.so
|
||||
lib/libosgText.so.%%OSG_VERSION%%
|
||||
lib/libosgText.so.%%OSG_SHLIBVER%%
|
||||
lib/libosgUI.so
|
||||
lib/libosgUI.so.%%OSG_VERSION%%
|
||||
lib/libosgUI.so.%%OSG_SHLIBVER%%
|
||||
lib/libosgUtil.so
|
||||
lib/libosgUtil.so.%%OSG_VERSION%%
|
||||
lib/libosgUtil.so.%%OSG_SHLIBVER%%
|
||||
@ -696,11 +701,11 @@ lib/osgPlugins-%%OSG_VERSION%%/osgdb_gz.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_hdr.so
|
||||
%%INVENTOR%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_iv.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_ive.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_jpeg.so
|
||||
%%JASPER%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_jp2.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_jpeg.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_ktx.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_logo.so
|
||||
%%LIBLAS%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_las.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_logo.so
|
||||
%%LUA%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_lua.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_lwo.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_lws.so
|
||||
@ -732,6 +737,7 @@ lib/osgPlugins-%%OSG_VERSION%%/osgdb_revisions.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_rgb.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_rot.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_scale.so
|
||||
%%SDL%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_sdl.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osg.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osganimation.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osgfx.so
|
||||
@ -746,7 +752,6 @@ lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osgui.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osgutil.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osgviewer.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_serializers_osgvolume.so
|
||||
%%SDL%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_sdl.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_shp.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_stl.so
|
||||
%%SVG%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_svg.so
|
||||
@ -763,9 +768,6 @@ lib/osgPlugins-%%OSG_VERSION%%/osgdb_vtf.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_x.so
|
||||
%%XINE%%lib/osgPlugins-%%OSG_VERSION%%/osgdb_xine.so
|
||||
lib/osgPlugins-%%OSG_VERSION%%/osgdb_zip.so
|
||||
lib/libosgUI.so
|
||||
lib/libosgUI.so.%%OSG_VERSION%%
|
||||
lib/libosgUI.so.%%OSG_SHLIBVER%%
|
||||
libdata/pkgconfig/openscenegraph-osg.pc
|
||||
libdata/pkgconfig/openscenegraph-osgAnimation.pc
|
||||
libdata/pkgconfig/openscenegraph-osgDB.pc
|
||||
@ -773,7 +775,7 @@ libdata/pkgconfig/openscenegraph-osgFX.pc
|
||||
libdata/pkgconfig/openscenegraph-osgGA.pc
|
||||
libdata/pkgconfig/openscenegraph-osgManipulator.pc
|
||||
libdata/pkgconfig/openscenegraph-osgParticle.pc
|
||||
%%QT4%%libdata/pkgconfig/openscenegraph-osgQt.pc
|
||||
%%QT%%libdata/pkgconfig/openscenegraph-osgQt.pc
|
||||
libdata/pkgconfig/openscenegraph-osgShadow.pc
|
||||
libdata/pkgconfig/openscenegraph-osgSim.pc
|
||||
libdata/pkgconfig/openscenegraph-osgTerrain.pc
|
||||
|
Loading…
Reference in New Issue
Block a user