linphone 移植console 视频功能

首先,移植console下代码需要的库文件,
readline-5.1.tar.gz
libogg-1.1.3.tar.gz
ncurses.5.5.tar.gz
speex.1.2rc1.tar.gz
libosip-3.3.0.tar.gz
libeXosip-3.3.0.tar.gz

ffmpeg,可使用svn
SDL-1.2.12
libgsm.tar.gz

mediastreamer 使用linphone中自带的mediastreamer,不同版本的linphone中的mediasteamer不一样。我使用的是linphone-3.1.0,在网上可以找到linphone-3.1.2的,不过在编译mediastreamer时失败,提示找不到libswscale库。

大体的编译方法跟console命令行程序相同,也就是另上一篇帖子 linphone 移植 console. 不同的就是需要编译ffmpeg,sdl,libgsm.

ffmpeg:
./configure --prefix=/home/ghazi/target/ --enable-gpl --enable-shared --enable-libamr-nb --enable-libamr-wb --enable-pthreads --disable-ffserver --disable-ffplay --enable-libtheora  --enable-swscaler --enable-nonfree
make
make install
ps: --enable-swscaler  这里容易出问题。

sdl:
./configure --prefix=/yourusr
make
make install

libgsm:
./configure --prefix=/youusr
make
make install

接下来是编译linphone:
./configure --disable-nls --disable-manual --enable-gtk_ui=no --prefix=/home/ghazi/target --enable-static --disable-shared --disable-glib --with-osip=/home/ghazi/target PKG_CONFIG_PATH=/home/ghazi/target/lib/pkgconfig --enable-alsa=no --enable-video --enable-strict=no --enable-artsc=no
make
make install
ps: 编译过程中没出现什么问题, 我的安装目录是/home/ghazi/target,--enable-video 加入视频功能

接下来在对应的bin目录下可以找到linphonec可执行文件,输入命令 ./linphonec -V 即可。 注意注册时linphone有一个配置文件,一般在用户的主目录下的,名为.linphonerc。配置之后就不用手动注册了,会自动注册,说来也奇怪,在键入 ./linphonec -V后,如果在终端输入register,会即可产生断错误。 bug ???

下面开始移植console程序。

在linphoned的安装文件中找到console目录和coreapi目录。
把其中的部分文件拷贝移植到他处,文件如下。
authentication.c
commands.c
enum.h   
exevents.h
general_state.c
linphonec.h 
linphonecore.h
lpconfig.h
presence.c
proxy.c
sdphandler.h
sipsetup.h
chat.c 
enum.c
exevents.c
friend.c
linphonec.c
linphonecore.c
lpconfig.c
misc.c  
private.h
sdphandler.c
sipsetup.c

之后,在中断输入命令gcc编译。
 gcc *.c -I/home/ghazi/target/include  -L/home/ghazi/target/lib/  -lmediastreamer -lortp -llinphone -losip2 -losipparser2 -leXosip2 -lspeex -lspeexdsp  -lgsm -lswscale -lavcodec -lSDL -o linphonec
哈,一个新的linphonec诞生了。

值得庆祝一下,下面就可以改写linphone的代码了。想怎么该就怎么该,界面是自己的,“内核”linphone。

你可能感兴趣的:(网络电话)