Argus's ICaptureSession captureBurst with PIXEL_FMT_RAW16 hanging on 6th burst capture

Hello,

I have been testing libargus’s captureBurst function with raw bayer output (PIXEL_FMT_RAW16) on a 20MP CSI2 sensor with the Jetson Nano (JetPack 4.3) and am running into a nvargus-daemon timeout on the 6th invocation of captureBurst, when the burst includes five exposures. I run into a timeout on the 5th invocation of captureBurst if the burst includes six exposures.

I don’t run into a timeout at all if the burst length is four or less exposures, and I also don’t see any timeouts if I set iStreamSettings->setPixelFormat(PIXEL_FMT_YCbCr_420_888).

From what I recall, I didn’t experience a timeout when testing the same code on the Jetson TX2, so I believe this is particular to the Jetson Nano. I haven’t tried this on a Jetson TX1.

I don’t have a lower resolution sensor to test at the moment unfortunately due to COVID19 so I won’t be able to provide sample comparisons with e.g rasberry pi module v.2 IMX219 at the moment.

Here is my sample test code, based on the Argus yuvJpeg sample. To test, simply copy this over jetson_multimedia_api/argus/samples/yuvJpeg/main.cpp and compile+run argus_yuvjpeg:

#include "ArgusHelpers.h"
#include "CommonOptions.h"
#include "Error.h"
#include "Thread.h"

#include <Argus/Argus.h>
#include <EGLStream/EGLStream.h>

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <fcntl.h>

#include <iostream>


using namespace Argus;
using namespace EGLStream;

namespace ArgusSamples
{

// Debug print macros.
#define PRODUCER_PRINT(...) printf("PRODUCER: " __VA_ARGS__)
#define CONSUMER_PRINT(...) printf("CONSUMER: " __VA_ARGS__)

/*******************************************************************************
 * FrameConsumer thread:
 *   Creates a FrameConsumer object to read frames from the OutputStream, then
 *   acquires and prints frame info from the IImage and IImage2D interfaces
 *   while frames are presented. Writes bayer images to file
 ******************************************************************************/
class ConsumerThread : public Thread
{
public:
    explicit ConsumerThread(std::vector<OutputStream*> streams, bool& exit) :
        m_streams(streams), m_exit(exit)
    {
    }
    ~ConsumerThread()
    {
    }

private:
    /** @name Thread methods */
    /**@{*/
    virtual bool threadInitialize();
    virtual bool threadExecute();
    virtual bool threadShutdown();
    /**@}*/

    std::vector<OutputStream*> m_streams;
    std::vector<FrameConsumer*> m_consumers;
    bool& m_exit;
};

bool ConsumerThread::threadInitialize()
{
    // Create the FrameConsumer.
    for (OutputStream* stream : m_streams)
    {
        CONSUMER_PRINT("Creating stream\n");
        m_consumers.push_back(FrameConsumer::create(stream));
    }

    return true;
}

bool ConsumerThread::threadExecute()
{
    for (OutputStream* stream : m_streams)
    {
        IEGLOutputStream *iStream = interface_cast<IEGLOutputStream>(stream);

        // Wait until the producer has connected to the stream.
        if (iStream->waitUntilConnected() != STATUS_OK)
            ORIGINATE_ERROR("Stream failed to connect.");
    }

    uint32_t frameNum = 0;
    while (true)
    {
        if (m_exit)
            break;

        for (FrameConsumer* consumer : m_consumers)
        {
            IFrameConsumer *iFrameConsumer = interface_cast<IFrameConsumer>(consumer);
            UniqueObj<Frame> frame(iFrameConsumer->acquireFrame());

            // Use the IFrame interface to print out the frame number/timestamp, and
            // to provide access to the Image in the Frame.
            IFrame *iFrame = interface_cast<IFrame>(frame);
            if (!iFrame)
                ORIGINATE_ERROR("Failed to get IFrame interface.");
            CONSUMER_PRINT("Acquired Frame: %llu, time %llu\n",
                        static_cast<unsigned long long>(iFrame->getNumber()),
                        static_cast<unsigned long long>(iFrame->getTime()));

            // Print out some capture metadata from the frame.
            IArgusCaptureMetadata *iArgusCaptureMetadata = interface_cast<IArgusCaptureMetadata>(frame);
            if (!iArgusCaptureMetadata)
                ORIGINATE_ERROR("Failed to get IArgusCaptureMetadata interface.");
            CaptureMetadata *metadata = iArgusCaptureMetadata->getMetadata();
            ICaptureMetadata *iMetadata = interface_cast<ICaptureMetadata>(metadata);
            if (!iMetadata)
                ORIGINATE_ERROR("Failed to get ICaptureMetadata interface.");
            CONSUMER_PRINT("\tSensor Timestamp: %llu, LUX: %f\n",
                        static_cast<unsigned long long>(iMetadata->getSensorTimestamp()),
                        iMetadata->getSceneLux());

            // Print out image details, and map the buffers to read out some data.
            Image *image = iFrame->getImage();
            IImage *iImage = interface_cast<IImage>(image);
            IImage2D *iImage2D = interface_cast<IImage2D>(image);

            const uint8_t *data_ptr = static_cast<const uint8_t*>(iImage->mapBuffer());
            if (!data_ptr)
                ORIGINATE_ERROR("\tFailed to map buffer\n");

            Size2D<uint32_t> size = iImage2D->getSize(0);
            const uint16_t *d = static_cast<const uint16_t*>(iImage->mapBuffer());
            CONSUMER_PRINT("\tIImage(2D): "
                            "buffer (%ux%u, %u stride), "
                            "%02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d %02d\n",
                            size.width(), size.height(), iImage2D->getStride(0),
                            d[10000], d[10001], d[10002], d[10003], d[10004], d[10005],
                            d[10006], d[10007], d[10008], d[10009], d[10010], d[10011]);

        }
    }

    CONSUMER_PRINT("Done.\n");

    PROPAGATE_ERROR(requestShutdown());

    return true;
}

bool ConsumerThread::threadShutdown()
{
    for (FrameConsumer* frameConsumer : m_consumers)
    {
        frameConsumer->destroy();
    }
    return true;
}

/*******************************************************************************
 * Argus Producer thread:
 *   Opens the Argus camera driver, creates an OutputStream to output to a
 *   FrameConsumer, then performs repeating capture requests for CAPTURE_TIME
 *   seconds before closing the producer and Argus driver.
 ******************************************************************************/
static bool execute(const CommonOptions& options)
{
    // Create the CameraProvider object and get the core interface.
    UniqueObj<CameraProvider> cameraProvider = UniqueObj<CameraProvider>(CameraProvider::create());
    ICameraProvider *iCameraProvider = interface_cast<ICameraProvider>(cameraProvider);
    if (!iCameraProvider)
        ORIGINATE_ERROR("Failed to create CameraProvider");
    printf("Argus Version: %s\n", iCameraProvider->getVersion().c_str());

    // Get the selected camera device and sensor mode.
    CameraDevice* cameraDevice = ArgusHelpers::getCameraDevice(
            cameraProvider.get(), options.cameraDeviceIndex());
    if (!cameraDevice)
        ORIGINATE_ERROR("Selected camera device is not available");
    SensorMode* sensorMode = ArgusHelpers::getSensorMode(cameraDevice, options.sensorModeIndex());
    ISensorMode *iSensorMode = interface_cast<ISensorMode>(sensorMode);
    if (!iSensorMode)
        ORIGINATE_ERROR("Selected sensor mode not available");

    // Create the capture session using the selected device and get the core interface.
    UniqueObj<CaptureSession> captureSession(iCameraProvider->createCaptureSession(cameraDevice));
    ICaptureSession *iCaptureSession = interface_cast<ICaptureSession>(captureSession);
    if (!iCaptureSession)
        ORIGINATE_ERROR("Failed to get ICaptureSession interface");

    // Create the OutputStream.
    PRODUCER_PRINT("Creating output stream\n");
    UniqueObj<OutputStreamSettings> streamSettings(
        iCaptureSession->createOutputStreamSettings(STREAM_TYPE_EGL));
    IEGLOutputStreamSettings *iStreamSettings =
        interface_cast<IEGLOutputStreamSettings>(streamSettings);
    if (iStreamSettings)
    {
//        iStreamSettings->setPixelFormat(PIXEL_FMT_YCbCr_420_888); // PIX_FMT_YCbCr_420_888 has no problems
        iStreamSettings->setPixelFormat(PIXEL_FMT_RAW16);           // PIX_FMT_RAW16 hangs on 6th burst capture, if burst includes 5 or more captures
        iStreamSettings->setResolution(iSensorMode->getResolution());
        iStreamSettings->setMode(EGL_STREAM_MODE_FIFO);
        iStreamSettings->setMetadataEnable(true);
    }

    std::vector<OutputStream*> outputStreams;
    std::vector<const Request*> requests;
    std::vector<std::pair<OutputStream*, Request*>> outputRequestPairs;

    std::vector<std::pair<uint64_t,uint64_t>> nsec_exp_dur_pairs =
    {
        {10000000,  50000000},
        {20000000,  50000000},
        {30000000,  50000000},
        {40000000,  50000000}, // no nvargus-daemon timeout with only four exposures in a burst sequence
        {50000000,  50000000}, // with five exposures in a burst sequence, nvargus-daemon timeouts on 6th invocation of captureBurst
//        {50000000,  50000000}, // with six exposures in a burst sequence, nvargus-daemon timeouts on 5th invocation of captureBurst
    };

    for (std::pair<uint64_t,uint64_t> nsec_exp_dur: nsec_exp_dur_pairs)
    {
        uint64_t nsec_exp = nsec_exp_dur.first;
        uint64_t nsec_dur = nsec_exp_dur.second;

        // Launch the FrameConsumer thread to consume frames from the OutputStream.
        PRODUCER_PRINT("Create output stream and request for for %llu nsec exposure\n", static_cast<unsigned long long>(nsec_exp));

        // create output stream and request, and enable output stream on request
        OutputStream* outputStream = iCaptureSession->createOutputStream(streamSettings.get());
        Request* request = iCaptureSession->createRequest(Argus::CAPTURE_INTENT_STILL_CAPTURE);
        outputRequestPairs.push_back(std::make_pair(outputStream, request));
        IRequest *iRequest = interface_cast<IRequest>(request);
        if (!iRequest)
            ORIGINATE_ERROR("Failed to create Request");
        iRequest->enableOutputStream(outputStream);

        // lock AE
        IAutoControlSettings *iAutoControlSettings =
            interface_cast<IAutoControlSettings>(iRequest->getAutoControlSettings());
        if (!iAutoControlSettings)
            ORIGINATE_ERROR("Failed to get IAutoControlSettings interface");
        if (iAutoControlSettings->setAeLock(true) != Argus::STATUS_OK)
            ORIGINATE_ERROR("Failed to set AE lock");
        if (iAutoControlSettings->setIspDigitalGainRange(Range<float>(1.0)) != Argus::STATUS_OK)
            ORIGINATE_ERROR("Failed to set digital gain range");

        // Configure source settings in the request.
        ISourceSettings *iSourceSettings = interface_cast<ISourceSettings>(request);
        if (!iSourceSettings)
            ORIGINATE_ERROR("Failed to get source settings request interface");
        iSourceSettings->setSensorMode(sensorMode);
        Range<uint64_t> durRange = Range<uint64_t>(nsec_dur);
        iSourceSettings->setFrameDurationRange(durRange);
        Range<uint64_t> expRange = Range<uint64_t>(nsec_exp);
        iSourceSettings->setExposureTimeRange(expRange);
        Range<float> gainRange = iSourceSettings->getGainRange();
        iSourceSettings->setGainRange(Range<float>(1.0));

        outputStreams.push_back(outputStream);
        requests.push_back(request);
    }

    bool exit = false;
    ConsumerThread frameConsumerThread(outputStreams, exit);
    PROPAGATE_ERROR(frameConsumerThread.initialize());
    // Wait until the consumer is connected to the stream.
    PROPAGATE_ERROR(frameConsumerThread.waitRunning());

    for (int i = 0 ; i < 9; i++)
    {
        PRODUCER_PRINT("Capture burst of length %lu, max burst length %u\n", requests.size(), iCaptureSession->maxBurstRequests());
        uint32_t requestId = iCaptureSession->captureBurst(requests);

	// wait three seconds between calls to captureBurst
        usleep(3000000);
    }

    // send capture request to wake consumer thread
    exit = true;
    PRODUCER_PRINT("Capture final burst of length %lu, max burst length %u\n", requests.size(), iCaptureSession->maxBurstRequests());
    uint32_t requestId = iCaptureSession->captureBurst(requests);

    // Wait for the consumer thread to complete.
    PROPAGATE_ERROR(frameConsumerThread.shutdown());


    for (OutputStream* outputStream : outputStreams)
    {
        // Destroy the output stream to end the consumer thread.
        outputStream->destroy();
    }

    for (const Request* request: requests)
    {
        // Destroy the output stream to end the consumer thread.
        Request *req = (Request*)request;
        req->destroy();
    }

    PRODUCER_PRINT("Done -- exiting.\n");

    return true;
}

}; // namespace ArgusSamples

