Hi,

This filter already exists in mediastreamer2, this is the tee filter
(MS_TEE_ID).

Cheers,
Ghislain


On 5 April 2013 10:33, Chanwit Kaewkasi <[email protected]> wrote:

> Hi all,
>
> I am writing a small custom MS filter that is trying to split an input to
> 2 outputs.
>
> Here it is:
>
> MSFilterDesc ms_splitter_desc={
> .id=MS_SPLITTER_ID,
> .name="MSSplitter",
>  .text=N_("Split input to 2 channels"),
> .category=MS_FILTER_OTHER,
> .ninputs=1,
>  .noutputs=2,
> .process=splitter_process,
> .methods=splitter_methods
> };
>
> and here's my splitter_process():
>
> static void splitter_process(MSFilter *f){
> mblk_t *refm;
>
> while((refm=ms_queue_get(f->inputs[0]))!=NULL){
> ms_queue_put(f->outputs[0],refm);
>  ms_queue_put(f->outputs[1],refm);
> }
> return;
> }
>
> But it's likely to freeze the Linphone. My question is quite simple.
> - Can I put "refm" into the output queue twice?
> - Or do I need to make a copy of "refm" first?
> - If so, which function do I need to properly duplicate the packet and
> sending 2 copies of it to the different output channel?
>
>
> Best regards,
>
> -chanwit
>
> --
> Chanwit Kaewkasi
> linkedin.com/in/chanwit
>
> _______________________________________________
> Linphone-users mailing list
> [email protected]
> https://lists.nongnu.org/mailman/listinfo/linphone-users
>
>
_______________________________________________
Linphone-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/linphone-users

Reply via email to