ethand91 / mediasoup3-record-demo

Simple Record Demo using Mediasoup 3 and GStreamer
198 stars 93 forks source link

Issue FFmpeg server start upon start recording #45

Closed nagkumar closed 3 years ago

nagkumar commented 3 years ago

'-flags', '+global_header', './files/1616749230182.webm', [length]: 23 ] events.js:174 throw er; // Unhandled 'error' event ^

Error: write EPIPE at afterWriteDispatched (internal/stream_base_commons.js:78:25) at writeGeneric (internal/stream_base_commons.js:73:3) at Socket._writeGeneric (net.js:714:5) at Socket._write (net.js:726:8) at doWrite (_stream_writable.js:415:12) at writeOrBuffer (_stream_writable.js:399:5) at Socket.Writable.write (_stream_writable.js:299:11) at Readable.ondata (_stream_readable.js:710:20) at Readable.emit (events.js:198:13) at Readable.read (_stream_readable.js:505:10) Emitted 'error' event at: at errorOrDestroy (internal/streams/destroy.js:107:12) at Socket.onerror (_stream_readable.js:734:7) at Socket.emit (events.js:198:13) at errorOrDestroy (internal/streams/destroy.js:107:12) at onwriteError (_stream_writable.js:430:5) at onwrite (_stream_writable.js:461:5) at _destroy (internal/streams/destroy.js:49:7) at Socket._destroy (net.js:614:3) at Socket.destroy (internal/streams/destroy.js:37:8) at afterWriteDispatched (internal/stream_base_commons.js:78:17)

nagkumar commented 3 years ago

Starting with

PROCESS_NAME="GStreamer" node src/server

demo works fine i.e. it allows multiple start and stop of recordings works great..

not sure what the issue with FFmpeg

nagkumar commented 3 years ago

Even when using GStreamer, files gets created in server/files directory, but the size of file is zero, that way for GStreamer, I see file creating is still a issue, though server does not crash like in FFmpeg

nagkumar commented 3 years ago

I did explicitly install

npm install ffmpeg-static

still no use, the same error comes when FFmpeg recording is enabled.

Any clues on how to fix this and GStreamer recording as both have their own issues.

ethand91 commented 3 years ago

If the file size is zero that means the server is not receiving any data, or it expects something but it doesn't get it. (For example you ask to record both audio/video but you only supply the video).