FreeRDP
wf_wasapi.c File Reference
#include "wf_wasapi.h"
#include "wf_info.h"
#include <initguid.h>
#include <mmdeviceapi.h>
#include <functiondiscoverykeys_devpkey.h>
#include <audioclient.h>
#include <freerdp/log.h>

Macros

#define TAG   SERVER_TAG("windows")
 
#define REFTIMES_PER_SEC   100000
 
#define REFTIMES_PER_MILLISEC   100
 

Functions

 DEFINE_GUID (CLSID_MMDeviceEnumerator, 0xBCDE0395, 0xE52F, 0x467C, 0x8E, 0x3D, 0xC4, 0x57, 0x92, 0x91, 0x69, 0x2E)
 
 DEFINE_GUID (IID_IMMDeviceEnumerator, 0xA95664D2, 0x9614, 0x4F35, 0xA7, 0x46, 0xDE, 0x8D, 0xB6, 0x36, 0x17, 0xE6)
 
 DEFINE_GUID (IID_IAudioClient, 0x1cb9ad4c, 0xdbfa, 0x4c32, 0xb1, 0x78, 0xc2, 0xf5, 0x68, 0xa7, 0x03, 0xb2)
 
 DEFINE_GUID (IID_IAudioCaptureClient, 0xc8adbd64, 0xe71e, 0x48a0, 0xa4, 0xde, 0x18, 0x5c, 0x39, 0x5c, 0xd3, 0x17)
 
int wf_rdpsnd_set_latest_peer (wfPeerContext *peer)
 
int wf_wasapi_activate (RdpsndServerContext *context)
 
int wf_wasapi_get_device_string (LPWSTR pattern, LPWSTR *deviceStr)
 
DWORD WINAPI wf_rdpsnd_wasapi_thread (LPVOID lpParam)
 

Variables

LPWSTR devStr = NULL
 
wfPeerContext * latestPeer = NULL
 

Macro Definition Documentation

◆ REFTIMES_PER_MILLISEC

#define REFTIMES_PER_MILLISEC   100

◆ REFTIMES_PER_SEC

#define REFTIMES_PER_SEC   100000

◆ TAG

#define TAG   SERVER_TAG("windows")

Function Documentation

◆ DEFINE_GUID() [1/4]

DEFINE_GUID ( CLSID_MMDeviceEnumerator  ,
0xBCDE0395  ,
0xE52F  ,
0x467C  ,
0x8E  ,
0x3D  ,
0xC4  ,
0x57  ,
0x92  ,
0x91  ,
0x69  ,
0x2E   
)

◆ DEFINE_GUID() [2/4]

DEFINE_GUID ( IID_IAudioCaptureClient  ,
0xc8adbd64  ,
0xe71e  ,
0x48a0  ,
0xa4  ,
0xde  ,
0x18  ,
0x5c  ,
0x39  ,
0x5c  ,
0xd3  ,
0x17   
)

◆ DEFINE_GUID() [3/4]

DEFINE_GUID ( IID_IAudioClient  ,
0x1cb9ad4c  ,
0xdbfa  ,
0x4c32  ,
0xb1  ,
0x78  ,
0xc2  ,
0xf5  ,
0x68  ,
0xa7  ,
0x03  ,
0xb2   
)

◆ DEFINE_GUID() [4/4]

DEFINE_GUID ( IID_IMMDeviceEnumerator  ,
0xA95664D2  ,
0x9614  ,
0x4F35  ,
0xA7  ,
0x46  ,
0xDE  ,
0x8D  ,
0xB6  ,
0x36  ,
0x17  ,
0xE6   
)

◆ wf_rdpsnd_set_latest_peer()

int wf_rdpsnd_set_latest_peer ( wfPeerContext *  peer)

◆ wf_rdpsnd_wasapi_thread()

DWORD WINAPI wf_rdpsnd_wasapi_thread ( LPVOID  lpParam)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_wasapi_activate()

int wf_wasapi_activate ( RdpsndServerContext *  context)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ wf_wasapi_get_device_string()

int wf_wasapi_get_device_string ( LPWSTR  pattern,
LPWSTR *  deviceStr 
)
Here is the caller graph for this function:

Variable Documentation

◆ devStr

LPWSTR devStr = NULL

◆ latestPeer

wfPeerContext* latestPeer = NULL