aboutsummaryrefslogtreecommitdiff
path: root/Emby.Server.Implementations/Dto
AgeCommit message (Collapse)Author
2025-09-24Add People Dedup and multiple progress fixes (#14848)JPVenson
2025-08-11Refactor to pull item counts in a single queryCody Robibero
2025-08-10Fix GetBaseItemDto to return related item counts via SQL countEvan
For API call /Items/{item id} GetBaseItemDto will return the counts of related items e.g. artists, albums, songs. GetBaseItemDto currently does this by calling GetTaggedItems which retrieves the objects into memory to count them. Replace with SQL count. Fixes: This should be an improvement for any large libraries, but especially large music libraries. Example: Request Library -> Genres -> any very popular genre in your large library, e.g. Classical Number of albums = 1552, songs = 23515, ... - Before change: Try to retrieve 1552 albums, 23515 songs, ... in memory, API never returns, database on fire - After change: API returns in 367ms and Genre view opens with 200 albums in 2 seconds I verified the numbers returned are correct but note that there is a bug somewhere else in Jellyfin that is setting TopParentId to NULL for a large portion of my MusicArtists, which causes them to not be counted by the existing GetCount(). This is not related to this change, also happens with the existing code, and does not seem to affect the Web UI. Includes Cory's changes in: - https://github.com/jellyfin/jellyfin/pull/14610#issuecomment-3172211468 - https://github.com/jellyfin/jellyfin/pull/14610#issuecomment-3172239154
2025-06-16Use dto instead of db object when returning trickplayCody Robibero
2025-04-26Merge pull request #13847 from Shadowghost/rework-chapter-managementTim Eisele
Rework chapter management
2025-03-31Cleanup ItemFields (#13818)Tim Eisele
* Cleanup ItemFields * Update MediaBrowser.Model/Querying/ItemFields.cs
2025-03-25Fixed namespacesJPVenson
2024-10-09WIP porting new Repository structureJPVenson
2024-07-29Enable nullable for DtoService and DtoOptionsBond_009
2024-04-28Address commentsBond_009
2024-04-28Improve audio normalizationBond_009
* Move calculation of LUFS to a scheduled task as it's pretty slow * Correctly calculate album LUFS * Don't try to convert replaygain tags to LUFS values
2024-04-12Enable more warnings as errors (#11288)Bond-009
2024-03-31Use enum for BaseItemDto.ExtraType (#11261)Niels van Velzen
2024-02-26Store lyrics in the database as media streams (#9951)Cody Robibero
2024-02-21Add IRecordingsManager servicePatrick Barron
2024-01-06Remove some unused client capabilities and sync code (#10812)Niels van Velzen
2023-10-18Merge branch 'master' into trickplayNick
2023-09-04Make TrickplayManifest dictionary key a string rather than GuidNick
2023-08-18Album gain (#10085)TelepathicWalrus
* Add LUFSAlbum DTO * Get loudest track for smallest gain * Move gain search to musicalbum use baseitem LUFS for album * Use .Max for enumerable * Update DTO to be consistent with other DTOs * Remove albumlufs, Move dto for all types
2023-06-26Minor code changesNick
2023-06-26Migrate to trickplay table to EF. Rename vars/methods/members to have ↵Nick
consistent use of tile and thumbnail
2023-06-22Make trickplay response ids have no dashesnicknsy
2023-06-22Trickplay generation, manager, storagenicknsy
2023-05-15Audio normalization (#9222)TelepathicWalrus
Co-authored-by: Joe Rogers <1337joe@users.noreply.github.com> Co-authored-by: Bond-009 <bond.009@outlook.com>
2023-04-06Simplify conditional expressionStepan Goremykin
2023-04-06Remove unused using directivesStepan Goremykin
2023-03-25Convert Person.Type to use PersonKind enum (#9487)Cody Robibero
2023-03-01Allocate less ListsBond_009
2023-02-20Fix playlist parental control and no parental control skipping forbidden ↵Shadowghost
unrated items
2022-12-19Use DistinctBy introduced in .NET 6Bond_009
2022-12-05Replace != null with is not nullBond_009
2022-12-05Replace == null with is nullBond_009
2022-10-07Merge pull request #8381 from 1hitsong/lyric-lrc-file-supportClaus Vium
2022-09-23Backport pull request #8399 from jellyfin/release-10.8.zLogicalPhallacy
Respect visibility for people items (rebased) Original-merge: e6124bc154c9f95fdd491f309623def6b3df0171 Merged-by: Bond-009 <bond.009@outlook.com> Backported-by: Joshua M. Boniface <joshua@boniface.me>
2022-09-15Create ILyricManager1hitsong
2022-09-15Auto stash before merge of "lyric-lrc-file-support" and ↵1hitsong
"origin/lyric-lrc-file-support"
2022-09-11Create ILyricsProvider1hitsong
2022-04-28Merge pull request #7634 from neilsb/patch-1Cody Robibero
Correct LocalTrailerCount in API (cherry picked from commit fcb65ac38df99d85c48f3918b420172c737d9b0e) Signed-off-by: crobibero <cody@robibe.ro>
2022-02-21Optimize Guid comparisonsBond_009
* Use Guid.Equals(Guid) instead of the == override * Ban the usage of Guid.Equals(Object) to prevent accidental boxing * Compare to default(Guid) instead of Guid.Empty
2022-02-17Remove some dead codeBond_009
2022-01-22Use Guid for BaseItemDto parent idsNiels van Velzen
2022-01-22Use Guid for BaseItemPerson.IdNiels van Velzen
2022-01-15Remove unnecessary array allocationDmitry Lyzo
Co-authored-by: Claus Vium <cvium@users.noreply.github.com>
2022-01-14Fix duplication of local trailersDmitry Lyzo
2021-12-27More cleanupBond_009
2021-12-24Merge pull request #6819 from ↵Cody Robibero
cvium/why_should_we_use_the_imageinfo_when_we_can_guess
2021-12-20Use our own Contains extensioncvium
2021-12-12Use BaseItemKind where possibleCody Robibero
2021-11-19Small optimization to child count fieldcvium
2021-11-10Simplifycvium