• voip的会议服务器Conference Servers


    http://openmcu.ru/eng.htm

    openmcu:   http://h323plus.cvs.sourceforge.net/viewvc/h323plus/applications/openmcu/

    Debian官方提供了openmcu包,但是已经更新为2.1版本的,从版本2.0开始,据说不再支持视频传输,因此,如果我们想提供视频功能,就需要自己编译安装。

    1. http://prdownloads.sourceforge.net/openh323/ 下载最新的openmcu、pwlib、openh323包(其实也不能用最新的,openmcu要用1.x版本的,pwlib我用的是1.8.7 (Mimas patch 2)版本,openh323我用的是1.15.6 (Mimas patch 2)版本,我猜测1.x的openmcu是依赖于这两个有点老的包的)。
    2. 在Debian下准备编译所需的库文件,可以用apt-get build-dep openmcu指令,也可以先apt-get install openmcu然后再卸载openmcu包,都可以得到所需的库文件。
    3. 把三个包用tar zvxf解压,并且把pwlib解出来的目录改名为pwlib,openh323包解出来的目录命名为openh323,这样openmcu编译时可以找到这两个库。
    4. 分别在pwlib目录下和openh323目录下执行./configure
    5. 进入openmcu目录,执行make all

    新生成目录中的obj_linux_x86_r目录下是可执行文件,另一个obj_linux_x86_d目录下是debug版本的文件。这样生成的是使用动态运行库的版本。如果要生成静态版本,那么需要使用make optnoshared指令来编译openmcu。

    下面的任务是将openmcu设置为开机自动运行,注意必须给openmcu加--disable-menu来禁用交互模式,否则openmcu无法在后台运行。我下面的办法用的是cron来实现的,也可以用inetd等实现。

    生成start脚本内容如下:

    #!/bin/sh
    
    PROCESS_NUM=`ps -ef | grep "openmcu" | grep -v "grep" | wc -l`
    if [ $PROCESS_NUM -lt 1 ];
    then
      exec nohup /opt/openmcu/openmcu -n -v --disable-menu > /opt/openmcu/mcu.log &
    fi
    1. 用chmod +x给start脚本以可执行权限
    2. 用crontab -u 执行openmcu的用户名 -e进入cron任务编辑模式(是一个类似vi的编辑环境),输入:
    */1 * * * * /opt/start

    表示每一分钟运行一次start脚本。

    这样实现的其实不仅仅是开机自动运行了,还保证了每1分钟检查一次是否openmcu在运行,如果没在运行,则启动之。

     

     

    How to build openmcu-ru on ubuntu

    1. install tools
    sudo apt-get install libtool autoconf flex bison automake pkg-config 

    2.yasm-1.3.0
    sed -i 's#) ytasm.*#)#' Makefile.in &&

    ./configure --prefix=/opt/openmcu &&
    make
    make instal


    3.ffmpeg-2.8.3 
    gedit ~/.basnrc
    #add /opt/openmcu/bin to PATH env.
    export PATH=$PATH:/opt/openmcu/bin

    ./configure --prefix=/opt/openmcu --enable-shared
    make
    make instal

    4.x264-snapshot-20151204-2245
    ./configure --prefix=/opt/openmcu --enable-shared
    make
    make install

    5.libvpx-1.5.0
    ./configure --prefix=/opt/openmcu
    make
    make install

    6.openmcu-master ver4.01
    ./autogen.sh
    ./configure -prefix=/opt/openmcu --disable-openssl


    configure: error: avcodec headers not found! Install FFmpeg or Libav.

    Solultion: modify the configure file
    PRODUCT=OpenMCU-ru  ==> PRODUCT=
    PROG=openmcu-ru     ==> PROG=

    make
    /usr/bin/ld: cannot open output file ./obj/: Is a directory
    collect2: error: ld returned 1 exit status
    make[1]: *** [all] Error 1

    Solution:
    Modify the sub Makefile: openmcu-ru/Makefile
    PROG=    ==> PROG=openmcu-ru 

    make install

    7. test

    sudo ./openmcu-ru/obj/openmcu-ru -d &

  • 相关阅读:
    java计算组合数
    编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数
    不用static,巧用对象.方法调用java中的函数
    主函数调用相同函数名的小知识
    poj 3608 旋转卡壳求不相交凸包最近距离;
    UVa1453或La4728 凸包+枚举(或旋转卡壳)
    hdu4666 最远曼哈顿距离
    poj2926 曼哈顿最远距离
    poj 2187 凸包加旋转卡壳算法
    UVa 10256 凸包简单应用
  • 原文地址:https://www.cnblogs.com/welhzh/p/5650456.html
Copyright © 2020-2023  润新知