我正在使用FFMPEG Library。我使用以下命令使用指定的格式将特定压缩代码的流捕获到目标文件:
ffmpeg -i rtsp://username:password@server-ip/filename -acodec adpcm_ms -t 10 -f mp3 C:\FFMPEG_Recordings\ADPCM_10.mp3
我收到以下错误:
Could not write header for output file #0 (incorrect codec parameters ?): Error number -22 occurred
因此,当我针对'-f'选项指定其他文件格式时,这会正常执行。如:
ffmpeg -i rtsp://username:password@server-ip/filename -acodec adpcm_ms -t 10 -f mov C:\FFMPEG_Recordings\ADPCM_10.mp3
所以,当我指定'mov'对'-f'选项它工作正常并且它捕获'mp3'格式的媒体文件中的流。
我无法理解为什么我收到此错误?为什么我要以“-f”格式指定'mov'而我想以“mp3”文件格式捕获流?
答案 0 :(得分:2)
简而言之,您正在尝试创建一个具有非mp3编解码器的mp3文件,这是非感性的,因此无法正常工作。 mov工作的原因是因为mov中的adpcm-ms是受支持的编解码器配置。
当复用mp3时,请使用mp3音频编解码器。使用adpcm-ms时,你只限于boa,caf,mov,avi和wav。