Media Streaming Struggles

Finally, I have our chat server (openfire by JiveSoftware) running, my client connecting to it successfully (using jabber-net C# implementation of an XMPP API). Now I need to figure out how to stream video and audio.

XMPP has Jingle extension for negotiating streaming parameters (format, ports etc.). However, I haven’t found a .Net implementation. I have used JiveSoftware’s Spark client to connect to my server and had a successful voice chat which means Spark has implementation of Jingle. However Spark is implemented in Java, while I had implemented my client in C#. Now the question is to port my client to Java or to extract and port their Jingle library to C#…

Another good news is Openfire supports Flash Video and Audio streaming via a plugin implementing Adobe Flash Media Server (through reverse engineering) called red5. This might come handy when I want to support video as well.

Jingle only negotiates the stream parameters. I have to work on what I can use for compressing and decompressing media. Jingle doesn’t handle such things. Microsoft has a DirectShow API to perform various operations with media files or streams. (Media Foundation is replacing it, but Wikipedia says it won’t support Windows XP, which is still has around %60 of the OS market share.)

So currently I am researching about DirectShow and Flash based Media streaming APIs to incorporate into my client.

You must be logged in to post a comment.