我在Perl中编写了一个小守护进程,调用FFMpeg对视频进行编码,但编码在5秒左右后停止。
我使用这段代码启动它:
my $t = `echo '$ffmpeg_command' >>$self->{FFMPEG_OUTPUT}`;
my $log_data = `$ffmpeg_command 2>>$self->{FFMPEG_OUTPUT}`;
有什么想法吗?
如果我自己启动FFMpeg命令,顺便说一下它可以正常工作。
答案 0 :(得分:3)
好的,我自己找到了
这是一个IO锁,显然你必须在命令末尾添加</dev/null
我的上述陈述将如下所示:
my $log_data = `$ffmpeg_command 2>>$self->{FFMPEG_OUTPUT} </dev/null`;