Browse Source

moving postprocess to ffmpeg/libavcodec

Originally committed as revision 1586 to svn://svn.ffmpeg.org/ffmpeg/trunk
Originally committed as revision 9427 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
Originally committed as revision 9428 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc
tags/v0.5
Michael Niedermayer 23 years ago
parent
commit
bba9b16c26
9 changed files with 121 additions and 34 deletions
  1. +21
    -0
      configure
  2. +12
    -0
      libavcodec/Makefile
  3. +64
    -0
      libavcodec/libpostproc/Makefile
  4. +19
    -0
      libavcodec/libpostproc/mangle.h
  5. +4
    -3
      libavcodec/libpostproc/postprocess.c
  6. +0
    -0
      libavcodec/libpostproc/postprocess.h
  7. +0
    -0
      libavcodec/libpostproc/postprocess_internal.h
  8. +0
    -0
      libavcodec/libpostproc/postprocess_template.c
  9. +1
    -31
      postproc/Makefile

+ 21
- 0
configure View File

@@ -60,6 +60,8 @@ mp3lame="no"
vorbis="no"
a52="yes"
a52bin="no"
pp="yes"
shared_pp="no"
win32="no"
mingw32="no"
cygwin="no"
@@ -281,6 +283,10 @@ for opt do
;;
--enable-a52bin) a52bin="yes" ; extralibs="$ldl $extralibs"
;;
--disable-pp) pp="no"
;;
--enable-shared-pp) shared_pp="yes"
;;
--enable-mp3lame) mp3lame="yes"
;;
--enable-vorbis) vorbis="yes"
@@ -578,6 +584,8 @@ echo " --enable-win32 enable win32 cross compile"
echo " --enable-mingw32 enable mingw32 native windows compile"
echo " --disable-a52 disable GPL'ed A52 support [default=no]"
echo " --enable-a52bin open liba52.so.0 at runtime [default=no]"
echo " --disable-pp disable GPL'ed post processing support [default=no]"
echo " --enable-shared-pp use libpostproc.so [default=no]"
echo " --enable-shared build shared libraries [default=no]"
echo ""
echo "Advanced options (experts only):"
@@ -631,6 +639,8 @@ echo "mp3lame enabled $mp3lame"
echo "vorbis enabled $vorbis"
echo "a52 support $a52"
echo "a52 dlopened $a52bin"
echo "pp support $pp"
echo "shared pp $shared_pp"
echo "Video hooking $vhook"
echo "risky / patent encumbered codecs $risky"

@@ -754,6 +764,17 @@ if test "$a52" = "yes" ; then
fi
fi

# PP
if test "$pp" = "yes" ; then
echo "#define CONFIG_PP 1" >> $TMPH
echo "CONFIG_PP=yes" >> config.mak

if test "$shared_pp" = "yes" ; then
echo "#define SHARED_PP 1" >> $TMPH
echo "SHARED_PP=yes" >> config.mak
fi
fi

# mpeg audio high precision mode
if test "$mpegaudio_hp" = "yes" ; then
echo "#define CONFIG_MPEGAUDIO_HP 1" >> $TMPH


+ 12
- 0
libavcodec/Makefile View File

@@ -35,6 +35,15 @@ OBJS+= liba52/bit_allocate.o liba52/bitstream.o liba52/downmix.o \
endif
endif

ifeq ($(CONFIG_PP),yes)
ifeq ($(SHARED_PP),yes)
EXTRALIBS += -lpostproc
else
# LIBS += libpostproc/libpostproc.a ... should be fixed
OBJS += libpostproc/postprocess.o
endif
endif

ifeq ($(CONFIG_MP3LAME),yes)
OBJS += mp3lameaudio.o
EXTRALIBS += -lmp3lame
@@ -125,6 +134,9 @@ $(SLIB): $(OBJS)

dsputil.o: dsputil.c dsputil.h

libpostproc/libpostproc.a:
$(MAKE) -C libpostproc

%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $<



+ 64
- 0
libavcodec/libpostproc/Makefile View File

@@ -0,0 +1,64 @@

include ../../config.mak

ifeq ($(SHARED_PP),yes)
SPPLIB = libpostproc.so
SPPVERSION = 0.0.1
endif
PPLIB = libpostproc.a

PPOBJS=postprocess.o
SPPOBJS=postprocess_pic.o

CFLAGS = $(OPTFLAGS) $(MLIB_INC) -I. -I.. $(EXTRA_INC)
# -I/usr/X11R6/include/

.SUFFIXES: .c .o

# .PHONY: all clean

.c.o:
$(CC) -c $(CFLAGS) -I.. -I../.. -o $@ $<

all: $(SWSLIB) $(PPLIB) $(SPPLIB)

clean:
rm -f *.o *.a *~ *.so

distclean:
rm -f Makefile.bak *.o *.a *~ *.so .depend

dep: depend

depend:
$(CC) -MM $(CFLAGS) postprocess.c 1>.depend

ifeq ($(SHARED_PP),yes)
postprocess_pic.o: postprocess.c
$(CC) -c $(CFLAGS) -fomit-frame-pointer -fPIC -DPIC -I.. -I../.. -o $@ $<

