FreeRDP
rdpsnd_server_context Struct Reference

#include <rdpsnd.h>

Collaboration diagram for rdpsnd_server_context:

Data Fields

HANDLE vcm
 
psRdpsndStart Start
 
psRdpsndStop Stop
 
RdpsndServerPrivate * priv
 
void * data
 
BOOL use_dynamic_virtual_channel
 
AUDIO_FORMATserver_formats
 
size_t num_server_formats
 
AUDIO_FORMATsrc_format
 
UINT32 latency
 
AUDIO_FORMATclient_formats
 
UINT16 num_client_formats
 
UINT16 selected_client_format
 
UINT8 block_no
 
psRdpsndServerInitialize Initialize
 
psRdpsndServerSelectFormat SelectFormat
 
psRdpsndServerSendSamples SendSamples
 
psRdpsndServerConfirmBlock ConfirmBlock
 
psRdpsndServerSetVolume SetVolume
 
psRdpsndServerClose Close
 
psRdpsndServerActivated Activated
 
UINT16 clientVersion
 
rdpContext * rdpcontext
 

Detailed Description

FreeRDP: A Remote Desktop Protocol Implementation Server Audio Virtual Channel

Copyright 2012 Vic Lee 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.

Field Documentation

◆ Activated

psRdpsndServerActivated rdpsnd_server_context::Activated

The channel has been activated. The server maybe choose audio format and start audio stream from this point. Note that this callback is called from a different thread context so the server must be careful of thread synchronization.

◆ block_no

UINT8 rdpsnd_server_context::block_no

◆ client_formats

AUDIO_FORMAT* rdpsnd_server_context::client_formats

◆ clientVersion

UINT16 rdpsnd_server_context::clientVersion

MS-RDPEA channel version the client announces

◆ Close

psRdpsndServerClose rdpsnd_server_context::Close

Close the audio stream.

◆ ConfirmBlock

psRdpsndServerConfirmBlock rdpsnd_server_context::ConfirmBlock

Called when block confirm is received from the client

◆ data

void* rdpsnd_server_context::data

◆ Initialize

psRdpsndServerInitialize rdpsnd_server_context::Initialize

Initialize the channel. The caller should check the return value to see whether the initialization succeed. If not, the "Activated" callback will not be called and the server must not call any API on this context.

◆ latency

UINT32 rdpsnd_server_context::latency

◆ num_client_formats

UINT16 rdpsnd_server_context::num_client_formats

◆ num_server_formats

size_t rdpsnd_server_context::num_server_formats

◆ priv

RdpsndServerPrivate* rdpsnd_server_context::priv

◆ rdpcontext

rdpContext* rdpsnd_server_context::rdpcontext

◆ selected_client_format

UINT16 rdpsnd_server_context::selected_client_format

◆ SelectFormat

psRdpsndServerSelectFormat rdpsnd_server_context::SelectFormat

Choose the audio format to be sent. The index argument is an index into the client_formats array and must be smaller than num_client_formats.

◆ SendSamples

psRdpsndServerSendSamples rdpsnd_server_context::SendSamples

Send audio samples. Actually bytes in the buffer must be: nframes * src_format.nBitsPerSample * src_format.nChannels / 8

◆ server_formats

AUDIO_FORMAT* rdpsnd_server_context::server_formats

◆ SetVolume

psRdpsndServerSetVolume rdpsnd_server_context::SetVolume

Set the volume level of the client. Valid range is between 0 and 0xFFFF.

◆ src_format

AUDIO_FORMAT* rdpsnd_server_context::src_format

◆ Start

psRdpsndStart rdpsnd_server_context::Start

◆ Stop

psRdpsndStop rdpsnd_server_context::Stop

◆ use_dynamic_virtual_channel

BOOL rdpsnd_server_context::use_dynamic_virtual_channel

◆ vcm

HANDLE rdpsnd_server_context::vcm

The documentation for this struct was generated from the following file: