linux - 如何构建延迟/缓冲管道?

标签 linux bash pipe

<分区>

是否可以构建一个缓冲管道来保留来自标准 linux 工具(如 cat、dd 等)的数据(对于某些给定的字节数或给定的时间)?

例如,收集一定数量的数据包、音频数据或其他内容。

例如。构建一个脚本 delaybuffer 来做类似的事情:

arecord | delaybuffer 16000 | aplay

延迟播放录制的音频 16000 字节。

最佳答案

另一种方法是使用 dd(如果您的 dist 上不存在缓冲区)。

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

我不太确定这些标志,可能有比一次爆 block 更好的方法。

关于linux - 如何构建延迟/缓冲管道?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10297060/

相关文章:

c - 为什么害怕段错误?

linux - kmemleak 和 kmemcheck 有什么区别?以及如何在 Android 操作系统上启用这些工具?

linux - 如何在 bash 脚本中将 select 与 awk 一起使用?

java - 将管道应用程序的控制台文本捕获到另一个应用程序

linux - 对管道中的数字执行算术运算

unix - 使用 -c 标志时如何重定向 Dtrace 输出?

linux - linux 内核中的 b/w __raw_readl/__raw_writel 和 readl/writel 有什么区别?

linux - 如何在 Linux 中运行一个程序并知道它的 PID?

bash - 搜索并替换多次出现的情况

git - 通过终端在 Github/Gitlab 上创建一个新项目