int main(int argc, char** argv)
{
    ArgusSamples::CommonOptions options(basename(argv[0]),
                                        ArgusSamples::CommonOptions::Option_D_CameraDevice |
                                        ArgusSamples::CommonOptions::Option_M_SensorMode |
                                        ArgusSamples::CommonOptions::Option_T_CaptureTime);
    if (!options.parse(argc, argv))
        return EXIT_FAILURE;
    if (options.requestedExit())
        return EXIT_SUCCESS;

    for ( int i = 0; i < 1; i++) {
	    PRODUCER_PRINT("Argus execute %d\n", i);
        if (!ArgusSamples::execute(options))
            return EXIT_FAILURE;
    }

    return EXIT_SUCCESS;
}

This is the timeout I am referring to in the nvargus-daemon printout:

SCF: Error Timeout:  (propagating from src/api/Buffer.cpp, function waitForUnlock(), line 637)
SCF: Error Timeout:  (propagating from src/components/CaptureContainerImpl.cpp, function returnBuffer(), line 358)
FiberScheduler: fiber 0x7f30001110 exiting
SCF: Error IoctlFailed:  (propagating from src/common/Utils.cpp, function workerThread(), line 116) disposing CC 127 Session 2
SCF: Error IoctlFailed: Worker thread CaptureScheduler frameStart failed (in src/common/Utils.cpp, function workerThread(), line 133)

Here is kernel dmesg at the point of nvargus-daemon timeout:

[ 8676.995435] isp 54600000.isp: pin_array_ids: could not map attachment err=-12
[ 8677.002693] vi 54080000.vi: nvhost_ioctl_channel_submit: failed with err -12
[ 8677.009800] vi 54080000.vi: submit_add_gathers: failed to copy user inputs: class_ids=000000001c00dd78 num_cmdbufs=2
[ 8677.020370] vi 54080000.vi: nvhost_ioctl_channel_submit: failed with err -22

Here is a snippet from start/end of nvargus-daemon output, running the sample program:

root@localhost:/dev/shm/output# echo file csi2_fops.c +p > /sys/kernel/debug/dynamic_debug/control
root@localhost:/dev/shm/output# echo file vi2_fops.c +p > /sys/kernel/debug/dynamic_debug/control
root@localhost:/dev/shm/output# echo file imx283.c +p > /sys/kernel/debug/dynamic_debug/control 
root@localhost:/dev/shm/output# echo "8" > /proc/sys/kernel/printk
root@localhost:/dev/shm/output# echo 1 > /sys/kernel/debug/tracing/tracing_on
root@localhost:/dev/shm/output# echo 30720 > /sys/kernel/debug/tracing/buffer_size_kb
root@localhost:/dev/shm/output# echo 1 > /sys/kernel/debug/tracing/events/tegra_rtcpu/enable
root@localhost:/dev/shm/output# echo 1 > /sys/kernel/debug/tracing/events/freertos/enable
root@localhost:/dev/shm/output# echo 2 > /sys/kernel/debug/camrtc/log-level
bash: /sys/kernel/debug/camrtc/log-level: No such file or directory
root@localhost:/dev/shm/output# echo 1 > /sys/kernel/debug/tracing/events/camera_common/enable
root@localhost:/dev/shm/output# echo > /sys/kernel/debug/tracing/trace
root@localhost:/dev/shm/output# cat /sys/kernel/debug/tracing/trace
# tracer: nop
#
# entries-in-buffer/entries-written: 0/0   #P:4
#
#                              _-----=> irqs-off
#                             / _----=> need-resched
#                            | / _---=> hardirq/softirq
#                            || / _--=> preempt-depth
#                            ||| /     delay
#           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
root@localhost:/dev/shm/output#
root@localhost:/dev/shm/output# systemctl stop nvargus-daemon
root@localhost:/dev/shm/output# export enableCamPclLogs=5
root@localhost:/dev/shm/output# export enableCamScfLogs=5
root@localhost:/dev/shm/output# /usr/sbin/nvargus-daemon &
[1] 24095
root@localhost:/dev/shm/output# === NVIDIA Libargus Camera Service (0.97.3)=== Listening for connections...
root@localhost:/dev/shm/output#
root@localhost:/dev/shm/output#
root@localhost:/dev/shm/output#
root@localhost:/dev/shm/output# sudo systemctl stop nvargus-daemon^C
root@localhost:/dev/shm/output# /home/rgbdaemon/tegra_multimedia_api/argus/build/samples/yuvJpeg/argus_yuvjpeg
Executing Argus Sample: argus_yuvjpeg
PRODUCER: Argus execute 0
=== argus_yuvjpeg[24104]: Connection established (7F9ADE31D0)Thread 1 getting next capture
Thread 1 is waiting
Thread 2 getting next capture
Thread 2 is waiting
Thread 3 getting next capture
Thread 3 is waiting
Thread 4 getting next capture
Thread 4 is waiting
Thread 5 getting next capture
Thread 5 is waiting
Thread 6 getting next capture
Thread 6 is waiting
Thread 7 getting next capture
Thread 7 is waiting
Thread 8 getting next capture
Thread 8 is waiting
Thread 9 getting next capture
Thread 9 is waiting
Thread 10 getting next capture
Thread 10 is waiting
Thread 11 getting next capture
Thread 11 is waiting
Thread 12 getting next capture
Thread 12 is waiting
Starting services...
Worker thread IspHw statsComplete start
Worker thread IspHw frameComplete start
Worker thread IspHw statsComplete start
Worker thread IspHw frameComplete start
Worker thread CaptureScheduler checkFramePending start
Worker thread CaptureScheduler frameStart start
Worker thread V4L2CaptureScheduler checkCaptureComplete start
Worker thread V4L2CaptureScheduler issueCaptures start
Worker thread PS handleRequests start
getInstance: s_instance(0x7f947d9480)
getInstance: s_instance(0x7f947d9480)
subscribe: SensorType(gyroscope)
subscribe: create SensorType(gyroscope) sensor(0x7f94773040)
subscribe: SensorType(accelerometer)
subscribe: create SensorType(accelerometer) sensor(0x7f947e0f30)
AC plugin not present: dlopen "acplugin.so", acplugin.so: cannot open shared object file: No such file or directory
Services are started
NvPclSetHotplugCallback: ++++++++++++++++++++++
---- Imager: Calibration blob file handling supported in this build ----
NvPclHwGetModuleList: OFParserListModules Succeeded
OFParserListModules: module list: /proc/device-tree/tegra-camera-platform/modules/module1
NvPclHwGetModuleList: WARNING: Could not map module to ISP config string
NvPclHwGetModuleList: No module data found
NvPclHwPrintModuleDefinition -- Name: imx283_center_framos
NvPclHwPrintModuleDefinition -- Position: 2
NvPclHwPrintModuleDefinition -- CalibrationData Found: 1
NvPclHwPrintCameraSubModule -- HwCamSubModule[0].Name: v4l2_sensor
NvPclHwPrintCameraSubModule -- HwCamSubModule[0].DevName: imx283 6-001a
NvPclHwGetModuleList: OFParserListModules Succeeded
NvPclModuleListInitialize: NvPclModule list[0]: imx283_center_framos position2
NvPclHwScanExternalCameras -- adding video0 to discover list
NvPclHwScanExternalCameras -- adding video0 to discover list
NvPclHwScanExternalCameras -- adding video0 to discover list
getHotplugMonitor: Getting hotplug monitor instance
 initializeHotplug++
 hotPlugfunc ++
 addWatch: Watch added wd='1'
