Blame channels/tsmf/client/tsmf_constants.h

Packit 1fb8d4
/**
Packit 1fb8d4
 * FreeRDP: A Remote Desktop Protocol Implementation
Packit 1fb8d4
 * Video Redirection Virtual Channel - Constants
Packit 1fb8d4
 *
Packit 1fb8d4
 * Copyright 2010-2011 Vic Lee
Packit 1fb8d4
 * Copyright 2012 Hewlett-Packard Development Company, L.P.
Packit 1fb8d4
 *
Packit 1fb8d4
 * Licensed under the Apache License, Version 2.0 (the "License");
Packit 1fb8d4
 * you may not use this file except in compliance with the License.
Packit 1fb8d4
 * You may obtain a copy of the License at
Packit 1fb8d4
 *
Packit 1fb8d4
 *     http://www.apache.org/licenses/LICENSE-2.0
Packit 1fb8d4
 *
Packit 1fb8d4
 * Unless required by applicable law or agreed to in writing, software
Packit 1fb8d4
 * distributed under the License is distributed on an "AS IS" BASIS,
Packit 1fb8d4
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Packit 1fb8d4
 * See the License for the specific language governing permissions and
Packit 1fb8d4
 * limitations under the License.
Packit 1fb8d4
 */
Packit 1fb8d4
Packit 1fb8d4
#ifndef FREERDP_CHANNEL_TSMF_CLIENT_CONSTANTS_H
Packit 1fb8d4
#define FREERDP_CHANNEL_TSMF_CLIENT_CONSTANTS_H
Packit 1fb8d4
Packit 1fb8d4
#define GUID_SIZE 16
Packit 1fb8d4
#define TSMF_BUFFER_PADDING_SIZE 8
Packit 1fb8d4
Packit 1fb8d4
/* Interface IDs defined in [MS-RDPEV]. There's no constant names in the MS
Packit 1fb8d4
   documentation, so we create them on our own. */
