Giter Site home page Giter Site logo

twitchpotplayer / twitchpotplayer Goto Github PK

View Code? Open in Web Editor NEW
213.0 18.0 19.0 84 KB

Extensions for PotPlayer to watch Twitch streams without streamlinks or any crap.

License: GNU General Public License v3.0

AngelScript 100.00%
potplayer twitch streamlink streamlink-killer livestreamer angelscript extension videoplayer stream vlc vods

twitchpotplayer's Introduction

Twitch Extension for PotPlayer

PotPlayer is a multimedia software player developed for the Microsoft Windows operating system.

PotPlayer plays Youtube videos quite native with title, description, subtitles and with the choice of quality. In May 2018 developers released first stable version with extensions support (written in AngelScript). So I wrote extensions for native playing Twitch streams, VODs and clips.

Credentials

Upd: if you want use the Twitch Extension without your own account, just leave a useOwnCredentials field in config.ini with 0 value.

Since 11 May 2020 Twitch begins to permanently require an authorization for all Twitch API endpoints. So I added an experimental own proxy endpoint to this extension. If you do not trust proxy, you can enter your credentials to the config.ini.

How to fill config.ini:

Installation

  • Just download this repository.
  • Unzip it.
  • Copy Media folder to c:\Program Files\DAUM\PotPlayer\Extension\ or {PotPlayer_Folder}\Extension\.

Twitch

/Media/PlayParse/MediaPlayParse - Twitch.as

This extension lets you open all twitch links, like:

After opening link you will see something like this.

image

  • Stream title is displayed in the player header.
  • In description you can see "{Title} | {Game} | {Channel}".
  • Video resolution can be changed in the quality menu in the right bottom corner.

The file config.ini adds a few display settings.

  • showBitrate=1 — shows bitrate in context menu (H). Valid values: 1 or 0.
  • showFPS=1 — shows fps in context menu (H). Valid values: 1 or 0.
  • gameInTitle=0 — shows game in title. Valid values: 1 or 0.
  • gameInContent=1 — shows game in content. Valid values: 1 or 0.
  • clientID= — takes clientID for API calls to the Twitch. It is highly recommended to get your own clientID on the Twitch and insert it here. If the value is empty, the default value is taken. If you insert an invalid value, the extension will not work.
  • oauthToken= — OAuth Token is needed when you want to watch "Subscriber-only" VODs and you are subscribed to this channel. Leave this field blank if you don't need this feature. Valid values: oauth:fboyX2pnceTQJdUaLqNMFceBPUi9TS. You can generate your own token from OAuth Password Generator.

/Media/UrlList/MediaUrlList - Twitch.as

This extension lets you see in File URL List all online channels that you follow. Unfortunately PotPlayer has no interface to login in Twitch yet. So you need to put your username in Media/UrlList/config.ini. After this open PotPlayer and press Ctrl + U, you will see following window.

image

twitchpotplayer's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

twitchpotplayer's Issues

Ads

the new ads is so annoying, can u block it?

Ext still working?

I'm trying to play any Twitch video and I'm always getting "failed to start playback".

remember vod playback position?

Potplayer remembers youtube video playback position, and can automatically continue from last viewed position. Possible for twitch vod as well?

Thanks for the extension

Problem with Twitch VOD ?

Hi, I have a problem with VOD Twitch for some time: when I want to watch a VOD, it puts the message " "DXVA" video decoder is required to play the file ' and I only have the audio of the VOD without the image (see Attachment). I install the codec as requested but I do not know how to configure it.
Thanks for the help

PS:

  • I do not know when the problem occurred, it's been that I have not watched VOD, I did not change anything in the 'Video' settings yet.
  • Twitch VOD/Live do not work on vlc

Annotation 2019-08-26 235404

Odd buffering info

image

When this happens, what does it mean? It typically happens after watching a stream (live) for a few seconds, when then the video will slow down and sound will mute, until it essentially halts. Restarting the stream will make it show again for a few seconds, until this repeats.

Thanks for your time and doing this really useful little tool.

