AJA NTV2 SDK  17.5.0.1242
NTV2 SDK 17.5.0.1242
ntv2audiodefines.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
8 #ifndef NTV2_AUDIODEFINES_H
9 #define NTV2_AUDIODEFINES_H
10 
11 #define NTV2_NUMAUDIO_CHANNELS 6
12 #define NTV2_AUDIOSAMPLESIZE (sizeof (ULWord))
13 #define NTV2_AUDIO_WRAPADDRESS 0x000FF000
14 #define NTV2_AUDIO_WRAPADDRESS_MEDIUM (0x000FF000 * 2)
15 #define NTV2_AUDIO_WRAPADDRESS_BIG (0x000FF000 * 4)
16 #define NTV2_AUDIO_WRAPADDRESS_BIGGER (0x000FF000 * 8) // used with KiPro Mini 99 video buffers
17 #define NTV2_AUDIO_READBUFFEROFFSET 0x00100000
18 #define NTV2_AUDIO_READBUFFEROFFSET_MEDIUM (0x00100000 * 2)
19 #define NTV2_AUDIO_READBUFFEROFFSET_BIG (0x00100000 * 4)
20 #define NTV2_AUDIO_READBUFFEROFFSET_BIGGER (0x00100000 * 8) // used with KiPro Mini 99 video buffers
21 
22 #define NTV2_AUDIO_BUFFEROFFSET_BIG (0x00100000 * 8)
23 
24 #define NTV2_NUMSAMPLES_PER_AUDIO_INTERRUPT 960
25 #define NTV2_TOTALSAMPLES_IN_BUFFER(numChannels) (NTV2_AUDIO_WRAPADDRESS/((numChannels)*NTV2_AUDIOSAMPLESIZE))
26 
27 #define kSDIName "SDI"
28 #define kAESName "AES/EBU"
29 #define kADATName "ADAT - 8 channels"
30 #define kAnalogName "Analog - 4 channels"
31 #define kNoneName "IO - none"
32 #define kAllName "8 channels"
33 
34 #define kAJADeviceManufacturer "AJA Video"
35 
36 
37 typedef enum
38 {
44  kNumAudioChannelsMax = kNumAudioChannels16 // Used in Linux and Windows too
46 
47 
48 typedef enum
49 {
54 
55 
56 typedef enum
57 {
62 
63 
64 typedef enum
65 {
66  kSourceSDI = 0x69736469,
67  kSourceAES = 0x69616573,
68  kSourceADAT = 0x69616474,
69  kSourceAnalog = 0x69616C67,
70  kSourceNone = 0x6E6F696E,
71  kSourceAll = 0x6F757420
73 
74 typedef enum {
75  kNormal = 0,
76  kMuted = 1
78 
79 // These are ProIO specific audio settings. The ENUMs represent actual register
80 // values. This is probably not a great idea but for now we will leave it like this
81 // since it only pertains to a ProIO build. Ideally these should just enumerations
82 // and the settings layer in the muxer should translate these to what the hardware
83 // wants.
84 
85 #endif // NTV2_AUDIODEFINES_H
kNumAudioChannels6
@ kNumAudioChannels6
Definition: ntv2audiodefines.h:41
AudioBitsPerSampleEnum
AudioBitsPerSampleEnum
Definition: ntv2audiodefines.h:48
kSourceAnalog
@ kSourceAnalog
Definition: ntv2audiodefines.h:69
kSourceSDI
@ kSourceSDI
Definition: ntv2audiodefines.h:66
k48KHzSampleRate
@ k48KHzSampleRate
Definition: ntv2audiodefines.h:59
kNumAudioChannels2
@ kNumAudioChannels2
Definition: ntv2audiodefines.h:39
k96KHzSampleRate
@ k96KHzSampleRate
Definition: ntv2audiodefines.h:60
AudioMuteEnum
AudioMuteEnum
Definition: ntv2audiodefines.h:74
k32bitsPerSample
@ k32bitsPerSample
Definition: ntv2audiodefines.h:52
kSourceADAT
@ kSourceADAT
Definition: ntv2audiodefines.h:68
kNumAudioChannels4
@ kNumAudioChannels4
Definition: ntv2audiodefines.h:40
kNumAudioChannelsMax
@ kNumAudioChannelsMax
Definition: ntv2audiodefines.h:44
AudioChannelsPerFrameEnum
AudioChannelsPerFrameEnum
Definition: ntv2audiodefines.h:37
AudioSourceEnum
AudioSourceEnum
Definition: ntv2audiodefines.h:64
k24bitsPerSample
@ k24bitsPerSample
Definition: ntv2audiodefines.h:51
kNumAudioChannels16
@ kNumAudioChannels16
Definition: ntv2audiodefines.h:43
k16bitsPerSample
@ k16bitsPerSample
Definition: ntv2audiodefines.h:50
kSourceAES
@ kSourceAES
Definition: ntv2audiodefines.h:67
AudioSampleRateEnum
AudioSampleRateEnum
Definition: ntv2audiodefines.h:56
kSourceAll
@ kSourceAll
Definition: ntv2audiodefines.h:71
kSourceNone
@ kSourceNone
Definition: ntv2audiodefines.h:70
kMuted
@ kMuted
Definition: ntv2audiodefines.h:76
kNormal
@ kNormal
Definition: ntv2audiodefines.h:75
kNumAudioChannels8
@ kNumAudioChannels8
Definition: ntv2audiodefines.h:42
k44p1KHzSampleRate
@ k44p1KHzSampleRate
Definition: ntv2audiodefines.h:58