10#ifndef ZEP_AUDIO_PCM_SOURCE_INTERFACE_HPP_
11#define ZEP_AUDIO_PCM_SOURCE_INTERFACE_HPP_
15#include <string> #include <vector>
17#include <zep/audio/PcmBufferWriter.hpp>
19#include "... /SourceStreamInterface.hpp"
20#include "... /StreamInterface.hpp"
21#include "PcmFormat.hpp"
25class TimestampInterface;.
29class PcmSourceCallbackInterface;.
78 virtual
void SendStatistics() = 0;
89 virtual
void RegisterCallback(
91 bool use_weak_ptr = false) = 0;
101 virtual
void RegisterCallback(
120 kDisconnected, kDisconnected,
129 kFailedFormatNegotiation,
141 virtual bool OnRequestSourceFormat(
const PcmFormat& format) = 0;
154 virtual void OnDecideSourceFormat(
const PcmFormat* format) = 0;
162 virtual void OnNotifySourceEvent(
EventType type,
const std::string& message) {
Common callback interface for source-side stream functions.
Definition SourceStreamInterface.hpp:34
Source-side stream function interface.
Definition SourceStreamInterface.hpp:18
Common callback interface for stream functions.
Definition StreamInterface.hpp:38
Stream function interface on the endpoint side.
Definition StreamInterface.hpp:22
PCM buffer pool writer interface.
Definition PcmBufferPoolWriterInterface.hpp:21
Callback interface for voice source functionality with PCM.
Definition PcmSourceInterface.hpp:110
EventType
Event Type.
Definition PcmSourceInterface.hpp:115
Audio source function interface with PCM.
Definition PcmSourceInterface.hpp:35
virtual std::shared_future< PcmFormat > GetFormatDecisionStatus() const noexcept=0
Get shared_future to get the format decision status.
virtual void SetAcceptableFormats(const std::vector< PcmFormat > &formats)=0
Provide a list of formats that can be sent.
virtual bool GetDecidedFormat(PcmFormat &format) const noexcept=0
Get the determined formats.
Namespace for ZEP SDK.
Definition FactoryInterface.hpp:19