cgomesu / tvhlink

TVHlink (Tvheadend + Streamlink) integration
https://cgomesu.com/blog/Tvhlink
54 stars 8 forks source link

open channels from globoplay #5

Open SmokeyBR opened 3 years ago

SmokeyBR commented 3 years ago

i was able to extract the m3u playlist from https://globoplay.globo.com/tv-globo/ao-vivo/ however it seems those links change every 12 hours, is it possible to get a static link or to update every 12 hours ?

i was able to find one that doesn't change however the playlist is for rio de janiero with local news http://live.video.globo.com/h/1402196682759012345678915746027599876543210hM4EA1neMoQoIiUyVn1TNg/k/app/a/A/u/anyone/d/s/hls-globo-rj/playlist.m3u8

i would like to have a playlist that is local to my region (campinas-sp)

cgomesu commented 3 years ago

i was able to extract the m3u playlist from https://globoplay.globo.com/tv-globo/ao-vivo/

how exactly? it seems to require a subscription.

SmokeyBR commented 3 years ago

it does require that you login, might be geoblocked, once you login that are open channels inside it (i dont know where you are) after login and opening the stream you could get the m3u8 playlist from a web browser looking at the page network stream, however that playlist will update every 12 hours. Since i was able to find an open stream for rio de janeiro with a static link i was wondering if i could get a stream from my own location.

Perhaps this inquire is outside the scope of this github, if you feel like that, feel free to close and ignore i endedup here following your tutorial https://cgomesu.com/blog/Tvhlink/ thought maybe you'd be able to help.

cgomesu commented 3 years ago

it does require that you login, might be geoblocked, once you login that are open channels inside it (i dont know where you are) after login and opening the stream you could get the m3u8 playlist from a web browser looking at the page network stream, however that playlist will update every 12 hours. Since i was able to find an open stream for rio de janeiro with a static link i was wondering if i could get a stream from my own location.

got it. let me see if I can extract them via curl, then we can implement it as in https://github.com/cgomesu/tvhlink/blob/master/tools/eduplay.sh#L53. streamlink has an hls plugin that can handle the playlist if we are able to find its exact url.

Perhaps this inquire is outside the scope of this github, if you feel like that, feel free to close and ignore i endedup here following your tutorial https://cgomesu.com/blog/Tvhlink/ thought maybe you'd be able to help.

it's all good.

cgomesu commented 3 years ago

mmm... it doesn't seem to be as trivial as in the example i mentioned before. we need to be logged in to extract the playlists and login requires captcha. it might be possible to use cookies with curl but I've not tried that yet and it would require updating the cookie every once in a while, so the auth token remains valid. another option is to use their (graphql) api (e.g., https://github.com/olavopeixoto/plugin.video.brplay/tree/master/resources/lib/modules/globoplay), which also requires authentication and interfacing with it will take some learning time.

anyway, I'll keep this open in case someone finds a way or I decide to give it another try. in the meantime, you can try to open a plugin request in the Streamlink repo but read their CONTRIBUTING.md first to make sure it does not violate one of their rules (not entirely sure about the subscription part; ask them in Discussions first). (You can reference this issue by typing cgomesu/tvhlink#5.)

SmokeyBR commented 3 years ago

thanks for taking time, so its a cookie change... appreciate the explanation.

not sure either about the legality of it, globo im sure wants to make you go through their app or site to watch their content, dont care about the channels that require a subscription only the one that's open (but still requires you to login), anyways ill take a look on what you suggested, thanks again.