FreeRDP
audin_winmm.c File Reference
#include <freerdp/config.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <windows.h>
#include <mmsystem.h>
#include <winpr/crt.h>
#include <winpr/cmdline.h>
#include <freerdp/addin.h>
#include <freerdp/client/audin.h>
#include "audin_main.h"

Macros

#define WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE   0x0010
 

Functions

static void CALLBACK waveInProc (HWAVEIN hWaveIn, UINT uMsg, DWORD_PTR dwInstance, DWORD_PTR dwParam1, DWORD_PTR dwParam2)
 
static BOOL log_mmresult (AudinWinmmDevice *winmm, const char *what, MMRESULT result)
 
static BOOL test_format_supported (const PWAVEFORMATEX pwfx)
 
static DWORD WINAPI audin_winmm_thread_func (LPVOID arg)
 
static UINT audin_winmm_free (IAudinDevice *device)
 
static UINT audin_winmm_close (IAudinDevice *device)
 
static UINT audin_winmm_set_format (IAudinDevice *device, const AUDIO_FORMAT *format, UINT32 FramesPerPacket)
 
static BOOL audin_winmm_format_supported (IAudinDevice *device, const AUDIO_FORMAT *format)
 
static UINT audin_winmm_open (IAudinDevice *device, AudinReceive receive, void *user_data)
 
static UINT audin_winmm_parse_addin_args (AudinWinmmDevice *device, const ADDIN_ARGV *args)
 
UINT winmm_freerdp_audin_client_subsystem_entry (PFREERDP_AUDIN_DEVICE_ENTRY_POINTS pEntryPoints)
 

Macro Definition Documentation

◆ WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE

#define WAVE_MAPPED_DEFAULT_COMMUNICATION_DEVICE   0x0010

FreeRDP: A Remote Desktop Protocol Implementation Audio Input Redirection Virtual Channel - WinMM implementation

Copyright 2013 Zhang Zhaolong zhang.nosp@m.zl20.nosp@m.13@12.nosp@m.6.co.nosp@m.m Copyright 2015 Thincast Technologies GmbH Copyright 2015 DI (FH) Martin Haimberger marti.nosp@m.n.ha.nosp@m.imber.nosp@m.ger@.nosp@m.thinc.nosp@m.ast..nosp@m.com

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Function Documentation

◆ audin_winmm_close()

static UINT audin_winmm_close ( IAudinDevice *  device)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ audin_winmm_format_supported()

static BOOL audin_winmm_format_supported ( IAudinDevice *  device,
const AUDIO_FORMAT format 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ audin_winmm_free()

static UINT audin_winmm_free ( IAudinDevice *  device)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the caller graph for this function:

◆ audin_winmm_open()

static UINT audin_winmm_open ( IAudinDevice *  device,
AudinReceive  receive,
void *  user_data 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ audin_winmm_parse_addin_args()

static UINT audin_winmm_parse_addin_args ( AudinWinmmDevice *  device,
const ADDIN_ARGV args 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ audin_winmm_set_format()

static UINT audin_winmm_set_format ( IAudinDevice *  device,
const AUDIO_FORMAT format,
UINT32  FramesPerPacket 
)
static

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function:
Here is the caller graph for this function:

◆ audin_winmm_thread_func()

static DWORD WINAPI audin_winmm_thread_func ( LPVOID  arg)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ log_mmresult()

static BOOL log_mmresult ( AudinWinmmDevice *  winmm,
const char *  what,
MMRESULT  result 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ test_format_supported()

static BOOL test_format_supported ( const PWAVEFORMATEX  pwfx)
static
Here is the caller graph for this function:

◆ waveInProc()

static void CALLBACK waveInProc ( HWAVEIN  hWaveIn,
UINT  uMsg,
DWORD_PTR  dwInstance,
DWORD_PTR  dwParam1,
DWORD_PTR  dwParam2 
)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ winmm_freerdp_audin_client_subsystem_entry()

UINT winmm_freerdp_audin_client_subsystem_entry ( PFREERDP_AUDIN_DEVICE_ENTRY_POINTS  pEntryPoints)

Function description

Returns
0 on success, otherwise a Win32 error code
Here is the call graph for this function: