audio files management

This commit is contained in:
2025-11-14 09:20:56 +02:00
parent fa78aa68fd
commit 006d159a0f
6 changed files with 15 additions and 6 deletions
+4 -2
View File
@@ -103,7 +103,7 @@ class GameObjectsManager{
}else{
object.asset.type = 'single';
await fs.promises.copyFile(src, def + ext);
if (['.jpg', '.png', '.webp', '.mp4', '.avi', '.webv'].includes(ext)){
if (['.jpg', '.png', '.webp', '.mp4', '.avi', '.webv', '.mp3'].includes(ext)){
await this.addThumb(object, src);
}
}
@@ -118,6 +118,7 @@ class GameObjectsManager{
let ext = path.extname(thumbSrc).toLowerCase();
//console.log(object, thumbSrc, ext);
let dest = `${config.fs.repo}/thumb/${object.id}.webp`;
object.asset.thumb = `${object.id}.webp`;
if (['.jpg', '.png', '.webp'].includes(ext) || !ext){
await sharp(thumbSrc).resize({height: 250}).toFile(dest);
}else if (['.mp4', '.avi', '.webv'].includes(ext)){
@@ -125,8 +126,9 @@ class GameObjectsManager{
await execFile('ffmpeg', [
'-i', thumbSrc, '-vf', `select=eq(n\\,${frame}),scale=-2:300`,
'-vframes', 1, '-f', 'image2', '-y', dest]);
}else if (['.mp3'].includes(ext)){
object.asset.thumb = `audio.webp`;
}
object.asset.thumb = `${object.id}.webp`;
}
/**