2013-10-17 133 views
2

我正在与aForge合作,我试图设置来自USB摄像头的视频源的分辨率,以便它可以正确放入pictureBox中。我的目标是分辨率为800x600,但我得到的默认分辨率约为640x480。当我尝试设置分辨率时,我收到“只读字段的成员无法修改”的消息。有经验的人有没有任何想法/解决方案?如何设置视频分辨率?

+1

只读应该告诉你,有可能是一个构造函数,允许设置您的分辨率。 – CSharpie

+0

你解决了吗? – levi

回答

11

精确地说:desiredFrameSize属性是过时的。您必须使用VideoResolution属性;例如,使用分辨率编号0:

yourvideoSource.VideoResolution = yourvideoSource.VideoCapabilities[0]; 

数组的数字表示不同的分辨率。

使用下面的命令来确定可用的分辨率和尺寸的量:

yourvideoSource.VideoCapabilities.Length; 

for (int i = 0; i < yourvideoSource.VideoCapabilities.Length; i++){ 

    string resolution= "Resolution Number "+Convert.Tostring(i); 
    string resolution_size = yourvideoSource.VideoCapabilities[i].FrameSize.ToString(); 
} 
+0

但是,videoSource对象中没有'VideoResolution'属性 – levi

+0

VideoResolution是类VideoCaptureDevice中的一个对象。 –

+0

你是一个拯救生命的人,对我来说这样的救济是我的朋友,非常感谢分享 – smoothumut

0

如何设置

yourvideoSource.DesiredFrameSize = new Size(800, 600); 
+2

我希望,但根据aForge,desiredFrameSize属性已过时,所以我不得不使用VideoResolution,这不是那么简单,我不认为。 – Donohvan

相关问题