
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 opencode.net
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
13 years ago
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
13 years ago
src/libvisual.cpp line 94:
Replace "video->pixels"
by "video->buffer->data"
and NOT "video->pixel_rows"
Report
Sebien
13 years ago
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
13 years ago
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
juvinious
13 years ago
Report
vegetto
13 years ago
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
13 years ago
Look at the end of the comments part of this project.
Report
whiskybar
13 years ago
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
13 years ago
I made it compile and run on KUbuntu (tought it doesn't detect any sound for me :-/ ).
Report
comar961
13 years ago
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
13 years ago
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
juvinious
13 years ago
Report
jonesmac82
13 years ago
Report
juvinious
13 years ago
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
13 years ago
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
juvinious
13 years ago
Report
Sebien
13 years ago
Do you have an offline version of it?
Or example sources or... whatever?
Report