aboutsummaryrefslogtreecommitdiff
path: root/src/Jellyfin.Extensions/StreamExtensions.cs
AgeCommit message (Collapse)Author
2026-05-29Improved resilience for fast-pathsMarc Brooks
Use fast paths only if we can TryGetBuffer on MemoryStream using segment's Array. Reduce swap overhead for fast path B. Avoid multiple virtcalls by memoizing the CanSeeks. Overlap slow path stream async reads.
2026-05-28Use ReadAtLeastAsync to handle short-reads.Marc Brooks
Seeks to beginning of streams if CanSeek is true. Added remarks about stream position. Add test coverage for short-reads. Fix fast-path tests to actually test the fast path. Also fix class comment.
2026-05-27Remove IsStreamIdenticalAsync CanSeek requirementMarc Brooks
Now only uses for the Length mismatch.
2026-05-27Use TryGetBuffer() on MemoryStreamsMarc Brooks
Also now throws if the streams are no CanSeek.
2026-05-26Explicitly handle MemoryStream(s)Marc Brooks
2026-05-26Moved IsFileIdenticalAsync & IsStreamIdenticalAsync to StreamExtensions.Marc Brooks
2024-06-01Backport pull request #11910 from jellyfin/release-10.9.zBond-009
Audio normalization: parse ffmpeg output line by line Original-merge: d2be2ee480a44d3ed266d4632c3f38439b0dfaf5 Merged-by: joshuaboniface <joshua@boniface.me> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2023-09-11Removed nesting levels through block-scoped `using` statement (#10025)Lehonti Ramos
Co-authored-by: John Doe <john@doe> Co-authored-by: Lehonti Ramos <lehonti@ramos>
2023-08-22== null -> is nullBond_009
2021-06-19Move non-jellyfin extensions to separate projectBond_009