小编Rom*_* R.的帖子

M4A和AAC音频文件有什么区别?

M4A音频文件和AAC音频文件之间是否有区别,或者它们是完全相同但具有不同的文件扩展名?

audio ffmpeg aac m4a

27
推荐指数
3
解决办法
7万
查看次数

任何人都可以帮助理解AVFrame.linesize []?

我试图找到每个细胞的AVFrame.linesize[]意思,但我没有找到.

据我所知linesize[0],宽度linesize[1]是高度.

  1. 如果我说得对,其他细胞是什么意思?
  2. 为什么avcodec_decode_video2(codecCtxDecode, frameDecoded, &frameFinished, &packet);只有lineize [0]有值,其他单元格总是0?

更新

我认为AVFrame.data [i]和AVFrame.linesize [i]是行中特定颜色的数据和行的长度,我是否正确?

video ffmpeg stride libavcodec

21
推荐指数
2
解决办法
1万
查看次数

在Visual Studio中使用FFmpeg

我正在尝试在Visual Studio 2010中的C++项目中使用FFmpeg.我想将这些库包含为静态链接文件.像libavcodec/api-example.c这样的简单程序编译时没有错误,启动它们时错误视图中不会出现链接器错误.但是,启动应用程序后会显示一个消息框,说avutil-51.dll丢失.你有任何关于如何解决这个问题的提示吗?

我使用了http://ffmpeg.zeranoe.com/builds/上的最新开发版.然后我指定include作为附加包含目录,avcodec.lib; avfilter.lib; avformat.lib; avutil.lib作为附加依赖项,lib指定为附加库目录.

windows ffmpeg visual-studio

19
推荐指数
1
解决办法
4万
查看次数

虚拟网络摄像头驱动

我想开发一个虚拟网络摄像头驱动程序,从用户模式我将图像传递给它,它将显示为网络摄像头输出.

我不想使用DirectX过滤器和CSourceStream等.因为它们不适用于某些不使用DirectX捕获网络摄像头图像的程序.

我必须写一个内核模式设备驱动程序.

有任何想法吗?我尝试了DDK样本的testcap,但它没有处理来自用户模式的图像并且没有得到任何输入,只是它在网络摄像头中显示7种颜色...

任何帮助将不胜感激.谢谢


谢谢你们!

我从这里尝试了代码:http: //tmhare.mvps.org/downloads.htm (找到捕获源过滤器)

当我在雅虎,MSN编译它时,它运行良好,但它崩溃了AIM,Internet Explorer Flash网络摄像头,Firefox Flash网络摄像头和Skype ......在8次调用之后,我在QueryInterface中崩溃了,我发现它跟踪了它很多技巧..

现在我知道,它在第8次调用时崩溃了HRESULT CVCamStream :: QueryInterface(REFIID riid,void**ppv)

第8次调用,当它到达时,如果,我的意思是:返回CSourceStream :: QueryInterface(riid,ppv);

它位于Filters.cpp的第17行

为什么你认为我会崩溃?

谢谢大家指导我找到正确的解决方案,这是DirectShow,而不是驱动程序

c++ webcam directshow wdk device-driver

18
推荐指数
2
解决办法
2万
查看次数

18
推荐指数
1
解决办法
3万
查看次数

MJPEG流媒体和解码

我想从IP摄像头(通过RTSP)接收JPEG图像.为此,我cvCreateFileCapture_FFMPEG在OpenCV中尝试过.但是ffmpeg似乎对流媒体的MJPEG格式有一些问题(因为它会自动尝试检测流媒体信息)并且我最终得到以下错误

mjpeg: unsupported coding type
Run Code Online (Sandbox Code Playgroud)

然后,我决定使用live555进行流媒体播放.到目前为止,我可以通过openRTSP成功建立流媒体和捕获(非解码)图像.

问题是如何在我的应用程序中执行此操作,例如,在OpenCV中.如何在OpenCV中使用openRTSP获取图像并以JPEG格式保存?

我听说openRTSP中的数据可以发送到缓冲区(或命名管道),然后在OpenCV中读取IplImage.但我不知道该怎么做.

我将非常感谢有关此问题的任何帮助/建议.我需要以下任一问题的答案:

  1. 如何禁用ffmpeg的自动流信息检测并指定我自己的格式(mjpeg),或
  2. 如何在OpenCV中使用openRTSP?

