[Q&A] Is DashSegmentedReader and Writer using In Memory ? #5361
-
DescriptionHi All, Is it intended behaviour ? Thank you |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Streamlink has a separate ringbuffer (default is 16MiB) for each stream when muxing multiple streams via
How FFmpeg handles its memory is of out of scope of Streamlink. Make sure that you're reading its output as soon as possible ( Otherwise, have a look at the code. |
Beta Was this translation helpful? Give feedback.
Streamlink has a separate ringbuffer (default is 16MiB) for each stream when muxing multiple streams via
FFMPEGMuxer
. TheFFMPEGMuxer
writes the data of each stream into a named pipe where theffmpeg
process is reading from. Depending on the bitrate of each stream, how ffmpeg is able to read the individual input streams (data arrival time of segmented streams), how it handles its input and output buffers while muxing, and how ffmpeg's output buffer eventually gets read by streamlink_cli or an implementer of Streamlink's Python API will make ffmpeg allocate more or less memory. Streamlink'sFFMPEGMuxer
doesn't set any ffmpeg input buffer sizes (which would lead to Streamlink's buffers bein…