Vk.com Video

Hello and thank you for your great project
I would like to ask is there any way to make an extension for vk.com videos based on this extension?

Vimeo

Hey, awesome work!

Could you write an extension for vimeo?
& maybe dailymotion (not so important)?

much appreciated

Chapter support

Implementation of chapter support (also duration and thumbnail)

string ClipsBodyRequest(string clipId) {

	•••

	s += '    durationSeconds';

	•••

	s += '    medium: thumbnailURL(width: 480, height: 272)';

	•••
}


string ChapterSelectButtonVideoBodyRequest(string vodId) {
	string hash = "8d2793384aac3773beab5e59bd5d6f585aedb923d292800119e03d40cd0f9b41";
	string s = "";
	s += '{';
	s += '    "operationName":"VideoPlayer_ChapterSelectButtonVideo",';
	s += '    "variables": {';
	s += '        "includePrivate":false,';
	s += '        "videoID": "' + vodId + '"';
	s += '    },';
	s += '    "extensions": {';
	s += '        "persistedQuery": {';
	s += '            "version": 1,';
	s += '            "sha256Hash": "' + hash + '"';
	s += '        }';
	s += '    }';
	s += '}';

	return s;
}


array<dictionary> GetChaptersFromVodId(string vodId) {
	array<dictionary> chapters;

	string body = ChapterSelectButtonVideoBodyRequest(vodId);
	JsonValue momentArray = SendGraphQLRequest(body)["video"]["moments"]["edges"];

	int startPrev = -1;

	if (momentArray.isArray()) {
		for (int k = 0; k < momentArray.size(); k++) {
			JsonValue moment = momentArray[k]["node"];
			if (!moment.isObject()) continue;

			string title = moment["description"].asString();
			if (title.isEmpty()) continue;

			int start = moment["positionMilliseconds"].asInt();
			int len = moment["durationMilliseconds"].asInt();

			if (chapters.empty()) {
				if (start < 120000) start = 0;
			}

			if (len < 120000) { // ignore chapters less than two minutes, most likely they were added by mistake
				if (startPrev == -1) startPrev = start;
				continue;
			}

			if (startPrev != -1) {
				start = startPrev;
				startPrev = -1;
			}

			dictionary item;
			item["title"] = title;
			item["time"] = formatInt(start);
			chapters.insertLast(item);
		}
	}

	return chapters;
}


string ClipsParse(const string &in path, dictionary &MetaData, array<dictionary> &QualityList, const string &in headerClientId) {

	•••

	int duration = clipRoot["durationSeconds"].asInt() * 1000;
	string thumbnail = clipRoot["medium"].asString();

	•••

	MetaData["duration"] = duration;
	MetaData["thumbnail"] = thumbnail;

	•••
}


int parseDuration(const string &in str) { // 48h60m60s
	if (!str.isEmpty()) return 0;

	int duration = 0;
	string hours;
	string mins;
	string secs;
	uint p = 0;

	for (uint k = 0; k < str.length(); k++) {
		uint8 char = str[k];

		if ((char < "0"[0]) || (char > "9"[0])) {
			if (char == "h"[0]) {
				duration += parseInt(str.substr(p, k - p)) * 60 * 60;
			} else if (char == "m"[0]) {
				duration += parseInt(str.substr(p, k - p)) * 60;
			} else if (char == "s"[0]) {
				duration += parseInt(str.substr(p, k - p));
			}
			p = k + 1;
		}
	}

	return duration;
}


string PlayitemParse(const string &in path, dictionary &MetaData, array<dictionary> &QualityList) {

	•••

	int duration;
	string thumbnail;

	•••

	if (stream.isArray()) {

	•••

		duration = parseDuration(item["duration"].asString()) * 1000;
		thumbnail = item["thumbnail_url"].asString();
		thumbnail.replace("%{width}x%{height}", "480x272");
		thumbnail.replace("{width}x{height}", "480x272");

	•••

	} else if (stream.isObject()) {

	•••

	MetaData["duration"] = duration;
	MetaData["thumbnail"] = thumbnail;
	MetaData["chapter"] = GetChaptersFromVodId(vodId);

	•••
}

[Enhancement] Chat Twitch (VODS, Clips & Live)

A feature suggestion for the extension: the addition of synchronized Twitch chat with PotPlayer via a popup or integrated in the player or other.

I would love to have the Twitch chat when I watch my VODs and since I use Potplayer for Youtube and Twitch it will allow me to avoid launching the stream in low quality directly on Twitch (with chat) and in good quality on PotPlayer which is not very practical (synchronization, overheating problem)

Thank you for this extension which saves me the little power of my computer ^^ '

Can't play any Games + Demos streams

Using this extension since a month, it's really awesome

but i noticed i can't play any streams that category on the Games + Demos

Can you fix this?

MediaUrlList does not work anymore

Either a change in Twitch's API or a change in PotPlayer has resulted in the MediaUrlList script to stop functioning properly.

My config files are unchanged from when TwitchPotPlayer's MediaUrlList script was functioning.

PotPlayer's CHANGELOG (2019-12-11 to 2021-09-29)
Version History of the PotPlayer

----------------------------------------------------------
[210929]
----------------------------------------------------------
+ Added fast repeating function

- Fixed an issue that was abnormal when playing certain MP4 files
- Fixed an error problem in certain situations by changing the skin during playback

----------------------------------------------------------
[210729]
----------------------------------------------------------
* Removed sponsorship-related features from the program's live mode

+ Added the ability to set playback time format copied to clipboard

- Fixed a problem that causes screen to broken when playing certain H.264 TS files
- Fixed an issue where sounds could not be played with too high a sample rate
- Improved handling of overlapping subtitle times when using the function minimum showing period
- Fixed a problem that causes playback to stop with certain MP4 files

----------------------------------------------------------
[210428]
----------------------------------------------------------
+ Added the ability to sort defined hotkeys in preferences

- Fixed an error that occurred when playing certain HEVC files in DXVA mode
- Fixed an error that occurred when playing certain MP4 files
- Fixed an issue where chapter markers disappeared when the quality was changed on playing YouTube content that includes chapter
- Fixed a problem where WEBDAV playlists could not be sorted by date

----------------------------------------------------------
[210318]
----------------------------------------------------------
+ Added a function to invert 3D left/right images horizontally

- Fixed a problem that no sound with certain AAC codecs
- Fixed a problem that caused certain ASS/SSA subtitles to display abnormally
- Modified displaying external track names so that the tag [Ext] appears at the beginning of them
- Fixed a problem where some playlists were added duplicated
- Fixed an issue where it was not possible to search subtitle words with google
- Modified AV1 DXVA handling so that it can be worked with 10-bit videos

----------------------------------------------------------
[210127]
----------------------------------------------------------
* Removed playback support of Shockwave Flash (SWF) files
* Removed broadcast start notification function of a favorite channel

+ Added Dutch translation
+ Added the ability to use sound spectrum defined in skin as a WMP visualization
+ Added AV1 codec support into DXVA mode

- Fixed an issue where playback of certain MKV files was not smooth
- Fixed a problem that caused timeshift function to work abnormally
- Fixed a problem that no sound when the system audio sampling rate setting was greater than 192kHz
- Fixed an issue that video quality could not be changed when watching a password protected broadcast
- Fixed an error problem when editing a bookmark in certain situations
- Fixed a problem where integrated SMI subtitles could not be selected

----------------------------------------------------------
[201209]
----------------------------------------------------------
+ Added the ability to customize context menu
+ Added AV1 codec support into CUDA/QuickSync Video Decoder
+ Added pixel shader setting tab into preferences
+ Added the ability to view context menu items with their skin CmdIDs

- Fixed a problem that caused to malfunction with deleting a bookmark in bookmark editor
- Improved output speed of custom menu
- Some fixes to make the program run faster at startup
- Fixed a problem that no sound while playing some MKV files

----------------------------------------------------------
[201021]
----------------------------------------------------------
+ Added the ability to batch change time of bookmarked items in bookmark editor

- Fixed the problem that the color was abnormal when playing HDR HLG video
- Fixed the problem that the video capture screen was abnormal when using 10-bit output
- Fixed a problem where CPU usage was high when using Layered Window OSC mode
- Fixed an issue that caused the total time to be recognized as zero when playing certain MKV files
- Fixed a problem where bookmarks were duplicated when deleting bookmarks in certain situations
- Modified handling of online subtitle translation to keep line breaks as much as possible
- Fixed the problem that output of certain ASS/SSA subtitles was abnormal
- Fixed an issue that caused the program to stop playback when seeking in certain MOV files
- Fixed an issue that occurred when creating a thumbnail image with rotation information

----------------------------------------------------------
[200908]
----------------------------------------------------------
- Fixed an issue where hotkeys did not work when opening a file in certain situations
- Fixed the problem that creating thumbnail images was a little slow
- Improved 3D/360 format compatibility in mp4 files
- Fixed an issue where playback of blu-ray folder did not start immediately
- Fixed an error when playing certain files
- Modified /seek and /sub command line switches to be read from video shortcuts as well
- Fixed flickering problem of certain subtitles
- Fixed a strange problem with deleting a bookmark in bookmark editör

----------------------------------------------------------
[200730]
----------------------------------------------------------
+ Added the ability to run hotkeys of main window in playlist, bookmark editor, subtitle explorer, etc
+ Added an option to correct playback times defined in skin according to playback speed
+ Added filter function into bookmark editor
+ Added the ability to override font face only in ASS/SSA subtitles

- Fixed a problem that caused the program to not be able to start playback in certain systems
- Fixed a problem where subtitles were duplicated in some subtitles
- Fixed playback problem of some Dash/HTTP live streaming
- Fixed a problem that causes playback to slow with 10-bit AV1 codec
- Fixed a problem that causes the video image to disappear when playing certain MP4 files
- Fixed an issue that causes some ASS/SSA subtitles to appear strange 

----------------------------------------------------------
[200616]
----------------------------------------------------------
+ Added the ability to list bookmarked/played items in playlist
+ Added a function to remember video size/position changes
+ Added the ability to set delay time of section repeats

- Fixed a problem that caused the program not be able to play certain files when SuperEQ function is used
- Fixed an issue where viewer information could not be updated during broadcasting
- Fixed an issue of playing MP4 files like a damaged file in certain situations
- Improved accessibility compatibility

----------------------------------------------------------
[200512]
----------------------------------------------------------
+ Added Vulkan support into game capture function
+ Added the ability to reverse elapsed/remaining times defined in skin
+ Added the ability to load subtitles from command line
+ Added the ability to set the number of loop repeats of sections

- Fixed a problem that caused the program not be able to capture UWP windows in specific window capture function (Requires Win10 1803 or newer)
- Fixed a problem where DirectDraw and Direct3D8 functions did not work in Game Capture
- Improved screen capture performance
- Improved accessibility compatibility
- Improved FTP server connections that contain special characters
- Fixed the problem of not remembering fullscreen mode in screen capture
- Modified the space character in playlist/navigator search to be considered as "and" condition.

----------------------------------------------------------
[200317]
----------------------------------------------------------
+ Added the ability to copy path of the selected items of a playlist to clipboard
+ Added the ability to move items within a playlist
+ Added a function into subtitle downloader to add only found subtitles in preferred languages

- Fixed an issue that causes the installation to start slow or stop on certain PCs
- Fixed an issue where unable to connect to a specific WebDAV server
- Fixed an issue where unable to get file list from a specific FTP server
- Fixed an issue that causes an error when opening certain PNG files
- Fixed an issue where thumbnail preview on navigation bar was incorrect in certain MKVs
- Fixed a problem where certain Blu-ray subtitles did not appear
- Improved the compatibility of lyrics built into MP3

----------------------------------------------------------
[200204]
----------------------------------------------------------
+ Added search function into preferences
+ Added the ability to ignore embedded subtitles

- Fixed an error that occurred when connecting to a specific WebDAV server
- Fixed an issue where external bookmarks were deleted when playback was closed at the start of playback
- Improved slideshow visualization mode
- Fixed a problem that causes the program to run slowly when starting playback on certain PCs
- Fixed an issue where fonts were displayed differently on certain PCs
- Fixed a problem that causes the screen to appear pink color when using Overlay Mixer exclusive screen mode 
- Fixed an issue that causes files not to be played from some FTP servers

----------------------------------------------------------
[191211]
----------------------------------------------------------
* The current date is now used as the version number of the program

+ Added H/W HDR output mode into Built-in D3D11 Video Renderer
+ Fixed a problem that causes the screen to freeze when exclusive screen mode is used with Built-in D3D11 Video Renderer
+ Added Kurdish translation
+ Added an option to enable dark mode of system's default context menu
+ Added the ability to use MPC Video Renderer
+ Added support for Yandex online translation engine

- Fixed a problem where certain ASF/WMV files were playing fast
- Fixed an issue where the last item was not deleted when playback skip infos are saved to an external file
- Fixed an issue where the title was not changed when processing an ASX playlist file
- Fixed issues to work with DPI-Aware v2
- Fixed an issue where the display device name does not appear in fullscreen mode settings
- Fixed a problem that causes the program to malfunction when multiple media were specified in .cue file
- Improved 10-bit output processing
- Fixed an issue where subtitles did not appear when playing certain DVD .ifo files
- Fixed slow seeking problem with certain MKV files

oauthToken doesn't allow me to watch subscriber only content

I have created an app, set useOwnCredentials=1 , got my ClientID and ClientSecret and added an oauthToken.

I can't load sub-only videos, and normal videos aren't able to load as soon as I add the oauthToken. Either the instructions are unclear or I'm missing a step that is not existing in any of the documentations.

Error:

Failed to start playback.

Unable to connect to the requested server;
-Check that the URL is correct and the server is running
-Check the you're connrected to the net and PP isn't blocked by a firewall

This always comes for the sub-only video, but only for the free to watch one when i enter the oauthToken.

sub only: https://www.twitch.tv/videos/892168013 - Critical Role
free vod: https://www.twitch.tv/videos/839812016 - MonsterCat

I wonder if there is any error during installation

Dude,it is quite a excellent extension.But I am a green hand of using PotPlayer extensions and no pro-programmer.
So after I've installed the extension and press ctrl+u,I find there's no channel in the window.I wonder if there is anything wrong I've done during the installation and could you please give me some guidance.Thank you.

Steps:
1.Copy Media folder to D:PotPlayer\Extension.(My Potplayer was installed in Disc:D)
} _FDE}H} D@PVR NUP67GS

