CogentRedTester / mpv-sub-select

An advanced conditional subtitle track selector for mpv player
MIT License
89 stars 8 forks source link

SubsSelect Stopped Working #33

Open george-emerald opened 5 months ago

george-emerald commented 5 months ago

It just stopped working seemingly at random. I was using an older version that was running without issue, I thought a recent mpv version might've broken it, yet the issue persisted after I downloaded the .lua file. FOr some reason, it produces no error code on the console, it just says it's selecting a subtitle when it isn't (at least not correctly). I'm pretty sure it's just falling back to native mpv selection. I checked my .json as well and there's nothing wrong with the syntax (it follows the example).

CogentRedTester commented 4 months ago

Run mpv with --msg-level=sub_select='trace' --log-level=log.txt and upload the log. Make sure you try and open the file in question. Also upload your .json.

v-amorim commented 4 months ago

Hey there, not the OP but I'm having trouble with the tool after I updated to the latest version, here is my log: https://dontpad.com/SubSelectLOG

Particularly these final lines seems to be the problem, since it breaks when I close the player or change file):

[   7.982][d][cplayer] Run command: quit, flags=73, args=[code="0"]
[   7.982][v][cplayer] EOF code: 5  
[   7.982][v][cplayer] Running hook: sub_select/on_unload
[   7.982][d][ao/wasapi] Thread Reset
[   7.982][d][ao/wasapi] Thread Pause

And my .json:

[
  {
    "alang": ["jpn", "jap", "ja"],
    "slang": "eng?",
    "blacklist": ["sign", "song", "forced"]
  },
  {
    "alang": ["jpn", "jap", "ja"],
    "slang": "eng?",
    "blacklist": ["sign", "song"]
  },
  {
    "alang": ["eng?", "und"],
    "slang": ["en%-us", "eng?", "und"],
    "condition": "sub.forced"
  },
  {
    "inherit": "^",
    "slang": "und"
  },
  {
    "alang": "*",
    "slang": "forced"
  },
  {
    "alang": "eng?",
    "slang": ["en%-us", "eng?", "und"],
    "whitelist": ["sign", "song"]
  },
  {
    "alang": "eng?",
    "slang": "und"
  },
  {
    "alang": "*",
    "slang": ["en%-us", "eng?", "und"]
  },
  {
    "alang": "no",
    "slang": "no"
  }
]

Additional info:

CogentRedTester commented 4 months ago

When you mention updating and reverting versions are you referring to sub-select or mpv? And which specific versions are you switching between?

v-amorim commented 4 months ago

When you mention updating and reverting versions are you referring to sub-select or mpv? And which specific versions are you switching between?

Your script, I don't have a specific version name/link, but in my repo I have this diff ("newest" to the left)

george-emerald commented 3 months ago

I get the following error when trying to generate a log using your provided flags:

Error parsing option log-level (option not found)
Setting commandline option --log-level=log.txt failed.

Here's my .json:

[
    {
        "alang": "jpn",
        "slang": ["eng"],
        "blacklist": ["signs", "songs"],
        "whitelist": ["commie"]
    },
    {
        "alang": "jpn",
        "slang": ["enm", "eng"],
        "blacklist": ["signs", "songs"],
        "whitelist": ["honorifics"]
    },
    {
        "alang": "jpn",
        "slang": ["enm", "eng"],
        "blacklist": ["signs", "songs", "translation only", "sdh", "chihiro"]
    },
    {
        "alang": "jpn",
        "slang": ["eng", "default"]
    },
    {
        "alang": "gre",
        "slang": "no"
    },
    {
        "alang": "eng",
        "slang": ["forced", "no"]
    },
    {
        "alang": "*",
        "slang": "eng",
        "blacklist":["sdh"]
    },
    {
        "alang":"*",
        "slang":"eng"
    }
]

Oh and sorry for the delay!

CogentRedTester commented 2 months ago

Sorry, I gave the wrong command, it should have been --msg-level=sub_select='trace' --log-file=log.txt.

CogentRedTester commented 2 months ago

Anyway I think I have replicated the issue. Can you try the latest version of the script and see if it's working now?