How to compile VLC with live555 support ?

*nix specific usage questions
shuaibe
Blank Cone
Blank Cone
Posts: 23
Joined: 21 Jun 2007 15:14
VLC version: 0.8.6c
Operating System: Linux
Location: Switzerland

How to compile VLC with live555 support ?

Postby shuaibe » 29 Jun 2007 10:53

Hello,

I want to have VLC with live555 support ( for RTSP streaming) but along with source code of both VLC and live555 libraries. Compiling VLC code is not a problem but how do I compile it with live555 libraries (compiling the libraries myself) ... any suggestions

thanks!

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: How to compile VLC with live555 support ?

Postby Jean-Baptiste Kempf » 29 Jun 2007 11:20

--enable-live555
--with-live555-path=....
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

shuaibe
Blank Cone
Blank Cone
Posts: 23
Joined: 21 Jun 2007 15:14
VLC version: 0.8.6c
Operating System: Linux
Location: Switzerland

Re: How to compile VLC with live555 support ?

Postby shuaibe » 29 Jun 2007 15:34

"--with-live555-path=" .. the path to the 'live' directory which we get after unzipping the live555 source code ? or ? Iam a newbie, pls be more verbose ...
merci beaucoup!

kmf31
Cone that earned his stripes
Cone that earned his stripes
Posts: 308
Joined: 11 Mar 2007 21:47

Re: How to compile VLC with live555 support ?

Postby kmf31 » 29 Jun 2007 15:44

"--with-live555-path=" .. the path to the 'live' directory which we get after unzipping the live555 source code ?
Yes, you chose some public place to "unzip" (or more precisely "untar") the live source folder. For example, I have chosen: /usr/local/lib/ and the live-tree is therefore: /usr/local/lib/live
After unzipping the source code you have enter this tree and to compile it following the instructions of their web-site:
http://www.live555.com/liveMedia/#config-unix
for example:

Code: Select all

./genMakefiles linux make
That is enough, for live555 you keep this source folder as final install (no further "make install" is necessary here!).

Afterwards you use with ./configure of vlc the options:

Code: Select all

--enable-live555 --with-live555-path=/usr/local/lib/live
of course assuming that /usr/local/lib/live is the source-installation folder you have chosen.

Do you have a 64bit linux version and do you use a 64bit gcc-compiler ? In that case it may be necessary to adapt the live-compilation a little bit (in order to force the compile option "-fPIC").

shuaibe
Blank Cone
Blank Cone
Posts: 23
Joined: 21 Jun 2007 15:14
VLC version: 0.8.6c
Operating System: Linux
Location: Switzerland

Re: How to compile VLC with live555 support ?

Postby shuaibe » 29 Jun 2007 16:01

No I dont have 64-bit linux version. Thank you for the tip. I tried exactly the same, following the instructions from http://www.live555.com and running ./configure with the exact options but then vlc was not able to run the rtsp stream, saying : [00000800] main input error: no suitable access module for `rtsp://10.0.8.155/sample_300kbit.mp4' ...
For the rtsp streaming to run it requires the liblivemedia.so shared library, which was not created in /usr/local/lib/vlc/demux, it should be there if the
--enable-live555 and --with-live555-path= .... options are working!
I followed the steps on http://www.live555.com/liveMedia/#config-unix and copied the live folder to /usr/lib and that what i gave it in -with-live555-path= ...
what could have gone wrong ? any suggestions ...
thanks again!

kmf31
Cone that earned his stripes
Cone that earned his stripes
Posts: 308
Joined: 11 Mar 2007 21:47

Re: How to compile VLC with live555 support ?

Postby kmf31 » 29 Jun 2007 16:26

By default live555 is compiled as a static library and you need to recompile vlc afterwards to link agains the static library. In my case it works very well.

Did you properly recompile and reinstall vlc ? I suggest that you recompile vlc after doing "make clean" in its source folder (or even better: erase the source folder and unzip it again or obtain again a new copy by svn if you want to compile a svn-version of vlc), then ./configure with live options, then "make" and before doing the "make install" as root, erase the old vlc-installation: "rm -rf /usr/local/lib/vlc" and afterwards "make install" of vlc will recreate this folder. There may be some old bad plugins in that folder that may cause problems (this has happened to me in the past!) because the new "make install" does not erase them. Also you should NOT have any live555-header *.h files in a public place (such as /usr/include or /usr/local/include) because this may induce an error of the ./configure script (may be, at least do not take that risc).

May be it is be possible to compile live555 as a dynamic library but honestly I don't see "official" instructions how to do it ? However, the static installation works very well. I have been doing it many many times!

You may also try to reset the plugin cache by
"vlc --reset-plugins-cache"
and then start again vlc (if it is properly compiled).

shuaibe
Blank Cone
Blank Cone
Posts: 23
Joined: 21 Jun 2007 15:14
VLC version: 0.8.6c
Operating System: Linux
Location: Switzerland

Re: How to compile VLC with live555 support ?

Postby shuaibe » 29 Jun 2007 16:39

If I do apt-get install liblivemedia-dev and then configure, make and install VLC, it works fine, no problem. But I want to have access to the code of live555 libraries, thats why instead of using apt-get install liblivemedia-dev, I would like to compile live555 libraries from source and then configure, make & install VLC so that it compiles with the live555 libraries that I compiled earlier ...
so when I do that, VLC compiles and install well but rtsp streaming gives an error and as i mentioned earlier the required shared library is not created ... I hope Iam making sense or im totally down the wrong road .. :|

