static gboolean xmms_vorbis_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_vorbis_init; methods.destroy = xmms_vorbis_destroy; methods.read = xmms_vorbis_read; methods.seek = xmms_vorbis_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_mapper_init (xform_plugin, basic_mappings, G_N_ELEMENTS (basic_mappings), mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/ogg", NULL); xmms_magic_add ("ogg/vorbis header", "application/ogg", "0 string OggS", ">4 byte 0", ">>28 string \x01vorbis", NULL); xmms_magic_extension_add ("application/ogg", "*.ogg"); return TRUE; }
static gboolean xmms_samba_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; gint err; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_samba_init; methods.destroy = xmms_samba_destroy; methods.read = xmms_samba_read; methods.seek = xmms_samba_seek; methods.browse = xmms_samba_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "smb://*", XMMS_STREAM_TYPE_END); g_static_mutex_lock (&mutex); err = smbc_init (xmms_samba_auth_fn, 0); g_static_mutex_unlock (&mutex); if (err < 0) { xmms_log_error ("%s", strerror (errno)); return FALSE; } return TRUE; }
static gboolean xmms_faad_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_faad_init; methods.destroy = xmms_faad_destroy; methods.read = xmms_faad_read; methods.seek = xmms_faad_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/aac", NULL); xmms_magic_add ("mpeg aac header", "audio/aac", "0 beshort&0xfff6 0xfff0", NULL); xmms_magic_add ("adif header", "audio/aac", "0 string ADIF", NULL); return TRUE; }
static gboolean xmms_cdda_plugin_setup (xmms_xform_plugin_t *xform_plugin) { const gchar *device; xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_cdda_init; methods.destroy = xmms_cdda_destroy; methods.read = xmms_cdda_read; methods.seek = xmms_cdda_seek; methods.browse = xmms_cdda_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "cdda://*", XMMS_STREAM_TYPE_END); device = cdio_get_default_device (NULL); if (!device) { device = ""; } xmms_xform_plugin_config_property_register (xform_plugin, "device", device, NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "accessmode", "default", NULL, NULL); return TRUE; }
static gboolean xmms_speex_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_speex_init; methods.destroy = xmms_speex_destroy; methods.read = xmms_speex_read; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-speex", NULL); xmms_magic_add ("ogg/speex header", "audio/x-speex", "0 string OggS", ">4 byte 0", ">>28 string Speex ", NULL); xmms_magic_extension_add ("audio/x-speex", "*.spx"); xmms_xform_plugin_config_property_register (xform_plugin, "perceptual_enhancer", "1", NULL, NULL); return TRUE; }
/* * Plugin header */ static gboolean xmms_mpc_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_mpc_init; methods.destroy = xmms_mpc_destroy; methods.read = xmms_mpc_read; methods.seek = xmms_mpc_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-mpc", NULL); xmms_magic_add ("mpc header", "audio/x-mpc", "0 string MP+", NULL); #ifndef HAVE_MPCDEC_OLD /* The old API doesn't support sv8 bitstream, so we add it only for the * new version */ xmms_magic_add ("mpc header", "audio/x-mpc", "0 string MPCK", NULL); #endif return TRUE; }
static gboolean xmms_opus_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_opus_init; methods.destroy = xmms_opus_destroy; methods.read = xmms_opus_read; methods.seek = xmms_opus_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_mapper_init (xform_plugin, basic_mappings, G_N_ELEMENTS (basic_mappings), mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/ogg; codecs=opus", NULL); xmms_magic_add ("Opus header", "audio/ogg; codecs=opus", "0 string OggS", ">28 string OpusHead", NULL); xmms_magic_extension_add ("audio/ogg; codecs=opus", "*.opus"); return TRUE; }
static gboolean xmms_flac_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_flac_init; methods.destroy = xmms_flac_destroy; methods.read = xmms_flac_read; methods.seek = xmms_flac_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_basic_mapper_init (xform_plugin, mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-flac", NULL); xmms_magic_add ("flac header", "audio/x-flac", "0 string fLaC", NULL); return TRUE; }
static gboolean xmms_midsquash_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_midsquash_init; methods.destroy = xmms_midsquash_destroy; methods.read = xmms_midsquash_read; methods.seek = xmms_midsquash_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); /* xmms_plugin_info_add (plugin, "URL", "http://www.xmms2.org/"); xmms_plugin_info_add (plugin, "Author", "Adam Nielsen <*****@*****.**>"); xmms_plugin_info_add (plugin, "License", "LGPL"); */ xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/miditracks", NULL); return TRUE; }
static gboolean xmms_converter_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_converter_plugin_init; methods.destroy = xmms_converter_plugin_destroy; methods.read = xmms_converter_plugin_read; methods.seek = xmms_converter_plugin_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); /* * Handle any pcm data... * Well, we don't really.. */ xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_PRIORITY, 100, XMMS_STREAM_TYPE_NAME, "generic-pcmdata", XMMS_STREAM_TYPE_END); converter_plugin = xform_plugin; return TRUE; }
static gboolean xmms_metadata_test_xform_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_metadata_test_xform_init; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_mapper_init (xform_plugin, basic_mappings, G_N_ELEMENTS (basic_mappings), mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "metadatatest://*", XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_ofa_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_ofa_init; methods.destroy = xmms_ofa_destroy; methods.read = xmms_ofa_read; methods.seek = xmms_ofa_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_FMT_FORMAT, XMMS_SAMPLE_FORMAT_S16, XMMS_STREAM_TYPE_FMT_CHANNELS, 2, XMMS_STREAM_TYPE_FMT_SAMPLERATE, 44100, XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_normalize_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; unsigned i; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_normalize_init; methods.destroy = xmms_normalize_destroy; methods.read = xmms_normalize_read; methods.seek = xmms_xform_seek; /* we're not using this */ xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_FMT_FORMAT, XMMS_SAMPLE_FORMAT_S16, XMMS_STREAM_TYPE_END); for (i = 0; i < G_N_ELEMENTS (config_params); i++) { xmms_xform_plugin_config_property_register (xform_plugin, config_params[i].key, config_params[i].value, NULL, NULL); } return TRUE; }
static gboolean xmms_wave_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_wave_init; methods.destroy = xmms_wave_destroy; methods.read = xmms_wave_read; methods.seek = xmms_wave_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-wav", NULL); xmms_magic_add ("wave header", "audio/x-wav", "0 string RIFF", ">8 string WAVE", ">>12 string fmt ", NULL); return TRUE; }
static gboolean xmms_daap_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_daap_init; methods.destroy = xmms_daap_destroy; methods.read = xmms_daap_read; methods.browse = xmms_daap_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "daap://*", XMMS_STREAM_TYPE_END); if (!daap_mdns_setup ()) { return FALSE; } if (!login_sessions) { login_sessions = g_hash_table_new (g_str_hash, g_str_equal); } return TRUE; }
static gboolean xmms_vocoder_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_vocoder_init; methods.destroy = xmms_vocoder_destroy; methods.read = xmms_vocoder_read; methods.seek = xmms_vocoder_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_config_property_register (xform_plugin, "speed", "100", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "pitch", "100", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "attack_detection", "0", NULL, NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_FMT_FORMAT, XMMS_SAMPLE_FORMAT_S16, XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_wavpack_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_wavpack_init; methods.destroy = xmms_wavpack_destroy; methods.read = xmms_wavpack_read; methods.seek = xmms_wavpack_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_mapper_init (xform_plugin, basic_mappings, G_N_ELEMENTS (basic_mappings), mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-wavpack", NULL); xmms_magic_add ("wavpack header v4", "audio/x-wavpack", "0 string wvpk", NULL); xmms_magic_extension_add ("audio/x-wavpack", "*.wv"); return TRUE; }
static gboolean xmms_mid1_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_mid1_init; methods.destroy = xmms_mid1_destroy; methods.read = xmms_mid1_read; methods.seek = xmms_mid1_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); /* xmms_plugin_info_add (plugin, "URL", "http://www.xmms2.org/"); xmms_plugin_info_add (plugin, "Author", "Adam Nielsen <*****@*****.**>"); xmms_plugin_info_add (plugin, "License", "LGPL"); */ xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/mid-0", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/mid-1", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/riffmidi", NULL); xmms_magic_add ("Standard MIDI file (format-0)", "audio/mid-0", "0 string MThd", ">8 beshort 0", NULL); xmms_magic_add ("Standard MIDI file (format-1)", "audio/mid-1", "0 string MThd", ">8 beshort 1", NULL); xmms_magic_add ("Microsoft RIFF MIDI file", "audio/riffmidi", "0 string RIFF", ">8 string RMID", NULL); return TRUE; }
static gboolean xmms_mp4_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_mp4_init; methods.destroy = xmms_mp4_destroy; methods.read = xmms_mp4_read; methods.seek = xmms_mp4_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_metadata_mapper_init (xform_plugin, basic_mappings, G_N_ELEMENTS (basic_mappings), mappings, G_N_ELEMENTS (mappings)); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "video/mp4", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/mp4", NULL); xmms_magic_add ("mpeg-4 header", "video/mp4", "4 string ftyp", ">8 string isom", ">8 string mp41", ">8 string mp42", NULL); xmms_magic_add ("iTunes header", "audio/mp4", "4 string ftyp", ">8 string M4A ", NULL); return TRUE; }
static gboolean xmms_samba_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; gint err; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_samba_init; methods.destroy = xmms_samba_destroy; methods.read = xmms_samba_read; methods.seek = xmms_samba_seek; methods.browse = xmms_samba_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "smb://*", XMMS_STREAM_TYPE_END); G_LOCK (mutex); if (smbc_set_context (NULL) == NULL) { /* This should really be cleaned up when the program closes. * However, given that we have no means of doing so, we're * just going to forget that we ever created it and let the OS * clean up after us. */ SMBCCTX *ctx = smbc_new_context (); if (ctx == NULL) { xmms_log_error ("Failed to create SMBCCTX.", NULL); return FALSE; } if (smbc_init_context (ctx) == NULL) { xmms_log_error ("Failed to init SMBCCTX.", NULL); smbc_free_context (ctx, 1); return FALSE; } smbc_setOptionUseKerberos (ctx, TRUE); smbc_setOptionFallbackAfterKerberos (ctx, TRUE); smbc_set_context (ctx); } err = smbc_init (xmms_samba_auth_fn, 0); G_UNLOCK (mutex); if (err < 0) { xmms_log_error ("%s", strerror (errno)); return FALSE; } return TRUE; }
static gboolean xmms_mpg123_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; int result; result = mpg123_init (); if (result != MPG123_OK) { return FALSE; } XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_mpg123_init; methods.destroy = xmms_mpg123_destroy; methods.read = xmms_mpg123_read; methods.seek = xmms_mpg123_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_config_property_register (xform_plugin, "id3v1_encoding", "ISO8859-1", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "id3v1_enable", "1", NULL, NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/mpeg", XMMS_STREAM_TYPE_PRIORITY, 40, XMMS_STREAM_TYPE_END); /* Well, I usually only see mp3 and mp2 ... layer 1 files * are quite rare. */ xmms_magic_extension_add ("audio/mpeg", "*.mp3"); xmms_magic_extension_add ("audio/mpeg", "*.mp2"); xmms_magic_extension_add ("audio/mpeg", "*.mp1"); /* That's copied from the mad xform. */ xmms_magic_add ("mpeg header", "audio/mpeg", "0 beshort&0xfff6 0xfff6", "0 beshort&0xfff6 0xfff4", "0 beshort&0xffe6 0xffe2", NULL); return TRUE; }
static gboolean xmms_html_setup (xmms_xform_plugin_t *xform) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_html_init; methods.browse = xmms_html_browse; xmms_xform_plugin_methods_set (xform, &methods); xmms_xform_plugin_indata_add (xform, XMMS_STREAM_TYPE_MIMETYPE, "text/html", NULL); xmms_xform_plugin_indata_add (xform, XMMS_STREAM_TYPE_MIMETYPE, "application/x-xmms2-xml+html", NULL); xmms_magic_extension_add ("text/html", "*.html"); xmms_magic_extension_add ("text/html", "*.xhtml"); xmms_magic_add ("html doctype", "text/html", "0 string/c <!DOCTYPE HTML ", NULL); xmms_magic_add ("html tag", "text/html", "0 string/c <html ", NULL); xmms_magic_add ("html header tag", "text/html", "0 string/c <head ", NULL); return TRUE; }
static gboolean xmms_icymetaint_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_icymetaint_init; methods.destroy = xmms_icymetaint_destroy; methods.read = xmms_icymetaint_read; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-icy-stream", XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_sid_plugin_setup (xmms_xform_plugin_t *xform_plugin) { /* xmms_plugin_info_add (plugin, "URL", "http://xmms2.org/"); xmms_plugin_info_add (plugin, "URL", "http://sidplay2.sourceforge.net/"); xmms_plugin_info_add (plugin, "URL", "http://www.geocities.com/SiliconValley/Lakes/5147/resid/"); xmms_plugin_info_add (plugin, "Author", "XMMS Team"); */ xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_sid_init; methods.destroy = xmms_sid_destroy; methods.read = xmms_sid_read; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/prs.sid", NULL); /* Can only fastforward SIDs, not rewind */ /* xmms_plugin_properties_add (plugin, XMMS_PLUGIN_PROPERTY_FAST_FWD); xmms_plugin_properties_add (plugin, XMMS_PLUGIN_PROPERTY_SUBTUNES); */ xmms_magic_add ("sidplay infofile", "audio/prs.sid", "0 string SIDPLAY INFOFILE", NULL); xmms_magic_add ("psid header", "audio/prs.sid", "0 string PSID", NULL); xmms_magic_add ("rsid header", "audio/prs.sid", "0 string RSID", NULL); xmms_xform_plugin_config_property_register (xform_plugin, "songlength_path", "", NULL, NULL); return TRUE; }
static gboolean xmms_magic_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_magic_plugin_init; methods.read = xmms_xform_read; methods.seek = xmms_xform_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/octet-stream", XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_browse_test_xform_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_test_browse_init; methods.browse = xmms_test_browse_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_PRIORITY, 0, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, "file://*", XMMS_STREAM_TYPE_END); return TRUE; }
static gboolean xmms_rss_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_rss_init; methods.browse = xmms_rss_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-xmms2-xml+rss", NULL); xmms_magic_extension_add ("application/xml", "*.rss"); return TRUE; }
static gboolean xmms_mad_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_mad_init; methods.destroy = xmms_mad_destroy; methods.read = xmms_mad_read; methods.seek = xmms_mad_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); /* xmms_plugin_info_add (plugin, "URL", "http://xmms2.org/"); xmms_plugin_info_add (plugin, "Author", "XMMS Team"); xmms_plugin_info_add (plugin, "License", "GPL"); */ xmms_xform_plugin_config_property_register (xform_plugin, "id3v1_encoding", "ISO8859-1", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "id3v1_enable", "1", NULL, NULL); /* xmms_xform_indata_constraint_add */ xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/mpeg", NULL); xmms_magic_add ("mpeg header", "audio/mpeg", "0 beshort&0xfff6 0xfff6", "0 beshort&0xfff6 0xfff4", "0 beshort&0xffe6 0xffe2", NULL); xmms_magic_extension_add ("audio/mpeg", "*.mp3"); return TRUE; }
static gboolean xmms_asf_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_asf_init; methods.destroy = xmms_asf_destroy; methods.read = xmms_asf_read; methods.seek = xmms_asf_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "video/x-ms-asf", NULL); xmms_magic_add ("asf header", "video/x-ms-asf", "0 belong 0x3026b275", NULL); return TRUE; }
static gboolean xmms_replaygain_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; gint i; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_replaygain_init; methods.destroy = xmms_replaygain_destroy; methods.read = xmms_replaygain_read; methods.seek = xmms_replaygain_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); for (i = 0; i < G_N_ELEMENTS (formats); i++) { xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_FMT_FORMAT, formats[i], XMMS_STREAM_TYPE_END); } xmms_xform_plugin_config_property_register (xform_plugin, "mode", "track", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "use_anticlip", "1", NULL, NULL); xmms_xform_plugin_config_property_register (xform_plugin, "preamp", "6.0", NULL, NULL); return TRUE; }