Stream videso through external player
![stream videso through external player stream videso through external player](https://technogog.com/wp-content/uploads/2009/02/windowslivewritermed0multimediaexternalidehddplayerseaga-d6c0dscf4082-2.jpg)
The default 16 pending buffers should be way more than enough You really shouldn't need to tweak these unless you know exactly what you are doing. So the main issue that you will be having right now is how often you are sending messages. Normally, the highest you would ever go with send-rates is around the 20 messages per second, but that's for high-end games targeting pc/console where there will be a small number of players sending very small messages. Secondly, and very likely to be tied into the error that you are getting, your StreamClient class is sending a message to a connection every frame!! If you haven't set a target frame rate via tTargetFrameRate, this could potentially mean that you are sending thousands of messages to that connection per second. I think there is some auto-serialization within MessageBase classes, but you definitely don't want to rely on that.So I would recommend that if you want to use a MessageBase, make sure to implement the serialization of it. In your StreamClient class, the call to NetworkMessage.ReadMessage calls Deserialze, again which you haven't implemented. When you pass the instance of your TextureInfoMessage to NetworkServer.SendToClient, it calls the Serialize method, to which you haven't implemented. Notice that it implements the Serialize and Deseriaze mehods, where properties of the class are converted/deconstructed to/from a byte array. Have a look here in the documentation to see a fully implemented MessageBase. Firstly, your MessageBase is pretty much redundant. So looking at your code, there's a few issues here. If anyone could help me out or point me in the right directions that would be awesome. It seems that I need to look at serialization, but I don't really know where to start. I tried to raise the limit to 500 but it doesn't change (even for really small images). ), but when I try to send the texture itself (that I transformed into a byte with GetRawTextureData), I get a "channelBuffer limit reached" error. I'm able to transfer all the information related to the texture (size, format. So far, I've created a server and client class along with a TextureMessage class (inherits from MessageBase). Moreover, since the server and client will be running on the same computer, I assume that it would not be lagging (am I right ?). I'm not really familiar with networking in Unity but it seems quite doable. So now I need to stream the video through the network. Since in the second mode the texture is not rendered by Unity, I can't just have a duplicate environment to display the same texture.
#Stream videso through external player windows#
After some research, I realized that Unity doesn't handle additional windows (that I could move to another screen for instance) and that I have to create another application and network them.
![stream videso through external player stream videso through external player](https://www.ninetech.com/wp-content/uploads/2020/05/billboard-kundklubb-lojalitet-2048x1295.jpg)
I need to display this same texture on an external window. On the second mode, the texture is filled in a C++ plugin (using "getNativePtr") from a video stream. The first one uses the virtual environment to render some stuff and display it on a texture. I currently have an application running on a single window. I know this question has been addressed on several occasions but I can't find a complete solution to the problem.