[FFmpeg-devel] [PATCH] yadif port to libavfitler
Michael Niedermayer
michaelni
Sun Jun 13 09:19:55 CEST 2010
On Fri, Jun 11, 2010 at 03:08:00AM -0700, Baptiste Coudurier wrote:
> 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.
the public function needs a av_ prefix
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
Let us carefully observe those good qualities wherein our enemies excel us
and endeavor to excel them, by avoiding what is faulty, and imitating what
is excellent in them. -- Plutarch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20100613/9ce3eed9/attachment.pgp>
More information about the ffmpeg-devel
mailing list