audio files management
This commit is contained in:
@@ -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`;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -27,7 +27,7 @@ class AssetController{
|
||||
router.get('/:where/:id(*)', async (req, res)=>{
|
||||
res.sendFile(config.fs.repo + req.params.where + '/' + req.params.id, (err)=>{
|
||||
if (err){
|
||||
console.error('Error retreiving file', req.params, err.code, err.message);
|
||||
//console.error('Error retreiving file', req.params, err.code, err.message);
|
||||
if (req.params.where == 'thumb'){
|
||||
res.redirect(302, '/empty.png');
|
||||
}else res.status(404).end();
|
||||
|
||||
Reference in New Issue
Block a user