NVIDIA DeepStream SDK API Reference

7.0 Release
libs/nvds_rest_server/nvds_rest_server.h File Reference

Go to the source code of this file.

Data Structures

struct  NvDsServerErrorInfo
 
struct  NvDsServerDecInfo
 
struct  NvDsServerEncInfo
 
struct  NvDsServerConvInfo
 
struct  NvDsServerMuxInfo
 
struct  NvDsServerRoiInfo
 
struct  NvDsServerStreamInfo
 
struct  NvDsGetRequestInfo
 
struct  NvDsServerInferInfo
 
struct  NvDsServerOsdInfo
 
struct  NvDsServerAppInstanceInfo
 
struct  NvDsServerInferServerInfo
 
struct  NvDsServerResponseInfo
 
struct  NvDsServerConfig
 
struct  NvDsServerCallbacks
 

Macros

#define UNKNOWN_STRING   "unknown"
 
#define EMPTY_STRING   ""
 

Typedefs

typedef struct NvDsServerErrorInfo NvDsServerErrorInfo
 
typedef struct NvDsServerDecInfo NvDsServerDecInfo
 
typedef struct NvDsServerEncInfo NvDsServerEncInfo
 
typedef struct NvDsServerConvInfo NvDsServerConvInfo
 
typedef struct NvDsServerMuxInfo NvDsServerMuxInfo
 
typedef struct NvDsServerRoiInfo NvDsServerRoiInfo
 
typedef struct NvDsServerStreamInfo NvDsServerStreamInfo
 
typedef struct NvDsGetRequestInfo NvDsServerGetRequestInfo
 
typedef struct NvDsServerInferInfo NvDsServerInferInfo
 
typedef struct NvDsServerOsdInfo NvDsServerOsdInfo
 
typedef struct NvDsServerAppInstanceInfo NvDsServerAppInstanceInfo
 
typedef struct NvDsServerInferServerInfo NvDsServerInferServerInfo
 
typedef struct NvDsServerResponseInfo NvDsServerResponseInfo
 
typedef struct NvDsServerConfig NvDsServerConfig
 
using cb_func = std::function< NvDsServerStatusCode(const Json::Value &req_info, const Json::Value &in, Json::Value &out, struct mg_connection *conn, void *ctx)>
 
typedef struct NvDsServerCallbacks NvDsServerCallbacks
 

Enumerations

enum  NvDsServerDecPropFlag {
  DROP_FRAME_INTERVAL = 1 << 0,
  SKIP_FRAMES = 1 << 1,
  LOW_LATENCY_MODE = 1 << 2,
  DROP_FRAME_INTERVAL = 1 << 0,
  SKIP_FRAMES = 1 << 1,
  LOW_LATENCY_MODE = 1 << 2
}
 
enum  NvDsServerEncPropFlag {
  BITRATE = 1 << 0,
  FORCE_IDR = 1 << 1,
  FORCE_INTRA = 1 << 2,
  IFRAME_INTERVAL = 1 << 3,
  BITRATE = 1 << 0,
  FORCE_IDR = 1 << 1,
  FORCE_INTRA = 1 << 2,
  IFRAME_INTERVAL = 1 << 3
}
 
enum  NvDsServerConvPropFlag {
  SRC_CROP = 1 << 0,
  DEST_CROP = 1 << 1,
  FLIP_METHOD = 1 << 2,
  INTERPOLATION_METHOD = 1 << 3,
  SRC_CROP = 1 << 0,
  DEST_CROP = 1 << 1,
  FLIP_METHOD = 1 << 2,
  INTERPOLATION_METHOD = 1 << 3
}
 
enum  NvDsServerMuxPropFlag {
  BATCHED_PUSH_TIMEOUT = 1 << 0,
  MAX_LATENCY = 1 << 1,
  BATCHED_PUSH_TIMEOUT = 1 << 0,
  MAX_LATENCY = 1 << 1
}
 
enum  NvDsServerInferPropFlag {
  INFER_INTERVAL = 1 << 0,
  INFER_INTERVAL = 1 << 0
}
 
enum  NvDsServerInferServerPropFlag {
  INFERSERVER_INTERVAL = 1 << 0,
  INFERSERVER_INTERVAL = 1 << 0
}
 
enum  NvDsServerGetRequestPropFlag {
  GET_LIVE_STREAM_INFO = 1 << 0,
  GET_LIVE_STREAM_INFO = 1 << 0
}
 
