[Asterisk-video] Videomixing in MeetMe

Klaus Darilion klaus.mailinglists at pernau.at
Fri Jun 15 07:35:06 CDT 2007


Hi Lorenzo!

Now with ortp 0.13.1 and adding -lavutil:

darilion at samuel:/export/darilion/confiance/confiance_videomixer-0.1$ make
gcc  -ggdb -o cvm.o -c cvm.c -Wall -Wstrict-prototypes 
-Wmissing-prototypes -Wmissing-declarations -O2
gcc  -ggdb -o cvm_protocol.o -c cvm_protocol.c -Wall -Wstrict-prototypes 
-Wmissing-prototypes -Wmissing-declarations -O2
gcc  -ggdb -o cvm_session.o -c cvm_session.c -Wall -Wstrict-prototypes 
-Wmissing-prototypes -Wmissing-declarations -O2
gcc  -ggdb -o confiance_vm cvm.o cvm_protocol.o cvm_session.o -Wall 
-Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -O2 
-lortp -lavcodec -lavformat -lavutil -lpthread
/usr/local/lib/libavformat.a(utils.o)(.text+0x2947): In function 
`av_find_stream_info':
/export/darilion/confiance/ffmpeg/libavformat/utils.c:1908: undefined 
reference to `avcodec_pix_fmt_to_codec_tag'
/usr/local/lib/libavformat.a(allformats.o)(.text+0x21): In function 
`av_register_all':
/export/darilion/confiance/ffmpeg/libavformat/allformats.c:47: undefined 
reference to `avcodec_register_all'
/usr/local/lib/libavformat.a(raw.o)(.text+0xb3c): In function `ac3_probe':
/export/darilion/confiance/ffmpeg/libavformat/raw.c:435: undefined 
reference to `ff_ac3_parse_header'
/usr/local/lib/libavformat.a(mov.o)(.text+0x213b): In function 
`mov_read_cmov':
/export/darilion/confiance/ffmpeg/libavformat/mov.c:1136: undefined 
reference to `uncompress'
/usr/local/lib/libavformat.a(mp3.o)(.text+0x92): In function 
`mp3_read_probe':
/export/darilion/confiance/ffmpeg/libavformat/mp3.c:410: undefined 
reference to `ff_mpa_decode_header'
collect2: ld returned 1 exit status


I tried to change the order of the ffmpeg libraries during linking, but 
then other errors occour.


regards
kalus

