Made CHANNEL_TSMF optional and deprecated.
This commit is contained in:
parent
3240485bfd
commit
829497b313
@ -730,14 +730,6 @@ set(VAAPI_FEATURE_TYPE "OPTIONAL")
|
|||||||
set(VAAPI_FEATURE_PURPOSE "multimedia")
|
set(VAAPI_FEATURE_PURPOSE "multimedia")
|
||||||
set(VAAPI_FEATURE_DESCRIPTION "VA-API hardware acceleration for video playback")
|
set(VAAPI_FEATURE_DESCRIPTION "VA-API hardware acceleration for video playback")
|
||||||
|
|
||||||
set(GSTREAMER_0_10_FEATURE_TYPE "OPTIONAL")
|
|
||||||
set(GSTREAMER_0_10_FEATURE_PURPOSE "multimedia")
|
|
||||||
set(GSTREAMER_0_10_FEATURE_DESCRIPTION "multimedia redirection, audio and video playback, gstreamer 0.10 version")
|
|
||||||
|
|
||||||
set(GSTREAMER_1_0_FEATURE_TYPE "RECOMMENDED")
|
|
||||||
set(GSTREAMER_1_0_FEATURE_PURPOSE "multimedia")
|
|
||||||
set(GSTREAMER_1_0_FEATURE_DESCRIPTION "multimedia redirection, audio and video playback")
|
|
||||||
|
|
||||||
set(IPP_FEATURE_TYPE "OPTIONAL")
|
set(IPP_FEATURE_TYPE "OPTIONAL")
|
||||||
set(IPP_FEATURE_PURPOSE "performance")
|
set(IPP_FEATURE_PURPOSE "performance")
|
||||||
set(IPP_FEATURE_DESCRIPTION "Intel Integrated Performance Primitives library")
|
set(IPP_FEATURE_DESCRIPTION "Intel Integrated Performance Primitives library")
|
||||||
@ -793,15 +785,12 @@ if(WIN32)
|
|||||||
set(PCSC_FEATURE_TYPE "DISABLED")
|
set(PCSC_FEATURE_TYPE "DISABLED")
|
||||||
set(FFMPEG_FEATURE_TYPE "DISABLED")
|
set(FFMPEG_FEATURE_TYPE "DISABLED")
|
||||||
set(VAAPI_FEATURE_TYPE "DISABLED")
|
set(VAAPI_FEATURE_TYPE "DISABLED")
|
||||||
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
|
||||||
set(GSTREAMER_0_10_FEATURE_TYPE "OPTIONAL")
|
|
||||||
set(OPENSLES_FEATURE_TYPE "DISABLED")
|
set(OPENSLES_FEATURE_TYPE "DISABLED")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(APPLE)
|
if(APPLE)
|
||||||
set(FFMPEG_FEATURE_TYPE "OPTIONAL")
|
set(FFMPEG_FEATURE_TYPE "OPTIONAL")
|
||||||
set(VAAPI_FEATURE_TYPE "DISABLED")
|
set(VAAPI_FEATURE_TYPE "DISABLED")
|
||||||
set(GSTREAMER_1_0_FEATURE_TYPE "OPTIONAL")
|
|
||||||
set(X11_FEATURE_TYPE "OPTIONAL")
|
set(X11_FEATURE_TYPE "OPTIONAL")
|
||||||
set(WAYLAND_FEATURE_TYPE "DISABLED")
|
set(WAYLAND_FEATURE_TYPE "DISABLED")
|
||||||
set(OSS_FEATURE_TYPE "DISABLED")
|
set(OSS_FEATURE_TYPE "DISABLED")
|
||||||
@ -811,8 +800,6 @@ if(APPLE)
|
|||||||
set(PULSE_FEATURE_TYPE "DISABLED")
|
set(PULSE_FEATURE_TYPE "DISABLED")
|
||||||
set(CUPS_FEATURE_TYPE "DISABLED")
|
set(CUPS_FEATURE_TYPE "DISABLED")
|
||||||
set(PCSC_FEATURE_TYPE "DISABLED")
|
set(PCSC_FEATURE_TYPE "DISABLED")
|
||||||
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
|
||||||
set(GSTREAMER_0_10_FEATURE_TYPE "DISABLED")
|
|
||||||
endif()
|
endif()
|
||||||
set(OPENSLES_FEATURE_TYPE "DISABLED")
|
set(OPENSLES_FEATURE_TYPE "DISABLED")
|
||||||
endif()
|
endif()
|
||||||
@ -842,8 +829,6 @@ if(ANDROID)
|
|||||||
set(PCSC_FEATURE_TYPE "DISABLED")
|
set(PCSC_FEATURE_TYPE "DISABLED")
|
||||||
set(FFMPEG_FEATURE_TYPE "DISABLED")
|
set(FFMPEG_FEATURE_TYPE "DISABLED")
|
||||||
set(VAAPI_FEATURE_TYPE "DISABLED")
|
set(VAAPI_FEATURE_TYPE "DISABLED")
|
||||||
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
|
||||||
set(GSTREAMER_0_10_FEATURE_TYPE "DISABLED")
|
|
||||||
set(OPENSLES_FEATURE_TYPE "REQUIRED")
|
set(OPENSLES_FEATURE_TYPE "REQUIRED")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -864,9 +849,6 @@ find_feature(PCSC ${PCSC_FEATURE_TYPE} ${PCSC_FEATURE_PURPOSE} ${PCSC_FEATURE_DE
|
|||||||
|
|
||||||
find_feature(FFmpeg ${FFMPEG_FEATURE_TYPE} ${FFMPEG_FEATURE_PURPOSE} ${FFMPEG_FEATURE_DESCRIPTION})
|
find_feature(FFmpeg ${FFMPEG_FEATURE_TYPE} ${FFMPEG_FEATURE_PURPOSE} ${FFMPEG_FEATURE_DESCRIPTION})
|
||||||
|
|
||||||
find_feature(GStreamer_0_10 ${GSTREAMER_0_10_FEATURE_TYPE} ${GSTREAMER_0_10_FEATURE_PURPOSE} ${GSTREAMER_0_10_FEATURE_DESCRIPTION})
|
|
||||||
find_feature(GStreamer_1_0 ${GSTREAMER_1_0_FEATURE_TYPE} ${GSTREAMER_1_0_FEATURE_PURPOSE} ${GSTREAMER_1_0_FEATURE_DESCRIPTION})
|
|
||||||
|
|
||||||
find_feature(JPEG ${JPEG_FEATURE_TYPE} ${JPEG_FEATURE_PURPOSE} ${JPEG_FEATURE_DESCRIPTION})
|
find_feature(JPEG ${JPEG_FEATURE_TYPE} ${JPEG_FEATURE_PURPOSE} ${JPEG_FEATURE_DESCRIPTION})
|
||||||
find_feature(x264 ${X264_FEATURE_TYPE} ${X264_FEATURE_PURPOSE} ${X264_FEATURE_DESCRIPTION})
|
find_feature(x264 ${X264_FEATURE_TYPE} ${X264_FEATURE_PURPOSE} ${X264_FEATURE_DESCRIPTION})
|
||||||
find_feature(OpenH264 ${OPENH264_FEATURE_TYPE} ${OPENH264_FEATURE_PURPOSE} ${OPENH264_FEATURE_DESCRIPTION})
|
find_feature(OpenH264 ${OPENH264_FEATURE_TYPE} ${OPENH264_FEATURE_PURPOSE} ${OPENH264_FEATURE_DESCRIPTION})
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
set(OPTION_DEFAULT OFF)
|
set(OPTION_DEFAULT OFF)
|
||||||
set(OPTION_CLIENT_DEFAULT ON)
|
set(OPTION_CLIENT_DEFAULT OFF)
|
||||||
set(OPTION_SERVER_DEFAULT OFF)
|
set(OPTION_SERVER_DEFAULT OFF)
|
||||||
|
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
@ -14,7 +14,7 @@ if(ANDROID)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
define_channel_options(NAME "tsmf" TYPE "dynamic"
|
define_channel_options(NAME "tsmf" TYPE "dynamic"
|
||||||
DESCRIPTION "Video Redirection Virtual Channel Extension"
|
DESCRIPTION "[DEPRECATED] Video Redirection Virtual Channel Extension"
|
||||||
SPECIFICATIONS "[MS-RDPEV]"
|
SPECIFICATIONS "[MS-RDPEV]"
|
||||||
DEFAULT ${OPTION_DEFAULT})
|
DEFAULT ${OPTION_DEFAULT})
|
||||||
|
|
||||||
|
@ -18,6 +18,43 @@
|
|||||||
|
|
||||||
define_channel_client("tsmf")
|
define_channel_client("tsmf")
|
||||||
|
|
||||||
|
message(DEPRECATION "TSMF channel is no longer maintained. Use [MS-RDPEVOR] (/video) instead.")
|
||||||
|
|
||||||
|
set(GSTREAMER_0_10_FEATURE_TYPE "OPTIONAL")
|
||||||
|
set(GSTREAMER_0_10_FEATURE_PURPOSE "multimedia")
|
||||||
|
set(GSTREAMER_0_10_FEATURE_DESCRIPTION "multimedia redirection, audio and video playback, gstreamer 0.10 version")
|
||||||
|
|
||||||
|
set(GSTREAMER_1_0_FEATURE_TYPE "RECOMMENDED")
|
||||||
|
set(GSTREAMER_1_0_FEATURE_PURPOSE "multimedia")
|
||||||
|
set(GSTREAMER_1_0_FEATURE_DESCRIPTION "multimedia redirection, audio and video playback")
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
||||||
|
set(GSTREAMER_0_10_FEATURE_TYPE "OPTIONAL")
|
||||||
|
endif()
|
||||||
|
if (APPLE)
|
||||||
|
set(GSTREAMER_1_0_FEATURE_TYPE "OPTIONAL")
|
||||||
|
|
||||||
|
if (IOS)
|
||||||
|
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
||||||
|
set(GSTREAMER_0_10_FEATURE_TYPE "DISABLED")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
if (ANDROID)
|
||||||
|
set(GSTREAMER_1_0_FEATURE_TYPE "DISABLED")
|
||||||
|
set(GSTREAMER_0_10_FEATURE_TYPE "DISABLED")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_feature(GStreamer_0_10 ${GSTREAMER_0_10_FEATURE_TYPE} ${GSTREAMER_0_10_FEATURE_PURPOSE} ${GSTREAMER_0_10_FEATURE_DESCRIPTION})
|
||||||
|
find_feature(GStreamer_1_0 ${GSTREAMER_1_0_FEATURE_TYPE} ${GSTREAMER_1_0_FEATURE_PURPOSE} ${GSTREAMER_1_0_FEATURE_DESCRIPTION})
|
||||||
|
|
||||||
|
if (WITH_GSTREAMER_0_10 AND GSTREAMER_0_10_FOUND)
|
||||||
|
add_definitions(-DWITH_GSTREAMER_0_10)
|
||||||
|
endif()
|
||||||
|
if (WITH_GSTREAMER_1_0 AND GSTREAMER_1_0_FOUND)
|
||||||
|
add_definitions(-DWITH_GSTREAMER_1_0)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(${MODULE_PREFIX}_SRCS
|
set(${MODULE_PREFIX}_SRCS
|
||||||
tsmf_audio.c
|
tsmf_audio.c
|
||||||
tsmf_audio.h
|
tsmf_audio.h
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
#include <freerdp/gdi/gfx.h>
|
#include <freerdp/gdi/gfx.h>
|
||||||
|
|
||||||
#include <freerdp/client/rdpei.h>
|
#include <freerdp/client/rdpei.h>
|
||||||
#include <freerdp/client/tsmf.h>
|
|
||||||
#include <freerdp/client/rail.h>
|
#include <freerdp/client/rail.h>
|
||||||
#include <freerdp/client/cliprdr.h>
|
#include <freerdp/client/cliprdr.h>
|
||||||
#include <freerdp/client/rdpgfx.h>
|
#include <freerdp/client/rdpgfx.h>
|
||||||
@ -75,9 +74,6 @@ void tf_OnChannelConnectedEventHandler(void* context, ChannelConnectedEventArgs*
|
|||||||
{
|
{
|
||||||
tf->rdpei = (RdpeiClientContext*)e->pInterface;
|
tf->rdpei = (RdpeiClientContext*)e->pInterface;
|
||||||
}
|
}
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
gdi_graphics_pipeline_init(tf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
gdi_graphics_pipeline_init(tf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
||||||
@ -102,9 +98,6 @@ void tf_OnChannelDisconnectedEventHandler(void* context, ChannelDisconnectedEven
|
|||||||
{
|
{
|
||||||
tf->rdpei = NULL;
|
tf->rdpei = NULL;
|
||||||
}
|
}
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
gdi_graphics_pipeline_uninit(tf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
gdi_graphics_pipeline_uninit(tf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
|
|
||||||
#include <freerdp/freerdp.h>
|
#include <freerdp/freerdp.h>
|
||||||
#include <freerdp/client/rdpei.h>
|
#include <freerdp/client/rdpei.h>
|
||||||
#include <freerdp/client/tsmf.h>
|
|
||||||
#include <freerdp/client/rail.h>
|
#include <freerdp/client/rail.h>
|
||||||
#include <freerdp/client/cliprdr.h>
|
#include <freerdp/client/cliprdr.h>
|
||||||
#include <freerdp/client/rdpgfx.h>
|
#include <freerdp/client/rdpgfx.h>
|
||||||
|
@ -105,9 +105,6 @@ void wlf_OnChannelConnectedEventHandler(void* context, ChannelConnectedEventArgs
|
|||||||
{
|
{
|
||||||
wlf->rdpei = (RdpeiClientContext*)e->pInterface;
|
wlf->rdpei = (RdpeiClientContext*)e->pInterface;
|
||||||
}
|
}
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
gdi_graphics_pipeline_init(wlf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
gdi_graphics_pipeline_init(wlf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
||||||
@ -137,9 +134,6 @@ void wlf_OnChannelDisconnectedEventHandler(void* context, ChannelDisconnectedEve
|
|||||||
{
|
{
|
||||||
wlf->rdpei = NULL;
|
wlf->rdpei = NULL;
|
||||||
}
|
}
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
gdi_graphics_pipeline_uninit(wlf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
gdi_graphics_pipeline_uninit(wlf->context.gdi, (RdpgfxClientContext*)e->pInterface);
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
#include <freerdp/freerdp.h>
|
#include <freerdp/freerdp.h>
|
||||||
#include <freerdp/client/channels.h>
|
#include <freerdp/client/channels.h>
|
||||||
#include <freerdp/client/rdpei.h>
|
#include <freerdp/client/rdpei.h>
|
||||||
#include <freerdp/client/tsmf.h>
|
|
||||||
#include <freerdp/client/rail.h>
|
#include <freerdp/client/rail.h>
|
||||||
#include <freerdp/client/cliprdr.h>
|
#include <freerdp/client/cliprdr.h>
|
||||||
#include <freerdp/client/rdpgfx.h>
|
#include <freerdp/client/rdpgfx.h>
|
||||||
|
@ -29,9 +29,7 @@ set(${MODULE_PREFIX}_SRCS
|
|||||||
xf_gfx.c
|
xf_gfx.c
|
||||||
xf_gfx.h
|
xf_gfx.h
|
||||||
xf_rail.c
|
xf_rail.c
|
||||||
xf_rail.h
|
xf_rail.h
|
||||||
xf_tsmf.c
|
|
||||||
xf_tsmf.h
|
|
||||||
xf_input.c
|
xf_input.c
|
||||||
xf_input.h
|
xf_input.h
|
||||||
xf_event.c
|
xf_event.c
|
||||||
@ -59,6 +57,12 @@ set(${MODULE_PREFIX}_SRCS
|
|||||||
xf_client.c
|
xf_client.c
|
||||||
xf_client.h)
|
xf_client.h)
|
||||||
|
|
||||||
|
if (CHANNEL_TSMF_CLIENT)
|
||||||
|
set(${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS}
|
||||||
|
xf_tsmf.c
|
||||||
|
xf_tsmf.h)
|
||||||
|
endif()
|
||||||
|
|
||||||
if(WITH_CLIENT_INTERFACE)
|
if(WITH_CLIENT_INTERFACE)
|
||||||
if(CLIENT_INTERFACE_SHARED)
|
if(CLIENT_INTERFACE_SHARED)
|
||||||
add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
|
add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
|
||||||
|
@ -28,7 +28,9 @@
|
|||||||
#include "xfreerdp.h"
|
#include "xfreerdp.h"
|
||||||
|
|
||||||
#include "xf_gfx.h"
|
#include "xf_gfx.h"
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
#include "xf_tsmf.h"
|
#include "xf_tsmf.h"
|
||||||
|
#endif
|
||||||
#include "xf_rail.h"
|
#include "xf_rail.h"
|
||||||
#include "xf_cliprdr.h"
|
#include "xf_cliprdr.h"
|
||||||
#include "xf_disp.h"
|
#include "xf_disp.h"
|
||||||
@ -42,10 +44,12 @@ void xf_OnChannelConnectedEventHandler(void* context, ChannelConnectedEventArgs*
|
|||||||
{
|
{
|
||||||
xfc->rdpei = (RdpeiClientContext*)e->pInterface;
|
xfc->rdpei = (RdpeiClientContext*)e->pInterface;
|
||||||
}
|
}
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
xf_tsmf_init(xfc, (TsmfClientContext*)e->pInterface);
|
xf_tsmf_init(xfc, (TsmfClientContext*)e->pInterface);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
xf_graphics_pipeline_init(xfc, (RdpgfxClientContext*)e->pInterface);
|
xf_graphics_pipeline_init(xfc, (RdpgfxClientContext*)e->pInterface);
|
||||||
@ -93,10 +97,12 @@ void xf_OnChannelDisconnectedEventHandler(void* context, ChannelDisconnectedEven
|
|||||||
{
|
{
|
||||||
xf_disp_uninit(xfc->xfDisp, (DispClientContext*)e->pInterface);
|
xf_disp_uninit(xfc->xfDisp, (DispClientContext*)e->pInterface);
|
||||||
}
|
}
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, TSMF_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
xf_tsmf_uninit(xfc, (TsmfClientContext*)e->pInterface);
|
xf_tsmf_uninit(xfc, (TsmfClientContext*)e->pInterface);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
else if (strcmp(e->name, RDPGFX_DVC_CHANNEL_NAME) == 0)
|
||||||
{
|
{
|
||||||
xf_graphics_pipeline_uninit(xfc, (RdpgfxClientContext*)e->pInterface);
|
xf_graphics_pipeline_uninit(xfc, (RdpgfxClientContext*)e->pInterface);
|
||||||
|
@ -23,7 +23,6 @@
|
|||||||
#include <freerdp/freerdp.h>
|
#include <freerdp/freerdp.h>
|
||||||
#include <freerdp/client/channels.h>
|
#include <freerdp/client/channels.h>
|
||||||
#include <freerdp/client/rdpei.h>
|
#include <freerdp/client/rdpei.h>
|
||||||
#include <freerdp/client/tsmf.h>
|
|
||||||
#include <freerdp/client/rail.h>
|
#include <freerdp/client/rail.h>
|
||||||
#include <freerdp/client/cliprdr.h>
|
#include <freerdp/client/cliprdr.h>
|
||||||
#include <freerdp/client/rdpgfx.h>
|
#include <freerdp/client/rdpgfx.h>
|
||||||
|
@ -89,7 +89,9 @@
|
|||||||
|
|
||||||
#include "xf_gdi.h"
|
#include "xf_gdi.h"
|
||||||
#include "xf_rail.h"
|
#include "xf_rail.h"
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
#include "xf_tsmf.h"
|
#include "xf_tsmf.h"
|
||||||
|
#endif
|
||||||
#include "xf_event.h"
|
#include "xf_event.h"
|
||||||
#include "xf_input.h"
|
#include "xf_input.h"
|
||||||
#include "xf_cliprdr.h"
|
#include "xf_cliprdr.h"
|
||||||
@ -664,11 +666,13 @@ static void xf_window_free(xfContext* xfc)
|
|||||||
xfc->hdc = NULL;
|
xfc->hdc = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
if (xfc->xv_context)
|
if (xfc->xv_context)
|
||||||
{
|
{
|
||||||
xf_tsmf_uninit(xfc, NULL);
|
xf_tsmf_uninit(xfc, NULL);
|
||||||
xfc->xv_context = NULL;
|
xfc->xv_context = NULL;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (xfc->image)
|
if (xfc->image)
|
||||||
{
|
{
|
||||||
|
@ -22,6 +22,10 @@
|
|||||||
#ifndef FREERDP_CLIENT_X11_FREERDP_H
|
#ifndef FREERDP_CLIENT_X11_FREERDP_H
|
||||||
#define FREERDP_CLIENT_X11_FREERDP_H
|
#define FREERDP_CLIENT_X11_FREERDP_H
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
#include "config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
typedef struct xf_context xfContext;
|
typedef struct xf_context xfContext;
|
||||||
|
|
||||||
#include <freerdp/api.h>
|
#include <freerdp/api.h>
|
||||||
@ -30,6 +34,10 @@ typedef struct xf_context xfContext;
|
|||||||
#include "xf_monitor.h"
|
#include "xf_monitor.h"
|
||||||
#include "xf_channels.h"
|
#include "xf_channels.h"
|
||||||
|
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
|
#include <freerdp/client/tsmf.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <freerdp/gdi/gdi.h>
|
#include <freerdp/gdi/gdi.h>
|
||||||
#include <freerdp/codec/rfx.h>
|
#include <freerdp/codec/rfx.h>
|
||||||
#include <freerdp/codec/nsc.h>
|
#include <freerdp/codec/nsc.h>
|
||||||
@ -173,7 +181,9 @@ struct xf_context
|
|||||||
XSetWindowAttributes attribs;
|
XSetWindowAttributes attribs;
|
||||||
BOOL complex_regions;
|
BOOL complex_regions;
|
||||||
VIRTUAL_SCREEN vscreen;
|
VIRTUAL_SCREEN vscreen;
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
void* xv_context;
|
void* xv_context;
|
||||||
|
#endif
|
||||||
|
|
||||||
Atom* supportedAtoms;
|
Atom* supportedAtoms;
|
||||||
unsigned long supportedAtomCount;
|
unsigned long supportedAtomCount;
|
||||||
@ -216,7 +226,10 @@ struct xf_context
|
|||||||
Atom WM_DELETE_WINDOW;
|
Atom WM_DELETE_WINDOW;
|
||||||
|
|
||||||
/* Channels */
|
/* Channels */
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
TsmfClientContext* tsmf;
|
TsmfClientContext* tsmf;
|
||||||
|
#endif
|
||||||
|
|
||||||
xfClipboard* clipboard;
|
xfClipboard* clipboard;
|
||||||
CliprdrClientContext* cliprdr;
|
CliprdrClientContext* cliprdr;
|
||||||
xfVideoContext* xfVideo;
|
xfVideoContext* xfVideo;
|
||||||
|
@ -430,8 +430,7 @@ BOOL freerdp_client_print_command_line_help_ex(int argc, char** argv,
|
|||||||
printf("Audio Input Redirection: /microphone:sys:oss,dev:1,format:1\n");
|
printf("Audio Input Redirection: /microphone:sys:oss,dev:1,format:1\n");
|
||||||
printf("Audio Input Redirection: /microphone:sys:alsa\n");
|
printf("Audio Input Redirection: /microphone:sys:alsa\n");
|
||||||
printf("\n");
|
printf("\n");
|
||||||
printf("Multimedia Redirection: /multimedia:sys:oss,dev:/dev/dsp1,decoder:ffmpeg\n");
|
printf("Multimedia Redirection: /video\n");
|
||||||
printf("Multimedia Redirection: /multimedia:sys:alsa\n");
|
|
||||||
#ifdef CHANNEL_URBDRC_CLIENT
|
#ifdef CHANNEL_URBDRC_CLIENT
|
||||||
printf("USB Device Redirection: /usb:id,dev:054c:0268\n");
|
printf("USB Device Redirection: /usb:id,dev:054c:0268\n");
|
||||||
#endif
|
#endif
|
||||||
@ -935,6 +934,7 @@ static int freerdp_client_command_line_post_filter(void* context, COMMAND_LINE_A
|
|||||||
status = freerdp_client_add_dynamic_channel(settings, count, p);
|
status = freerdp_client_add_dynamic_channel(settings, count, p);
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
CommandLineSwitchCase(arg, "multimedia")
|
CommandLineSwitchCase(arg, "multimedia")
|
||||||
{
|
{
|
||||||
char** p;
|
char** p;
|
||||||
@ -943,6 +943,7 @@ static int freerdp_client_command_line_post_filter(void* context, COMMAND_LINE_A
|
|||||||
status = freerdp_client_add_dynamic_channel(settings, count, p);
|
status = freerdp_client_add_dynamic_channel(settings, count, p);
|
||||||
free(p);
|
free(p);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
CommandLineSwitchCase(arg, "heartbeat")
|
CommandLineSwitchCase(arg, "heartbeat")
|
||||||
{
|
{
|
||||||
settings->SupportHeartbeatPdu = enable;
|
settings->SupportHeartbeatPdu = enable;
|
||||||
@ -3271,8 +3272,11 @@ BOOL freerdp_client_load_addins(rdpChannels* channels, rdpSettings* settings)
|
|||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((freerdp_static_channel_collection_find(settings, "rdpsnd")) ||
|
if ((freerdp_static_channel_collection_find(settings, "rdpsnd"))
|
||||||
(freerdp_dynamic_channel_collection_find(settings, "tsmf")))
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
|
|| (freerdp_dynamic_channel_collection_find(settings, "tsmf"))
|
||||||
|
#endif
|
||||||
|
)
|
||||||
{
|
{
|
||||||
settings->DeviceRedirection = TRUE; /* rdpsnd requires rdpdr to be registered */
|
settings->DeviceRedirection = TRUE; /* rdpsnd requires rdpdr to be registered */
|
||||||
settings->AudioPlayback = TRUE; /* Both rdpsnd and tsmf require this flag to be set */
|
settings->AudioPlayback = TRUE; /* Both rdpsnd and tsmf require this flag to be set */
|
||||||
|
@ -208,8 +208,10 @@ static const COMMAND_LINE_ARGUMENT_A args[] = {
|
|||||||
"Select monitors to use" },
|
"Select monitors to use" },
|
||||||
{ "mouse-motion", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL,
|
{ "mouse-motion", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL,
|
||||||
"Send mouse motion" },
|
"Send mouse motion" },
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
{ "multimedia", COMMAND_LINE_VALUE_OPTIONAL, "[sys:<sys>,][dev:<dev>,][decoder:<decoder>]",
|
{ "multimedia", COMMAND_LINE_VALUE_OPTIONAL, "[sys:<sys>,][dev:<dev>,][decoder:<decoder>]",
|
||||||
NULL, NULL, -1, "mmr", "Redirect multimedia (video)" },
|
NULL, NULL, -1, "mmr", "[DEPRECATED] Redirect multimedia (video) use /video instead" },
|
||||||
|
#endif
|
||||||
{ "multimon", COMMAND_LINE_VALUE_OPTIONAL, "force", NULL, NULL, -1, NULL,
|
{ "multimon", COMMAND_LINE_VALUE_OPTIONAL, "force", NULL, NULL, -1, NULL,
|
||||||
"Use multiple monitors" },
|
"Use multiple monitors" },
|
||||||
{ "multitouch", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueFalse, NULL, -1, NULL,
|
{ "multitouch", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueFalse, NULL, -1, NULL,
|
||||||
|
@ -42,6 +42,7 @@ int TestClientChannels(int argc, char* argv[])
|
|||||||
|
|
||||||
freerdp_channels_addin_list_free(ppAddins);
|
freerdp_channels_addin_list_free(ppAddins);
|
||||||
|
|
||||||
|
#if defined(CHANNEL_TSMF_CLIENT)
|
||||||
printf("Enumerate tsmf video\n");
|
printf("Enumerate tsmf video\n");
|
||||||
ppAddins = freerdp_channels_list_addins("tsmf", NULL, "video", dwFlags);
|
ppAddins = freerdp_channels_list_addins("tsmf", NULL, "video", dwFlags);
|
||||||
|
|
||||||
@ -54,6 +55,7 @@ int TestClientChannels(int argc, char* argv[])
|
|||||||
}
|
}
|
||||||
|
|
||||||
freerdp_channels_addin_list_free(ppAddins);
|
freerdp_channels_addin_list_free(ppAddins);
|
||||||
|
#endif
|
||||||
|
|
||||||
ppAddins = freerdp_channels_list_addins("unknown", NULL, NULL, dwFlags);
|
ppAddins = freerdp_channels_list_addins("unknown", NULL, NULL, dwFlags);
|
||||||
|
|
||||||
|
@ -109,7 +109,7 @@ option(WITH_DEBUG_CHANNELS "Print channel manager debug messages." ${DEFAULT_DEB
|
|||||||
option(WITH_DEBUG_CLIPRDR "Print clipboard redirection debug messages" ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_CLIPRDR "Print clipboard redirection debug messages" ${DEFAULT_DEBUG_OPTION})
|
||||||
option(WITH_DEBUG_RDPGFX "Print RDPGFX debug messages" ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_RDPGFX "Print RDPGFX debug messages" ${DEFAULT_DEBUG_OPTION})
|
||||||
option(WITH_DEBUG_DVC "Print dynamic virtual channel debug messages." ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_DVC "Print dynamic virtual channel debug messages." ${DEFAULT_DEBUG_OPTION})
|
||||||
option(WITH_DEBUG_TSMF "Print TSMF virtual channel debug messages." ${DEFAULT_DEBUG_OPTION})
|
CMAKE_DEPENDENT_OPTION(WITH_DEBUG_TSMF "Print TSMF virtual channel debug messages." ${DEFAULT_DEBUG_OPTION} "CHANNEL_TSMF" OFF)
|
||||||
option(WITH_DEBUG_KBD "Print keyboard related debug messages." ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_KBD "Print keyboard related debug messages." ${DEFAULT_DEBUG_OPTION})
|
||||||
option(WITH_DEBUG_LICENSE "Print license debug messages." ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_LICENSE "Print license debug messages." ${DEFAULT_DEBUG_OPTION})
|
||||||
option(WITH_DEBUG_NEGO "Print negotiation related debug messages." ${DEFAULT_DEBUG_OPTION})
|
option(WITH_DEBUG_NEGO "Print negotiation related debug messages." ${DEFAULT_DEBUG_OPTION})
|
||||||
|
@ -45,8 +45,6 @@
|
|||||||
#cmakedefine WITH_EVENTFD_READ_WRITE
|
#cmakedefine WITH_EVENTFD_READ_WRITE
|
||||||
#cmakedefine HAVE_MATH_C99_LONG_DOUBLE
|
#cmakedefine HAVE_MATH_C99_LONG_DOUBLE
|
||||||
|
|
||||||
#cmakedefine WITH_GSTREAMER_1_0
|
|
||||||
#cmakedefine WITH_GSTREAMER_0_10
|
|
||||||
#cmakedefine WITH_WINMM
|
#cmakedefine WITH_WINMM
|
||||||
#cmakedefine WITH_MACAUDIO
|
#cmakedefine WITH_MACAUDIO
|
||||||
#cmakedefine WITH_OSS
|
#cmakedefine WITH_OSS
|
||||||
|
@ -18,6 +18,13 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* DEPRECATION WARNING:
|
||||||
|
*
|
||||||
|
* This channel is unmaintained and not used since windows 7.
|
||||||
|
* Only compile and use it if absolutely necessary, otherwise
|
||||||
|
* deactivate it or use the newer [MS-RDPEVOR] video redirection.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef FREERDP_CHANNEL_TSMF_H
|
#ifndef FREERDP_CHANNEL_TSMF_H
|
||||||
#define FREERDP_CHANNEL_TSMF_H
|
#define FREERDP_CHANNEL_TSMF_H
|
||||||
|
|
||||||
|
@ -17,6 +17,13 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/* DEPRECATION WARNING:
|
||||||
|
*
|
||||||
|
* This channel is unmaintained and not used since windows 7.
|
||||||
|
* Only compile and use it if absolutely necessary, otherwise
|
||||||
|
* deactivate it or use the newer [MS-RDPEVOR] video redirection.
|
||||||
|
*/
|
||||||
|
|
||||||
#ifndef FREERDP_CHANNEL_TSMF_CLIENT_TSMF_H
|
#ifndef FREERDP_CHANNEL_TSMF_CLIENT_TSMF_H
|
||||||
#define FREERDP_CHANNEL_TSMF_CLIENT_TSMF_H
|
#define FREERDP_CHANNEL_TSMF_CLIENT_TSMF_H
|
||||||
|
|
||||||
|
@ -26,7 +26,6 @@
|
|||||||
#include <freerdp/gdi/gfx.h>
|
#include <freerdp/gdi/gfx.h>
|
||||||
|
|
||||||
#include <freerdp/client/rdpei.h>
|
#include <freerdp/client/rdpei.h>
|
||||||
#include <freerdp/client/tsmf.h>
|
|
||||||
#include <freerdp/client/rail.h>
|
#include <freerdp/client/rail.h>
|
||||||
#include <freerdp/client/cliprdr.h>
|
#include <freerdp/client/cliprdr.h>
|
||||||
#include <freerdp/client/rdpgfx.h>
|
#include <freerdp/client/rdpgfx.h>
|
||||||
|
Loading…
Reference in New Issue
Block a user