2011-12-19 2 views
3

노드에서 읽기 스트림에서 쓰기 스트림으로 데이터를 펌핑하거나 파이프하는 방법에 대한 많은 정보를 찾았습니다. 최신 버전은 자동 멈추고 다시 시작합니다. 그러나, 나는 다른 필요가 있고 약간 도움을 원한다.Node.js - 읽을 수있는 스트림이 아직 쓰여지고있는 파일에 어떻게 반응합니까?

ffmpeg를 사용하여 비디오 파일을 쓰고 있습니다 (쓰기 가능한 스트림이 아닌 로컬 파일에). 필자는 기록 된대로 데이터를 읽는 readstream을 만들고 싶습니다. 분명히 읽기 스트림 속도는 ffmpeg이 파일을 얼마나 빨리 인코딩 하는지를 능가합니다. ffmpeg가 파일 쓰기를 완료하기 전에 읽기 스트림이 데이터의 끝에 도달하면 어떻게됩니까? 파일이 완전히 인코딩되기 전에 읽기 스트림을 중지한다고 가정합니다.

읽기 스트림을 일시 중지/다시 시작하여 인코딩이 100 % 완료 될 때까지 로컬 인코딩 파일의 끝에 도달하지 못하도록하는 가장 좋은 방법은 누구나 누구나 알 수 있습니까? 요약

는 : readStream -> writeStream (사용 .pipe를)

이 내가하고 싶은 것입니다 :

이것은 사람들이 평소 무엇을 로컬 파일을 (느린 작성 과정에서) - > readStream

항상 그렇듯이 stackoverflow 커뮤니티 덕분입니다.

+0

참고 : 더 쉽게 만들면 ffmpeg를 사용하여 스트림으로 인코딩 할 수 있습니다. 역. 파이프를 할 수있는 방법이 있습니까? 마찬가지로, writeStream -> readStream? 불행히도, writeStreams '데이터'수신기가 없습니다. – agentOOjoe

+0

''Stream.pipe'에 대한''options' (http://nodejs.org/docs/latest/api/streams.html#stream.pipe)를 확인하십시오. 목적지 스트림을 열어두기 위해 플래그 ('{end : false}')를 넘겨 줄 수 있습니다. 이것은 당신이 조사해야 할 첫번째 일일 것입니다. –

+0

감사합니다. Dominic. 그러나이 옵션은 대상 writeStream을 열어두기 때문에 내 상황에서는 readStream에 'end : false'가 필요합니다. 불행히도 저에게는 역류와 같은 것이 필요합니다. 파이프 ... 그게 말이된다면. – agentOOjoe

답변

6

growing-file 모듈은 원하는 것입니다.

+0

DeaDEnD가 다시 공격합니다! 모듈은 내가 찾고있는 모듈입니다. 가능한 한 빨리 구현하려고하고 나중에 다시 게시 할 것입니다. 감사! – agentOOjoe

관련 문제