Will it be possible to get access to the Video or Audio Stream Data before it is sent out?
To give some background information on why I am asking: I would like to add command messages to the video stream to send from one device to another. To do that I want to discard a small part of the actual frame and replace it with my command message structure before sending it out. On the receiving end, the command message would then have to be separated from the video frame before displaying it. Alternatively I could also use the audio stream for the command messages, as I won't be needing audio for my application. In the current SDK neither option is available as the publisher takes the video data directly from the surface view and sends it out while the subscriber puts the received stream directly in the surface view to display the video.
Conditionally, yes. We will be able to provide access to the media layers before encoding, however for your situation, what you need is an out of band messaging system. While these are both things we intend to implement, we don't have a schedule for either feature yet. You will be able to get what you need much sooner with a hosted signaling service like Parse or Pusher, used alongside the OpenTok mobile sdk.
Thanks for the tip! Although I would prefer to have everything under the same hood I can settle for Pusher. It serves me quite well.
Now I have another question. Is it possible to use opentok to relay a video stream between two android devices that is not coming from the camera of the device itself? To be more precise, I receive a video stream from an external device (A) over WiFi to display on a Android phone (B) and would like to use opentok to stream it over the web to another Android phone (C). In this case I don't have a Camera object that I can provide to the createPublisher call. I only have the SurfaceView I use to display the video I receive from (A). Where does the opentok library take the video stream in the first place, from the Camera object or from the SurfaceView? Is there a way to skip the Camera object and only use the SurfaceView?
NB: FYI I am using an Asus Transformer Pad TF300T and an HTC One X and streaming video works fine