2002-03-25 22:04:33 +00:00
|
|
|
/*
|
|
|
|
ad.c - audio decoder interface
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
#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_dk3adpcm;
|
2002-04-07 17:42:31 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_dk4adpcm;
|
2002-03-25 22:04:33 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_roqaudio;
|
|
|
|
extern ad_functions_t mpcodecs_ad_dshow;
|
2002-12-01 16:40:05 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_dmo;
|
2002-03-25 22:04:33 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_acm;
|
2002-03-25 22:25:58 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_msgsm;
|
2002-03-26 15:53:18 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_faad;
|
2002-08-30 20:06:22 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_libvorbis;
|
2002-04-03 20:14:18 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_libmad;
|
2002-08-30 20:06:22 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_realaud;
|
2002-08-05 17:23:22 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_libdv;
|
2002-10-31 23:11:34 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_qtaudio;
|
2003-06-08 20:29:04 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_ra1428;
|
2003-10-04 22:00:25 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_flac;
|
2002-03-25 22:04:33 +00:00
|
|
|
|
|
|
|
ad_functions_t* mpcodecs_ad_drivers[] =
|
|
|
|
{
|
|
|
|
// &mpcodecs_ad_null,
|
2002-11-01 16:40:15 +00:00
|
|
|
#ifdef USE_MP3LIB
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_mp3lib,
|
2002-11-01 16:40:15 +00:00
|
|
|
#endif
|
|
|
|
#ifdef USE_LIBA52
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_liba52,
|
|
|
|
&mpcodecs_ad_hwac3,
|
2002-11-01 16:40:15 +00:00
|
|
|
#endif
|
2002-03-25 22:04:33 +00:00
|
|
|
#ifdef USE_LIBAVCODEC
|
|
|
|
&mpcodecs_ad_ffmpeg,
|
|
|
|
#endif
|
|
|
|
&mpcodecs_ad_pcm,
|
|
|
|
&mpcodecs_ad_dvdpcm,
|
|
|
|
&mpcodecs_ad_alaw,
|
|
|
|
&mpcodecs_ad_imaadpcm,
|
|
|
|
&mpcodecs_ad_msadpcm,
|
|
|
|
&mpcodecs_ad_dk3adpcm,
|
|
|
|
&mpcodecs_ad_roqaudio,
|
2002-03-25 22:25:58 +00:00
|
|
|
&mpcodecs_ad_msgsm,
|
2002-03-25 22:04:33 +00:00
|
|
|
#ifdef USE_WIN32DLL
|
|
|
|
#ifdef USE_DIRECTSHOW
|
|
|
|
&mpcodecs_ad_dshow,
|
2002-12-01 16:40:05 +00:00
|
|
|
&mpcodecs_ad_dmo,
|
2002-03-25 22:04:33 +00:00
|
|
|
#endif
|
|
|
|
&mpcodecs_ad_acm,
|
2002-11-12 00:06:36 +00:00
|
|
|
#endif
|
2003-02-25 15:39:36 +00:00
|
|
|
#if defined(USE_QTX_CODECS) || defined(MACOSX)
|
2002-10-31 23:11:34 +00:00
|
|
|
&mpcodecs_ad_qtaudio,
|
2002-03-26 15:53:18 +00:00
|
|
|
#endif
|
|
|
|
#ifdef HAVE_FAAD
|
2002-04-01 15:26:23 +00:00
|
|
|
&mpcodecs_ad_faad,
|
|
|
|
#endif
|
|
|
|
#ifdef HAVE_OGGVORBIS
|
2002-08-30 20:06:22 +00:00
|
|
|
&mpcodecs_ad_libvorbis,
|
2002-04-03 20:14:18 +00:00
|
|
|
#endif
|
|
|
|
#ifdef USE_LIBMAD
|
|
|
|
&mpcodecs_ad_libmad,
|
2002-06-10 01:32:12 +00:00
|
|
|
#endif
|
|
|
|
#ifdef USE_REALCODECS
|
2002-08-30 20:06:22 +00:00
|
|
|
&mpcodecs_ad_realaud,
|
2002-08-05 17:23:22 +00:00
|
|
|
#endif
|
|
|
|
#ifdef HAVE_LIBDV095
|
|
|
|
&mpcodecs_ad_libdv,
|
2002-03-25 22:04:33 +00:00
|
|
|
#endif
|
2003-06-08 20:29:04 +00:00
|
|
|
&mpcodecs_ad_ra1428,
|
2003-10-04 22:00:25 +00:00
|
|
|
#ifdef HAVE_FLAC
|
|
|
|
&mpcodecs_ad_flac,
|
|
|
|
#endif
|
2002-03-25 22:04:33 +00:00
|
|
|
NULL
|
|
|
|
};
|