Mercurial > mplayer.hg
annotate libmpcodecs/ad.c @ 15978:c8dc500e078e
memcpy and memmove both copy memory, but when using memcpy the source and destination must not overlap, but here, they did overlap.
Committed with the kind blessing of Richard, patch by uau
author | gpoirier |
---|---|
date | Fri, 15 Jul 2005 22:09:30 +0000 |
parents | 087142ef3a2d |
children | 6b1d1e4adaea |
rev | line source |
---|---|
5344 | 1 /* |
2 ad.c - audio decoder interface | |
3 */ | |
4 | |
5 #include <stdio.h> | |
6 #include <stdlib.h> | |
7 #include <string.h> | |
8 | |
9 #include "config.h" | |
10 | |
11 #include "stream.h" | |
12 #include "demuxer.h" | |
13 #include "stheader.h" | |
14 #include "ad.h" | |
15 | |
16 /* Missed vorbis, mad, dshow */ | |
17 | |
18 //extern ad_functions_t mpcodecs_ad_null; | |
19 extern ad_functions_t mpcodecs_ad_mp3lib; | |
20 extern ad_functions_t mpcodecs_ad_ffmpeg; | |
21 extern ad_functions_t mpcodecs_ad_liba52; | |
22 extern ad_functions_t mpcodecs_ad_hwac3; | |
23 extern ad_functions_t mpcodecs_ad_pcm; | |
24 extern ad_functions_t mpcodecs_ad_dvdpcm; | |
25 extern ad_functions_t mpcodecs_ad_alaw; | |
26 extern ad_functions_t mpcodecs_ad_imaadpcm; | |
27 extern ad_functions_t mpcodecs_ad_msadpcm; | |
28 extern ad_functions_t mpcodecs_ad_dk3adpcm; | |
5519 | 29 extern ad_functions_t mpcodecs_ad_dk4adpcm; |
5344 | 30 extern ad_functions_t mpcodecs_ad_dshow; |
8326 | 31 extern ad_functions_t mpcodecs_ad_dmo; |
5344 | 32 extern ad_functions_t mpcodecs_ad_acm; |
5345 | 33 extern ad_functions_t mpcodecs_ad_msgsm; |
5356
739cad21c32c
Port dec_audio.c faad aac decoder to libmpcodecs, cleaned up code, improved buffering scheme.
atmos4
parents:
5345
diff
changeset
|
34 extern ad_functions_t mpcodecs_ad_faad; |
7174 | 35 extern ad_functions_t mpcodecs_ad_libvorbis; |
5479
22b289d7f87f
libmad support, rewritten from scratch using Xine decoder as sample
arpi
parents:
5454
diff
changeset
|
36 extern ad_functions_t mpcodecs_ad_libmad; |
7174 | 37 extern ad_functions_t mpcodecs_ad_realaud; |
6927 | 38 extern ad_functions_t mpcodecs_ad_libdv; |
8008 | 39 extern ad_functions_t mpcodecs_ad_qtaudio; |
10261
05a50c0ce239
RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders.
rtognimp
parents:
9502
diff
changeset
|
40 extern ad_functions_t mpcodecs_ad_ra1428; |
14276 | 41 extern ad_functions_t mpcodecs_ad_twin; |
15958
087142ef3a2d
musepack demuxing and decoding support (demuxing is v7 bitstream only).
reimar
parents:
14276
diff
changeset
|
42 extern ad_functions_t mpcodecs_ad_libmusepack; |
5344 | 43 |
44 ad_functions_t* mpcodecs_ad_drivers[] = | |
45 { | |
46 // &mpcodecs_ad_null, | |
8026
b465ba5897a3
usage of libmpeg2, liba52, mp3lib & svq1 can be disabled
arpi
parents:
8008
diff
changeset
|
47 #ifdef USE_MP3LIB |
5344 | 48 &mpcodecs_ad_mp3lib, |
8026
b465ba5897a3
usage of libmpeg2, liba52, mp3lib & svq1 can be disabled
arpi
parents:
8008
diff
changeset
|
49 #endif |
b465ba5897a3
usage of libmpeg2, liba52, mp3lib & svq1 can be disabled
arpi
parents:
8008
diff
changeset
|
50 #ifdef USE_LIBA52 |
5344 | 51 &mpcodecs_ad_liba52, |
52 &mpcodecs_ad_hwac3, | |
8026
b465ba5897a3
usage of libmpeg2, liba52, mp3lib & svq1 can be disabled
arpi
parents:
8008
diff
changeset
|
53 #endif |
5344 | 54 #ifdef USE_LIBAVCODEC |
55 &mpcodecs_ad_ffmpeg, | |
56 #endif | |
57 &mpcodecs_ad_pcm, | |
58 &mpcodecs_ad_dvdpcm, | |
59 &mpcodecs_ad_alaw, | |
60 &mpcodecs_ad_imaadpcm, | |
61 &mpcodecs_ad_msadpcm, | |
62 &mpcodecs_ad_dk3adpcm, | |
5345 | 63 &mpcodecs_ad_msgsm, |
5344 | 64 #ifdef USE_WIN32DLL |
65 #ifdef USE_DIRECTSHOW | |
66 &mpcodecs_ad_dshow, | |
8326 | 67 &mpcodecs_ad_dmo, |
5344 | 68 #endif |
69 &mpcodecs_ad_acm, | |
14276 | 70 &mpcodecs_ad_twin, |
8160 | 71 #endif |
9502
241bba8f60e8
MACOSX support patch, based on Dan Christiansens work
alex
parents:
8326
diff
changeset
|
72 #if defined(USE_QTX_CODECS) || defined(MACOSX) |
8008 | 73 &mpcodecs_ad_qtaudio, |
5344 | 74 #endif |
5356
739cad21c32c
Port dec_audio.c faad aac decoder to libmpcodecs, cleaned up code, improved buffering scheme.
atmos4
parents:
5345
diff
changeset
|
75 #ifdef HAVE_FAAD |
5454 | 76 &mpcodecs_ad_faad, |
77 #endif | |
78 #ifdef HAVE_OGGVORBIS | |
7174 | 79 &mpcodecs_ad_libvorbis, |
5356
739cad21c32c
Port dec_audio.c faad aac decoder to libmpcodecs, cleaned up code, improved buffering scheme.
atmos4
parents:
5345
diff
changeset
|
80 #endif |
5479
22b289d7f87f
libmad support, rewritten from scratch using Xine decoder as sample
arpi
parents:
5454
diff
changeset
|
81 #ifdef USE_LIBMAD |
22b289d7f87f
libmad support, rewritten from scratch using Xine decoder as sample
arpi
parents:
5454
diff
changeset
|
82 &mpcodecs_ad_libmad, |
22b289d7f87f
libmad support, rewritten from scratch using Xine decoder as sample
arpi
parents:
5454
diff
changeset
|
83 #endif |
6367 | 84 #ifdef USE_REALCODECS |
7174 | 85 &mpcodecs_ad_realaud, |
6367 | 86 #endif |
6927 | 87 #ifdef HAVE_LIBDV095 |
88 &mpcodecs_ad_libdv, | |
89 #endif | |
10261
05a50c0ce239
RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders.
rtognimp
parents:
9502
diff
changeset
|
90 &mpcodecs_ad_ra1428, |
15958
087142ef3a2d
musepack demuxing and decoding support (demuxing is v7 bitstream only).
reimar
parents:
14276
diff
changeset
|
91 #ifdef HAVE_MUSEPACK |
087142ef3a2d
musepack demuxing and decoding support (demuxing is v7 bitstream only).
reimar
parents:
14276
diff
changeset
|
92 &mpcodecs_ad_libmusepack, |
087142ef3a2d
musepack demuxing and decoding support (demuxing is v7 bitstream only).
reimar
parents:
14276
diff
changeset
|
93 #endif |
5344 | 94 NULL |
95 }; |