mirror of
https://github.com/arcodange-org/mediabunny.git
synced 2026-09-27 10:53:50 +02:00
Implement MP3 metadata (ID3v1/2) read & write
This commit is contained in:
+31
-8
@@ -24,22 +24,45 @@
|
||||
chunked: true,
|
||||
chunkSize: 2**20
|
||||
});
|
||||
const outputFormat = new Mediabunny.Mp4OutputFormat({});
|
||||
const outputFormat = new Mediabunny.Mp3OutputFormat({});
|
||||
|
||||
const button = document.createElement('button');
|
||||
button.textContent = 'Cancel';
|
||||
button.onclick = () => conversion.cancel();
|
||||
document.body.append(button);
|
||||
|
||||
const yo = document.createElement('canvas');
|
||||
yo.width = 512;
|
||||
yo.height = 512;
|
||||
const context = yo.getContext('2d', { alpha: false });
|
||||
context.fillStyle = 'red';
|
||||
context.fillRect(100, 100, 300, 300);
|
||||
const blob = await new Promise(resolve => yo.toBlob(resolve, 'image/jpeg', 0.92));
|
||||
const blobData = new Uint8Array(await blob.arrayBuffer());
|
||||
|
||||
const mh = new Blob([blobData], { type: 'image/jpeg' });
|
||||
console.log(URL.createObjectURL(mh))
|
||||
|
||||
const output = new Mediabunny.Output({
|
||||
format: outputFormat,
|
||||
target
|
||||
});
|
||||
output.setMetadata({
|
||||
title: 'Bigggy',
|
||||
artist: 'Buck Bunny',
|
||||
images: [{
|
||||
data: blobData,
|
||||
kind: 'coverFront',
|
||||
mimeType: 'image/jpeg'
|
||||
}]
|
||||
});
|
||||
|
||||
const conversion = await Mediabunny.Conversion.init({
|
||||
input: new Mediabunny.Input({
|
||||
formats: Mediabunny.ALL_FORMATS,
|
||||
source
|
||||
}),
|
||||
output: new Mediabunny.Output({
|
||||
format: outputFormat,
|
||||
target
|
||||
}),
|
||||
output,
|
||||
audio: {
|
||||
//discard: true,
|
||||
//codec: 'opus',
|
||||
@@ -74,7 +97,7 @@
|
||||
},
|
||||
*/
|
||||
video: () => ({
|
||||
codec: 'avc',
|
||||
//codec: 'avc',
|
||||
//fit: 'contain',
|
||||
//frameRate: 27.123,
|
||||
//width: 320,
|
||||
@@ -96,8 +119,8 @@
|
||||
//height: 100,
|
||||
}),
|
||||
trim: {
|
||||
//start: 0,
|
||||
//end: 20
|
||||
start: 0,
|
||||
end: 20
|
||||
},
|
||||
});
|
||||
console.log(conversion);
|
||||
|
||||
Reference in New Issue
Block a user