FFMPEG RTP MpegTS 复用率

标签 ffmpeg

我需要一个应用程序,它接受输入 rtp MpegTS 流并将其重新复用,重新映射 PID,然后将其作为 RTP MpegTS 多播发送出去。我了解当前形式的 FFMPEG 无法执行此操作,因为 rtp_mpegts 不会从命令行获取选项。

我已经开始查看 FFMPEG 源以找到一种将其添加到具有这些选项的方法。我对 FFMPEG 使用 AVFormatContext 传递信息的方式有点困惑。我在 rtp_mepgts 中添加了一个新的 priv_class,它指向一个包含选项的类(与 mpegtsenc.c 类相同),以便将选项实际添加到该上下文中。但是,当尝试在某处进行重新分配时,它现在失败了。

在走得太远之前-这是正确的方法吗?这是如何将选项正确添加到 FFMPEG 还是我应该寻找另一种方法?

最佳答案

  • 可以在 ffmpeg 中重新映射 PID。
    fmpeg -i 输入 -c 复制 -f mpegts\
    -mpegts_original_network_id 0x1122\
    -mpegts_transport_stream_id 0x3344\
    -mpegts_service_id 0x5566\
    -mpegts_service_type 0x1\
    -mpegts_pmt_start_pid 0x1500\
    -mpegts_start_pid 0x150\
    -metadata service_provider="某些提供者"\
    -metadata service_name="某个 channel "\
    -tables_version 5\
    示例.ts
  • Remuxing 可以通过 ffmpeg 使用 [muxrate] 参数
  • 完成。
  • 可以使用 multicat 工具将 RTP 更改为 UDP 和 RTP
    https://www.videolan.org/projects/multicat.html
  • 关于FFMPEG RTP MpegTS 复用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47103500/

    相关文章:

    android - Android 上的快速视频压缩

    ffmpeg - 我有 2 个区域需要模糊 - 如何重复使用相同的滤镜?

    c++ - 如何制作带有 jpeg 帧的 .avi、.mp4 文件?

    c++ - 在 GLFW 窗口中显示 FFMPEG 解码帧

    batch-file - 如何使用连续搜索编码(ffmpeg x264)

    ffmpeg - ffprobe 显示 h264 流的比特率为 0.0 或 N/A

    function - ffmpeg azure 函数消耗计划高容量请求的 CPU 可用性较低

    iOS AVFoundation - 是否可以通过位置/运动跟踪将文本/图像添加到视频中?

    c - FFmpeg C Api - 降低 fps 但保持视频持续时间

    ffmpeg - 您可以强制 ffmpeg hls 解复用从实时 hls 流的开头开始吗?