Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a video player user control #6

Closed
pubpy2015 opened this issue Jul 15, 2020 · 4 comments
Closed

Create a video player user control #6

pubpy2015 opened this issue Jul 15, 2020 · 4 comments

Comments

@pubpy2015
Copy link

Hi,

I want to play multi streams at same time so i am reading your sample to trying create a user control base on your frmControl.cs but not success.
Can you tell me the way to do this ?
If yes, can you add a method to get current frame (or save as jpeg file) from video/stream ?

@SuRGeoNix
Copy link
Owner

I'm not pretty sure what you mean, but you could possible disable hardware acceleration and get the byte data array and convert it to bitmap and fill it in picture box or something. I'm planning to remove monogame and use only one texture2d for presenting the frames. Then it probably would be easier to create more than one textures for "multi-player".

@SuRGeoNix
Copy link
Owner

Hm... probably you just want to create a complete different UI. That should be possible by adding an array for MediaRouter class and another arrays for Software/Hardware Textures

screenPlay                          = new Texture2D(graphics.GraphicsDevice, 1, 1, false, SurfaceFormat.Color);
screenPlayHW                    = new Control();

Then you should update and present properly the right sw/hw texture from VideoFrameClbk() and ScreenPlay()

@pubpy2015
Copy link
Author

Yes,

Base on your sample, I want create a video player control, can re-used for other projects and can play multi video/streams.

@SuRGeoNix
Copy link
Owner

Yes, I had that in mind but it's not that simple I'm afraid in a way to take advantage of GPU and overall performance. As, I said before, I'm planning to always return a texture 2d so that will be possible, however you should handle the returned texture with Monogame/SharpDX and possible with others such as OpenGL etc. If performance is not that important for your case, you could always return a RGBA bmp format.

There also others things that you need to consider, eg: what about audio on grid/multi-player? Only one video will be able to play audio by the time or you will do an overlay etc...

I guess MediaRouter's future is to be an all in one Video/Audio/Subs & Seeking Bar / Vol Bar etc.. Component and you will be able to enable/disable those features.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants