summaryrefslogtreecommitdiff
path: root/internal/media/processingmedia.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/media/processingmedia.go')
-rw-r--r--internal/media/processingmedia.go20
1 files changed, 18 insertions, 2 deletions
diff --git a/internal/media/processingmedia.go b/internal/media/processingmedia.go
index a7ea4dbab..f22102d6d 100644
--- a/internal/media/processingmedia.go
+++ b/internal/media/processingmedia.go
@@ -249,16 +249,32 @@ func (p *ProcessingMedia) loadFullSize(ctx context.Context) error {
}
// set appropriate fields on the attachment based on the image we derived
+
+ // generic fields
+ p.attachment.File.UpdatedAt = time.Now()
p.attachment.FileMeta.Original = gtsmodel.Original{
Width: decoded.width,
Height: decoded.height,
Size: decoded.size,
Aspect: decoded.aspect,
}
- p.attachment.File.UpdatedAt = time.Now()
- p.attachment.Processing = gtsmodel.ProcessingStatusProcessed
+
+ // nullable fields
+ if decoded.duration != 0 {
+ i := decoded.duration
+ p.attachment.FileMeta.Original.Duration = &i
+ }
+ if decoded.framerate != 0 {
+ i := decoded.framerate
+ p.attachment.FileMeta.Original.Framerate = &i
+ }
+ if decoded.bitrate != 0 {
+ i := decoded.bitrate
+ p.attachment.FileMeta.Original.Bitrate = &i
+ }
// we're done processing the full-size image
+ p.attachment.Processing = gtsmodel.ProcessingStatusProcessed
atomic.StoreInt32(&p.fullSizeState, int32(complete))
log.Tracef("finished processing full size image for attachment %s", p.attachment.URL)
fallthrough