Well, try latest VLC (or devel 1.0) and try vlc file.mp4 --input-slave file2.mp4.
If that works, then do it with libVLC.
Thank you for your input, J-B! Your suggestion works, however I'm having some difficulties achieveing the desired look in my application.
I create a new VLC instance and draw the video output at the appropriate position in the GUI with this code:
Code: Select all
myarg0 = "-I";
myarg1 = "dummy";
myarg2 = "--plugin-path=.\\plugins";
myarg4 = "--input-slave=C:\\Users\\Rasmus\\Desktop\\videos\\test_12345.avi";
char *myargs2[6] = {myarg0, myarg1, myarg2, myarg4, NULL};
libvlc_media_t *m1, *m2;
VLC_exception_init(&excp1);
inst1 = VLC_new(4, myargs2, &excp1);
video_panel1 = new wxPanel(this, -1);
video_panel1->SetInitialSize(wxSize((this->GetSize().GetWidth())/2, (this->GetSize().GetHeight())/2));
HWND vlc_canvas_hwnd1 = reinterpret_cast<HWND>(video_panel1->GetHWND());
libvlc_drawable_t vlc_canvas1 = reinterpret_cast<libvlc_drawable_t>(vlc_canvas_hwnd1);
player1 = VLC_media_player_new(inst1, &excp1);
VLC_media_player_set_drawable(player1, vlc_canvas1, &excp1);
filename1 = "C:\\Users\\Rasmus\\Desktop\\videos\\test_abcde.avi";
m1 = VLC_media_new(inst1, filename1, &excp1);
VLC_media_player_set_media(player1, m1, &excp1);
sizer->Add(video_panel1, 0, wxALL|wxEXPAND, 0);
However, when the "--input-slave" option is included in the creation of the VLC instance, both videos (test_abcde.avi and test_12345.avi) are displayed at the same position in the GUI. If I drop the line "VLC_media_player_set_drawable(player1, vlc_canvas1, &excp1);", the videos are not displayed in the GUI, but in two new windows that pop up.
Anyone got any ideas on how to display the videos at two different places in the GUI?