Skip to content

Twitch Pre-Roll ads (even on audio_only) -- Yes, tested using git snapshot post "fix" #2368

@mjevans

Description

@mjevans
  • This is a bug report and I have read the contribution guidelines.

The previously closed issue #2357 is still happening and I have reproduced it after manually installing a git checkout from about 10 min before this bug report.

Current test URL:

Even audio only (though the example was captured at another resolution)

streamlink twitch.tv/zisteau audio_only

Will display an actual VIDEO ad, also completely ignoring resolution or bandwidth use desires.

Occasionally the mismatch between the ad and the stream also causes the audio to playback in an oddly corrupted way (the streamer sounded down-pitch shifted, and the audio was very studdery, but that was a result of the ad invasion).

streamlink --loglevel=debug twitch.tv/zisteau 480p 2>&1 | tee streamlog.txt
[cli][debug] OS:         Linux-4.9.0-8-amd64-x86_64-with-debian-9.8
[cli][debug] Python:     2.7.13
[cli][debug] Streamlink: 1.0.0+46.g42105d8
[cli][debug] Requests(2.21.0), Socks(1.6.7), Websocket(0.55.0)
[cli][info] Found matching plugin twitch for URL twitch.tv/zisteau
[plugin.twitch][debug] Getting live HLS streams for zisteau
[utils.l10n][debug] Language code: en_US
[cli][info] Available streams: audio_only, 160p (worst), 360p, 480p, 720p, 720p60, 900p60 (best)
[cli][info] Opening stream: 480p (hls)
[stream.hls][debug] Reloading playlist
[stream.hls][debug] First Sequence: 0; Last Sequence: 4
[stream.hls][debug] Start offset: 0; Duration: None; Start Sequence: 2; End Sequence: None
[stream.hls][debug] Adding segment 2 to queue
[cli][debug] Pre-buffering 8192 bytes
[stream.hls][debug] Adding segment 3 to queue
[stream.hls][debug] Adding segment 4 to queue
[stream.hls][debug] Download of segment 2 complete
[cli][info] Starting player: /usr/bin/vlc
[cli.output][debug] Opening subprocess: /usr/bin/vlc --input-title-format twitch.tv/zisteau -
[stream.hls][debug] Download of segment 3 complete
[stream.hls][debug] Download of segment 4 complete
[cli][debug] Writing stream to output
[stream.hls][debug] Reloading playlist
[stream.hls][debug] Adding segment 5 to queue
[stream.hls][debug] Adding segment 6 to queue
[stream.hls][debug] Adding segment 7 to queue
[stream.hls][debug] Download of segment 5 complete
[stream.hls][debug] Download of segment 6 complete
[stream.hls][debug] Download of segment 7 complete
[stream.hls][debug] Reloading playlist
[stream.hls][debug] Adding segment 8 to queue
[stream.hls][debug] Adding segment 9 to queue
[stream.hls][debug] Download of segment 8 complete
[stream.hls][debug] Download of segment 9 complete
[stream.hls][debug] Reloading playlist
[stream.hls][debug] Adding segment 10 to queue
[stream.hls][debug] Adding segment 11 to queue
[stream.hls][debug] Adding segment 12 to queue
[stream.hls][debug] Adding segment 13 to queue
[stream.hls][debug] Download of segment 10 complete
[stream.hls][debug] Download of segment 11 complete
[stream.hls][debug] Download of segment 12 complete
[stream.hls][debug] Download of segment 13 complete
[stream.hls][debug] Reloading playlist
[stream.hls][debug] Adding segment 14 to queue
[stream.hls][debug] Adding segment 15 to queue
[stream.hls][debug] Download of segment 14 complete
[stream.hls][debug] Download of segment 15 complete

Additional comments, screenshots, etc.

I also had streamlink dump a --stream-url and ran wget on the the result:

Contents (longer hex strings [REDACTED]):

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:5
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-TWITCH-ELAPSED-SECS:28232.000
#EXT-X-TWITCH-TOTAL-SECS:28242.010
#EXT-X-DATERANGE:ID="stitched-ad-[REDACTED]-[REDACTED]",CLASS="twitch-stitched-ad",START-DATE="2019-03-20T05:17:07.821Z",DURATION=15.164,X-TV-TWITCH-AD-ROLL-TYPE="PREROLL",X-TV-TWITCH-AD-POD-LENGTH="2",X-TV-TWITCH-AD-POD-POSITION="0",X-TV-TWITCH-AD-URL="https://www.hersheys.com/icebreakers/en_us/home.html"
#EXT-X-DISCONTINUITY
#EXT-X-SCTE35-OUT:URL="https://www.hersheys.com/icebreakers/en_us/home.html"
#EXT-X-PROGRAM-DATE-TIME:2019-03-20T05:17:07.821Z
#EXTINF:2.002,[REDACTED]-01-02-2019-23.49.14
https://video-edge-7e9300.sea01.abs.hls.ttvnw.net/v1/segment/[REDACTED].ts
#EXT-X-PROGRAM-DATE-TIME:2019-03-20T05:17:09.822999999Z
#EXTINF:2.002,[REDACTED]-01-02-2019-23.49.14
https://video-edge-7e9300.sea01.abs.hls.ttvnw.net/v1/segment/[REDACTED].ts
#EXT-X-PROGRAM-DATE-TIME:2019-03-20T05:17:11.824999998Z
#EXTINF:2.002,[REDACTED]-01-02-2019-23.49.14
https://video-edge-7e9300.sea01.abs.hls.ttvnw.net/v1/segment/[REDACTED].ts
#EXT-X-PROGRAM-DATE-TIME:2019-03-20T05:17:13.826999997Z
#EXTINF:2.002,[REDACTED]-01-02-2019-23.49.14
https://video-edge-7e9300.sea01.abs.hls.ttvnw.net/v1/segment/[REDACTED].ts
#EXT-X-PROGRAM-DATE-TIME:2019-03-20T05:17:15.828999996Z
#EXTINF:2.002,[REDACTED]-01-02-2019-23.49.14
https://video-edge-7e9300.sea01.abs.hls.ttvnw.net/v1/segment/[REDACTED].ts

Some of the redacted streams appear likely to be either session or user-login specific, so to err on the safeside I've [REDACTED] them.

Of also note, the EXTINF date-stamp appears to be referencing one that is wildly divergent from current timestamps.

Metadata

Metadata

Assignees

No one assigned

    Labels

    plugin issueA Plugin does not work correctly

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions