Skip to content

madiliu/SingSphere

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SingSphere

Overview

SingSphere is an innovative online karaoke platform that integrates advanced cloud services for a seamless and interactive singing experience. It focuses on social interaction, allowing users to sing synchronously with friends across the globe.

Key Features

  • Real-time audio synchronization in a distributed environment.
  • Scalable and responsive solution using AWS Lambda, EC2, OpenSearch, and RabbitMQ.
  • Focuses on the social aspects of karaoke, connecting friends who are physically apart.
  • Demo Video
Screenshot 2023-12-18 at 10 39 00 PM Screenshot 2023-12-18 at 10 39 08 PM Screenshot 2023-12-18 at 10 39 18 PM Screenshot 2023-12-18 at 10 39 47 PM

Design Architecture

Screenshot 2023-12-18 at 6 52 54 PM
  • Utilizes AWS’s content delivery network service, CloudFront, and S3 Frontend for low latency.
  • API Gateway for routing requests and providing HTTPS endpoints.
  • Lambda Functions for indexing and searching music, and enqueueing song requests.
  • RabbitMQ for managing communication and queuing song requests.
  • OpenSearch for efficient song metadata search and retrieval.
  • Codepipeline for automation release of codes.

Technology Used

  • Frontend: React.js for dynamic user interfaces.
  • Backend: Go for handling concurrent operations and Python for AWS Lambda functions.
  • AWS services for scalable cloud infrastructure.

Key Findings and Future Work

  • Performance tests highlighted challenges in real-time audio synchronization.
  • Future work focuses on scaling the system, implementing advanced load balancing, and exploring innovative synchronization techniques.

Conclusion

SingSphere demonstrates the potential for cloud-based solutions in real-time entertainment applications, emphasizing the importance of scalability and real-time interaction in digital platforms.

Contributors

Yin-Tung Chen, Josephine Chan, Madelain Liu, Hsin-Yuang Huang

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.0%
  • TypeScript 0.5%
  • Go 0.4%
  • CSS 0.1%
  • Dockerfile 0.0%
  • HTML 0.0%