diff --git a/libmpcodecs/ad.c b/libmpcodecs/ad.c index e79bf8c25f..93e47b5721 100644 --- a/libmpcodecs/ad.c +++ b/libmpcodecs/ad.c @@ -16,34 +16,34 @@ /* 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_hwmpa; -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; -extern ad_functions_t mpcodecs_ad_dk4adpcm; -extern ad_functions_t mpcodecs_ad_dshow; -extern ad_functions_t mpcodecs_ad_dmo; -extern ad_functions_t mpcodecs_ad_acm; -extern ad_functions_t mpcodecs_ad_msgsm; -extern ad_functions_t mpcodecs_ad_faad; -extern ad_functions_t mpcodecs_ad_libvorbis; -extern ad_functions_t mpcodecs_ad_speex; -extern ad_functions_t mpcodecs_ad_libmad; -extern ad_functions_t mpcodecs_ad_realaud; -extern ad_functions_t mpcodecs_ad_libdv; -extern ad_functions_t mpcodecs_ad_qtaudio; -extern ad_functions_t mpcodecs_ad_twin; -extern ad_functions_t mpcodecs_ad_libmusepack; -extern ad_functions_t mpcodecs_ad_libdca; +extern const ad_functions_t mpcodecs_ad_mp3lib; +extern const ad_functions_t mpcodecs_ad_ffmpeg; +extern const ad_functions_t mpcodecs_ad_liba52; +extern const ad_functions_t mpcodecs_ad_hwac3; +extern const ad_functions_t mpcodecs_ad_hwmpa; +extern const ad_functions_t mpcodecs_ad_pcm; +extern const ad_functions_t mpcodecs_ad_dvdpcm; +extern const ad_functions_t mpcodecs_ad_alaw; +extern const ad_functions_t mpcodecs_ad_imaadpcm; +extern const ad_functions_t mpcodecs_ad_msadpcm; +extern const ad_functions_t mpcodecs_ad_dk3adpcm; +extern const ad_functions_t mpcodecs_ad_dk4adpcm; +extern const ad_functions_t mpcodecs_ad_dshow; +extern const ad_functions_t mpcodecs_ad_dmo; +extern const ad_functions_t mpcodecs_ad_acm; +extern const ad_functions_t mpcodecs_ad_msgsm; +extern const ad_functions_t mpcodecs_ad_faad; +extern const ad_functions_t mpcodecs_ad_libvorbis; +extern const ad_functions_t mpcodecs_ad_speex; +extern const ad_functions_t mpcodecs_ad_libmad; +extern const ad_functions_t mpcodecs_ad_realaud; +extern const ad_functions_t mpcodecs_ad_libdv; +extern const ad_functions_t mpcodecs_ad_qtaudio; +extern const ad_functions_t mpcodecs_ad_twin; +extern const ad_functions_t mpcodecs_ad_libmusepack; +extern const ad_functions_t mpcodecs_ad_libdca; -ad_functions_t* mpcodecs_ad_drivers[] = +const ad_functions_t * const mpcodecs_ad_drivers[] = { // &mpcodecs_ad_null, #ifdef USE_MP3LIB diff --git a/libmpcodecs/ad.h b/libmpcodecs/ad.h index 8063ea994e..a23faa24e7 100644 --- a/libmpcodecs/ad.h +++ b/libmpcodecs/ad.h @@ -9,7 +9,7 @@ typedef mp_codec_info_t ad_info_t; /* interface of video decoder drivers */ typedef struct ad_functions { - ad_info_t *info; + const ad_info_t *info; int (*preinit)(sh_audio_t *sh); int (*init)(sh_audio_t *sh); void (*uninit)(sh_audio_t *sh); @@ -18,7 +18,7 @@ typedef struct ad_functions } ad_functions_t; // NULL terminated array of all drivers -extern ad_functions_t* mpcodecs_ad_drivers[]; +extern const ad_functions_t * const mpcodecs_ad_drivers[]; // fallback if ADCTRL_RESYNC not implemented: sh_audio->a_in_buffer_len=0; #define ADCTRL_RESYNC_STREAM 1 /* resync, called after seeking! */ diff --git a/libmpcodecs/ad_acm.c b/libmpcodecs/ad_acm.c index bd94d5366a..8480da3f2e 100644 --- a/libmpcodecs/ad_acm.c +++ b/libmpcodecs/ad_acm.c @@ -11,7 +11,7 @@ #include "ad_internal.h" #include "osdep/timer.h" -static ad_info_t info = +static const ad_info_t info = { "Win32/ACM decoders", "acm", diff --git a/libmpcodecs/ad_alaw.c b/libmpcodecs/ad_alaw.c index 0085b12f85..61bb7e39ec 100644 --- a/libmpcodecs/ad_alaw.c +++ b/libmpcodecs/ad_alaw.c @@ -5,7 +5,7 @@ #include "config.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "aLaw/uLaw audio decoder", "alaw", diff --git a/libmpcodecs/ad_dk3adpcm.c b/libmpcodecs/ad_dk3adpcm.c index 2e966a1ca5..b4eec81b5f 100644 --- a/libmpcodecs/ad_dk3adpcm.c +++ b/libmpcodecs/ad_dk3adpcm.c @@ -19,7 +19,7 @@ #include "mpbswap.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "Duck Corp. DK3 ADPCM decoder", "dk3adpcm", diff --git a/libmpcodecs/ad_dmo.c b/libmpcodecs/ad_dmo.c index d1133667c3..6b0c2b9ed3 100644 --- a/libmpcodecs/ad_dmo.c +++ b/libmpcodecs/ad_dmo.c @@ -9,7 +9,7 @@ #include "ad_internal.h" #include "libaf/reorder_ch.h" -static ad_info_t info = +static const ad_info_t info = { "Win32/DMO decoders", "dmo", diff --git a/libmpcodecs/ad_dshow.c b/libmpcodecs/ad_dshow.c index 24c34966bc..e9d1c450c3 100644 --- a/libmpcodecs/ad_dshow.c +++ b/libmpcodecs/ad_dshow.c @@ -8,7 +8,7 @@ #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "Win32/DirectShow decoders", "dshow", diff --git a/libmpcodecs/ad_dvdpcm.c b/libmpcodecs/ad_dvdpcm.c index 1962594961..73c265666b 100644 --- a/libmpcodecs/ad_dvdpcm.c +++ b/libmpcodecs/ad_dvdpcm.c @@ -7,7 +7,7 @@ #include "help_mp.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "Uncompressed DVD/VOB LPCM audio decoder", "dvdpcm", diff --git a/libmpcodecs/ad_faad.c b/libmpcodecs/ad_faad.c index 62c7a8965e..b59283f9f4 100644 --- a/libmpcodecs/ad_faad.c +++ b/libmpcodecs/ad_faad.c @@ -12,7 +12,7 @@ #include "ad_internal.h" #include "libaf/reorder_ch.h" -static ad_info_t info = +static const ad_info_t info = { "AAC (MPEG2/4 Advanced Audio Coding)", "faad", diff --git a/libmpcodecs/ad_ffmpeg.c b/libmpcodecs/ad_ffmpeg.c index d569d0835d..2fa06b8ccc 100644 --- a/libmpcodecs/ad_ffmpeg.c +++ b/libmpcodecs/ad_ffmpeg.c @@ -11,7 +11,7 @@ #include "mpbswap.h" -static ad_info_t info = +static const ad_info_t info = { "FFmpeg/libavcodec audio decoders", "ffmpeg", diff --git a/libmpcodecs/ad_hwac3.c b/libmpcodecs/ad_hwac3.c index 34850f2a6a..a1e6dd66eb 100644 --- a/libmpcodecs/ad_hwac3.c +++ b/libmpcodecs/ad_hwac3.c @@ -24,7 +24,7 @@ static int isdts = -1; -static ad_info_t info = +static const ad_info_t info = { "AC3/DTS pass-through S/PDIF", "hwac3", diff --git a/libmpcodecs/ad_hwmpa.c b/libmpcodecs/ad_hwmpa.c index 3b9bdedc8c..e17f994ead 100644 --- a/libmpcodecs/ad_hwmpa.c +++ b/libmpcodecs/ad_hwmpa.c @@ -15,7 +15,7 @@ //based on ad_hwac3.c and ad_libmad.c -static ad_info_t info = +static const ad_info_t info = { "MPEG audio pass-through (fake decoder)", "hwmpa", diff --git a/libmpcodecs/ad_imaadpcm.c b/libmpcodecs/ad_imaadpcm.c index 532eecad43..822914bec0 100644 --- a/libmpcodecs/ad_imaadpcm.c +++ b/libmpcodecs/ad_imaadpcm.c @@ -69,7 +69,7 @@ static int adpcm_index[16] = // sign extend a 4-bit value #define SE_4BIT(x) if (x & 0x8) x -= 0x10; -static ad_info_t info = +static const ad_info_t info = { "IMA ADPCM audio decoder", "imaadpcm", diff --git a/libmpcodecs/ad_internal.h b/libmpcodecs/ad_internal.h index 0bd01bcd6c..4018b57657 100644 --- a/libmpcodecs/ad_internal.h +++ b/libmpcodecs/ad_internal.h @@ -17,7 +17,7 @@ static void uninit(sh_audio_t *sh); static int control(sh_audio_t *sh,int cmd,void* arg, ...); static int decode_audio(sh_audio_t *sh,unsigned char *buffer,int minlen,int maxlen); -#define LIBAD_EXTERN(x) ad_functions_t mpcodecs_ad_##x = {\ +#define LIBAD_EXTERN(x) const ad_functions_t mpcodecs_ad_##x = {\ &info,\ preinit,\ init,\ diff --git a/libmpcodecs/ad_liba52.c b/libmpcodecs/ad_liba52.c index 604ed71c48..6cb7cca612 100644 --- a/libmpcodecs/ad_liba52.c +++ b/libmpcodecs/ad_liba52.c @@ -38,7 +38,7 @@ static sample_t a52_level = 1; float a52_drc_level = 1.0; static int a52_drc_action = DRC_NO_ACTION; -static ad_info_t info = +static const ad_info_t info = { "AC3 decoding with liba52", "liba52", diff --git a/libmpcodecs/ad_libdca.c b/libmpcodecs/ad_libdca.c index 357e4bbb81..a4449edc26 100644 --- a/libmpcodecs/ad_libdca.c +++ b/libmpcodecs/ad_libdca.c @@ -32,7 +32,7 @@ #include -static ad_info_t info = +static const ad_info_t info = { "DTS decoding with libdca", "libdca", diff --git a/libmpcodecs/ad_libdv.c b/libmpcodecs/ad_libdv.c index e0dfbb2166..fdfdf6cc6c 100644 --- a/libmpcodecs/ad_libdv.c +++ b/libmpcodecs/ad_libdv.c @@ -20,7 +20,7 @@ #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "Raw DV Audio Decoder", "libdv", diff --git a/libmpcodecs/ad_libmad.c b/libmpcodecs/ad_libmad.c index 076359a5b6..fb20f2a77f 100644 --- a/libmpcodecs/ad_libmad.c +++ b/libmpcodecs/ad_libmad.c @@ -8,7 +8,7 @@ #include "ad_internal.h" -static ad_info_t info = { +static const ad_info_t info = { "libmad mpeg audio decoder", "libmad", "A'rpi", diff --git a/libmpcodecs/ad_libvorbis.c b/libmpcodecs/ad_libvorbis.c index 900dc87707..d8e4de99c7 100644 --- a/libmpcodecs/ad_libvorbis.c +++ b/libmpcodecs/ad_libvorbis.c @@ -8,7 +8,7 @@ #include "config.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "Ogg/Vorbis audio decoder", "libvorbis", diff --git a/libmpcodecs/ad_mp3lib.c b/libmpcodecs/ad_mp3lib.c index 50c2c3e3eb..5a787b6425 100644 --- a/libmpcodecs/ad_mp3lib.c +++ b/libmpcodecs/ad_mp3lib.c @@ -6,7 +6,7 @@ #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "MPEG layer-2, layer-3", "mp3lib", diff --git a/libmpcodecs/ad_mpc.c b/libmpcodecs/ad_mpc.c index 97ffdfed44..d994951368 100644 --- a/libmpcodecs/ad_mpc.c +++ b/libmpcodecs/ad_mpc.c @@ -16,7 +16,7 @@ #include "libaf/af_format.h" #include "libvo/fastmemcpy.h" -static ad_info_t info = +static const ad_info_t info = { "Musepack audio decoder", "mpcdec", diff --git a/libmpcodecs/ad_msadpcm.c b/libmpcodecs/ad_msadpcm.c index f65caa4e71..72f5b47284 100644 --- a/libmpcodecs/ad_msadpcm.c +++ b/libmpcodecs/ad_msadpcm.c @@ -15,7 +15,7 @@ #include "mpbswap.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "MS ADPCM audio decoder", "msadpcm", diff --git a/libmpcodecs/ad_msgsm.c b/libmpcodecs/ad_msgsm.c index c558595656..de1ea52aa2 100644 --- a/libmpcodecs/ad_msgsm.c +++ b/libmpcodecs/ad_msgsm.c @@ -5,7 +5,7 @@ #include "config.h" #include "ad_internal.h" -static ad_info_t info = +static const ad_info_t info = { "native GSM/MSGSM audio decoder", "msgsm", diff --git a/libmpcodecs/ad_pcm.c b/libmpcodecs/ad_pcm.c index 1717cdd75d..1c2ef53813 100644 --- a/libmpcodecs/ad_pcm.c +++ b/libmpcodecs/ad_pcm.c @@ -7,7 +7,7 @@ #include "libaf/af_format.h" #include "libaf/reorder_ch.h" -static ad_info_t info = +static const ad_info_t info = { "Uncompressed PCM audio decoder", "pcm", diff --git a/libmpcodecs/ad_qtaudio.c b/libmpcodecs/ad_qtaudio.c index 8e65bab0c4..fff29094fb 100644 --- a/libmpcodecs/ad_qtaudio.c +++ b/libmpcodecs/ad_qtaudio.c @@ -20,7 +20,7 @@ #include "loader/ldt_keeper.h" #endif -static ad_info_t info = { +static const ad_info_t info = { "QuickTime Audio Decoder", "qtaudio", "A'rpi", diff --git a/libmpcodecs/ad_realaud.c b/libmpcodecs/ad_realaud.c index e4e94139a5..df1f6715ae 100644 --- a/libmpcodecs/ad_realaud.c +++ b/libmpcodecs/ad_realaud.c @@ -14,7 +14,7 @@ #include "ad_internal.h" #include "loader/wine/windef.h" -static ad_info_t info = { +static const ad_info_t info = { "RealAudio decoder", "realaud", "Alex Beregszaszi", diff --git a/libmpcodecs/ad_sample.c b/libmpcodecs/ad_sample.c index 848152c68e..69d1440987 100644 --- a/libmpcodecs/ad_sample.c +++ b/libmpcodecs/ad_sample.c @@ -7,7 +7,7 @@ #include "config.h" #include "ad_internal.h" -static ad_info_t info = { +static const ad_info_t info = { "Sample audio decoder", // name of the driver "sample", // driver name. should be the same as filename without ad_ "A'rpi", // writer/maintainer of _this_ file diff --git a/libmpcodecs/ad_speex.c b/libmpcodecs/ad_speex.c index c41dfe8e3e..f77b0b7e89 100644 --- a/libmpcodecs/ad_speex.c +++ b/libmpcodecs/ad_speex.c @@ -11,7 +11,7 @@ #include #include "ad_internal.h" -static ad_info_t info = { +static const ad_info_t info ={ "Speex audio decoder", "speex", "Reimar Döffinger", diff --git a/libmpcodecs/ad_twin.c b/libmpcodecs/ad_twin.c index 069e194735..bd26531ae4 100644 --- a/libmpcodecs/ad_twin.c +++ b/libmpcodecs/ad_twin.c @@ -11,7 +11,7 @@ #include "help_mp.h" -static ad_info_t info = +static const ad_info_t info = { "TWinVQ decoder", "vqf",