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