enum  NvDsServerOsdPropFlag {
  PROCESS_MODE = 1 << 0,
  PROCESS_MODE = 1 << 0
}
 
enum  NvDsServerRoiPropFlag {
  ROI_UPDATE = 1 << 0,
  ROI_UPDATE = 1 << 0
}
 
enum  NvDsServerAppInstanceFlag {
  QUIT_APP = 1 << 0,
  QUIT_APP = 1 << 0
}
 
enum  NvDsServerAppInstanceStatus {
  QUIT_SUCCESS = 0,
  QUIT_FAIL,
  QUIT_SUCCESS = 0,
  QUIT_FAIL
}
 
enum  NvDsServerStreamStatus {
  STREAM_ADD_SUCCESS = 0,
  STREAM_ADD_FAIL,
  STREAM_REMOVE_SUCCESS,
  STREAM_REMOVE_FAIL,
  STREAM_ADD_SUCCESS = 0,
  STREAM_ADD_FAIL,
  STREAM_REMOVE_SUCCESS,
  STREAM_REMOVE_FAIL
}
 
enum  NvDsServerGetRequestStatus {
  GET_LIVE_STREAM_INFO_SUCCESS = 0,
  GET_LIVE_STREAM_INFO_FAIL,
  GET_LIVE_STREAM_INFO_SUCCESS = 0,
  GET_LIVE_STREAM_INFO_FAIL
}
 
enum  NvDsServerRoiStatus {
  ROI_UPDATE_SUCCESS = 0,
  ROI_UPDATE_FAIL,
  ROI_UPDATE_SUCCESS = 0,
  ROI_UPDATE_FAIL
}
 
enum  NvDsServerDecStatus {
  DROP_FRAME_INTERVAL_UPDATE_SUCCESS = 0,
  DROP_FRAME_INTERVAL_UPDATE_FAIL,
  SKIP_FRAMES_UPDATE_SUCCESS,
  SKIP_FRAMES_UPDATE_FAIL,
  LOW_LATENCY_MODE_UPDATE_SUCCESS,
  LOW_LATENCY_MODE_UPDATE_FAIL,
  DROP_FRAME_INTERVAL_UPDATE_SUCCESS = 0,
  DROP_FRAME_INTERVAL_UPDATE_FAIL,
  SKIP_FRAMES_UPDATE_SUCCESS,
  SKIP_FRAMES_UPDATE_FAIL,
  LOW_LATENCY_MODE_UPDATE_SUCCESS,
  LOW_LATENCY_MODE_UPDATE_FAIL
}
 
enum  NvDsServerEncStatus {
  BITRATE_UPDATE_SUCCESS = 0,
  BITRATE_UPDATE_FAIL,
  FORCE_IDR_UPDATE_SUCCESS,
  FORCE_IDR_UPDATE_FAIL,
  FORCE_INTRA_UPDATE_SUCCESS,
  FORCE_INTRA_UPDATE_FAIL,
  IFRAME_INTERVAL_UPDATE_SUCCESS,
  IFRAME_INTERVAL_UPDATE_FAIL,
  BITRATE_UPDATE_SUCCESS = 0,
  BITRATE_UPDATE_FAIL,
  FORCE_IDR_UPDATE_SUCCESS,
  FORCE_IDR_UPDATE_FAIL,
  FORCE_INTRA_UPDATE_SUCCESS,
  FORCE_INTRA_UPDATE_FAIL,
  IFRAME_INTERVAL_UPDATE_SUCCESS,
  IFRAME_INTERVAL_UPDATE_FAIL
}
 
enum  NvDsServerConvStatus {
  DEST_CROP_UPDATE_SUCCESS = 0,
  DEST_CROP_UPDATE_FAIL,
  SRC_CROP_UPDATE_SUCCESS,
  SRC_CROP_UPDATE_FAIL,
  INTERPOLATION_METHOD_UPDATE_SUCCESS,
  INTERPOLATION_METHOD_UPDATE_FAIL,
  FLIP_METHOD_UPDATE_SUCCESS,
  FLIP_METHOD_UPDATE_FAIL,
  DEST_CROP_UPDATE_SUCCESS = 0,
  DEST_CROP_UPDATE_FAIL,
  SRC_CROP_UPDATE_SUCCESS,
  SRC_CROP_UPDATE_FAIL,
  INTERPOLATION_METHOD_UPDATE_SUCCESS,
  INTERPOLATION_METHOD_UPDATE_FAIL,
  FLIP_METHOD_UPDATE_SUCCESS,
  FLIP_METHOD_UPDATE_FAIL
}
 
