我正在使用ffmpeg来读取和写入原始音频到/从我的python脚本。我使用的保存和加载命令都会产生警告信息"Guessed Channel Layout for Input Stream #0.0 : mono",尽管在输入和输出之前我都使用了
我的保存命令格式如下,其中
-ac 1
指令告知ffmpeg只有一个通道。我看到其他答案中提到可以设置-guess_layout_max 0
,但这似乎是一种hack方法,因为我已经用-ac 1
明确告诉ffmpeg有几个通道,它不应该需要做任何猜测。我的保存命令格式如下,其中
r
是采样率,f
是我想要将原始音频保存到的文件名。我通过管道从Python发送原始音频到stdin。
ffmpeg_cmd = 'ffmpeg -hide_banner -loglevel warning -y -ar %d -ac 1 -f u16le -i pipe: -ac 1 %s' % (r, shlex.quote(f))
同样,我的加载命令如下,其中ffmpeg从f
读取并将原始音频写入stdout。
ffmpeg_cmd = 'ffmpeg -hide_banner -loglevel warning -i %s -ar %d -ac 1 -f u16le -c:a pcm_u16le -ac 1 pipe:' % (shlex.quote(f), r)
ffmpeg -hide_banner -loglevel warning -channel_layout mono -i %s -ar %d -ac 1 -f u16le -c:a pcm_u16le pipe:
- chasep255-channel_layout mono
或-channel_layout stereo
都没有任何效果(ffmpeg v6.0)。 - undefined