lbryio / lbry-desktop

A browser and wallet for LBRY, the decentralized, user-controlled content marketplace.
https://lbry.tech
MIT License
3.56k stars 413 forks source link

Airplay support MacOS / Chomecast support #508

Open tumispro opened 7 years ago

tumispro commented 7 years ago

I understand this is not at all a priority, but it would be really cool if Apple Airplay functionality could be added to the Mac app. I understand an iOS app is underway as well, so native Airplay support on there is perhaps an option as well in the future :-)

tzarebczan commented 7 years ago

Don't forget Chromecast support :)

eriknelson commented 7 years ago

+1,must have feature for me.

alyssaoc commented 6 years ago

open new issue for exploration

neb-b commented 6 years ago

Chromecast support seems like it should be possible. There is an issue to bake cast functionality directly into Eelectron, but it doesn't seem like that is going anywhere.

There are a couple options, https://github.com/thibauts/node-castv2-client, https://github.com/GPMDP/electron-chromecast

It looks like node-castv2 has more support, and there is an example electron application using it https://github.com/annexare/Chromecast

Most likely it will only work for a few media types, but I think this will definitely be possible.

We probably won't add airplay support, this is baked into macOS so I'm not sure what this feature would consist of anyway.

neb-b commented 6 years ago

My recommendation is to use node-castv2 since there is an example application. We should be able to use that code without changing to much.

tzarebczan commented 5 years ago

More and moe folks asking about this...perfect for lbry.tv too.

neb-b commented 5 years ago

We are now using video.js. This plugin should work: https://github.com/silvermine/videojs-chromecast

mikadoplus commented 4 years ago

Hi, already someone working on this ? I could work on it if it's ok, even though it's not a top priority.

neb-b commented 4 years ago

No one is working on this @mikadoplus. It's all yours! I'd love to have this in the app

mikadoplus commented 4 years ago

Thanks @seanyesmunt, just not sure about Airplay, will continue to investigate on it, but Chromecast shouldn't be an issue. Let's dive into this ^^.

neb-b commented 4 years ago

No worries, just ignore Airplay for now. Chromecast support can be added first.

kauffj commented 4 years ago

You will be a hero to the community if you add this @mikadoplus! This is one of the most requested features we haven't had the bandwidth for yet

mikadoplus commented 4 years ago

Just teasing a bit ...

cast_teasing
neb-b commented 4 years ago

@mikadoplus Awesome!!

mikadoplus commented 4 years ago

So in order to go further with this, I created a commit for this feature and the PR.

https://github.com/lbryio/lbry-desktop/pull/4252

There is free room for improvements, but let's see it as a start and see if everything works fine. Although I must say that in my local dev version of lbry I wasn't able to play any video since they are behind a localhost source. Nevertheless, with the web version based on CDN sources this works without any problem. (Maybe a Port Forwarding issue)

To be easier to maintain I decided to create a separated package based on videojs.

neb-b commented 4 years ago

@mikadoplus can you create a PR with that commit so it's easier to see the diff?