问候,

c++ opencv mjpeg rtsp live555

16
推荐指数
1
解决办法
3万
查看次数

如何计算GetModuleFileName的完整缓冲区大小?

GetModuleFileName()需要一个缓冲器和缓冲器作为输入的大小; 但是它的返回值只能告诉我们复制了多少个字符,以及大小是否足够(ERROR_INSUFFICIENT_BUFFER).

如何确定保存整个文件名的实际所需缓冲区大小GetModuleFileName()

大多数人使用,MAX_PATH但我记得路径可以超过(默认定义为260)...

(使用零作为缓冲区大小的技巧对这个API不起作用 - 我之前已经尝试过)

windows winapi getmodulefilename

12
推荐指数
2
解决办法
6068
查看次数

Win32:如何自定义绘制编辑控件?

我需要实现EM_SETCUEBANNER的功能,其中文本提示出现在Edit控件中:

编辑控件中的提示横幅示例

问题是我无法使用通用控件的第6版,这是获得Microsoft提供的cue横幅实现所需的.

我已经研究过简单地改变编辑控件的文本和字体格式

Dark Gray Italic Text
Run Code Online (Sandbox Code Playgroud)

但它会抛出Change事件(由更高的组件库提供的组件包装器),我无法找到避免的方法.

所以我改为自定义绘制文本,在控件未聚焦且为空时绘制Cue Banner文本,否则依赖默认绘制.

Edit控件不能很好地公开自定义绘图机制,如ListView,TreeView和其他提供的.

其他人已经研究过它,但这似乎是一项几乎不可能完成的任务:

从事情的方式来看,我将不得不处理以下消息:

  • WM_ERASEBKGND,WM_PAINT(原因很明显)
  • WM_SETFOCUS,WM_KILLFOCUS(防止白条显示 - 如上所述)
  • WM_CHAR(处理和更新控件中的文本)

而且我还需要找到一种在控件中显示插入符号的方法,因为我还没有找到一种方法允许Windows为我这样做而不用画我提到的白条.

这将会非常好玩.:翻白眼:

鉴于Windows Edit控件从未打算自定义绘制:有没有人知道如何自定义绘制Windows编辑控件?


注意:我也会接受解决问题的答案,而不是回答我的问题.但是其他任何想要自定义绘制编辑控件的人,遇到这个问题,都可能会有一个答案.

windows winapi custom-draw

11
推荐指数
3
解决办法
1万
查看次数

如何在Windows 10中创建虚拟网络摄像头?

我想从网络摄像头拍摄视频,在帧上渲染一些文本并进行一些运动跟踪并将其传递给虚拟网络摄像头,以便可以轻松地进行流式传输.

我在stackoverflow上找到了一些答案,表明我应该使用DirectShow.根据DirectShow文档中的信息,DirectShow SDK是Windows SDK的一部分.所以我安装了最新的Windows SDK,但似乎它不包括DirectShow,因为下面没有DirectShow示例C:\Program Files (x86)\Microsoft SDKs\Windows.(stackoverflow的答案也相当古老 - 大约在2010年左右)

您能否建议一种方法使DirectShow工作(包括在Visual Studio 2015上运行的示例)或DirectShow的其他替代方法,这将有助于我创建虚拟网络摄像头?

webcam winapi directshow video-capture windows-10

11
推荐指数
2
解决办法
2万
查看次数

Wininet InternetGetCookie获取空cookie数据

我目前正致力于使用Csharp获取cookie数据.我正在使用DLLImport在wininet.dll中调用InternetGetCookie,但是当我尝试它时,函数返回ERROR_INSUFFICIENT_BUFFER(错误代码122).

谁能帮我这个 ?

这是Dll参考的代码:

[DllImport("wininet.dll", SetLastError = true, CharSet = CharSet.Auto, EntryPoint="InternetGetCookie")]
        public static extern bool InternetGetCookie(string lpszUrl, string lpszCookieName,
            ref StringBuilder lpszCookieData, ref int lpdwSize);
Run Code Online (Sandbox Code Playgroud)

这就是我调用函数的方式:

InternetGetCookie("http://example.com", null, ref lpszCookieData, ref size)
Run Code Online (Sandbox Code Playgroud)

谢谢.

c# cookies wininet dll-reference

9
推荐指数
1
解决办法
6331
查看次数