AForge AVI Writer例外

时间:2013-04-20 22:42:32

标签: c# .net nullreferenceexception avi aforge

我已经编写了一些代码,可以用List创建一个avi文件。

// instantiate AVI writer, use WMV3 codec
        internal static AVIWriter writer = new AVIWriter( "wmv3" );
        private static List<Bitmap> imgList = new List<Bitmap>();

        internal static void SaveFile()
        {
            var list = imgList;
            imgList = default(List<Bitmap>);

            // create new AVI file and open it
            writer.Open(@"d:\test.avi", 640, 480);
            foreach (Bitmap b in list)
            {
                writer.AddFrame(b);
            }
            writer.Close();
        }

不幸的是,我在“foreach(列表中的位图b)”中得到了一个null引用异常 但是当我调试并在writer.Close();上放置一个断点时,只有在我实际传递该断点后才会触发此错误。

所以我很困惑,有谁知道这里发生了什么?

1 个答案:

答案 0 :(得分:0)

不确定为什么您的程序会在两个不同的点遇到相同的异常。我最好的猜测是它与本地互操作无法与托管代码同步。

您是否尝试过引用AForge源代码而不是二进制代码?这将让您精确定位错误发生的确切位置。

现在我建议您查看任何空值的位图列表或更新到最新的AForge(也许这是一个框架错误)。我还建议你尝试几种不同的编解码器(不要问为什么)。