Changeset 28802 in vbox
- Timestamp:
- Apr 27, 2010 9:23:16 AM (15 years ago)
- svn:sync-xref-src-repo-rev:
- 60695
- Location:
- trunk
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/settings.h
r28800 r28802 265 265 ulAuthTimeout(5000), 266 266 fAllowMultiConnection(false), 267 fReuseSingleConnection(false) 267 fReuseSingleConnection(false), 268 fVideoChannel(false), 269 ulVideoChannelQuality(75) 268 270 {} 269 271 … … 276 278 uint32_t ulAuthTimeout; 277 279 bool fAllowMultiConnection, 278 fReuseSingleConnection; 280 fReuseSingleConnection, 281 fVideoChannel; 282 uint32_t ulVideoChannelQuality; 279 283 }; 280 284 -
trunk/include/VBox/vrdpapi.h
r28800 r28802 955 955 #define VRDP_QP_NUMBER_MONITORS (3) 956 956 #define VRDP_QP_NETWORK_PORT_RANGE (4) 957 #ifdef VBOX_WITH_VRDP_VIDEO_CHANNEL 958 #define VRDP_QP_VIDEO_CHANNEL (5) 959 #define VRDP_QP_VIDEO_CHANNEL_QUALITY (6) 960 #endif /* VBOX_WITH_VRDP_VIDEO_CHANNEL */ 957 961 958 962 #define VRDP_SP_BASE 0x1000 -
trunk/src/VBox/Main/ConsoleVRDPServer.cpp
r28800 r28802 756 756 *pcbOut = (uint32_t)cbPortRange; 757 757 } break; 758 759 #ifdef VBOX_WITH_VRDP_VIDEO_CHANNEL 760 case VRDP_QP_VIDEO_CHANNEL: 761 { 762 BOOL fVideoEnabled = FALSE; 763 764 server->mConsole->getVRDPServer()->COMGETTER(VideoChannel)(&fVideoEnabled); 765 766 if (cbBuffer >= sizeof(uint32_t)) 767 { 768 *(uint32_t *)pvBuffer = (uint32_t)fVideoEnabled; 769 rc = VINF_SUCCESS; 770 } 771 else 772 { 773 rc = VINF_BUFFER_OVERFLOW; 774 } 775 776 *pcbOut = sizeof(uint32_t); 777 } break; 778 779 case VRDP_QP_VIDEO_CHANNEL_QUALITY: 780 { 781 ULONG ulQuality = 0; 782 783 server->mConsole->getVRDPServer()->COMGETTER(VideoChannelQuality)(&ulQuality); 784 785 if (cbBuffer >= sizeof(uint32_t)) 786 { 787 *(uint32_t *)pvBuffer = (uint32_t)ulQuality; 788 rc = VINF_SUCCESS; 789 } 790 else 791 { 792 rc = VINF_BUFFER_OVERFLOW; 793 } 794 795 *pcbOut = sizeof(uint32_t); 796 } break; 797 #endif /* VBOX_WITH_VRDP_VIDEO_CHANNEL */ 758 798 759 799 case VRDP_SP_NETWORK_BIND_PORT: -
trunk/src/VBox/Main/Makefile.kmk
r28800 r28802 547 547 VBOX_COM_INPROC \ 548 548 $(if $(VBOX_WITH_VRDP),VBOX_WITH_VRDP,) \ 549 $(if $(VBOX_WITH_VRDP_VIDEO_CHANNEL),VBOX_WITH_VRDP_VIDEO_CHANNEL,) \ 549 550 $(if $(VBOX_WITH_HGCM),VBOX_WITH_HGCM,) \ 550 551 $(if $(VBOX_MAIN_RELEASE_LOG),VBOX_MAIN_RELEASE_LOG LOG_ENABLED,) \ -
trunk/src/VBox/Main/idl/VirtualBox.xidl
r28800 r28802 12842 12842 </attribute> 12843 12843 12844 <attribute name="videoChannel" type="boolean"> 12845 <desc> 12846 Flag whether RDP video channel is supported. 12847 </desc> 12848 </attribute> 12849 12850 <attribute name="videoChannelQuality" type="unsigned long"> 12851 <desc> 12852 Image quality in percents. 12853 </desc> 12854 </attribute> 12855 12844 12856 </interface> 12845 12857 -
trunk/src/VBox/Main/include/VRDPServerImpl.h
r28800 r28802 47 47 BOOL mAllowMultiConnection; 48 48 BOOL mReuseSingleConnection; 49 BOOL mVideoChannel; 50 ULONG mVideoChannelQuality; 49 51 }; 50 52 … … 87 89 STDMETHOD(COMGETTER(ReuseSingleConnection)) (BOOL *aReuseSingleConnection); 88 90 STDMETHOD(COMSETTER(ReuseSingleConnection)) (BOOL aReuseSingleConnection); 91 STDMETHOD(COMGETTER(VideoChannel)) (BOOL *aVideoChannel); 92 STDMETHOD(COMSETTER(VideoChannel)) (BOOL aVideoChannel); 93 STDMETHOD(COMGETTER(VideoChannelQuality)) (ULONG *aVideoChannelQuality); 94 STDMETHOD(COMSETTER(VideoChannelQuality)) (ULONG aVideoChannelQuality); 89 95 90 96 // IVRDPServer methods -
trunk/src/VBox/Main/xml/Settings.cpp
r28800 r28802 1317 1317 && (fAllowMultiConnection == v.fAllowMultiConnection) 1318 1318 && (fReuseSingleConnection == v.fReuseSingleConnection) 1319 && (fVideoChannel == v.fVideoChannel) 1320 && (ulVideoChannelQuality == v.ulVideoChannelQuality) 1319 1321 ) 1320 1322 ); … … 2311 2313 pelmHwChild->getAttributeValue("allowMultiConnection", hw.vrdpSettings.fAllowMultiConnection); 2312 2314 pelmHwChild->getAttributeValue("reuseSingleConnection", hw.vrdpSettings.fReuseSingleConnection); 2315 2316 const xml::ElementNode *pelmVideoChannel; 2317 if ((pelmVideoChannel = pelmHwChild->findChildElement("VideoChannel"))) 2318 { 2319 pelmVideoChannel->getAttributeValue("enabled", hw.vrdpSettings.fVideoChannel); 2320 pelmVideoChannel->getAttributeValue("quality", hw.vrdpSettings.ulVideoChannelQuality); 2321 RT_CLAMP(hw.vrdpSettings.ulVideoChannelQuality, 10, 100); 2322 } 2313 2323 } 2314 2324 else if (pelmHwChild->nameEquals("BIOS")) … … 3247 3257 pelmVRDP->setAttribute("reuseSingleConnection", hw.vrdpSettings.fReuseSingleConnection); 3248 3258 3259 if (m->sv >= SettingsVersion_v1_10) 3260 { 3261 xml::ElementNode *pelmVideoChannel = pelmVRDP->createChild("VideoChannel"); 3262 pelmVideoChannel->setAttribute("enabled", hw.vrdpSettings.fVideoChannel); 3263 pelmVideoChannel->setAttribute("quality", hw.vrdpSettings.ulVideoChannelQuality); 3264 } 3265 3249 3266 xml::ElementNode *pelmBIOS = pelmHardware->createChild("BIOS"); 3250 3267 pelmBIOS->createChild("ACPI")->setAttribute("enabled", hw.biosSettings.fACPIEnabled); … … 4061 4078 m->sv = SettingsVersion_v1_10; 4062 4079 } 4080 4081 // VirtualBox 3.2 adds support for VRDP video channel 4082 if ( m->sv < SettingsVersion_v1_10 4083 && ( hardwareMachine.vrdpSettings.fVideoChannel 4084 ) 4085 ) 4086 m->sv = SettingsVersion_v1_10; 4087 4063 4088 } 4064 4089
Note:
See TracChangeset
for help on using the changeset viewer.