【问题标题】:V4L2: What happens when the queue is fullV4L2:队列已满时会发生什么
【发布时间】:2018-01-23 00:18:32
【问题描述】:

在视频捕获模式下,当队列已满并有新帧进入时会发生什么?

内核会丢帧吗?如果是这样,是丢弃最新的帧(刚到达)还是丢弃队列中最旧的帧?

【问题讨论】:

    标签: android linux linux-kernel v4l2


    【解决方案1】:

    是的,如果队列已满,如果没有更多可用的缓冲区,内核将丢弃刚刚到达的缓冲区最新帧。因此,为避免这种情况,您需要在用户空间中分配更多缓冲区 (REQBUF) 并快速排队 (QBUF) 缓冲区。

    【讨论】:

    • 谢谢。但是我可以以某种方式配置内核,使其丢弃队列中最旧的帧并将刚刚到达的最新帧入队吗?
    • 好吧,这很有意义。谢谢!
    猜你喜欢
    • 2015-07-04
    • 2015-09-14
    • 2018-07-19
    • 2011-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-05
    相关资源
    最近更新 更多