[vlc-devel] Tagging VLC 3.0.13

Alexandre Janniaux ajanni at videolabs.io
Sun Apr 4 09:58:19 UTC 2021


Hi,

For Twitch I took a quick look, it seems that a new signature
token is generated by a POST request to the endpoint
https://gql.twitch.tv/gqlthrough/gql with among the request
JSON body, an operationNam: "PlaybackAccessToken_Template".

After that, the response json body has a
data.streamPlaybackAccessToken.signature field which seems
to be what is given as "sig" URL parameter for the endpoint
https://usher.ttvnw.net/api/channel/hls/$CHANNEL_NAME.m3u8

There's also a "token" url parameter needed which seems to
match the data.streamPlaybackAccessToken.value field.

The Client-ID that was given through URL parameters seems
to be passed through custom request headers, however the
API seems to react on whether it's present or not in the
URL parameters too so it might not be mandatory indeed.

I confirm Twitch does have custom data in the M3U, in the
form of #EXT-X-TWITCH-INFO. I´m not sure how we can handle
it in a general way though, except maybe by finding an
equivalent in HLS/DASH and rewrite this part of the manifest
as it comes?

I agree that we can just remove it if nobody wants to fix
it but maybe we should make it external and improve the
extension support / provide updates through extensions /
have a separate videolan repository for those extensions in
that case, since it's mostly a regression for the end-user
in every cases and someone might fix it someday without us
providing support for it. Was it done like that in the past?

Regards,
--
Alexandre Janniaux
Videolabs

On Sun, Apr 04, 2021 at 12:18:55PM +0300, Rémi Denis-Courmont wrote:
> Le lauantaina 3. huhtikuuta 2021, 17.45.35 EEST Pierre Ynard via vlc-devel a
> écrit :
> > Either way, I
> > don't personally use Twitch so I decline maintainership of the script.
>
> I don't personally care about Twitch and even if I did, I couldn't force you
> or Marvin to fix it, so if nobody steps up, I suggest we remove it.
>
> However I have to point out that:
>
> > When it last broke, I did still take a look at it, and at that time
> > the obvious solution involved setting custom HTTP request headers
> > (https://code.videolan.org/videolan/vlc/-/issues/25397);
>
> Youtube-DL is able to record Twitch lives, at least age-unrestricted ones,
> just fine, without any custom headers.
>
> The VLC Youtube-DL plugin does not use custom headers and it is able to
> extract the manifest. It seems that the adaptive plugin cannot handle the
> Twitch manifest timeline though, so the playback fails a few seconds in.
>
> --
> 雷米‧德尼-库尔蒙
> http://www.remlab.net/
>
>
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list