You have probably heard of Boxee and Gentoo (come on). I wanted to give Boxee a try, because of all the movies and tv shows that I can watch for free. I have already switched from Freevo to xbmc (which is a story in itself) as my primary media center. Since boxee is a fork of xbmc I thought I might give it a try. Why not? Because xbmc was so easy to compile and install. I did not have any problem compiling the latest code from subversion. I registered and downloaded the latest code from Boxee's website. There is no link to svn and so I downloaded version 0.9.11.5591.
The compile was pretty simple
1. Untar the downloaded file
2. autoconf
3. ./configure
4. make -j3
However the compile was not successful. The first problem I ran into was this compile error:
I restarted boxee and couldn't believe my eyes when I saw the videos playing nicely. Watched some clips from comedy central and then turned my attention to the controversial hulu. I clicked on hulu, and everything seemed normal. So I selected a video clip, the player started but I did not hear any audio and the video was just a blank white screen. But the time was ticking as if the media is playing. I did not have my hopes too high anyway and did not expect hulu to work on boxee, what with all the drama. May be there is something subtle that I am missing or may be the old bxflplayer-linux cannot handle hulu's content. No matter what I will keep looking around for some hacks so I can enjoy hulu from boxee.
That is my experience so far with boxee. Oh by the way I had to emerge a lot of packages along the way to make the
Update: If you are seeing floating point exception when playing your local media in Boxee then you will need to re-emerge media-libs/alsa-lib" *with* the debug use flag. Here is the discussion from comments regarding this issue:
Blogger VirtualEnder said...
Interesting, well I linked the built, libmad.0.2.1 to libmad.so, then it built just fine. However I'm still having the issue with it crashing any time I try to play anything. I set the log level to 0 and it doesn't even give any errors. It prints to stdout "floating point exception" and that's it. So bizarre. All the internal stuff works fine, as does the music playback, just seems to fuss with videos. mplayer plays the videos fine by itself, no FPE there, so I'm not sure what the problem is, thanks for your suggestions though.
Blogger Chandan Pitta said...
Ah, now that you mention FPE I remember one more hack I had to do (but forgot to mention in the blog), so I am assuming you are in gentoo. If so then you have to "emerge media-libs/alsa-lib" *with* the debug flag. So added this line
media-libs/alsa-lib debug
to /etc/portage/package.use
and re-emerged media-libs/alsa-lib. That should fix your FPE problem. Let me know how it went
The compile was pretty simple
1. Untar the downloaded file
2. autoconf
3. ./configure
4. make -j3
However the compile was not successful. The first problem I ran into was this compile error:
XAPP_MC.cpp:12:20: error: bxcurl.h: No such file or directoryTo solve it, I googled around and found the solution in the boxee forums. I had to make minor modifications to the following Makefiles
xbmc/MakefileWith the updated makefiles I started the compile process again. Now I got this error message:
SRCS += BoxeeAuthenticator.cpp
xbmc/lib/libPython/Makefile
SRCS += XBPyPersistentThread.cpp
xbmc/app/Makefile
SRCS+= XAPP_Edit.cpp
*** [Gentoo] sanity check failed! ***Well the solution is in the error message. I issued the following commands:
*** libtool.m4 and ltmain.sh have a version mismatch! ***
*** (libtool.m4 = 1.5.26, ltmain.sh = 1.5.2) ***
Please run:
libtoolize --copy --force
if appropriate, please contact the maintainer of this
package (or your distribution) for help.
make[2]: *** [config.status] Error 1
make[2]: Leaving directory `/home/chandanp/workspace/c/boxee/boxee-0.9.11.5591-src/xbmc/cores/dvdplayer/Codecs/libmad'
make[1]: *** [libmad] Error 2
make[1]: Leaving directory `/home/chandanp/workspace/c/boxee/boxee-0.9.11.5591-src/xbmc/cores/dvdplayer/Codecs'
make: *** [dvdpcodecs] Error 2
cd xbmc/cores/dvdplayer/Codecs/libmad/The project compiled successfully. Now to test it. I ran ./Boxee and everything worked beautifully out of the box. I added my boxee account and logged in. Then I could browse all the online content. Sweet! But there is just one problem. I cannot play any of the content I wanted. When I select a video in comedy central the busy circle shows up and it rotates for ever without starting the video. A look at the output showed these errors/warnings:
libtoolize --copy --force
cd -
make
./bxflplayer-linux: /usr/lib/libcurl.so.4: no version information available (required by ./bxflplayer-linux)Once again boxee forums to the rescue. The solution that was offered was to copy bxflplayer-linux from an older 0.9.8.4880 release into the latest. So I downloaded 0.9.8.4880 and copied over all the files from boxee-0.9.8.4880/system/players/flashplayer/ to boxee-0.9.11.5591-src/system/players/flashplayer/.
./bxflplayer-linux: /usr/lib/gcc/i686-pc-linux-gnu/4.1.2/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./bxflplayer-linux)
I restarted boxee and couldn't believe my eyes when I saw the videos playing nicely. Watched some clips from comedy central and then turned my attention to the controversial hulu. I clicked on hulu, and everything seemed normal. So I selected a video clip, the player started but I did not hear any audio and the video was just a blank white screen. But the time was ticking as if the media is playing. I did not have my hopes too high anyway and did not expect hulu to work on boxee, what with all the drama. May be there is something subtle that I am missing or may be the old bxflplayer-linux cannot handle hulu's content. No matter what I will keep looking around for some hacks so I can enjoy hulu from boxee.
That is my experience so far with boxee. Oh by the way I had to emerge a lot of packages along the way to make the
./configure
work (you can find some dependencies here but it may not be up to date) and also when the bxflplayer could not find some libs (I had to emerge dev-perl/GSSAPI
for example). I hate closed source binaries, they are compiled against some libraries and you don't know which libraries are required. Well ldd
to the rescue. Still ./configure
is the right way.Update: If you are seeing floating point exception when playing your local media in Boxee then you will need to re-emerge media-libs/alsa-lib" *with* the debug use flag. Here is the discussion from comments regarding this issue:
Blogger VirtualEnder said...
Interesting, well I linked the built, libmad.0.2.1 to libmad.so, then it built just fine. However I'm still having the issue with it crashing any time I try to play anything. I set the log level to 0 and it doesn't even give any errors. It prints to stdout "floating point exception" and that's it. So bizarre. All the internal stuff works fine, as does the music playback, just seems to fuss with videos. mplayer plays the videos fine by itself, no FPE there, so I'm not sure what the problem is, thanks for your suggestions though.
Blogger Chandan Pitta said...
Ah, now that you mention FPE I remember one more hack I had to do (but forgot to mention in the blog), so I am assuming you are in gentoo. If so then you have to "emerge media-libs/alsa-lib" *with* the debug flag. So added this line
media-libs/alsa-lib debug
to /etc/portage/package.use
and re-emerged media-libs/alsa-lib. That should fix your FPE problem. Let me know how it went
Comments
rm -fr .libs/libmad.0 .libs/libmad.0.2.1 .libs/libmad.a .libs/libmad.la .libs/libmad.lai .libs/libmad.so .libs/libmad.so.0 .libs/libmad.so.0.2.1
gcc -shared .libs/version.o .libs/fixed.o .libs/bit.o .libs/timer.o .libs/stream.o .libs/frame.o .libs/synth.o .libs/decoder.o .libs/layer12.o .libs/layer3.o .libs/huffman.o -march=i486 -Wl,-soname -Wl,libmad.0 -o .libs/libmad.0.2.1
(cd .libs && rm -f libmad.0 && ln -s libmad.0.2.1 libmad.0)
(cd .libs && rm -f libmad && ln -s libmad.0.2.1 libmad)
ar cru .libs/libmad.a version.o fixed.o bit.o timer.o stream.o frame.o synth.o decoder.o layer12.o layer3.o huffman.o
ranlib .libs/libmad.a
creating libmad.la
(cd .libs && rm -f libmad.la && ln -s ../libmad.la libmad.la)
make[4]: Leaving directory `/home/boxee/src/boxee-0.9.11.5591-src/xbmc/cores/dvdplayer/Codecs/libmad'
make[3]: Leaving directory `/home/boxee/src/boxee-0.9.11.5591-src/xbmc/cores/dvdplayer/Codecs/libmad'
make[2]: Leaving directory `/home/boxee/src/boxee-0.9.11.5591-src/xbmc/cores/dvdplayer/Codecs/libmad'
cp libmad/.libs/libmad.so ../../../../system/players/dvdplayer/libmad-i486-linux.so
cp: cannot stat `libmad/.libs/libmad.so': No such file or directory
Did you have this problem?
cd xbmc/cores/dvdplayer/Codecs/libmad/
libtoolize --copy --force
cd -
make
media-libs/alsa-lib debug
to /etc/portage/package.use
and re-emerged media-libs/alsa-lib. That should fix your FPE problem. Let me know how it went
Nice job on getting it running on your fav OS.
Hulu is working for me on Boxee, but I am running it on Mac OS X. There was a recent fix that the Boxee team did to leverage Firefox and make Hulu work.
Perhaps u should look at getting access to the latest alpha code from their site?
Btw, Netflix and Pandora rock on Boxee. I love it.