Skip to content

Releases: kitsumed/SubtitlesParserV2

2.4.0

23 Dec 01:29
Immutable release. Only release title and notes can be modified.
52e3021

Choose a tag to compare

What's Changed

Note

Github releases are now immutable! This does not changes mutch as Nuget releases already where.

Important

Hey! I noticed that NuGet reported the Health Check as failing. Upon investigation, the issue seems to be related to Deterministic builds and the embedded debugger (symbols) in .NET 10. It turns out there was an error in how the Deterministic builds and the embedded debug information were defined :

 <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net8.0|AnyCPU'">
   <DebugType>embedded</DebugType>
   <Deterministic>True</Deterministic>
 </PropertyGroup>

 <PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|netstandard2.1|AnyCPU'">
   <DebugType>embedded</DebugType>
   <Deterministic>True</Deterministic>
 </PropertyGroup>

I previously defined them under the condition "Release|net8.0|AnyCPU" or "Release|netstandard2.1|AnyCPU". This meant net10.0 did not meet any conditions. This issue has been fixed, and the next net10.0 build WILL BE Deterministic. I'm kind of unhappy about this mistake :/
NET8.0 and netstandard2.1 are unaffected.

Fix

  • feature/fix(lrcParser): Wrong parsing of centiseconds
    LrcParser was previously parsing [00:00.cc] as milliseconds insead of centiseconds. Support for milliseconds [00:00.xxx] was also added.
  • StreamReaders now read using 4KB buffer instead of previous 1KB. (Better performance)
  • Improved parsing performance of the MicroDvdParser, SrtParser, and SsaParser by compiling previously uncompiled regex.
    Memory usage / GC actions now appear more stable during "stress tests" (while loop tests).

Refractor

  • Added .NET 10 as a Framework build target.

The binary is available on NuGet.
Full Changelog: 2.3.0...2.4.0

2.3.0

26 Jun 21:06
1bfee4b

Choose a tag to compare

What's Changed

Fix

  • fix(yttParser): Reduced memory usage by @kitsumed in #3
  • fix(ttmlParser): Reduced memory usage by @kitsumed in #4
  • fix(MicroDvd): Prevent reading the whole file for no reasons
    By default, MicroDvd parser will abort parsing if it can't find any valid lines in the first 20 lines. Can be changed using the custom settings interface.

Refractor

  • refractor(lrcParser): Make it simple, add line timeout
    Rewrote Lrc Parser.
    By default, Lrc parser will abort parsing if it can't find any valid lines in the first 20 lines. Can be changed using the custom settings interface.
  • chore: Improved methods and class comments.

Features

  • feature(ttmlParser): Improved TTML parser
    TTML now support:
    1. FrameRate time (SMPTE without sub-frames)
    2. All available timecode formats and missing formats. (Ignore sub-frames)
    3. itt and xml files (iTunes Timed Text)
    4. Multi-lines subtitles.
  • feature(usfParser): Added USF parser, rework xml child parser
    Universal Subtitle Format (USF) v1.1 with the usf file extension .
  • feature: Added units test

The binary is available on NuGet.
Full Changelog: 2.2.3...2.3.0

2.2.3

06 Apr 19:41

Choose a tag to compare

What's Changed

  • fix(lrcParser): Fix invalid time parsing
    If you are using the LRC parser, please update to this version or newest, a typo in the code caused the parser to return the wrong timestamps for every parsed files.

The binary is available on NuGet.
Full Changelog: 2.2.2...2.2.3

2.2.2

30 Mar 19:01
3e53aa3

Choose a tag to compare

What's Changed

  • fix(parsers): Missing first item after Any() in lazy enumeration by @Patapum in #2
    This bug affected the following parsers: SRT, YoutubeXML.

New Contributors

The binary is available on NuGet.
Full Changelog: 2.2.1...2.2.2

2.2.1

25 Mar 21:23

Choose a tag to compare

# Changes

  • fix: SubtitleFormat.Formats is now fully read-only.

The binary is available on NuGet.
Full Changelog: 2.2.0...2.2.1

2.2.0

21 Mar 20:21

Choose a tag to compare

# Changes

  • feat(Parser): Added MPL2 Parser

The binary is available on NuGet.
Full Changelog: 2.1.1...2.2.0

2.1.1

21 Mar 03:58

Choose a tag to compare

# Changes

  • Renamed TMP for it's full name "TMPlayer".
  • Fixed wrong implementation of TMPlayer, Parser is now respecting the new line character |.

Warning

Due to the wrong implementation in 2.1.0, the SubtitleFormatType (enum name) & SubtitleFormat Name TMP was defined. This has now been changed to TMPlayer. The enum is still at index 2, but the name changed.

The binary is available on NuGet.
Full Changelog: 2.1.0...2.1.1

2.1.0

21 Mar 03:15

Choose a tag to compare

# Changes

  • Updated nuget package description.
  • Added new parser TMP.
  • Added the file extension dfxp to the parser TTML.

The binary is available on NuGet.
Full Changelog: 2.0.3...2.1.0

2.0.3

05 Feb 17:40

Choose a tag to compare

# Changes

  • Rewrote XML comments, including missing entry and malformated ones.
  • Changed the StreamHelper class previously defined as public to internal ⚠️
  • Updated build & release workflow to include the same body text as the github release.

The binary is available on NuGet.
Full Changelog: 2.0.2...2.0.3

2.0.2

26 Jan 20:31

Choose a tag to compare

# Changes

  • Fixed error / missing XML comments.
  • Updated SubtitleParser methods to return null insead of throwing error when parsers failed.

Warning

If youre migrating from the original SubtitlesParser project, be aware that this versions is not directly compatible.

The binary is available on NuGet.
Full Changelog: 2.0.1...2.0.2