CheckProcDTExists: INFO: accessing /proc/device-tree/tegra-virtual-camera-platform/modules; No such file or directory
OFParserGetVirtualDevice: NVIDIA Camera virtual enumerator not found in proc device-tree
setHotplugCallback: Registered new callback client
NvPclSetHotplugCallback: ----------------------
 hotPlugfunc: reading from inotify FD, Thread waiting
NvPclOpen: ++++++++++++++++++++++
NvPclStateControllerOpen: Found GUID 2 match at index[0]
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f94720910
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f947755f0
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f94730de0
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f944cbd30
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f94725440
NvPclHwInitializeModule: allocate overrides pathname @ 0x7f947253b0
LoadOverridesFile: looking for override file [/Calib/camera_override.isp] 1/16
CheckOverridesPermissions: stat(/Calib/camera_override.isp) call failed
LoadOverridesFile: looking for override file [/data/vendor/nvcam/settings/camera_overrides.isp] 2/16
CheckOverridesPermissions: stat(/data/vendor/nvcam/settings/camera_overrides.isp) call failed
LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/camera_overrides.isp] 3/16
CheckOverridesPermissions: stat(/opt/nvidia/nvcam/settings/camera_overrides.isp) call failed
LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/camera_overrides.isp] 4/16
CheckOverridesPermissions: stat(/var/nvidia/nvcam/settings/camera_overrides.isp) call failed
LoadOverridesFile: looking for override file [/data/vendor/nvcam/camera_overrides.isp] 5/16
CheckOverridesPermissions: stat(/data/vendor/nvcam/camera_overrides.isp) call failed
LoadOverridesFile: looking for override file [/data/vendor/nvcam/settings/imx283_center_framos.isp] 6/16
CheckOverridesPermissions: stat(/data/vendor/nvcam/settings/imx283_center_framos.isp) call failed
LoadOverridesFile: looking for override file [/opt/nvidia/nvcam/settings/imx283_center_framos.isp] 7/16
CheckOverridesPermissions: stat(/opt/nvidia/nvcam/settings/imx283_center_framos.isp) call failed
LoadOverridesFile: looking for override file [/var/nvidia/nvcam/settings/imx283_center_framos.isp] 8/16
CheckOverridesPermissions: stat(/var/nvidia/nvcam/settings/imx283_center_framos.isp) call failed
---- imager: No override file found. ----
Imager: looking for override file [/mnt/factory/camera/factory.bin] 1/16
Imager: looking for override file [/Calib/factory.bin] 2/16
Imager: looking for override file [/Calib/calibration.bin] 3/16
Imager: looking for override file [(null)] 4/16
Imager: looking for override file [(null)] 5/16
Imager: looking for override file [(null)] 6/16
Imager: looking for override file [(null)] 7/16
Imager: looking for override file [(null)] 8/16
Imager: looking for override file [(null)] 9/16
Imager: looking for override file [(null)] 10/16
Imager: looking for override file [(null)] 11/16
Imager: looking for override file [(null)] 12/16
Imager: looking for override file [(null)] 13/16
Imager: looking for override file [(null)] 14/16
Imager: looking for override file [(null)] 15/16
Imager: looking for override file [(null)] 16/16
Imager: looking for override file [/data/vendor/nvcam/settings/factory.bin] 1/16
Imager: looking for override file [/data/vendor/nvcam/settings/imx283_center_framos.bin] 2/16
Imager: looking for override file [/opt/nvidia/nvcam/settings/imx283_center_framos.bin] 3/16
Imager: looking for override file [/var/nvidia/nvcam/settings/imx283_center_framos.bin] 4/16
Imager: looking for override file [(null)] 5/16
Imager: looking for override file [(null)] 6/16
Imager: looking for override file [(null)] 7/16
Imager: looking for override file [(null)] 8/16
Imager: looking for override file [(null)] 9/16
Imager: looking for override file [(null)] 10/16
Imager: looking for override file [(null)] 11/16
Imager: looking for override file [(null)] 12/16
Imager: looking for override file [(null)] 13/16
Imager: looking for override file [(null)] 14/16
Imager: looking for override file [(null)] 15/16
Imager: looking for override file [(null)] 16/16
NvPclCreateDriver: Found NvPcl Driver Hal dev_name match (v4l2_sensor)
NvPclCreateDriver: Found a Driver name match (v4l2_sensor)
NvPclConnectDrivers: hImager was NULL, creating new imager
NvPclInitializeDrivers: v4l2_sensor ++++++++++++++++++
OFDPropertyGetString: could not read property [devnode-bus]
OFDPropertyCopyToLong: could not read property [has-eeprom]
OFDPropertyGetString: could not read property [type]
loadSubType: Sensor type missing in DT, 206
OFDPropertyCopyToLong: could not read property [set_mode_delay_ms]
OFDPropertyCopyToLong: could not read property [mode0.vc_id]
OFDPropertyCopyToLongLong: could not read property [mode0.serdes_pix_clk_hz]
OFDPropertyCopyToLongLong: could not read property [mode0.exp_time_1h]
OFDPropertyCopyToFloat: could not read property [mode0.gain_step_pitch]
OFDPropertyCopyToLong: could not read property [mode0.embedded_metadata_width]
OFDPropertyGetString: could not read property [mode0.dpcm_enable]
OFDPropertyGetString: could not read property [mode0.x_start]
OFDPropertyGetString: could not read property [mode0.y_start]
OFDPropertyGetString: could not read property [mode0.x_end]
OFDPropertyGetString: could not read property [mode0.y_end]
OFDPropertyGetString: could not read property [mode0.h_scaling]
OFDPropertyGetString: could not read property [mode0.v_scaling]
OFDPropertyCopyToLong: could not read property [set_mode_delay_ms]
OFDPropertyCopyToLong: could not read property [mode1.vc_id]
OFDPropertyCopyToLongLong: could not read property [mode1.serdes_pix_clk_hz]
OFDPropertyCopyToLongLong: could not read property [mode1.exp_time_1h]
OFDPropertyCopyToFloat: could not read property [mode1.gain_step_pitch]
OFDPropertyCopyToLong: could not read property [mode1.embedded_metadata_width]
OFDPropertyGetString: could not read property [mode1.dpcm_enable]
OFDPropertyGetString: could not read property [mode1.x_start]
OFDPropertyGetString: could not read property [mode1.y_start]
OFDPropertyGetString: could not read property [mode1.x_end]
OFDPropertyGetString: could not read property [mode1.y_end]
OFDPropertyGetString: could not read property [mode1.h_scaling]
OFDPropertyGetString: could not read property [mode1.v_scaling]
OFDPropertyCopyToLong: could not read property [set_mode_delay_ms]
OFDPropertyCopyToLong: could not read property [mode2.vc_id]
OFDPropertyCopyToLongLong: could not read property [mode2.serdes_pix_clk_hz]
OFDPropertyCopyToLongLong: could not read property [mode2.exp_time_1h]
OFDPropertyCopyToFloat: could not read property [mode2.gain_step_pitch]
OFDPropertyCopyToLong: could not read property [mode2.embedded_metadata_width]
OFDPropertyGetString: could not read property [mode2.dpcm_enable]
OFDPropertyGetString: could not read property [mode2.x_start]
OFDPropertyGetString: could not read property [mode2.y_start]
OFDPropertyGetString: could not read property [mode2.x_end]
OFDPropertyGetString: could not read property [mode2.y_end]
OFDPropertyGetString: could not read property [mode2.h_scaling]
OFDPropertyGetString: could not read property [mode2.v_scaling]
OFDPropertyCopyToLong: could not read property [set_mode_delay_ms]
OFDPropertyCopyToLong: could not read property [mode3.vc_id]
OFDPropertyCopyToLongLong: could not read property [mode3.serdes_pix_clk_hz]
OFDPropertyCopyToLongLong: could not read property [mode3.exp_time_1h]
OFDPropertyCopyToFloat: could not read property [mode3.gain_step_pitch]
OFDPropertyCopyToLong: could not read property [mode3.embedded_metadata_width]
OFDPropertyGetString: could not read property [mode3.dpcm_enable]
OFDPropertyGetString: could not read property [mode3.x_start]
OFDPropertyGetString: could not read property [mode3.y_start]
OFDPropertyGetString: could not read property [mode3.x_end]
OFDPropertyGetString: could not read property [mode3.y_end]
OFDPropertyGetString: could not read property [mode3.h_scaling]
OFDPropertyGetString: could not read property [mode3.v_scaling]
initialize: Loaded Driver: 4 Modes Available--------------
NvPclInitializeDrivers: v4l2_sensor ------------------
NvPclOpen: ----------------------
LSC: LSC surface is not based on full res!
=== argus_yuvjpeg[24104]: CameraProvider initialized (0x7f94831ed0)Argus Version: 0.97.3 (multi-process)
sourceRegistry[0] assigned

ispRegistry[0] assigned

Using Source GUID 2
Worker thread ViCsiHw frameComplete start
Worker thread ViCsiHw frameStart start
NvPclPowerOn: +++++++++++
NvPclPowerOn: -----------
Using ISP A
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=2, m_value=4294967295, m_timeout_ms=1000

LSC: LSC surface is not based on full res!
AC plugin not present: dlopen "acplugin.so", acplugin.so: cannot open shared object file: No such file or directory
No library found, disabling AC plugin.
Worker thread CaptureDispatcher start
PRODUCER: Creating output stream
PRODUCER: Create output stream and request for for 10000000 nsec exposure
PRODUCER: Create output stream and request for for 20000000 nsec exposure
PRODUCER: Create output stream and request for for 30000000 nsec exposure
PRODUCER: Create output stream and request for for 40000000 nsec exposure
PRODUCER: Create output stream and request for for 50000000 nsec exposure
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
PRODUCER: Capture burst of length 5, max burst length 6
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

