As I remember, VLC player allows to set volume to 400. And sometimes this feature is really useful.if ((volume < 0) || (volume > 100)) {
throw new ArgumentException("Argument is out of range.", "value");
It is LGPL too.This looks like a good alternative to the other wrappers. I'm pretty exicited to see this post. However, the license you are using is GPL? The other wrappers are all using LGPL. Any chance of changing to license to LGPL? TIA.
What screen ?Is there any possibility to renew the screen when you change player.Time or player.Position if it is in Paused state?
Perfect! Next question: it doesn't seem to support VLC 1.x, is this true? Based on what I saw, VLC 0.9x is supported but no 1.x, can you confirm?It is LGPL too.
We will update to current stable version asap.Perfect! Next question: it doesn't seem to support VLC 1.x, is this true? Based on what I saw, VLC 0.9x is supported but no 1.x, can you confirm?
When you pause VLC player and change the position, the picture doesn't change. The same I see using libvlcnet changing Position or Time. But I need to show the current position picture (at paused mode). Of course, I can implement some workaround using the second libvlc instance for making snapshots, but may be there is a normal way to implement this behaviour?What screen ?
Position if it is Paused - it is possible, but can work with some delay.
I have just removed the "transcode" part from sout - and it works. So, as I understand, the WMV2 (that is used by default) coder can't convert MPEG4 video stream from ip-camera.I think it may be caused of incorrect parameters set. Transcoding is not tested yet as well as we want. We tried to hardcode the most compatible parameters to encode the output files. May be in another topic you can find the most suitable options set for your problem.
Well, if there are VLC player behavior is the same, you should only try to hack the library using non-well documented features like manual enumeration of Vlc core objects and manipulations with it. May be you just can find an API interface allows to enumerate movie's frames.When you pause VLC player and change the position, the picture doesn't change. The same I see using libvlcnet changing Position or Time. But I need to show the current position picture (at paused mode). Of course, I can implement some workaround using the second libvlc instance for making snapshots, but may be there is a normal way to implement this behaviour?
Good, congratulationsI have just removed the "transcode" part from sout - and it works. So, as I understand, the WMV2 (that is used by default) coder can't convert MPEG4 video stream from ip-camera.
It was the first workaround I tried to implement:Also, there are dirty method possible like this : showing the next 1-2 seconds after position to pause and then changing position back, to target point. Then "press" pause.
It would be better to start from thatOr if there is any simple way to do it. please do let me know. i.e if ther is a simpler way to call the recording function from the existing vlc code via the .net bindings.
Nik
Code: Select all
/// <summary>
/// Next Chapter
/// </summary>
[DllImport("libvlc", CallingConvention = CallingConvention.StdCall, ExactSpelling = true)]
[SuppressUnmanagedCodeSecurity]
public static extern void libvlc_media_player_next_chapter(IntPtr libvlc_mediaplayer_t, ref libvlc_exception_t exception);
/// <summary>
/// Previous Chapter
/// </summary>
[DllImport("libvlc", CallingConvention = CallingConvention.StdCall, ExactSpelling = true)]
[SuppressUnmanagedCodeSecurity]
public static extern void libvlc_media_player_previous_chapter(IntPtr libvlc_mediaplayer_t, ref libvlc_exception_t exception);
Code: Select all
public void NextChapter()
{
VerifyObjectIsNotDisposed();
//
libvlc_exception_t exc = new libvlc_exception_t();
LibVlcInterop.libvlc_exception_init(ref exc);
LibVlcInterop.libvlc_media_player_next_chapter(descriptor, ref exc);
if (exc.b_raised != 0)
{
throw new VlcInternalException(exc.Message);
}
}
public void PreviousChapter()
{
VerifyObjectIsNotDisposed();
//
libvlc_exception_t exc = new libvlc_exception_t();
LibVlcInterop.libvlc_exception_init(ref exc);
LibVlcInterop.libvlc_media_player_previous_chapter(descriptor, ref exc);
if (exc.b_raised != 0)
{
throw new VlcInternalException(exc.Message);
}
}
Return to “Development around libVLC”
Users browsing this forum: No registered users and 27 guests