Coder Social home page Coder Social logo

purepenguin / canaree-music-player Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ologe/canaree-music-player

0.0 1.0 0.0 71.49 MB

Complete music player published in the Play Store. Heavily relies on Dagger, kotlin coroutines and Clean architecture.

Kotlin 82.56% Java 17.44%

canaree-music-player's Introduction

Canaree (Music Player)

platform-badge minsdk-badge paypal-badge googleplay-badge

Complete music player published in the Play Store. Heavily relies on Dagger, RxJava kotlin coroutines and Clean architecture.

Screenshots

Build

Compilation can be done in 2 ways. Using the first method will prevent you from supporting FFMPEG, FLAC and OPUS formats.

Method 1 (Fast)

In build.gradle service-music module.

  • Uncomment
implementation 'com.google.android.exoplayer:exoplayer-core:$latest_exoplayer_version
  • Comment
implementation project(':exoplayer-library-core')
implementation project(':exoplayer-extension-flac')
implementation project(':exoplayer-extension-opus')
implementation project(':exoplayer-extension-ffmpeg')

Method 2

  • Clone ExoPlayer
  • In settings.gradle:
    • Update gradle.ext.exoplayerRoot to match your ExoPlayer repo path
    • Change
      apply from: new File(gradle.ext.exoplayerRoot, 'core_settings_min.gradle')
      with
      apply from: new File(gradle.ext.exoplayerRoot, 'core_settings.gradle')

After both

  • Create gradle.properties in project root folder.
# OPTIONAL properties
org.gradle.jvmargs=-Xmx4096m
org.gradle.parallel=true
org.gradle.daemon=true

android.useAndroidX=true
android.enableJetifier=true
android.enableSeparateAnnotationProcessing=true

# incremental
kotlin.incremental=true
kapt.incremental.apt=true
# parallel
kapt.use.worker.api=true
# compilation avoidance
kapt.include.compile.classpath=false

# proguard
android.enableR8=true
android.enableR8.fullMode=true

# MANDATORY properties (keys)
last_fm_key="your_key"
last_fm_secret="your_secret"

fritz_key="your_fritz_sdk_key"

aes_password="your_aes_password"

ad_mob_key="your_ad_mob_key"
# test ad unit id
ad_mob_unity_id_bottom_navigation="ca-app-pub-3940256099942544/6300978111"

Extensions (Linux or macOS recommended)

To support FLAC, FFMPEG and OPUS formats to you need to compile manually the corresponding ExoPlayer extensions using NDK-r15c or older, newer version of NDK are not supported.

Issues

If you find any problems, please feel free to file an issue.

Open-source libraries

Download

canaree-music-player's People

Contributors

ologe avatar

Watchers

James Cloos 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.