DriveWorks SDK Reference
3.5.78 Release
For Test and Development only

Camera Server Client Camera Capture Sample

Table of Contents

Note
SW Release Applicability: This sample is available in both NVIDIA DriveWorks and NVIDIA DRIVE Software releases.

Description

The Camera Server Client Camera Capture Sample uses the GMSL camera interface, if available, on NVIDIA DRIVE platforms. The sample opens an X-window displaying the first camera's input on the selected camera group.

Running the Sample

Note
Ensure Camera Server Daemon Process Tool is running before launching this sample.

Ensure a camera is connected to one of the NVIDIA DRIVE platform camera groups.

The Camera Server Client Camera Capture Sample, sample_cameraserver_client, accepts the following parameters:

./sample_cameraserver_client --host=[ip_address]
                      --port=[tcp_port_num]
                      --link=[sibling-num]
                      --mode=[fifo|mailbox]
                      --fifo-size=[3..16]
                      --serializer-type=[h264|h265]
                      --serializer-bitrate=[integer]
                      --serializer-framerate=[integer]
                      --write-file=[path/to/output/file]

Where:

--host=[ip_address]
    Specifies the host IP address of the camera server.
    Default value: 127.0.0.1

--port=[tcp_port_num]
    Specifies the port # to connect to the server, each port number maps to one camera group.
    Default value: 49252   

--link=[sibling-num]
    Specifies the sibling index of the camera group to connect to.
    Default value: 0

--mode=[fifo|mailbox]
    Specifies the streaming mode. Available options: fifo/mailbox.
    If "fifo" is selected, the server queues the frames up to fifo-size frames. If the client is still slow, drop frame happens.
    If "mailbox" is selected, each readFrame call fetches the latest frame from the server, and the server will not queue frames.
    Default value: fifo

--fifo-size[3..16]
    Specifies the fifo size of the sensor. It has no effect when the client is connected in `mailbox` mode.
    If it exceeds a certain threshold defined by the camera server, the size is cut off to a safer value.
    Default value: 4

--serializer-type=[h264|h265]
    Represents the format of the video with two possible options:
    h264 or uncompressed.
    Default value: h264

--serializer-bitrate=[integer]
    Allows to override the bitrate of the recorded video.
    Note: An exact bitrate cannot be enforced, so the actual bitrate might
    differ from the proposed one.
    Default value: 8000000

--serializer-framerate=[integer]
    Allows to override frame rate of the recorded video.
    Default value: 30  

--write-file=[path/to/output/file]
    Specifies the output file.
    If --write-file is not provided, no file is written out on disk.
    Default value: none