Access Grid Integration
Chris Greenhalgh
University of Nottingham
Contents
• What is the Access Grid?
• How is the Access Grid (v.2.3) implemented?
• Integration Options
• A VR Access Grid client
• Integrating the e-science-GS system
• Conclusions & future work
What is the Access Grid: goals
• Distributed collaboration between multiple co-located groups
• Turnkey operation by non-computer scientists (?!)
• Analogous with co-located working
• Rich media (e.g. better than video-conferencing)
• Adequate security
What is the Access Grid: in use
What is the Access Grid: in use
• Local “nodes” – usually meeting rooms• Multi-party audio and video conferencing
– Echo cancelled (mono) audio– 1-4 cameras and tiled data projectors for approx. life-
size video• A simple virtual room metaphor
– Several “nodes” join the same “virtual venue” in order to work together
• A few simple shared applications – Presentation, web browser, image browser
• Some degree of authentication and access control
How is the Access Grid (v.2.3) implemented?
VirtualVenue
Venue Server
ServiceManager:Vic (video)
ServiceManager:
Rat (audio)
Node manager
Venueclient
VenueEventbus
SharedApp n
Local App n
VenueData n
UserData n
CamerasVideo windows
Micsspeakers
Joining a venue
VirtualVenue
Venue Server
ServiceManager:Vic (video)
ServiceManager:
Rat (audio)
Node manager
Venueclient
VenueEventbus
SharedApp n
Local App n
VenueData n
UserData n
CamerasVideo windows
Micsspeakers
1. Join
2. Streams
3. Exec rat 3. Exec vic
Running a shared application
VirtualVenue
Venue Server
ServiceManager:Vic (video)
ServiceManager:
Rat (audio)
Node manager
Venueclient
VenueEventbus
SharedApp n
Local App n
VenueData n
UserData n
CamerasVideo windows
Micsspeakers
1. Get info (Join)
2. start
3. get/set state
4.events
Sharing data
VirtualVenue
Venue Server
ServiceManager:Vic (video)
ServiceManager:
Rat (audio)
Node manager
Venueclient
VenueEventbus
SharedApp n
Local App n
VenueData n
UserData n
CamerasVideo windows
Micsspeakers
1. Get info (Join) / Save data2. Get data
1. create/2. get
3. start
Integration Options (1)
• Share service URL or data via venue– E.g.
• EQUIP server or rendezvous URL [done]• Configuration file• VRML model• Data set
– Install and configure local service(s) at each node to handle that MIME type
Integration Options (2)
• Implement a new shared application– Install shared application at each node to
handle that MIME type– Note,
• current implementation is all in Python• Uses non-standard WS over GSI protocol to talk to
venue service and other over GSI protocol to talk to event service
Integration Options (3)
• Implement a new node service• Install on each node• ?Define additional streams/stream types
– Not sure if this requires changes to venue server code
• Note,– Again, all in python– But rat/vic services can act as template for a
service that execs another application
• [done]
Integration Options (4)
• Out-of-band use of same multicast streams– Multicast groups, ports, protocols
• [done]
A VR Access Grid client
• Goals– A 3D OpenGL-based vic (AG video) viewer
• Can be used with Chromium for local distribution and multi-screen display
– For standalone use in immersive interfaces • Such as Reality Centres & CAVEs
– For integration with other 3D interfaces to integrate content and communication
• E.g. collaborative 3D model viewer
VR Access Grid client
• Conversion of vic to a DLL, with API to access current streams and decoded images
• C++ OpenGL, and Java Java3D clients
• Fixes and enhancements to Chromium– E.g, image warping and blending for use in
Reality Centre
• Sample…
Chromium Distribution Issues
• Standard use:– Stream video textures over network from
application to each Chromium display server
• Enhancement– Chromium SPU (Stream Processor Unit) with
embedded vic receives multicast video at each server and uses locally in place of…
– Stream identifiers embedded in compact fake textures by application
Chromium distribution issues
application vic
chromium
server server server
Textures over TCP
application vic
chromium
server server server
OnlyStream IDs over TCP
video
video
vic vic vic
Standard With video texture SPU
Chromium support for Reality Centre-type displays
• Issues:– Non-flat screen (spherical section)– Multiple projectors (3 – edge blending)– Now using commodity data projectors
• No compensation in projectors
• Solution:– Determine required warping
• set-up application
– Render image, grab as texture, draw on distorted geometry with dark edges
• As a Chromium server-side SPU
Samples…
Integrating the e-science-GS system
• Has optional Java3D interface
• Integrate with Java3D vic client
• Sample… [later this week?!]
Conclusions & future work
• ECT as alternative/enhanced local node management framework?
• More flexible 3D AG/VR client?– Coordinated content– As node service (tracking venue changes)
• Make code available to the community– AG, Chromium
Top Related