|
GSoC2011
Google Summer of Code 2011 Project Ideas
gsoc Google Summer of Code 2011 Liquid Galaxy Project
What is Liquid Galaxy and the Liquid Galaxy Project?Liquid Galaxy is a remarkable panoramic system that is tremendously compelling. It started off as a Google 20% project to run Google Earth coordinated across multiple systems, using COTS (Commodity Off the Shelf) hardware and it has grown from there! Open Source applications such as the MPlayer video player have been extended to run on Liquid Galaxy. Liquid Galaxy hardware infrastructure consists of one or more computers driving multiple displays. Liquid Galaxy applications have thus far been developed using a Master/Slave architecture. The view orientation of each slave instance (display segment) is configured in reference to the view of the master segment. Navigation on the system is done on the master instance and the location on the master is broadcast to the slave instances via UDP packets. The slave instances, knowing their own locations in reference to the master, then change their views accordingly. The Liquid Galaxy Project, while making use of Google Earth software, does not develop the Google Earth code-base itself. Google Earth is not Open Source software, although it is free (as in beer). Instead, the Liquid Galaxy Project works on extending the Liquid Galaxy system with Open Source software both improving its administration and enabling Open Source applications, so that content of various types can be displayed in the immersive panoramic environment provided. The project is also interested in using and extending Open Source 3D and panoramic content generation tools for creating content to run on Liquid Galaxy systems. What kinds of skills, experience should you bring?At least one of:
Who could you be working with?
What resources are available to help you?
Project IdeasNew Control Input DevicesDescription: Currently most Liquid Galaxy systems are controlled by a LinuxSpaceNavigator and a touchscreen. We'd like to see other input devices control Google Earth. Obvious examples include the Wii Remote, Xbox Kinect, and Android phones, using accelerometers, GPS, or other novel input. Requirements: Knowledge of Linux input devices and other system administration development. Difficulty: Medium Panoramic Content ProductionDescription: Because Liquid Galaxy uses COTS (Commodity Off the Shelf) hardware, we're generally limited to flat display technologies. This means we're displaying multiple flat planar views arranged in a cylinder (rectilinear). However most panoramic content publishers use spherical or cylindrical (curvilinear) projections. Displaying this type of content on a Liquid Galaxy requires conversion to multiple planar views. We'd like to see this process automated as much as possible. Deliverables:
Requirements: Experience with panoramic imagery or video. Difficulty: Medium System, Network, and Caching Performance MonitoringDescription: We'd like better insight into each level of the Liquid Galaxy stack, especially the multiple levels of caching. A detailed near-real-time performance monitoring solution could help diagnose bottlenecks and configure the Squid HTTP cache for better performance. Metrics from each system should be collected and displayed immediately, including disk usage, networking, CPU and GPU utilization, HTTP cache hits and misses, etc. Requirements: One or more of:
Difficulty: Medium
Add or adapt Networked View Synchronisation to other ApplicationsDescription: Google Earth is certainly a "killer app" for the Liquid Galaxy platform. But there are many other applications that could be easily enhanced, coordinating multiple instances rendering portions of a panoramic view. Here's a few ideas we have, you may have others!
Requirements: Linux network programming, and development experience with proposed application(s). Depending on the application you may need to work within other open-source projects as well as with Liquid Galaxy Project mentors. Difficulty: Widely Variable
Touch Screen Control EnhancementsDescription:
Requirements: Linux system and process programming, and client/server interactive web applications. Difficulty: Variable Google Earth Remote Networking EnhancementsDescription:
Requirements: Intimate familiarity with Google Earth, or Linux and IP networking, or keen interest. Difficulty: Medium GigaPan Viewer, on Adobe Air
Requirements: Adobe Air development experience Difficulty: Medium Liquid Galaxy System Deployment AutomationDescription: Presently Liquid Galaxy systems are difficult to deploy, requiring several hours of one or more experienced Linux system administrator's time. This wiki does have installation instructions, but the process could benefit from better automation, testing and documentation. Features like GUI configuration, or automated, even dynamic personality assignment would put Liquid Galaxy much nearer the reach of many Linux enthusiasts. Requirements: Linux System Administration knowledge Difficulty: Easy Bring the desktop Google Earth user-interface experience to Liquid GalaxyDescription: Liquid Galaxy setups are fantastic platforms for showcasing Google layers and datasets. However it is difficult for users to load their own KML, datasets and even interact with basic features of Google Earth eg. turning on/off specific layers. If LG was as easy to interact with as desktop Google Earth a whole community of education and scientific users would thank you! There are open-source tools that may help here eg. Synergy and Sikuli. Requirements: C programming experience with Windows or Linux. Difficulty: Medium Interested? What you have to do next...If you want to participate in GSoC 2011 either as a student developer or mentor, you may contact us in our freenode IRC channel, #liquid-galaxy, or send an email to lg-gsoc@endpoint.com. Please also read the Student Application Template to see what we expect in your application. The Liquid Galaxy Project's Google Summer of Code Timeline will closely follow GSoC's main timeline here: http://www.google-melange.com/document/show/gsoc_program/google/gsoc2011/timeline |
Description: