head 1.9; access; symbols pkgsrc-2013Q2:1.9.0.6 pkgsrc-2013Q2-base:1.9 pkgsrc-2012Q4:1.9.0.4 pkgsrc-2012Q4-base:1.9 pkgsrc-2011Q4:1.9.0.2 pkgsrc-2011Q4-base:1.9 pkgsrc-2011Q2:1.8.0.4 pkgsrc-2011Q2-base:1.8 pkgsrc-2011Q1:1.8.0.2 pkgsrc-2011Q1-base:1.8 pkgsrc-2010Q4:1.7.0.8 pkgsrc-2010Q4-base:1.7 pkgsrc-2010Q3:1.7.0.6 pkgsrc-2010Q3-base:1.7 pkgsrc-2010Q2:1.7.0.4 pkgsrc-2010Q2-base:1.7 pkgsrc-2010Q1:1.7.0.2 pkgsrc-2010Q1-base:1.7 pkgsrc-2009Q4:1.6.0.8 pkgsrc-2009Q4-base:1.6 pkgsrc-2008Q4:1.6.0.6 pkgsrc-2008Q4-base:1.6 pkgsrc-2008Q3:1.6.0.4 pkgsrc-2008Q3-base:1.6 cube-native-xorg:1.6.0.2 cube-native-xorg-base:1.6 pkgsrc-2008Q2:1.5.0.22 pkgsrc-2008Q2-base:1.5 cwrapper:1.5.0.20 pkgsrc-2008Q1:1.5.0.18 pkgsrc-2008Q1-base:1.5 pkgsrc-2007Q4:1.5.0.16 pkgsrc-2007Q4-base:1.5 pkgsrc-2007Q3:1.5.0.14 pkgsrc-2007Q3-base:1.5 pkgsrc-2007Q2:1.5.0.12 pkgsrc-2007Q2-base:1.5 pkgsrc-2007Q1:1.5.0.10 pkgsrc-2007Q1-base:1.5 pkgsrc-2006Q4:1.5.0.8 pkgsrc-2006Q4-base:1.5 pkgsrc-2006Q3:1.5.0.6 pkgsrc-2006Q3-base:1.5 pkgsrc-2006Q2:1.5.0.4 pkgsrc-2006Q2-base:1.5 pkgsrc-2006Q1:1.5.0.2 pkgsrc-2006Q1-base:1.5 pkgsrc-2005Q4:1.4.0.12 pkgsrc-2005Q4-base:1.4 pkgsrc-2005Q3:1.4.0.10 pkgsrc-2005Q3-base:1.4 pkgsrc-2005Q2:1.4.0.8 pkgsrc-2005Q2-base:1.4 pkgsrc-2005Q1:1.4.0.6 pkgsrc-2005Q1-base:1.4 pkgsrc-2004Q4:1.4.0.4 pkgsrc-2004Q4-base:1.4 pkgsrc-2004Q3:1.4.0.2 pkgsrc-2004Q3-base:1.4 pkgsrc-2004Q2:1.2.0.2 pkgsrc-2004Q2-base:1.2 pkgsrc-base:1.1.1.1 TNF:1.1.1; locks; strict; comment @# @; 1.9 date 2011.07.19.19.53.18; author drochner; state dead; branches; next 1.8; 1.8 date 2011.01.17.16.51.05; author drochner; state Exp; branches; next 1.7; 1.7 date 2010.03.14.23.07.30; author tron; state Exp; branches; next 1.6; 1.6 date 2008.09.07.23.39.38; author ahoka; state dead; branches; next 1.5; 1.5 date 2006.02.16.10.26.30; author abs; state Exp; branches; next 1.4; 1.4 date 2004.07.31.11.08.47; author recht; state Exp; branches; next 1.3; 1.3 date 2004.07.18.17.40.25; author kristerw; state Exp; branches; next 1.2; 1.2 date 2004.05.25.21.49.26; author wiz; state dead; branches; next 1.1; 1.1 date 2004.05.10.13.41.11; author wiz; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2004.05.10.13.41.11; author wiz; state Exp; branches; next ; desc @@ 1.9 log @update to 0.7.1 changes: many new features and bugfixes (those of the 0.8 branch), but API/ABI compatible with 0.6 @ text @$NetBSD: patch-af,v 1.8 2011/01/17 16:51:05 drochner Exp $ --- libswscale/swscale.c.orig 2010-06-04 05:16:42.000000000 +0900 +++ libswscale/swscale.c 2011-01-05 17:13:47.000000000 +0900 @@@@ -127,7 +127,7 @@@@ write special BGR->BGR scaler */ -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) DECLARE_ASM_CONST(8, uint64_t, bF8)= 0xF8F8F8F8F8F8F8F8LL; DECLARE_ASM_CONST(8, uint64_t, bFC)= 0xFCFCFCFCFCFCFCFCLL; DECLARE_ASM_CONST(8, uint64_t, w10)= 0x0010001000100010LL; @@@@ -1161,7 +1161,7 @@@@ #endif #endif //ARCH_PPC -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) #if (HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT #define COMPILE_MMX @@@@ -1194,7 +1194,7 @@@@ #include "swscale_template.c" #endif -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) //MMX versions #ifdef COMPILE_MMX @ 1.8 log @update to 20101018.0.6.1, from Makoto Fujiwara per pkgsrc-wip, with two changes by me: -disabled symbol versioning - this didn't work correctly for me -changed PKGVERSION to start with the release date, so that it sorts correctly against the snapshots we had before vlc-1.0.6 does still build, but can be updated now @ text @d1 1 a1 1 $NetBSD$ @ 1.7 log @Make this build and work under Solaris 10 x86: 1.) Work around lack of support for Sun Studio C Compiler and bugs in this compiler (it crashes with "-O3", "-xO2" works fine). 2.) Use a hammer to disable MMX, AMD 3DNow and SSE support as Solaris refuses to load libraries which contain unsupported instructions. @ text @d3 3 a5 7 1.) Fixes pkg/42000, not necessary after the next upgrade. 2.) Really turn AMD 3DNow (and MMX, etc.) because the shared library will otherwise not work on Intel CPUs. --- libswscale/swscale.c.orig Thu Jun 4 23:55:52 2009 +++ libswscale/swscale.c Sun Mar 14 23:53:08 2010 @@@@ -221,7 +221,7 @@@@ d9 2 a10 2 -#if ARCH_X86 && CONFIG_GPL +#if ARCH_X86 && CONFIG_GPL && !defined(sun) d14 1 a14 8 @@@@ -1307,12 +1307,14 @@@@ #if ARCH_PPC #if (HAVE_ALTIVEC || CONFIG_RUNTIME_CPUDETECT) && CONFIG_GPL +#if !CONFIG_RUNTIME_CPUDETECT #undef COMPILE_C +#endif #define COMPILE_ALTIVEC d21 1 a21 1 #if ((HAVE_MMX && !HAVE_AMD3DNOW && !HAVE_MMX2) || CONFIG_RUNTIME_CPUDETECT) && CONFIG_GPL d23 1 a23 1 @@@@ -1349,7 +1351,7 @@@@ a31 45 @@@@ -1417,7 +1419,7 @@@@ int64_t *filter2=NULL; const int64_t fone= 1LL<<54; int ret= -1; -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) if (flags & SWS_CPU_CAPS_MMX) __asm__ volatile("emms\n\t"::: "memory"); //FIXME this should not be required but it IS (even for non-MMX versions) #endif @@@@ -1976,7 +1978,7 @@@@ #if CONFIG_RUNTIME_CPUDETECT && CONFIG_GPL int flags = c->flags; -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) // ordered per speed fastest first if (flags & SWS_CPU_CAPS_MMX2) { sws_init_swScale_MMX2(c); @@@@ -2561,7 +2563,7 @@@@ int unscaled, needsDither; int srcRange, dstRange; SwsFilter dummyFilter= {NULL, NULL, NULL, NULL}; -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) if (flags & SWS_CPU_CAPS_MMX) __asm__ volatile("emms\n\t"::: "memory"); #endif @@@@ -3046,7 +3048,7 @@@@ } else { -#if ARCH_X86 +#if ARCH_X86 && !defined(sun) av_log(c, AV_LOG_VERBOSE, "using x86 asm scaler for horizontal scaling\n"); #else if (flags & SWS_FAST_BILINEAR) @@@@ -3555,7 +3557,7 @@@@ av_freep(&c->hLumFilterPos); av_freep(&c->hChrFilterPos); -#if ARCH_X86 && CONFIG_GPL +#if ARCH_X86 && CONFIG_GPL && !defined(sun) #ifdef MAP_ANONYMOUS if (c->funnyYCode ) munmap(c->funnyYCode , MAX_FUNNY_CODE_SIZE); if (c->funnyUVCode) munmap(c->funnyUVCode, MAX_FUNNY_CODE_SIZE); @ 1.6 log @Track FreeBSD's SVN snapshots of ffmpeg as there are no more stable releases produced by the ffmpeg team. Add v4l2 support for NetBSD. @ text @d1 1 a1 1 $NetBSD: patch-af,v 1.5 2006/02/16 10:26:30 abs Exp $ d3 68 a70 33 --- libavcodec/utils.c.orig 2006-02-06 23:52:35.000000000 +0000 +++ libavcodec/utils.c @@@@ -210,26 +210,10 @@@@ int avcodec_default_get_buffer(AVCodecCo buf->last_pic_num= *picture_number; }else{ int h_chroma_shift, v_chroma_shift; - int s_align, pixel_size; + int s_align, pixel_size, size[3]; + AVPicture picture; avcodec_get_chroma_sub_sample(s->pix_fmt, &h_chroma_shift, &v_chroma_shift); - - switch(s->pix_fmt){ - case PIX_FMT_RGB555: - case PIX_FMT_RGB565: - case PIX_FMT_YUV422: - pixel_size=2; - break; - case PIX_FMT_RGB24: - case PIX_FMT_BGR24: - pixel_size=3; - break; - case PIX_FMT_RGBA32: - pixel_size=4; - break; - default: - pixel_size=1; - } avcodec_align_dimensions(s, &w, &h); #if defined(ARCH_POWERPC) || defined(HAVE_MMI) //FIXME some cleaner check @@@@ -243,20 +227,39 @@@@ int avcodec_default_get_buffer(AVCodecCo h+= EDGE_WIDTH*2; d72 16 a87 44 + avpicture_fill(&picture, NULL, s->pix_fmt, w, h); + pixel_size= picture.linesize[0]*8 / w; +//av_log(NULL, AV_LOG_ERROR, "%d %d %d %d\n", (int)picture.data[1], w, h, s->pix_fmt); + assert(pixel_size>=1); + //FIXME next ensures that linesize= 2^x uvlinesize, thats needed because some MC code assumes it + if(pixel_size == 3*8) + w= ALIGN(w, s_align<pix_fmt, w, h); + size[0] = picture.linesize[0] * h; + size[1] -= size[0]; + if(picture.data[2]) + size[1]= size[2]= size[1]/2; + else + size[2]= 0; + buf->last_pic_num= -256*256*256*64; + memset(buf->base, 0, sizeof(buf->base)); + memset(buf->data, 0, sizeof(buf->data)); - for(i=0; i<3; i++){ + for(i=0; i<3 && size[i]; i++){ const int h_shift= i==0 ? 0 : h_chroma_shift; const int v_shift= i==0 ? 0 : v_chroma_shift; - //FIXME next ensures that linesize= 2^x uvlinesize, thats needed because some MC code assumes it - buf->linesize[i]= ALIGN(pixel_size*w>>h_shift, s_align<<(h_chroma_shift-h_shift)); + buf->linesize[i]= picture.linesize[i]; - buf->base[i]= av_mallocz((buf->linesize[i]*h>>v_shift)+16); //FIXME 16 + buf->base[i]= av_malloc(size[i]+16); //FIXME 16 if(buf->base[i]==NULL) return -1; - memset(buf->base[i], 128, buf->linesize[i]*h>>v_shift); - - if(s->flags&CODEC_FLAG_EMU_EDGE) + memset(buf->base[i], 128, size[i]); + + // no edge if EDEG EMU or not planar YUV, we check for PAL8 redundantly to protect against a exploitable bug regression ... + if((s->flags&CODEC_FLAG_EMU_EDGE) || (s->pix_fmt == PIX_FMT_PAL8) || !size[2]) buf->data[i] = buf->base[i]; else buf->data[i] = buf->base[i] + ALIGN((buf->linesize[i]*EDGE_WIDTH>>v_shift) + (EDGE_WIDTH>>h_shift), s_align); @ 1.5 log @Update ffmpeg to 0.4.9pre1, and add patch for libavcodec buffer overflow http://secunia.com/advisories/17892/ version 0.4.9-pre1: - DV encoder, DV muxer - Microsoft RLE video decoder - Microsoft Video-1 decoder - Apple Animation (RLE) decoder - Apple Graphics (SMC) decoder - Apple Video (RPZA) decoder - Cinepak decoder - Sega FILM (CPK) file demuxer - Westwood multimedia support (VQA & AUD files) - Id Quake II CIN playback support - 8BPS video decoder - FLIC playback support - RealVideo 2.0 (RV20) decoder - Duck TrueMotion v1 (DUCK) video decoder - Sierra VMD demuxer and video decoder - MSZH and ZLIB decoder support - SVQ1 video encoder - AMR-WB support - PPC optimisations - rate distortion optimal cbp support - rate distorted optimal ac prediction for mpeg4 - rate distorted optimal lambda->qp support - AAC encoding with libfaac - Sunplus JPEG codec (SP5X) support - use lagrange multipler instead of qp for ratecontrol - theora/VP3 decoding support - XA and ADX ADPCM codecs - export mpeg2 active display area / pan scan - Add support for configuring with IBM XLC - floating point AAN DCT - initial support for zygovideo (not complete) - rgb ffv1 support - new audio/video parser API - av_log() system - av_read_frame() and av_seek_frame() support - missing last frame fixes - seek by mouse in ffplay - noise reduction of dct coefficients - h263 OBMC & 4MV support - h263 alternative inter vlc support - h263 loop filter - h263 slice structured mode - interlaced DCT support for MPEG2 encoding - stuffing to stay above min_bitrate - mb type & qp vissualization - frame stepping for ffplay - interlaced motion estimation - alternate scantable support - SVCD scan offset support - closed gop support - SSE2 fdct - quantizer noise shaping - G.726 ADPCM audio codec - MS ADPCM encoding - multithreaded/SMP motion estimation - multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263 - multithreaded/SMP decoding for MPEG2 - FLAC decoder - Metrowerks CodeWarrior suppport - h263+ custom pcf support - nicer output for 'ffmpeg -formats' - matroska demuxer - SGI image format, encoding and decoding - h264 loop filter support - h264 CABAC support - nicer looking arrows for the motion vector vissualization - improved VCD support - audio timestamp drift compensation - mpeg2 YUV 422/444 support - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample - better image scaling - h261 support - correctly interleave packets during encoding - VIS optimized motion compensation - intra_dc_precission>0 encoding support - support reuse of motion vectors/mb types/field select values of the source video - more accurate deblock filter - padding support - many optimizations and bugfixes @ text @d1 1 a1 1 $NetBSD$ @ 1.4 log @fix typo: it's #if defined and not #ifdef defined @ text @d1 1 a1 1 $NetBSD: patch-af,v 1.3 2004/07/18 17:40:25 kristerw Exp $ d3 78 a80 26 --- libavcodec/libpostproc/postprocess_template.c.orig Sun Jul 18 18:13:02 2004 +++ libavcodec/libpostproc/postprocess_template.c Sun Jul 18 19:25:47 2004 @@@@ -2614,12 +2614,12 @@@@ static inline void RENAME(blockCopy)(uint8_t dst[], int dstStride, uint8_t src[], int srcStride, int levelFix, int64_t *packedOffsetAndScale) { -#ifndef HAVE_MMX +#if !defined(HAVE_MMX) || (__GNUC__ < 3) int i; #endif if(levelFix) { -#ifdef HAVE_MMX +#if defined(HAVE_MMX) && (__GNUC__ >= 3) asm volatile( "movq (%%eax), %%mm2 \n\t" // packedYOffset "movq 8(%%eax), %%mm3 \n\t" // packedYScale @@@@ -2702,7 +2702,7 @@@@ } else { -#ifdef HAVE_MMX +#if defined(HAVE_MMX) && (__GNUC__ >= 3) asm volatile( "leal (%0,%2), %%eax \n\t" "leal (%1,%3), %%edx \n\t" @ 1.3 log @gcc 2.95 does not handle some of the asm statements. Fall back to the C version when using gcc 2. @ text @d1 1 a1 1 $NetBSD$ d16 1 a16 1 +#ifdef defined(HAVE_MMX) && (__GNUC__ >= 3) @ 1.2 log @Update to 0.4.8, and install the header files that are customarily installed. Changes: version 0.4.8: - MPEG2 video encoding (Michael) - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson) - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson and Mario Brito) - Xan DPCM audio decoder (Mario Brito) - Interplay MVE playback subsystem (Mike Melanson) - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson) version 0.4.7: - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from a mplayerhq (originally from public domain player for Amiga at http://www.honeypot.net/audio) - Current version now also compiles with older GCC (Fabrice) - 4X multimedia playback system including 4xm file demuxer (Mike Melanson), and 4X video and audio codecs (Michael) - Creative YUV (CYUV) decoder (Mike Melanson) - FFV1 codec (our very simple lossless intra only codec, compresses much better then huffyuv) (Michael) - ASV1 (Asus), H.264, Intel indeo3 codecs has been added (Various) - Tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with alpha support), JPEG YUV colorspace support. (Fabrice Bellard) - ffplay has been replaced with a newer version which uses SDL (optionally) for multi platform support (fabrice) - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated by anonymous - AMR format has been added (Johannes Carlsson) - 3gp support has been added (Johannes Carlsson) - VP3 codec has been added (Mike Melanson) - more MPEG-1/2 fixes - Better Multi platform support, MS Visual Studio fixes (various) - Altivec optimizations (Magnus Damn and others) - SH4 processor support has been added (BERO) - New public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick) - VOB Streaming support (Brian Foley) - Better MP3 Autodetection (Andriy Rysin) - qpel encoding (Michael) - 4mv+b frames encoding finally fixed (Michael) - chroma ME (Michael) - 5 comparission functions for ME (Michael) - b frame encoding speedup (Michael) - wmv2 codec (unfinished - Michael) - user specified diamond size for EPZS (Michael) - Playstation STR playback subsystem, still experimental (Mike and Michael) - ASV2 codec (Michael) - CLJR decoder (Alex) .. And lots more new enhances and fixes. version 0.4.6: - completely new integer only mpeg audio layer 1/2/3 decoder rewritten from scratch. - recoded dct and motion vector search with gcc (no longer depends on nasm). - fix quantization bug in AC3 encoder. - added PCM codecs and format. Corrected wav/avi/asf pcm issues. - added prototype ffplay program. - added GOB header parsing on H.263/H.263+ decoder. (Juanjo) - bug fix on MCBPC tables of H.263. (Juanjo) - bug fix on DC coefficients of H.263. (Juanjo) - added Advanced Prediction Mode on H.263/H.263+ decoder. (Juanjo) - now we can decode H.263 streams found on QuickTime files. (Juanjo) - now we can decode H.263 streams found on VIVO v1 files.(Juanjo) - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo) - added GOB header for H.263/H.263+ coding on RTP mode. (Juanjo) - now H.263 picture size is returned on the first decoded frame. (Juanjo) - added first regression tests - added MPEG2 TS demux - new demux API for libav - more accurate and faster IDCT (Michael) - faster and entropy controlled motion search (Michael) - two pass video encoding (Michael) - new video rate control (Michael) - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael) - great performance improvement of video encoders and decoders (Michael) - new and faster bit readers and vlc parsers (Michael) - high quality encoding mode : tries all macroblock/VLC types (Michael) - added DV video decoder - preliminary RTP/RTSP support in ffserver and libavformat - H.263+ AIC decoding/encoding support. (Juanjo) - VCD MPEG-PS mode. (Juanjo) - PSNR stuff. (Juanjo) - Simple stats output. (Juanjo) - 16-bit and 15-bit rgb/bgr/gbr support (Bisqwit) @ text @d1 1 a1 1 $NetBSD: patch-af,v 1.1 2004/05/10 13:41:11 wiz Exp $ d3 9 a11 7 --- ffmpeg.c.orig 2001-08-13 16:24:19.000000000 -0500 +++ ffmpeg.c @@@@ -31,11 +31,22 @@@@ #include #include #include +#include d13 16 a28 17 #include "avformat.h" +#ifdef INT64_MAX +#define MAXINT64 INT64_MAX +#else +#ifdef INT64_C #define MAXINT64 INT64_C(0x7fffffffffffffff) +#else +#ifdef QUAD_MAX +#define MAXINT64 QUAD_MAX +#endif +#endif +#endif typedef struct { const char *name; @ 1.1 log @Initial revision @ text @d1 1 a1 1 $NetBSD: patch-af,v 1.2 2003/12/25 18:49:56 fredb Exp $ @ 1.1.1.1 log @Reimport graphics/ffmpeg as multimedia/ffmpeg. @ text @@