[FFmpeg-devel] [PATCH] yadif port to libavfitler
Baptiste Coudurier
baptiste.coudurier
Fri Jun 11 12:08:00 CEST 2010
On 6/10/10 3:34 AM, Michael Niedermayer wrote:
> On Sun, Jun 06, 2010 at 02:28:17PM -0700, Baptiste Coudurier wrote:
>> On 5/25/10 3:31 PM, Michael Niedermayer wrote:
>>> On Mon, May 24, 2010 at 07:16:57PM -0700, Baptiste Coudurier wrote:
>>>> On 05/24/2010 04:18 AM, M?ns Rullg?rd wrote:
>>>>> Michael Niedermayer<michaelni at gmx.at> writes:
>>>>>
>>>>>> On Sun, May 23, 2010 at 06:03:50PM -0700, Baptiste Coudurier wrote:
>>>>>>> On 5/23/10 4:22 AM, Michael Niedermayer wrote:
>>>>>>>> On Sun, May 23, 2010 at 04:10:57AM -0700, Baptiste Coudurier wrote:
>>>>>> [...]
>>>>>>>>> In short what's required before svn inclusion ?
>>>>>>>>
>>>>>>>> cpuid + matching md5 to mplayer
>>>>>>>> (id also like to see double frame output to work if possible but if
>>>>>>>> thats
>>>>>>>> a problem we could look into it later)
>>>>>>>
>>>>>>> I'd go for later :)
>>>>>>>
>>>>>>>> and if fast_memcpy isnt ported we need a todo/fixme somewhere so we
>>>>>>>> dont
>>>>>>>> forget it
>>>>>>>
>>>>>>> md5 matches, cpuid is a bit complicated to port since MM_FLAGS are
>>>>>>> defined
>>>>>>> in avcodec.h
>>>>>>
>>>>>> where is the problem with moving them to some header in avutil ?
>>>>>
>>>>> Make that a new header only for cpuid stuff.
>>>>>
>>>>
>>>> All right, first attempt attached.
>>>>
>>>> --
>>>> Baptiste COUDURIER
>>>> Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
>>>> FFmpeg maintainer http://www.ffmpeg.org
>>>
>>>> libavcodec/avcodec.h | 4 +++-
>>>> libavcodec/dsputil.h | 6 +-----
>>>> libavcodec/x86/Makefile | 3 +--
>>>> libavutil/Makefile | 2 ++
>>>> libavutil/cpuid.h | 44
>>>> ++++++++++++++++++++++++++++++++++++++++++++
>>>> libavutil/x86/cpuid.c | 2 +-
>>>> 6 files changed, 52 insertions(+), 9 deletions(-)
>>>> c75422b037d027c7bdb9c2bbe859bdac4c438304 avutil_mm_support.patch
>>>> Index: libavcodec/avcodec.h
>>>> ===================================================================
>>>> --- libavcodec/avcodec.h (revision 23288)
>>>> +++ libavcodec/avcodec.h (working copy)
>>>> @@ -30,7 +30,7 @@
>>>> #include "libavutil/avutil.h"
>>>>
>>>> #define LIBAVCODEC_VERSION_MAJOR 52
>>>> -#define LIBAVCODEC_VERSION_MINOR 68
>>>> +#define LIBAVCODEC_VERSION_MINOR 69
>>>> #define LIBAVCODEC_VERSION_MICRO 3
>>>
>>> micro should be zerod if minor is bumped
>>>
>>> remaining code ok with me
>>
>> All right, updated.
>>
>> yadif updated as well.
>> Issues are named args in asm
>> yadif should be compiled only when gpl is enabled.
>>
>> --
>> Baptiste COUDURIER
>> Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
>> FFmpeg maintainer http://www.ffmpeg.org
>
>> libavcodec/avcodec.h | 6 ++++--
>> libavcodec/dsputil.h | 6 +-----
>> libavcodec/x86/Makefile | 3 +--
>> libavutil/Makefile | 2 ++
>> libavutil/cpuid.h | 44 ++++++++++++++++++++++++++++++++++++++++++++
>> 5 files changed, 52 insertions(+), 9 deletions(-)
>> 0542f2bb707208ba2f7e9f9701468c5ce6f0a6e5 avutil_mm_support.patch
>> Index: libavutil/Makefile
>> ===================================================================
>> --- libavutil/Makefile (revision 23501)
>> +++ libavutil/Makefile (working copy)
>> @@ -51,6 +51,8 @@
>> tree.o \
>> utils.o \
>>
>> +OBJS-$(ARCH_X86) += x86/cpuid.o
>> +
>> TESTPROGS = adler32 aes base64 crc des lls md5 pca sha softfloat tree
>> TESTPROGS-$(HAVE_LZO1X_999_COMPRESS) += lzo
>>
>> Index: libavutil/cpuid.h
>> ===================================================================
>> --- libavutil/cpuid.h (revision 0)
>> +++ libavutil/cpuid.h (revision 0)
>> @@ -0,0 +1,44 @@
>> +/*
>> + * Copyright (c) 2000, 2001, 2002 Fabrice Bellard
>> + *
>> + * This file is part of FFmpeg.
>> + *
>> + * FFmpeg is free software; you can redistribute it and/or
>> + * modify it under the terms of the GNU Lesser General Public
>> + * License as published by the Free Software Foundation; either
>> + * version 2.1 of the License, or (at your option) any later version.
>> + *
>> + * FFmpeg is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
>> + * Lesser General Public License for more details.
>> + *
>> + * You should have received a copy of the GNU Lesser General Public
>> + * License along with FFmpeg; if not, write to the Free Software
>> + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
>> + */
>> +
>> +#ifndef AVUTIL_CPUID_H
>> +#define AVUTIL_CPUID_H
>> +
>> +#define FF_MM_FORCE 0x80000000 /* Force usage of selected flags (OR) */
>> + /* lower 16 bits - CPU features */
>> +#define FF_MM_MMX 0x0001 ///< standard MMX
>> +#define FF_MM_3DNOW 0x0004 ///< AMD 3DNOW
>> +#define FF_MM_MMX2 0x0002 ///< SSE integer functions or AMD MMX ext
>> +#define FF_MM_SSE 0x0008 ///< SSE functions
>> +#define FF_MM_SSE2 0x0010 ///< PIV SSE2 functions
>> +#define FF_MM_3DNOWEXT 0x0020 ///< AMD 3DNowExt
>> +#define FF_MM_SSE3 0x0040 ///< Prescott SSE3 functions
>> +#define FF_MM_SSSE3 0x0080 ///< Conroe SSSE3 functions
>> +#define FF_MM_SSE4 0x0100 ///< Penryn SSE4.1 functions
>> +#define FF_MM_SSE42 0x0200 ///< Nehalem SSE4.2 functions
>> +#define FF_MM_IWMMXT 0x0100 ///< XScale IWMMXT
>> +#define FF_MM_ALTIVEC 0x0001 ///< standard AltiVec
>> +
>> +/* should be defined by architectures supporting
>> + one or more MultiMedia extension */
>> +int mm_support(void);
>
> you arent moving mm_support() to libavutil just the declaration from the
> header?
I think I just forgot to include the diff. It's just cpuid.c moved from
libavcodec/x86 to libavutil, like the avutil Makefile diff shows.
--
Baptiste COUDURIER
Key fingerprint 8D77134D20CC9220201FC5DB0AC9325C5C1ABAAA
FFmpeg maintainer http://www.ffmpeg.org
More information about the ffmpeg-devel
mailing list