FreeRDP
|
#include <freerdp/config.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <winpr/crt.h>
#include <pulse/pulseaudio.h>
#include "tsmf_audio.h"
Functions | |
static void | tsmf_pulse_context_state_callback (pa_context *context, void *userdata) |
static BOOL | tsmf_pulse_connect (TSMFPulseAudioDevice *pulse) |
static BOOL | tsmf_pulse_open (ITSMFAudioDevice *audio, const char *device) |
static void | tsmf_pulse_stream_success_callback (pa_stream *stream, int success, void *userdata) |
static void | tsmf_pulse_wait_for_operation (TSMFPulseAudioDevice *pulse, pa_operation *operation) |
static void | tsmf_pulse_stream_state_callback (pa_stream *stream, void *userdata) |
static void | tsmf_pulse_stream_request_callback (pa_stream *stream, size_t length, void *userdata) |
static BOOL | tsmf_pulse_close_stream (TSMFPulseAudioDevice *pulse) |
static BOOL | tsmf_pulse_open_stream (TSMFPulseAudioDevice *pulse) |
static BOOL | tsmf_pulse_set_format (ITSMFAudioDevice *audio, UINT32 sample_rate, UINT32 channels, UINT32 bits_per_sample) |
static BOOL | tsmf_pulse_play (ITSMFAudioDevice *audio, const BYTE *data, UINT32 data_size) |
static UINT64 | tsmf_pulse_get_latency (ITSMFAudioDevice *audio) |
static BOOL | tsmf_pulse_flush (ITSMFAudioDevice *audio) |
static void | tsmf_pulse_free (ITSMFAudioDevice *audio) |
WINPR_ASSERT (sptr) | |
if (!pulse) return ERROR_OUTOFMEMORY | |
Variables | |
* | sptr = NULL |
TSMFPulseAudioDevice * | pulse = (TSMFPulseAudioDevice*)calloc(1, sizeof(TSMFPulseAudioDevice)) |
pulse iface | Open = tsmf_pulse_open |
pulse iface | SetFormat = tsmf_pulse_set_format |
pulse iface | Play = tsmf_pulse_play |
pulse iface | GetLatency = tsmf_pulse_get_latency |
pulse iface | Flush = tsmf_pulse_flush |
pulse iface | Free = tsmf_pulse_free |
return | CHANNEL_RC_OK |
if | ( | ! | pulse | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
WINPR_ASSERT | ( | sptr | ) |
return CHANNEL_RC_OK |
pulse iface Flush = tsmf_pulse_flush |
pulse iface Free = tsmf_pulse_free |
pulse iface GetLatency = tsmf_pulse_get_latency |
pulse iface Open = tsmf_pulse_open |
pulse iface Play = tsmf_pulse_play |
TSMFPulseAudioDevice* pulse = (TSMFPulseAudioDevice*)calloc(1, sizeof(TSMFPulseAudioDevice)) |
pulse iface SetFormat = tsmf_pulse_set_format |
* sptr = NULL |