enum  NvDsServerMuxStatus {
  BATCHED_PUSH_TIMEOUT_UPDATE_SUCCESS = 0,
  BATCHED_PUSH_TIMEOUT_UPDATE_FAIL,
  MAX_LATENCY_UPDATE_SUCCESS,
  MAX_LATENCY_UPDATE_FAIL,
  BATCHED_PUSH_TIMEOUT_UPDATE_SUCCESS = 0,
  BATCHED_PUSH_TIMEOUT_UPDATE_FAIL,
  MAX_LATENCY_UPDATE_SUCCESS,
  MAX_LATENCY_UPDATE_FAIL
}
 
enum  NvDsServerInferStatus {
  INFER_INTERVAL_UPDATE_SUCCESS = 0,
  INFER_INTERVAL_UPDATE_FAIL,
  INFER_INTERVAL_UPDATE_SUCCESS = 0,
  INFER_INTERVAL_UPDATE_FAIL
}
 
enum  NvDsServerInferServerStatus {
  INFERSERVER_INTERVAL_UPDATE_SUCCESS = 0,
  INFERSERVER_INTERVAL_UPDATE_FAIL,
  INFERSERVER_INTERVAL_UPDATE_SUCCESS = 0,
  INFERSERVER_INTERVAL_UPDATE_FAIL
}
 
enum  NvDsServerOsdStatus {
  PROCESS_MODE_UPDATE_SUCCESS = 0,
  PROCESS_MODE_UPDATE_FAIL,
  PROCESS_MODE_UPDATE_SUCCESS = 0,
  PROCESS_MODE_UPDATE_FAIL
}
 
enum  NvDsServerStatusCode {
  StatusOk = 0,
  StatusAccepted,
  StatusBadRequest,
  StatusUnauthorized,
  StatusForbidden,
  StatusMethodNotAllowed,
  StatusNotAcceptable,
  StatusProxyAuthenticationRequired,
  StatusRequestTimeout,
  StatusPreconditionFailed,
  StatusPayloadTooLarge,
  StatusUriTooLong,
  StatusUnsupportedMediaType,
  StatusInternalServerError,
  StatusNotImplemented,
  StatusOk = 0,
  StatusAccepted,
  StatusBadRequest,
  StatusUnauthorized,
  StatusForbidden,
  StatusMethodNotAllowed,
  StatusNotAcceptable,
  StatusProxyAuthenticationRequired,
  StatusRequestTimeout,
  StatusPreconditionFailed,
  StatusPayloadTooLarge,
  StatusUriTooLong,
  StatusUnsupportedMediaType,
  StatusInternalServerError,
  StatusNotImplemented
}
 

Functions

NvDsRestServer * nvds_rest_server_start (NvDsServerConfig *server_config, NvDsServerCallbacks *server_cb)
 
void nvds_rest_server_stop (NvDsRestServer *ctx)
 
bool iequals (const std::string &a, const std::string &b)
 

Macro Definition Documentation

◆ EMPTY_STRING

#define EMPTY_STRING   ""

Definition at line 24 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ UNKNOWN_STRING

#define UNKNOWN_STRING   "unknown"

Definition at line 23 of file libs/nvds_rest_server/nvds_rest_server.h.

Typedef Documentation

◆ cb_func

using cb_func = std::function < NvDsServerStatusCode (const Json::Value & req_info, const Json::Value & in, Json::Value & out, struct mg_connection * conn, void *ctx)>

Definition at line 360 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerAppInstanceInfo

◆ NvDsServerCallbacks

◆ NvDsServerConfig

◆ NvDsServerConvInfo

◆ NvDsServerDecInfo

◆ NvDsServerEncInfo

◆ NvDsServerErrorInfo

◆ NvDsServerGetRequestInfo

◆ NvDsServerInferInfo

◆ NvDsServerInferServerInfo

◆ NvDsServerMuxInfo

◆ NvDsServerOsdInfo

◆ NvDsServerResponseInfo

◆ NvDsServerRoiInfo

◆ NvDsServerStreamInfo

Enumeration Type Documentation

◆ NvDsServerAppInstanceFlag

