SDK Version 1.2.0
AnsuR Technologies ASMIRA SDK
Loading...
Searching...
No Matches
asdk Namespace Reference

Classes

struct  bandwidth_statistics_simple_t
struct  bandwidth_statistics_t
struct  certificate_t
struct  frame_t
struct  position_klv_values_t
struct  position_nmea_values_t
struct  position_values_t
struct  sdk_t
 SDK Core. More...
struct  video_mode_t
struct  video_options_t

Typedefs

typedef void * hsdk
typedef uint32_t RoomFlagValue
typedef uint32_t RoomStateValue
typedef uint8_t UserCapabilityValue
typedef int DeviceCapabilityValue
typedef uint8_t AudioFrameStateValue
typedef struct asdk::position_klv_values_t position_klv_values_t
typedef struct asdk::position_nmea_values_t position_nmea_values_t
typedef struct asdk::position_values_t position_values_t
typedef struct asdk::bandwidth_statistics_t bandwidth_statistics_t
using TimePoint = std::chrono::high_resolution_clock::time_point
using TimeMS = std::chrono::milliseconds
using TimePointSteady = std::chrono::steady_clock::time_point
typedef struct asdk::certificate_t certificate_t
typedef void(ASDK_CALL * ServerStateFunc) (const ServerState serverState, void *opaque)
typedef void(ASDK_CALL * RoomAnnounceFunc) (const char *roomName, const uint32_t roomID, const asdk::RoomStateValue state, const asdk::RoomFlagValue flags, void *opaque)
typedef void(ASDK_CALL * RoomResponseFunc) (const Request request, const RoomResponse response, const void *optionalData, const uint32_t optionalDataSize, void *opaque)
typedef void(ASDK_CALL * RoomClientAddedFunc) (const uint32_t clientID, const char *userName, const UserCapabilityValue userCapability, const DeviceCapabilityValue deviceCapability, void *opaque)
typedef void(ASDK_CALL * RoomClientRemovedFunc) (const uint32_t clientID, void *opaque)
typedef void(ASDK_CALL * AuthenticateResponseFunc) (const AuthenticationResponse authenticateResponse, void *opaque)
typedef void(ASDK_CALL * FrameFunc) (const frame_t *frame, void *opaque)
typedef void(ASDK_CALL * EncodedStreamFunc) (const StreamType type, const void *data, const uint32_t dataSize, void *opaque)
typedef void(ASDK_CALL * EncodedAudioFrameFunc) (const uint16_t srcID, const unsigned int timeStamp, const asdk::AudioFrameStateValue state, const unsigned char *audioEncoded, const size_t audioEncodedSize, void *opaque)
typedef void(ASDK_CALL * VideoOptionsFunc) (const video_options_t *videoOptions, void *opaque)
typedef void(ASDK_CALL * VideoModeFunc) (const video_mode_t *videoMode, void *opaque)
typedef void(ASDK_CALL * PositionValuesFunc) (const position_values_t *positionValues, void *opaque)
typedef void(ASDK_CALL * BandwidthStatisticsFunc) (const bandwidth_statistics_simple_t *bandwidthStatistics, void *opaque)
typedef void(ASDK_CALL * RoomPreviewImageFunc) (const uint32_t roomID, const uint64_t utc, const ImageFormat imageFormat, const uint8_t *data, const uint32_t size, void *opaque)
typedef struct asdk::sdk_t sdk_t

Enumerations

enum  Status {
  StatusUndef , StatusOK , StatusDisconnected , StatusError ,
  StatusErrorHandle , StatusErrorVideoModule , StatusErrorImageModule , StatusErrorInitialized ,
  StatusErrorConnect , StatusErrorTransmit
}
enum  ServerState {
  ServerStateUndef , ServerStateDisconnected , ServerStateConnected , ServerStateConnectedAndAuthenticated ,
  ServerStateAuthenticateError
}
enum  AuthenticationResponse {
  AuthenticationResponseUndef = 0 , AuthenticationResponseSuccess = 1 << 0 , AuthenticationResponseError = 1 << 1 , AuthenticationResponseVersionError = 1 << 2 ,
  AuthenticationResponseVersionRecUpgrade = 1 << 3 , AuthenticationResponseVersionMayUpgrade = 1 << 4 , AuthenticationResponseLoggedInOther = 1 << 5 , AuthenticationResponseKickedOther = 1 << 6 ,
  AuthenticationResponseWrongLoginType = 1 << 7 , AuthenticationResponseTryAgainLater = 1 << 8 , AuthenticationResponseFormatError = 1 << 9 , AuthenticationResponseRequestedCapError = 1 << 10
}
enum  Request {
  RequestUndef , RequestRoomListSubscribe , RequestRoomListUnsubscribe , RequestRoomJoin ,
  RequestRoomLeave
}
enum  RoomResponse {
  RoomResponseUndef , RoomResponseSuccess , RoomResponseError , RoomResponseErrorAlreadyJoined ,
  RoomResponseErrorUnhandled
}
enum  RoomFlag {
  RoomFlagUndef , RoomFlagIsPublic = 1 << 0 , RoomFlagChatGuests = 1 << 1 , RoomFlagChatViewers = 1 << 2 ,
  RoomFlagChatSenders = 1 << 3 , RoomFlagAudioGuests = 1 << 4 , RoomFlagAudioViewers = 1 << 5 , RoomFlagAudioSenders = 1 << 6
}
enum  RoomState { RoomStateUndef , RoomStatePassword = 1 << 0 , RoomStatePreview = 1 << 1 }
enum  PositionSource { PositionSourceUndefined , PositionSourceNMEA , PositionSourceKLV }
enum  StreamType {
  StreamTypeUnknown , StreamType264Frame , StreamType265Frame , StreamTypeAV1Frame ,
  StreamTypeMPEGTS , StreamTypeWEBP
}
enum  ImageFormat {
  ImageFormatUndef , ImageFormatJPEG , ImageFormatWEBP , ImageFormatHEIF ,
  ImageFormatAVIF , ImageFormatAV1
}
enum  UserCapability : uint8_t {
  UserCapabilityUndef = 0 , UserCapabilitySender = 1 << 0 , UserCapabilityController = 1 << 1 , UserCapabilityViewer = 1 << 2 ,
  UserCapabilityGuest = 1 << 3 , UserCapabilitySuper = 1 << 6 , UserCapabilityUnsure = 1 << 7
}
enum  DeviceCapability : int {
  DeviceCapabilityUndef = 0 , DeviceCapabilityVideoAV1 = 1 << 1 , DeviceCapabilityVideoH264 = 1 << 2 , DeviceCapabilityVideoH265 = 1 << 3 ,
  DeviceCapabilityAudioOpus = 1 << 4 , DeviceCapabilityAudioSpeex = 1 << 5 , DeviceCapabilityAudioMIC = 1 << 6 , DeviceCapabilityPhotoModeWEBP = 1 << 7 ,
  DeviceCapabilityPhotoModeHEIF = 1 << 8 , DeviceCapabilityPhotoModeAVIF = 1 << 9 , DeviceCapabilityPhotoROI = 1 << 10 , DeviceCapabilityVideoROI = 1 << 11 ,
  DeviceCapabilityChat = 1 << 12 , DeviceCapabilityDisplay = 1 << 13 , DeviceCapabilityASIGN = 1 << 31 , DeviceCapabilityBasic ,
  DeviceCapabilityCore , DeviceCapabilityFull , DeviceCapabilityHeadless
}
enum  AudioFrameState {
  AudioFrameStateUndef = 0 , AudioFrameStateStart = 1 << 0 , AudioFrameStateQM1 = 1 << 1 , AudioFrameStateQM2 = 1 << 2 ,
  AudioFrameStateQM3 = 1 << 3 , AudioFrameStateQM4 = 1 << 4 , AudioFrameStateQM5 = 1 << 5 , AudioFrameStateRES1 = 1 << 6 ,
  AudioFrameStateRES2 = 1 << 7 , AudioFrameStateRES3 = 1 << 7
}
enum  CertificateState { CertificateStateUndef , CertificateStateConnected , CertificateStateReceived , CertificateStateConnectError }

Functions

TimePoint TimeNow ()
long long TimeSpent (const TimePoint &timeStart)
TimePointSteady TimeNowSteady ()
long long TimeSpentSteady (const TimePointSteady &time)
sdk_tInitialize ()

Variables

std::vector< std::pair< TimePoint, unsigned int > > m_streamStats

Typedef Documentation

◆ AudioFrameStateValue

typedef uint8_t asdk::AudioFrameStateValue

Definition at line 252 of file asmirasdk.h.

◆ AuthenticateResponseFunc

typedef void(ASDK_CALL * asdk::AuthenticateResponseFunc) (const AuthenticationResponse authenticateResponse, void *opaque)

Definition at line 452 of file asmirasdk.h.

◆ bandwidth_statistics_t

typedef struct asdk::bandwidth_statistics_t asdk::bandwidth_statistics_t

◆ BandwidthStatisticsFunc

typedef void(ASDK_CALL * asdk::BandwidthStatisticsFunc) (const bandwidth_statistics_simple_t *bandwidthStatistics, void *opaque)

Definition at line 462 of file asmirasdk.h.

◆ certificate_t

typedef struct asdk::certificate_t asdk::certificate_t

◆ DeviceCapabilityValue

Examples
example_complete.cpp.

Definition at line 235 of file asmirasdk.h.

◆ EncodedAudioFrameFunc

typedef void(ASDK_CALL * asdk::EncodedAudioFrameFunc) (const uint16_t srcID, const unsigned int timeStamp, const asdk::AudioFrameStateValue state, const unsigned char *audioEncoded, const size_t audioEncodedSize, void *opaque)

Definition at line 455 of file asmirasdk.h.

◆ EncodedStreamFunc

typedef void(ASDK_CALL * asdk::EncodedStreamFunc) (const StreamType type, const void *data, const uint32_t dataSize, void *opaque)

Definition at line 454 of file asmirasdk.h.

◆ FrameFunc

typedef void(ASDK_CALL * asdk::FrameFunc) (const frame_t *frame, void *opaque)

Definition at line 453 of file asmirasdk.h.

◆ hsdk

typedef void* asdk::hsdk

Definition at line 71 of file asmirasdk.h.

◆ position_klv_values_t

typedef struct asdk::position_klv_values_t asdk::position_klv_values_t

◆ position_nmea_values_t

typedef struct asdk::position_nmea_values_t asdk::position_nmea_values_t

◆ position_values_t

typedef struct asdk::position_values_t asdk::position_values_t

◆ PositionValuesFunc

typedef void(ASDK_CALL * asdk::PositionValuesFunc) (const position_values_t *positionValues, void *opaque)

Definition at line 461 of file asmirasdk.h.

◆ RoomAnnounceFunc

typedef void(ASDK_CALL * asdk::RoomAnnounceFunc) (const char *roomName, const uint32_t roomID, const asdk::RoomStateValue state, const asdk::RoomFlagValue flags, void *opaque)

Definition at line 444 of file asmirasdk.h.

◆ RoomClientAddedFunc

typedef void(ASDK_CALL * asdk::RoomClientAddedFunc) (const uint32_t clientID, const char *userName, const UserCapabilityValue userCapability, const DeviceCapabilityValue deviceCapability, void *opaque)

Definition at line 449 of file asmirasdk.h.

◆ RoomClientRemovedFunc

typedef void(ASDK_CALL * asdk::RoomClientRemovedFunc) (const uint32_t clientID, void *opaque)

Definition at line 451 of file asmirasdk.h.

◆ RoomFlagValue

typedef uint32_t asdk::RoomFlagValue
Examples
example_complete.cpp.

Definition at line 151 of file asmirasdk.h.

◆ RoomPreviewImageFunc

typedef void(ASDK_CALL * asdk::RoomPreviewImageFunc) (const uint32_t roomID, const uint64_t utc, const ImageFormat imageFormat, const uint8_t *data, const uint32_t size, void *opaque)

Definition at line 463 of file asmirasdk.h.

◆ RoomResponseFunc

typedef void(ASDK_CALL * asdk::RoomResponseFunc) (const Request request, const RoomResponse response, const void *optionalData, const uint32_t optionalDataSize, void *opaque)

Definition at line 447 of file asmirasdk.h.

◆ RoomStateValue

typedef uint32_t asdk::RoomStateValue
Examples
example_complete.cpp.

