VB.NET - DirectX.AudioVideoPlayback提供不正确的帧大小?

时间:2010-05-25 20:22:50

标签: vb.net directx size frame

嘿,做一个媒体播放器,需要知道一些事情。

我有一个菜单可以读取文件信息,但出于某种原因,当我打开一个我知道的视频是1280x720时,宽度和高度会变为1292x758。

编辑:

当我打开一个640x480的视频时,它说它是656x518

那,由于以下原因,弹出一个额外的预览框:

labFR.Text = "Frame rate: " & Strings.FormatNumber((1 / AudioVideoPlayback.Video.FromFile(labinput.text, True).AverageTimePerFrame), 3)

这需要播放,所以我可以获得帧速率,但是一旦我有帧速率,如何关闭它?

使用VB.NET Framework 4.0。 (VS2010)

非常感谢对这两个问题的回答。

1 个答案:

答案 0 :(得分:0)

知道了。我必须在所有模块之外将视频调暗,并将自动播放设置为假,然后我可以从视频中获取所有属性,而无需经常在多个线程上打开视频。

Dim openerfile As Video  
Public Sub btnInputBrowse_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnInputBrowse.Click
     openerfile = Video.FromFile(labinputfile.Text, False) 'labinputfile is a textbox which is given the path of an openfiledialog  
End Sub

然后我所要做的就是使用“openerfile”及其属性来实现我想要的目标。