Upgrade ffmpeg-core.js and update examples
This commit is contained in:
parent
a7c5258cc4
commit
e354a4b36f
@ -1,27 +1,41 @@
|
||||
<html>
|
||||
<head>
|
||||
<script src="/dist/ffmpeg.dev.js"></script>
|
||||
<style>
|
||||
html, body {
|
||||
margin: 0;
|
||||
width: 100%;
|
||||
height: 100%
|
||||
}
|
||||
body {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
<input type="file" id="uploader">
|
||||
</div>
|
||||
<h3>Upload a video to transcode to mp4 (x264) and play!</h3>
|
||||
<video id="output-video" controls></video><br/>
|
||||
<input type="file" id="uploader">
|
||||
<p id="message" />
|
||||
<script>
|
||||
const { createWorker } = FFmpeg;
|
||||
const worker = createWorker({
|
||||
corePath: '../../node_modules/@ffmpeg/core/ffmpeg-core.js',
|
||||
logger: ({ message }) => console.log(message),
|
||||
});
|
||||
|
||||
const transcode = async ({ target: { files } }) => {
|
||||
const message = document.getElementById('message');
|
||||
message.innerHTML = 'Loading ffmpeg-core.js';
|
||||
await worker.load();
|
||||
console.log('Start transcoding');
|
||||
message.innerHTML = 'Start transcoding';
|
||||
const { data } = await worker.transcode(files[0], 'mp4');
|
||||
console.log('Complete transcoding');
|
||||
message.innerHTML = 'Complete transcoding';
|
||||
|
||||
const video = document.createElement('video');
|
||||
video.controls = true;
|
||||
const video = document.getElementById('output-video');
|
||||
video.src = URL.createObjectURL(new Blob([data.buffer], { type: 'video/mp4' }));
|
||||
document.body.appendChild(video);
|
||||
}
|
||||
const elm = document.getElementById('uploader');
|
||||
elm.addEventListener('change', transcode);
|
||||
|
@ -10,7 +10,9 @@ const worker = createWorker({
|
||||
|
||||
(async () => {
|
||||
await worker.load();
|
||||
console.log('Start transcoding');
|
||||
const { data } = await worker.transcode(inputPath, outputPath.split('.').pop());
|
||||
console.log('Complete transcoding');
|
||||
fs.writeFileSync(outputPath, Buffer.from(data));
|
||||
process.exit(0);
|
||||
})();
|
||||
|
6
package-lock.json
generated
6
package-lock.json
generated
@ -811,9 +811,9 @@
|
||||
}
|
||||
},
|
||||
"@ffmpeg/core": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@ffmpeg/core/-/core-0.2.0.tgz",
|
||||
"integrity": "sha512-kvCr0QH3B/5wc6boiUQq5PKWytmu9QpCpU2RqFT4+jh6Hv4JnU/43uprwX45PMjVh3T4g2coB2Dzix3x6Muasg=="
|
||||
"version": "0.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@ffmpeg/core/-/core-0.3.0.tgz",
|
||||
"integrity": "sha512-bm95T4C2/glYHuzTW7r49Ia+CCSYCbmOe0VOhvCorR3eBzPV/4ESuA4LxdouIraOHueDZf6rcPik94Jv1+t0iQ=="
|
||||
},
|
||||
"@webassemblyjs/ast": {
|
||||
"version": "1.8.5",
|
||||
|
@ -32,7 +32,7 @@
|
||||
},
|
||||
"homepage": "https://github.com/ffmpegjs/ffmpeg.js#readme",
|
||||
"dependencies": {
|
||||
"@ffmpeg/core": "^0.2.0",
|
||||
"@ffmpeg/core": "^0.3.0",
|
||||
"is-url": "^1.2.4",
|
||||
"node-fetch": "^2.6.0",
|
||||
"regenerator-runtime": "^0.13.3",
|
||||
|
BIN
tests/assets/flame.avi
Normal file
BIN
tests/assets/flame.avi
Normal file
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user