iina / iina/plugin-opensub

No indication that download failed

Open
#5 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Vue
Stars
20
Forks
8
PR merge metrics
No merged PRs in 30d

Description

I tried downloading a subtitles file and after an OSC message indicating it was downloading subtitles **nothing happened**. There was no OSD message indicating a failure. Clicking on the `Log` button in the sidebar the last message indicated the plugin was downloading the file. Checking the IINA log file showed [Open Subtitles](https://www.opensubtitles.com/) refused to download the file and instead returned this error:

> You have downloaded your allowed 100 subtitles for 24h.Your quota will be renewed in 05 hours and 33 minutes (2026-02-13 23:59:59 UTC) ts=1771007207

I was not logged into my [Open Subtitles](https://www.opensubtitles.com/) account making me an anonymous user, identified by my IP address. This is how I found out my ISPs has deployed [CGNAT](https://en.wikipedia.org/wiki/Carrier-grade_NAT) and I am now sharing an IP address with many other customers.

Since ISPs are now doing this it becomes more important that the plugin clearly report this failure. There should be an OSD message indicating the download ended in failure. There should be a message in the log displayed by the plugin explaining the nature of the failure.

This is what the failure looked like in the IINA log:

IINA log:

```text
13:26:46.917 [player0 - OpenSubtitles][e] Error requesting /download
13:26:46.918 [player0 - OpenSubtitles][e] {
"status": 406,
"data": {
"uk": "app_ud_82678",
"uid": 2,
"ts": 1771007207,
"message": "You have downloaded your allowed 100 subtitles for 24h.Your quota will be renewed in 05 hours and 33 minutes (2026-02-13 23:59:59 UTC) ts=1771007207 ",
"reset_time": "05 hours and 33 minutes",
"remaining": -1,
"requests": 101,
"reset_time_utc": "2026-02-13T23:59:59.000Z"
},
"statusText": "Not Acceptable",
"headers": {
"last-modified": "Fri, 13 Feb 2026 18:26:47 GMT",
"pragma": "no-cache",
"content-type": "application/json; charset=utf-8",
"cache-control": "max-age=0, private, must-revalidate, s-maxage=600",
"expires": "0"
},
"config": {
"timeout": 0,
"xsrfHeaderName": "X-XSRF-TOKEN",
"headers": {
"User-Agent": "IINAPlugin v0.0.1",
"Api-Key": "********",
"Content-Type": "application/json",
"Accept": "*/*"
},
"maxContentLength": -1,
"url": "https://api.opensubtitles.com/api/v1/download",
"params": {},
"transformResponse": [
null
],
"adapter": [
"xhr",
"http"
],
"transformRequest": [
null
],
"data": "{\"file_id\":4638179}",
"maxBodyLength": -1,
"env": {},
"transitional": {
"clarifyTimeoutError": false,
"silentJSONParsing": true,
"forcedJSONParsing": true
},
"xsrfCookieName": "XSRF-TOKEN",
"method": "post"
},
"request": {}
}
```

At least in the IINA log you can tell what happened. But users should not have to enable logging to figure out what has happened in this case.

This problem report originates from discussions in IINA issue https://github.com/iina/iina/issues/4773. See [this comment](https://github.com/iina/iina/issues/4773#issuecomment-3899045822).

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue identifies the Open Subtitles /download request and the IINA log output, but names no repository files or tests. Start by tracing the plugin's subtitle download flow and compare the failed request with the existing OSD and sidebar Log behavior. Done means download failures show an OSD message and a useful explanation in the plugin log.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.