我有能力捕获“MPEGTS”DVB/ATSC 流。我希望能够获取 TS 文件并从中提取“EPG”(编程指南)信息,因为 FFmpeg(负责捕获)似乎无法从 MPEGTS 流中读取任何 EPG 信息。我如何将这些数据提取成某种人类可读的文本形式?我有 MPEGTS 文件作为输入。我尝试了几个库:
libdvbtee 似乎仅适用于 unix:https://github.com/mkrufky/libdvbtee/issues/12(更新:它现在适用于 Windows,请参阅答案)
DVBInspector 仅为 GUI(这里需要命令行 UI)。
TSReader“免费”版本不能提取 EPG。
FFmpeg 似乎还没有任何支持 EPG 的概念。
CherryEPG似乎只能写入,不能读取EPG。
利布奇显然可以做到这一点,但不清楚是否有命令行选项。
EPG 收集器似乎仅为 GUI (?) 并且很难理解如何转换为人类可读的输出。
答案1
由于你发布了这个问题,我已经修复了 windows 版本对libdvbtee
libdvbtee
是一个开源的传输流服务信息解码器库(mkrufky.github.io/libdvbtee),您可以使用它来查看任何文件中嵌入的 EPG 或任何其他服务信息TS
。使用以下命令:
dvbtee -F mpegfile.ts
如果添加该-j
选项,它还将输出PSIP
表和对象descriptors
中的内容JSON
:
dvbtee -F mpegfile.ts -j
答案2
好的,我确实发现了 EPGCollector,它有 EPGCentre.exe,这是一个不错的用户界面,还有 EPGCollector.exe,这是一个控制台应用程序。EPGCentre.exe 会生成一个配置文件,你可以将其保存在任何地方,然后只需将控制台应用程序作为一个进程运行,它就会在后台运行
EPGCentre.exe 吐出的配置文件的示例命令行参数!
C:\EPGCollector.exe/INI=BNE.ini