none
החלפת סרטון של מדיה פלייר כל מספר שניות

    שאלה

  • שלום,

    אני מציגה סרטון של יוטיוב דרך WINDOWS MEDIA PLAYER

    אך מה שאני צריכה זה  להחליף את הסרטון כל  חצי דקה.

    והבעיה היא שבאיזה שהוא שלב מוצג הסרטון של היוטיוב לא עולה ורואים מסך שחור.

    התוכנה ממשיכה לעבוד, היא לא קורסת, אך הסרטון לא עולה.

    לפי דעתי זה בדלל שלא סגרתי את האוביקט נכון, אך לא מצאתי דרך אחרת.

    אני מצרפת את הקוד.

    אשמח לפתרון.

     Dim y As VideoLibrary.YouTube = New YouTube
    Dim yv As VideoLibrary.YouTubeVideo = y.GetVideo(txt_youtubeurl.Text)
    displayVideo(yv.Uri)
    urlYT = yv.Uri
    tmrrefreshYT = New Timer
    tmrrefreshYT.Interval = (60000 \ 2)
    tmrrefreshYT.Start()
    Private Sub updateTimertick(ByVal myObject As Object, ByVal myEventArgs As EventArgs) Handles tmrrefreshYT.Tick
            disposeYouTube()
            displayVideo(urlYT)
        End Sub
    
        Public Sub disposeYouTube()
          AxWindowsMediaPlayer1.Visible = False
          AxWindowsMediaPlayer1.close()
          AxWindowsMediaPlayer1.Refresh()
        End Sub
    
        Public Sub displayVideo(url As String)
    
            AxWindowsMediaPlayer1.URL = url
            AxWindowsMediaPlayer1.settings.setMode("loop", True)
            AxWindowsMediaPlayer1.Visible = True
            AxWindowsMediaPlayer1.settings.volume = 0
            AxWindowsMediaPlayer1.Ctlcontrols.play()
    
        End Sub
    
    תודה מראש.

       
    יום חמישי 28 יוני 2018 13:18

תשובות

  • שלום,

    מצאתי לזה פתרון, אומנם לא כל כך סטנדרטי, אבל אולי זה יעזור לכם.

    עשיתי רשימה מסוג AxWMPLib.AxWindowsMediaPlayer של כל השירים שאני רוצה שיופעלו

    ועברתי עליה. וכל פעם שרציתי להפעיל סרטון עשיתי כך:

    listmovie(i).play

    וכשרציתי להפסיק עשיתי כך

    listmovie(i).stop

    בכל מקרה לא הצלחתי לדרוס אוביקט מסוג AxWMPLib.AxWindowsMediaPlayer ולאתחל אותו מחדש.

    יום שלישי 07 אוגוסט 2018 06:01

כל התגובות

  • שלום,

    גם ניסיתי ליצור את האוביקט כל פעם מחדש ולהרוס אותו, אך זה לא עזר-

    אני מצרפת קוד:

        Public Sub displayYT2()
            myMediaPlayer = New AxWMPLib.AxWindowsMediaPlayer()
            Me.Controls.Add(myMediaPlayer)
            myMediaPlayer.CreateControl()
            myMediaPlayer.URL = urlYT
            myMediaPlayer.Location = New Point(875, 272)
            myMediaPlayer.Size = New Size(342, 274)
            myMediaPlayer.Name = "myMediaPlayer"
            myMediaPlayer.Ctlcontrols.play()
        End Sub
    
    Public Sub disposeYT2()
    
            myMediaPlayer.Ctlcontrols.stop()
            myMediaPlayer.close()
            Me.Controls.RemoveByKey("myMediaPlayer")
            myMediaPlayer.mediaCollection.getAll().clear()
            myMediaPlayer.Controls.Clear()
            myMediaPlayer.Refresh()
    
            myMediaPlayer.Dispose()
            myMediaPlayer = Nothing
      End Sub

    ושוב הפעם אני קוראת לפונקציות הנ"ל כל 30 שניות.

    ומישום מה אני רואה שרשימת ההשמעה רק הולכת וגדלה.

    אשמח לעזרתכם!!!

    יום רביעי 04 יולי 2018 09:45
  • שלום,

    מצאתי לזה פתרון, אומנם לא כל כך סטנדרטי, אבל אולי זה יעזור לכם.

    עשיתי רשימה מסוג AxWMPLib.AxWindowsMediaPlayer של כל השירים שאני רוצה שיופעלו

    ועברתי עליה. וכל פעם שרציתי להפעיל סרטון עשיתי כך:

    listmovie(i).play

    וכשרציתי להפסיק עשיתי כך

    listmovie(i).stop

    בכל מקרה לא הצלחתי לדרוס אוביקט מסוג AxWMPLib.AxWindowsMediaPlayer ולאתחל אותו מחדש.

    יום שלישי 07 אוגוסט 2018 06:01