问题标签 [dvb]
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 - 如何使用 DvbSiparser.h 在 vc++ 中解析 mpeg2 TS?
我有一个 Mpeg2 TS 应该被分析。我正在使用 Windows Kit 版本 8(或 8.1)中引入的名为Dvbsiparser.h 的头文件。
我知道(但不确定)我应该构建一个过滤器图,然后添加两个重要过滤器:
1. Mpeg2 部分和表 2. Mpeg2 传输信息 然后,我使用 IDvbSiParser obj 来分析流。当我想实例化 IDvbSiParser 时:
CoCreateInstance(__uuidof(IDvbSiParser), ..., ..., IID_IDvbSiParser, ...)
我收到链接错误:未解析的外部 IID_IDvbSiParser。
我使用 Visual stdio 2013、.Net 4.5 和 msvc++。我还包括了 stream.h 和链接 winmm.lib、strmbased.lib、msvcrtd.lib 和 strmiids.lib,并将真正的 lib 路径设置为 windows 套件。除 IDvbSiParser 之外的所有其他对象均已创建。
我应该使用另一个库还是包含另一个头文件?如何找到适合 IID_IDvbSiParser 的库?谢谢。
ffmpeg - 如何使用 ffmpeg 从 dvb-t(直播电视流 - udp)中提取 EPG?
我想用 ffmpeg 从 dvb-t (live tv stream - udp) 中提取 EPG。我有一个 dvb-t 设备并使用 udp 接收流。
html - 如何减少 Mumudvb 中更改频道之间的延迟?
我使用mumudvb v1.7在 http 流中发送频道。在客户端,该流通过<video>
支持 HTML5 的标签和浏览器显示。
现在我有一个问题,当我想更改频道时,浏览器会在显示下一个 http 流之前显示黑屏 3 秒。我想这很正常,因为视频标签必须更改来源。mumudvb在将流切换到新频道时花费了这 3 秒中的一秒。
现在我想知道是否可以更快地更改视频标签的来源?
或者是否可以让mumudvvb更快地发送 http 请求?
ffmpeg - FFMPEG:如何从所有流中选择一个流
我尝试使用以下代码将UDP流(从 DVB 信号生成)转换为HLS m3u8 文件:
UDP 流包含 1 个频道(在本例中为 IRIB-TV1)。
当我运行上面的代码时,ffmpeg检测到从 DVB 卡流式传输的所有服务和频道,并带有以下消息:
正如您在 UDP 流中看到的 ffmpeg finf 4 频道,但 VLC 仅播放频道 1(IRIB-TV1)。
现在我有两个问题:
1-我可以通过这个ffmpeg代码获得所有频道和服务吗?
2-我可以从这个ffmpeg代码中选择一个特殊的流吗?(我知道ffmpeg可以选择一个带有-map选项的流,但我想选择输出日志中的其他service_name)
输出文件是:
ffmpeg - FFMPEG:如何保持 UDP 流连接打开,即使源下降了几分钟
我使用ffmpeg使用以下代码将UDP流(从 DVB 信号生成)解码为HLS:
有时DVB信号会下降几秒钟或几分钟,这会导致 ffmpeg 停止编码并显示错误:
当我在 VLC 播放器中播放 udp 并输入流下降一段时间后,VLC 等待停止播放,当流再次开始播放时。
现在我想知道是否存在ffmpeg发现流停止并且不显示超时错误的方法......这意味着FFMPEG保持连接打开并等待每次从源开始时接收流。谢谢
streaming - 从 DVB 卡到网络的实时流式传输
我正在开发一个应用程序,我需要将卫星频道从 DVB 卡流式传输到网络。是否有任何软件或服务器允许我通过生成许多要在网络上共享的 URL 来从 DVR 卡流式传输许多电视频道?
java - 将 VLCJ 用于 DVB-T 调谐器
在我国,dvb 频率为 570000000,有 3 个频道/节目;16,17,18
这是我用来通过批处理文件更改 vlc 频道的 mrl,方法是替换:program值。
但是当我通过 VLCJ 使用相同的 mrl 时,似乎:program没有任何效果,并且在不更改代码的情况下随机显示频道。
谁能帮我解决如何通过 VLCJ mrl 更改数字电视的频道/节目?
谢谢你。
python - 解析事件信息表文件
我的dreambox 兼容录像机在每次录制时都会存储事件信息表“.eit”文件。我想利用这些信息重新排列我的录音。
http://www.i-have-a-dreambox.com/wbb2/thread.php?threadid=186234&sid=3b36acb1ba62e4724cb47216ce08a564中出现了类似的问题
该格式似乎是一种二进制格式,如下所述:
https://de.wikipedia.org/wiki/Event_Information_Table 和
http://www.etsi.org/deliver/etsi_en/300400_300499/300468/01.14.01_60/en_300468v011401p.pdf
我现在正在寻找此类文件的解析器。我在哪里可以找到一个可以处理文件并且不假定广播流作为输入的文件?
到目前为止我尝试了什么?
我在网上搜索并找到以下链接和指针:
好像有一个java库
这是 JSR 927 https://jcp.org/en/jsr/detail?id=927 规范的一部分。
看起来这个库仅适用于 Java-ME,请参阅https://en.wikipedia.org/wiki/Java_TV
如果发现一些 dvb 相关的 EIT 代码片段,例如
https://github.com/jinfeng-geeya/3202C/blob/master/SRC/lib/libdvb/libepg/eit_parser.c
或者
http://linuxtv.org/docs/libdvbv5/eit_8h.html
作为 Kamaelia DVB 工具项目http://www.kamaelia.org/Developers/Projects/DVBTools.html的一部分,似乎有一个 python 解决方案:
http://pydoc.net/Python/Kamaelia/0.6.0/Kamaelia.Device.DVB.Parse.ParseEventInformationTable/
到目前为止,我发现的最接近的是来自 http://forums.openpli.org/topic/29141-eit-file-format/ 的提示,它指向: https ://github.com/betonme/e2openplugin-EnhancedMovieCenter/blob/主/src/EitSupport.py
目前我正在追求从这个开源 Python 代码。
c++ - Linux - 找不到共享库
使用 Code::Blocks (13.12) / g++ 在 Ubuntu 14.04 上使用 DVB V5 库创建一些测试代码。该库已按照下载中的说明进行下载、构建和安装。
如果一切正常,然后磁盘崩溃。
决定从头开始重新安装所有内容而不是使用备份,并再次下载 libdvbv5 源并重建它。一切似乎都很顺利。
从备份中替换了 Code::Blocks 测试项目并清理并重建了它,但是在调试或从命令行运行时......它现在说:
“加载共享库时出错:libdvbv5.so.0:无法打开共享对象文件:没有这样的文件或目录”
好吧,图书馆似乎在那里。ls -l in /usr/local/lib 给出
没有它,代码无论如何都不会构建,而且确实如此。我必须承认我有点困惑,为什么它会抱怨 libdvbv5.so.0,而其中链接的是 libdvbv5.so,而这是与 libdvbv5.so.0.0.0 的直接链接。
对此挠头——这是怎么回事?
c - TBS6905 DVB-S2 Quad Tuner PCIe卡的MAC地址
我有 TBS6905 DVB-S2 PCIe 卡并在 Ubuntu 14 中配置。我必须找到所有适配器的 MAC 地址,因为我的应用程序将同时对所有四个适配器进行盲扫描。
并且这些适配器的索引将在重新启动后更改。
所以我必须找到 MAC 地址并使用 C 语言为特定的适配器设备设置静态开始和结束频率。
我尝试了什么: - 我检查了 dmesg 但我确实得到了 MAC 地址(虽然我也有 Prof 7500 DVB-S2,在那个 dvb 卡中我可以使用 dmesg 找到 MAC 地址)。- 我还检查了 udevadm 命令,但还没有运气。
谢谢你。