2010-01-30 16:57:40 +00:00
|
|
|
/*
|
|
|
|
* audio decoder interface
|
|
|
|
*
|
|
|
|
* This file is part of MPlayer.
|
|
|
|
*
|
|
|
|
* MPlayer is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; either version 2 of the License, or
|
|
|
|
* (at your option) any later version.
|
|
|
|
*
|
|
|
|
* MPlayer 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 General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU General Public License along
|
|
|
|
* with MPlayer; if not, write to the Free Software Foundation, Inc.,
|
|
|
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
*/
|
2002-03-25 22:04:33 +00:00
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <string.h>
|
|
|
|
|
|
|
|
#include "config.h"
|
|
|
|
|
2007-03-15 17:10:36 +00:00
|
|
|
#include "stream/stream.h"
|
2007-03-15 17:51:32 +00:00
|
|
|
#include "libmpdemux/demuxer.h"
|
|
|
|
#include "libmpdemux/stheader.h"
|
2002-03-25 22:04:33 +00: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 10:25:14 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_hwmpa;
|
2002-03-25 22:04:33 +00: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 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_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;
|
2005-11-05 11:58:25 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_speex;
|
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;
|
2004-12-29 19:51:56 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_twin;
|
2005-07-10 17:14:12 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_libmusepack;
|
2007-07-22 16:24:25 +00:00
|
|
|
extern ad_functions_t mpcodecs_ad_libdca;
|
2002-03-25 22:04:33 +00:00
|
|
|
|
|
|
|
ad_functions_t* mpcodecs_ad_drivers[] =
|
|
|
|
{
|
|
|
|
// &mpcodecs_ad_null,
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_MP3LIB
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_mp3lib,
|
2002-11-01 16:40:15 +00:00
|
|
|
#endif
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_LIBA52
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_liba52,
|
2002-11-01 16:40:15 +00:00
|
|
|
#endif
|
2010-01-11 21:06:00 +00:00
|
|
|
&mpcodecs_ad_hwac3,
|
2006-01-15 10:25:14 +00:00
|
|
|
&mpcodecs_ad_hwmpa,
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_LIBAVCODEC
|
2002-03-25 22:04:33 +00: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 22:25:58 +00:00
|
|
|
&mpcodecs_ad_msgsm,
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_WIN32DLL
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_dshow,
|
2002-12-01 16:40:05 +00:00
|
|
|
&mpcodecs_ad_dmo,
|
2002-03-25 22:04:33 +00:00
|
|
|
&mpcodecs_ad_acm,
|
2004-12-29 19:51:56 +00:00
|
|
|
&mpcodecs_ad_twin,
|
2002-11-12 00:06:36 +00:00
|
|
|
#endif
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_QTX_CODECS
|
2002-10-31 23:11:34 +00:00
|
|
|
&mpcodecs_ad_qtaudio,
|
2002-03-26 15:53:18 +00:00
|
|
|
#endif
|
2008-08-02 16:30:32 +00:00
|
|
|
#ifdef CONFIG_FAAD
|
2002-04-01 15:26:23 +00:00
|
|
|
&mpcodecs_ad_faad,
|
|
|
|
#endif
|
2008-08-02 16:30:32 +00:00
|
|
|
#ifdef CONFIG_OGGVORBIS
|
2002-08-30 20:06:22 +00:00
|
|
|
&mpcodecs_ad_libvorbis,
|
2002-04-03 20:14:18 +00:00
|
|
|
#endif
|
2008-08-02 16:30:32 +00:00
|
|
|
#ifdef CONFIG_SPEEX
|
2005-11-05 11:58:25 +00:00
|
|
|
&mpcodecs_ad_speex,
|
|
|
|
#endif
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_LIBMAD
|
2002-04-03 20:14:18 +00:00
|
|
|
&mpcodecs_ad_libmad,
|
2002-06-10 01:32:12 +00:00
|
|
|
#endif
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_REALCODECS
|
2002-08-30 20:06:22 +00:00
|
|
|
&mpcodecs_ad_realaud,
|
2002-08-05 17:23:22 +00:00
|
|
|
#endif
|
2008-08-02 16:30:32 +00:00
|
|
|
#ifdef CONFIG_LIBDV095
|
2002-08-05 17:23:22 +00:00
|
|
|
&mpcodecs_ad_libdv,
|
2002-03-25 22:04:33 +00:00
|
|
|
#endif
|
2008-08-02 16:30:32 +00:00
|
|
|
#ifdef CONFIG_MUSEPACK
|
2005-07-10 17:14:12 +00:00
|
|
|
&mpcodecs_ad_libmusepack,
|
2007-07-22 16:24:25 +00:00
|
|
|
#endif
|
2008-07-30 12:01:30 +00:00
|
|
|
#ifdef CONFIG_LIBDCA
|
2007-07-22 16:24:25 +00:00
|
|
|
&mpcodecs_ad_libdca,
|
2005-07-10 17:14:12 +00:00
|
|
|
#endif
|
2002-03-25 22:04:33 +00:00
|
|
|
NULL
|
|
|
|
};
|