2002-03-25 23:04:33 +01:00
|
|
|
/*
|
|
|
|
ad.c - audio decoder interface
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
#include "config.h"
|
|
|
|
|
2007-03-15 18:10:36 +01:00
|
|
|
#include "stream/stream.h"
|
2007-03-15 18:51:32 +01:00
|
|
|
#include "libmpdemux/demuxer.h"
|
|
|
|
#include "libmpdemux/stheader.h"
|
2002-03-25 23:04:33 +01:00
|
|
|
#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;
|
2006-01-15 11:25:14 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_hwmpa;
|
2002-03-25 23:04:33 +01:00
|
|
|
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 19:42:31 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_dk4adpcm;
|
2002-03-25 23:04:33 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_dshow;
|
2002-12-01 17:40:05 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_dmo;
|
2002-03-25 23:04:33 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_acm;
|
2002-03-25 23:25:58 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_msgsm;
|
2002-03-26 16:53:18 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_faad;
|
2002-08-30 22:06:22 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_libvorbis;
|
2005-11-05 12:58:25 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_speex;
|
2002-04-03 22:14:18 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_libmad;
|
2002-08-30 22:06:22 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_realaud;
|
2002-08-05 19:23:22 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_libdv;
|
2002-11-01 00:11:34 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_qtaudio;
|
2004-12-29 20:51:56 +01:00
|
|
|
extern ad_functions_t mpcodecs_ad_twin;
|
2005-07-10 19:14:12 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_libmusepack;
|
2007-07-22 18:24:25 +02:00
|
|
|
extern ad_functions_t mpcodecs_ad_libdca;
|
2002-03-25 23:04:33 +01:00
|
|
|
|
|
|
|
ad_functions_t* mpcodecs_ad_drivers[] =
|
|
|
|
{
|
|
|
|
// &mpcodecs_ad_null,
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_MP3LIB
|
2002-03-25 23:04:33 +01:00
|
|
|
&mpcodecs_ad_mp3lib,
|
2002-11-01 17:40:15 +01:00
|
|
|
#endif
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_LIBA52
|
2002-03-25 23:04:33 +01:00
|
|
|
&mpcodecs_ad_liba52,
|
|
|
|
&mpcodecs_ad_hwac3,
|
2002-11-01 17:40:15 +01:00
|
|
|
#endif
|
2006-01-15 11:25:14 +01:00
|
|
|
&mpcodecs_ad_hwmpa,
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_LIBAVCODEC
|
2002-03-25 23:04:33 +01:00
|
|
|
&mpcodecs_ad_ffmpeg,
|
|
|
|
#endif
|
|
|
|
&mpcodecs_ad_pcm,
|
|
|
|
&mpcodecs_ad_dvdpcm,
|
|
|
|
&mpcodecs_ad_alaw,
|
|
|
|
&mpcodecs_ad_imaadpcm,
|
|
|
|
&mpcodecs_ad_msadpcm,
|
|
|
|
&mpcodecs_ad_dk3adpcm,
|
2002-03-25 23:25:58 +01:00
|
|
|
&mpcodecs_ad_msgsm,
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_WIN32DLL
|
2002-03-25 23:04:33 +01:00
|
|
|
&mpcodecs_ad_dshow,
|
2002-12-01 17:40:05 +01:00
|
|
|
&mpcodecs_ad_dmo,
|
2002-03-25 23:04:33 +01:00
|
|
|
&mpcodecs_ad_acm,
|
2004-12-29 20:51:56 +01:00
|
|
|
&mpcodecs_ad_twin,
|
2002-11-12 01:06:36 +01:00
|
|
|
#endif
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_QTX_CODECS
|
2002-11-01 00:11:34 +01:00
|
|
|
&mpcodecs_ad_qtaudio,
|
2002-03-26 16:53:18 +01:00
|
|
|
#endif
|
2008-08-02 18:30:32 +02:00
|
|
|
#ifdef CONFIG_FAAD
|
2002-04-01 17:26:23 +02:00
|
|
|
&mpcodecs_ad_faad,
|
|
|
|
#endif
|
2008-08-02 18:30:32 +02:00
|
|
|
#ifdef CONFIG_OGGVORBIS
|
2002-08-30 22:06:22 +02:00
|
|
|
&mpcodecs_ad_libvorbis,
|
2002-04-03 22:14:18 +02:00
|
|
|
#endif
|
2008-08-02 18:30:32 +02:00
|
|
|
#ifdef CONFIG_SPEEX
|
2005-11-05 12:58:25 +01:00
|
|
|
&mpcodecs_ad_speex,
|
|
|
|
#endif
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_LIBMAD
|
2002-04-03 22:14:18 +02:00
|
|
|
&mpcodecs_ad_libmad,
|
2002-06-10 03:32:12 +02:00
|
|
|
#endif
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_REALCODECS
|
2002-08-30 22:06:22 +02:00
|
|
|
&mpcodecs_ad_realaud,
|
2002-08-05 19:23:22 +02:00
|
|
|
#endif
|
2008-08-02 18:30:32 +02:00
|
|
|
#ifdef CONFIG_LIBDV095
|
2002-08-05 19:23:22 +02:00
|
|
|
&mpcodecs_ad_libdv,
|
2002-03-25 23:04:33 +01:00
|
|
|
#endif
|
2008-08-02 18:30:32 +02:00
|
|
|
#ifdef CONFIG_MUSEPACK
|
2005-07-10 19:14:12 +02:00
|
|
|
&mpcodecs_ad_libmusepack,
|
2007-07-22 18:24:25 +02:00
|
|
|
#endif
|
2008-07-30 14:01:30 +02:00
|
|
|
#ifdef CONFIG_LIBDCA
|
2007-07-22 18:24:25 +02:00
|
|
|
&mpcodecs_ad_libdca,
|
2005-07-10 19:14:12 +02:00
|
|
|
#endif
|
2002-03-25 23:04:33 +01:00
|
|
|
NULL
|
|
|
|
};
|