diff --git a/Makefile b/Makefile index 397f8a7d9d..20000a5179 100644 --- a/Makefile +++ b/Makefile @@ -37,7 +37,7 @@ MANDIR = ${prefix}/man # a BSD compatible 'install' program INSTALL = install -SRCS_COMMON = cyuv.c adpcm.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c dec_audio.c msvidc.c cinepak.c fli.c qtrle.c codec-cfg.c cfgparser.c my_profile.c RTjpegN.c minilzo.c nuppelvideo.c spudec.c playtree.c playtreeparser.c asxparser.c qtsmc.c ducktm1.c roqav.c qtrpza.c +SRCS_COMMON = cyuv.c adpcm.c xacodec.c cpudetect.c mp_msg.c ac3-iec958.c msvidc.c cinepak.c fli.c qtrle.c codec-cfg.c cfgparser.c my_profile.c RTjpegN.c minilzo.c nuppelvideo.c spudec.c playtree.c playtreeparser.c asxparser.c qtsmc.c ducktm1.c roqav.c qtrpza.c SRCS_MENCODER = mencoder.c $(SRCS_COMMON) libao2/afmt.c divx4_vbr.c libvo/aclib.c libvo/img_format.c libvo/osd.c me-opt-reg.c SRCS_MPLAYER = mplayer.c $(SRCS_COMMON) find_sub.c subreader.c lirc_mp.c mixer.c vobsub.c mp-opt-reg.c diff --git a/libmpcodecs/Makefile b/libmpcodecs/Makefile index 95d2dd4e1e..65aec32c08 100644 --- a/libmpcodecs/Makefile +++ b/libmpcodecs/Makefile @@ -3,16 +3,18 @@ include ../config.mak LIBNAME = libmpcodecs.a -SRCS=dec_video.c vd.c vd_null.c vd_cinepak.c vd_qtrpza.c vd_ffmpeg.c vd_dshow.c vd_vfw.c vd_odivx.c vd_divx4.c vd_raw.c vd_xanim.c vd_msvidc.c vd_fli.c vd_qtrle.c vd_qtsmc.c vd_roqvideo.c vd_cyuv.c vd_nuv.c vd_libmpeg2.c vd_msrle.c vd_huffyuv.c vd_zlib.c +AUDIO_SRCS=dec_audio.c ad.c ad_a52.c ad_acm.c ad_alaw.c ad_dk3adpcm.c ad_dk4adpcm.c ad_dshow.c ad_dvdpcm.c ad_ffmpeg.c ad_hwac3.c ad_imaadpcm.c ad_mp3.c ad_msadpcm.c ad_pcm.c ad_roqaudio.c +VIDEO_SRCS=dec_video.c vd.c vd_null.c vd_cinepak.c vd_qtrpza.c vd_ffmpeg.c vd_dshow.c vd_vfw.c vd_odivx.c vd_divx4.c vd_raw.c vd_xanim.c vd_msvidc.c vd_fli.c vd_qtrle.c vd_qtsmc.c vd_roqvideo.c vd_cyuv.c vd_nuv.c vd_libmpeg2.c vd_msrle.c vd_huffyuv.c vd_zlib.c ifeq ($(PNG),yes) -SRCS += vd_mpng.c +VIDEO_SRCS += vd_mpng.c endif ifeq ($(JPEG),yes) -SRCS += vd_ijpg.c +VIDEO_SRCS += vd_ijpg.c endif +SRCS=$(AUDIO_SRCS) $(VIDEO_SRCS) OBJS=$(SRCS:.c=.o) CFLAGS = -Wall $(OPTFLAGS) -I. -I.. -I../libmpdemux -I../loader $(EXTRA_INC) diff --git a/libmpcodecs/TODO b/libmpcodecs/TODO index a51c59dae5..d7404cddbf 100644 --- a/libmpcodecs/TODO +++ b/libmpcodecs/TODO @@ -1,6 +1,12 @@ URGENT: - add common postprocessing filter support (export qscale array) +audio: + +libvorbis +libmad +faad + TODO: - vo_config callbacks to ffmpeg, cinepak - better mpi support to xanim (now it's EXPORT but could be better) diff --git a/libmpcodecs/ad.c b/libmpcodecs/ad.c new file mode 100644 index 0000000000..20e3bff162 --- /dev/null +++ b/libmpcodecs/ad.c @@ -0,0 +1,58 @@ +/* + ad.c - audio decoder interface +*/ + +#include +#include +#include + +#include "config.h" + +#include "stream.h" +#include "demuxer.h" +#include "stheader.h" +#include "ad.h" + +/* Missed vorbis, mad, dshow */ + +//extern ad_functions_t mpcodecs_ad_null; +extern ad_functions_t mpcodecs_ad_mp3lib; +extern ad_functions_t mpcodecs_ad_ffmpeg; +extern ad_functions_t mpcodecs_ad_liba52; +extern ad_functions_t mpcodecs_ad_hwac3; +extern ad_functions_t mpcodecs_ad_pcm; +extern ad_functions_t mpcodecs_ad_dvdpcm; +extern ad_functions_t mpcodecs_ad_alaw; +extern ad_functions_t mpcodecs_ad_imaadpcm; +extern ad_functions_t mpcodecs_ad_msadpcm; +extern ad_functions_t mpcodecs_ad_dk4adpcm; +extern ad_functions_t mpcodecs_ad_dk3adpcm; +extern ad_functions_t mpcodecs_ad_roqaudio; +extern ad_functions_t mpcodecs_ad_dshow; +extern ad_functions_t mpcodecs_ad_acm; + +ad_functions_t* mpcodecs_ad_drivers[] = +{ +// &mpcodecs_ad_null, + &mpcodecs_ad_mp3lib, + &mpcodecs_ad_liba52, + &mpcodecs_ad_hwac3, +#ifdef USE_LIBAVCODEC + &mpcodecs_ad_ffmpeg, +#endif + &mpcodecs_ad_pcm, + &mpcodecs_ad_dvdpcm, + &mpcodecs_ad_alaw, + &mpcodecs_ad_imaadpcm, + &mpcodecs_ad_msadpcm, + &mpcodecs_ad_dk4adpcm, + &mpcodecs_ad_dk3adpcm, + &mpcodecs_ad_roqaudio, +#ifdef USE_WIN32DLL +#ifdef USE_DIRECTSHOW + &mpcodecs_ad_dshow, +#endif + &mpcodecs_ad_acm, +#endif + NULL +};