2008-05-18 19:17:49 +02:00
|
|
|
#include <audacious/util.h>
|
|
|
|
|
|
|
|
void vgmstream_init();
|
|
|
|
void vgmstream_about();
|
|
|
|
void vgmstream_configure();
|
|
|
|
void vgmstream_destroy();
|
|
|
|
gboolean vgmstream_is_our_file(gchar *pFile);
|
|
|
|
void vgmstream_play(InputPlayback *context);
|
|
|
|
void vgmstream_stop(InputPlayback *context);
|
|
|
|
void vgmstream_pause(InputPlayback *context,gshort paused);
|
|
|
|
void vgmstream_seek(InputPlayback *context,gint time);
|
|
|
|
int vgmstream_get_time(InputPlayback *context);
|
|
|
|
void vgmstream_get_song_info(gchar *pFile,gchar **title,gint *length);
|
|
|
|
void vgmstream_mseek(InputPlayback *context,gulong ms);
|
|
|
|
void vgmstream_file_info_box(gchar *pFile);
|
|
|
|
|
|
|
|
gchar *vgmstream_exts [] = {
|
2009-09-05 16:17:33 +02:00
|
|
|
"2dx",
|
|
|
|
|
|
|
|
"aax",
|
|
|
|
"acm",
|
|
|
|
"adp",
|
|
|
|
"adpcm",
|
|
|
|
"ads",
|
2008-05-18 19:17:49 +02:00
|
|
|
"adx",
|
|
|
|
"afc",
|
|
|
|
"agsc",
|
2009-09-05 16:17:33 +02:00
|
|
|
"ahx",
|
|
|
|
"aifc",
|
|
|
|
"aix",
|
|
|
|
"amts",
|
|
|
|
"as4",
|
|
|
|
"asd",
|
|
|
|
"asf",
|
|
|
|
"asr",
|
|
|
|
"ass",
|
2008-05-18 19:17:49 +02:00
|
|
|
"ast",
|
2009-09-05 16:17:33 +02:00
|
|
|
"aud",
|
|
|
|
"aus",
|
|
|
|
|
|
|
|
"baka",
|
|
|
|
"bg00",
|
|
|
|
"bgw",
|
|
|
|
"bh2pcm",
|
|
|
|
"bmdx",
|
|
|
|
"bns",
|
2008-05-18 19:17:49 +02:00
|
|
|
"brstm",
|
2008-05-27 04:34:21 +02:00
|
|
|
"brstmspm",
|
2009-09-05 16:17:33 +02:00
|
|
|
|
|
|
|
"caf",
|
2010-02-02 22:25:44 +01:00
|
|
|
"capdsp",
|
2009-09-05 16:17:33 +02:00
|
|
|
"ccc",
|
|
|
|
"cfn",
|
|
|
|
"cnk",
|
|
|
|
|
|
|
|
"dcs",
|
|
|
|
"de2",
|
2008-05-18 19:17:49 +02:00
|
|
|
"dsp",
|
2009-09-05 16:17:33 +02:00
|
|
|
"dtk",
|
|
|
|
"dvi",
|
|
|
|
"dxh",
|
|
|
|
|
|
|
|
"eam",
|
|
|
|
"emff",
|
|
|
|
"enth",
|
|
|
|
|
|
|
|
"fag",
|
|
|
|
"filp",
|
|
|
|
"fsb",
|
|
|
|
|
|
|
|
"gbts",
|
|
|
|
"gca",
|
|
|
|
"gcm",
|
|
|
|
"gcub",
|
2008-05-18 19:17:49 +02:00
|
|
|
"gcw",
|
2009-09-05 16:17:33 +02:00
|
|
|
"genh",
|
|
|
|
"gms",
|
|
|
|
"gsb",
|
|
|
|
|
|
|
|
"hgc1",
|
2010-01-19 20:40:41 +01:00
|
|
|
"his",
|
|
|
|
"hlwav",
|
2009-09-05 16:17:33 +02:00
|
|
|
"hps",
|
|
|
|
"hwas",
|
|
|
|
|
|
|
|
"idsp",
|
|
|
|
"idvi",
|
|
|
|
"ikm",
|
|
|
|
"ild",
|
2008-05-18 19:17:49 +02:00
|
|
|
"int",
|
2009-09-05 16:17:33 +02:00
|
|
|
"isd",
|
|
|
|
"ivaud",
|
|
|
|
"ivb",
|
|
|
|
|
|
|
|
"joe",
|
|
|
|
|
|
|
|
"kces",
|
|
|
|
"kcey",
|
|
|
|
"kraw",
|
|
|
|
|
|
|
|
"leg",
|
|
|
|
"logg",
|
|
|
|
"lps",
|
|
|
|
"lwav",
|
|
|
|
|
|
|
|
"matx",
|
|
|
|
"mcg",
|
2008-05-18 19:17:49 +02:00
|
|
|
"mi4",
|
2009-09-05 16:17:33 +02:00
|
|
|
"mib",
|
2008-05-18 19:17:49 +02:00
|
|
|
"mic",
|
2009-09-05 16:17:33 +02:00
|
|
|
"mihb",
|
|
|
|
"mpdsp",
|
2008-05-18 19:17:49 +02:00
|
|
|
"mss",
|
2009-09-05 16:17:33 +02:00
|
|
|
"msvp",
|
|
|
|
"mus",
|
2008-07-16 05:21:37 +02:00
|
|
|
"musc",
|
2008-07-17 03:47:08 +02:00
|
|
|
"musx",
|
2009-09-05 16:17:33 +02:00
|
|
|
"mwv",
|
|
|
|
"mxst",
|
2010-01-10 22:22:20 +01:00
|
|
|
"myspd",
|
2009-09-05 16:17:33 +02:00
|
|
|
|
|
|
|
"ndp",
|
|
|
|
"npsf",
|
|
|
|
"nwa",
|
|
|
|
|
|
|
|
"omu",
|
|
|
|
|
|
|
|
"p2bt",
|
2008-08-01 05:27:20 +02:00
|
|
|
"pcm",
|
2009-09-05 16:17:33 +02:00
|
|
|
"pdt",
|
|
|
|
"pnb",
|
|
|
|
"pos",
|
2009-11-22 15:06:45 +01:00
|
|
|
"ps2stm",
|
2009-09-05 16:17:33 +02:00
|
|
|
"psh",
|
2008-08-01 05:27:20 +02:00
|
|
|
"psw",
|
2009-09-05 16:17:33 +02:00
|
|
|
|
|
|
|
"raw",
|
|
|
|
"rkv",
|
|
|
|
"rnd",
|
|
|
|
"rrds",
|
|
|
|
"rsd",
|
|
|
|
"rsf",
|
|
|
|
"rstm",
|
|
|
|
"rwar",
|
|
|
|
"rwav",
|
|
|
|
"rws",
|
|
|
|
"rwsd",
|
|
|
|
"rwx",
|
|
|
|
"rxw",
|
|
|
|
|
|
|
|
"sab",
|
|
|
|
"sad",
|
|
|
|
"sap",
|
|
|
|
"sc",
|
|
|
|
"sck",
|
|
|
|
"sd9",
|
2008-08-01 05:27:20 +02:00
|
|
|
"sdt",
|
2009-09-05 16:17:33 +02:00
|
|
|
"seg",
|
|
|
|
"sfl",
|
2008-08-10 06:39:55 +02:00
|
|
|
"sfs",
|
2009-09-05 16:17:33 +02:00
|
|
|
"sl3",
|
|
|
|
"sli",
|
|
|
|
"smp",
|
|
|
|
"snd",
|
|
|
|
"sng",
|
|
|
|
"spd",
|
|
|
|
"sps",
|
2008-11-02 22:35:11 +01:00
|
|
|
"spsd",
|
2008-11-07 02:47:39 +01:00
|
|
|
"spw",
|
2009-09-05 16:17:33 +02:00
|
|
|
"ss2",
|
|
|
|
"ss3",
|
|
|
|
"ss7"
|
|
|
|
"ssm",
|
|
|
|
"stma",
|
|
|
|
"str",
|
|
|
|
"strm",
|
|
|
|
"sts",
|
2009-11-18 01:46:36 +01:00
|
|
|
"stx",
|
2009-09-05 16:17:33 +02:00
|
|
|
"svag",
|
|
|
|
"svs",
|
|
|
|
"swav",
|
|
|
|
"swd",
|
|
|
|
|
|
|
|
"tec",
|
|
|
|
"thp",
|
|
|
|
"tk5",
|
|
|
|
"tydsp",
|
|
|
|
|
|
|
|
"um3",
|
|
|
|
|
|
|
|
"vag",
|
|
|
|
"vas",
|
|
|
|
"vb",
|
|
|
|
"vgs",
|
|
|
|
"vig",
|
|
|
|
"vpk",
|
|
|
|
"vs",
|
|
|
|
"vsf",
|
|
|
|
"vgv",
|
|
|
|
|
2008-11-23 13:43:41 +01:00
|
|
|
"waa",
|
|
|
|
"wac",
|
|
|
|
"wad",
|
|
|
|
"wam",
|
2009-09-05 16:17:33 +02:00
|
|
|
"wavm",
|
|
|
|
"wii",
|
|
|
|
"wp2",
|
|
|
|
"wsd",
|
|
|
|
"wsi",
|
|
|
|
"wvs",
|
|
|
|
|
|
|
|
"xa",
|
|
|
|
"xa2",
|
|
|
|
"xa30",
|
|
|
|
"xmu",
|
|
|
|
"xsf",
|
|
|
|
"xss",
|
|
|
|
"xvas",
|
|
|
|
"xwav",
|
|
|
|
"xwb",
|
|
|
|
|
2008-12-12 00:32:47 +01:00
|
|
|
"ydsp",
|
2009-09-05 16:17:33 +02:00
|
|
|
"ymf",
|
|
|
|
|
2009-03-13 00:42:56 +01:00
|
|
|
"zsd",
|
2009-09-05 16:17:33 +02:00
|
|
|
"zwdsp",
|
2008-05-18 19:17:49 +02:00
|
|
|
/* terminator */
|
|
|
|
NULL
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
InputPlugin vgmstream_iplug = {
|
|
|
|
.description = "VGMStream Decoder",
|
|
|
|
.init = vgmstream_init,
|
|
|
|
.about = vgmstream_about,
|
|
|
|
.configure = vgmstream_configure,
|
|
|
|
.cleanup = vgmstream_destroy,
|
|
|
|
.is_our_file = vgmstream_is_our_file,
|
|
|
|
.play_file = vgmstream_play,
|
|
|
|
.stop = vgmstream_stop,
|
|
|
|
.pause = vgmstream_pause,
|
|
|
|
.seek = vgmstream_seek,
|
|
|
|
.get_time = vgmstream_get_time,
|
|
|
|
.get_song_info = vgmstream_get_song_info,
|
|
|
|
.vfs_extensions = vgmstream_exts,
|
|
|
|
.mseek = vgmstream_mseek,
|
|
|
|
.file_info_box = vgmstream_file_info_box,
|
|
|
|
};
|
|
|
|
|
|
|
|
|