Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/psi-im/psimedia

Audio/video RTP abstraction library
https://github.com/psi-im/psimedia

c-plus-plus gstreamer jingle library qt voip-communications xmpp

Last synced: 2 days ago
JSON representation

Audio/video RTP abstraction library

Awesome Lists containing this project

README

        

PsiMedia

PsiMedia is a thick abstraction layer for providing audio and video RTP services to Psi-like IM clients. The implementation is based on GStreamer.

For more information, see this article.

Currently it is used for video- and audio-calls support in Psi IM and Psi+ projects.

License

This library is licensed under the Lesser GNU General Public License. See the COPYING file for more information.

Versions history

See CHANGELOG file.

Build dependencies



  • qconf (optional)

  • qtbase >= 5.6

  • glib >= 2.0

  • gobject >= 2.0

  • gthread >= 2.0

  • gstreamer >= 1.10.4

  • gst-plugins-base >= 1.10.4

Installation

Contents:


psimedia/ API and plugin shim
gstprovider/ provider plugin based on GStreamer
demo/ demonstration GUI program

To build the plugin and demo program, run:

sh
qt-qconf
./configure
make

There is no make install target in this case. The compiled plugin may be found under the gstprovider directory. An application that uses PsiMedia should have instructions on what to do with the plugin.

For example, in Psi+ program gstprovider plugin should be placed into:



  • /usr/lib/psi-plus/plugins/ in GNU/Linux systems

  • the root Psi+ directory on MS Windows systems (for example, C:\\Program Files\Psi+\)

If you want to test demo program, use environment variable PSI_MEDIA_PLUGIN for setting the path to gstprovider plugin. For example:


PSI_MEDIA_PLUGIN=/usr/lib/psi-plus/plugins/libgstprovider.so ./demo

Alternatively you may build plugin and demo using cmake:

sh
mkdir -p builddir
cd builddir
cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
make

There is special "make install" target in this case oriented to Psi IM users, see:


make install DESTDIR=./out
tree ./out