11 #include "cores/AudioEngine/Interfaces/AESink.h"    12 #include "cores/AudioEngine/Utils/AEDeviceInfo.h"    13 #include "cores/AudioEngine/Utils/AEUtil.h"    14 #include "utils/Map.h"    18 #include <starfish-media-pipeline/StarfishMediaAPIs.h>    23   const char* GetName()
 override { 
return "Starfish"; }
    27   static void Register();
    28   static std::unique_ptr<IAESink> Create(std::string& device, 
AEAudioFormat& desiredFormat);
    29   static void EnumerateDevicesEx(AEDeviceInfoList& list, 
bool force = 
false);
    31   bool Initialize(
AEAudioFormat& format, std::string& device) 
override;
    32   void Deinitialize() 
override;
    33   double GetCacheTotal() 
override;
    34   double GetLatency() 
override;
    35   unsigned int AddPackets(uint8_t** data, 
unsigned int frames, 
unsigned int offset) 
override;
    36   void AddPause(
unsigned int millis) 
override;
    38   void Drain() 
override;
    41   void PlayerCallback(
const int32_t type, 
const int64_t numValue, 
const char* strValue);
    42   static void PlayerCallback(
const int32_t type,
    43                              const int64_t numValue,
    47   std::unique_ptr<StarfishMediaAPIs> m_starfishMediaAPI;
    49   std::chrono::nanoseconds m_pts{0};
    50   int64_t m_bufferSize{0};
    51   bool m_firstFeed{
true};
 Definition: AESinkStarfish.h:20
void GetDelay(AEDelayStatus &status) override
Return a timestamped status structure with delay and sink info. 
Definition: AESinkStarfish.cpp:264
unsigned int AddPackets(uint8_t **data, unsigned int frames, unsigned int offset) override
Adds packets to be sent out, this routine MUST block or sleep. 
Definition: AESinkStarfish.cpp:220
void AddPause(unsigned int millis) override
instruct the sink to add a pause 
Definition: AESinkStarfish.cpp:257