@catamphetamine/id3js
Version:
A modern ID3 parser written completely in JavaScript, making use of typed arrays and the HTML5 File API
24 lines (23 loc) • 679 B
JavaScript
import getBlobDataUrl from './getBlobDataUrl.js';
/**
* @param {ID3Tag} tags ID3 tags
* @param {number} [index] Image index
* @return {Promise<string | null>}
*/
export function getImageDataUrl(tags, index = 0) {
if (instanceOfID3TagV2(tags)) {
// const image: ImageValue = tags.images[index];
const image = tags.images[index];
if (image && image.data) {
return getBlobDataUrl(new Blob([image.data]), { contentType: image.mime });
}
}
return Promise.resolve(null);
}
/**
* @param {ID3Tag} tags ID3 tags
* @return {boolean}
*/
function instanceOfID3TagV2(tags) {
return 'images' in tags;
}