sentriz/gonic

feat: stream timeOffset when not trancoding

khers opened this issue · 8 comments

gonic version: 0.16.3

if from docker, docker tag: sentriz/gonic:latest

I would like to be able to start a music stream at a specified point in the track. When I pass an offset to the stream endpoint using the timeOffest parameter, I get the track from the beginning. My first question is if I am going something wrong with that request? And second, if the request is correct, would you be open to changing the endpoint to honor this parameter for music?

it should work already, with timeOffset not timeOffest

also a transcode rule would need to be active, as in not serving the raw file. but i may change that

That is why it isn't working for me, I am not transcoding. I'd like to vote for this working on raw files as well but don't have the go chops to make it happen.

also a transcode rule would need to be active, as in not serving the raw file. but i may change that

I think you should change that because otherwise it may break clients that use transcodeOffset. (Of which Symfonium is the only one at the moment I think). A client can't know if it's being served a transcoded file, so a client that supports transcodeOffset will probably use it for every seek request, even if you're serving the original file.

what is transcodeOffset?

what is transcodeOffset?

OpenSubsonic extension to tell clients that you accept the timeOffset parameter for music. (Since in the official spec, it's only relevant for video)

https://opensubsonic.netlify.app/docs/extensions/transcodeoffset/

OpenSubsonic clients won't use the timeOffset parameter unless you report support of the "transcodeOffset" extension in the getOpenSubsonicExtensions API. If you do report it, then clients will likely use timeOffset whenever seeking.

oh yes this thing forgot that gonic returns that. i see the point of clients not knowing if it will be transcoded or not