Definition at line 158 of file asmirasdk.h.

◆ sdk_t

typedef struct asdk::sdk_t asdk::sdk_t

◆ ServerStateFunc

typedef void(ASDK_CALL * asdk::ServerStateFunc) (const ServerState serverState, void *opaque)

Definition at line 443 of file asmirasdk.h.

◆ TimeMS

using asdk::TimeMS = std::chrono::milliseconds

Definition at line 406 of file asmirasdk.h.

◆ TimePoint

using asdk::TimePoint = std::chrono::high_resolution_clock::time_point

Definition at line 405 of file asmirasdk.h.

◆ TimePointSteady

using asdk::TimePointSteady = std::chrono::steady_clock::time_point

Definition at line 415 of file asmirasdk.h.

◆ UserCapabilityValue

typedef uint8_t asdk::UserCapabilityValue
Examples
example_complete.cpp.

Definition at line 197 of file asmirasdk.h.

◆ VideoModeFunc

typedef void(ASDK_CALL * asdk::VideoModeFunc) (const video_mode_t *videoMode, void *opaque)

Definition at line 460 of file asmirasdk.h.

◆ VideoOptionsFunc

typedef void(ASDK_CALL * asdk::VideoOptionsFunc) (const video_options_t *videoOptions, void *opaque)

Definition at line 459 of file asmirasdk.h.

Enumeration Type Documentation

◆ AudioFrameState

Enumerator
AudioFrameStateUndef 
AudioFrameStateStart 
AudioFrameStateQM1 
AudioFrameStateQM2 
AudioFrameStateQM3 
AudioFrameStateQM4 
AudioFrameStateQM5 
AudioFrameStateRES1 
AudioFrameStateRES2 
AudioFrameStateRES3 

Definition at line 237 of file asmirasdk.h.

◆ AuthenticationResponse

AuthenticationResponse enum

Enumerator
AuthenticationResponseUndef 
AuthenticationResponseSuccess 
AuthenticationResponseError 
AuthenticationResponseVersionError 
AuthenticationResponseVersionRecUpgrade 
AuthenticationResponseVersionMayUpgrade 
AuthenticationResponseLoggedInOther 
AuthenticationResponseKickedOther 
AuthenticationResponseWrongLoginType 
AuthenticationResponseTryAgainLater 
AuthenticationResponseFormatError 
AuthenticationResponseRequestedCapError 
Examples
example_complete.cpp.

Definition at line 101 of file asmirasdk.h.

◆ CertificateState

Enumerator
CertificateStateUndef 
CertificateStateConnected 
CertificateStateReceived 
CertificateStateConnectError 
Examples
example_complete.cpp.

Definition at line 426 of file asmirasdk.h.

◆ DeviceCapability

Enumerator
DeviceCapabilityUndef 
DeviceCapabilityVideoAV1 
DeviceCapabilityVideoH264 
DeviceCapabilityVideoH265 
DeviceCapabilityAudioOpus 
DeviceCapabilityAudioSpeex 
DeviceCapabilityAudioMIC 
DeviceCapabilityPhotoModeWEBP 
DeviceCapabilityPhotoModeHEIF 
DeviceCapabilityPhotoModeAVIF 
DeviceCapabilityPhotoROI 
DeviceCapabilityVideoROI 
DeviceCapabilityChat 
DeviceCapabilityDisplay 
DeviceCapabilityASIGN 
DeviceCapabilityBasic 
DeviceCapabilityCore 
DeviceCapabilityFull 
DeviceCapabilityHeadless 

Definition at line 199 of file asmirasdk.h.

◆ ImageFormat

Enumerator
ImageFormatUndef 
ImageFormatJPEG 
ImageFormatWEBP 
ImageFormatHEIF 
ImageFormatAVIF 
ImageFormatAV1 
Examples
example_complete.cpp.

Definition at line 177 of file asmirasdk.h.

◆ PositionSource

Position Source enum

Enumerator
PositionSourceUndefined 

Undefined

PositionSourceNMEA 

NMEA 0183

PositionSourceKLV 

MISB ST 0601

Definition at line 161 of file asmirasdk.h.

◆ Request

Request enum

