NVIDIA DeepStream SDK API Reference

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