代码之家  ›  专栏  ›  技术社区  ›  Woodsy

将文件管道传输到不同的流

  •  1
  • Woodsy  · 技术社区  · 8 年前

    我正在用 growing-file 并将其传输到可写流,如下所示:

    var GrowingFile = require('growing-file')
    var audio = GrowingFile.open('test.wav')
    audio.pipe(<some writable stream>);
    

    几分钟后,我想更改流被管道输送到的位置。

    我试着创造第二个 audio.pipe(<new writable stream>)

    2 回复  |  直到 8 年前
        1
  •  0
  •   Woodsy    8 年前

    不确定这是否是最佳解决方案,但这对我很有效:

    var GrowingFile = require('growing-file')
    var unpipe = require('unpipe');
    var audio = GrowingFile.open('test.wav')
    audio.pipe(<some writable stream>);
    
    //later in code
    unpipe(audio);
    audio.pipe(<some new writable stream>);
    
        2
  •  0
  •   idbehold    8 年前

    看见 readable.unpipe([destination])

    var GrowingFile = require('growing-file')
    var audio = GrowingFile.open('test.wav')
    var writeableStream = <some writable stream>
    audio.pipe(writeableStream);
    
    setTimeout(() => {
      audio.unpipe(writeableStream)
      writeableStream = <some other writable stream>
      audio.pipe(writeableStream)
    }, 60000)