Enumerator
RequestUndef 

Undefined

RequestRoomListSubscribe 

Subscribe to room list updates

RequestRoomListUnsubscribe 

Unsubscribe to room list updates

RequestRoomJoin 

Request to join room

RequestRoomLeave 

Request to leave room

Examples
example_complete.cpp.

Definition at line 125 of file asmirasdk.h.

◆ RoomFlag

Enumerator
RoomFlagUndef 
RoomFlagIsPublic 
RoomFlagChatGuests 
RoomFlagChatViewers 
RoomFlagChatSenders 
RoomFlagAudioGuests 
RoomFlagAudioViewers 
RoomFlagAudioSenders 

Definition at line 141 of file asmirasdk.h.

◆ RoomResponse

Enumerator
RoomResponseUndef 
RoomResponseSuccess 
RoomResponseError 
RoomResponseErrorAlreadyJoined 
RoomResponseErrorUnhandled 
Examples
example_complete.cpp.

Definition at line 133 of file asmirasdk.h.

◆ RoomState

Enumerator
RoomStateUndef 
RoomStatePassword 
RoomStatePreview 

Definition at line 153 of file asmirasdk.h.

◆ ServerState

ServerState enum

Enumerator
ServerStateUndef 

Undefined

ServerStateDisconnected 

Disconnected

ServerStateConnected 

Connected

ServerStateConnectedAndAuthenticated 

Connected and authenticated

ServerStateAuthenticateError 

Authentication error

Examples
example_complete.cpp.

Definition at line 92 of file asmirasdk.h.

◆ Status

Status enum

Enumerator
StatusUndef 

Undefined

StatusOK 

General OK

StatusDisconnected 

Disconnected from server

StatusError 

General Error

StatusErrorHandle 

SDK handle invalid or not initialized

StatusErrorVideoModule 

Failed to load video module from disk

StatusErrorImageModule 

Failed to load image module from disk

StatusErrorInitialized 

Failed to initialize

StatusErrorConnect 

Error on connect

StatusErrorTransmit 

Error transmitting user request

Definition at line 78 of file asmirasdk.h.

◆ StreamType

Stream Type enum

Enumerator
StreamTypeUnknown 

Not supported by this SDK

StreamType264Frame 

Raw 264 frame

StreamType265Frame 

Raw 265 frame

StreamTypeAV1Frame 

Raw AV1 frame

StreamTypeMPEGTS 

MPEG-TS data chunk

StreamTypeWEBP 

WebP image file

Examples
example_complete.cpp.

Definition at line 168 of file asmirasdk.h.

◆ UserCapability

enum asdk::UserCapability : uint8_t
Enumerator
UserCapabilityUndef 
UserCapabilitySender 
UserCapabilityController 
UserCapabilityViewer 
UserCapabilityGuest 
UserCapabilitySuper 
UserCapabilityUnsure 

Definition at line 187 of file asmirasdk.h.

Function Documentation

◆ Initialize()

sdk_t * asdk::Initialize ( )
inline
Examples
example_basic.cpp, and example_complete.cpp.

Definition at line 833 of file asmirasdk.h.

References asdk::sdk_t::library.

Referenced by main().

Here is the caller graph for this function:

◆ TimeNow()

TimePoint asdk::TimeNow ( )
inline

Definition at line 408 of file asmirasdk.h.

Referenced by TimeSpent().

Here is the caller graph for this function:

◆ TimeNowSteady()

TimePointSteady asdk::TimeNowSteady ( )
inline

Definition at line 416 of file asmirasdk.h.

Referenced by TimeSpentSteady().

Here is the caller graph for this function:

◆ TimeSpent()

long long asdk::TimeSpent ( const TimePoint & timeStart)
inline

Definition at line 411 of file asmirasdk.h.

References TimeNow().

Here is the call graph for this function:

◆ TimeSpentSteady()

long long asdk::TimeSpentSteady ( const TimePointSteady & time)
inline

Definition at line 420 of file asmirasdk.h.

References TimeNowSteady().

Here is the call graph for this function:

Variable Documentation

◆ m_streamStats

std::vector<std::pair<TimePoint, unsigned int> > asdk::m_streamStats

Definition at line 424 of file asmirasdk.h.