kmf31
Cone that earned his stripes
Cone that earned his stripes
Posts: 308
Joined: 11 Mar 2007 21:47

Re: How to compile VLC with live555 support ?

Postby kmf31 » 29 Jun 2007 17:23

Again, when you comile live on your own there is no dynamic library but only a static version.

However, now you finally mentioned that you have installed liblivemedia-dev and probably also liblivemedia from debian, i.e. there is in the system a dynamic version of live555 (in "liblivemedia") and also the developpement package in "liblivemedia-dev" with header files which probably induce the ./configure of vlc into an error and therefore vlc requires wrongly the dynamic version. Therefore you must carefully and completely uninstall, remove both packages: liblivemedia and liblivemedia-dev (at least the second one!).

Than you install and compile the live555 source (obtained from a tar.gz file) as mentioned above and than you recompile vlc (with live-tree-blabla) and than vlc will only use the static version which you compiled youself. The fact that vlc searches the dynamic version is an error !!! This is not correct and only possible because you have installed these other packages (=> vlc-compilation links wrongly to a dynamic version, maybe in /usr/lib and than it does not find that version, in /usr/local/lib/vlc, when you try to run vlc).

You simply have an conflict between your debian packages and your own sources! This is always a problem with the ./configure script! If you compile yourself, remove the debian package. In particular apart from vlc (and maybe mplayer) there isn't any other program requiring live555 if I recall correctly ?

shuaibe
Blank Cone
Blank Cone
Posts: 23
Joined: 21 Jun 2007 15:14
VLC version: 0.8.6c
Operating System: Linux
Location: Switzerland

Re: How to compile VLC with live555 support ?

Postby shuaibe » 29 Jun 2007 17:33

Before compiling live555 libraries, I did remove the .deb package using dpkg --purge liblivemedia-dev and confirmed it by checking dpkg -l, plus I also made sure (to the best of my knowledge :) ) to remove any traces as you mentioned. And then I compiled and installed VLC but still the streaming didnt work. But I have found a way around to it. After removing everything, i get the live555 sources using

apt-get source liblivemedia-dev

and then I build and install the package using:

dpkg-buildpackage -rfakeroot -uc -b

and then

dpkg -i liblivemedia-dev_2006.03.17-2_i386.deb.deb

After installing the liblivemedia-dev package, I configure VLC with only --enable-live555, make and install and now the streaming also works fine. Plus I put some print statements in live555 source code and in VLC source code, just to make sure it compiled with the sources I wanted and that its not using some old hidden stuff.
thanks kmf31 & j-b !

Jean-Baptiste Kempf
Site Administrator
Site Administrator
Posts: 37523
Joined: 22 Jul 2005 15:29
VLC version: 4.0.0-git
Operating System: Linux, Windows, Mac
Location: Cone, France
Contact:

Re: How to compile VLC with live555 support ?

Postby Jean-Baptiste Kempf » 29 Jun 2007 17:46

now the streaming also works fine!
Victory! :P
Jean-Baptiste Kempf
http://www.jbkempf.com/ - http://www.jbkempf.com/blog/category/Videolan
VLC media player developer, VideoLAN President and Sites administrator
If you want an answer to your question, just be specific and precise. Don't use Private Messages.

yamini_s
New Cone
New Cone
Posts: 9
Joined: 15 May 2008 07:22

Re: How to compile VLC with live555 support ?

Postby yamini_s » 20 May 2008 17:08

Can I know How u compiled VLC source code

neergil
New Cone
New Cone
Posts: 2
Joined: 28 May 2011 04:47

Re: How to compile VLC with live555 support ?

Postby neergil » 23 Jul 2011 07:47

Hello,

First of all, thanks for your posts. They have been very helpful in compiling/using vlc.
I want to make some changes in live555 libraries and then compile that with vlc, same as shuaibe did. For that, I compiled VLC with --enable-live555 --with-live555-tree=tree_address. I don't have any other liblivemedia-dev copy in my system.

Then I'm streaming a video file by using:
./vlc -vvv input_stream --sout '#rtp{dst=192.168.0.12,port=1234,sdp=rtsp://<ip_address>:8080/test.sdp}'
and receiving the stream on the same system by using:
./vlc rtsp://<ip_address>:8080/test.sdp

->This streaming and receiving is successful.
->Then I made some changes in live555 RTSP and RTCP modules (some printf statements).
-> make (live555)
-> make (vlc)
-> try to stream and receive and see the print statements.
But the changes are not getting reflected. No print statements are seen. Am I doing something wrong with compiling? Do I need to run "./configure --enable-live555 --with-live555-tree" before "make", every time I modify something in /live dir?

Thanks,
neergil

Sébastien Escudier
Big Cone-huna
Big Cone-huna
Posts: 853
Joined: 06 Nov 2008 08:38
Operating System: linux

Re: How to compile VLC with live555 support ?

Postby Sébastien Escudier » 24 Jul 2011 10:58

first, live555 is only used to receive rtsp streams, so you won't see your printf server side
Then, between make (live555) and make (vlc) you need to "touch" the live555.cpp file in vlc sources (module/demux/live555.cpp) so that it is recompiled and linked with your modified live555 lib.

neergil
New Cone
New Cone
Posts: 2
Joined: 28 May 2011 04:47

Re: How to compile VLC with live555 support ?

Postby neergil » 25 Jul 2011 22:49

Thanks Sébastien! I tried to modify the MakeFile, but it's much simpler and smarter with just saving live555.cpp.

neergil


Return to “VLC media player for Linux and friends Troubleshooting”

Who is online

Users browsing this forum: No registered users and 18 guests