【问题标题】:Capture a DVB-T Stream to a movie-file将 DVB-T 流捕获到电影文件
【发布时间】:2011-05-14 23:31:17
【问题描述】:

我有一个带有电视信号实时视图的表格(来自 dvb-t 棒)。我有来自http://directshownet.sourceforge.net/about.html 的示例项目“DTViewer”。 现在我尝试通过单击按钮将流捕获到电影文件,但是如何? 我使用 C# 和 DirectShow.NET。

我尝试在许多示例项目中进行搜索,但这些示例项目是为视频输入而不是带有 BDA(广播驱动架构)接口的 dvb-t 棒制作的。

救命!

【问题讨论】:

  • 图表是如何设置的?
  • 我有来自 directshownet.sourceforge.net 的示例项目。项目 DTViewer。该图包括一个 MPEG-2 Demultiplexer Filter 以显示流...

标签: c# streaming video-capture capture bda


【解决方案1】:

不知道“电影文件”到底是什么意思,但我可以告诉你如何捕获整个 MUX(传输流)。

创建一个带有 Microsoft DVBT Network ProviderYou_Name_It BDA DVBT TunerYou_Name_It BDA Digital CaptureMPEG-2 Demultiplexer 过滤器。
连接它们后,枚举 MPEG-2 Demultiplexer 上的所有输出引脚并渲染它们。调整您选择的频率 (put_TuneRequest)。

此时一切都已准备好运行图表,但不要运行它!
枚举图表中的所有过滤器。断开除 Microsoft DVBT Network ProviderYou_Name_It BDA DVBT TunerYou_Name_It BDA Digital Capture 之外的所有过滤器。

删除所有这些断开连接的过滤器除了 MPEG-2 Demultiplexer 之外的图表中的过滤器(尽管它没有连接,但它必须在图表中)。添加 Sample Grabber 过滤器和 NULL Renderer 过滤器。将 Digital Capture 过滤器连接到 Sample Grabber 并将 Sample Grabber 连接到 NULL Renderer。您现在可以运行图表。通过 Sample Grabber 过滤器中的回调,您将收到整个 MUX。当然,对数据进行解复用还有一些工作,但是一旦这样做,您就可以一次在一个 MUX 中捕获所有电视节目。最简单的方法是以 TS 格式捕获它,因为 TS 正在广播(188 字节长的数据包)。

【讨论】:

  • 谢谢!我所说的电影文件是指 AVI、WMV 或 MPEG 之类的文件
  • 不客气 :-) TS 内部是 MPEG2 或 MPEG4,因此您应该能够创建 AVI 或 MPEG 文件而无需重新压缩(无质量损失)。但是,对于 WMV,您必须解压缩 MPEG 并使用 WMV 编码器再次对其进行编码。
【解决方案2】:

在我看来 VLC 支持 BDA (BDA.c file reference),也许你可以从他们的代码中窥探到一些东西?

【讨论】:

  • 我用 C# 编写工具...我需要一个包装器(P/Invoke) 不存在任何 .NET 库?但这是一个很好的提示。
【解决方案3】:

您的问题没有简单的答案。我已经开始了一个这样的项目,但发现我对此知之甚少,所以这里是我研究的一些东西。

首先,您必须了解 dvb-t 调谐器卡或棒不提供经典意义上的视频帧,但解码是在 pc 上的 cpu 上完成的。外部卡只会为您提供压缩数据,因为它是从空中获取的。

下一步 - 交付给您的数据将采用 MPEG2 或 MPEG4 传输流格式。适合流式传输或广播,而不是保存到文件。 VLC 能够播放写入文件的 TS,但要录制正确的视频文件,您必须对文件进行转码或将其重新打包到 Program Stream。谷歌一下,你会发现不同之处。

更多 - 广播中的一个频率由许多通道组成,该通道封装称为“多路复用器”。所以 - 从 BDA 调谐器/捕获器中,您将获得所有数据,您必须手动解复用它或让 BDA 解复用器为您完成。

希望这些信息足以让您入门,当我使用真正的键盘时,我可以向您发布一些有趣的链接。

【讨论】:

    猜你喜欢
    • 2011-05-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 2017-10-05
    • 2017-09-20
    • 2013-10-31
    相关资源
    最近更新 更多