NVIDIA DeepStream SDK API Reference

6.4 Release
nvbufaudio.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  */
10 
23 #ifndef _NVBUFAUDIO_H_
24 #define _NVBUFAUDIO_H_
25 
26 #include <stdint.h>
27 #include <stdbool.h>
28 
29 #ifdef __cplusplus
30 extern "C"
31 {
32 #endif
33 
34 #define RESERVED_BYTES 16
35 
37 typedef enum
38 {
71 
73 typedef enum
74 {
79 
80 typedef struct
81 {
84  uint32_t bpf;
86  uint32_t channels;
87  uint32_t rate;
88  uint32_t dataSize;
89  void* dataPtr;
92  uint32_t padId;
96  uint32_t sourceId;
98  uint64_t ntpTimestamp;
100  uint64_t bufPts;
102  uint64_t duration;
103 
104  uint8_t reserved[RESERVED_BYTES];
106 
107 typedef struct
108 {
110  uint32_t numFilled;
112  uint32_t batchSize;
121 } NvBufAudio;
122 #ifdef __cplusplus
123 }
124 #endif
125 
126 #endif
NVBUF_AUDIO_INVALID_LAYOUT
@ NVBUF_AUDIO_INVALID_LAYOUT
Definition: nvbufaudio.h:75
NvBufAudioParams
Definition: nvbufaudio.h:80
NVBUF_AUDIO_S24LE
@ NVBUF_AUDIO_S24LE
Definition: nvbufaudio.h:54
NVBUF_AUDIO_S20LE
@ NVBUF_AUDIO_S20LE
Definition: nvbufaudio.h:58
NVBUF_AUDIO_S32BE
@ NVBUF_AUDIO_S32BE
Definition: nvbufaudio.h:51
NvBufAudioParams::duration
uint64_t duration
duration of this audio buffer
Definition: nvbufaudio.h:102
NVBUF_AUDIO_S18LE
@ NVBUF_AUDIO_S18LE
Definition: nvbufaudio.h:62
NvBufAudioParams::rate
uint32_t rate
audio sample rate in samples per second
Definition: nvbufaudio.h:87
NvBufAudio::isContiguous
bool isContiguous
isContiguous is true when the dataPtr in audioBuffers[] array is contiguous with the previous and fol...
Definition: nvbufaudio.h:118
NvBufAudioParams::bufPts
uint64_t bufPts
Buffer PTS of this audio buffer.
Definition: nvbufaudio.h:100
NVBUF_AUDIO_U24_32LE
@ NVBUF_AUDIO_U24_32LE
Definition: nvbufaudio.h:48
NVBUF_AUDIO_U32LE
@ NVBUF_AUDIO_U32LE
Definition: nvbufaudio.h:52
NvBufAudio::batchSize
uint32_t batchSize
The size of this NvBufAudio batch.
Definition: nvbufaudio.h:112
NVBUF_AUDIO_NON_INTERLEAVED
@ NVBUF_AUDIO_NON_INTERLEAVED
audio sample from each channel shall be interleaved ; LLLLLLLLRRRRRRRR
Definition: nvbufaudio.h:77
NVBUF_AUDIO_S16BE
@ NVBUF_AUDIO_S16BE
Definition: nvbufaudio.h:43
NVBUF_AUDIO_F32LE
@ NVBUF_AUDIO_F32LE
Definition: nvbufaudio.h:66
NVBUF_AUDIO_INVALID_FORMAT
@ NVBUF_AUDIO_INVALID_FORMAT
Definition: nvbufaudio.h:39
NvBufAudioParams::padId
uint32_t padId
Holds the pad or port index of the Gst-streammux plugin for the frame in the batch.
Definition: nvbufaudio.h:92
NvBufAudio
Definition: nvbufaudio.h:107
NVBUF_AUDIO_U8
@ NVBUF_AUDIO_U8
Definition: nvbufaudio.h:41
NvBufAudioParams::dataSize
uint32_t dataSize
Definition: nvbufaudio.h:88
NvBufAudio::numFilled
uint32_t numFilled
The size of this NvBufAudio batch.
Definition: nvbufaudio.h:110
NVBUF_AUDIO_S24_32LE
@ NVBUF_AUDIO_S24_32LE
Definition: nvbufaudio.h:46
NvBufAudioParams::format
NvBufAudioFormat format
Definition: nvbufaudio.h:83
NvBufAudioParams::channels
uint32_t channels
Number of audio channels.
Definition: nvbufaudio.h:86
NVBUF_AUDIO_U24LE
@ NVBUF_AUDIO_U24LE
Definition: nvbufaudio.h:56
NVBUF_AUDIO_INTERLEAVED
@ NVBUF_AUDIO_INTERLEAVED
audio sample from each channel shall be interleaved LRLRLRLR
Definition: nvbufaudio.h:76
NvBufAudioFormat
NvBufAudioFormat
Specifies audio formats.
Definition: nvbufaudio.h:37
NVBUF_AUDIO_F64LE
@ NVBUF_AUDIO_F64LE
Definition: nvbufaudio.h:68
NVBUF_AUDIO_S20BE
@ NVBUF_AUDIO_S20BE
Definition: nvbufaudio.h:59
NVBUF_AUDIO_S32LE
@ NVBUF_AUDIO_S32LE
Definition: nvbufaudio.h:50
NvBufAudioParams::layout
NvBufAudioLayout layout
Definition: nvbufaudio.h:82
NVBUF_AUDIO_U18LE
@ NVBUF_AUDIO_U18LE
Definition: nvbufaudio.h:64
NVBUF_AUDIO_S24BE
@ NVBUF_AUDIO_S24BE
Definition: nvbufaudio.h:55
NVBUF_AUDIO_S18BE
@ NVBUF_AUDIO_S18BE
Definition: nvbufaudio.h:63
NVBUF_AUDIO_U24BE
@ NVBUF_AUDIO_U24BE
Definition: nvbufaudio.h:57
NvBufAudio::audioBuffers
NvBufAudioParams * audioBuffers
Array of batchSize audio bufffers.
Definition: nvbufaudio.h:120
NVBUF_AUDIO_F64BE
@ NVBUF_AUDIO_F64BE
Definition: nvbufaudio.h:69
NVBUF_AUDIO_S8
@ NVBUF_AUDIO_S8
Definition: nvbufaudio.h:40
NVBUF_AUDIO_U16BE
@ NVBUF_AUDIO_U16BE
Definition: nvbufaudio.h:45
NVBUF_AUDIO_U32BE
@ NVBUF_AUDIO_U32BE
Definition: nvbufaudio.h:53
NvBufAudioParams::bpf
uint32_t bpf
Bytes per frame; the size of a frame; size of one sample * @channels.
Definition: nvbufaudio.h:84
NvBufAudioLayout
NvBufAudioLayout
Specifies audio data layout in memory.
Definition: nvbufaudio.h:73
NVBUF_AUDIO_S24_32BE
@ NVBUF_AUDIO_S24_32BE
Definition: nvbufaudio.h:47
NvBufAudioParams::ntpTimestamp
uint64_t ntpTimestamp
NTP Timestamp of this audio buffer.
Definition: nvbufaudio.h:98
NvBufAudioParams::dataPtr
void * dataPtr
Definition: nvbufaudio.h:89
RESERVED_BYTES
#define RESERVED_BYTES
Definition: nvbufaudio.h:34
NvBufAudioParams::sourceId
uint32_t sourceId
source ID of this buffer; This is w.r.t the multisrc DeepStream usecases
Definition: nvbufaudio.h:96
NVBUF_AUDIO_U16LE
@ NVBUF_AUDIO_U16LE
Definition: nvbufaudio.h:44
NVBUF_AUDIO_F32BE
@ NVBUF_AUDIO_F32BE
Definition: nvbufaudio.h:67
NVBUF_AUDIO_U24_32BE
@ NVBUF_AUDIO_U24_32BE
Definition: nvbufaudio.h:49
NVBUF_AUDIO_U18BE
@ NVBUF_AUDIO_U18BE
Definition: nvbufaudio.h:65
NVBUF_AUDIO_U20BE
@ NVBUF_AUDIO_U20BE
Definition: nvbufaudio.h:61
NVBUF_AUDIO_U20LE
@ NVBUF_AUDIO_U20LE
Definition: nvbufaudio.h:60
NVBUF_AUDIO_S16LE
@ NVBUF_AUDIO_S16LE
Definition: nvbufaudio.h:42