$(SPPLIB): $(SPPOBJS)
$(CC) -shared -Wl,-soname,$(SPPLIB).0 \
-o $(SPPLIB) $(SPPOBJS)
endif

$(PPLIB): $(PPOBJS)
$(AR) r $(PPLIB) $(PPOBJS)

install: all
ifeq ($(SHARED_PP),yes)
install -d $(prefix)/lib
install -s -m 755 $(SPPLIB) $(prefix)/lib/$(SPPLIB).$(SPPVERSION)
ln -sf $(SPPLIB).$(SPPVERSION) $(prefix)/lib/$(SPPLIB)
ldconfig || true
mkdir -p $(prefix)/include/postproc
install -m 644 postprocess.h $(prefix)/include/postproc/postprocess.h
endif


#
# include dependency files if they exist
#
ifneq ($(wildcard .depend),)
include .depend
endif

+ 19
- 0
libavcodec/libpostproc/mangle.h View File

@@ -0,0 +1,19 @@
/* mangle.h - This file has some CPP macros to deal with different symbol
* mangling across binary formats.
* (c)2002 by Felix Buenemann <atmosfear at users.sourceforge.net>
* File licensed under the GPL, see http://www.fsf.org/ for more info.
*/

#ifndef __MANGLE_H
#define __MANGLE_H

/* Feel free to add more to the list, eg. a.out IMO */
#if defined(__CYGWIN__) || defined(__OS2__) || \
(defined(__OpenBSD__) && !defined(__ELF__))
#define MANGLE(a) "_" #a
#else
#define MANGLE(a) #a
#endif

#endif /* !__MANGLE_H */


postproc/postprocess.c → libavcodec/libpostproc/postprocess.c View File

@@ -75,12 +75,13 @@ try to unroll inner for(x=0 ... loop to avoid these damn if(x ... checks
//#undef HAVE_MMX
//#undef ARCH_X86
//#define DEBUG_BRIGHTNESS
#ifndef PIC
#include "../libvo/fastmemcpy.h"
#ifdef USE_FASTMEMCPY
#include "libvo/fastmemcpy.h"
#endif
#include "postprocess.h"
#include "postprocess_internal.h"
#include "mangle.h"

#include "mangle.h" //FIXME should be supressed

#define MIN(a,b) ((a) > (b) ? (b) : (a))
#define MAX(a,b) ((a) < (b) ? (b) : (a))

postproc/postprocess.h → libavcodec/libpostproc/postprocess.h View File


postproc/postprocess_internal.h → libavcodec/libpostproc/postprocess_internal.h View File


postproc/postprocess_template.c → libavcodec/libpostproc/postprocess_template.c View File


+ 1
- 31
postproc/Makefile View File

@@ -2,16 +2,9 @@
include ../config.mak

SWSLIB = libswscale.a
ifeq ($(SHARED_PP),yes)
SPPLIB = libpostproc.so
SPPVERSION = 0.0.1
endif
PPLIB = libpostproc.a

SWSSRCS=swscale.c rgb2rgb.c yuv2rgb.c
SWSOBJS=$(SWSSRCS:.c=.o)
PPOBJS=postprocess.o
SPPOBJS=postprocess_pic.o
CS_TEST_OBJS=cs_test.o rgb2rgb.o ../cpudetect.o ../mp_msg.o ../libvo/aclib.o

CFLAGS = $(OPTFLAGS) $(MLIB_INC) -I. -I.. $(EXTRA_INC)
@@ -24,7 +17,7 @@ CFLAGS = $(OPTFLAGS) $(MLIB_INC) -I. -I.. $(EXTRA_INC)
.c.o:
$(CC) -c $(CFLAGS) -I.. -o $@ $<

all: $(SWSLIB) $(PPLIB) $(SPPLIB)
all: $(SWSLIB)

$(SWSLIB): $(SWSOBJS)
$(AR) r $(SWSLIB) $(SWSOBJS)
@@ -43,29 +36,6 @@ depend:
cs_test: $(CS_TEST_OBJS)
$(CC) $(CS_TEST_OBJS) -o cs_test

ifeq ($(SHARED_PP),yes)
postprocess_pic.o: postprocess.c
$(CC) -c $(CFLAGS) -fomit-frame-pointer -fPIC -DPIC -I.. -o $@ $<

$(SPPLIB): $(SPPOBJS)
$(CC) -shared -Wl,-soname,$(SPPLIB).0 \
-o $(SPPLIB) $(SPPOBJS)
endif

$(PPLIB): $(PPOBJS)
$(AR) r $(PPLIB) $(PPOBJS)

install: all
ifeq ($(SHARED_PP),yes)
install -d $(prefix)/lib
install -s -m 755 $(SPPLIB) $(prefix)/lib/$(SPPLIB).$(SPPVERSION)
ln -sf $(SPPLIB).$(SPPVERSION) $(prefix)/lib/$(SPPLIB)
ldconfig || true
mkdir -p $(prefix)/include/postproc
install -m 644 postprocess.h $(prefix)/include/postproc/postprocess.h
endif


#
# include dependency files if they exist
#


Loading…
Cancel
Save