第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Electron 和 NodeJS:與實時流異步執(zhí)行 shell 命令

Electron 和 NodeJS:與實時流異步執(zhí)行 shell 命令

白衣染霜花 2023-04-01 15:39:36
Electron:實時獲取文件轉(zhuǎn)換百分比:我想運行命令ffmpeg -i video.mp4(示例)將視頻轉(zhuǎn)換為另一種格式。但我想獲得在流程輸出中流式傳輸?shù)霓D(zhuǎn)換百分比,并在我的 Electron App 或 NodeJS 中獲取它。我已經(jīng)嘗試了所有方法:spawn fork exec并且所有方法都將過程輸出的最后一行返回給我。我想要一個已寫入的每一行的實時流,以顯示進度百分比。我試過了:叉const {fork} = require('child_process')    const forked = fork('ffmpeg -i video.mp4');    forked.on('message', (msg) => {        console.log(msg);})執(zhí)行備選方案 1const execFile = require('child_process').execFile;    execFile('ffmpeg -i video.mp4', [], (e, stdout, stderr) => {        if (e instanceof Error){            console.error(e);                    }        console.log('stdout ', stdout)        console.log('stderr ', stderr);})執(zhí)行備選方案 2const exec = require('child_process').exec;    exec('ffmpeg -i video.mp4', (error, stdout, stderr) => {        console.log(stdout); });/*EXEC Alternative 2*/const exec = require('child_process').exec;const proccessing = exec('ffmpeg -i video.mp4');proccessing.stdout.on('data', function(data) {  console.log(data); });proccessing.stdout.pipe(process.stdout);產(chǎn)卵const spawn = require('child_process').spawn,const processing = spawn('ffmpeg -i video.mp4');processing .stdout.on('data', function (data) {   console.log('stdout: ' + data.toString());});processing .stderr.on('data', function (data) {   console.log('stderr: ' + data.toString());});processing .on('exit', function (code) {   console.log('code ' + code.toString());});概括:??目標:在控制臺得到這個結(jié)果10% converted15% converted20% converted100% converted...?錯誤:我得到的是:100% converted//Sometimes I get an empty string because it is the last line of the .exe script在標記為重復(fù)之前,我確定在 STACKOVERFLOW 中沒有一個答案適合我
查看完整描述

1 回答

?
holdtom

TA貢獻1805條經(jīng)驗 獲得超10個贊

您需要將 ffmpeg 與ffmpeg-progress-wrapper一起使用。附加事件“進度”并獲取“進度”屬性。

process.on('progress',?(progress)?=>?console.log(JSON.stringify(progress.progress));

它從 0 到 1,因此您需要進行一些調(diào)整。


查看完整回答
反對 回復(fù) 2023-04-01
  • 1 回答
  • 0 關(guān)注
  • 446 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號