Programming an RSTP server to send RTP to a 3rd party - c++

I'm writing a server application in C++ that needs to talk to an RTSP server.
Clients will connect to my server application and my application will talk to the RTSP server telling it "Send RTP stream X from your port A to client port B on IP 1.2.3.4 using H.264 encoding".
I started to look for an RTSP tutorial, but most examples just involve a client requesting a URI like rtsp://example.com/media.mp4. I also looked at RFC 2326, but found it quite hard to digest.
Does anybody know a good RTSP tutorial or book ?
Maybe some sample code solving a similar problem or a C++ library that implements RTSP ?

Unless you have a private API i'm not aware of to control the RTSP server, you can't do what you are asking.
What you could do is ask the RTSP server to send to your server the specified stream and forward it to the client.
To comnunicate easily with an rtsp server, you can use gstreamer : http://gstreamer.freedesktop.org/

Related

libvncserver / libvncclient websocket support (to vSphere)?

I am trying to use libvnc to write client application for VMware ESXi 6 vm's consoles.
From ESXi 6 VMware provides websocket for this purpose. They are also released basic HTML5 client for this.
ESXi websocket VNC uses connection path to authorize.
When HTML5 client trying to connect it making request like this:
wss://esxi_host_ip/ticket/secret_token
From my research I know that this method also works with noVNC Client
(https://github.com/kanaka/noVNC)
This client passes "path" parameter to RFB implementation.
From libvnc website I know that it support websockets but I don't know if it is supported on client side and if the answer is YES, how can I do that ?
Finally the answer is NO but simple hack is possible.
Connection to websocket vnc server from libvnc is not directly possible.
As solution for my problem I used custom made tcp to websocket proxy where I firstly negotiating websocket connection and then connecting standard tcp vnc client.

How to make Qt Websocket and QNetworkRequest (HTTP) to use the same connection?

Is it possible with Qt to upgrade a HTTP connection that handles the normal HTTP requests to a Websocket with the same connection?
I'm thinking about something like this with Poco libraries, but all done in Qt similar to QtWebApp.
The simple answer is no and that is mostly because of specifics of the server side. And Qt just follows the protocol available and exposed by the server (HTTP/WebSocket) as mostly the client-side development framework and AFAIK won't be able to do the kind of transformation you want of going from HTTP to Websocket that are two different protocols. But of course, theoretically that can be done as long as both protocols able to use IP port 80. But that implies new unique sever and new unique client implementations.
We use both WebSocket and REST in our app. And WebSocket is for triggering the client by the server to do something. Client gets the "poke" from the server and starts normal JSON HTTP-based exchange with the server.
Somewhat relative link: https://softwareengineering.stackexchange.com/questions/276253/mixing-rest-and-websocket-in-the-same-api

SIP Websocket Client implementation in C++

I need to implement a SIP websocket client using c++. I have npm SIP websocket server. I want to test the connection using c/c++. Is there any easy to use libraries available to implement SIP websocket client in c/c++ ?
If course there is. Have a look at WebSocket++.
As to exactly how to do it - I wouldn't know since I don't know the SIP protocol. But I'll venture a guess that you need to use binary frames in WebSocket. The server, which you say already exists, obviously has implemented it - and its documentation should contain some information on how to interface with it.

How to connect wowza media server from ios device through http?

We are implementing an app in xcode for live streaming which uses the url http://[wowza address]:1935/application to connect the wowza server, but there is no connection established
What are the server side changes to be implemented in addition to the application.xml to connect the server?
When publishing via http, Wowza does not support that. You can see a list of supported codecs for inbound streams here.
You can publish using rtmp or rtsp from ios / mac app and you can have a look at a variety of projects that will do that. You can take a look at their GoCoder solution for comparison.

use of XMPP in flex code on UDP Protocol

I am working private network.This alread developped product which implemented using TCP(client server technology).
Existing product is as follows
There is a UI which is developed using flex, where user can see video or snapshot
There is a server which is developed using c++,which redirects request from UI to gateway.
There is gateway which is connected with the Camera,which stream video to UI through server.
Now we wanted to add p2p technology to existing client server.So it will support TCP as Well As UDP.
Presently we are exploring flex and XMPP to implement the p2p.
as newer version flex of flex support p2p using RTMFP, but thats the propriety protocol of adobe.if we use RTMFP we need to change all the existing code that we dont want
I wanted to implemented to p2p using flex client(UI) which will use XMPP to communicate with Gateway and Server.
So the question is
Is it possible to use XMPP from flex code
Will XMPP support UDP p2p or not.
Yes. You can use the as3xmpp library to communicate to servers using that protocol.
To my knowledge, no. My understanding is that the network protocol used in p2p connections is internalized, and doesn't allow for public APIs to define their own network protocol (unlike Sockets for example).