Trac is being migrated to new services! Issues can be found in our new YouTrack instance and WIKI pages can be found on our website.

Version 45 (modified by Maiku, 16 years ago) (diff)

--

GSoC2008: Voice and Video Support

Student: Mike Ruprecht (Maiku)

To-Do:

  1. Port Pidgin to use Farsight 2 (Done: until the next version is released)
  2. Finish XMPP audio conference implementation (Making good progress: it works)
    • Fix up libPurple voice conversation support
    • Fix up Pidgin voice conversation support
    • Complete XMPP voice conversation support
    • Add support for GTalk's voice conversation implementation (requires libnice)
  3. Implement XMPP video conference implementation (Making good progress: it works)
    • Add libPurple video conversation support
    • Add Pidgin video conversation support
    • Add XMPP video conversation support

Tips for Testers:

Make sure you are using the latest revision of im.pidgin.soc.2008.vv before asking questions and submitting bug reports. It might be a good idea to review UsingPidginMonotone.

If you're following the UsingPidginMonotone HOWTO, use "im.pidgin.soc.2008.vv" instead of "im.pidgin.pidgin".

For help with building, see Compiling Pidgin. Please carefully read through that section and any extra information for the distribution you're using.

Make sure you have:

  • gstreamer0.10-plugins-good
  • gstreamer0.10-plugins-bad (not sure which version, but it needs to include the gstrtpbin plugin)
  • gstreamer0.10-plugins-farsight >= 0.12.6

in addition to the extra compiling requirements of:

Note: until Farsight 2's ICE transmitter (libnice) is completed, NAT traversal might not work very well. So, if you're behind a firewall, you'll probably only be able to start sessions within your local network.

Update: now that STUN works with the rawudp transmitter, calls should work through NATs to some degree.

Additional Tips for Debian/Ubuntu? Users:

You'll need these packages from the your Debian/Ubuntu? repositories, instead of the ones listed above:

  • [apt://gstreamer0.10-plugins-good gstreamer0.10-plugins-good]
  • [apt://gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad]
  • [apt://libgstreamer-plugins-base0.10-dev libgstreamer-plugins-base0.10-dev]

in addition to these packages you'll have to get from the Debian packages site (unless you're running experimental):

Additional Tips for Fedora Core 9+ Users:

You'll need these packages from the Fedora package repositories, instead of the ones listed above:

  • gstreamer-plugins-good
  • gstreamer-plugins-bad
  • gstreamer-plugins-base-devel
  • gstreamer-plugins-farsight

You'll also need this package, which needs to be compiled from source.

You have to use FC9+ because otherwise the gstreamer base package is too old to support the farsight2 package above, and rebuilding it is impractical because things like mplayer, totem and all other multimedia stuff might be killed by that.

REMAINDER IS A WORK IN PROGRESS FOR FEDORA CORE SPECIFIC BUILD, PLEASE IGNORE FOR NOW... [ Please leave it here for now. Maiku, I tried to email you but the address on your Trac profile seems to have bounced. I don't know how to create my own temporary page with Trac, but that would help?? ]

I wish Maiku hadn't deleted these configure lines (which I am still working on), because Fedora installs various libraries and includes in non-standard subdirectories, and I need to not forget these until I have (definitely) got it working, at which point I will replace them with proper documentation.

(Seems to work on FC8 as far as completing build) ./configure --enable-gnutls=no --enable-nss=yes --enable-cyrus-sasl --enable-tcl --enable-tk --disable-schemas-install

(May be useful to coax avahi support into the build, which is the default) AVAHI_CFLAGS=-I/usr/include/avahi-glib ./configure --with-avahi-client-includes=/usr/include/avahi-client --with-avahi-client-libs=/usr

(Kyrian)

(Maiku) I added my email address to my profile page. Let us discuss this further there.

All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!