Code Monkey home page Code Monkey logo

syncplay-android's Introduction

Syncplay for Android


Syncplay for Android

Syncplay - The Unofficial Android Client

Syncplay Android on IzzyOnDroid Repo

Table of Contents

Introduction

OS - Android Version Release Written Language is Maintained? License Status Requirement

Introducing Syncplay Android, an app that brings the remarkable functionality of Syncplay PC to the Android platform. With Syncplay Android, you can synchronize media playback with your friends, allowing you to watch videos together, even when you're physically apart.

In its beta release, Syncplay Android faithfully replicates the core features found in the desktop version of Syncplay. This includes real-time chat functionality, enabling seamless communication while enjoying synchronized playback on your Android device.

Experience the convenience of Syncplay on your Android device and enjoy shared video watching with friends. Embrace the joy of shared entertainment with Syncplay Android.

Cannot run on Android versions below Android 6.0 (Codename: Marshmallow)

Features

  • Seamless compatibility with Syncplay's official PC client and other Syncplay Android clients.
  • Offers the same core functionality as Syncplay for PC, with a meticulously rewritten Syncplay protocol from Python to Kotlin.
  • Integrated 2 high-performance video players (ExoPlayer and mpv) tailored to your device's capabilities and beyond.
  • Real-time colorful chat functionality, including support for emojis.
  • Extensive range of settings and preferences for customization.
  • Supports all audio track formats and most video formats.
  • Ability to load custom external subtitle files.
  • Efficient native Kotlin codebase for optimal performance.
  • Multi-language support (Currently available in English, Chinese, French and Arabic, with more languages coming soon).
  • Compatible with Android 6.0 Marshmallow up to the latest Android 14 UpsideDownCake release.

How to use

Usage is fairly simple:

  • Download the latest release APK from here.
  • Install the APK. If any installation issues arise, uninstall the previous version of the app before installing the new one.
  • Open Syncplay. Specify a username of your choice, a room name of your choice (Tell your friends about it)
  • Select a server from the list (Tell your friends about this one too)
  • Click "Join Room". You will be taken to the Room screen. You're all set. Tell your friends to join the same room and server.
  • Ta-Dah ! Just load the same video file as your friends and enjoy the synchronized playback.

Roadmap

These are the things I am willing to add/adjust in the future :

  • Adopt original Syncplay's Chat functionality
  • Shared Playlists
  • Support for custom/private servers
  • URL Support (as of 0.10.0)
  • Multiple player engines (Exoplayer, mpv)
  • Picture-in-picture mode (Floating window)
  • TLS/SSL Secure Connection Support
  • Multi-language Support (WIP)

Components and architecture

  • UI: Jetpack Compose
  • Architecture: modular (mostly MVVM)
  • Network backbone: Netty
  • Preferences: Jetpack Datastore
  • Integrated media players: Exoplayer + mpv (Switchable)

F.A.Q

  • If my friend uses Syncplay on PC, can I watch with them ?
    -> Yes, you can. Syncplay Android is made to be interoperable.
  • I get an error saying "App not installed" upon installing the app. What's wrong ?
    -> Uninstall the older version before installing the new one.

Translating

  • If you want to contribute with a translation in a language that isn't available in Syncplay, or enhance the actual translations, please refer to #30

Feedback

Feel free to file an issue.

If there's anything you'd like to chat about, please feel free to open a new discussion.

Build Process

The project is developed under Android Studio Hedgehog | 2023.3.1 Make sure you have a version equal or later than the one I am using (Or you will need to downgrade Gradle plugins). Download the source code ZIP and extract it somewhere, then open it using Android Studio. Then you can just build the app using a custom JKS keystore of your choice (Edit the keystore information on the module's build.gradle.kts).

Acknowledgments

Thanks to Official Syncplay for maintaining and open-sourcing such an amazing software.

Thanks to Et0h for his amazing hard work on official Syncplay and for lending a hand in our issues tracker section.

Thanks to Zhaodaidai for their contribution with the Chinese translation for the app.

Thanks to soredake for their thorough testing.

License

Syncplay for Android is under the AGPL-3.0 Open-Source License

syncplay-android's People

Contributors

yuroyami avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.