HikoGUI
A low latency retained GUI
Loading...
Searching...
No Matches
AudioBlock.hpp
1// Copyright 2019 Pokitec
2// All rights reserved.
3
4#pragma once
5
6#include "TTauri/Foundation/hires_utc_clock.hpp"
7#include <vector>
8
9namespace tt {
10
11enum class SampleFormat {
12 PCM_SignedInteger,
13 PCM_SignedInteger_LE,
14 PCM_SignedInteger_BE,
15 PCM_Float,
16 PCM_Float_LE,
17 PCM_Float_BE,
18};
19
23
25 void *samples;
26};
27
28struct AudioBlock {
33
39
40 // XXX More timestamps received directly from an audio interface.
41
45
51
55
59
63
66 SampleFormat sampleFormat;
67
75
79
82 bool silent;
83
94};
95
96
97}
Definition AudioBlock.hpp:20
size_t numberOfChannels
Number of interleaved channels in the sample data.
Definition AudioBlock.hpp:22
void * samples
Sample data.
Definition AudioBlock.hpp:25
Definition AudioBlock.hpp:28
size_t numberOfSamples
Definition AudioBlock.hpp:44
hires_utc_clock::time_point timestamp
Definition AudioBlock.hpp:38
bool silent
Definition AudioBlock.hpp:82
uint64_t samplePosition
Definition AudioBlock.hpp:32
size_t numberOfBitsPerSample
Definition AudioBlock.hpp:58
std::vector< AudioBuffer > buffers
Definition AudioBlock.hpp:93
SampleFormat sampleFormat
Definition AudioBlock.hpp:66
size_t stridePerSample
Definition AudioBlock.hpp:62
bool badTimestamp
Definition AudioBlock.hpp:78
double wordClockSampleRate
Definition AudioBlock.hpp:50
bool containsGlitch
Definition AudioBlock.hpp:74
double deviceSampleRate
Definition AudioBlock.hpp:54