Wednesday, April 06, 2011 10:07 AM
I want to play eight videos simultaneously in a window, and i'm using eight MediaElement to do that. It's fine until seven videos, the 8th seems not to load at all (it's quite random, the first seven ones are displayed and the last one does nothing). It seems also that it's a software limitation because when I run multiple instances of my application, all of them display seven videos.
So, how can I get my last video working ?
Friday, April 08, 2011 8:53 AM
we just ran into the exact same problem, however in our application eight videos are working and six more are not. Each time you start the application it's another set of videos that works or works not, so it has nothing to do with the media files. I would appreciate if someone has an idea how to solve this.
BTW, I don't think it's a hardware limitation, we're running Win7 Pro 64bit on Intel core i7 3.4 GHz, 16GB RAM, NVIDIA GeForce GTX 470 and a 7200 RPM WD hard drive (which I think is the only bottleneck...)
Friday, April 08, 2011 10:18 AM
we were just playing around with our application and found the problem. Well, we don't really know the problem, but a solution ;) We were initializing all the mediaelements at once in a loop. It seems as if this is "too fast" for the elements so that some of them won't load properly. We now implemented a trigger for each element such that they load their videos at different times one after another and it seems to work (something like a Thread.sleep(100) between initializing the videos might also do). Hope this helps.
Friday, April 08, 2011 10:41 AMSorry for spamming ;) And even more sorry for proposing the wrong solution: it seemed as if starting the videos at different times would work, but the ninth video only started after one of the other ones was already finished (we have quite short videos). So, still not more than 8 videos _in parallel_ :(
Monday, April 11, 2011 10:29 AM
thank you for your reply. I did some other tests with MediaElement objects and I found out it has some other limitations and I can't use it to do what I want.
Here is my task : I have to read eight video playlists synchronously (there are eight capture sources that make small video files I have to recompose, and there is a time offset in each playlist because the captures don't start at the same time). Then, i have to compose one video from that, so it looks like a mosaic of smaller videos. The idea is when this file is built, I can use a simple video player to see (and replay) the eight views synchonized.
So I'm looking on the side of DirectShowNet. I think DES can help me concatenate the pieces of video into one file, then I can use the Video Mixing Renderer to display a mosaic of videos. Then I have a problem, I want to record the result I get from the VMR and obviously it's not possible. The workaround that I thought is to get every frame of every videos (Sample Grabber), build my mosaic, and finally reconvert that into a video file. That seems feasible (but I'm not sure) but quite sub-optimal.
If someone has any better idea, it would be great.