No output buffers for 0
No output buffers for 2
InstructionList:
  + GraphSettings
      | SensorMode: 5496x3694 BayerS16RGGB 20.0fps
      | output 0: 5496x3694 Pitch BayerS16RGGB
      | inputClipRect 0: (0.00,0.00, 1.00,1.00)

  + Instruction List
      | id: 0
      +  0: CCDataSetupStage
          | EstimatedIspOutLatencyFrames: 6
          | NumConcurrentCaptures: 1
          | UnprocessedYuvBufferMask: 0
      +  1: ACSynchronizeStage
      +  2: AeAfApplyStage
      +  3: AcPluginStage
          | operation: opApply
      +  4: AcMergeStage
          | IspIn: [5496, 3694]
          | IspOut0: [5496, 3694]
          | IspOut1: [0, 0]
          | IspOut2: [0, 0]
      +  5: TempBufferAcquireStage
          | Buffer Index: 4
          | BufferRequirements: 5496x1 Pitch NonColor8
      +  6: SensorCaptureStage
          | Master: 1
          | Source GUID: 2
          | Output Buffer: 0
          | SensorMetadata Buffer: 4
      +  7: TempBufferAcquireStage
          | Buffer Index: 2
          | BufferRequirements: 5496x3694 BL Y8_ER 420
      +  8: TempBufferAcquireStage
          | Buffer Index: 3
          | BufferRequirements: 524288x1 Pitch NonColor8
      +  9: MemoryToISPCaptureStage
          | Master: 1
          | Input Buffer: 0
          | Output A Buffer: 2
          | Output IspStats Buffer: 3
          | Source GUID: 2
      + 10: StatsBufferAcquireStage
          | Buffer Index: 1
          | BufferRequirements: 640x430 Pitch Y8_ER 420
      + 11: BlitStage
          | Input Buffer: 2
          | Output Buffer: 1
          | Filter: Nearest
          | Transform: None
          | Src Rect: Not used
          | Dst Rect: Not used
      + 12: StatsUpdateStage
          | Output Meta Buffer: 4
          | Output IspStats Buffer: 3
      + 13: BufferReturnStage
          | Output A Buffer: 4
      + 14: BufferReturnStage
          | Output A Buffer: 3
      + 15: AcPluginStage
          | operation: opAnalyze
      + 16: AfAnalysisStage
      + 17: MonitorStage
      + 18: ExifStage
      + 19: MakerNoteStage
      + 20: BufferReturnStage
          | Output A Buffer: 2
      + 21: BufferReturnStage
          | Output A Buffer: 0
      + 22: MetadataReturnStage
      + 23: PerfStatsStage

Created fiber 0x7f30000b20 for CC 101 globalID 101 session 2
Thread 1 is working on CC 101 session 2 globalID 101 step 0
CC 101 session 2 completed step 0 in fiber 0x7f30000b20
cc 101(1) session 2 runCount=0 runIspOut=0, latest ccId=0
CC 101 session 2 completed step 1 in fiber 0x7f30000b20
NV AE and AfApply algorithms are active.
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

CC 101 session 2 completed step 2 in fiber 0x7f30000b20
CC 101 session 2 completed step 3 in fiber 0x7f30000b20
Created fiber 0x7f30000dd0 for CC 102 globalID 102 session 2
Thread 2 is working on CC 102 session 2 globalID 102 step 0
CC 102 session 2 completed step 0 in fiber 0x7f30000dd0
cc 102(2) session 2 runCount=1 runIspOut=0, latest ccId=0
CC 102 session 2 completed step 1 in fiber 0x7f30000dd0
NV AE and AfApply algorithms are active.
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

CC 102 session 2 completed step 2 in fiber 0x7f30000dd0
CC 102 session 2 completed step 3 in fiber 0x7f30000dd0
CC 102 session 2 stalled step 4 in fiber 0x7f30000dd0
FiberScheduler: cc 102, session 2 fiber 0x7f30000dd0 not ready to execute stalled on 0x7f94824020 stage...

Thread 2 getting next capture
Thread 2 is working on CC 102 session 2 globalID 102 step 4
CC 101 session 2 completed step 4 in fiber 0x7f30000b20
Thread 4 is waiting
Thread 3 is waiting
CC 101 session 2 completed step 5 in fiber 0x7f30000b20
CC 101 session 2 processing step 6 in fiber 0x7f30000b20
FiberScheduler: cc 101, session 2, fiber 0x7f30000b20 in progress...

Thread 1 getting next capture
Thread 1 is waiting
Thread 5 is waiting
CC 102 session 2 completed step 4 in fiber 0x7f30000dd0
CC 102 session 2 completed step 5 in fiber 0x7f30000dd0
CC 102 session 2 processing step 6 in fiber 0x7f30000dd0
FiberScheduler: cc 102, session 2, fiber 0x7f30000dd0 in progress...

Thread 2 getting next capture
Thread 2 is waiting
Thread 6 is waiting
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeMode: Target mode Id(0): Resolution 5496x3694
writeFrameRate:	INPUT frameRate:20.000000
writeGain:	INPUT gainCtrl:0 analogGain:0.000000
updateOutputSettings:	OUTPUT frameRate:20.000000
updateOutputSettings:	OUTPUT analogGain:1.000000
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeExposure:	INPUT expTime:0.010000
updateOutputSettings:	OUTPUT expTime:0.009999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
PowerServiceHw:addRequest: table size: before: 0, after:1NvPclSettingsApply: Reading PCL settings

	request table for ISP 0:
	req[0]: output1 width=0, output1 height=0, output1 Bpp=0
	req[0]: output2 width=0, output2 height=0, output2 Bpp=0
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=5496, output height=3694, output Bpp=16
	req[0]: input fps=20
	req[0]: guID=2, stage type=MemIspCapture
	req[0]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[450]: timeout=0
PowerServiceHwIsp:setLaBw: m_bwVal_Iso=0 and m_bwVal_NonIso=1596351 KBpS

PowerServiceCore:setCameraBw: totalNonIsoBw=1596351
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Created fiber 0x7f30000f70 for CC 103 globalID 103 session 2
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
Thread 7 is working on CC 103 session 2 globalID 103 step 0
CC 103 session 2 completed step 0 in fiber 0x7f30000f70
cc 103(3) session 2 runCount=2 runIspOut=0, latest ccId=0
CC 103 session 2 completed step 1 in fiber 0x7f30000f70
NV AE and AfApply algorithms are active.
CC 103 session 2 completed step 2 in fiber 0x7f30000f70
CC 103 session 2 completed step 3 in fiber 0x7f30000f70
CC 103 session 2 completed step 4 in fiber 0x7f30000f70
CC 103 session 2 completed step 5 in fiber 0x7f30000f70
CC 103 session 2 processing step 6 in fiber 0x7f30000f70
FiberScheduler: cc 103, session 2, fiber 0x7f30000f70 in progress...

Thread 7 getting next capture
Thread 7 is waiting
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

Thread 8 is waiting
NvPclSettingsUpdate: Sending Updated Settings through PCL
Thread 9 is working on CC 104 session 2 globalID 104 step 0
CC 104 session 2 completed step 0 in fiber 0x7f30001110NvPclSettingsApply: Applying last settings through PCLCreated fiber 0x7f30001110 for CC 104 globalID 104 session 2

cc 104(4) session 2 runCount=3 runIspOut=0, latest ccId=0
CC 104 session 2 completed step 1 in fiber 0x7f30001110
NV AE and AfApply algorithms are active.
CC 104 session 2 completed step 2 in fiber 0x7f30001110
CC 104 session 2 completed step 3 in fiber 0x7f30001110

apply:+++++++++++++++++++++++
writeExposure:	INPUT expTime:0.020000
CC 104 session 2 completed step 4 in fiber 0x7f30001110
CC 104 session 2 completed step 5 in fiber 0x7f30001110
CC 104 session 2 processing step 6 in fiber 0x7f30001110
FiberScheduler: cc 104, session 2, fiber 0x7f30001110 in progress...

Thread 9 getting next capture
Thread 9 is waiting
Thread 10 is waiting
updateOutputSettings:	OUTPUT expTime:0.019999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1NvPclSettingsApply: Applying last settings through PCL

apply:+++++++++++++++++++++++
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

writeExposure:	INPUT expTime:0.030000
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

Created fiber 0x7f300012b0 for CC 105 globalID 105 session 2
Thread 11 is working on CC 105 session 2 globalID 105 step 0
CC 105 session 2 completed step 0 in fiber 0x7f300012b0
cc 105(5) session 2 runCount=4 runIspOut=0, latest ccId=0
CC 105 session 2 completed step 1 in fiber 0x7f300012b0
NV AE and AfApply algorithms are active.
CC 105 session 2 completed step 2 in fiber 0x7f300012b0
CC 105 session 2 completed step 3 in fiber 0x7f300012b0
CC 105 session 2 completed step 4 in fiber 0x7f300012b0
CC 105 session 2 completed step 5 in fiber 0x7f300012b0
CC 105 session 2 processing step 6 in fiber 0x7f300012b0
FiberScheduler: cc 105, session 2, fiber 0x7f300012b0 in progress...

Thread 11 getting next capture
Thread 12 is waiting
Thread 11 is waiting
updateOutputSettings:	OUTPUT expTime:0.029999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
FiberScheduler: cc 101, session 2, fiber 0x7f30000b20 succeeded async operation

Thread 4 is working on CC 101 session 2 globalID 101 step 7
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeExposure:	INPUT expTime:0.040000
CC 101 session 2 completed step 7 in fiber 0x7f30000b20
CC 101 session 2 completed step 8 in fiber 0x7f30000b20
CC 101 session 2 processing step 9 in fiber 0x7f30000b20
FiberScheduler: cc 101, session 2, fiber 0x7f30000b20 in progress...

