如何解决ffmpeg默认音频编解码器,而不是使用acodec选项指定
在树莓派中,我遵循i2s麦克风分线板,并按照建议的指南使用它。当我尝试使用ffmpeg -f alsa -i dmic_sv out.wav
命令将使用ffmpeg的音频记录到文件中时。我会收到以下错误
[alsa @ 0x22e21c0] cannot set sample format 0x10000 2 (Invalid argument)
dmic_sv: Input/output error
当我通过-acodec
明确指定使用的编解码器时,它可以正常工作:
ffmpeg -f alsa -acodec pcm_s32le -i dmic_sv out.wav
然后从输出ffmpeg将其重新编码为pcm_s16le
Input #0,alsa,from 'dmic_sv':
Duration: N/A,start: 1597597938.887969,bitrate: 3072 kb/s
Stream #0:0: Audio: pcm_s32le,48000 Hz,stereo,s32,3072 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (pcm_s32le (native) -> pcm_s16le (native))
我如何告诉ffmpeg默认使用带符号的32位Little Endian,而无需明确指定? ffmpeg在哪里获得该默认值,我可以以某种方式对其进行配置吗?
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。