Re: [Asterisk-video] Simple vidéo conference

Sergio Garcia sergio.garcia at fontventa.com
Fri Jun 8 02:55:35 MST 2007




---------- Original Message ----------------------------------
From: Lorenzo Miniero <lorenzo.miniero at unina.it>
Date:  Fri, 8 Jun 2007 07:56:46 +0200

>Hi all,
>
>
>On Thursday 07 June 2007 22:52:20 Sergio Garcia Murillo wrote:
>> Hi everyone,
>>
>> I've been working on a video mixer latelly, with the help of Lorenzo
>> Miniero we've been able ablo to integrate it with app_conference (althougth
>> I still don't have the details).
>
><cut>
>
>
>Actually I'm integrating it into app_meetme, since it's the application we're 
>using as a basis for Confiance (http://confiance.sf.net), a prototype 
>implementation of the IETF XCON framework 
>(http://www.ietf.org/html.charters/xcon-charter.html), which is the 
>conference control protocols Sergio is talking about. The integration with 
>Sergio's mixer also includes the mapping of floor control with video source 
>enabling: which means basically that video can be moderated by means of a 
>dedicated protocol (BFCP) standardized in XCON instead of using DTMF.
>
>However, I'm sure integrating it into app_conference would not take much 
>efforts, and I'll be glad to be of help if needed.
>

I've been talking yesterday also with Ramtin about jis work on the subject.
It seems that our current developements are very "synergistic", and both of
three have a very similar idea of what needs to be done.

>From a general architecture point of view, the system will be split in three
main functionall blocks: a signaling server, a conference unit, and a media 
procesing server. Each one of us is focussing it's work in one of the areas, so 
i think it will be great to collaborate an integrate our projects together.
(I will also invite anyone to join, expecially Francesco, who has made an
excellent work in the h324m project).

The signalling server will deal with the sip negotiation, and it would need
to be integrated with the conference unit. This could be integrated in asterisk
or be in a separate server (Ramtin work).

The conferenc control is what Lorenzo is currently doing, a central unit that
will handle resource reservation, floor control, and probably web interface for
admin and things like that. Currently his work is been implemented integrated
with app_conference.

And the video mixer (my part) will only deal with rtp streams, performing 
encoding/decoding process and media mixing. It will be controlled by the 
conferenc unit via an http/xml protocol. The current api is this:

void *  CreateMCUClient(char *url);
void    DestroyMCUClient(void *mcu);

int     CreateConference(void *mcu,char *name);
int     CreateParticipant(void *mcu,int confId);

//Video
int     SetVideoCodec(void *mcu,int confId,int partId,int codec,int mode,int fps,int bitrate);
int     StartSendingVideo(void *mcu,int confId,int partId,char *sendVideoIp,int sendVideoPort);
int     StopSendingVideo(void *mcu,int confId,int partId);
int     StartReceivingVideo(void *mcu,int confId,int partId,int *recVideoPort);
int     StopReceivingVideo(void *mcu,int confId,int partId);
int     IsSendingVideo(void *mcu,int confId,int partId,int *isSending);
int     IsReceivingVideo(void *mcu,int confId,int partId,int *isReceiving);

//Audio
int     SetAudioCodec(void *mcu,int confId,int partId,int codec);
int     StartSendingAudio(void *mcu,int confId,int partId,char *sendAudioIp,int sendAudioPort);
int     StopSendingAudio(void *mcu,int confId,int partId);
int     StartReceivingAudio(void *mcu,int confId,int partId,int *recAudioPort);
int     StopReceivingAudio(void *mcu,int confId,int partId);
int     IsSendingAudio(void *mcu,int confId,int partId,int *isSending);
int     IsReceivingAudio(void *mcu,int confId,int partId,int *isReceiving);
int     DeleteParticipant(void *mcu,int confId,int partId);
int     DeleteConference(void *mcu,int confId);

Comments are welcome

Greetings
Sergio




 


More information about the asterisk-video mailing list