Olen yrittänyt tutkailla kuinka saisin luotua thumbnail-kuvan Visual Basicilla (käytän VB 2008 Express Editionia) videotiedostosta. Onko kellään kokemusta tällaisesta / löytyisikö vinkkejä tai jopa koodia siitä miten tämän voisi toteuttaa? Googlettamalla en ole vielä löytänyt mitään mitä olisin onnistunut soveltamaan käytännössä.
Ajatuksena on että tämä sovelluksen osa toimisi siten että kun video vedetään Drag-Droppina Panel-komponenttiin niin siitä tallennettaisiin thumbnail ja näytettäisiin panel-komponentin sisällä olevassa PictureBoxissa.
Moro liquid8!
vääntele oheisen virityksen pohjalta (tee drag 'n' drop viritys itse)
Imports System.Windows.Forms Imports DexterLib Public Partial Class MainForm Private basePath As String = String.Empty Private thumbPath As String = String.Empty Private xdigits As Integer Public Sub New() Me.InitializeComponent() End Sub Sub Button1MouseUp(sender As Object, e As MouseEventArgs) SetPlayer End Sub Sub SetPlayer() basePath = Environment.GetFolderPath( _ Environment.SpecialFolder.Personal) basePath += "\Omat videotiedostot" thumbPath = basePath + "\thumbs" If Dir(thumbPath, vbDirectory) = "" Then MkDir(thumbPath) End If Dim theURL As String = _ basePath + "\Music Videos\The Wall.avi" 'esim. Dim theFile As String = _ theURL.Substring(theURL.LastIndexOf("\") + 1, _ theURL.Length - theURL.LastIndexOf("\") - 1) Dim ext As String = _ theFile.ToLower.Substring( _ theFile.LastIndexOf("."), _ theFile.Length - theFile.LastIndexOf(".")) MediaPlayer1.URL = theURL MediaPlayer1.fullScreen = False MediaPlayer1.uiMode = "None" MediaPlayer1.stretchToFit = True MediaPlayer1.Update thumbPath += "\" + theFile.Replace(ext, ".jpg") If Dir(thumbPath) = "" Then CreateThumb(thumbPath) End If PictureBox1.ImageLocation = thumbPath End Sub Sub CreateThumb(ByVal fileName As String) Dim percentage As Double = 0.05 Dim mdc As New MediaDetClass mdc.Filename = MediaPlayer1.URL mdc.CurrentStream = 0 mdc.WriteBitmapBits(percentage * _ mdc.StreamLength, 120, 90, thumbPath) End Sub Sub MainFormFormClosing( _ sender As Object, e As FormClosingEventArgs) Me.Dispose End Sub Sub MainFormFormClosed( _ sender As Object, e As FormClosedEventArgs) End End Sub End Class
Aihe on jo aika vanha, joten et voi enää vastata siihen.