amarokVis

Various KDE 1.-4. Improvements

Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on git.opendesktop.org

0
Score 62%
Description:

A KDE applet for libvisual using opengl.
Orginally written to work with amaroks libvisual socket however due to some limitations I just made the input default to alsa.
So any app piping sound through alsa will make the visuals dance.
I was going to change the name but meh, not a big deal.

Requirements:
libvisual
KDE with openGL capable widgets

Usage:
Just add it to a panel and watch the fun. If you click the visualization it'll bring up a popup box to select from available plugins.
Pretty simple and straightforward.
Beware though some plugins(actors) tend to be buggy and are likely to crash your kicker.
If that happens just restart your kicker and choose another plugin that doesn't. :)

Sebien

11 years ago

Thanks very much for this applet.

I was not aware that external applications other than Amarok were able to do visualisation of what Amarok is playing.

Visualisation is a highly requested feature for Kirocker Music Display. So I want to make your applet work to be able to use the code for Kirocker Music Display.

I've somewhat succedded.


Here are informations on how to make it compile on KUbuntu:

As root, execute those two commands:

ln -s /usr/include/libvisual-0.4/libvisual /usr/include/libvisual
ln /usr/lib/libvisual-0.4.so /usr/lib/libvisual.so

Modify those two files:

src/libvisual.cpp line 94: Replace "video->pixels" by "video->pixel_rows"
src/Makefile.am line 8 : amarokvis_panelapplet_la_LIBADD = $(LIB_KDEUI) -lGL
(add "-lGL" at the end of the line)

Configure the applet with the following line:

LIBVISUAL_CFLAGS=/usr/include/libvisual LIBVISUAL_LIBS="-lpthread -lm -ldl -lvisual" ./configure

Then compile and install it like normally:

make
sudo make install


I said it "somewhat" work because there are a lot of random pixels and it often crash when resizing the panel or changing visualisation.
If it crashes, press Alt+F2 and type "kicker" followed by a click on "Execute".

I will try to fix the source to make it work seamlessly.

Report

Sebien

11 years ago

Here is a correction to what I said earlier:

src/libvisual.cpp line 94:
Replace "video->pixels"
by "video->buffer->data"
and NOT "video->pixel_rows"

Report

Sebien

11 years ago

I still forgot this:

So now, it works.

But there is another problem: the visualisation cannot detect any sound, so it play in the void! Yes: it's very useless!

I get two different error messages:

libvisual INFO: amarokVis: The rate 44100 Hz is not supported by your hardware.

And the second one, I can't reproduce it anymore. But it said alsa connexion cannot be openned (I'm using KUbuntu, which is using alsa!).

Does somebody have a clue to solve one or both of the errors?

Report

Sebien

11 years ago

Forgot to say:

The visualisation now works without any random pixels, and no shift.

But it still crash quite randomly when playing too much with the different plugins, even if less often.

Report

C

juvinious

11 years ago

Maybe you should try libvisual-0.2.0 ... the api is inconsistent iirc and could be the issue.

Report

vegetto

12 years ago

Making all in src
make[2]: Entering directory `/sparr/app/amarokVis/src'
if /bin/sh ../libtool --silent --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -I/usr/include/libvisual-0.4 -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT libvisual.lo -MD -MP -MF ".deps/libvisual.Tpo" -c -o libvisual.lo libvisual.cpp; \
then mv -f ".deps/libvisual.Tpo" ".deps/libvisual.Plo"; else rm -f ".deps/libvisual.Tpo"; exit 1; fi
libvisual.cpp:234:2: warning: no newline at end of file
libvisual.cpp: In member function 'void Vis::render()':
libvisual.cpp:94: error: 'struct _VisVideo' has no member named 'pixels'
make[2]: *** [libvisual.lo] Error 1
make[2]: Leaving directory `/sparr/app/amarokVis/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/sparr/app/amarokVis'
make: *** [all] Error 2


