Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Catch-up support for seeking live TV #90

Open
3 tasks done
rabilrbl opened this issue Sep 27, 2023 · 7 comments
Open
3 tasks done

feat: Catch-up support for seeking live TV #90

rabilrbl opened this issue Sep 27, 2023 · 7 comments
Labels
enhancement New feature or request

Comments

@rabilrbl
Copy link
Collaborator

Feature description

In JioTV app, we can select a particular show and start watching earlier telecasted tv shows.

Solution

Add extra params to seek live TV and modify APIs to achieve the same.

Additional context

No response

Acknowledgements

  • I have searched the existing issues and this is a new and no duplicate or related to another open issue.
  • I have written a short but informative title.
  • I filled out all of the requested information in this issue properly.
@rabilrbl rabilrbl added the enhancement New feature or request label Sep 27, 2023
@JioTV-Go JioTV-Go deleted a comment from babai93 Jan 16, 2024
@Darknight92228
Copy link

Does it support fire os?

@rabilrbl
Copy link
Collaborator Author

Does it support fire os?

Ask ur doubts at JioTV Go community on Telegram.

https://telegram.me/jiotv_go_chat

@PlessioTihsrah
Copy link
Contributor

Sending the following form data to https://jiotvapi.media.jio.com/playback/apis/v1/geturl?langId=6 will give stream information of catchup. It needs most of the data from EPG

channel_id: channelID
stream_type: "Catchup"
begin: epg_data.startEpoch
end: epg_data.endEpoch
srno, epg_data.srno
programId, epg_data.showId
showtime: epg_data.showtime

Rest streaming can use the same logic written in https://github.com/rabilrbl/jiotv_go/blob/65effc34c068b11e7e127d3e34c0c543a5ca0607/pkg/television/television.go#L72
I don't know golang hence cannot implement this big change 😓

@rabilrbl
Copy link
Collaborator Author

rabilrbl commented Jun 9, 2024

@PlessioTihsrah Man this is great! Never thought about it. Will test this and implement ASAP

@rabilrbl
Copy link
Collaborator Author

@PlessioTihsrah I though this will give us whole days catchup with just a single m3u8 file.
Is it possible?
Otherwise I have to build new components for which I don't have time

@PlessioTihsrah
Copy link
Contributor

PlessioTihsrah commented Jun 11, 2024

@rabilrbl For the current m3u8 playlist, if you add some keys catchup-days, catchup, catchup-source, then IPTV player automatically sends the params for stream (tried only with tivimate for now). For example

#EXTINF:-1 tvg-id=143 tvg-name="CNBC Tv18 Prime HD" tvg-logo="http://localhost:5001/jtvimage/CNBC_Tv18_Prime_HD.png" tvg-language="English" tvg-type="Business" group-title="Business" catchup-days="1" catchup="auto" catchup-source="http://localhost:5001/catchup/143?start=${start}&end=${end}", CNBC Tv18 Prime HD

For the above EXT, tivimate sends the request as GET /catchup/143 Params:[start=1717846200&end=1717848000]
If have a route for /catchup/:channel_id which does the following then catchup should be possible

  • Evaluate how many days we need to goto past by start param (need to convert it to IST)
  • Send request to jio servers for EPG for the channel for the given date
  • Parse the response and find the show where start and end coincide
  • Request the m3u8 file from https://jiotvapi.media.jio.com/playback/apis/v1/geturl?langId=6 as in above comment and send it to client

It requires a considerable amount of time to implement this.
Anyway will checkout more on this in the weekend if there is a better way

@GTTech2305
Copy link

Not catchup is not working in mobile Jiotv itself for zee channels and many more

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants