[Nice] integrating nice to another project
Youness Alaoui
youness.alaoui at collabora.co.uk
Mon Aug 20 07:48:14 PDT 2012
Hi,
There's a "gio" branch on my repository which has an incomplete/non-working
commit which adds a GIoStream to libnice.
http://cgit.collabora.com/git/user/kakaroto/libnice.git/log/?h=gio
Note that it hasn't been worked on since January 2010...
I suppose if that was working, you could have done a g_io_stream_splice on the 2
channels...
Other than that, no, I guess the recv callback should send on the
g_output_stream and the g_input_stream read callback should send with
nice_agent_send, and that's as simple as that.
Youness.
On 08/17/2012 08:16 PM, Andrés Suero wrote:
> Long time Youness,
> I have another question, Is there an easy way to add a g_io_channel as source
> and receiver of data of an agent?
>
> Thanks a lot,
> Andrés Suero
>
> On Wed, May 23, 2012 at 10:37 AM, Andrés Suero <kaneda.uy at gmail.com
> <mailto:kaneda.uy at gmail.com>> wrote:
>
> Thanks a lot for your help Youness!
>
>
> On Tue, May 22, 2012 at 9:54 PM, Youness Alaoui
> <youness.alaoui at collabora.co.uk <mailto:youness.alaoui at collabora.co.uk>> wrote:
>
> Libnice is indeed thread safe, but you have no reason to be using a thread.
> Libnice also requires you to be running the mainloop, otherwise it won't
> work,
> so make sure to run the mainloop, as for your socket, just add a GSource
> on a
> g_io_channel on your socket.
>
> On 05/20/2012 04:28 PM, Andrés Suero wrote:
> > Youness,
> > Thanks for your response, what we have is a socket that bring us the
> information, then we transfer peer to peer with libnice, and another
> socket where we need to put the info that we receive from the peer to
> peer connection.
> > The issue is that the info that we need to transfer to the other peer
> is not given all in one call, we need to check is theres info in the
> socket time to time to see if theres more, and if it is, we need to send it.
> > Is there a way to add a signal to be called in some period of time in
> the future, so we can check if we have new info to transmit, or some
> other way to get this effect?
> > The other (complicated) way that I thought was to start a thread when
> we receive the READY state and within this thread call to receive data
> from the socket and call to sendit peer to peer, but I don't know if
> this is going to crash all over the place because the call to the
> libnice to send is going to be from another thread.
> >
> > Another question, Is there a way to attach a function to a signal with
> a context? this way I don't need to have a lot of global variables.
> >
> > Attached is an example of our code.
> >
> > Thanks,
> > Andrés Suero.
> >
> >
> >
> >
> > On 5/19/2012 5:16 PM, Youness Alaoui wrote:
> >> Hi,
> >>
> >> I'm not exactly sure why you're doing this, libnice is meant to
> create peer to
> >> peer connections, it's not meant to be used on a server that proxies data
> >> between two peers.
> >> Either way, no, the component_state_changed only gets fired when the
> state of
> >> the agent changes, so once it goes into READY, it won't get fired
> again. You
> >> should start your own proxying system only after the state goes to READY.
> >>
> >> Hope that helps,
> >> Youness
> >>
> >> On 05/18/2012 11:08 PM, Federico Kouyoumdjian wrote:
> >>> We are trying to integrate nice to another project.
> >>>
> >>> We have a socket in which we read data when the state of nice is
> >>> NICE_COMPONENT_STATE_READY. Then we send the data read in the socket
> to another
> >>> nice agent with the function nice_agent_send.
> >>>
> >>> Our doubt is what happens if no data is available in the sockt to
> send. If we
> >>> don't call the function nice_agent_send (because there is no data
> available to
> >>> send) can we count that cb_component_state_changed will fire again
> with the
> >>> state NICE_COMPONENT_STATE_READY.
> >>>
> >>> Thanks for the help.
> >>> _______________________________________________
> >>> nice mailing list
> >>> nice at lists.freedesktop.org <mailto:nice at lists.freedesktop.org>
> >>> http://lists.freedesktop.org/mailman/listinfo/nice
> >>
> >>
> >> _______________________________________________
> >> nice mailing list
> >> nice at lists.freedesktop.org <mailto:nice at lists.freedesktop.org>
> >> http://lists.freedesktop.org/mailman/listinfo/nice
> >
> >
> > _______________________________________________
> > nice mailing list
> > nice at lists.freedesktop.org <mailto:nice at lists.freedesktop.org>
> > http://lists.freedesktop.org/mailman/listinfo/nice
>
>
>
> _______________________________________________
> nice mailing list
> nice at lists.freedesktop.org <mailto:nice at lists.freedesktop.org>
> http://lists.freedesktop.org/mailman/listinfo/nice
>
>
>
>
> --
> La información transmitida es sólo para la persona o entidad a la cual está
> dirigida y puede contener material privilegiado y/o confidencial. Está
> prohibida cualquier revisión, retransmisión, difusión o cualquier otro uso
> de esta información, o la realización de cualquier acto en base a esta
> información por personas o entidades diferentes a las originalmente
> dirigidas. Si ha recibido esta información por error, por favor, póngase en
> contacto con el remitente y elimine el material de cualquier computadora.
> Muchas gracias.
>
> The information transmitted is intended only for the person or entity to
> which it is addressed and may contain confidential and/or privileged
> material. Any review, retransmission, dissemination or other use of, or
> taking of any action in reliance upon, this information by persons or
> entities other than the intended recipient is prohibited. If you received
> this in error, please contact the sender and delete the material from any
> computer. Thank you.
>
>
>
>
> --
> La información transmitida es sólo para la persona o entidad a la cual está
> dirigida y puede contener material privilegiado y/o confidencial. Está
> prohibida cualquier revisión, retransmisión, difusión o cualquier otro uso
> de esta información, o la realización de cualquier acto en base a esta
> información por personas o entidades diferentes a las originalmente
> dirigidas. Si ha recibido esta información por error, por favor, póngase en
> contacto con el remitente y elimine el material de cualquier computadora.
> Muchas gracias.
>
> The information transmitted is intended only for the person or entity to
> which it is addressed and may contain confidential and/or privileged
> material. Any review, retransmission, dissemination or other use of, or
> taking of any action in reliance upon, this information by persons or
> entities other than the intended recipient is prohibited. If you received
> this in error, please contact the sender and delete the material from any
> computer. Thank you.
>
>
> _______________________________________________
> nice mailing list
> nice at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nice
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freedesktop.org/archives/nice/attachments/20120820/d4ae547d/attachment.pgp>
More information about the nice
mailing list