List view
Use mkvextract.exe to extract embedded subtitles through context menu integration (SubFast - Extract). Subtitles will be extracted in the same folder and will have the same name as the video. If there are multiple subtitles per video, all will be extracted in a new folder having the same name of the video an each subtitle will have the language code as suffix if available or ID if unknown. There should be an option in config.ini file to set a language code that SubFast - Extract will extract for (Default to all).
No due dateTrack and fix below low priority bugs; - Keep console up behavior now working when configured - First renaming of renaming without config will default to .ar suffix - Config template generated by renaming and embedding not identical in format
No due date•3/3 issues closed- No due date
Implement multithreading for the embedding performance and test the performance (worth the complication? output console logic?)
No due date- No due date•1/1 issues closed
Embedding script reads fonts utilized in .ass subtitle and adds these fonts to the new embedded episode from a fonts/ directory in the same working directory
No due dateWhen clicked, user selects in a pop-up windows what to be renamed {Videos, Subtitles} then in another field fills the regex pattern to be followed (without extension). There should be a preview or a regex helper of some sort to make it easy for the user. Extensions will be saved and used after the renaming and renaming order will be done in accordance to alphabetical order.
No due dateTo avoid conflicts with media resolution (eg. 1920x1080).
No due date•1/1 issues closedStudy the feasibility of adding below patterns without introducing real life scenario naming conflicts or breaking existing matching functionality (patterns are listed in order of importance); - ExampleName {S{X} - {Y}}.video_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) - ExampleName {S{X} - {Y}}.sub_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) = - ExampleName {S{X} - E{Y}}.video_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) - ExampleName {S{X} - E{Y}}.sub_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) = - ExampleName {S{X} - EP{Y}}.video_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) - ExampleName {S{X} - EP{Y}}.sub_extenstion (gets S{X}E{Y} and it will ignore spaces for pattern detection) = - ExampleName {1st,2nd,etc.. Season}.video_extenstion (gets season from the string and keep same episode logic { - ##, EP##, ep##, Episode##, etc...}) - ExampleName {1st,2nd,etc.. Season}.sub_extenstion (gets season from the string and keep same episode logic { - ##, EP##, ep##, Episode##, etc...}) = - ExampleName.{##}.video_extenstion (assumes S01E{##}) - ExampleName.{##}.sub_extenstion (assumes S01E{##})
No due date•1/1 issues closed- Create backup of original files (MKVs and subtitle files) in a separate folder. - Embed identified/renamed subtitles in MKVs (with MKVToolNix). - Delete subtitle files after successful embedding in MKVs - Pop up in case of other video formats saying "Only MKV files are supported for subtitle embedding"
No due date•1/1 issues closedExplore the possibility of rewriting the code in C++, Rust, or Go to achieve significantly better performance.
No due dateWrap the code in an .exe installer to ease the installation process
No due dateImplement GUI aspects to improve user experience
No due dateImplement configuration file to support more video/subtitle extensions and language prefixes
No due date•1/1 issues closedOptimize the code to improve the the overall performance
No due date•1/1 issues closed