gpt4 book ai didi

linux - 如何连接来自 DVB 卡的 ATSC 流?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:56:58 26 4
gpt4 key购买 nike

我正在尝试使用 Linux DVB 视频采集卡制作一个简单的“电视查看器”。目前我使用以下过程看电视(我在 Raspberry Pi 上):

  1. 使用 azap -r TV_CHANNEL_HERE 调到一个 channel 。这将提供字节到设备 /dev/dvb/adapter0/dvr0
  2. 打开 OMXPlayer omxplayer/dev/dvb/adapter0/dvr0
  3. 看电视!

当我尝试更改 channel 时,问题就来了。即使我将播放器设置为缓存传入字节(也尝试使用 MPlayer),播放器也无法承受 channel 更改(通过使用新 channel 重新启动 azap

我认为这是因为 MPEG TS 流元数据发生了变化。

寻找可以让我执行以下操作的 C 库:

  1. 从 DVR 设备中提取 cache_size * mpeg_ts_packet_size
  2. 评估每个数据包并根据需要重写元数据(PID 等)。
  3. 用生成的数据包填充 FIFO。
  4. 将 {OMXPlayer,MPlayer} 设置为从 FIFO 中读取。

我在想的另一件事是使用一个程序将 MPEG TS 转换为 MPEG PS 并以这种方式连接字节。

想法?

最佳答案

事实上,当您想在其他 channel 上调谐时,某些元数据可能会发生变化并使之前缓存的数据无效。不幸的是,我不熟悉您使用的工具,但您的观点 2. 让我大吃一惊:您将浪费时间尝试重写传输流数据。

我宁愿建议停止并重新启动 zapping 过程,因为它似乎在开始时工作正常。

附言:这里有一些 tools这可以帮助。另外,我不确定您的问题在哪个级别,但是 VLC可以安装在 Raspberry PI 上,它可以优雅地处理 TS。

关于linux - 如何连接来自 DVB 卡的 ATSC 流?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25107625/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com