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_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-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_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; }
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_ringbuf_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_ringbuf_plugin_init; methods.destroy = xmms_ringbuf_plugin_destroy; methods.read = xmms_ringbuf_plugin_read; methods.seek = xmms_ringbuf_plugin_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_config_property_register (xform_plugin, "buffersize", "1048576", NULL, NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/pcm", XMMS_STREAM_TYPE_END); ringbuf_plugin = xform_plugin; 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_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_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/x-ms-asf", XMMS_STREAM_TYPE_END); xmms_magic_add ("asf header", "video/x-ms-asf", "0 belong 0x3026b275", NULL); return TRUE; }
static gboolean xmms_asx_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.browse = xmms_asx_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-asx-playlist", XMMS_STREAM_TYPE_END); xmms_xform_plugin_set_out_stream_type (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/x-xmms2-playlist-entries", XMMS_STREAM_TYPE_END); xmms_magic_extension_add ("application/x-asx-playlist", "*.asx"); xmms_magic_add ("ASX header", "application/x-asx-playlist", "0 string/c <asx version=\"3.0\">", NULL); return TRUE; }
static gboolean xmms_xml_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_xml_init; methods.read = xmms_xml_read; methods.seek = xmms_xml_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/xml", NULL); xmms_magic_add ("xml header", "application/xml", "0 string <?xml", NULL); xmms_magic_add ("xml header", "application/xml", "0 string \xef\xbb\xbf<?xml", 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_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_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_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_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_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_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_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_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_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_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_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; }
gboolean xmms_id3v2_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_id3v2_init; methods.destroy = xmms_id3v2_destroy; methods.read = xmms_xform_read; methods.seek = xmms_id3v2_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); /* xmms_plugin_info_add (plugin, "URL", "http://www.xmms.org/"); xmms_plugin_info_add (plugin, "Author", "XMMS Team"); xmms_plugin_info_add (plugin, "License", "GPL"); */ /* xmms_xform_indata_constraint_add */ xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "application/id3v2", NULL); xmms_magic_add ("id3 header", "application/id3v2", "0 string ID3", ">3 byte <0xff", ">>4 byte <0xff", NULL); 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", XMMS_STREAM_TYPE_END); xmms_magic_add ("flac header", "audio/x-flac", "0 string fLaC", NULL); return TRUE; }
static gboolean xmms_pls_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_pls_init; methods.destroy = xmms_pls_destroy; methods.browse = xmms_pls_browse; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-scpls", NULL); xmms_magic_add ("pls header", "audio/x-scpls", "0 string [playlist]\r\n", "0 string [playlist]\n", NULL); xmms_magic_extension_add ("audio/x-scpls", "*.pls"); return TRUE; }
static gboolean xmms_gvfs_plugin_setup (xmms_xform_plugin_t *xform_plugin) { GVfs *vfs; const gchar * const *schemes, * const *i; gint j; xmms_xform_methods_t methods; g_type_init (); vfs = g_vfs_get_default (); if (!g_vfs_is_active (vfs)) { xmms_log_info ("GVfs not active - disabling gvfs transport"); return FALSE; } XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_gvfs_init; methods.destroy = xmms_gvfs_destroy; methods.read = xmms_gvfs_read; methods.seek = xmms_gvfs_seek; methods.browse = xmms_gvfs_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, "file://*", XMMS_STREAM_TYPE_END); schemes = g_vfs_get_supported_uri_schemes (vfs); for (i = schemes; *i; i++) { gchar *tmp = g_strconcat (*i, "://*", NULL); gint priority = XMMS_STREAM_TYPE_PRIORITY_FALLBACK; for (j = 0; j < G_N_ELEMENTS (scheme_priorities); j++) { if (g_ascii_strcasecmp (scheme_priorities[j].scheme, *i) == 0) { priority = scheme_priorities[j].priority; } } xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_PRIORITY, priority, XMMS_STREAM_TYPE_MIMETYPE, "application/x-url", XMMS_STREAM_TYPE_URL, tmp, XMMS_STREAM_TYPE_END); g_free (tmp); } 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_sndfile_plugin_setup (xmms_xform_plugin_t *xform_plugin) { xmms_xform_methods_t methods; XMMS_XFORM_METHODS_INIT (methods); methods.init = xmms_sndfile_init; methods.destroy = xmms_sndfile_destroy; methods.read = xmms_sndfile_read; methods.seek = xmms_sndfile_seek; xmms_xform_plugin_methods_set (xform_plugin, &methods); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-aiff", NULL); xmms_magic_add ("aiff header", "audio/x-aiff", "0 string FORM", ">8 string AIFF", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-au", NULL); xmms_magic_add ("au header", "audio/x-au", "0 string .snd", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-caf", NULL); xmms_magic_add ("caf header", "audio/x-caf", "0 string caff", ">8 string desc", NULL); xmms_xform_plugin_indata_add (xform_plugin, XMMS_STREAM_TYPE_MIMETYPE, "audio/x-paf", NULL); xmms_magic_add ("paf header", "audio/x-paf", "0 byte 0x20", ">1 string paf", NULL); /* Add further libsndfile supported formats here. When adding formats based * on MS wav format (w64, rf64 for instance) attention must be payed that * we don't mask out the magics added by the wave plugin and vice versa. */ 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_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_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; }