Hello, In the near future, there will be a Farsight 2 API break for external reasons. I'm using it as an opportunity to improve the API a bit.
I've made a branch [1] implementing some changes: A. * Rebased the objects on top of GstObject, this give us nice objects names, should make debugging easier * Removed the "cname" parameter from fs_conference_new_participant() * Move the "cname" property from the FsParticipant base class to the RTP subclass * Removed the "error" signal on FsParticipant (it was never used) * Removed FS_ERROR_UNKNOWN_CNAME * Removed "debug-msg" from the "farsight-error" messages, it was almost always a duplicate of the "error-msg" * Bump the GLib dep to 2.16 (for g_prefix_error()) * Make rawudp/multicast use _force_remote_candidates() instead of _set_remote_candidates(). So it now behaves exactly like the nice transmitter. There are some more changes I'd like to make: * Replace _set_remote_candidates() with _add_remote_candidates(), to make it clear that candidates are not replaced on set anymore (since force does that) * BUT: I'm not sure how to implement the ICE restart API, currently one does fs_stream_set_remote_candidates(stream, NULL) and it causes a ICE restart. It does not seem natural with _add_remote_candidates(). Maybe we need an explicit API (_restart_ICE() or something). Or maybe use _force_remote_candidates(stream, NULL) .. Opinions? * Maybe change the way STUN servers are set to allow for multiple STUN servers. Is there anyone who wants this? And what about preferred APIs ? So right now, to port an application one needs to: * Remove the cname parameter from fs_conference_new_participant() * Remove any trace of FS_ERROR_UNKNOWN_CNAME * Not listen to the "error" signal on FsParticipant (which was never used anyway). * Not try to read the "debug-msg" signal * Make sure the right one of _force_remote_candidates() or _set_remote_candidates() is used in the rawudp case (see [2] for an example) I also ported telepathy-farsight [3] for those who care, it should not affect applications using it. Also, dear users/developers, please tell me what you dislike about the API and what I could do to make your lives easier. [1] http://git.collabora.co.uk/?p=user/tester/farsight2.git;a=shortlog;h=refs/heads/api-break [2] http://git.collabora.co.uk/?p=user/tester/farsight2.git;a=blobdiff;f=tests/check/rtp/conference.c;h=4e1c1216fc8bcae68dcce1ee5b23dff747cfa9e4;hp=2d947f95417d62a54d89b8a52253cf50917efa03;hb=75ae3f613b5a8765f39ba5ed1b65a5c796fa4921;hpb=08472f8f9be33c7b59050eacc0ff5ce0db7b016d [3] http://git.collabora.co.uk/?p=user/tester/telepathy-farsight.git;a=shortlog;h=refs/heads/api-break -- Olivier Crête olivier.cr...@collabora.co.uk
signature.asc
Description: This is a digitally signed message part
------------------------------------------------------------------------------
_______________________________________________ Farsight-devel mailing list Farsight-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/farsight-devel