Releases: kitsumed/SubtitlesParserV2
2.4.0
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
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:- FrameRate time (SMPTE without sub-frames)
- All available timecode formats and missing formats. (Ignore sub-frames)
ittandxmlfiles (iTunes Timed Text)- Multi-lines subtitles.
- feature(usfParser): Added USF parser, rework xml child parser
Universal Subtitle Format (USF) v1.1 with theusffile extension . - feature: Added units test
The binary is available on NuGet.
Full Changelog: 2.2.3...2.3.0
2.2.3
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
2.2.1
2.2.0
2.1.1
# 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
2.0.3
# 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
# 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