Thread 4 getting next capture
Thread 3 is waiting
Thread 4 is waiting
updateOutputSettings:	OUTPUT expTime:0.039999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:addRequest: table size: before: 1, after:2
	request table for ISP 0:
	req[0]: output1 width=0, output1 height=0, output1 Bpp=0
	req[0]: output2 width=0, output2 height=0, output2 Bpp=0
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=5496, output height=3694, output Bpp=16
	req[0]: input fps=20
	req[0]: guID=2, stage type=MemIspCapture
	req[0]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[402]: timeout=0
	req[1]: output1 width=0, output1 height=0, output1 Bpp=0
	req[1]: output2 width=0, output2 height=0, output2 Bpp=0
	req[1]: input width=5496, input height=3694, input Bpp=16
	req[1]: output width=5496, output height=3694, output Bpp=12
	req[1]: input fps=20
	req[1]: guID=2, stage type=MemIspCapture
	req[1]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[450]: timeout=0
PowerServiceHw:updateRequests: table size: before: 2, after:2
	request table for ISP 0:
	req[0]: output1 width=0, output1 height=0, output1 Bpp=0
	req[0]: output2 width=0, output2 height=0, output2 Bpp=0
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=5496, output height=3694, output Bpp=16
	req[0]: input fps=20
	req[0]: guID=2, stage type=MemIspCapture
	req[0]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[378]: timeout=0
	req[1]: output1 width=0, output1 height=0, output1 Bpp=0
	req[1]: output2 width=0, output2 height=0, output2 Bpp=0
	req[1]: input width=5496, input height=3694, input Bpp=16
	req[1]: output width=5496, output height=3694, output Bpp=12
	req[1]: input fps=20
	req[1]: guID=2, stage type=MemIspCapture
	req[1]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[426]: timeout=0
FiberScheduler: cc 102, session 2, fiber 0x7f30000dd0 succeeded async operation

Thread 1 is working on CC 102 session 2 globalID 102 step 7
CC 102 session 2 completed step 7 in fiber 0x7f30000dd0
CC 102 session 2 completed step 8 in fiber 0x7f30000dd0
CC 102 session 2 processing step 9 in fiber 0x7f30000dd0
FiberScheduler: cc 102, session 2, fiber 0x7f30000dd0 in progress...

Thread 1 getting next capture
Thread 1 is waiting
Thread 5 is waiting
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeExposure:	INPUT expTime:0.050000
updateOutputSettings:	OUTPUT expTime:0.050000
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
FiberScheduler: cc 101, session 2, fiber 0x7f30000b20 succeeded async operation

Thread 2 is working on CC 101 session 2 globalID 101 step 10
CC 101 session 2 completed step 10 in fiber 0x7f30000b20
PowerServiceHw:addRequest: table size: before: 0, after:1
	request table for VIC 0:
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=640, output height=430, output Bpp=13
	req[0]: input fps=20
	req[0]: guID=2, stage type=Blit
	req[0]: clock=88822232 Hz, iso bw=0 KB/s, non-iso bw=618010 KB/s
	req[450]: timeout=0
PowerServiceHw:updateRequests: table size: before: 1, after:1
	request table for VIC 0:
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=640, output height=430, output Bpp=13
	req[0]: input fps=20
	req[0]: guID=2, stage type=Blit
	req[0]: clock=88822232 Hz, iso bw=0 KB/s, non-iso bw=618010 KB/s
	req[440]: timeout=0
PowerServiceHwVic:setClock: PowerServiceHw[1]: requested_clock_Hz=88822232
PowerServiceCore:setCameraBw: totalNonIsoBw=2214361
CC 101 session 2 completed step 11 in fiber 0x7f30000b20
exposureTime=0.010000 analogGain=1.000000 digitalGain=1.000000 commonGain=0.010000 expComp=1.000000

lux in Statsupdate: isAohdrEnable=0 currentSceneLux 700.462
CC 101 session 2 completed step 12 in fiber 0x7f30000b20
CC 101 session 2 completed step 13 in fiber 0x7f30000b20
CC 101 session 2 completed step 14 in fiber 0x7f30000b20
CC 101 session 2 completed step 15 in fiber 0x7f30000b20
NV AF analysis algorithm is active.
AfAnalysis cc 101 push FK_ISP_RUN_NUMBER=1.
CC 101 session 2 completed step 16 in fiber 0x7f30000b20
CC 101 session 2 completed step 17 in fiber 0x7f30000b20
CC 101 session 2 completed step 18 in fiber 0x7f30000b20
CC 101 session 2 completed step 19 in fiber 0x7f30000b20
CC 101 session 2 completed step 20 in fiber 0x7f30000b20
CC 101 session 2 completed step 21 in fiber 0x7f30000b20
CC 101 session 2 completed step 22 in fiber 0x7f30000b20
PerfStatsStageStage[sensorId=2][cc=101], sensorStart_ms=8662079, captureDone_ms=8662126, now_ms=8662224, frameDuration_ms=145, framerate=6.9
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=20, m_value=751840319, m_timeout_ms=1000

CC 101 session 2 completed step 23 in fiber 0x7f30000b20
FiberScheduler: cc 101, session 2, fiber 0x7f30000b20 complete

FiberScheduler: fiber 0x7f30000b20 exiting
Thread 2 getting next capture
disposing CC 101 Session 2
Thread 2 is waiting
Thread 7 is waiting
Thread 6 is waiting
CONSUMER: Acquired Frame: 1, time 8662225093000
CONSUMER: 	Sensor Timestamp: 8662079793000, LUX: 700.461853
FiberScheduler: cc 103, session 2, fiber 0x7f30000f70 succeeded async operation

CONSUMER: 	IImage(2D): buffer (5496x3694, 11008 stride), 32 28 20 28 48 36 44 20 24 20 36 20
Thread 8 is working on CC 103 session 2 globalID 103 step 7
CC 103 session 2 completed step 7 in fiber 0x7f30000f70
CC 103 session 2 completed step 8 in fiber 0x7f30000f70
CC 103 session 2 processing step 9 in fiber 0x7f30000f70
FiberScheduler: cc 103, session 2, fiber 0x7f30000f70 in progress...

Thread 8 getting next capture
Thread 9 is waiting
Thread 8 is waiting
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
FiberScheduler: cc 102, session 2, fiber 0x7f30000dd0 succeeded async operation

Thread 10 is working on CC 102 session 2 globalID 102 step 10
CC 102 session 2 completed step 10 in fiber 0x7f30000dd0
CC 102 session 2 completed step 11 in fiber 0x7f30000dd0
FiberScheduler: cc 104, session 2, fiber 0x7f30001110 succeeded async operation

Thread 12 is working on CC 104 session 2 globalID 104 step 7
exposureTime=0.020000 analogGain=1.000000 digitalGain=1.000000 commonGain=0.020000 expComp=1.000000

lux in Statsupdate: isAohdrEnable=0 currentSceneLux 710.621
CC 102 session 2 completed step 12 in fiber 0x7f30000dd0
CC 102 session 2 completed step 13 in fiber 0x7f30000dd0
CC 102 session 2 completed step 14 in fiber 0x7f30000dd0
CC 102 session 2 completed step 15 in fiber 0x7f30000dd0
NV AF analysis algorithm is active.
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
AfAnalysis cc 102 push FK_ISP_RUN_NUMBER=2.
CC 102 session 2 completed step 16 in fiber 0x7f30000dd0
CC 102 session 2 completed step 17 in fiber 0x7f30000dd0
CC 102 session 2 completed step 18 in fiber 0x7f30000dd0
CC 102 session 2 completed step 19 in fiber 0x7f30000dd0
CC 104 session 2 completed step 7 in fiber 0x7f30001110
CC 102 session 2 completed step 20 in fiber 0x7f30000dd0
CC 104 session 2 completed step 8 in fiber 0x7f30001110
CC 104 session 2 processing step 9 in fiber 0x7f30001110
FiberScheduler: cc 104, session 2, fiber 0x7f30001110 in progress...

Thread 12 getting next capture
Thread 11 is waiting
Thread 12 is waiting
CC 102 session 2 completed step 21 in fiber 0x7f30000dd0
CC 102 session 2 completed step 22 in fiber 0x7f30000dd0
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=20, m_value=756034673, m_timeout_ms=1000

CC 102 session 2 completed step 23 in fiber 0x7f30000dd0
FiberScheduler: cc 102, session 2, fiber 0x7f30000dd0 complete

FiberScheduler: fiber 0x7f30000dd0 exiting
Thread 3 is waiting
Thread 10 getting next capture
disposing CC 102 Session 2
Thread 10 is waiting
Thread 4 is waiting
CONSUMER: Acquired Frame: 1, time 8662288706000
CONSUMER: 	Sensor Timestamp: 8662129533000, LUX: 710.620850
CONSUMER: 	IImage(2D): buffer (5496x3694, 11008 stride), 84 60 84 60 76 60 68 52 72 64 80 60
FiberScheduler: cc 103, session 2, fiber 0x7f30000f70 succeeded async operation

Thread 1 is working on CC 103 session 2 globalID 103 step 10
CC 103 session 2 completed step 10 in fiber 0x7f30000f70
CC 103 session 2 completed step 11 in fiber 0x7f30000f70
exposureTime=0.030000 analogGain=1.000000 digitalGain=1.000000 commonGain=0.030000 expComp=1.000000

lux in Statsupdate: isAohdrEnable=0 currentSceneLux 715.669
CC 103 session 2 completed step 12 in fiber 0x7f30000f70
CC 103 session 2 completed step 13 in fiber 0x7f30000f70
CC 103 session 2 completed step 14 in fiber 0x7f30000f70
CC 103 session 2 completed step 15 in fiber 0x7f30000f70
NV AF analysis algorithm is active.
AfAnalysis cc 103 push FK_ISP_RUN_NUMBER=3.
CC 103 session 2 completed step 16 in fiber 0x7f30000f70
CC 103 session 2 completed step 17 in fiber 0x7f30000f70
CC 103 session 2 completed step 18 in fiber 0x7f30000f70
CC 103 session 2 completed step 19 in fiber 0x7f30000f70
CC 103 session 2 completed step 20 in fiber 0x7f30000f70
CC 103 session 2 completed step 21 in fiber 0x7f30000f70
CC 103 session 2 completed step 22 in fiber 0x7f30000f70
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=20, m_value=757345443, m_timeout_ms=1000

