Date: Sun, 17 May 2009 15:27:33 +0200 From: Alberto Villa <villa.alberto@gmail.com> To: freebsd-multimedia@freebsd.org Subject: ffmpeg-2009-05-15 port ready for testing! Message-ID: <200905171527.34117.villa.alberto@gmail.com>
next in thread | raw e-mail | index | archive | help
--Boundary-00=_GDBEKd31vQVG4qD Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline hi all! as the maintainer of multimedia/(mlt|mlt++|kdenlive), and as a multimedia user, i feel the need for a newer ffmpeg in the ports tree. my maintained apps, as well as a lot of other software (blender, for example), are now broken due to the old ffmpeg (i have to ship a patch for the ffmpeg port on kdenlive.org to avoid a crash in the program in freebsd, but that cannot be shipped with the port itself!) so, i've made a new port (quite easy), and i'd like you to test and (hopefully) commit it. i'm not sending a pr because it is an important port, and i think the list should review it. also, it's breaking the building of some other ports, but that's a matter of some #define's at the moment i'm using (happily! blender started reading my video files, kdenlive doesn't crash anymore, and so on) my port. i've rebuilt all its dependent ports, which means: blender-2.48a_1 * gegl-0.0.22_4 gimp-2.6.6,2 gimp-app-2.6.6_1,1 gimp-gutenprint-5.1.7_1 kdenlive-0.7.3_1 libquicktime-1.1.1 * mlt++-0.3.8 mlt-0.3.8 py25-gimp-app-2.6.6 sox-14.2.0 among these, only blender and libquicktime required some little patches (i'm attaching them to this mail) i've enabled ALL the configure options supported in kdenlive (in OPTIONS, obviously), and it's working fine. maybe some check is required for the replace actions, but they seem to work attached you find: - the port .tar.gz - the .diff between the actual port and the new one - the patches to build libquicktime and blender (as an example) and here you find the distfile: http://kdenlive.org/~freebsd/ffmpeg-2009-05-15.tar.bz2 regards -- Alberto Villa <villa.alberto@gmail.com> --Boundary-00=_GDBEKd31vQVG4qD Content-Type: text/x-patch; charset="UTF-8"; name="ffmpeg-2009-05-15.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="ffmpeg-2009-05-15.diff" diff -ruN /home/albi/ffmpeg.orig/Makefile ffmpeg/Makefile --- /home/albi/ffmpeg.orig/Makefile 2009-05-15 18:12:18.000000000 +0200 +++ ffmpeg/Makefile 2009-05-16 03:05:21.000000000 +0200 @@ -6,8 +6,7 @@ # $Id: Makefile 77 2008-07-27 21:50:37Z buhnux $ PORTNAME= ffmpeg -DISTVERSION= 2008-07-27 -PORTREVISION= 10 +DISTVERSION= 2009-05-15 CATEGORIES= multimedia audio ipv6 net MASTER_SITES= ${MASTER_SITE_LOCAL} MASTER_SITE_SUBDIR= ahze @@ -15,6 +14,8 @@ MAINTAINER= multimedia@FreeBSD.org COMMENT= Hyper fast realtime audio/video encoder/converter, streaming server +BUILD_DEPENDS= yasm:${PORTSDIR}/devel/yasm + HAS_CONFIGURE= yes CONFIGURE_LOG= config.err USE_BZIP2= yes @@ -22,29 +23,32 @@ MAKE_JOBS_SAFE= yes WANT_SDL= yes -OPTIONS= AMR_NB "AMR narrowband encoder" off \ - AMR_WB "AMR wideband encoder" off \ - FAAC "FAAC mp4/aac audio encoder" off \ - FAAD "FAAD mp4/aac audio decoder" on \ - GSM "gsm audio codec" off \ +OPTIONS= AMR_NB "AMR Narrow Band encoder" off \ + AMR_WB "AMR Wide Band encoder" off \ + DIRAC "Dirac codec via libschroedinger" off \ + FAAC "FAAC audio encoder" off \ + FAAD "FAAD audio decoder" off \ + GSM "GSM audio codec" off \ IPV6 "IPV6 network support" on \ - LAME "lame MP3 codec" off \ - LIBA52 "liba52 support" on \ + LAME "LAME MP3 encoder" off \ + OPENJPEG "JPEG 2000 decoder" off \ OPTIMIZED_CFLAGS "Additional optimizations" off \ SDL "SDL support (build ffplay)" off \ - THEORA "libtheora support (implies OGG)" on \ - VORBIS "libvorbisenc support (implies OGG)" on \ - X264 "X.264 codec" on \ - XVID "XVID codec" off + SPEEX "Speex audio decoder" off \ + THEORA "Theora encoder (implies OGG)" off \ + VORBIS "Vorbis encoder via libvorbis (implies OGG)" off \ + X264 "H.264 encoder" off \ + XVID "Xvid encoder via xvidcore" off -COMPAT_HEADERS= libavcodec/avcodec.h \ +COMPAT_HEADERS=libavcodec/avcodec.h \ libavcodec/opt.h \ + libavcodec/vdpau.h \ + libavcodec/xvmc.h \ libavdevice/avdevice.h \ + libavfilter/avfilter.h \ libavformat/avformat.h \ libavformat/avio.h \ - libavformat/rtsp.h \ - libavformat/rtspcodes.h \ - libavutil/adler32.h \ + libavutil/adler32.h \ libavutil/avstring.h \ libavutil/avutil.h \ libavutil/base64.h \ @@ -57,128 +61,151 @@ libavutil/mathematics.h \ libavutil/md5.h \ libavutil/mem.h \ - libavutil/random.h \ + libavutil/pixfmt.h \ libavutil/rational.h \ libavutil/sha1.h \ libpostproc/postprocess.h \ - libswscale/rgb2rgb.h \ libswscale/swscale.h .include <bsd.port.pre.mk> -CONFIGURE_ARGS+=--cc="${CC}" --prefix="${PREFIX}" \ - --disable-debug \ - --enable-memalign-hack \ +CONFIGURE_ARGS+=--prefix="${PREFIX}" \ + --mandir="${PREFIX}/man" \ --enable-shared \ + --enable-gpl \ --enable-postproc \ + --enable-avfilter \ + --enable-avfilter-lavf \ + --enable-pthreads \ + --enable-x11grab \ + --enable-runtime-cpudetect \ + --enable-memalign-hack \ + --cc="${CC}" \ --extra-cflags="${FFMPEG_CFLAGS} -I${LOCALBASE}/include" \ --extra-ldflags="-L${LOCALBASE}/lib ${FFMPEG_LDFLAGS}" \ --extra-libs="${PTHREAD_LIBS}" \ - --enable-gpl \ - --enable-pthreads \ - --enable-swscale \ - --mandir=${PREFIX}/man -CONFIGURE_ENV+= LANG=C -MAKE_ENV+= INSTALL="${INSTALL}" + --disable-debug SHLIB_VER= 1 PLIST_SUB= SHLIB_VER=${SHLIB_VER} USE_LDCONFIG= yes -## -DOC_FILES= Changelog README -# under subdir doc -DOC_DOCFILES= TODO faq.html ffmpeg-doc.html \ - ffplay-doc.html ffserver-doc.html \ - hooks.html optimization.txt +DOC_FILES= Changelog COPYING.GPL COPYING.LGPL \ + CREDITS INSTALL LICENSE MAINTAINERS README +# under doc subdirectory +DOC_DOCFILES= APIchanges avutil.txt faq.html ffmpeg-doc.html \ + ffmpeg_powerpc_performance_evaluation_howto.txt \ + ffplay-doc.html ffserver-doc.html general.html \ + issue_tracker.txt optimization.txt \ + rate_distortion.txt snow.txt soc.txt \ + swscale.txt TODO viterbi.txt PORTDOCS= * -## sse hardware vector support +USE_RC_SUBR= ffserver + +# sse hardware vector support .if (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse} == "sse") WITH_BUILTIN_VECTOR= yes -.endif - -## -## support activation -## -## PORTDOCS -.ifndef(NOPORTDOCS) -BUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html -MAN1+= ffmpeg.1 ffserver.1 -.endif - -.ifdef(WITH_OPTIMIZED_CFLAGS) -CFLAGS:= ${CFLAGS:N-O*} -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer .else -CFLAGS:= ${CFLAGS:N-O0} -O2 -DEBUG_FLAGS+= -O2 +CONFIGURE_ARGS+= --disable-sse .endif -## a52 -.if !defined(WITHOUT_LIBA52) && !defined(WITHOUT_A52) -LIB_DEPENDS+= a52.0:${PORTSDIR}/audio/liba52 +# mmx support +.if ${MACHINE_CPU:Mmmx} == "" +CONFIGURE_ARGS+= --disable-mmx +WITHOUT_BUILTIN_VECTOR= yes +.endif -CONFIGURE_ARGS+= --enable-liba52 \ - --enable-liba52bin -FFMPEG_LDFLAGS+= -la52 -.else -CONFIGURE_ARGS+= --disable-liba52 +# builtin vector, requires mmx +.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR) +FFMPEG_CFLAGS+= -msse .endif -.ifdef(WITH_FAAC) -LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac -CONFIGURE_ARGS+= --enable-libfaac -.else -CONFIGURE_ARGS+= --disable-libfaac +# PORTDOCS +.ifndef(NOPORTDOCS) +BUILD_DEPENDS+= texi2html:${PORTSDIR}/textproc/texi2html +MAN1+= ffmpeg.1 ffserver.1 .endif -## faad -.ifndef(WITHOUT_FAAD) -LIB_DEPENDS+= faad.2:${PORTSDIR}/audio/faad -CONFIGURE_ARGS+= --enable-libfaad \ - --enable-libfaadbin +# optimizations +.ifdef(WITH_OPTIMIZED_CFLAGS) +CFLAGS:= ${CFLAGS:N-O*} -O3 -ffast-math -fno-finite-math-only -fomit-frame-pointer .else -CONFIGURE_ARGS+= --disable-libfaad +CFLAGS:= ${CFLAGS:N-O0} -O2 +DEBUG_FLAGS+= -O2 .endif -## amr +# amr .ifdef(WITH_AMR_NB) -LIB_DEPENDS+= amrnb.3:${PORTSDIR}/audio/libamrnb +LIB_DEPENDS+= amrnb.3:${PORTSDIR}/audio/libamrnb CONFIGURE_ARGS+= --enable-libamr-nb --enable-nonfree .else CONFIGURE_ARGS+= --disable-libamr-nb .endif .ifdef(WITH_AMR_WB) -LIB_DEPENDS+= amrwb.3:${PORTSDIR}/audio/libamrwb +LIB_DEPENDS+= amrwb.3:${PORTSDIR}/audio/libamrwb CONFIGURE_ARGS+= --enable-libamr-wb --enable-nonfree .else CONFIGURE_ARGS+= --disable-libamr-wb .endif -USE_RC_SUBR= ffserver +# dirac +.ifdef(WITH_DIRAC) +LIB_DEPENDS+= schroedinger-1.0.2:${PORTSDIR}/multimedia/schroedinger +CONFIGURE_ARGS+= --enable-libschroedinger +.else +CONFIGURE_ARGS+= --disable-libschroedinger +.endif -.if ${MACHINE_CPU:Mmmx}=="" -CONFIGURE_ARGS+= --disable-mmx +# faac +.ifdef(WITH_FAAC) +LIB_DEPENDS+= faac.0:${PORTSDIR}/audio/faac +CONFIGURE_ARGS+= --enable-libfaac +.else +CONFIGURE_ARGS+= --disable-libfaac +.endif -WITHOUT_BUILTIN_VECTOR= yes +# faad +.ifdef(WITH_FAAD) +LIB_DEPENDS+= faad.2:${PORTSDIR}/audio/faad +CONFIGURE_ARGS+= --enable-libfaad \ + --enable-libfaadbin +.else +CONFIGURE_ARGS+= --disable-libfaad .endif -## gsm -.ifdef(WITH_GSM) -LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm +# gsm +.ifdef(WITH_GSM) +LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm CONFIGURE_ARGS+= --enable-libgsm .else CONFIGURE_ARGS+= --disable-libgsm .endif -## mp3 + +# ipv6 +.ifndef(WITHOUT_IPV6) +CONFIGURE_ARGS+= --enable-ipv6 +.else +CONFIGURE_ARGS+= --disable-ipv6 +.endif + +# mp3 .ifdef(WITH_LAME) -LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame +LIB_DEPENDS+= mp3lame.0:${PORTSDIR}/audio/lame CONFIGURE_ARGS+= --enable-libmp3lame .else CONFIGURE_ARGS+= --disable-libmp3lame .endif -## SDL +# openjpeg +.ifdef(WITH_OPENJPEG) +LIB_DEPENDS+= openjpeg.2:${PORTSDIR}/graphics/openjpeg +CONFIGURE_ARGS+= --enable-libopenjpeg +.else +CONFIGURE_ARGS+= --disable-libopenjpeg +.endif + +# sdl .ifdef(WITH_SDL) USE_SDL+= sdl PLIST_FILES+= bin/ffplay @@ -189,19 +216,25 @@ CONFIGURE_ARGS+= --disable-ffplay .endif -## theora -.if !defined(WITHOUT_THEORA) -LIB_DEPENDS+= theora.0:${PORTSDIR}/multimedia/libtheora +# speex +.ifdef(WITH_SPEEX) +LIB_DEPENDS+= speex.1:${PORTSDIR}/audio/speex +CONFIGURE_ARGS+= --enable-libspeex +.else +CONFIGURE_ARGS+= --disable-libspeex +.endif +# theora +.ifdef(WITH_THEORA) +LIB_DEPENDS+= theora.0:${PORTSDIR}/multimedia/libtheora CONFIGURE_ARGS+= --enable-libtheora .else CONFIGURE_ARGS+= --disable-libtheora .endif -## vorbis -.if !defined(WITHOUT_VORBIS) -LIB_DEPENDS+= vorbisenc.2:${PORTSDIR}/audio/libvorbis - +# vorbis +.ifdef(WITH_VORBIS) +LIB_DEPENDS+= vorbisenc.2:${PORTSDIR}/audio/libvorbis CONFIGURE_ARGS+= --enable-libvorbis FFMPEG_CFLAGS+= -I${LOCALBASE}/include/vorbis .else @@ -209,21 +242,16 @@ .endif # x264 -.ifndef(WITHOUT_X264) -LIB_DEPENDS+= x264.65:${PORTSDIR}/multimedia/x264 - +.ifdef(WITH_X264) +LIB_DEPENDS+= x264.65:${PORTSDIR}/multimedia/x264 CONFIGURE_ARGS+= --enable-libx264 .else CONFIGURE_ARGS+= --disable-libx264 .endif -## builtin vector, requires mmx -.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR) -FFMPEG_CFLAGS+= -msse -.endif -## xvid +# xvid .ifdef(WITH_XVID) -LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid +LIB_DEPENDS+= xvidcore.4:${PORTSDIR}/multimedia/xvid CONFIGURE_ARGS+= --enable-libxvid .else CONFIGURE_ARGS+= --disable-libxvid @@ -238,42 +266,20 @@ .endif post-patch: -# Faad compat +# faad compat @${REINPLACE_CMD} -e 's|faacD|NeAACD|' ${WRKSRC}/libavcodec/libfaad.c # {C,LD}FLAGS safeness -# fix x264 math, use correct log base 2 from math(3) -.if ${OSVERSION} <= 601000 - @${REINPLACE_CMD} -E \ - -e 's| log2| log|' \ - ${WRKSRC}/libavcodec/libx264.c -.endif - @${REINPLACE_CMD} -e 's|$$(libdir)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ - ${WRKSRC}/common.mak + @${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ + ${WRKSRC}/subdir.mak @${REINPLACE_CMD} -e 's|/etc/ffserver.conf|${PREFIX}/etc/ffserver.conf|' \ ${WRKSRC}/ffserver.c @${REINPLACE_CMD} -E \ -e "s|(EXTRALIBS[[:space:]]*=)|\1-L${LOCALBASE}/lib |g; \ - s|%%LOCALBASE%%|${LOCALBASE}|g; s|%%SHLIB_VER%%|${SHLIB_VER}|g; \ + s|%%LOCALBASE%%|${LOCALBASE}|g; \ s|-pthread|${PTHREAD_LIBS}|g" \ ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -# force detection of texi2html -.ifndef(NOPORTDOCS) - @${REINPLACE_CMD} -E \ - -e 's|^(texi2html=)no|\1yes|' \ - ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.endif - @${REINPLACE_CMD} -e 's|-ldl||' \ - ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.if defined(WITH_IMLIB2) && !defined(WITHOUT_IMLIB2) - @${REINPLACE_CMD} -E \ - -e 's|^(imlib2).*$$|\1=yes|' \ - ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.endif -.if !defined(WITHOUT_IPV6) - @${REINPLACE_CMD} -E \ - -e 's|^(ipv6).*$$|\1=yes|' \ + @${REINPLACE_CMD} -e 's|-ldl||; s|$$(LIBMAJOR)|${SHLIB_VER}|g;' \ ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.endif .ifdef(WITH_SDL) @${REINPLACE_CMD} -E \ -e 's|sdl-config|${SDL_CONFIG}|g' \ @@ -282,17 +288,6 @@ ${XARGS} -n 10 ${REINPLACE_CMD} -E \ -e 's|#include <SDL|#include <SDL/SDL|' .endif -.if !defined(WITHOUT_BUILTIN_VECTOR) && defined(WITH_BUILTIN_VECTOR) - @${REINPLACE_CMD} -E \ - -e 's|^([[:space:]]+builtin_vector).*$$|\1=yes|' \ - ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.else - @${REINPLACE_CMD} -E \ - -e 's|^([[:space:]]+builtin_vector).*$$|\1=no|' \ - ${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT} -.endif - @${REINPLACE_CMD} -e 's|$$(LIBDIR)/pkgconfig|${PREFIX}/libdata/pkgconfig|' \ - ${WRKSRC}/common.mak post-configure: .ifdef(WITHOUT_THEORA) diff -ruN /home/albi/ffmpeg.orig/distinfo ffmpeg/distinfo --- /home/albi/ffmpeg.orig/distinfo 2009-05-15 18:12:18.000000000 +0200 +++ ffmpeg/distinfo 2009-05-16 03:05:21.000000000 +0200 @@ -1,3 +1,3 @@ -MD5 (ffmpeg-2008-07-27.tar.bz2) = 777351947a51778a165ec0559f827387 -SHA256 (ffmpeg-2008-07-27.tar.bz2) = 492a20be1a60910aa1fd1538a56f25ef5b0ecbbd588906d4eb28b3a0bcf004ba -SIZE (ffmpeg-2008-07-27.tar.bz2) = 2581976 +MD5 (ffmpeg-2009-05-15.tar.bz2) = bf8e39cb7627016f36fd766d09153cc4 +SHA256 (ffmpeg-2009-05-15.tar.bz2) = b03f1effaeb7347956c9cebe4456d7611ced8b5f159a8a08615ee5f48ffcedd1 +SIZE (ffmpeg-2009-05-15.tar.bz2) = 2756670 diff -ruN /home/albi/ffmpeg.orig/files/patch-configure ffmpeg/files/patch-configure --- /home/albi/ffmpeg.orig/files/patch-configure 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-configure 1970-01-01 01:00:00.000000000 +0100 @@ -1,60 +0,0 @@ ---- configure.orig 2008-07-24 06:53:32.000000000 -0400 -+++ configure 2008-08-11 00:23:15.000000000 -0400 -@@ -1596,8 +1596,8 @@ od -A n -t x1 $TMPO | grep -q '42 *49 *4 - - if check_func dlopen; then - ldl= --elif check_func dlopen -ldl; then -- ldl=-ldl -+elif check_func dlopen ; then -+ ldl= - fi - - check_func fork -@@ -1718,10 +1718,17 @@ fi - if enabled vhook; then - check_ldflags -rdynamic - check_ldflags -export-dynamic -+ if enabled imlib2; then -+ check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font -+ fi -+ if enabled freetype2; then -+ check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType -+ fi -+else -+ disable imlib2 -+ disable freetype2 - fi - --check_foo_config imlib2 imlib2 Imlib2.h imlib_load_font --check_foo_config freetype2 freetype ft2build.h FT_Init_FreeType - - ########################################## - # SDL check -@@ -2072,7 +2079,7 @@ get_version(){ - eval ${name}_VERSION=\$${name}_VERSION_MAJOR.\$${name}_VERSION_MINOR.\$${name}_VERSION_MICRO - lcname=$(tolower $name) - eval echo "${lcname}_VERSION=\$${name}_VERSION" >> config.mak -- eval echo "${lcname}_VERSION_MAJOR=\$${name}_VERSION_MAJOR" >> config.mak -+ eval echo "${lcname}_VERSION_MAJOR=1" >> config.mak - } - - get_version LIBSWSCALE libswscale/swscale.h -@@ -2096,7 +2103,7 @@ if enabled shared; then - echo "SLIB_UNINSTALL_EXTRA_CMD=${SLIB_UNINSTALL_EXTRA_CMD}" >> config.mak - fi - echo "LIB_INSTALL_EXTRA_CMD=${LIB_INSTALL_EXTRA_CMD}" >> config.mak --echo "EXTRALIBS=$extralibs" >> config.mak -+echo "EXTRALIBS=-L/usr/local/lib -L/usr/local/lib -L/usr/local/lib $extralibs" >> config.mak - - print_config ARCH_ $TMPH config.mak $ARCH_LIST - print_config HAVE_ $TMPH config.mak $HAVE_LIST -@@ -2206,7 +2213,7 @@ Requires.private: $(enabled shared && ec - Conflicts: - Libs: -L\${libdir} -l${shortname} $(disabled shared && echo $libs) - Libs.private: $(enabled shared && echo $libs) --Cflags: -I\${includedir} -+Cflags: -I\${includedir} -I\${includedir}/ffmpeg - EOF - cat <<EOF > $name/$name-uninstalled.pc - prefix= diff -ruN /home/albi/ffmpeg.orig/files/patch-libavcodec_Makefile ffmpeg/files/patch-libavcodec_Makefile --- /home/albi/ffmpeg.orig/files/patch-libavcodec_Makefile 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-libavcodec_Makefile 1970-01-01 01:00:00.000000000 +0100 @@ -1,12 +0,0 @@ ---- libavcodec/Makefile.orig 2008-08-14 14:31:06.000000000 -0400 -+++ libavcodec/Makefile 2008-08-14 14:31:16.000000000 -0400 -@@ -373,9 +373,7 @@ OBJS-$(HAVE_W32THREADS) + - - OBJS-$(HAVE_XVMC) += xvmcvideo.o - --ifndef CONFIG_SWSCALE - OBJS += imgresample.o --endif - - # processor-specific code - ifdef HAVE_MMX diff -ruN /home/albi/ffmpeg.orig/files/patch-libavcodec_imgconvert.c ffmpeg/files/patch-libavcodec_imgconvert.c --- /home/albi/ffmpeg.orig/files/patch-libavcodec_imgconvert.c 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-libavcodec_imgconvert.c 1970-01-01 01:00:00.000000000 +0100 @@ -1,18 +0,0 @@ ---- libavcodec/imgconvert.c.orig 2008-08-14 14:31:37.000000000 -0400 -+++ libavcodec/imgconvert.c 2008-08-14 14:31:54.000000000 -0400 -@@ -2108,7 +2108,6 @@ int img_pad(AVPicture *dst, const AVPict - } - #endif - --#ifndef CONFIG_SWSCALE - static uint8_t y_ccir_to_jpeg[256]; - static uint8_t y_jpeg_to_ccir[256]; - static uint8_t c_ccir_to_jpeg[256]; -@@ -2628,7 +2627,6 @@ int img_convert(AVPicture *dst, int dst_ - avpicture_free(tmp); - return ret; - } --#endif - - /* NOTE: we scan all the pixels to have an exact information */ - static int get_alpha_info_pal8(const AVPicture *src, int width, int height) diff -ruN /home/albi/ffmpeg.orig/files/patch-libavcodec_libx264.c ffmpeg/files/patch-libavcodec_libx264.c --- /home/albi/ffmpeg.orig/files/patch-libavcodec_libx264.c 2009-05-15 18:12:14.000000000 +0200 +++ ffmpeg/files/patch-libavcodec_libx264.c 1970-01-01 01:00:00.000000000 +0100 @@ -1,37 +0,0 @@ ---- ./libavcodec/libx264.c.orig 2008-06-12 23:50:13.000000000 +0200 -+++ ./libavcodec/libx264.c 2008-10-13 15:47:05.000000000 +0200 -@@ -124,6 +124,8 @@ - { - X264Context *x4 = avctx->priv_data; - -+ av_freep(&avctx->extradata); -+ - if(x4->enc) - x264_encoder_close(x4->enc); - -@@ -162,7 +164,7 @@ - - x4->params.i_bframe = avctx->max_b_frames; - x4->params.b_cabac = avctx->coder_type == FF_CODER_TYPE_AC; -- x4->params.b_bframe_adaptive = avctx->b_frame_strategy; -+ x4->params.i_bframe_adaptive = avctx->b_frame_strategy; - x4->params.i_bframe_bias = avctx->bframebias; - x4->params.b_bframe_pyramid = avctx->flags2 & CODEC_FLAG2_BPYRAMID; - avctx->has_b_frames= avctx->flags2 & CODEC_FLAG2_BPYRAMID ? 2 : !!avctx->max_b_frames; -@@ -227,8 +229,6 @@ - x4->params.analyse.i_me_range = avctx->me_range; - x4->params.analyse.i_subpel_refine = avctx->me_subpel_quality; - -- x4->params.analyse.b_bidir_me = avctx->bidir_refine > 0; -- x4->params.analyse.b_bframe_rdo = avctx->flags2 & CODEC_FLAG2_BRDO; - x4->params.analyse.b_mixed_references = - avctx->flags2 & CODEC_FLAG2_MIXED_REFS; - x4->params.analyse.b_chroma_me = avctx->me_cmp & FF_CMP_CHROMA; -@@ -253,7 +253,6 @@ - x4->params.rc.f_ip_factor = 1/fabs(avctx->i_quant_factor); - x4->params.rc.f_pb_factor = avctx->b_quant_factor; - x4->params.analyse.i_chroma_qp_offset = avctx->chromaoffset; -- x4->params.rc.psz_rc_eq = avctx->rc_eq; - - x4->params.analyse.b_psnr = avctx->flags & CODEC_FLAG_PSNR; - x4->params.i_log_level = X264_LOG_DEBUG; diff -ruN /home/albi/ffmpeg.orig/files/patch-libavdevice-bktr.c ffmpeg/files/patch-libavdevice-bktr.c --- /home/albi/ffmpeg.orig/files/patch-libavdevice-bktr.c 1970-01-01 01:00:00.000000000 +0100 +++ ffmpeg/files/patch-libavdevice-bktr.c 2009-05-16 03:05:21.000000000 +0200 @@ -0,0 +1,14 @@ +--- libavdevice/bktr.c.orig 2009-05-15 17:34:55.000000000 +0200 ++++ libavdevice/bktr.c 2009-05-15 17:38:01.000000000 +0200 +@@ -24,6 +24,11 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++typedef unsigned char u_char; ++typedef unsigned short u_short; ++typedef unsigned int u_int; ++typedef unsigned long u_long; ++ + #define _BSD_SOURCE 1 + #include "libavformat/avformat.h" + #if HAVE_DEV_BKTR_IOCTL_METEOR_H && HAVE_DEV_BKTR_IOCTL_BT848_H diff -ruN /home/albi/ffmpeg.orig/files/patch-libavdevice-oss_audio.c ffmpeg/files/patch-libavdevice-oss_audio.c --- /home/albi/ffmpeg.orig/files/patch-libavdevice-oss_audio.c 1970-01-01 01:00:00.000000000 +0100 +++ ffmpeg/files/patch-libavdevice-oss_audio.c 2009-05-16 03:05:21.000000000 +0200 @@ -0,0 +1,14 @@ +--- libavdevice/oss_audio.c.orig 2009-05-15 17:38:35.000000000 +0200 ++++ libavdevice/oss_audio.c 2009-05-15 17:41:27.000000000 +0200 +@@ -19,6 +19,11 @@ + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + ++typedef unsigned char u_char; ++typedef unsigned short u_short; ++typedef unsigned int u_int; ++typedef unsigned long u_long; ++ + #include "config.h" + #include <stdlib.h> + #include <stdio.h> diff -ruN /home/albi/ffmpeg.orig/files/patch-libavformat-udp.c ffmpeg/files/patch-libavformat-udp.c --- /home/albi/ffmpeg.orig/files/patch-libavformat-udp.c 1970-01-01 01:00:00.000000000 +0100 +++ ffmpeg/files/patch-libavformat-udp.c 2009-05-16 03:05:21.000000000 +0200 @@ -0,0 +1,11 @@ +--- libavformat/udp.c.orig 2009-05-15 17:24:45.000000000 +0200 ++++ libavformat/udp.c 2009-05-15 17:27:17.000000000 +0200 +@@ -45,6 +45,8 @@ + #define IN6_IS_ADDR_MULTICAST(a) (((uint8_t *) (a))[0] == 0xff) + #endif + ++#define IPPROTO_IPV6 41 ++ + typedef struct { + int udp_fd; + int ttl; diff -ruN /home/albi/ffmpeg.orig/files/patch-libavutil__bswap.h ffmpeg/files/patch-libavutil__bswap.h --- /home/albi/ffmpeg.orig/files/patch-libavutil__bswap.h 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-libavutil__bswap.h 1970-01-01 01:00:00.000000000 +0100 @@ -1,21 +0,0 @@ ---- libavutil/bswap.h.orig Mon Nov 28 22:16:18 2005 -+++ libavutil/bswap.h Mon Nov 28 22:21:22 2005 -@@ -6,8 +6,18 @@ - #ifndef __BSWAP_H__ - #define __BSWAP_H__ - -+/* to detect __FreeBSD_version */ -+#if (defined(__unix__) || defined(unix)) && !defined(USG) -+#include <sys/param.h> -+#endif -+ - #ifdef HAVE_BYTESWAP_H - #include <byteswap.h> -+#elif (defined(__FreeBSD__) && __FreeBSD_version >= 500000) -+# include <sys/endian.h> -+# define bswap_16(x) bswap16(x) -+# define bswap_32(x) bswap32(x) -+# define bswap_64(x) bswap64(x) - #else - - #ifdef ARCH_X86_64 diff -ruN /home/albi/ffmpeg.orig/files/patch-subdir.mak ffmpeg/files/patch-subdir.mak --- /home/albi/ffmpeg.orig/files/patch-subdir.mak 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-subdir.mak 1970-01-01 01:00:00.000000000 +0100 @@ -1,14 +0,0 @@ ---- subdir.mak.orig 2008-07-27 15:57:37.873013462 -0500 -+++ subdir.mak 2008-07-27 15:58:54.041106334 -0500 -@@ -54,9 +54,9 @@ - - install-headers:: - install -d "$(INCINSTDIR)" -- install -d "$(LIBDIR)/pkgconfig" -+ install -d "$(prefix)/libdata/pkgconfig" - install -m 644 $(addprefix "$(SRC_DIR)"/,$(HEADERS)) "$(INCINSTDIR)" -- install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(LIBDIR)/pkgconfig" -+ install -m 644 $(BUILD_ROOT)/lib$(NAME)/lib$(NAME).pc "$(prefix)/libdata/pkgconfig" - - uninstall-libs:: - -rm -f "$(SHLIBDIR)/$(SLIBNAME_WITH_MAJOR)" \ diff -ruN /home/albi/ffmpeg.orig/files/patch-tkadv2009-004 ffmpeg/files/patch-tkadv2009-004 --- /home/albi/ffmpeg.orig/files/patch-tkadv2009-004 2009-05-15 18:12:13.000000000 +0200 +++ ffmpeg/files/patch-tkadv2009-004 1970-01-01 01:00:00.000000000 +0100 @@ -1,17 +0,0 @@ ---- libavformat/4xm.c.orig 2008-06-03 20:20:54.000000000 +0400 -+++ libavformat/4xm.c 2009-03-08 23:38:44.000000000 +0300 -@@ -163,10 +163,12 @@ - return AVERROR_INVALIDDATA; - } - current_track = AV_RL32(&header[i + 8]); -+ if((unsigned)current_track >= UINT_MAX / sizeof(AudioTrack) - 1){ -+ av_log(s, AV_LOG_ERROR, "current_track too large\n"); -+ return -1; -+ } - if (current_track + 1 > fourxm->track_count) { - fourxm->track_count = current_track + 1; -- if((unsigned)fourxm->track_count >= UINT_MAX / sizeof(AudioTrack)) -- return -1; - fourxm->tracks = av_realloc(fourxm->tracks, - fourxm->track_count * sizeof(AudioTrack)); - if (!fourxm->tracks) { diff -ruN /home/albi/ffmpeg.orig/pkg-descr ffmpeg/pkg-descr --- /home/albi/ffmpeg.orig/pkg-descr 2009-05-15 18:12:18.000000000 +0200 +++ ffmpeg/pkg-descr 2009-05-16 03:05:21.000000000 +0200 @@ -1,24 +1,24 @@ [ excerpt (with adaptations) from developer's README ] -ffmpeg is a hyper fast realtime audio/video encoder, a streaming +FFmpeg is a hyper fast realtime audio/video encoder, a streaming server and a generic audio and video file converter. It can convert a standard video source into several file formats based on DCT/motion compensation encoding. Sound is compressed in MPEG audio layer 2 or using an AC3 compatible stream. -What makes ffmpeg interesting ? -- Simple and efficient video encoder: outputs MPEG1, H263, Real +What makes FFmpeg interesting ? +- Simple and efficient video encoder: outputs MPEG1, H.263, Real Video(tm), MPEG4, DIVX and MJPEG compatible bitstreams using the same encoder core. - Hyper fast MPEG audio layer 2 compression (50 times faster than realtime on a K6 500). [snip -> rest on website below] -ffmpeg is made of two programs: +FFmpeg is made of two programs: * ffmpeg: soft VCR which encodes in real time to several formats. It can also encode from any supported input file format to any input supported format. * ffserver: high performance live broadcast streaming server based on the ffmpeg core encoders. -WWW: http://ffmpeg.mplayerhq.hu/ +WWW: http://www.ffmpeg.org diff -ruN /home/albi/ffmpeg.orig/pkg-plist ffmpeg/pkg-plist --- /home/albi/ffmpeg.orig/pkg-plist 2009-05-15 18:12:18.000000000 +0200 +++ ffmpeg/pkg-plist 2009-05-16 03:05:21.000000000 +0200 @@ -5,6 +5,7 @@ include/ffmpeg/adler32.h include/ffmpeg/avcodec.h include/ffmpeg/avdevice.h +include/ffmpeg/avfilter.h include/ffmpeg/avformat.h include/ffmpeg/avio.h include/ffmpeg/avstring.h @@ -20,21 +21,21 @@ include/ffmpeg/md5.h include/ffmpeg/mem.h include/ffmpeg/opt.h +include/ffmpeg/pixfmt.h include/ffmpeg/postprocess.h -include/ffmpeg/random.h include/ffmpeg/rational.h -include/ffmpeg/rgb2rgb.h -include/ffmpeg/rtsp.h -include/ffmpeg/rtspcodes.h include/ffmpeg/sha1.h include/ffmpeg/swscale.h +include/ffmpeg/vdpau.h +include/ffmpeg/xvmc.h include/libavcodec/avcodec.h include/libavcodec/opt.h +include/libavcodec/vdpau.h +include/libavcodec/xvmc.h include/libavdevice/avdevice.h +include/libavfilter/avfilter.h include/libavformat/avformat.h include/libavformat/avio.h -include/libavformat/rtsp.h -include/libavformat/rtspcodes.h include/libavutil/adler32.h include/libavutil/avstring.h include/libavutil/avutil.h @@ -48,53 +49,70 @@ include/libavutil/mathematics.h include/libavutil/md5.h include/libavutil/mem.h -include/libavutil/random.h +include/libavutil/pixfmt.h include/libavutil/rational.h include/libavutil/sha1.h include/libpostproc/postprocess.h include/postproc/postprocess.h -include/libswscale/rgb2rgb.h include/libswscale/swscale.h lib/libavcodec.a lib/libavcodec.so lib/libavcodec.so.1 -lib/libavcodec.so.51.61.0 +lib/libavcodec.so.52.29.0 lib/libavdevice.a lib/libavdevice.so lib/libavdevice.so.1 -lib/libavdevice.so.52.0.0 +lib/libavdevice.so.52.2.0 +lib/libavfilter.a +lib/libavfilter.so +lib/libavfilter.so.0.5.0 +lib/libavfilter.so.1 lib/libavformat.a lib/libavformat.so lib/libavformat.so.1 -lib/libavformat.so.52.18.0 +lib/libavformat.so.52.32.0 lib/libavutil.a lib/libavutil.so lib/libavutil.so.1 -lib/libavutil.so.49.7.0 +lib/libavutil.so.50.3.0 lib/libpostproc.a lib/libpostproc.so lib/libpostproc.so.1 -lib/libpostproc.so.51.1.0 +lib/libpostproc.so.51.2.0 lib/libswscale.a lib/libswscale.so -lib/libswscale.so.0.5.1 +lib/libswscale.so.0.7.1 lib/libswscale.so.1 -lib/vhook/fish.so -lib/vhook/null.so -lib/vhook/ppm.so -lib/vhook/watermark.so libdata/pkgconfig/libavcodec.pc libdata/pkgconfig/libavdevice.pc +libdata/pkgconfig/libavfilter.pc libdata/pkgconfig/libavformat.pc libdata/pkgconfig/libavutil.pc libdata/pkgconfig/libpostproc.pc libdata/pkgconfig/libswscale.pc -@dirrm lib/vhook +%%DATADIR%%/libx264-baseline.ffpreset +%%DATADIR%%/libx264-default.ffpreset +%%DATADIR%%/libx264-fastfirstpass.ffpreset +%%DATADIR%%/libx264-hq.ffpreset +%%DATADIR%%/libx264-ipod320.ffpreset +%%DATADIR%%/libx264-ipod640.ffpreset +%%DATADIR%%/libx264-lossless_fast.ffpreset +%%DATADIR%%/libx264-lossless_max.ffpreset +%%DATADIR%%/libx264-lossless_medium.ffpreset +%%DATADIR%%/libx264-lossless_slow.ffpreset +%%DATADIR%%/libx264-lossless_slower.ffpreset +%%DATADIR%%/libx264-lossless_ultrafast.ffpreset +%%DATADIR%%/libx264-main.ffpreset +%%DATADIR%%/libx264-max.ffpreset +%%DATADIR%%/libx264-normal.ffpreset +%%DATADIR%%/libx264-slowfirstpass.ffpreset +@dirrm %%DATADIR%% @dirrm include/postproc @dirrm include/libswscale @dirrm include/libpostproc @dirrm include/libavutil @dirrm include/libavformat +@dirrm include/libavfilter @dirrm include/libavdevice @dirrm include/libavcodec @dirrm include/ffmpeg --Boundary-00=_GDBEKd31vQVG4qD--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200905171527.34117.villa.alberto>