develia.org
»» i686 slackware tarballs..
»» software projects..
»» and much more..
 NAVIGATION 
 OPTIONS 

 INFO 
*** develia.org ***
di Giacomo Lozito
© 2004-2010

valid xhtml 1.0valid css!
powered by apachepowered by php
valid rss 2.0get firefox!

NO software patents in UE
 PROJECTS 
*** BMP PORTS ***

BMP (Beep Media Player) è un ottimo lettore multimediale, forkato dal codice di XMMS. A differenza di XMMS che adotta il vecchio toolkit GTK+1, BMP è basato su GTK+2 (che adotta unicode, ha un aspetto assai più gradevole ed è complessivamente migliore). Inoltre, mentre il codice di XMMS pare un pò datato e confuso, molti sforzi sono stati fatti per sistemare e migliorare quello di BMP.

Il rovescio della medaglia è dato dal fatto che i plugin di XMMS (e sono tanti!) non sono supportati da BMP. Necessitano di una conversione da GTK+1 a GTK+2; questo lavoro non è così complesso, ma ci sono alcune operazioni che devono essere portate a termine per assicurare il corretto funzionamento di un plugin in BMP:

  • il codice del plugin deve essere linkato alle librerie di GTK+2 (gtk-2.0, glib-2.0, atk, pango) invece che a quelle di GTK+1;
  • alcune funzioni di GTK+1 (come la creazione di finestre on-top) necessitano di alcuni aggiustamenti per GTK+2;
  • alcuni widget di GTK+1 non esistono più in GTK+2 e il codice che usi questi widget deve essere riscritto; per esempio, gtk_text di GTK+1 deve essere sostituito in modo appropriato con gtk_text_view e gtk_text_buffer di GTK+2;
  • tutte le stringhe mostrabili (come i titoli delle track e le descrizioni dei plugin) devono essere codificate in UTF-8; le conversioni possono essere operate usando funzioni come g_locale_to_utf8;
  • altre varie operazioni (eventuale uso di libbmp VFS per le operazioni con i file, di ConfigDB per recupero e salvataggio della configurazione, ...).

Maggiori dettagli sul porting dei plugin sono disponibili sul Wiki di BMP.

In questa pagina di develia.org ci sono informazioni, patch e sorgenti dei plugin di XMMS che ho convertito per BMP. Non stressate gli autori originari dei plugin con domande legate al loro uso con BMP. Queste conversioni sono sperimentali, quindi le usate a vostro rischio! :)


 XMMS-SID » BMP-SID

Tipo: INPUT plugin
Official homepage: http://www.tnsp.org/xmms-sid.php
Descrizione: XMMS-SID è un plugin per la riproduzione di musica comunemente definita "SID-tune", ossia musica proveniente dal computer Commodore 64 e affini. Per la riproduzione, XMMS-SID può sfruttare diversi motori di emulazione (libSIDPlay v1, libSIDPlay v2 con reSID-builder).
Note personali: nel realizzare questo port sperimentale, sono andato anche oltre; ho fuso il codice di BMP-SID con il codice originario e ho fatto una serie di aggiunte su Makefile.am e configure.in; ora è possibile compilare sia il plugin BMP-SID (chiamato libbmpsid.so invece che libxmmssid.so) che il plugin XMMS-SID, la scelta viene effettuata semplicemente dando (o meno) l'opzione --enable-bmpsid in configure.

Il codice sorgente per la versione BMP-aware di XMMS-SID
(ricordarsi di usare --enable-bmpsid in configure):
xmms-sid-0.8.0beta15-with-bmpsid-0.02.tar.bz2

Diffs che contengono tutti i cambiamenti fatti per convertire il plugin:
(dopo aver patchato, configure & co. devono essere rigenerati con gli autotools)
xmms-sid-0.8.0beta15-with-bmpsid-0.02-autotools.diff
xmms-sid-0.8.0beta15-with-bmpsid-0.02-sources.diff

Un paio di screenshot del plugin funzionante con BMP:
about box   options dialog


 XMMS-OpenSPC » BMP-OpenSPC

Tipo: INPUT plugin
Link: http://www.xmms.org/plugins.php?details=225
Descrizione: un lettore SPC per XMMS che usa OpenSPC
Note personali: port sperimentale

Codice sorgente di BMP-OpenSPC:
bmp-OpenSPC-0.0.3-0.02.tar.bz2

Diff che contiene i cambiamenti fatti per convertire il plugin:
(dopo aver patchato, configure & co. devono essere rigenerati con gli autotools)
xmms-openspc-0.0.3-bmp-openspc-0.02.diff

Uno screenshot del plugin funzionante con BMP:
options dialog


 XMMS LADSPA » BMP LADSPA

Type: EFFECT plugin
Link: http://www.ecs.soton.ac.uk/~njl98r/code/ladspa/
Description: XMMS LADSPA è un effect plugin per XMMS che permette di sfruttare (almeno in parte) la potenza di LADSPA (Linux Audio Developer's Simple Plugin API) sul proprio media player
My notes: un altro port sperimentale, ora posso sfruttare l'AM pitchshifter e gli effetti freeverb su BMP, yay! Ho fatto alcune modifiche al makefile, è possibile compilare il plugin per xmms o per bmp semplicemente usando make xmms o make bmp; XMMS LADSPA naturalmente non è corredato di plugin LADSPA, offre soltanto un modo per usarli con XMMS/BMP; è possibile recuperare i plugin LADSPA da ladspa.org o da plugin.org.uk, oppure si può prendere il comodo tarball per Slackware (denominato ladspa-kit) qui su develia.org, nella sezione tarballs->multimedia.

Codice sorgente di BMP LADSPA:
xmms_ladspa-1.1-with-bmp-support-0.01.tar.bz2

Diff che contiene i cambiamenti fatti per convertire il plugin:
xmms_ladspa-1.1-with-bmp-support-0.01.diff

Un paio di screenshot del plugin funzionante con BMP:
plugin selector   plugin configuration