Display Live Video on Video Wall

For dynamic decoding, the decoder will automatically connect to the encoding devices for requesting for data stream. This decoding mode is usually applied to decode the live video from the cameras and display on video wall.

Figure 1 API Calling Flow of Displaying Live Video on Video Wall

  1. Call NET_DVR_GetDeviceConfig with "NET_DVR_GET_VIDEOWALLWINDOWPOSITION" (command No.: 1735) and set lpInBuffer to a 4-byte video wall No. for getting windowing status and related information.

    The status and information are returned in the structure NET_DVR_VIDEOWALLWINDOWPOSITION by lpOutBuffer.

  2. Call NET_DVR_GetDVRConfig with "NET_DVR_WALLWINPARAM_GET" (command No.: 9005) and set lChannel to a window No. for getting window division mode of video wall. : structure ) to get the .

    The division mode is returned in the structure NET_DVR_WALLWINPARAM by lpOutBuffer.

  3. Optional: Call NET_DVR_GetInputSignalList_V40 to get the local signal source parameters for starting dynamic decoding.
    Note:

    The API in the above step is only used for getting the local signal source parameters. For starting dynamic decoding of network signal source, the following parameters are required: IP address, port No., user name, password, channel No., and stream type, which are provided by users.

  4. Perform the following operation(s) to start the dynamic decoding of a window or multiple windows.
    Option Description

    Start dynamic decoding of a window

    1. Call NET_DVR_MatrixStartDynamic_V41 to start one window's dynamic decoding.

    2. Call NET_DVR_MatrixSetDecChanEnable to pause or resume the dynamic decoding of one window.

      Note:

      Before setting the dynamic decoding status, you'd better call NET_DVR_MatrixGetDecChanEnable to get the current status (i.e., paused or resumed) of the window for reference.

    Start dynamic decoding of multiple mindows

    1. Call NET_DVR_SetDeviceConfig with "NET_DVR_DYNAMIC_DECODE_BATCH" (command No.:1769), set lpInBuffer to a 4-byte window No., and set lpInParamBuffer to the structure NET_DVR_PU_STREAM_CFG_V41 for getting start dynamic decoding of multiple windows.

    2. Call NET_DVR_SetDeviceConfig with "NET_DVR_DECSWITCH_SET_BATCH" (command No.: 1770), set lpInBuffer to a 4-byte window No., and set lpInParamBuffer to a 4-byte operation command (0 or 1) for pausing or resuming the decoding of multiple windows.

      Note:

      Before setting the dynamic decoding statuses of multiple windows, you'd better call NET_DVR_GetDeviceConfig with "NET_DVR_DECSWITCH_GET_BATCH" (command No.: 1771) and set lpInBuffer to a 4-byte window No. for getting the current statuses (i.e., paused or resumed) of multiple windows.

  5. Optional: Call NET_DVR_GetDeviceStatus with "NET_DVR_MATRIX_GETWINSTATUS" (command No.: 9009) and set lpInBuffer to the structure NET_DVR_WALLWIN_INFO for getting the decoding information (e.g., stream format, frame rate, resolution, number of decoded frames) of the current window.

    The decoding information is returned in the structure NET_DVR_WALL_WIN_STATUS by lpOutBuffer.

  6. Call NET_DVR_MatrixStopDynamic to stop the dynamic decoding.

Call NET_DVR_Logout and NET_DVR_Cleanup to log out and release the resources.