mirror of
https://github.com/th-ch/youtube-music.git
synced 2026-01-10 10:11:46 +00:00
cache downloader getCoverBuffer()
This commit is contained in:
@ -10,6 +10,7 @@ const { fetchFromGenius } = require('../lyrics-genius/back');
|
||||
const { isEnabled } = require('../../config/plugins');
|
||||
const { getImage } = require('../../providers/song-info');
|
||||
const { injectCSS } = require('../utils');
|
||||
const { cache } = require("../../providers/decorators")
|
||||
const {
|
||||
presets,
|
||||
cropMaxWidth,
|
||||
@ -34,13 +35,6 @@ const ffmpeg = require('@ffmpeg/ffmpeg').createFFmpeg({
|
||||
});
|
||||
const ffmpegMutex = new Mutex();
|
||||
|
||||
const cache = {
|
||||
getCoverBuffer: {
|
||||
buffer: null,
|
||||
url: null,
|
||||
},
|
||||
};
|
||||
|
||||
const config = require('./config');
|
||||
|
||||
/** @type {Innertube} */
|
||||
@ -295,19 +289,10 @@ async function iterableStreamToMP3(
|
||||
}
|
||||
}
|
||||
|
||||
async function getCoverBuffer(url) {
|
||||
const store = cache.getCoverBuffer;
|
||||
if (store.url === url) {
|
||||
return store.buffer;
|
||||
}
|
||||
store.url = url;
|
||||
|
||||
const getCoverBuffer = cache(async (url) => {
|
||||
const nativeImage = cropMaxWidth(await getImage(url));
|
||||
store.buffer =
|
||||
nativeImage && !nativeImage.isEmpty() ? nativeImage.toPNG() : null;
|
||||
|
||||
return store.buffer;
|
||||
}
|
||||
return nativeImage && !nativeImage.isEmpty() ? nativeImage.toPNG() : null;
|
||||
});
|
||||
|
||||
async function writeID3(buffer, metadata, sendFeedback) {
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user