Enumerator
QUIT_APP 
QUIT_APP 

Definition at line 80 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerAppInstanceStatus

Enumerator
QUIT_SUCCESS 
QUIT_FAIL 
QUIT_SUCCESS 
QUIT_FAIL 

Definition at line 85 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerConvPropFlag

Enumerator
SRC_CROP 
DEST_CROP 
FLIP_METHOD 
INTERPOLATION_METHOD 
SRC_CROP 
DEST_CROP 
FLIP_METHOD 
INTERPOLATION_METHOD 

Definition at line 41 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerConvStatus

Enumerator
DEST_CROP_UPDATE_SUCCESS 
DEST_CROP_UPDATE_FAIL 
SRC_CROP_UPDATE_SUCCESS 
SRC_CROP_UPDATE_FAIL 
INTERPOLATION_METHOD_UPDATE_SUCCESS 
INTERPOLATION_METHOD_UPDATE_FAIL 
FLIP_METHOD_UPDATE_SUCCESS 
FLIP_METHOD_UPDATE_FAIL 
DEST_CROP_UPDATE_SUCCESS 
DEST_CROP_UPDATE_FAIL 
SRC_CROP_UPDATE_SUCCESS 
SRC_CROP_UPDATE_FAIL 
INTERPOLATION_METHOD_UPDATE_SUCCESS 
INTERPOLATION_METHOD_UPDATE_FAIL 
FLIP_METHOD_UPDATE_SUCCESS 
FLIP_METHOD_UPDATE_FAIL 

Definition at line 133 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerDecPropFlag

Enumerator
DROP_FRAME_INTERVAL 
SKIP_FRAMES 
LOW_LATENCY_MODE 
DROP_FRAME_INTERVAL 
SKIP_FRAMES 
LOW_LATENCY_MODE 

Definition at line 26 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerDecStatus

Enumerator
DROP_FRAME_INTERVAL_UPDATE_SUCCESS 
DROP_FRAME_INTERVAL_UPDATE_FAIL 
SKIP_FRAMES_UPDATE_SUCCESS 
SKIP_FRAMES_UPDATE_FAIL 
LOW_LATENCY_MODE_UPDATE_SUCCESS 
LOW_LATENCY_MODE_UPDATE_FAIL 
DROP_FRAME_INTERVAL_UPDATE_SUCCESS 
DROP_FRAME_INTERVAL_UPDATE_FAIL 
SKIP_FRAMES_UPDATE_SUCCESS 
SKIP_FRAMES_UPDATE_FAIL 
LOW_LATENCY_MODE_UPDATE_SUCCESS 
LOW_LATENCY_MODE_UPDATE_FAIL 

Definition at line 111 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerEncPropFlag

Enumerator
BITRATE 
FORCE_IDR 
FORCE_INTRA 
IFRAME_INTERVAL 
BITRATE 
FORCE_IDR 
FORCE_INTRA 
IFRAME_INTERVAL 

Definition at line 33 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerEncStatus

Enumerator
BITRATE_UPDATE_SUCCESS 
BITRATE_UPDATE_FAIL 
FORCE_IDR_UPDATE_SUCCESS 
FORCE_IDR_UPDATE_FAIL 
FORCE_INTRA_UPDATE_SUCCESS 
FORCE_INTRA_UPDATE_FAIL 
IFRAME_INTERVAL_UPDATE_SUCCESS 
IFRAME_INTERVAL_UPDATE_FAIL 
BITRATE_UPDATE_SUCCESS 
BITRATE_UPDATE_FAIL 
FORCE_IDR_UPDATE_SUCCESS 
FORCE_IDR_UPDATE_FAIL 
FORCE_INTRA_UPDATE_SUCCESS 
FORCE_INTRA_UPDATE_FAIL 
IFRAME_INTERVAL_UPDATE_SUCCESS 
IFRAME_INTERVAL_UPDATE_FAIL 

Definition at line 121 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerGetRequestPropFlag

Enumerator
GET_LIVE_STREAM_INFO 
GET_LIVE_STREAM_INFO 

Definition at line 65 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerGetRequestStatus

Enumerator
GET_LIVE_STREAM_INFO_SUCCESS 
GET_LIVE_STREAM_INFO_FAIL 
GET_LIVE_STREAM_INFO_SUCCESS 
GET_LIVE_STREAM_INFO_FAIL 

