Skip to content

Add advanced subtitle filtering settings and optional worker threads - #62

Open
alchemyyy wants to merge 1 commit into
jellyfin:masterfrom
alchemyyy:master
Open

Add advanced subtitle filtering settings and optional worker threads#62
alchemyyy wants to merge 1 commit into
jellyfin:masterfrom
alchemyyy:master

Conversation

@alchemyyy

Copy link
Copy Markdown

A bit overboard, but comprehensive enough such that I can't see a scenario where filtering by metadata using these filters is ever limiting.

These settings are more or less nice-to-haves since extracting less tracks won't necessarily speed up extraction. My interest is in not dumping a bunch of subtitle tracks I'll never use into my library structure. I do a lot of "external management", so I do wind up "dealing" with this kind of stuff.

I also took the liberty of dumping in a worker thread option since defaulting to a single thread basically collapses the concept. Regardless, apologies in advance for the laziness in wadding it into this commit. My reason for that is for very high bandwidth and or solid state backed libraries, where it is actually possible to be bottlenecked by ffmpeg demuxing and extracting blocks, rather than smoothly running along sequential disk access.

This is all coming from an MKV perspective.

New Settings:

  • Language filter: 76 language types with an "extract all" master toggle (on by default)
  • Subtitle type filter: 20 codec types with an "extract all" master toggle (on by default)
  • Title regex filters: accept and reject pattern textboxes, reject takes precedence
  • Override expressions: accept and reject DynamicExpresso-powered C# boolean expressions (disabled by default) that bypass normal filters, with variables LANGUAGE, TYPE, and TITLE
  • Worker threads: configurable parallel extraction (default 1, max 32).

- Language filter: 76 language types with an "extract all" master toggle (on by default)
- Subtitle type filter: 20 codec types with an "extract all" master toggle (on by default)
- Title regex filters: accept and reject pattern textboxes, reject takes precedence
- Override expressions: accept and reject DynamicExpresso-powered C# boolean expressions (disabled by default) that bypass normal filters, with variables LANGUAGE, TYPE, and TITLE
- Worker threads: configurable parallel extraction (default 1, max 32).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant