问题标签 [vfw]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 从 Delphi 6 应用程序中的 FOURCC ID 查找压缩器/过滤器友好名称?
我有一个 Delphi 6 应用程序,它要求用户使用 AVISaveOptions() 选择音频和视频压缩器。然后我将每个选择的 FOURCC ID 存储在一个数据文件中。我想使用属于每个压缩器/过滤器的 FOURCC ID 查找每个选择的过滤器友好名称,因此我可以稍后向用户显示他们当前的选择,压缩器/过滤器友好名称显示在所选 FOURCC ID 旁边. 我怎样才能做到这一点?
请注意,我只想向用户显示与 AVISaveOptions() 对话框中显示的相同的长表单名称,该对话框通过向用户提供一个包含友好名称的列表框来提示用户进行选择。
c++ - 为什么 AVIStreamRead 什么也不读?
我正在编写一个简单的 AVI 加载器来从 AVI 文件中获取每一帧并将其保存到 OpenGL 纹理中。我正在使用 VFW,并且AVIStreamRead
没有返回任何东西。这是我抓取每一帧的代码:
该变量bytes
的值为 2740,samples
为 1。但是,m_inputTexture
为空。这不是一个坏指针或任何东西,它只是......空的。AVIStreamRead
不返回任何错误。在文档中,唯一提到未读取数据的是:
如果 lpBuffer 为 NULL,则该函数不读取任何数据;
但lpBuffer
不是NULL。我会发布更多代码,但它到处都是乱码。其他任何地方都没有其他明显错误,调试器显示所有正确信息。
delphi - 在这种情况下,为什么在调用 AviFileExit() 之前需要核对 IAviFile 指针?
我发现了一个 Stack Overflow 帖子,其中包含一个示例,展示了如何获取 AVI 文件的持续时间:
我在我的 Delphi 6 应用程序中修改了它并创建了下面的代码。最初,我在调用 AviFileExit() 之前删除了核对 IAviFile 指针的行。但是当我这样做时,我在调用 AviFileExit() 时遇到了访问冲突。我恢复了线路,访问冲突消失了。
为什么在调用 AviFileExit() 之前需要核对 IAviFile 引用?这是内存泄漏吗?我认为正常的接口引用计数在这里可以正常工作,但显然不能。有没有另一种方法来消除错误,比如调用 AviStreamRelease() 之类的?
这是我的代码:
video-encoding - 通过 vfw 的 XVID 编解码器:创建灰度 8 位视频失败
我编写了一个应用程序,它使用 Windows 视频 (VFW) 从实时摄像机图像中记录 XVID 电影。如果相机设置为彩色,这可以正常工作。当我将它切换到黑白模式(即 8 位灰度)时,函数 AVIStreamSetFormat 返回 AVIERR_BADFORMAT。
摘自我的代码:
如上所述,此代码适用于 24 位 DIB,但不适用于 8 位索引 DIB。可以毫无问题地显示 8 位 DIB。
有任何想法吗?
干杯亨德里克
c# - VfW : 改变视频分辨率
我正在尝试更改 VfW(Windows 视频)中的视频捕获分辨率,但我找不到任何有用的结构或方法。似乎更改视频设置的唯一方法是使用CAPTUREPARMS
结构。但它没有设置视频捕获分辨率的任何字段。
任何建议都会有所帮助。谢谢。
kinect - 位图到 avi 异常
我正在使用Simple C# Wrapper for the AviFile Library ,以及我在这里找到的代码片段,以便从 Kinect 的色框创建一个 avi 文件。
我得到了这个异常:“AVIFileOpen 中的异常:-2147205009”
上面提到的函数生成“_firstBitmap”的地方
并且颜色帧图像由 Kinect SDK 的 ColorFrameReady 委托提供
谢谢 !
c++ - 如何在 linux 上编译 Cfugue 库?
我找到了一个很棒的库:Cfugue。这正是我需要的,但我不能在 linux 上使用它。他们写道,它适用于 ubuntu,但我没有成功:
g++ 说“vfw.h”不存在。据我了解,它代表“Windows 视频”。可以在linux上使用CFugue吗?
c# - How to copy image without using the clipboard?
Question: I have the below code to capture an image from a webcam.
My problem is this part:
What it does is copy the image from the window to the clipboard, and then create a byte array out of it.
It works - as long as you don't use the clipboard while the program is running.
The problem is, this doesn't even work for myself, as I sometimes copy something while Visual Studio takes ages to start debug the web application, and then it crashes.
So here my question:
How can I get the image without using the clipboard ?
Or more specifically, how to transform hCaptureWnd to System.Drawing.Image ?
-- Edit:
I missed to say "without creating a file, i want a byte array".
It's a web application, so the user the application runs under shouldn't have write access to the file system (writing to a file only for temporary testing) ...
-- End Edit:
Note (http://msdn.microsoft.com/en-us/library/windows/desktop/dd756879(v=vs.85).aspx):
Full code for reference
I tried like this, but it only gets a black image...
And then this after SendMessage(hCaptureWnd, WM_CAP_GET_FRAME, 0, 0);
vb.net - 如何连接多个摄像头
我正在尝试同时连接多个网络摄像头,但它会产生视频源对话框来选择网络摄像头。有没有办法绕过它?我可以明确传递网络摄像头信息吗?
这是产生问题的代码
WM_CAP_DRIVER_CONNECT
是显示对话框的消息。
任何帮助将不胜感激。
谢谢