CC 103 session 2 completed step 23 in fiber 0x7f30000f70
FiberScheduler: cc 103, session 2, fiber 0x7f30000f70 complete

FiberScheduler: fiber 0x7f30000f70 exiting
Thread 1 getting next capture
disposing CC 103 Session 2
Thread 1 is waiting
Thread 5 is waiting
Thread 2 is waiting
CONSUMER: Acquired Frame: 1, time 8662309142000
CONSUMER: 	Sensor Timestamp: 8662179583000, LUX: 715.669067
CONSUMER: 	IImage(2D): buffer (5496x3694, 11008 stride), 116 72 104 96 128 96 112 68 116 96 100 88
FiberScheduler: cc 105, session 2, fiber 0x7f300012b0 succeeded async operation

Thread 7 is working on CC 105 session 2 globalID 105 step 7
CC 105 session 2 completed step 7 in fiber 0x7f300012b0
CC 105 session 2 completed step 8 in fiber 0x7f300012b0
CC 105 session 2 processing step 9 in fiber 0x7f300012b0
FiberScheduler: cc 105, session 2, fiber 0x7f300012b0 in progress...

Thread 7 getting next capture
Thread 7 is waiting
Thread 6 is waiting
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
FiberScheduler: cc 104, session 2, fiber 0x7f30001110 succeeded async operation

Thread 9 is working on CC 104 session 2 globalID 104 step 10
CC 104 session 2 completed step 10 in fiber 0x7f30001110
CC 104 session 2 completed step 11 in fiber 0x7f30001110
exposureTime=0.040000 analogGain=1.000000 digitalGain=1.000000 commonGain=0.040000 expComp=1.000000

lux in Statsupdate: isAohdrEnable=0 currentSceneLux 718.792
CC 104 session 2 completed step 12 in fiber 0x7f30001110
CC 104 session 2 completed step 13 in fiber 0x7f30001110
CC 104 session 2 completed step 14 in fiber 0x7f30001110
CC 104 session 2 completed step 15 in fiber 0x7f30001110
NV AF analysis algorithm is active.
AfAnalysis cc 104 push FK_ISP_RUN_NUMBER=4.
CC 104 session 2 completed step 16 in fiber 0x7f30001110
CC 104 session 2 completed step 17 in fiber 0x7f30001110
CC 104 session 2 completed step 18 in fiber 0x7f30001110
CC 104 session 2 completed step 19 in fiber 0x7f30001110
CC 104 session 2 completed step 20 in fiber 0x7f30001110
CC 104 session 2 completed step 21 in fiber 0x7f30001110
CC 104 session 2 completed step 22 in fiber 0x7f30001110
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=20, m_value=759377109, m_timeout_ms=1000

CC 104 session 2 completed step 23 in fiber 0x7f30001110
FiberScheduler: cc 104, session 2, fiber 0x7f30001110 complete

FiberScheduler: fiber 0x7f30001110 exiting
Thread 9 getting next capture
disposing CC 104 Session 2
Thread 8 is waiting
Thread 11 is waiting
Thread 9 is waiting
CONSUMER: Acquired Frame: 1, time 8662339818000
CONSUMER: 	Sensor Timestamp: 8662229516000, LUX: 718.792419
CONSUMER: 	IImage(2D): buffer (5496x3694, 11008 stride), 152 116 160 124 136 136 124 128 140 108 160 100
FiberScheduler: cc 105, session 2, fiber 0x7f300012b0 succeeded async operation

Thread 12 is working on CC 105 session 2 globalID 105 step 10
CC 105 session 2 completed step 10 in fiber 0x7f300012b0
CC 105 session 2 completed step 11 in fiber 0x7f300012b0
exposureTime=0.050000 analogGain=1.000000 digitalGain=1.000000 commonGain=0.050000 expComp=1.000000

lux in Statsupdate: isAohdrEnable=0 currentSceneLux 719.043
CC 105 session 2 completed step 12 in fiber 0x7f300012b0
CC 105 session 2 completed step 13 in fiber 0x7f300012b0
CC 105 session 2 completed step 14 in fiber 0x7f300012b0
CC 105 session 2 completed step 15 in fiber 0x7f300012b0
NV AF analysis algorithm is active.
AfAnalysis cc 105 push FK_ISP_RUN_NUMBER=5.
CC 105 session 2 completed step 16 in fiber 0x7f300012b0
CC 105 session 2 completed step 17 in fiber 0x7f300012b0
CC 105 session 2 completed step 18 in fiber 0x7f300012b0
CC 105 session 2 completed step 19 in fiber 0x7f300012b0
CC 105 session 2 completed step 20 in fiber 0x7f300012b0
CC 105 session 2 completed step 21 in fiber 0x7f300012b0
CC 105 session 2 completed step 22 in fiber 0x7f300012b0
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=20, m_value=761081095, m_timeout_ms=1000

CC 105 session 2 completed step 23 in fiber 0x7f300012b0
FiberScheduler: cc 105, session 2, fiber 0x7f300012b0 complete

FiberScheduler: fiber 0x7f300012b0 exiting
Thread 12 getting next capture
Thread 3 is waiting
Thread 10 is waiting
Thread 12 is waiting
CONSUMER: Acquired Frame: 1, time 8662365638000
CONSUMER: 	Sensor Timestamp: 8662279522000, LUX: 719.043396
CONSUMER: 	IImage(2D): buffer (5496x3694, 11008 stride), 224 152 212 148 204 140 168 152 188 148 184 148
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:updateRequests: table size: before: 2, after:2
	request table for ISP 0:
	req[0]: output1 width=0, output1 height=0, output1 Bpp=0
	req[0]: output2 width=0, output2 height=0, output2 Bpp=0
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=5496, output height=3694, output Bpp=16
	req[0]: input fps=20
	req[0]: guID=2, stage type=MemIspCapture
	req[0]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[400]: timeout=0
	req[1]: output1 width=0, output1 height=0, output1 Bpp=0
	req[1]: output2 width=0, output2 height=0, output2 Bpp=0
	req[1]: input width=5496, input height=3694, input Bpp=16
	req[1]: output width=5496, output height=3694, output Bpp=12
	req[1]: input fps=20
	req[1]: guID=2, stage type=MemIspCapture
	req[1]: clock=0 Hz, iso bw=0 KB/s, non-iso bw=1596351 KB/s
	req[0]: timeout=0
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PowerServiceHw:updateRequests: table size: before: 1, after:1
	request table for VIC 0:
	req[0]: input width=5496, input height=3694, input Bpp=12
	req[0]: output width=640, output height=430, output Bpp=13
	req[0]: input fps=20
	req[0]: guID=2, stage type=Blit
	req[0]: clock=88822232 Hz, iso bw=0 KB/s, non-iso bw=618010 KB/s
	req[0]: timeout=0
PowerServiceHwVic:setClock: PowerServiceHw[1]: requested_clock_Hz=0
PowerServiceCore:setCameraBw: totalNonIsoBw=1596351
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++

