mirror of
https://gitlab.rlp.net/proj-wise2526-video2document/video2document.git
synced 2026-06-15 18:01:52 +02:00
55 lines
2.1 KiB
JavaScript
55 lines
2.1 KiB
JavaScript
// -----------------------------------------------------------
|
|
// Parakeet (Step 3A: spawn Python minimal integration)
|
|
// -----------------------------------------------------------
|
|
|
|
const fs = require("fs");
|
|
const path = require("path");
|
|
const { spawn } = require("child_process");
|
|
|
|
module.exports = {
|
|
name: "parakeet",
|
|
type: "transcription",
|
|
displayname: "NVIDIA Parakeet",
|
|
|
|
async function(audioFilePath) {
|
|
console.log("🦜 [Parakeet] Starting test integration (spawn only)...");
|
|
console.log("🦜 Input audio:", audioFilePath);
|
|
|
|
// Check audio exists
|
|
if (!fs.existsSync(audioFilePath)) {
|
|
throw new Error("Audio file does not exist: " + audioFilePath);
|
|
}
|
|
|
|
// Output path in storage/transcripts
|
|
const sessionId = path.basename(audioFilePath).replace(/\.[^.]+$/, "");
|
|
const outputDir = path.join(__dirname, "../../../storage/transcripts");
|
|
fs.mkdirSync(outputDir, { recursive: true });
|
|
|
|
const outputPath = path.join(outputDir, `${sessionId}.json`);
|
|
|
|
// -------------------------------------------------------
|
|
// SPAWN PYTHON SCRIPT (step 3A — dummy script)
|
|
// -------------------------------------------------------
|
|
return new Promise((resolve, reject) => {
|
|
const python310 = "C:\\Users\\smith\\AppData\\Local\\Programs\\Python\\Python310\\python.exe";
|
|
const py = spawn(python310, [
|
|
path.join(__dirname, "parakeet_transcribe.py"),
|
|
audioFilePath,
|
|
outputPath
|
|
]);
|
|
|
|
py.stdout.on("data", data => console.log("🦜 [Python]", data.toString().trim()));
|
|
py.stderr.on("data", data => console.error("🦜 [Python ERR]", data.toString().trim()));
|
|
|
|
py.on("close", code => {
|
|
if (code === 0) {
|
|
console.log("🦜 [Parakeet] Done (spawn test). Output:", outputPath);
|
|
resolve(outputPath);
|
|
} else {
|
|
reject(new Error("Python script failed with exit code " + code));
|
|
}
|
|
});
|
|
});
|
|
}
|
|
};
|