2.Then I open folder UrlList and put my twitch username in TwitchLogin.txt
ALDY6`UF7F%4G@YN3O{@2R4

3.When I press ctrl+u,I find the window just like this.
E5MP1G9JF2(6MK0IE~4X8B8

YT playlist import playback issue

Recently I've been trying to watch a few YT playlists on Potplayer which in particular are over a year old. And I'm getting a "failed to start playback" error on trying to load the individual videos after the playlist successfully imports.

Steps:

  1. Import YT playlist via "Open URL..." in Potplayer
    (https://www.youtube.com/playlist?list=PLxYb6LVQvyFYqDWPMoU1qGzBV9CM2QN-P)
  2. Try to play any of the files in the playlist

Result:
On 1st play attempt the file results in "failed to start playback"
On 2nd play attempt the file loads 90% of the time and 10% of the time I get the same error
On 3rd attempt the file loads 100% of the time.

Sometimes the Error does not does not occur on the very first playback attempt after URL playlist import. And if first playback works then immediate playback of other files will work. To get the error to popup in this case you have to watch a portion of the video first

Alternative Steps:

  1. Import YT playlist via "Open URL..." in Potplayer
    (https://www.youtube.com/playlist?list=PLxYb6LVQvyFYqDWPMoU1qGzBV9CM2QN-P)
  2. Try to play any of the files in the playlist
  3. Watch most of the video (I'm using "most" to exclude any possibilities of any issues with reaching the end of the file. so just get near to the end of the file)
  4. Try to load next file.

Result (Same):
On 1st play attempt the file (of step 4) results in "failed to start playback"
On 2nd play attempt the file (of step 4) loads 90% of the time and 10% of the time I get the same error
On 3rd attempt the file (of step 4) loads 100% of the time.

If the Error does not result from first set of steps it results from the 2nd set of steps 100% of the time for me for multiple older YT imported playlists.

Notes:
Only seems to happen on older playlists I've tried to play
Newer playlists I've tried recently don't have the issue
Sorry If any of that was confusing I tried to be as clear as I could.

fix: investigate credentials, OAuth issues

  • #32
  • In the future, we may need to acquire and utilize a refresh_token to avoid using expired credentials.
  • GraphQL credential acquisition method may need to be changed.
    The current GraphQL request is typically responded to with either {"error":"Unauthorized","status":401,"message":"The \"Authorization\" token is invalid."} or {"error":"Bad Request","status":400,"message":"The \"Client-ID\" header is invalid."}. When supplied with a "real" pair of Client-ID and Authorization (acquired via Firefox developer tools in Networking tab), PlayitemParse is able to continue correctly...
  • ...until string sourceQualityUrl = "https://" + HostRegExpParse(jsonM3u8, "https://([a-zA-Z-_.0-9/]+)" + m3) + m3; where the string is assigned 'https://.m3u8'. HostRegExpParse(jsonM3u8, "https://([a-zA-Z-_.0-9/]+)" + m3) returns an empty string. Ethereal issue. Possibly due to networking conditions.

tl;dr

  • The current method of acquiring GraphQL credentials is broken.
  • Credentials taken from a GET request to https://gql.twitch.tv/gql in Firefox work as expected.
  • The script then breaks while building the sourceQualityUrl. The regular expression method returns an empty string. Did not occur again when retrying with the same code.
  • Using my GQL credentials from Firefox, TwitchPotPlayer is authenticated for stream viewing. This is the first time in weeks (or was it months?) that I've been able to watch Twitch.tv media in PotPlayer.

To investigate with plentiful debug output (and some leaked sensitive information!),
git clone https://github.com/BinToss/23rd.TwitchPotPlayer/tree/feature/improve-debug-output.git "./BinToss/23rd.TwitchPotPlayer/"


Unofficial Twitch GraphQL API references


Original post

Additionally, the default OAuth token already has the "oauth:" prefix and is causing Access Denied errors. <- See #32

When TwitchPotPlayer's MediaPlayParse config.ini ends with...

useOwnCredentials=0

then...

# https://api.twitch.tv/helix/streams?user_login=joefudge
{"error":"Unauthorized","status":401,"message":"Invalid OAuth token"}
{"error":"Unauthorized","status":401,"message":"Invalid OAuth token"}

However, when

clientID={{ SECRET.clientID }}
clientSecret={{ SECRET.clientSecret }}
oauthToken={{ SECRET.oauthToken }} # excludes "ouath:" prefix
showBitrate=1
showFPS=1
gameInTitle=0
gameInContent=0
useOwnCredentials=1

then...

{
    "access_token": "{{ SECRET }}",
    "expires_in": 5623551,
    "token_type": "bearer"
}
{
    "data": [
        {
            "id": "43870061676",
            "user_id": "41627022",
            "user_login": "joefudge",
            "user_name": "JoeFudge",
            "game_id": "509577",
            "game_name": "Dungeons \u0026 Dragons",
            "type": "live",
            "title": "'Godforged' Episode 68: Sisters of Fire - !cast !patreon",
            "viewer_count": 867,
            "started_at": "2021-11-21T20:36:17Z",
            "language": "en",
            "thumbnail_url": "https://static-cdn.jtvnw.net/previews-ttv/live_user_joefudge-{width}x{height}.jpg",
            "tag_ids": [
                "6ea6bca4-4712-4ab9-a906-e3336a9d8039"
            ],
            "is_mature": false
        }
    ],
    "pagination": {}
}
{
    "data": {
        "streamPlaybackAccessToken": {
            "value": 
            "{\"adblock\":false,\"authorization\":{\"forbidden\":false,\"reason\":\"\"},\"blackout_enabled\":false,\"channel\":\"joefudge\",\"channel_id\":41627022,\"chansub\":{\"restricted_bitrates\":[],\"view_until\":1924905600},\"ci_gb\":false,\"geoblock_reason\":\"\",\"device_id\":null,\"expires\":1637536466,\"extended_history_allowed\":false,\"game\":\"\",\"hide_ads\":false,\"https_required\":true,\"mature\":false,\"partner\":false,\"platform\":\"web\",\"player_type\":\"site\",\"private\":{\"allowed_to_view\":true},\"privileged\":false,\"role\":\"\",\"server_ads\":true,\"show_ads\":true,\"subscriber\":false,\"turbo\":false,\"user_id\":null,\"user_ip\":\"{{SECRET}}\",\"version\":2}",
            "signature": "2de57ac0e2162820ec8dfc1abcaca912cd4804f5"
        }
    },
    "extensions": {
        "durationMilliseconds": 57,
        "requestID": "01FN2BAD6X1Y2A9SJBQYP3HAYW"
    }
}

The next issue I need to investigate is...
Why does PotPlayer fail to fetch the Twitch's MP4-based media streams?


Related Issues

A question for the developer

Hi, sorry but i don't know where to ask, im very new to github and to andelscrypts but im looking for something and i think you could help me.

Im trying to find a way for potplayer to save someway what i watch, like track.tv scrobler or simkl.com app. the problem is that none of the sites support potplayer, and i was wondering if its possible to make something with a extension for potplayer,

maybe save a txt or excel file with the names of everything that i watch after 5 minutes, or take a screenshot and put on a folder after 5 minutes, anyway, im not the first to try to find a way to save the history of what im watching so i can keep track of things, but the only thing i found on the web was for anime, a software called Taiga,

I already talked to the devs of potplayer, simkl, and track.tv none of then want to put native support for potplayer, so i think the only way is using third party software or the extension

Do you think its possible to make a extension that can do something like this?

Media URL extraction may timeout on slow/unreliable connections

Livestreams are working about as well as they do in a web-browser, but VODs don't work at all.

Internet Quality: piss poor. Rarely above 20mbps, but usually less than 3mbps. When combined with an average latency range of 600ms-6000ms, internet service is often slow and unreliable. Connections will drop constantly. Don't buy HughesNet.

This VOD streams as well as it can in a browser over inconsistent, frequently-throttled satellite internet and the same VOD fails to start streaming in PotPlayer.

TwitchPotPlayer can still resolve livestream and VOD URLs to stream info/title and as well as play livestreams.

This is while using my personal credentials in TPP's PlayParse and UrlList configs.

Show bitrate in list of formats

Есть ли возможность добавить отображение битрейта при выборе качества просматриваемого стрима? Как, например, показывает youtube-dl.

Т.е. так "720p60, 3323k" или "720p60, 3.2M".

format code       extension  resolution note
audio_only        mp4        audio only   65k , mp4a.40.2
160p              mp4        284x160     230k , avc1.4D401F, mp4a.40.2
360p              mp4        640x360     630k , avc1.4D401F, mp4a.40.2
480p              mp4        852x480    1328k , avc1.4D401F, mp4a.40.2
720p              mp4        1280x720   2273k , avc1.4D401F, mp4a.40.2
720p60            mp4        1280x720   3323k , avc1.4D401F, mp4a.40.2
1080p60__source_  mp4        1920x1080  8928k , avc1.64002A, mp4a.40.2 (best)

Ability to have StreamDelay?

is it possible to add the stream delay to the title or somewhere? so i know if im really far behind the actual stream, i just wanna know how far behind i am so i can fast forward a bit with faster playback and catch up.

also a catch up feature would be nice, to automatically slowly raise playback speed to reach a delay threshold of lets say 3 seconds or more depending on the setting i choose.

Stopped working

No VODs or Streams will open as of last week (with the API change?)

Is there any way of debuging the problem on my end? ie some kind of verbose logging or such?
The youtube plugin still works fine in potplayer & streamlink passthrough to vlc also works
But i really miss the convenience & practicality of your plugin & having all my video on potplayer

Please help

Thanks

Reshade for PotPlayer - advanced postprocessing filter (deband for example)

Hey. May I ask you to make reshade (https://github.com/crosire/reshade) available for PotPlayer? All it need for extension just call "HostLoadLibrary("reshade.dll")"?

I use it for debanding, it works better and more stable than MadVR

You need to extract reshade's dll and put it to "lib" folder. You can try reshade works with dll injectors
There is comparing
Original (see in sky gradient) https://d.radikal.ru/d33/1901/db/cbcf3210d257.png
MadVR https://c.radikal.ru/c13/1901/21/7b18a56c5869.png
Reshade https://c.radikal.ru/c34/1901/89/4faeb772898a.png

Doesn't show the game/categories on anywhere

0

Win 10, x64
Latest v. of PotPlayer x64

I tried to reinstall the extension / extension&potplayer
showBitrate= (works)
showFPS= (works)

I guess this variables doesn't work for me :(
gameInTitle=1
gameInContent=1

Note: Header title, was same as in the description(Coffee + Painting?) before I rename as "Test" on playlist.

ability to use auth token?

hey, i wanna use potplayer to watch vods of a twitch streamer but his vods are blocked under a sub wall and i am subbed but potplayer cant login fully to access the vod, how can i fix that?

i have no idea how to use a clientid whatsoever if thats relevant

Updater

Hey. As I know, there is some problem to keep updates updated. Can you make updater, may be simple bat file. At least for youtube, to update it you need to download and install whole beta version of PotPlayer.

I think it increase popularity of your project)

Chat as subtitle overlay

Could it be done?

Just a feature thought that would be really nice I feel. Even for starters one line per chat message, even if they override each other too quickly.

Just so you don't miss out on some chats at all.

Many thanks for considering, and thanks for this heaven sent extension.

the live stream has a fix duration

I use potpalyer 200317 64-bit on w10 1809 with your module. STOCK profile in PP.
So far it worked but now when i play a live video, eg by drag-drop or ctrl+U, the video has a fix duration and i need to click stop and play again to get new minutes of video. the video begins each time at the beginning.

ex: https://www.twitch.tv/videos/572670145?filter=all&sort=time
[ofc when you will see this message it will not be live] but the current schedule is here
https://www.chess.com/article/view/fide-candidates-tournament-2020

however, when i search for ''chess'' and then drag-drop the feed i want in PP, i get the live update
when i press ctrl++U PP says the playing URL is https://www.twitch.tv/gmbenjaminfinegold

Failed to play livestream of twitch (patch included)

After installing the latest version of TwitchPotPlayer, when I checked the list of Twitch broadcasts using the open url, I noticed that the playback address on the Url tab is parsing strangely.
Specifically, the streamer id after https://www.twitch.tv/ is displayed as the display name, so it could not be played at this address.
Unfortunately, the new twitch api does not provide the return value of the streamer's login id in the response field of the stream information.
So, after receiving user_id, we need to bypass this by requesting login id again.

The attachment is a new version of the "MediaUrlList - Twitch.as" file that I patched to do the above. The new GetLoginName () function has been added, and the code has been modified by calling GetChunkOfUsersOnline () function.
I hope the developers will apply this patch.

Users who have not solved the playback problem can solve the problem by overwriting the existing "MediaUrlList-Twitch.as" file with the files contained in this compressed file.

MediaUrlList - Twitch.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.