open-source-ideas / ideas

💡 Looking for inspiration for your next open source project? Or perhaps you've got a brilliant idea you can't wait to share with others? Open Source Ideas is a community built specifically for this! 👋
6.57k stars 220 forks source link

Turn any website into TV app w/ Raspberry Pi and Electron #106

Open itshaadi opened 6 years ago

itshaadi commented 6 years ago

Project description

Many streaming websites don't have an optimised web page for TVs. and normally you need a smart TV (Android, Tizen OS, Net TV, etc...) to use their apps instead.

On the other hand Single-board computers like Raspberry Pi are cheap and Electron supports them. so we can use Electron to View and Redesign the Front-End of any desired website, for navigation support with keyboards, Remote Controls (with HDMI CEC) and game controllers. it's like webcatalog but with Stylus and Greasemonkey (it is community based and others can share their configurations).

So you can install a website as an Application with predefined configurations. and with everything hosted on Raspberry Pi you can connect it to any TV that has HDMI.

And also, MPV.JS now supports ARM and if someone solves mpv-player/mpv#5405 then the project can also act as a Home Theater Software. it's not the main focus though it is worth considering.

Relevant Technology

karuppiah7890 commented 6 years ago

I don't know much, but about the Home theater software, I have heard about this one - Kodi and it's open source - kodi github org

itshaadi commented 6 years ago

@karuppiah7890 that is a fine project. but Kodi support for soundcloud, youtube, spotify, netflix ... is fairly weak. and the sad news is that Kodi build for Raspberry Pi isn't compiled with X11 support. therefore you can't even use a browser alongside it because kodi always stays on top.

however if either Omxplayer Or MPV worked on Electron it would be a greate advantage considering how easy it is to build an entire UI with web based technologies.

rguedes commented 6 years ago

@itshaadi kodi plugin to netflix: https://github.com/asciidisco/plugin.video.netflix/ Dont need x11/browser/etc

itshaadi commented 6 years ago

@rguedes I'm talking about an experience like Youtube TV if you even compare this with youtube plugin for Kodi you would see how uncomfortable it is. although kodi is killing it when it comes to offline content or digital video receivers.

colecrtr commented 5 years ago

As a Kodi user, I can vouch that Kodi is not the optimal setup for a media center. I would be very interested in using and possibly helping in developing the app to do this.

I've been theorizing an approach involving Python, Django, and Selenium (using Chromedriver) to create a web server that we can interact with through a Selenium-driven browser instance. The first tab would be the Django server and whenever a user opens a service, it simply opens a new tab to that service within the Selenium-driven browser. It would look much like the idea of framing it within Electron without having to package Electron into the application. With this, most, if not all, would be written in Python. I'm curious what anyone's thoughts are on this?

itshaadi commented 5 years ago

@colecrtr chrome lacks the proper support for rendering videos on RPI. and it won't support x265, or MKV on any platform (as far as I know). so while it's a good replacement for watching netflix or youtube with more customizable options. it's not a good idea for a media center. (also Transcoding gets involved which is not a strong suit for RPI).

we would have to wait, to see what webassembly can do. notably when we have support for threads and webgl.

KOLANICH commented 5 years ago

Selenium

It's better not to use it if requests + bs4 is enough.

Electron

It's better not to use it at all.