Producer-side steps:
- Receive the stream file descriptor through the socket (given as an eglstreamsocket argument) and create the stream (refer to 
nvgldemo_main.c):eglCreateStreamFromFileDescriptorKHR(demoState.display, fd) - 
            Create the EGLStream surface (refer to 
nvgldemo_main.c).eglCreateStreamProducerSurfaceKHR( demoState.display, demoState.config, demoState.stream, srfAttrs) - 
            Create EGLContext and 
eglMakeCurrenton the EGLStream surface created in step 2. - 
            Start to render the frames and 
eglSwapBuffers.