Packit 1fb8d4
#define TSMF_INTERFACE_DEFAULT                  0x00000000
Packit 1fb8d4
#define TSMF_INTERFACE_CLIENT_NOTIFICATIONS     0x00000001
Packit 1fb8d4
#define TSMF_INTERFACE_CAPABILITIES             0x00000002
Packit 1fb8d4
Packit 1fb8d4
/* Interface ID Mask */
Packit 1fb8d4
#define STREAM_ID_STUB      0x80000000
Packit 1fb8d4
#define STREAM_ID_PROXY     0x40000000
Packit 1fb8d4
#define STREAM_ID_NONE      0x00000000
Packit 1fb8d4
Packit 1fb8d4
/* Functon ID */
Packit 1fb8d4
/* Common IDs for all interfaces are as follows. */
Packit 1fb8d4
#define RIMCALL_RELEASE                     0x00000001
Packit 1fb8d4
#define RIMCALL_QUERYINTERFACE              0x00000002
Packit 1fb8d4
/* Capabilities Negotiator Interface IDs are as follows. */
Packit 1fb8d4
#define RIM_EXCHANGE_CAPABILITY_REQUEST     0x00000100
Packit 1fb8d4
/* The Client Notifications Interface ID is as follows. */
Packit 1fb8d4
#define PLAYBACK_ACK                        0x00000100
Packit 1fb8d4
#define CLIENT_EVENT_NOTIFICATION           0x00000101
Packit 1fb8d4
/* Server Data Interface IDs are as follows. */
Packit 1fb8d4
#define EXCHANGE_CAPABILITIES_REQ           0x00000100
Packit 1fb8d4
#define SET_CHANNEL_PARAMS                  0x00000101
Packit 1fb8d4
#define ADD_STREAM                          0x00000102
Packit 1fb8d4
#define ON_SAMPLE                           0x00000103
Packit 1fb8d4
#define SET_VIDEO_WINDOW                    0x00000104
Packit 1fb8d4
#define ON_NEW_PRESENTATION                 0x00000105
Packit 1fb8d4
#define SHUTDOWN_PRESENTATION_REQ           0x00000106
Packit 1fb8d4
#define SET_TOPOLOGY_REQ                    0x00000107
Packit 1fb8d4
#define CHECK_FORMAT_SUPPORT_REQ            0x00000108
Packit 1fb8d4
#define ON_PLAYBACK_STARTED                 0x00000109
Packit 1fb8d4
#define ON_PLAYBACK_PAUSED                  0x0000010a
Packit 1fb8d4
#define ON_PLAYBACK_STOPPED                 0x0000010b
Packit 1fb8d4
#define ON_PLAYBACK_RESTARTED               0x0000010c
Packit 1fb8d4
#define ON_PLAYBACK_RATE_CHANGED            0x0000010d
Packit 1fb8d4
#define ON_FLUSH                            0x0000010e
Packit 1fb8d4
#define ON_STREAM_VOLUME                    0x0000010f
Packit 1fb8d4
#define ON_CHANNEL_VOLUME                   0x00000110
Packit 1fb8d4
#define ON_END_OF_STREAM                    0x00000111
Packit 1fb8d4
#define SET_ALLOCATOR                       0x00000112
Packit 1fb8d4
#define NOTIFY_PREROLL                      0x00000113
Packit 1fb8d4
#define UPDATE_GEOMETRY_INFO                0x00000114
Packit 1fb8d4
#define REMOVE_STREAM                       0x00000115
Packit 1fb8d4
#define SET_SOURCE_VIDEO_RECT               0x00000116
Packit 1fb8d4
Packit 1fb8d4
/* Supported platform */
Packit 1fb8d4
#define MMREDIR_CAPABILITY_PLATFORM_MF      0x00000001
Packit 1fb8d4
#define MMREDIR_CAPABILITY_PLATFORM_DSHOW   0x00000002
Packit 1fb8d4
#define MMREDIR_CAPABILITY_PLATFORM_OTHER   0x00000004
Packit 1fb8d4
Packit 1fb8d4
/* TSMM_CLIENT_EVENT Constants */
Packit 1fb8d4
#define TSMM_CLIENT_EVENT_ENDOFSTREAM       0x0064
Packit 1fb8d4
#define TSMM_CLIENT_EVENT_STOP_COMPLETED    0x00C8
Packit 1fb8d4
#define TSMM_CLIENT_EVENT_START_COMPLETED   0x00C9
Packit 1fb8d4
#define TSMM_CLIENT_EVENT_MONITORCHANGED    0x012C
Packit 1fb8d4
Packit 1fb8d4
/* TS_MM_DATA_SAMPLE.SampleExtensions */
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_CLEANPOINT          0x00000001
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_DISCONTINUITY       0x00000002
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_INTERLACED          0x00000004
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_BOTTOMFIELDFIRST    0x00000008
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_REPEATFIELDFIRST    0x00000010
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_SINGLEFIELD         0x00000020
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_DERIVEDFROMTOPFIELD 0x00000040
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_HAS_NO_TIMESTAMPS   0x00000080
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_RELATIVE_TIMESTAMPS 0x00000100
Packit 1fb8d4
#define TSMM_SAMPLE_EXT_ABSOLUTE_TIMESTAMPS 0x00000200
Packit 1fb8d4
Packit 1fb8d4
/* MajorType */
Packit 1fb8d4
#define TSMF_MAJOR_TYPE_UNKNOWN             0
Packit 1fb8d4
#define TSMF_MAJOR_TYPE_VIDEO               1
Packit 1fb8d4
#define TSMF_MAJOR_TYPE_AUDIO               2
Packit 1fb8d4
Packit 1fb8d4
/* SubType */
Packit 1fb8d4
#define TSMF_SUB_TYPE_UNKNOWN               0
Packit 1fb8d4
#define TSMF_SUB_TYPE_WVC1                  1
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMA2                  2
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMA9                  3
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP3                   4
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP2A                  5
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP2V                  6
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMV3                  7
Packit 1fb8d4
#define TSMF_SUB_TYPE_AAC                   8
Packit 1fb8d4
#define TSMF_SUB_TYPE_H264                  9
Packit 1fb8d4
#define TSMF_SUB_TYPE_AVC1                 10
Packit 1fb8d4
#define TSMF_SUB_TYPE_AC3                  11
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMV2                 12
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMV1                 13
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP1V                 14
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP1A                 15
Packit 1fb8d4
#define TSMF_SUB_TYPE_YUY2                 16
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP43                 17
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP4S                 18
Packit 1fb8d4
#define TSMF_SUB_TYPE_MP42                 19
Packit 1fb8d4
#define TSMF_SUB_TYPE_OGG                  20
Packit 1fb8d4
#define TSMF_SUB_TYPE_SPEEX                21
Packit 1fb8d4
#define TSMF_SUB_TYPE_THEORA               22
Packit 1fb8d4
#define TSMF_SUB_TYPE_FLAC                 23
Packit 1fb8d4
#define TSMF_SUB_TYPE_VP8                  24
Packit 1fb8d4
#define TSMF_SUB_TYPE_VP9                  25
Packit 1fb8d4
#define TSMF_SUB_TYPE_H263                 26
Packit 1fb8d4
#define TSMF_SUB_TYPE_M4S2                 27
Packit 1fb8d4
#define TSMF_SUB_TYPE_WMA1                 28
Packit 1fb8d4
Packit 1fb8d4
/* FormatType */
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_UNKNOWN            0
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_MFVIDEOFORMAT      1
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_WAVEFORMATEX       2
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_MPEG2VIDEOINFO     3
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_VIDEOINFO2         4
Packit 1fb8d4
#define TSMF_FORMAT_TYPE_MPEG1VIDEOINFO     5
Packit 1fb8d4
Packit 1fb8d4
#endif /* FREERDP_CHANNEL_TSMF_CLIENT_CONSTANTS_H */