如何创建静音.ogg音频文件



FakeOutdoorsman在utuforums.org上回答了"如何制作无声mp3或wave文件"的问题,提供了以下方法:

另一种方法是使用FFmpeg。60秒WAV格式的无声音频:

ffmpeg -ar 48000 -t 60 -f s16le -acodec pcm_s16le -ac 2 -i /dev/zero -acodec copy output.wav

60秒无声音频MP3:

ffmpeg -ar 48000 -t 60 -f s16le -acodec pcm_s16le -ac 2 -i /dev/zero -acodec libmp3lame -aq 4 output.mp3

我怎么能做类似的事情来创建一个沉默的。ogg音频文件?

对于web应用程序,我想创建一个非常短的文件,用于测试浏览器是否会预加载音频文件,或者是否会等到文件实际播放后才开始流式传输。

静音音频

那是过时的方法。你现在可以使用anullsrc过滤器代替,它将在任何操作系统上工作:

ffmpeg -f lavfi -i anullsrc -t 5 -c:a libvorbis output.ogg
  • 默认采样率为44100,默认通道布局为立体声。如果你想要不同的东西,你可以这样做:anullsrc=r=48000:cl=mono(或使用cl=1单声道)。

  • 对于Vorbis一般来说,如果可能的话,避免使用本地编码器vorbis;libvorbis将提供更好的输出(尽管它与静音输出无关)。


其他一些相关的例子

测试语气

使用sine滤波器可以发出恼人的声音或蜂鸣声。产生220 Hz的正弦波,每秒880 Hz的蜂鸣声,持续5秒:

ffmpeg -f lavfi -i sine=f=220:b=4:d=5 -c:a libvorbis output.oga

Just black video

使用color过滤器

ffmpeg -f lavfi -i color=d=5 -c:v libtheora output.ogv
  • 默认帧率为25,默认视频大小为320x240。修改:color=r=24:s=1280x720:d=5 .

  • 但是谁还在用Theora呢?WebM: -c:v libvpx output.webm中的VP8/VP9 + Vorbis可能是一个更现代的替代方案。

测试模式+ 440 Hz音调

使用testsrcsine过滤器:

ffmpeg -f lavfi -i testsrc -f lavfi -i sine -t 10 -c:v libtheora -c:a libvorbis 
-q:v 5 -q:a 5 output.ogv
  • 改变color过滤器的帧率和视频大小。

  • 请参阅FFmpeg Filter Documentation: Video Sources获取许多其他视频源过滤器的列表,如smptehdbars

<标题>也看到
  • FFmpeg Wiki:一个简短的理论和Vorbis编码指南
  • FFmpeg编解码器文档:libtheora
  • FFmpeg编解码器文档:libvorbis
  • Hydrogen Audio:推荐的Vorbis编码器设置
  • FFmpeg Wiki: VP8 Video in WebM Encoding Guide

-acodec指定为vorbis(而不是libmp3lame),并将.ogg放在输出文件的末尾(代替.mp3)。

最新更新