mirror of
https://github.com/immich-app/immich
synced 2025-11-14 17:36:12 +00:00
feat (web/server) 360 degrees Web panoramas [attempt 2] (#3412)
* commit 1 (isPanorama: boolean)
* working solution for projectiontypeenum
* fix
* format fix
* fix
* fix
* fix
* fix
* enum projectiontype
* working solution with exif
* fix
* reverted >
* fix format
* reverted auto-magic api.ts prettification
* fix
* reverted api.ts autogenerated
* api ts regenerated
* Update web/src/lib/components/assets/thumbnail/thumbnail.svelte
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
* Update web/src/lib/components/asset-viewer/asset-viewer.svelte
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
* exifProjectionType
* Update server/src/microservices/processors/metadata-extraction.processor.ts
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
* projectionType?: string = ProjectionType.NONE;
* not null
* projectionType!: ProjectionType;
* opeapi generator fix
* fixes
* fix
* fix
* generate api
* asset.exifInifo?.projectionType
* Update server/src/domain/asset/response-dto/exif-response.dto.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* Update server/src/microservices/processors/metadata-extraction.processor.ts
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
* enum -> varchar;projectiontypeenum->projectiontype
* asset-viewer fixed prettiffier
* @Column({}) single line
* enum | string
* make api
* enum | string
* enum | str fix
* fix
* chore: use string instead of enum
* chore: open api
* fix: checks
---------
Co-authored-by: Sergey Kondrikov <sergey.kondrikov@gmail.com>
Co-authored-by: Alex Tran <alex.tran1502@gmail.com>
Co-authored-by: Jason Rasmussen <jrasm91@gmail.com>
This commit is contained in:
parent
13b2b2fc4e
commit
e071b82e8a
20 changed files with 282 additions and 50 deletions
|
|
@ -336,6 +336,12 @@ export class MetadataExtractionProcessor {
|
|||
await this.extractEmbeddedVideo(asset, offset, null, fileCreatedAt);
|
||||
}
|
||||
}
|
||||
|
||||
const projectionType = getExifProperty('ProjectionType');
|
||||
if (projectionType) {
|
||||
newExif.projectionType = String(projectionType).toUpperCase();
|
||||
}
|
||||
|
||||
newExif.livePhotoCID = getExifProperty('MediaGroupUUID');
|
||||
if (newExif.livePhotoCID && !asset.livePhotoVideoId) {
|
||||
const motionAsset = await this.assetRepository.findLivePhotoMatch({
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue