【问题标题】:GStreamer memory buffer usageGStreamer 内存缓冲区使用情况
【发布时间】:2013-05-21 22:55:56
【问题描述】:

我正在嵌入式系统上试验 gstreamer,我想知道是否有办法确定 gstreamer 将使用的最大内存量。如果我有一个简单的source -> filter -> filter -> sink 管道,我能否计算出每个阶段将分配多少缓冲区以及它们的最大大小是多少?

我的理解是我不能限制内存使用,但我至少想了解最坏的情况。这是可能的还是过于依赖运行时条件和/或数据内容。我也是 gstreamer 的新手,所以如果有什么我可以添加到管道中以使其更具确定性,请告诉我。

谢谢!

【问题讨论】:

    标签: memory embedded gstreamer


    【解决方案1】:

    使用 gstreamer-0.10,您可以使用 gst-tracelib (http://cgit.freedesktop.org/~ensonic/gst-tracelib/) 获取例如峰值内存消耗和各种数据流相关的统计。通常元素不会保留缓冲区的副本。例外是例如像元素和编解码器一样的队列(需要保留参考缓冲区)。许多元素尝试就地工作,即它们不分配新缓冲区,而是更改它们接收到的缓冲区并将其传递(例如音量)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-03-31
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多