问题标签 [ffdshow]
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.
windows - 带有视频/x-flv 解码器的应用程序
我有一个需要播放video/x-flv
文件的应用程序。并非所有客户都安装了编解码器,并且video/x-flv
Windows 未随附编解码器,因此我必须将其与我的应用程序一起提供。
问题是我无法理解我需要运送什么才能在video/x-flv
未安装任何编解码器包的新计算机上启用解码。
我试过安装ffdshow
and FLVSplitter
,但没有运气。
安装Combined Community Codec Pack
作品 - 但我不想将我的应用程序与完整的编解码器包一起发布,但需要解码的最低要求video/x-flv
。
有任何想法吗?
c++ - 如何在c ++中的directdhow应用程序之前阻止ffdshow对话框弹出
我编写了一个应用程序,通过笔记本电脑网络摄像头使用 C++ 中的 Direct show api 自动捕获图像。它运行良好,但在捕获图像之前会弹出一个 ffdshow 对话框。如何以编程方式停止 ffdshow 对话框?
directshow - 使用 ffdshow 播放 AAC RTP 流
我正在尝试使用自定义网络源过滤器和 ffdshow 音频解码器(ffdshow-tryout stable)播放 RTP 流。我在源输出流上设置的媒体类型是 MEDIASUBTYPE_RAW_AAC1。这是我正在设置的内容:
然后当我收到一个 rtp 数据包时,这是我转发给 ffdshow 过滤器的内容:
其中 pRaw 是指向 rtp 数据包的指针。我收到的每个 rtp 数据包都包含一个 AU。
过滤器连接但不播放音频。AAC 解码器也没有错误输出。
Axis 相机的 SDP 参数为:
有人可以帮帮我吗?
c# - 创建 ffdshow 音频处理器实例错误
我下载了最新的 ffdshow ( ffdshow_rev4527_20131203_clsid ) 并安装了它。我想在我的应用程序中使用ffdshow 音频处理器过滤器。每当我想创建它的实例时,都会因转换错误而失败。GraphStudio 和 GraphEditPlus 都不能添加过滤器,但令人惊讶的是 GraphEdit 可以添加和使用它!
你有什么主意吗?我为实例数量设置了“无限制”。
谢谢
ffmpeg - 在 FFMPEG 直接显示中选择输入设备
我想通过 FFMPEG 中的 dshow 选择我的相机作为输入视频。我可以做到,但我喜欢通过使用网络摄像头 ID 而不是网络摄像头名称来做到这一点......!!!
在 dshow 我应该在 video 参数中设置网络摄像头的名称,所以我需要设置设备号来选择网络摄像头。
例如网络摄像头 4 号代替 video="A4tech USB 摄像头"。
请建议这样做
提前致谢。
c++ - 将 FFDShow 编码到 DirectShow 图中以进行去隔行扫描?
好的,我已经环顾四周了,目前我很困惑。我会很感激我能找到的任何帮助。
我有一个应用程序可以在多个过滤器图上打开多个摄像头。它们中的每一个都是相同的,所以我将仅说明其中一个。高级想法是通过视频采集卡读入 PAL 视频流,然后由我们的应用程序处理。该应用程序构建 DirectShow 视频过滤器图。每个图表都包含一个视频源、一个样本采集器过滤器和一个空渲染器过滤器。然后将抓取的样本用于显示视频中的各种静止图像,并使用 OpenCV 进行绘制和缩放。所以,当前的过滤器图看起来像这样:
[视频源] --> [/* 某种编解码器过滤器 */] --> [Sample Grabber] --> [Null Renderer]
我说“某种”是因为我允许 DirectShow 自己渲染它,使用
但是,我对来自 PAL 视频的隔行扫描有疑问。使用 FFDShow 和 GraphEditor 应用程序,我构建了一个与上面的图表类似的图表,但在 SampleGrabber 之前使用 FFDShow 过滤器,设置为对视频源执行三次去隔行扫描。或者,甚至更好的是,使用它来解码来自视频采集器的视频流并对其进行去隔行扫描。
我的问题是:我不知道如何在代码中创建 FFDShow 过滤器。有没有办法在代码中添加过滤器,如果是这样,我应该包含什么或链接到项目来这样做?或者,有没有办法将 DirectShow 配置为使用 FFDShow 过滤器,在您调用 RenderStream 时进行去隔行扫描?
对此主题的任何帮助将不胜感激。
更新 1:
好的,所以我发现我正在开发的 PC,一台 Windows 8.1 机器,由于某种原因没有运行 FFDShow 过滤器,但是目标机器,一台 Windows 7 机器,运行完全相同的代码就好了。那里似乎有某种不兼容。:/
现在进入下一个阶段:去隔行扫描。我设法隔离了 Sample Grabber 过滤器和它之前的过滤器(在本例中是一个 AVI 解压缩器),并且我已经将它们彼此断开,然后在它们之间连接 FFDShow 原始视频过滤器。另一个 FFDShow 过滤器以某种方式弄乱了图表,没有从样本采集器中读取任何输出,所以我将使用前一个过滤器。现在问题变成了,如何激活视频馈送的去隔行扫描?我在 GraphEdit 程序中构建了相同的图形,并且隔行扫描消失了,所以我知道过滤器能够做到这一点。但是如何在代码中启用它?
更新 2 / 解决方案
我设法通过运行过滤器图使其工作,然后选择过滤器的托盘图标并通过右键单击该图标在菜单中设置去隔行。那工作得很好。感谢 Roman R 的帮助。
delphi - delphi如何控制dspack中basefilter的设置
我在 dspack 的 basefilter 中添加 ffdshow,如何在 Delphi 7 运行时更改亮度等设置
windows - InnoSetup, launch silently a 3rd party InnoSetup installer
Wath I'm trying to do is launch silently a 3rd party InnoSetup installer from my own installer.
This is the 3rd party installer: http://ffdshow-tryout.sourceforge.net/download.php
The parameters that I use works ok If I launch the 3rd party installer form commandline, but If I launch it from my own Installer it shows the language messagebox of the 3rd party installer, is not silent.
Why?, how to fix it?
#xA;video - 通过牺牲质量来提高 ffmpeg CPU 使用率
我正在使用 FFMpeg 进行屏幕捕获。我正在寻找一个可以在 1000 个虚拟机(Windows 和 Mac)上运行的屏幕捕获工具。这些虚拟机的 CPU(1 个核心)和 2GB 内存并且没有 GPU。
目前我用 ffmpeg 调用
我正在使用 gdigrab 捕获屏幕?有没有更好的选择可以减少 CPU 的使用?或更改编码器或格式?
我的目标是减少 4-5% 的 CPU 使用率。
提前致谢
c++ - AVFrame 有一个负的 linesize
我正在使用 libav(为 MSVC 构建的 2.7)使用 dshow 打开相机:
当我打开视频流时,它是格式的“原始视频”(根据其long_name
)AV_PIX_FMT_BGR24
。我需要有框架,AV_PIX_FMT_RGB24
所以我制作了一个 SwsContext,如下所示:
然后我有一个循环计时器来读取帧并解码为 AVFrame,然后将其传递给 sws_scale。
在此之后,我将av_picture
在我的应用程序中使用,但是sws_scale
挂起和崩溃。看着我要处理的所有数据sws_scale
,除了linesize之外,我觉得没什么奇怪的av_frame
。av_frame->linesize[0] == -1920
(linesize[1]
并且linesize[2]
是 0 的预期BGR24
)。由于我的框架宽度是 640,我预计是 1920,但负号似乎很奇怪。我试过翻转标志,但没有帮助。我应该注意,它不会每次都崩溃(有些运行它首先会通过几帧)。
为什么 linesize 是负数?这是否意味着什么,或者只是以某种方式搞砸了?