... [Skipping lines due to NVIDIA forum's character limit]

apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
Issue bubble captures
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
PRODUCER: Capture burst of length 5, max burst length 6
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

disposing CC 125 Session 2
Created fiber 0x7f30001ad0 for CC 126 globalID 126 session 2
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

Thread 6 is working on CC 126 session 2 globalID 126 step 0
CC 126 session 2 completed step 0 in fiber 0x7f30001ad0
cc 126(26) session 2 runCount=25 runIspOut=25, latest ccId=125
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

AC Stats Delay Count:1
CC 126 session 2 completed step 1 in fiber 0x7f30001ad0
NV AE and AfApply algorithms are active.
CC 126 session 2 completed step 2 in fiber 0x7f30001ad0
CC 126 session 2 completed step 3 in fiber 0x7f30001ad0
CC 126 session 2 completed step 4 in fiber 0x7f30001ad0
CC 126 session 2 completed step 5 in fiber 0x7f30001ad0
CC 126 session 2 processing step 6 in fiber 0x7f30001ad0
FiberScheduler: cc 126, session 2, fiber 0x7f30001ad0 in progress...

Thread 6 getting next capture
Thread 6 is waiting
Thread 10 is waiting
Created fiber 0x7f30001110 for CC 127 globalID 127 session 2Session::updatePerfHints()NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
Thread 12 is working on CC 127 session 2 globalID 127 step 0
CC 127 session 2 completed step 0 in fiber 0x7f30001110

cc 127(27) session 2 runCount=26 runIspOut=25, latest ccId=125
AC Stats Delay Count:2
CC 127 session 2 completed step 1 in fiber 0x7f30001110
NV AE and AfApply algorithms are active.
apply:+++++++++++++++++++++++
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

CC 127 session 2 completed step 2 in fiber 0x7f30001110
CC 127 session 2 completed step 3 in fiber 0x7f30001110
CC 127 session 2 completed step 4 in fiber 0x7f30001110
CC 127 session 2 completed step 5 in fiber 0x7f30001110
CC 127 session 2 processing step 6 in fiber 0x7f30001110
FiberScheduler: cc 127, session 2, fiber 0x7f30001110 in progress...

Thread 12 getting next capture
Thread 12 is waiting
Thread 9 is waiting
writeExposure:	INPUT expTime:0.010000

updateOutputSettings:	OUTPUT expTime:0.009999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvPclSettingsUpdate: Sending Updated Settings through PCL
NvPclSettingsApply: Applying last settings through PCL
apply:+++++++++++++++++++++++
writeExposure:	INPUT expTime:0.020000
Created fiber 0x7f300015f0 for CC 128 globalID 128 session 2
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
Thread 5 is working on CC 128 session 2 globalID 128 step 0
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000
CC 128 session 2 completed step 0 in fiber 0x7f300015f0

cc 128(28) session 2 runCount=27 runIspOut=25, latest ccId=125
AC Stats Delay Count:3
CC 128 session 2 completed step 1 in fiber 0x7f300015f0
NV AE and AfApply algorithms are active.
CC 128 session 2 completed step 2 in fiber 0x7f300015f0
CC 128 session 2 completed step 3 in fiber 0x7f300015f0
CC 128 session 2 completed step 4 in fiber 0x7f300015f0
CC 128 session 2 completed step 5 in fiber 0x7f300015f0
CC 128 session 2 processing step 6 in fiber 0x7f300015f0
FiberScheduler: cc 128, session 2, fiber 0x7f300015f0 in progress...

Thread 5 getting next capture
Thread 5 is waiting
Thread 1 is waiting
updateOutputSettings:	OUTPUT expTime:0.019999
apply:-----------------------
NvPclSettingsApply: Reading PCL settings
NvRmChannelSubmit: NvError_IoctlFailed with error code 22
NvRmPrivFlush: NvRmChannelSubmit failed (err = 196623, SyncPointIdx = 22, SyncPointValue = 0)
SCF: Error IoctlFailed:  (propagating from src/services/capture/NvViCsiHw.cpp, function startCapture(), line 508)
SCF: Error IoctlFailed:  (propagating from src/services/capture/CaptureRecord.cpp, function doCSItoMemCapture(), line 517)
SCF: Error IoctlFailed:  (propagating from src/services/capture/CaptureRecord.cpp, function issueCapture(), line 454)
SCF: Error IoctlFailed:  (propagating from src/services/capture/CaptureServiceDevice.cpp, function issueCaptures(), line 1276)
SCF: Error IoctlFailed:  (propagating from src/services/capture/CaptureServiceDevice.cpp, function issueCaptures(), line 1107)
FiberScheduler: cc 127, session 2, fiber 0x7f30001110 aborted in async operation

Created fiber 0x7f300012b0 for CC 129 globalID 129 session 2
Thread 3 is working on CC 129 session 2 globalID 129 step 0
CC 129 session 2 completed step 0 in fiber 0x7f300012b0
cc 129(29) session 2 runCount=28 runIspOut=25, latest ccId=125
AC Stats Delay Count:4
Session::updatePerfHints()
updatePerfHints(): guid=2ll, CaptureIntent=1
updatePerfHints(): NvCameraCoreUseCase_Preview
NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=1, m_value=30, m_timeout_ms=1000

NvPHSSendThroughputHints: sensorId=2, m_usecase=4, m_type=15, m_value=0, m_timeout_ms=1000

CC 129 session 2 completed step 1 in fiber 0x7f300012b0
NV AE and AfApply algorithms are active.
CC 129 session 2 completed step 2 in fiber 0x7f300012b0
CC 129 session 2 completed step 3 in fiber 0x7f300012b0
CC 129 session 2 completed step 4 in fiber 0x7f300012b0
CC 129 session 2 completed step 5 in fiber 0x7f300012b0
CC 129 session 2 processing step 6 in fiber 0x7f300012b0
FiberScheduler: cc 129, session 2, fiber 0x7f300012b0 in progress...

Thread 3 getting next capture
Thread 3 is waiting
Thread 2 is waiting
FiberScheduler: cc 126, session 2, fiber 0x7f30001ad0 succeeded async operation

Thread 7 is working on CC 126 session 2 globalID 126 step 7
CC 126 session 2 completed step 7 in fiber 0x7f30001ad0
CC 126 session 2 completed step 8 in fiber 0x7f30001ad0
CC 126 session 2 processing step 9 in fiber 0x7f30001ad0
FiberScheduler: cc 126, session 2, fiber 0x7f30001ad0 in progress...

Thread 7 getting next capture
Thread 7 is waiting
Thread 8 is waiting
SCF: Error Timeout:  (propagating from src/api/Buffer.cpp, function waitForUnlock(), line 637)
SCF: Error Timeout:  (propagating from src/components/CaptureContainerImpl.cpp, function returnBuffer(), line 358)
FiberScheduler: fiber 0x7f30001110 exiting
SCF: Error IoctlFailed:  (propagating from src/common/Utils.cpp, function workerThread(), line 116)
disposing CC 127 Session 2
SCF: Error IoctlFailed: Worker thread CaptureScheduler frameStart failed (in src/common/Utils.cpp, function workerThread(), line 133)
Thread 11 is waiting
PRODUCER: Capture burst of length 5, max burst length 6
PRODUCER: Capture burst of length 5, max burst length 6
PRODUCER: Capture burst of length 5, max burst length 6



^C=== argus_yuvjpeg[24104]: Connection closed (7F9ADE31D0)
root@localhost:/dev/shm/output# SCF: Error Timeout:  (propagating from src/services/capture/CaptureServiceEvent.cpp, function wait(), line 59)
Error: Camera HwEvents wait, this may indicate a hardware timeout occured,abort current/incoming cc
Created fiber 0x7f30001f30 for CC 130 globalID 130 session 2
Thread 4 is working on CC 130 session 2 globalID 130 step 0
Fiber 0x7f30001f30 is aborting in CC 130 Session 2
FiberScheduler: cc 130 session 2, fiber 0x7f30001f30 aborted

FiberScheduler: fiber 0x7f30001f30 exiting
Thread 4 getting next capture
Thread 4 is waiting
Thread 6 is waiting
Thread 10 is waiting
=== argus_yuvjpeg[24104]: There were pending client requests in the server at the time of CameraProvider destruction, and they failed to complete within a reasonable time (1500 ms). This may be due to a hardware or libargus error. Forced destruction will now proceed, which may leave the libargus server in a bad state.=== argus_yuvjpeg[24104]: WARNING: CameraProvider was not destroyed before client connection terminated.=== argus_yuvjpeg[24104]:          The client may have abnormally terminated. Destroying CameraProvider...=== argus_yuvjpeg[24104]: CameraProvider destroyed (0x7f94831ed0)=== argus_yuvjpeg[24104]: WARNING: Cleaning up 5 outstanding requests...=== argus_yuvjpeg[24104]: WARNING: Cleaning up 5 outstanding streams...SCF: Error InvalidState: 1 buffers still pending during EGLStreamProducer destruction (propagating from src/services/gl/EGLStreamProducer.cpp, function freeBuffers(), line 305)
SCF: Error InvalidState:  (propagating from src/services/gl/EGLStreamProducer.cpp, function ~EGLStreamProducer(), line 50)
SCF: Error InvalidState: 1 buffers still pending during EGLStreamProducer destruction (propagating from src/services/gl/EGLStreamProducer.cpp, function freeBuffers(), line 305)
SCF: Error InvalidState:  (propagating from src/services/gl/EGLStreamProducer.cpp, function ~EGLStreamProducer(), line 50)
SCF: Error InvalidState: 1 buffers still pending during EGLStreamProducer destruction (propagating from src/services/gl/EGLStreamProducer.cpp, function freeBuffers(), line 305)
SCF: Error InvalidState:  (propagating from src/services/gl/EGLStreamProducer.cpp, function ~EGLStreamProducer(), line 50)
=== argus_yuvjpeg[24104]: WARNING: Cleaning up 1 outstanding stream settings...=== argus_yuvjpeg[24104]: WARNING: Cleaning up 1 outstanding sessions...waitForIdleLocked remaining request 129
waitForIdleLocked remaining request 128
waitForIdleLocked remaining request 126
SCF: Error Timeout: waitForIdle() timed out (in src/api/Session.cpp, function waitForIdleLocked(), line 920)
(Argus) Error Timeout:  (propagating from src/api/CaptureSessionImpl.cpp, function destroy(), line 166)

I am able to work around this at the moment by release/recreating the Argus CaptureSession + sets of OutputStream and Request objects, but this is inducing extra heat output + energy consumption (libargus objects seem to take considerable CPU cycles to init) and user action latency.

Thank you for your help

What’s the reason to use PIXEL_FMT_RAW16?
Could you attached the binary file by rename it sub name as txt.

I need PIXEL_FMT_RAW16 because my image processing pipeline generates 16-bit HDR RGB images using a custom CUDA blending and demosaicing (bayer to RGB) algorithm.

Attaching executable with .log extension (.txt not permitted by forums)

argus_yuvjpeg.log (408.3 KB)

Did you check PIXEL_FMT_RAW16 output as you expect. The output may go through Jetson ISP the output may not as your expect.

The output looks as expected, real world imagery looks good, sensor test pattern output is exactly as expected.

Could you update to r32.3.1 due to below error should be cause by DMA buffer space not enough and fixed by latest release.

[ 8676.995435] isp 54600000.isp: pin_array_ids: could not map attachment err=-12
[ 8677.002693] vi 54080000.vi: nvhost_ioctl_channel_submit: failed with err -12
[ 8677.009800] vi 54080000.vi: submit_add_gathers: failed to copy user inputs: class_ids=000000001c00dd78 num_cmdbufs=2
[ 8677.020370] vi 54080000.vi: nvhost_ioctl_channel_submit: failed with err -22

Hello,

I am using r32.3.1:

# on the same Jetson Nano SOM from which I provided previous logs 
cat /etc/nv_tegra_release
# R32 (release), REVISION: 3.1, GCID: 18186506, BOARD: t210ref, EABI: aarch64, DATE: Tue Dec 10 06:58:34 UTC 2019

I try on imx274 with 3840x2160 without problem. It could be the big resolution case running out of memory.
Could you try to reduce the number of bust capture to try.

CONSUMER:       Sensor Timestamp: 417716916000, LUX: 233.155853
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1441 2017 1425 2114 1457 2114 1409 2050 1457 2082 1425 2033
PRODUCER: Capture final burst of length 5, max burst length 6
CONSUMER: Acquired Frame: 10, time 420549294000
CONSUMER:       Sensor Timestamp: 420516876000, LUX: 233.050674
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1265 1665 1281 1569 1233 1681 1217 1601 1153 1633 1313 1585
CONSUMER: Acquired Frame: 10, time 420599854000
CONSUMER:       Sensor Timestamp: 420566875000, LUX: 231.710983
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1249 1569 1201 1553 1233 1553 1233 1633 1233 1553 1217 1505
CONSUMER: Acquired Frame: 10, time 420649153000
CONSUMER:       Sensor Timestamp: 420616875000, LUX: 232.434677
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1281 1617 1217 1617 1217 1585 1185 1665 1217 1585 1185 1633
CONSUMER: Acquired Frame: 10, time 420699110000
CONSUMER:       Sensor Timestamp: 420666874000, LUX: 233.248611
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1297 1745 1345 1793 1313 1793 1297 1809 1313 1793 1329 1777
CONSUMER: Acquired Frame: 10, time 420749216000
CONSUMER:       Sensor Timestamp: 420716873000, LUX: 233.539612
CONSUMER:       IImage(2D): buffer (3840x2160, 7680 stride), 1505 1985 1425 1985 1489 1953 1441 2001 1377 2098 1489 1985
CONSUMER: Done.
PRODUCER: Done -- exiting.

I don’t run into a timeout if burst length is four or less exposures, and I also don’t see any timeouts at all if I set iStreamSettings->setPixelFormat(PIXEL_FMT_YCbCr_420_888) with burst length up to 6.

If this were a case of running out of memory, then I would expect a burst of length 4 to start timing out on the 7th set of burst captures (e.g. after capturing a similar number total number of frames as burst length of 5). However a burst length of 4 doesn’t experience timeout at all.

I don’t see free memory available to the system decreasing while the burst sequence is running, which is what I would expect since the test code releases each frame after receiving. Here is the program transcript while running ‘/usr/bin/free’ after each burst capture

Executing Argus Sample: argus_yuvjpeg
PRODUCER: Argus execute 0
fArgus Version: 0.97.3 (multi-process)
PRODUCER: Creating output stream
PRODUCER: Create output stream and request for for 10000000 nsec exposure
rPRODUCER: Create output stream and request for for 20000000 nsec exposure
PRODUCER: Create output stream and request for for 30000000 nsec exposure
PRODUCER: Create output stream and request for for 40000000 nsec exposure
PRODUCER: Create output stream and request for for 50000000 nsec exposure
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
CONSUMER: Creating stream
PRODUCER: Capture burst of length 5, max burst length 6
eeCONSUMER: Acquired Frame: 1, time 2076292868000
CONSUMER:   Sensor Timestamp: 2076159337000, LUX: 199.709381
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 32 24 44 32 60 28 12 44 28 24 28 20
CONSUMER: Acquired Frame: 1, time 2076340552000
CONSUMER:   Sensor Timestamp: 2076209366000, LUX: 202.554291
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 28 36 36 32 40 28 40 32 48 20 44 16
CONSUMER: Acquired Frame: 1, time 2076366060000
CONSUMER:   Sensor Timestamp: 2076259286000, LUX: 205.656158
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 48 28 32 20 32 28 64 32 32 28 36 24
CONSUMER: Acquired Frame: 1, time 2076391873000
CONSUMER:   Sensor Timestamp: 2076309282000, LUX: 207.969269
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 48 40 32 32 40 24 48 36 48 32 44 32
CONSUMER: Acquired Frame: 1, time 2076440703000
CONSUMER:   Sensor Timestamp: 2076359296000, LUX: 209.066162
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 60 48 44 44 60 36 80 52 84 48 80 40

total        used        free      shared  buff/cache   available
Mem:        4058112     1974520     1859804       23168      223788     1922652
Swap:       2029040      136540     1892500
user@localhost:/home/rgbdaemon/tegra_multimedia_api/argus/build$ freePRODUCER: Capture burst of length 5, max burst length 6
CONSUMER: Acquired Frame: 2, time 2079041234000
CONSUMER:     Sensor Timestamp: 2078959250000, LUX: 207.337463
CONSUMER:     IImage(2D): buffer (5496x3694, 11008 stride), 56 24 40 40 44 36 28 16 24 32 36 36
CONSUMER: Acquired Frame: 2, time 2079090218000
CONSUMER:   Sensor Timestamp: 2079009251000, LUX: 208.886017
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 56 44 52 40 52 44 24 24 56 36 40 44
CONSUMER: Acquired Frame: 2, time 2079139509000
CONSUMER:   Sensor Timestamp: 2079059248000, LUX: 210.323105
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 48 28 44 20 48 36 40 48 48 32 52 24
CONSUMER: Acquired Frame: 2, time 2079189528000
CONSUMER:   Sensor Timestamp: 2079109247000, LUX: 211.821655
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 56 32 72 40 52 52 56 24 48 32 56 44
CONSUMER: Acquired Frame: 2, time 2079239584000
CONSUMER:   Sensor Timestamp: 2079159248000, LUX: 212.245789
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 60 60 68 44 48 48 68 48 56 52 48 32

total        used        free      shared  buff/cache   available
Mem:        4058112     1982704     1851616       23168      223792     1914468
Swap:       2029040      136540     1892500
user@localhost:/home/rgbdaemon/tegra_multimedia_api/argus/build$ freePRODUCER: Capture burst of length 5, max burst length 6
CONSUMER: Acquired Frame: 3, time 2082039520000
CONSUMER:     Sensor Timestamp: 2081959161000, LUX: 207.399689
CONSUMER:     IImage(2D): buffer (5496x3694, 11008 stride), 00 48 36 32 48 16 40 32 28 08 28 32
CONSUMER: Acquired Frame: 3, time 2082088867000
CONSUMER:   Sensor Timestamp: 2082009108000, LUX: 208.906418
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 64 36 40 20 36 36 44 16 40 28 40 40
CONSUMER: Acquired Frame: 3, time 2082138831000
CONSUMER:   Sensor Timestamp: 2082059159000, LUX: 210.309250
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 40 24 32 24 32 32 48 28 44 32 36 28
CONSUMER: Acquired Frame: 3, time 2082189191000
CONSUMER:   Sensor Timestamp: 2082109107000, LUX: 211.794815
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 56 44 60 40 48 24 60 40 52 28 44 40
CONSUMER: Acquired Frame: 3, time 2082239239000
CONSUMER:   Sensor Timestamp: 2082159105000, LUX: 212.215881
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 68 52 64 44 64 48 92 60 72 48 60 44

total        used        free      shared  buff/cache   available
Mem:        4058112     1987384     1846936       23168      223792     1909788
Swap:       2029040      136540     1892500
user@localhost:/home/rgbdaemon/tegra_multimedia_api/argus/build$ freePRODUCER: Capture burst of length 5, max burst length 6
CONSUMER: Acquired Frame: 4, time 2085039430000
CONSUMER:     Sensor Timestamp: 2084959070000, LUX: 207.255920
CONSUMER:     IImage(2D): buffer (5496x3694, 11008 stride), 52 48 48 32 32 32 28 28 44 48 52 04
CONSUMER: Acquired Frame: 4, time 2085088566000
CONSUMER:   Sensor Timestamp: 2085009068000, LUX: 208.765472
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 48 20 48 32 48 32 44 44 36 40 56 36
CONSUMER: Acquired Frame: 4, time 2085138688000
CONSUMER:   Sensor Timestamp: 2085059067000, LUX: 210.140640
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 52 20 40 36 44 28 28 32 48 28 52 36
CONSUMER: Acquired Frame: 4, time 2085188976000
CONSUMER:   Sensor Timestamp: 2085109066000, LUX: 211.637466
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 52 44 44 40 44 24 52 36 60 36 64 48
CONSUMER: Acquired Frame: 4, time 2085238804000
CONSUMER:   Sensor Timestamp: 2085159064000, LUX: 212.094803
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 60 56 60 52 60 36 72 52 68 52 64 44

total        used        free      shared  buff/cache   available
Mem:        4058112     1989152     1845160       23168      223800     1908020
Swap:       2029040      136540     1892500
user@localhost:/home/rgbdaemon/tegra_multimedia_api/argus/build$ freePRODUCER: Capture burst of length 5, max burst length 6
CONSUMER: Acquired Frame: 5, time 2088039140000
CONSUMER:     Sensor Timestamp: 2087958979000, LUX: 207.512131
CONSUMER:     IImage(2D): buffer (5496x3694, 11008 stride), 72 48 44 32 48 04 44 40 52 36 48 24
CONSUMER: Acquired Frame: 5, time 2088088383000
CONSUMER:   Sensor Timestamp: 2088008980000, LUX: 209.001633
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 56 32 36 52 56 24 44 24 28 32 44 36
CONSUMER: Acquired Frame: 5, time 2088138365000
CONSUMER:   Sensor Timestamp: 2088058978000, LUX: 210.372604
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 40 44 48 20 28 28 40 40 48 32 40 24
CONSUMER: Acquired Frame: 5, time 2088188450000
CONSUMER:   Sensor Timestamp: 2088108976000, LUX: 211.823227
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 64 40 56 40 56 44 44 40 44 48 56 32
CONSUMER: Acquired Frame: 5, time 2088238650000
CONSUMER:   Sensor Timestamp: 2088158975000, LUX: 212.227707
CONSUMER:   IImage(2D): buffer (5496x3694, 11008 stride), 60 60 44 68 80 48 68 52 48 40 72 44

total        used        free      shared  buff/cache   available
Mem:        4058112     1989528     1844784       23168      223800     1907644
Swap:       2029040      136540     1892500
<...nvargus-deamon timeout from here >

As can be sen under the ‘free’ column, free system memory doesn’t change.

There isn’t any apparent reason why nvargus-daemon would timeout on burst capture in this particular condition, especially given that a burst length of 4 is able to run continuously without fail. I just hope it can be addressed in future releases.

If a sample system+driver is needed for more investigation I’d be happy to arrange delivering a test setup to NVIDIA

It could be the DMA buffer for the VI/ISP block not the system memory.

I see, is there any test that I can perform to help confirm this is a DMA buffer allocation issue?

Thanks

I think the kernel tell couldn’t map to any DMA buffer.

Hello,

It is my opinion that a simple memory management bug is causing this timeout, since the Jetson Nano is perfectly stable capturing with a burst length of four. Why shouldn’t it be able to capture indefinitely with a burst length of five? It can already invoke up to five bursts without failure. The test code doesn’t store any frames in memory. There is adequate time between bursts (3 seconds) for things like garbage collection to release unused memory.

Anyway, I hope that NVIDIA can address this in a future release, and I would be grateful if you could confirm NVIDIA will look into it.

And again I’d be happy to provide a test system including the 20MP sensor, sensor driver, carrier board and Jetson Nano SOM if it could assist in debug.

Thanks for your responses