Page 1 of 1

How do I force VLC in VB.NET to buffer before playing?

Posted: 03 Feb 2013 15:36
by NotVLCWorking
How do I force VLC in VB.NET to buffer before playing? Any help would be amazing

Basically videos play well but at times videos will stop randomly and I don't know how to allow for proper buffering which would help tremendously.


Could someone please tell me howto do this

Code so far:

Code: Select all

Imports System.Text.RegularExpressions Public Class Form1 Dim Paused As Boolean = False Dim Started As Boolean = False Dim PlayedSecond As Boolean = True Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click PlayedSecond = False AxVLCPlugin21.playlist.items.clear() AxVLCPlugin21.playlist.add("http://binder-science.wikispaces.com/file/view/The+Characteristics+of+Living+Things.flv") AxVLCPlugin21.playlist.play() Started = True End Sub Sub playsecond() AxVLCPlugin21.playlist.items.clear() AxVLCPlugin21.playlist.add("http://postfcs.wikispaces.com/file/view/Nature+by+Numbers+%5Bwww.keepvid.com%5D.flv") AxVLCPlugin21.playlist.play() PlayedSecond = True Started = False End Sub Private Sub AxVLCPlugin21_pause(sender As Object, e As EventArgs) Handles AxVLCPlugin21.pause Paused = True End Sub Private Sub IsFinished_Tick(sender As Object, e As EventArgs) Handles IsFinished.Tick If Not AxVLCPlugin21.playlist.isPlaying And Paused = False And Started = True And PlayedSecond = False Then playsecond() Started = True End If End Sub Private Sub AxVLCPlugin21_play(sender As Object, e As EventArgs) Handles AxVLCPlugin21.play Paused = False End Sub Private Enum InputState IDLE = 0 OPENING = 1 BUFFERING = 2 PLAYING = 3 PAUSED = 4 STOPPING = 5 ENDED = 6 ERRORSTATE = 7 End Enum Private Sub InfoTimer_Tick(sender As Object, e As EventArgs) Handles InfoTimer.Tick Dim state As InputState = DirectCast(AxVLCPlugin21.input.state, InputState) Select Case state Case InputState.IDLE, InputState.OPENING, InputState.BUFFERING Status.Text = state.ToString() Exit Select Case InputState.PLAYING Dim title As String = System.IO.Path.GetFileName(AxVLCPlugin21.mediaDescription.title) Dim current As TimeSpan = TimeSpan.FromMilliseconds(AxVLCPlugin21.input.Time) Dim total As TimeSpan = TimeSpan.FromMilliseconds(AxVLCPlugin21.input.Length) Dim pos As Double = AxVLCPlugin21.input.Position Status.Text = String.Format("{0} {1} {2}:{3:D2}/{4}:{5:D2} {6:P}", state, title, current.Minutes, current.Seconds, total.Minutes, total.Seconds, pos) Exit Select Case InputState.PAUSED Status.Text = String.Format("{0} {1}", state, System.IO.Path.GetFileName(AxVLCPlugin21.mediaDescription.title)) Exit Select Case InputState.STOPPING, InputState.ENDED playsecond() Exit Select Case InputState.ERRORSTATE Status.Text = String.Format("{0} {1}", state, AxVLCPlugin21.mediaDescription.title) Exit Select Case Else Status.Text = state.ToString() Exit Select End Select End Sub End Class