Definition at line 99 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerInferPropFlag

Enumerator
INFER_INTERVAL 
INFER_INTERVAL 

Definition at line 55 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerInferServerPropFlag

Enumerator
INFERSERVER_INTERVAL 
INFERSERVER_INTERVAL 

Definition at line 60 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerInferServerStatus

Enumerator
INFERSERVER_INTERVAL_UPDATE_SUCCESS 
INFERSERVER_INTERVAL_UPDATE_FAIL 
INFERSERVER_INTERVAL_UPDATE_SUCCESS 
INFERSERVER_INTERVAL_UPDATE_FAIL 

Definition at line 159 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerInferStatus

Enumerator
INFER_INTERVAL_UPDATE_SUCCESS 
INFER_INTERVAL_UPDATE_FAIL 
INFER_INTERVAL_UPDATE_SUCCESS 
INFER_INTERVAL_UPDATE_FAIL 

Definition at line 153 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerMuxPropFlag

Enumerator
BATCHED_PUSH_TIMEOUT 
MAX_LATENCY 
BATCHED_PUSH_TIMEOUT 
MAX_LATENCY 

Definition at line 49 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerMuxStatus

Enumerator
BATCHED_PUSH_TIMEOUT_UPDATE_SUCCESS 
BATCHED_PUSH_TIMEOUT_UPDATE_FAIL 
MAX_LATENCY_UPDATE_SUCCESS 
MAX_LATENCY_UPDATE_FAIL 
BATCHED_PUSH_TIMEOUT_UPDATE_SUCCESS 
BATCHED_PUSH_TIMEOUT_UPDATE_FAIL 
MAX_LATENCY_UPDATE_SUCCESS 
MAX_LATENCY_UPDATE_FAIL 

Definition at line 145 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerOsdPropFlag

Enumerator
PROCESS_MODE 
PROCESS_MODE 

Definition at line 70 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerOsdStatus

Enumerator
PROCESS_MODE_UPDATE_SUCCESS 
PROCESS_MODE_UPDATE_FAIL 
PROCESS_MODE_UPDATE_SUCCESS 
PROCESS_MODE_UPDATE_FAIL 

Definition at line 165 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerRoiPropFlag

Enumerator
ROI_UPDATE 
ROI_UPDATE 

Definition at line 75 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerRoiStatus

Enumerator
ROI_UPDATE_SUCCESS 
ROI_UPDATE_FAIL 
ROI_UPDATE_SUCCESS 
ROI_UPDATE_FAIL 

Definition at line 105 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerStatusCode

Enumerator
StatusOk 
StatusAccepted 
StatusBadRequest 
StatusUnauthorized 
StatusForbidden 
StatusMethodNotAllowed 
StatusNotAcceptable 
StatusProxyAuthenticationRequired 
StatusRequestTimeout 
StatusPreconditionFailed 
StatusPayloadTooLarge 
StatusUriTooLong 
StatusUnsupportedMediaType 
StatusInternalServerError 
StatusNotImplemented 
StatusOk 
StatusAccepted 
StatusBadRequest 
StatusUnauthorized 
StatusForbidden 
StatusMethodNotAllowed 
StatusNotAcceptable 
StatusProxyAuthenticationRequired 
StatusRequestTimeout 
StatusPreconditionFailed 
StatusPayloadTooLarge 
StatusUriTooLong 
StatusUnsupportedMediaType 
StatusInternalServerError 
StatusNotImplemented 

Definition at line 171 of file libs/nvds_rest_server/nvds_rest_server.h.

◆ NvDsServerStreamStatus

Enumerator
STREAM_ADD_SUCCESS 
STREAM_ADD_FAIL 
STREAM_REMOVE_SUCCESS 
STREAM_REMOVE_FAIL 
STREAM_ADD_SUCCESS 
STREAM_ADD_FAIL 
STREAM_REMOVE_SUCCESS 
STREAM_REMOVE_FAIL 

Definition at line 91 of file libs/nvds_rest_server/nvds_rest_server.h.

Function Documentation

◆ iequals()

bool iequals ( const std::string &  a,
const std::string &  b 
)

◆ nvds_rest_server_start()

NvDsRestServer* nvds_rest_server_start ( NvDsServerConfig server_config,
NvDsServerCallbacks server_cb 
)

◆ nvds_rest_server_stop()

void nvds_rest_server_stop ( NvDsRestServer *  ctx)