Estoy tratando de comprimir/transcodificar un archivo de video que está guardado en mi base de datos MongoDB, pero no estoy seguro de cómo puedo agregarlo como flujo de entrada en el proceso de transcodificación de ffmpeg.
¿Algunas ideas?
async function transcodeVideo(_id) { gfs.collection("originalVideos"); const video = await gfs.files.findOne({ _id: ObjectId(_id) }); //this is used for other things not shown in this example. const gridfsBucket = new mongoose.mongo.GridFSBucket(connection.db, { bucketName: "originalVideos", }); const downloadStream = gridfsBucket.openDownloadStream(video._id); return new Promise((resolve, reject) => { const command = ffmpeg() .input(downloadStream) .inputFormat("mp4") .setFfprobePath(pathToFfprobe.path) .setFfmpegPath(pathToFfmpeg) .videoCodec("libx264") .audioCodec("libmp3lame") .size("720x?") .on("error", (err) => { console.log(err); }) .on("progress", (progress) => { }) .on("end", () => { }) .save("./video.mp4"); });