Lorenzo Miniero wrote:
> Hi Klaus,
> 
> first of all thanks for giving the videomixer a try!
> 
> libortp4 must be really updated, since the latest version of oRTP is 
> 0.13.1, which is the one I'm using. In case you don't find a deb 
> package, you can get the source here:
> 
> 	http://download.savannah.nongnu.org/releases/linphone/ortp/sources/
> 
> About FFmpeg, the LIBS variable is probably missing a -lavutil. Try 
> adding it after -lavformat. Let me know if it fixes the problem and I'll 
> correct it in the package too.
> 
> Cheers,
> Lorenzo
> 
> 
> Klaus Darilion ha scritto:
>> Hi Lorenzo!
>>
>> I have problems when linking the videomixer:
>>
>> cvm_session.o(.text+0x93b): In function `cvm_peer_new':
>> /export/darilion/confiance/confiance_videomixer-0.1/cvm_session.c:315: 
>> undefined reference to `rtp_session_set_connected_mode'
>> /usr/local/lib/libavformat.a(utils.o)(.text+0x2947): In function 
>> `av_find_stream_info':
>> /export/darilion/confiance/confiance_videomixer-0.1/ffmpeg/libavformat/utils.c:1908: 
>> undefined reference to `avcodec_pix_fmt_to_codec_tag'
>> /usr/local/lib/libavformat.a(allformats.o)(.text+0x21): In function 
>> `av_register_all':
>>
>> I use libort4 (from backports.org for debian woody) and
>> ffmpeg self-installed from todays SVN trunk.
>>
>> Which version of ortp do you use.
>>
>> regards
>> klaus
>>
>>
>>
>> Lorenzo Miniero wrote:
>>> Klaus Darilion ha scritto:
>>>> Hi Lorenzo!
>>>>
>>>> How can the VideoMixer be used with Asterisk?
>>>>
>>>> regards
>>>> klaus
>>> Hi Klaus,
>>>
>>> both the videomixers are external elements, which receive commands 
>>> through dedicated protocols. The patch which you can get on 
>>> http://confiance.sf.net/ enables MeetMe to talk this protocols, and to 
>>> bridge the video RTP connections between the users and the active 
>>> videomixer.
>>>
>>> Regards,
>>> Lorenzo
>>>
>>>
>>>> Lorenzo Miniero wrote:
>>>>> Hi all,
>>>>>
>>>>> I just uploaded on the CONFIANCE webpage, http://confiance.sf.net/, 
>>>>> the patch to enable videomixing and continuous presence in MeetMe. 
>>>>> The patch enables such functionality both for our enhanced MeetMe 
>>>>> (i.e. video sources are enabled/disabled through BFCP moderation) and 
>>>>> for basic MeetMe rooms (the videoswitch console command I uploaded 
>>>>> some time ago is used to enable/disable video sources). All the 
>>>>> instructions needed to build and configure it are attached with the 
>>>>> patch.
>>>>>
>>>>> To provide such a feature MeetMe can make use of two videomixers:
>>>>>
>>>>>     * the CONFIANCE VideoMixer we're writing (available on 
>>>>> http://confiance.sf.net/);
>>>>>     * the VideoMixer Sergio Garcia Murillo is writing (available via 
>>>>> svn, svn co http://sip.fontventa.com/svn/mcu, needs xmlrpc-c 1.1).
>>>>>
>>>>> You can choose which one to use by setting a value in the 
>>>>> configuration file. You can even disable them both and still rely on 
>>>>> basic videoswitching, if you're not interested in videomixing...
>>>>>
>>>>> All is work in progress, so both Sergio and I would really appreciate 
>>>>> any kind of feedback you'll be able to provide us.
>>>>>
>>>>> I'll spend two words on my work, and I'll let Sergio speak of his own 
>>>>> since I couldn't do it better than him. The CONFIANCE VideoMixer 
>>>>> currently provides:
>>>>>
>>>>>     * adaptive layouts according to how many active video sources are 
>>>>> feeding the mix;
>>>>>     * continuous presence for up to 8 users (this can be easily 
>>>>> enhanced by adding new layouts in the code; if you look at the code, 
>>>>> you'll see that creating and modifying layouts is really simple);
>>>>>     * a static logo when no video sources are active;
>>>>>     * support for H.261, H.263 and H.263+ (QCIF only for the moment).
>>>>>
>>>>> Currently, only one global layout is available for all users in the 
>>>>> same conference, but this will be changed in the future.
>>>>>
>>>>> We tested it with many softphones, as:
>>>>>
>>>>>     * Minisip, one the softphone we're enhancing to add XCON support, 
>>>>> and which makes use of H.263+ as codec;
>>>>>     * another custom client we're writing, making use of H.263 (JMF);
>>>>>     * X-Lite 3.0, H.263;
>>>>>     * Ekiga stable 2.0.x (H.261).
>>>>>
>>>>> All work quite fine except Ekiga, since H.261 support in our 
>>>>> videomixer is still quite buggy (probaby related to how we handle the 
>>>>> H,261 payload header), and sometimes makes Ekiga crash. Any feedback 
>>>>> upon this will be more than welcome!
>>>>>
>>>>>
>>>>> If you're interested in knowing something more about the 
>>>>> implementation details and/or how the videomixers have been 
>>>>> integrated in MeetMe, feel absolutely free to ask.
>>>>>
>>>>>
>>>>> Hope to hear you soon, regards,
>>>>> Lorenzo
>>>>>
>>>> _______________________________________________
>>>> --Bandwidth and Colocation provided by Easynews.com --
>>>>
>>>> asterisk-video mailing list
>>>> To UNSUBSCRIBE or update options visit:
>>>>   http://lists.digium.com/mailman/listinfo/asterisk-video
>>>>
>> _______________________________________________
>> --Bandwidth and Colocation provided by Easynews.com --
>>
>> asterisk-video mailing list
>> To UNSUBSCRIBE or update options visit:
>>    http://lists.digium.com/mailman/listinfo/asterisk-video
>>
> 
> 



More information about the asterisk-video mailing list