如何解决在实时 ffmpeg 进程中交换输入流
我对 ffmpeg 很陌生,所以如果这是不可能的或者答案很明显,我深表歉意。我有一个 ffmpeg 进程,我正在将流(音频和视频)录制到 .webm 文件中。
这是我服务器上的 webrtc 客户端,我想根据当前发言者是谁来切换 ffmpeg 将哪个流作为输入。
只要我不试图用参数弄乱流(视频和音频),它就可以正常工作:
'-loglevel','debug','-protocol_whitelist','pipe,udp,rtp','-fflags','+genpts','-f','sdp','-i','pipe:0','-map','0:v:0','-c:v','copy','0:a:0','-strict','-2','-c:a','-flags','+global_header','./recordings/ffmpegrecording.webm'
我用 node 启动 ffmpeg 进程:
this._process = child_process.spawn('ffmpeg',this._commandArgs);
然后我将我的流通过管道传输到 ffmpeg 进程:
sdpStream.pipe(this._process.stdin);
有什么方法可以在不杀死 ffmpeg 进程或以其他方式弄乱它(破坏元数据或其他不良后果)的情况下替换输入流?
任何指向正确方向的指针将不胜感激!
非常感谢:)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。