Avatar billede MadsHaupt Juniormester
07. marts 2014 - 17:47 Der er 1 kommentar og
1 løsning

Microsoft Expression Encoder 4

Jeg er ved at lave et program til at optage skærmen med, men jeg ved ikke hvordan jeg skal få
Mcrosoft.Expression.Encoder.ScreenCapture.ScreenCaptureJob til at optage det i et andet format end Microsoft Expression Encoder format.

Mit spørgsmål er så hvordan man får Mcrosoft.Expression.Encoder.ScreenCapture.ScreenCaptureJob til at optage i et andet format end Microsoft Expression Encoder format?.
Avatar billede MadsHaupt Juniormester
07. marts 2014 - 17:48 #1
Her er den kode jeg bruger:
Imports Microsoft.Expression.Encoder
Imports Microsoft.Expression.Encoder.ScreenCapture
Imports Microsoft.Expression.Encoder.Devices
Imports System.Collections.ObjectModel
Imports System.IO

Public Class Form1

    Dim showsettings As Boolean = False
    Dim heightanimationtimer As Timer
    Dim capturerec As New ScreenCaptureJob
    Dim videopath As String = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) & "\strandboscrrec.wmv"
    Dim audiodevices As Collection(Of EncoderDevice) = EncoderDevices.FindDevices(EncoderDeviceType.Audio)

    Private Function HeightAnimation(ByVal control As Control, ByVal newheight As Integer, ByVal interval As Integer) As Timer
        Dim oldheight As Integer = control.Height
        Dim subheight As Integer = newheight - oldheight
        Dim timeinterval As Long = interval * 10000
        Dim time As Long = Date.Now.Ticks
        Dim timer As New Timer
        timer.Interval = 1
        AddHandler timer.Tick, Sub()
                                  Dim subtime As Long = Date.Now.Ticks - time
                                  If subtime > timeinterval Then
                                      control.Height = newheight
                                      timer.Stop()
                                  Else
                                      control.Height = oldheight + subheight / timeinterval * subtime
                                  End If
                              End Sub
        timer.Start()
        Return timer
    End Function

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        capturerec.ScreenCaptureVideoProfile.Quality = 100
        capturerec.OutputScreenCaptureFileName = videopath
        Rec.BackgroundImage = New Bitmap(Application.StartupPath & "\recicon.png")
        Rec.BackgroundImageLayout = ImageLayout.Zoom
        StopB.BackgroundImage = New Bitmap(Application.StartupPath & "\stopicon.png")
        StopB.BackgroundImageLayout = ImageLayout.Zoom
        CheckedListBox1.SetItemChecked(0, True)
        CheckedListBox1.SetItemChecked(1, True)
    End Sub

    Private Sub Rec_Click(sender As Object, e As EventArgs) Handles Rec.Click
        capturerec.ResetSettings()
        Select Case True
            Case FrameRate15.Checked
                capturerec.ScreenCaptureVideoProfile.FrameRate = 15
            Case FrameRate20.Checked
                capturerec.ScreenCaptureVideoProfile.FrameRate = 20
            Case FrameRate25.Checked
                capturerec.ScreenCaptureVideoProfile.FrameRate = 25
        End Select
        Dim audiodevices As Collection(Of EncoderDevice) = EncoderDevices.FindDevices(EncoderDeviceType.Audio)
        For Each item As String In CheckedListBox1.CheckedItems
            Select Case item
                Case "Mikrofon"
                    capturerec.AddAudioDeviceSource(audiodevices(0))
                Case "Systemlyd"
                    capturerec.AddAudioDeviceSource(audiodevices(1))
            End Select
        Next
        If File.Exists(videopath) Then
            File.Delete(videopath)
        End If
        capturerec.Start()
        Rec.Enabled = False
        CheckedListBox1.Enabled = False
        FrameRate15.Enabled = False
        FrameRate20.Enabled = False
        FrameRate25.Enabled = False
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        If heightanimationtimer IsNot Nothing Then
            heightanimationtimer.Stop()
        End If
        If showsettings Then
            heightanimationtimer = HeightAnimation(Me, 181, 300)
            showsettings = False
            Button1.Text = "Vis indstillinger"
        Else
            heightanimationtimer = HeightAnimation(Me, 300, 300)
            showsettings = True
            Button1.Text = "Skjul indstillinger"
        End If
    End Sub

    Private Sub StopB_Click(sender As Object, e As EventArgs) Handles StopB.Click
        capturerec.Stop()
        Process.Start(videopath)
    End Sub

End Class
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester