Giter Club home page Giter Club logo

mchelper's Introduction

MCHelper

An Android TV service for basic MusicCast integration

Right now it's meant for personal use and cannot really be used without changing the hardcoded behaviors and IPs.

Background

I have an Sony TV that runs Android TV, a nVidia Shield TV and a Yamaha R-N803 network receiver. I've been looking into ways to make most of the scenarios work with a single remote with minimal input. This includes turning on the amplifier when the TV is on, automatically switching to the right input and properly controlling the volume through it.

In the end I came up with this Android app meant to be installed on the TV instead, that monitors for screen and volume events to trigger actions through the MusicCast API documented in this document.

Features

  • Volume Up/Down: Turns on the amp (if off), sets the TV output (if not set), sets the volume (uses a logarithmic volume level mapping for more straightforward control). The volume bar can still be shown on screen if the option for external speakers is set, as long as the audio out is set to headphones (does not affect the level of the optical output).
  • Screen On: Turns on the amp, sets it to the TV Input
  • Screen Off: Turns off the amp only if the current input is the TV Input

Pitfalls

  • Cannot change behavior/configuration without altering the source code
  • Service needs to be started once through adb after installation for it to work. Should be fine after reboots.
adb shell am start-foreground-service io.github.ellamosi.mchelper/.MCHService

mchelper's People

Contributors

ellamosi avatar

Stargazers

Christoph Niese avatar Mingfai Ma avatar

Watchers

James Cloos avatar  avatar

Forkers

mingfai

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.