FreeRDP
|
#include <rdpsnd.h>
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 n.ha imber ger@ thinc ast. 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.
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.
UINT8 rdpsnd_server_context::block_no |
UINT32 rdpsnd_server_context::capsFlags |
psRdpsndChannelIdAssigned rdpsnd_server_context::ChannelIdAssigned |
Callback, when the channel got its id assigned. Only called, when use_dynamic_virtual_channel=TRUE.
AUDIO_FORMAT* rdpsnd_server_context::client_formats |
UINT16 rdpsnd_server_context::clientVersion |
MS-RDPEA channel version the client announces
psRdpsndServerClose rdpsnd_server_context::Close |
Close the audio stream.
psRdpsndServerConfirmBlock rdpsnd_server_context::ConfirmBlock |
Called when block confirm is received from the client
void* rdpsnd_server_context::data |
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.
UINT32 rdpsnd_server_context::initialPitch |
UINT32 rdpsnd_server_context::initialVolume |
UINT32 rdpsnd_server_context::latency |
UINT16 rdpsnd_server_context::num_client_formats |
size_t rdpsnd_server_context::num_server_formats |
RdpsndServerPrivate* rdpsnd_server_context::priv |
UINT16 rdpsnd_server_context::qualityMode |
rdpContext* rdpsnd_server_context::rdpcontext |
UINT16 rdpsnd_server_context::selected_client_format |
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.
psRdpsndServerSendFormats rdpsnd_server_context::SendFormats |
Send server formats and version to the client. Automatically sent, when opening the channel. Also used to restart the protocol after sending the Close PDU.
psRdpsndServerSendSamples rdpsnd_server_context::SendSamples |
Send audio samples. Actually bytes in the buffer must be: nframes * src_format.nBitsPerSample * src_format.nChannels / 8
psRdpsndServerSendSamples2 rdpsnd_server_context::SendSamples2 |
Send encoded audio samples using a Wave2 PDU. When successful, the block_no member is incremented.
AUDIO_FORMAT* rdpsnd_server_context::server_formats |
psRdpsndServerSetVolume rdpsnd_server_context::SetVolume |
Set the volume level of the client. Valid range is between 0 and 0xFFFF.
AUDIO_FORMAT* rdpsnd_server_context::src_format |
psRdpsndStart rdpsnd_server_context::Start |
psRdpsndStop rdpsnd_server_context::Stop |
psRdpsndServerTraining rdpsnd_server_context::Training |
Send Training PDU.
psRdpsndServerTrainingConfirm rdpsnd_server_context::TrainingConfirm |
Called when a TrainingConfirm PDU is received from the client.
BOOL rdpsnd_server_context::use_dynamic_virtual_channel |
HANDLE rdpsnd_server_context::vcm |