2013-06-23 4 views
0
그래서 여기 괜찮

는 거래이다 나는 naudio WaveIn 방법을 통해 마이크의 오디오 스트림을 캡처하고VB.net nAudio WaveIn 스트림 ..

FTP로 .. 지금이 나에게 WAV로 바로 내 캡처를 저장할 수 있습니다 파일을 계속.

이제 wav가 내 ftp 계정에 계속 업로드되기를 바랍니다. 즉, 사용자는 마이크에서 녹음을 듣습니다. 입력 내용이 파일에 저장되고 있습니다.이 파일은 내 ftp에 업로드 중입니다.

현재 파일 잠금과 관련된 문제에 직면하고 있습니다.이 파일 잠금이 작성되는 동시에 동일한 파일에 액세스하는 것을 허용하지 않습니다.

당신이 나에게이 파일 문제를 포함하지 않는 내 FTP 계정에 직접 내 스트림을 업로드하는 방법을 제안 할 수 있다면 당신에게 감사 할 것이다

이 녹음 내 코드입니다 :

Dim recordingFormat As New WaveFormat(8000, 16, 1) 
    writer = New WaveFileWriter("recorded.wav", recordingFormat) 

    waveInStream = New WaveIn() 
    waveInStream.DeviceNumber = 0 
    waveInStream.WaveFormat = recordingFormat 
    AddHandler waveInStream.DataAvailable, AddressOf waveInStream_DataAvailable 
    waveInStream.StartRecording() 

그리고 지속적으로 파일에 스트림을 저장하는^

writer.Write(e.Buffer, 0, e.BytesRecorded) 

내가이 원하는 FTP 버퍼에 직접 공급되도록하는 ...

도움이 될 것입니다. 티아!

답변

0

WAV 파일을 아직 만들 때 FTP 서버에 업로드 할 수 없습니다. WAV 파일에는 헤더에 WAV 파일 작성을 완료 할 때까지 채워지지 않은 청크 크기가 포함되어 있습니다.

또한 FTP로 파일을 업로드하는 데 사용하지 않았지만 대부분의 FTP 파일 업 로더는 업로드되는 동안 크기가 커지는 파일 크기를 지원하지 않을 것으로 예상됩니다.

+0

당신의 답장을위한 Thx,하지만 나는 그것을 가지고 있습니다 .. 그리고 당신은 wav 파일 헤더에 대해서 말이 맞아요.하지만 어떤 데이터가 들어가기 전에 파일에 삽입하여 찾았습니다 .. 스트리밍 데이터를 직접 작성하고 vb.net의 FTPwebRequest 클래스에 대해 이야기했습니다. – user2447391

0

분당 한 번 녹음을 중지하려면 타이머가 필요합니다. 작성한 웨이브 파일을 동시에 업로드하는 동안 wav 파일 을 다시 작성하고 녹음을 시작하십시오.

그물 프레임 워크의 업로드 메커니즘을 사용하여 파일을 업로드 할 수 있습니다.

매분 1 초 분실 될 것입니다. 그렇게 나쁘지 않을 것입니다.