This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM62P-Q1:如何检测摄像头视频流上的帧冻结

Guru**** 2460380 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1480868/am62p-q1-how-to-detect-frame-freeze-on-camera-video-flow

器件型号:AM62P-Q1

工具与软件:

您好、TI:

我们的产品连接4个摄像头和1个显示器。

视频流水线如下所示。

camera1 +camera2 + Camera3 + Camera4 --> CSI --> GPU --> DSS --> Display

四个摄像头图像将通过 GPU 合并为一个图像并输入到 DSS。

我们知道 DSS 具有帧冻结检测功能。

但 当一个摄像头图像流发生帧冻结时、我们无法检测到 DSS 的帧冻结问题。

那么,如何检测摄像机视频流上的帧冻结?

此致

Chunfu

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Chunfu:

    请允许我内部检查并在下周与您联系。

    谢谢你。

    建中

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Chunfu:

    您应该能够通过对 CSIRX 驱动程序的 DMA 回调进行计时来检测 CSI 帧冻结情况。 例如、您可以在此行添加一些代码来获取调用 DMA 回调的时间: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/media/platform/ti/j721e-csi2rx/j721e-csi2rx.c?h=ti-linux-6.6.y#n747。

        pthread_mutex_lock(&freeze_detect_timer_mutex); 
        last_dma_callback_time = time(NULL); 
        pthread_mutex_unlock(&freeze_detect_timer_mutex); 
    

    然后、在您的应用代码中、定期检查自上次 CSIRX DMA 回调经过的时间量:

        current_time = time(NULL); 
        pthread_mutex_lock(&freeze_detect_timer_mutex); 
        time_elapsed = difftime(current_time, last_dma_callback_time)
        pthread_mutex_unlock(&freeze_detect_timer_mutex); 
        
        /* periodically check lapsed time since last DMA callback:
         * CSIRX_DMA_CALLBACK_TIMEOUT can be several frame durations, e.g. 16.66msec * 5
         * for 5 frames at 60fps
        */
        if(it is time to check DMA call back timeout) {
            if( time_elapsed > CSIRX_DMA_CALLBACK_TIMEOUT) {
                // CSI DMA call back time out, streaming likely frozen, take action
            }
        }

    此致、

    建中