如何build立延迟/缓冲pipe道?

是否有可能build立一个缓冲pipe道保留数据(对于一些给定的字节数量或一些给定的时间)从标准的Linux工具,如猫,DD等?

例如收集一定数量的数据包,audio数据或其他东西。

例如。 build立一个脚本delaybuffer来做这样的事情:

 arecord | delaybuffer 16000 | aplay 

播放延迟录制的audio16000字节。

有一个称为buffer的工具可以完成这项工作。 ( 链接到Debian软件包 – 也可能在其他发行版中可用)。

缓冲区使用共享内存将可变输入数据速率转换为恒定输出数据速率。

另一种方法是用dd(如果缓冲区不存在于你的dist中)。

  arecord | dd ibs=16000 iflag=fullblock oflag=dsync | aplay 

我不太确定旗帜,可能会有更好的方法,而不是一次只能打一个街区。