使用Forge的VideoFileWriter录制
我无法从网络摄像头录制视频。我尝试实现VideoFileWriter,但不断出现错误,无法找到指定的模块。来自HRESULT的异常:0x8007007E。每当我注释掉录像机时,一切都很好,但是当我试图用录像机将其记录到硬盘时,我得到了错误。 我希望这是一个容易解决的问题。下面是我的代码使用Forge的VideoFileWriter录制,video,aforge,Video,Aforge,我无法从网络摄像头录制视频。我尝试实现VideoFileWriter,但不断出现错误,无法找到指定的模块。来自HRESULT的异常:0x8007007E。每当我注释掉录像机时,一切都很好,但是当我试图用录像机将其记录到硬盘时,我得到了错误。 我希望这是一个容易解决的问题。下面是我的代码 private FilterInfoCollection VideoCaptureDevices; private VideoCaptureDevice FinalVideoSource;
private FilterInfoCollection VideoCaptureDevices;
private VideoCaptureDevice FinalVideoSource;
Bitmap image;
private VideoFileWriter writer;
void VideoShow()
{
VideoCaptureDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
FinalVideoSource = new VideoCaptureDevice(VideoCaptureDevices[0].MonikerString);
FinalVideoSource.NewFrame += new NewFrameEventHandler(FinalVideoSource_NewFrame);
FinalVideoSource.DesiredFrameRate = 15;
FinalVideoSource.DesiredFrameSize = new Size(1280, 800);
FinalVideoSource.Start();
}
void FinalVideoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
{
image = (Bitmap)eventArgs.Frame.Clone();
pictureBox1.Image = image;
writer.WriteVideoFrame(image);
}
public AForgeRecorder()
{
InitializeComponent();
}
private void btnStart_Click(object sender, EventArgs e)
{
writer = new VideoFileWriter();
VideoShow();
writer.Open(@"C:\testvvid.avi", 1280, 800, 15, VideoCodec.MPEG2, 128);
}
private void btnStop_Click(object sender, EventArgs e)
{
if (writer != null)
{
writer.Close();
}
}
提前感谢这很简单,Afrog VideoFileWriter使用了FFMPEG.dll,因此下载FFMPEG zip,将binavcodec-53.dll中的所有5个dll复制到您的项目中,右键单击您的项目,单击添加现有引用,选择所有dll,使其属性始终复制,
+您需要.net 3.5或更低版本。因此,使用较低的框架很容易,Afrog VideoFileWriter使用了FFMPEG.dll,因此下载FFMPEG zip,将binavcodec-53.dll中的所有5个dll复制到您的项目中,右键单击项目,单击添加现有引用,选择所有dll,使其属性始终复制,
+您需要.net 3.5或更低版本。因此,使用较低的框架很容易,Afrog VideoFileWriter使用了FFMPEG.dll,因此下载FFMPEG zip,将binavcodec-53.dll中的所有5个dll复制到您的项目中,右键单击项目,单击添加现有引用,选择所有dll,使其属性始终复制,
+您需要.net 3.5或更低版本。因此,使用较低的框架很容易,Afrog VideoFileWriter使用了FFMPEG.dll,因此下载FFMPEG zip,将binavcodec-53.dll中的所有5个dll复制到您的项目中,右键单击项目,单击添加现有引用,选择所有dll,使其属性始终复制,
+您需要.net 3.5或更低版本。因此,请使用较低的框架这可能是因为缺少一个本机DLL,而AForge程序集依赖于该DLL。下载dependency walker并在其中加载程序集,直到找到罪魁祸首。这可能是因为您缺少一个依赖于某个大程序集的本机DLL。下载dependency walker并在其中加载程序集,直到找到罪魁祸首。这可能是因为您缺少一个依赖于某个大程序集的本机DLL。下载dependency walker并在其中加载程序集,直到找到罪魁祸首。这可能是因为您缺少一个依赖于某个大程序集的本机DLL。下载dependency walker并在其中加载程序集,直到找到罪魁祸首。是否有针对.NET 4+的解决方案?我在哪里可以得到DLL?ffmpeg现在捆绑在一个exe文件中?是否有针对.NET 4+的解决方案?我在哪里可以得到DLL?ffmpeg现在捆绑在一个exe文件中?是否有针对.NET 4+的解决方案?我在哪里可以得到DLL?ffmpeg现在捆绑在一个exe文件中?是否有针对.NET 4+的解决方案?我在哪里可以得到DLL?ffmpeg现在捆绑在一个exe文件中?