fail to compile mcumediaserver source code

Forum:   Help
Creator:   senner
Created:   2011-10-01
Updated:   2012-10-02
1   2   >   >>  (Page 1 of 2)
  • senner

    senner -   2011-10-01

    Hello Sergio ,
    Thanks for your mcuWeb! now I had check out mcumediaserver source code of the
    last SVN version , but when I try to compile it, I got the error follow:
    /usr/local/src/mcu/media/src/include/framescaler.h:5:27: error:
    libavutil/opt.h: No such file or directory
    /usr/local/src/mcu/media/src/speexcodec.h:2:25: error: speex/speex.h: No such
    file or directory
    ....

    I can't resolve it ,can you help me please! Thanks.

    senner

     
  • Dean Johnson

    Dean Johnson -   2011-10-03

    This is how I got it to compile on Ubuntu 11.04 Desktop/32 bit (this was a
    clean install of the O/S)
    In some cases I installed fixed versions of some of the dependencies because
    others has suggested I do so..

    This may or may not get you closer....Good luck!

    Ubuntu 11.04 Desktop / 32bit

    sudo apt-get install ssh
    sudo apt-get install subversion

    sudo apt-get install libxmlrpc-c3-dev libxmlrpc-core-c3-dev libgsm1-dev
    binutils-dev checkinstall libfaac-dev libmp3lame-dev libopencore-amrnb-dev
    libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libssl-dev
    libspeex-dev libspeexdsp-dev libavcodec-dev libcurl4-openssl-dev

    sudo apt-get install libx264-dev

    cd /usr/local/src

    MP4V2 (Trunk)

    sudo wget http://mp4v2.googlecode.com/files/mp4v2-trunk-r479.tar.bz2
    sudo tar xvf mp4v2-trunk-r479.tar.bz2
    cd mp4v2-trunk-r479
    sudo ./configure
    sudo make
    sudo make install
    cd..

    Yasm

    sudo apt-get install yasm

    Libx264

    sudo wget ftp://ftp.videolan.org/pub/x264/snapshots/last_x264.tar.bz2
    sudo tar xvf last_x264.tar.bz2
    sudo tar xvf last_(TAB)
    cd x264XXXX
    sudo ./configure --enable-shared --enable-pic --prefix=/usr
    sudo make
    sudo make install

    FFMPeg

    sudo wget http://ffmpeg.org/releases/ffmpeg-
    snapshot.tar.bz2

    sudo tar xvf ffmpeg-snapshot.tar.bz2
    cd ffmpeg

    sudo ./configure --enable-gpl --enable-libfaac --enable-libmp3lame --enable-
    libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-
    libvorbis --enable-libx264 --enable-libxvid --enable-nonfree --enable-postproc
    --enable-version3 --enable-x11grab --enable-shared --enable-pic

    sudo make
    sudo make install

    sudo nano /etc/ld.so.conf.d/x264.conf
    /usr/local/lib <save +="" exit="">
    sudo ldconfig

    sudo mkdir /usr/local/src/mcu

    cd /usr/local/src/mcu
    sudo svn co https://mcumediaserver.svn.sourceforge.net/svnroot/mcumediaserver
    ./
    sudo make
    sudo make install

    if you dont have JDK on the machine already you will need this

    sudo nano /etc/apt/sources.list
    Add --->> deb
    http://archive.canonical.com/ubuntu
    natty partner

    sudo apt-get update
    sudo apt-get install sun-java6-jdk

    SailFin

    cd /usr/local/src
    sudo wget http://download.java.net/javaee5/sailfin/v2_branch/promoted/Linux
    /sailfin-installer-v2-b31g-
    linux.jar

    sudo java -Xmx256m -jar sailfin-installer-v2-b31g-linux.jar
    cd sailfin
    sudo chmod -R +x lib/ant/bin
    sudo lib/ant/bin/ant -f setup.xml

    At this point you will need to download and install the mcuWeb.sar file and

    load it in to sailfin per
    the documentation. You will also need to reference the MCU and mcuWeb info as
    to how to start things up etc.

     
  • Dean Johnson

    Dean Johnson -   2011-10-03

    I should add that MUCH if not most of this was taken from a previous post on
    this forum from owennewo so most of the
    credit goes to him if it works for you as well.

     
  • senner

    senner -   2011-10-07

    Thanks dbjohnso86! Now I can compile the mcumediaserver successfully by your
    suggestion.
    but I had some trouble to configure mcuWeb by MCU Web Interface .
    currently, I have one machine is asterisk(sip server), It's IP is 192.168.1.1,
    another machine is mcuWeb, It's IP is 192.168.1.2;
    I don't kown what to fill to the Media Mixers's Media IP and Public IP in
    order to get them work?
    And how to create the AdHoc Conference Templates,Conference List and Broadcast
    List ?
    May I have your suggetion again? Thank you for your help!

     
  • senner

    senner -   2011-10-07

    And ,when I call into mcu by asterisk, I got the follow message:

    -Dispatching

    ProcessRequest
    -ProcessRequest 
    CreateConference
    <CreateConferencei
    GetConferenceRef
    <GetConferenceRef
    -Init multiconf 
    Couldn't open the logo image file
    Create mosaic
    SetCompositionType
    Updating mosaic
    <Updated mosaic
    <SetCompositionType
    <Create mosaic
    CreateMixer audio
    <CreateMixer audio
    CreateMixer text
    -Text 
    <CreateMixer text
    Init audio encoder
    <Init audio encoder
    Init text encoder
    <Init text encoder
    -SetAudioCodec 
    Init mixer
    PipeAudioOutput init
    <Init mixer
    Init mixer
    PipeTextOutput init
    -AddReader 
    -Text

    <Init mixer

    Start encoding audio
    <StartSending audio
    Start encoding text
    <StartSending text
    ReleaseConferenceRef
    <ReleaseConferenceRef
    -MixAudioThread 
    -MixVideoThread 
    MixVideo
    -MixTextThread 
    MixText
    Encoding audio
    Encode Audio
    -CreateAudioCodec 
    Encoding text
    <ProcessRequest
    -Dispatching 
    ProcessRequest
    -ProcessRequest 
    GetConferenceRef
    <GetConferenceRef
    -SetCompositionType 
    SetCompositionType
    Updating mosaic
    <Updated mosaic
    <SetCompositionType
    ReleaseConferenceRef
    <ReleaseConferenceRef
    <ProcessRequest
    -Dispatching 
    ProcessRequest
    -ProcessRequest 
    GetConferenceRef
    <GetConferenceRef
    StartBroadcaster
    CreateMixer video
    <CreateMixer video
    CreateMixer audio
    <CreateMixer audio
    CreateMixer text
    -Text 
    <CreateMixer text
    -Set transmitter 
    -Recording broadcast 
    Init mixer
    PipeVideoInput init
    PipeVideoOutput init
    <PipeVideoOutput init
    <Init mixer
    Init mixer
    PipeAudioOutput init
    <Init mixer
    Init mixer
    PipeTextOutput init
    -AddReader 
    -Text 
    -AddWritter

    -AddWritter

    <Init mixer

    Start encoding FLV
    <Stop encoding FLV
    <StartBroadcaster
    ReleaseConferenceRef
    <ReleaseConferenceRef
    <ProcessRequest
    -Dispatching 
    ProcessRequest
    -ProcessRequest 
    GetConferenceRef
    <GetConferenceRef
    CreateParticipant
    CreateMixer video
    <CreateMixer video
    CreateMixer audio
    <CreateMixer audio
    CreateMixer text
    -Text 
    <CreateMixer text
    -SetVideoCodec 
    -SetAudioCodec 
    -SetTextCodec 
    Init video stream
    Init RTPSession
    <Init RTPSession
    <Init video stream
    Init audio stream
    Init RTPSession
    -Got ports 
    <Init RTPSession
    <Init audio stream
    Init text stream
    Init RTPSession
    -Got ports 
    <Init RTPSession
    <Init text stream
    Init mixer
    PipeVideoInput init
    PipeVideoOutput init
    <PipeVideoOutput init
    <Init mixer
    Init mixer
    PipeAudioOutput init
    <Init mixer
    Init mixer
    PipeTextOutput init
    -AddReader 
    -Text 
    -AddWritter 
    -AddWritter

    -AddWritter

    -AddWritter

    <Init mixer
    <CreateParticipant

    ReleaseConferenceRef
    <ReleaseConferenceRef<br>Encoding FLV video
    -SetSize 
    -OpenCodec FLV1 
    mcu: pthread_mutex_lock.c:62: __pthread_mutex_lock: Assertion `mutex->data.owner == 0' failed.
    Aborted

    I don't kown what's meaning,... please help....Thanks!

     
  • Dean Johnson

    Dean Johnson -   2011-10-07

    Regarding the ip to use you should put the ip of the machine that you are
    running the mcu on -- so 192.168.1.2 in your case. Also I am using the same ip
    for public (but I am not 100% sure the purpose for the public as I have not
    looked at that part of the code yet) however that being said my install is
    working...

    Regarding the "mcu: pthread_mutex_lock.c:62: pthread_mutex_lock: Assertion
    `mutex->
    data.__owner == 0' failed" part I also was experiencing that error
    so I went back to 9/14/2011 svn to function while I diagnose and solve that
    issue... So short of someone else on here having the answer for that one >I<
    am using an older version while I work on the issue with an alternate machine.

    Currently, I have one machine is asterisk(sip server), It's IP is 192.168.1.1,
    another machine is mcuWeb, It's IP is 192.168.1.2; I don't kown what to fill
    to the Media Mixers's Media IP and Public IP in order to get them work? And
    how to create the AdHoc Conference Templates,Conference List and Broadcast
    List ? May I have your suggetion again? Thank you for your help!

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-10-07

    The media IP is the IP that will be sent in the SDP from Sailfin, so it
    control were Asterrisk will send the RTP data to (so it shall correspond to
    the IP of the mcu server avalable for asterisk).

    The public IP address is user for building the rtmp url that is sent by the
    web intarface for conference webcasting or the broadcast feature.

    About the seg fault, I don't get it in any of my servers, so it is difficult
    to trace. If you could provide me an access to your server I could try to get
    a look.

    BR
    Sergio

     
  • senner

    senner -   2011-10-10

    Thanks dbjohnso86 & Sergio ! Thanks for your help, It working now! just like
    dbjohnso86's suggestion: "I went back to 9/14/2011 svn to function while I
    diagnose and solve that issue"

     
  • Dean Johnson

    Dean Johnson -   2011-10-10

    Finally I was able to get a Centos 5.7 install up and working as the MCU
    interface running on the newest SVN. This WAS my "White Whale" ;) It may take
    some time before I am able to re-produce the build as I got stumped several
    times and had to back things out etc. so it's certainly not a pristine install
    albeit a working one. Next test is to see if the Polycom devices work!

     
  • guigar

    guigar -   2011-11-23

    i have used the step guide of dbjohnso86 but when i try to compile
    mcumediaserver rev 411 i have got this error:

    g++ -I/usr/local/src/mcu/media/include/ -g -O0 -DLOG_ -D_UNIX
    -D__STDC_CONSTANT_MACROS -fPIC -c /usr/local/src/mcu/media/src/rtmptest.cpp -o
    /usr/local/src/mcu/media/build/debug/rtmptest.o
    In file included from /usr/local/src/mcu/media/src/rtmptest.cpp:10:0:
    /usr/local/src/mcu/media/include/rtmphandshake.h: In function âint
    VerifyC1Data(uint8_t*, uint32_t)â:
    /usr/local/src/mcu/media/include/rtmphandshake.h:126:39: error: âLogâ was not
    declared in this scope
    make: Errore 1
    make: uscita dalla directory "/usr/local/src/mcu/media"
    make: 
    Errore 2

    how i can fix this?

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-11-25

    This error is in the test application, you can ignore it as the mcu will be
    already compiled.

    I will anyway fix it and commit the change during today.

    Thank you very much for reporting it
    Sergio

     
  • drazielr

    drazielr -   2011-12-07

    Sergio I have the same problem, is not fixed yet and this can't be ignored
    'cause the server wont be up with the current script:

    In file included from /usr/local/src/mcu/media/src/rtmptest.cpp:10:0:
    /usr/local/src/mcu/media/include/rtmphandshake.h: In function âint
    VerifyC1Data(uint8_t*, uint32_t)â:
    /usr/local/src/mcu/media/include/rtmphandshake.h:126:39: error: âLogâ was not
    declared in this scope
    make: Error 1
    make: Leaving directory `/usr/local/src/mcu/media'
    make: 
    Error 2

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-12-07

    Hi,

    I did fix this issue in one of the latest versions, are you sure you are using
    latest svn head?

    BR
    Sergio

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-12-07

    You were right.

    Updated and committed fix to repository. Please, try again.

    BR
    Sergio

     
  • Anonymous

    Anonymous -   2011-12-08

    Thanks Sergio for all the work you do and have done on this project...

     
  • Samat Toibazarov

    Samat Toibazarov -   2011-12-09

    I am using ubuntu 10.04, and followed the instructions but when compiling the
    mcu getting this type of error:

    root@ubuntu:/usr/local/src/mcu# make
    mkdir -p bin
    make -C media
    make[1]: Entering directory `/usr/local/src/mcu/media'
    mkdir -p /usr/local/src/mcu/media/build/debug
    mkdir -p /usr/local/src/mcu/bin//debug
    g++ -I/usr/local/src/mcu/media/include/  -g -O0 -DLOG_ -D_UNIX -D__STDC_CONSTANT_MACROS -fPIC -c /usr/local/src/mcu/media/src/xmlrpcserver.cpp -o /usr/local/src/mcu/media/build/debug/xmlrpcserver.o
    /usr/local/src/mcu/media/src/xmlrpcserver.cpp: In constructor ‘XmlRpcServer::XmlRpcServer(int)’:
    /usr/local/src/mcu/media/src/xmlrpcserver.cpp:38: error: ‘ServerReqHandler3’ was not declared in this scope
    /usr/local/src/mcu/media/src/xmlrpcserver.cpp:38: error: expected ‘;’ before ‘abbysHndlr’
    /usr/local/src/mcu/media/src/xmlrpcserver.cpp:41: error: ‘abbysHndlr’ was not declared in this scope
    /usr/local/src/mcu/media/src/xmlrpcserver.cpp:47: error: ‘ServerAddHandler3’ was not declared in this scope
    make[1]: *** [xmlrpcserver.o] Error 1
    make[1]: Leaving directory `/usr/local/src/mcu/media'
    make: *** [all] Error 2
    
     
  • Anonymous

    Anonymous -   2011-12-09

    drazlielr I have not had any issues with X-Lite, Bria-3 Marial or Jitis when
    running on 415 ... In my case I have XP and W7 & Centos 6/64 machines and have
    had no issues since updating 2 days ago though I use to get disconnected after
    (2) minutes about 20 revisions ago or so...

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-12-09

    Hi all,

    2 minutes disconnection used to be for missing RTCP packets (which was solved
    a quite ago). Getting disconnected at 20/30 seconds has happened to me when
    ACK is sent to a wrong IP. I would recommend you to take an ethereal capture
    of the client side and check it.

    BR
    Sergio

     
  • JasonK

    JasonK -   2011-12-21

    Hi all,

    Have a heck of a time building this mcu. This is r423 from SVN. I am getting
    following error - any ideas how to resolve so I can complete the build? I have
    confirmed that openssl dev lib and headers exist on system as well. This is on
    ubuntu 11.10 desktop.

    Thanks!

    Jason

    /usr/local/src/mcu/media/build/debug/rtmpconnection.o: In function
    HMACsha256': /usr/local/src/mcu/media/include/rtmphandshake.h:71: undefined reference toHMAC_CTX_init'
    /usr/local/src/mcu/media/include/rtmphandshake.h:71: undefined reference to
    EVP_sha256' /usr/local/src/mcu/media/include/rtmphandshake.h:71: undefined reference toHMAC_Init_ex'
    /usr/local/src/mcu/media/include/rtmphandshake.h:72: undefined reference to
    HMAC_Update' /usr/local/src/mcu/media/include/rtmphandshake.h:73: undefined reference toHMAC_Final'
    /usr/local/src/mcu/media/include/rtmphandshake.h:73: undefined reference to
    `HMAC_CTX_cleanup'
    collect2: ld returned 1 exit status

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-12-21

    Hi,

    Could you check if those symbols are inside the openssl for ubuntu 11.10:

    objdump -T libssl.so | grep HMAC

    Also check which libraries does it depends on with ldd and check if they are
    in any of them. I have been googling a bit and found that a similar error was
    resolved by adding -lssl -lcrypto

    Best regards
    Sergio

     
  • JasonK

    JasonK -   2011-12-21

    Hey Sergio, Thanks for the update --

    root@video:~# objdump -T libssl.so | grep HMAC
    objdump: 'libssl.so': No such file

    root@video:~# dpkg -L libssl-dev | grep libssl.so
    /usr/lib/i386-linux-gnu/libssl.so

    root@video:/etc# ldconfig -v | grep libssl
    libssl.so.1.0.0 -> libssl.so.1.0.0
    libssl3.so -> libssl3.so.1d

    Any ideas? Where would I add the -lssl and -crypto (media/Makefile) ??

     
  • Sergio Garcia Murillo

    Sergio Garcia Murillo -   2011-12-21

    yes, in the media/Makefile

    objdump -T /usr/lib/i386-linux-gnu/libssl.so | grep HMAC
    ldd /usr/lib/i386-linux-gnu/libssl.so

     
  • JasonK

    JasonK -   2011-12-21

    Says its there?

    root@video:/etc# objdump -T /usr/lib/i386-linux-gnu/libssl.so | grep HMAC
    00000000 DF UND 00000000 OPENSSL_1.0.0 HMAC_CTX_cleanup
    00000000 DF UND 00000000 OPENSSL_1.0.0 HMAC_CTX_init
    00000000 DF UND 00000000 OPENSSL_1.0.0 HMAC_Final
    00000000 DF UND 00000000 OPENSSL_1.0.0 HMAC_Init_ex
    00000000 DF UND 00000000 OPENSSL_1.0.0 HMAC_Update
    root@video:/etc# ldd /usr/lib/i386-linux-gnu/libssl.so
    linux-gate.so.1 => (0x0059e000)
    libcrypto.so.1.0.0 => /lib/i386-linux-gnu/libcrypto.so.1.0.0 (0x00a09000)
    libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0x001fb000)
    libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0x003d1000)
    libz.so.1 => /lib/i386-linux-gnu/libz.so.1 (0x00519000)
    /lib/ld-linux.so.2 (0x00916000)

     

猜你喜欢

转载自blog.csdn.net/wh8_2011/article/details/80642171
今日推荐