libVLC:Set Video Output for movies with more then one stream

This forum is about all development around libVLC.
quorthon
Blank Cone
Blank Cone
Posts: 28
Joined: 22 Mar 2009 17:32

libVLC:Set Video Output for movies with more then one stream

Postby quorthon » 17 May 2009 22:01

Hello

I'm trying to use jvlc with the newest release candidate of vlc (1.0.0 rc1)...It's cool to see that the new vlc is able to stream quicktime movies, really nice.

I want to stream a quicktime movie, which has the following streams inside:
-> Stream 0: Video, h264 (speaker)
-> Stream 1: Video, h264 (power point slides)
-> Stream 2: Audio, mp4a

All works fine, I can stream this movie over http and receive it with vlc or jvlc. The Video with the speaker opens and a second window with the power point slides appears and I can hear the speaker. But with using the libVLC with JVLC, I have the following problem:

1) When I use the depracated Playlist (depracated in JVLC):
add movie to playlist: libvlc_playlist_add(libvlcInstance, uri, name, exception)
play movie: libvlc_playlist_play(libvlcInstance, id, options.length, options, exception);
set video output to canvas: libvlc_video_set_parent(instance, drawable, exception);

-> One of the streams (maybe the one who first comes to the client) is displayed in the canvas, the second stream is displayed outside the canvas in a additional window.
-> I could life with that, but I have to be sure that the power point slides are displaying in the additional window...how can I achieve that?
-> Second Problem here: I cannot get the time of the movie...because the Media Player returned from libvlc_playlist_get_media_player(libvlcInstance, exception) doesn't seem to work. For example getTime from that object always return 0...-> How can I get the actual time, when using the playlist to play movies?

2) When I use the media player in jvlc:
play the movie: libvlc_media_player_play(instance, exception);
set video output to canvas: libvlc_video_set_parent(instance, drawable, exception);

-> Both Streams are displaying in additional windows, none is displayed in the canvas...
-> If I use libvlc_media_player_set_drawable(mi, drawable, exception) with "mi" as the media player instance:
-> The first arrived stream is displayed in the canvas, when the second arrives, it is displayed on the same canvas -> So I can see only the second arrived stream...


How can I tell the libVLC where to display (on which canvas) the two streams (powerpoint, speaker), because libvlc_media_player_set_drawable only let me set one canvas for the whole movie? Or if this isn't possible, how can I force the playlist to show the speaker stream (always stream 0) in the canvas and the other outside in an additional window?

I know JVLC isn't really strong supported here anymore, but I think also the C# wrapper should be able to handle this issue in a way...

Thanks for your help!
Peter

Rémi Denis-Courmont
Developer
Developer
Posts: 15128
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: libVLC:Set Video Output for movies with more then one stream

Postby Rémi Denis-Courmont » 18 May 2009 17:32

That's an architectural limitation in the drawable plugin, not JVLC. Frankly, I have no time and motivation to fix this. Patch welcome.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

quorthon
Blank Cone
Blank Cone
Posts: 28
Joined: 22 Mar 2009 17:32

Re: libVLC:Set Video Output for movies with more then one stream

Postby quorthon » 18 May 2009 18:06

That's an architectural limitation in the drawable plugin, not JVLC. Frankly, I have no time and motivation to fix this. Patch welcome.

ok thanks for you answer...so if I want to display the two streams, which where inside the quicktime movie, on two different canvases, I have to save this two stream as two separate movies and serve for every movie (video + slide) a separate stream, right?

Peter

Rémi Denis-Courmont
Developer
Developer
Posts: 15128
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: libVLC:Set Video Output for movies with more then one stream

Postby Rémi Denis-Courmont » 18 May 2009 19:24

It will work fine if you don't set any canvas. If you split the videos, they will not be synchronized.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

Rémi Denis-Courmont
Developer
Developer
Posts: 15128
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: libVLC:Set Video Output for movies with more then one stream

Postby Rémi Denis-Courmont » 23 May 2009 15:55

The canvas overlap problem should be fixed in 1.0-bugfix. But you won't be able to select which video gets the canva (it will be the first one to start decoding).
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

Gawain
Blank Cone
Blank Cone
Posts: 31
Joined: 08 Jan 2009 11:38
VLC version: 0.9.8a - 1.0.0
Operating System: Windows XP

Re: libVLC:Set Video Output for movies with more then one stream

Postby Gawain » 29 Jun 2009 10:46

Is that problem already fixed in 1.0.rc4? And can anyone tell me how to display my video in an internal Canvas?

Rémi Denis-Courmont
Developer
Developer
Posts: 15128
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: libVLC:Set Video Output for movies with more then one stream

Postby Rémi Denis-Courmont » 29 Jun 2009 17:11

The API is unchanged. VLC just won't overlap two videos into the same output anymore.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

yanika
New Cone
New Cone
Posts: 1
Joined: 28 Jul 2009 12:15

Re: libVLC:Set Video Output for movies with more then one stream

Postby yanika » 30 Jul 2009 09:04

How can I reuse a canvas with acrylic paint already on it? I have an acrylic painting with some texture. I want to reuse the canvas but with oils. First, How can i get rid of the textured parts? Second, should I just gesso over the painting and then paint with oils?
_____________
keyword research ~ keyword tool ~ keyword tracking ~ affiliate elite


Return to “Development around libVLC”

Who is online

Users browsing this forum: Google [Bot] and 8 guests