GithubHelp home page GithubHelp logo

Chromecast support? about go2tv HOT 5 OPEN

alexballas avatar alexballas commented on August 22, 2024
Chromecast support?

from go2tv.

Comments (5)

alexballas avatar alexballas commented on August 22, 2024 2

I ordered a chromecast. I should (very slowly since I have other priorities) start working on this one.

from go2tv.

alexballas avatar alexballas commented on August 22, 2024 1

thank you @johnd0e. I'll definitely have a look. Last time I used https://github.com/vishen/go-chromecast which was not working great with the Go2TV flows. The challenging part is getting the same experience as you get with UPNP devices. For the user it needs to be a seamless behaviour, regardless of the target device type. If we get that right, I'll call it version 2 :)

from go2tv.

alexballas avatar alexballas commented on August 22, 2024

Chromecast support is something that I would really welcome in this project.

Before we dig deeper into it however, I'd like to give you some info on what protocols there are out there and the current state of device video streaming.

Currently go2tv is based on the DLNA/uPnP specification which is something that all smart TVs and some Audio speakers support. Chromecast is based on a completely different protocol called "castv2". Implementing this from scratch is a beast project on its own. There are some projects out there like the https://github.com/vishen/go-chromecast/ which currently only support a small number of actions.

According to this project's documentation:

Can load a local media file or a file hosted on the internet on your chromecast with the following format:

Supported Media formats:
    - MP3
    - AVI
    - MKV
    - MP4
    - WebM
    - FLAC
    - WAV
If an unknown video file is found, it will use ffmpeg to transcode it to MP4 and stream it to the chromecast.

So in terms of functionality, this project is limited to playing video files from local storage or the internet like go2tv also does (through DLNA/UPNP).

Chromecast devices initially used a different protocol called DIAL (Discovery and Launch) protocol which all smart TVs (and Roku) also support it. This protocol is the one responsible for triggering the applications like youtube, netflix, spotify etc to launch and control them. Chromecast devices still partially support it, but they migrated most of their SDK to the new protocol (castv2).

One nice DIAL project that I recently saw is https://github.com/MarcoLucidi01/ytcast which is just for youtube casting.

When people talk about chromecast support, usually they mean the ability to cast youtube, netflix or spotify content which effectively is the DIAL protocol.

Any thoughts on the above? Is this also your understanding?

from go2tv.

pataquets avatar pataquets commented on August 22, 2024

Thanks for the detailed answer.
What I was thinking about is more of a generic media URL from anywhere on the net just being pushed to the Chromecast to play. No specific YT, Netflix or other functionality. I'm aware that it is a different beast and I guess it might even require some transcoding.
Also, I didn't know about ytcast. I'll take a look.

from go2tv.

johnd0e avatar johnd0e commented on August 22, 2024

Another simple library https://github.com/stampzilla/gocast

from go2tv.

Related Issues (20)

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.