FFmpeg中段时间的使用

usage of segment time in FFmpeg

我有一个原始文件,其中包含使用 g711 音频编解码器编码的数据。 FFMpeg 成功解码原始文件。我想按时间拆分 wav 文件,所以我使用了 segment_time 选项。 这是我的代码:

ffmpeg -acodec pcm_alaw -f sln -i g711.raw -ar 8000 -acodec pcms16le -f segment -segment_time 10 g711.wav

这段代码没有错误,但我想知道创建了多少 wav 文件。有没有机会通过在代码中添加一个选项来知道这一点? 谢谢,

这里有3种方法:

1。查看控制台输出/log

它将输出如下行:

[segment @ 0x55a7f065c700] Opening 'output_003.wav' for writing

这是本示例中的最后一行,因此有 4 个 WAV 文件(除非您使用 -segment_start_number,否则它从 0 开始)。

2。仅列出 WAV 文件

Linux 示例:

$ ls -m1 *.wav | wc -l
4

3。使用 -segment_list

ffmpeg -acodec pcm_alaw -f sln -i g711.raw -ar 8000 -acodec pcm_s16le -f segment -segment_time 10 -segment_list list.txt output_%03d.wav

list.txt的示例内容:

output_000.wav
output_001.wav
output_002.wav
output_003.wav

有关详细信息,请参阅 segment muxer documentation