it fails plz help me
i really want this kde improvement to work around

i use opensuse 10.2
kde 3.5.6
qt 3.3.7
amarok 1.4.4
libvisual 0.4.0

Report

Sebien

11 years ago

I made it compile and run with libvisual 0.4.

Look at the end of the comments part of this project.

Report

whiskybar

12 years ago

if /bin/bash ../libtool --silent --tag=CXX --mode=compile i486-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/kde -I/usr/share/qt3/include -I. -I/usr/include/libvisual-0.4 -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT libvisual.lo -MD -MP -MF ".deps/libvisual.Tpo" -c -o libvisual.lo libvisual.cpp; \
then mv -f ".deps/libvisual.Tpo" ".deps/libvisual.Plo"; else rm -f ".deps/libvisual.Tpo"; exit 1; fi

libvisual.cpp:234:2: warning: no newline at end of file
libvisual.cpp: In member function 'void Vis::render()':
libvisual.cpp:94: error: 'struct _VisVideo' has no member named 'pixels'

I am using Ubuntu 6.10 i386 and libvisual-0.4. I looked into the headers and indeed, there is no such member. The closest match I could find was:

VisBuffer *buffer; /**< The video buffer. */
void **pixel_rows; /**< Pixel row start pointer table. */

Which version of libvisual are you using? Can you help me somehow? Thank you.

Report

Sebien

11 years ago

I replyed at the end of the comments part of this project.

I made it compile and run on KUbuntu (tought it doesn't detect any sound for me :-/ ).

Report

comar961

12 years ago

great!

would you mind if I use your code in my project? http://www.kde-apps.org/content/show.php?content=52641

it will stay under GPL of course.

Report

comar961

12 years ago

great!

would you mind if I use your code in my project? http://www.kde-apps.org/content/show.php?content=52641

it will stay under GPL of course.

Report

C

juvinious

12 years ago

Yeah no problem, it is of course GPL. Though you might want to take a look at my reply to the first comment, as there is a link to the example I based this plugin off of which probably would do you more justice than my plugin. :)

Report

jonesmac82

12 years ago

any tips on compiling in opensuse? It fails in the config to find libvisual. It is located in /usr/lib/libvisual

Report

C

juvinious

12 years ago

Hmm could be that your system doesn't use pkg-config? This is how I set it up for testing for libvisual.
You can try this:

In configure.in.in comment out:
PKG_CHECK_MODULES([LIBVISUAL], [libvisual])
AC_SUBST(LIBVISUAL_LIBS)
AC_SUBST(LIBVISUAL_CFLAGS)

and in src/Makefile.am add to the very top of the file:
LIBVISUAL_CFLAGS=/usr/include/libvisual
LIBVISUAL_LIBS="-lpthread -lm -ldl -lvisual"

Hopefully that helps you compile, let me know if that doesn't work.

Report

Superstoned

12 years ago

way cool ;-)

the fact it just uses alsa is a plus, imho, as most sound engines use that anyway, and now it 'just works' with all music and sound...

Maybe you can add a 'fullscreen mode' if you (double) click it?

Report

C

juvinious

12 years ago

I thought about that, but then I wouldn't be able to use a QGLWidget for that, thus wouldn't be embeddable in the applet. Amarok, xmms and some other apps use SDL or some other lib for their own libvisual plugins which can do that. If you want to make your own I based mine off this simple and neat tutorial which can probably be easily adopted for any other system here: http://www.arcknowledge.com/gmane.comp.audio.libvisual.devel/2005-03/msg00021.html

Report

Sebien

11 years ago

The link lead to a 404 error.

Do you have an offline version of it?
Or example sources or... whatever?

Report

product-maker 8 16

File (click to download) Version Description Downloads Date Filesize DL OCS-Install
Pling
*Needs ocs-url or ocs-store to install things
Details
license
version
1.0
updated Mar 09 2007
added Mar 09 2007
downloads today
0
page views today 2
page views total 1156