40 std::vector<std::tuple<unsigned, unsigned, unsigned>>
frequencies;
58 size_t len = s.length();
82 count = (sampleRate *
time) / 1000;
85 parsed.total_samples += count;
97 buffer_->nb_samples = total_samples;
104 for (
auto& [
low,
high, count] : frequencies) {
113 static constexpr auto PI_2 = 3.141592653589793238462643383279502884L * 2.0L;
libjami::FrameBuffer buffer_
The data buffer.
static void genSin(AVFrame *buffer, size_t outPos, unsigned nb_samples, unsigned frequency1, unsigned frequency2)
Add a simple or double sin to the buffer, it double the sin in stereo.
Tone(std::string_view definition, unsigned int sampleRate, AVSampleFormat sampleFormat)
Constructor.
#define JAMI_ERROR(formatstr,...)
void emitSignal(Args... args)
ParsedDefinition parseDefinition(std::string_view definition, unsigned sampleRate)
bool getline_full(std::string_view &str, std::string_view &line, char delim='\n')
Split a string_view with an API similar to std::getline.
std::vector< std::tuple< unsigned, unsigned, unsigned > > frequencies
Tone sample (dial, busy, ring, congestion)