summaryrefslogtreecommitdiff
path: root/internal/media/processingemoji.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2024-07-15 14:24:53 +0000
committerLibravatar GitHub <noreply@github.com>2024-07-15 15:24:53 +0100
commitde45c0be60e453e69263f5b32ab2ce2661dc74ca (patch)
treedd3c2196ea3a4dad5cd750d7310b801f05b95520 /internal/media/processingemoji.go
parent[feature/frontend] Add player for audio files; use thumbnail for `poster` (#3... (diff)
downloadgotosocial-de45c0be60e453e69263f5b32ab2ce2661dc74ca.tar.xz
[feature] more filetype support! (#3107)
* add more supported file types to our media processor that ffmpeg supports, update supported mime type lists * add code comments to the supported mime types slice * don't check for zero value string, just parse * remove some unneeded consts which make the code a bit harder to read * fix test expected instance media mime types, use compact ffprobe json, simple media processing by type * final tweaks to media processing code * don't use safe divide where we don't need to
Diffstat (limited to 'internal/media/processingemoji.go')
-rw-r--r--internal/media/processingemoji.go20
1 files changed, 5 insertions, 15 deletions
diff --git a/internal/media/processingemoji.go b/internal/media/processingemoji.go
index cca456837..996a3aa03 100644
--- a/internal/media/processingemoji.go
+++ b/internal/media/processingemoji.go
@@ -160,27 +160,17 @@ func (p *ProcessingEmoji) store(ctx context.Context) error {
// Pass input file through ffprobe to
// parse further metadata information.
result, err := ffprobe(ctx, temppath)
- if err != nil {
- return gtserror.Newf("error ffprobing data: %w", err)
- }
-
- switch {
- // No errors parsing data.
- case result.Error == nil:
-
- // Data type unhandleable by ffprobe.
- case result.Error.Code == -1094995529:
+ if err != nil && !isUnsupportedTypeErr(err) {
+ return gtserror.Newf("ffprobe error: %w", err)
+ } else if result == nil {
log.Warn(ctx, "unsupported data type")
return nil
-
- default:
- return gtserror.Newf("ffprobe error: %w", err)
}
var ext string
- // Set media type from ffprobe format data.
- fileType, ext := result.Format.GetFileType()
+ // Get type from ffprobe format data.
+ fileType, ext := result.GetFileType()
if fileType != gtsmodel.FileTypeImage {
return gtserror.Newf("unsupported emoji filetype: %s (%s)", fileType, ext)
}